Swap any chain → any chain.
The t3rn bridge is intent-based. You submit what you want (source, destination, amount), solvers race to fill it, and settlement is binary — your funds never sit in a bridge contract while you wait for confirmations on the other side.
1 · What an intent is
Instead of telling the bridge how to move your funds (which pool, which path, which proof system), you tell it what you want — destination chain, destination token, minimum amount you'll accept. That's the intent.
The Genome stream broadcasts your intent to every registered solver. Solvers compete to fill it within the bid window (default 800ms). The winning bid is the one that gives you the most output while still meeting your minFill threshold.
2 · The flow, end to end
- Connect a wallet on the source chain.
- Pick the source asset and amount.
- Pick the destination chain + asset. arc returns a live quote with the best route.
- Click Swap. Sign one tx on the source chain (the intent + your USDC into the LiquidityWell).
- A solver fills on the destination side and presents a proof. arc verifies, settlement commits, you have funds.
Median fill time is ~3.1s P50. Watch your order live at /bridge/orders.
3 · Live chains + adapters
The arc API is the primary dispatch. Today it compares quotes across:
- Across V3 (REST + event scanner)
- deBridge DLN
- Mayan Swift (EVM + Solana paths)
- Wormhole NTT (Native Token Transfer)
- Rango, Socket, Squid Router (thin adapter paths)
Source chains scanned by the fill monitor: Ethereum, Arbitrum, Base, Optimism, Polygon, BNB, Linea, Unichain, HyperEVM, Avalanche. Donut hook live on 4 chains (Optimism, Unichain, + 2 more) for the full 70/20/10 fee split. The rest get the ecosystem fallback.
4 · Fees, slippage, surcharge
The base protocol fee is 6 bps of routed volume — solvers collect that on every settled order. Slippage tolerance defaults to 0.5% of the quote but the SwapPanel surfaces a dynamic surcharge when liquidity is thin or the route is cold.
You never pay gas on the destination chain — the solver covers that and prices it into the quote.
5 · When something is wrong
- Quote says "data unavailable" — the arc API is degraded or the route is unsupported. Pick a different destination chain or wait 30s and refresh.
- Order looks stuck — check /bridge/orders. Orders in "filling" state are waiting for solver inclusion on the destination. After 30 minutes without a fill, the LiquidityWell refunds your source-side deposit automatically; no support ticket needed.
- Refunded but funds not back — your source-side tx will show the refund. If you don't see it within the protocol's refund window, ping Discord with the intent ID.
6 · Solana + non-EVM destinations
Solana support runs through Mayan Swift and Wormhole NTT. Drop your Solana destination address into the SwapPanel and arc picks the right adapter automatically.
7 · Arc (USDC) — t3rn resells, a third party operates
Arc (chain 5042) is Circle's USDC chain, and USDC gets there over Circle's own CCTP v2: burned on the source chain, minted as native USDC on Arc. The route is priced live from Circle (standard transfers cost 0 bps at Circle) and shows up in the Arc panel on the bridge page like any other route — t3rn is a reseller of the bridge operator's service here, not the operator.
On Base your wallet signs one bridge call on the bridge operator's CctpFeeRouter (0xedF0C3B2BA863179780F7c595B9038b4075F08ed) after an approve. The router keeps a 10 bps service fee (the contract hard-caps it at 1%), pays half of it to t3rn's Safe, and hands the rest to Circle's TokenMessengerV2. Every bridge is a Bridgedevent on-chain, so the fee split is auditable rather than a line in someone's database. On chains without a router the panel falls back to Circle's depositForBurn directly, with no service fee.
Two things to know before your first transfer. Gas on Arc is USDC; the mint there (receiveMessage, which anyone may call) is in practice picked up by third-party relayers within seconds, and the service exposes a fallback plan if it is not. If you hold no USDC on Arc yet, Arc's fiat onramp or the Jumper (LI.FI) route — also quoted in the panel, delivered on Arc by the aggregator's tool — avoids the question entirely. And Arc has single-slot finality, so once the mint lands it is final; the wait is on the source chain's side (Base standard ≈ 13–19 minutes, fast ≈ seconds for 0.325 bps).
Integrators can use the same service directly: POST /api/arc/v1/bridge/plan with an X-Arc-Partner header returns the exact transactions to sign plus the full fee breakdown; /v1/bridge/status and /v1/bridge/relay-plan follow the burn through to the destination mint. The full reference is in the bridge operator's gateway docs.