Skip to main content
Sender simultaneously submits your transaction across every high-speed pathway (Helius, Jito, Harmonic, Rakurai) and consumes no API credits. You pay per send with a SOL tip. This guide builds a production send loop with warm connections, live-priced fees, and confirmation with a retry policy.

Pick your tier

Sender Max (0.001 SOL minimum tip) routes across all pathways and enters the priority tip buffer, where a larger tip lands first. SWQOS-only (0.000005 SOL) takes a single fast path for cost-optimized flow. Add ?swqos_only=true to the endpoint URL. Tips between the two minimums are best-effort through fewer pathways, so choose one tier or the other.

Choose your endpoint

Backends should use the regional HTTP endpoint closest to their servers (http://ewr-sender.helius-rpc.com/fast, fra, slc, ams, lon, sg, tyo). Browsers should use the global HTTPS endpoint https://sender.helius-rpc.com/fast, which auto-routes and avoids CORS issues.

Warm the connection

A cold TCP/TLS handshake adds latency to the first send after an idle period. If your system can go more than about 5 seconds between sends, keep the connection warm with the ping endpoint:

Build the transaction

Every Sender transaction must include both a tip transfer to a designated tip account and a compute unit price. Sender rejects transactions missing either one. Hardcoding the priority fee leaves you overpaying in quiet markets and losing races in busy ones, so price it from the Priority Fee API:
send.ts
The tip determines which pathways your transaction can take, and the priority fee raises its position in the validator queue. Together they maximize inclusion probability.

Send, then confirm

Submit with skipPreflight: true to trade client-side validation for latency, then confirm through your RPC connection. Sender returns the signature immediately, which is not proof of landing:
With maxRetries: 0 you own the retry policy: when confirmation times out, rebuild with a fresh blockhash and a re-priced fee instead of resending the stale transaction. Default throughput is 50 TPS. Professional plans can request higher limits.

Optional: route around sandwich attackers

Add ?mev-protect=true to the endpoint URL to avoid validators statistically linked to sandwich attacks. The request body is unchanged, and it works on both tiers:
See MEV Protect for the tradeoffs. For atomic multi-transaction execution (up to 4 transactions, all-or-nothing), use sendBundle on the same endpoint.

Sender overview

Tiers, endpoints, tip accounts, and rate limits in full

Trade on Preconfirmations

Pair the fastest send path with the earliest transaction signal