Stargate bridge is a transfer lifecycle for receipt, top-up, and return

Stargate bridge is a same-asset transfer workflow that begins with a quoted Taxi or Bus send, ends with a destination balance, and can be reversed through a new quote. Record the source transaction, follow the LayerZero message, confirm the exact token contract and received amount, add native gas before spending, and treat the return as a separate transfer.

This operations handbook follows one concrete action: moving USDC from Ethereum to Arbitrum when that route appears in the quote, preparing the received balance, and later safely sending it back.

From source approval to destination receipt

Two source-chain transactions complete an ERC-20 send when no allowance exists: approve USDC, then authorize the Stargate transfer.

Approve the ERC-20

On Ethereum, USDC follows ERC-20 and uses 6 decimal places, so one whole token is 1,000,000 base units. A fresh wallet allowance adds one approval transaction before the send, while a sufficient allowance leaves only the send confirmation. Keep enough ETH for both source actions. The approval delegates spending to the quoted Stargate contract; it does not move the balance. MetaMask and hardware wallets such as Ledger display the spender and amount before signing. This is revisited in practice.

Submit Taxi or Bus

The transfer confirmation fixes the source chain, destination chain, recipient, asset, amount, transport mode, minimum received amount, and quoted native fee. Taxi sends one cross-chain message for one transfer. Bus records the local settlement and queues the passenger with other transfers on the same pathway. The wallet can close after the source transaction succeeds; delivery follows on-chain state rather than the open browser session.

Read the destination balance

Switch the wallet to Arbitrum chain ID 42161 and inspect the USDC balance for the recipient selected in the quote. Six-decimal accounting records amounts down to 0.000001 USDC, so the displayed amount should match the quoted receipt after decimal conversion. If the wallet hides the asset, adding the correct token contract changes the display only; it neither creates a balance nor changes protocol settlement.

The destination receipt completes entry. The next operating choice is whether immediate Taxi delivery or batched Bus dispatch better matches the handoff.


How do Taxi and Bus change the handoff?

Two transport modes change the handoff: Taxi dispatches one transfer immediately, while Bus waits to share messaging costs across a batch.

Taxi is a one-to-one LayerZero V2 message and suits a return that must proceed as soon as source-chain finality permits. Bus groups passengers traveling along the same source-to-destination pathway, so local settlement appears before the destination transfer. A bus uses a configured capacity between 2 and 10 passengers; departure follows the full-bus condition or the route's maximum wait setting. The live quote exposes the native messaging charge and expected receipt for either available mode. Accept the route only after those two values have refreshed for the selected amount and recipient.


The quote sets the spend and receipt target

Three quote outputs anchor the Stargate bridge transfer: pathway limits, fee or reward details, and an OFT receipt. The receipt carries 2 amounts, amount sent and amount received, while quoteSend returns a MessagingFee with 2 fields for native-token and LayerZero-token payment. A normal wallet flow pays the displayed native fee on the source chain. The protocol's treasury adjustment and messaging charge change by pathway, so archive the quote beside the transaction hash. Those fields become the verification targets.

Receipt verification across wallet, explorer, and tracker

Three records establish completed delivery: the source receipt, the LayerZero message state, and the destination token balance.

Source transaction receipt

Etherscan records Ethereum chain ID 1, the sender, the Stargate contract, the token amount, and transaction success. The ERC-20 Transfer event provides a machine-readable debit. If approval was needed, its separate Approval event belongs to the preparation stage, not the cross-chain receipt. Preserve the hash for each confirmed source transaction.

Cross-chain message status

LayerZero Scan links the source transaction to its destination execution once a Taxi message is dispatched. A Bus rider first has a Stargate ticket; the message record becomes available after the batch leaves. The developer interface stores the ticket ID in a 56-bit unsigned integer and the destination endpoint ID in 32 bits. These identifiers are protocol fields rather than wallet balances. Match the source transaction, source and destination networks, recipient, and delivered state before treating the message as complete.

Destination token balance

Arbiscan records the destination Transfer event and the receiving address on Arbitrum. Compare its token contract and base-unit amount with the OFT receipt, then confirm the wallet display uses 6 decimals for USDC. A successful message plus the wrong selected network still produces a blank wallet view. Once the event and balance agree, prepare gas for the first destination action.


How much destination gas should you add?

One destination transaction is the right initial target: add enough native gas for the first planned action after delivery.

The exact quantity changes with the destination gas price and the contract called. Obtain a fresh estimate for the intended swap, approval, or return send, then add a margin that covers one retry. An ERC-20 approval and a Stargate return are separate transactions when allowance is missing, so fund both if the next action is a return. A simple wallet-to-wallet gas transfer needs only the sending transaction. Size the drop in the destination token's smallest unit, not as a percentage of USDC, because token value and execution gas use different accounting systems.

Stargate Taxi supports a custom native-token drop through LayerZero execution options, while Bus exposes a route-defined preset through its native-drop flag. The dropped asset goes to the specified destination recipient. On Ethereum chain ID 1, Arbitrum 42161, Optimism 10, and Base 8453, that asset is ETH. One ETH contains 1,000,000,000,000,000,000 wei, although the required amount remains a live gas calculation.

A separate transfer from another wallet or exchange also funds the destination address. Network identity matters: Avalanche C-Chain 43114 uses AVAX, BNB Chain 56 uses BNB, and Polygon 137 uses POL. Send the gas token on the destination network itself. After gas arrives, the received token balance is ready for the five-condition decision gate.


The five-condition release checklist

Five checks decide whether a received Stargate position is ready to use, adjust, or return.

  • The source receipt shows success, with 2 hashes saved when approval and send were separate transactions.
  • Taxi delivery is executed, or the Bus ticket is associated with a dispatched batch.
  • The recipient matches the intended 20-byte EVM address, displayed as 40 hexadecimal digits after the 0x prefix.
  • The destination chain ID and token contract match the quote, and the base-unit amount matches the OFT receipt.
  • The address holds enough native gas for the next quoted action, including a fresh approval when required.

Passing all five conditions turns the received balance into an operational position. At that point, the remaining concerns are the settlement mechanics and the eventual reverse transfer.


Credits, OFT receipts, and Bus dispatch under the hood

Seven SendParam fields carry the Stargate V2 instruction through LayerZero V2, from destination identity to transport command.

Quote and local settlement

The IOFT-compatible call includes a 32-bit destination endpoint, a 32-byte recipient, amount sent, minimum amount received, execution options, a compose message, and an OFT command. Stargate converts local token units into shared accounting units for messaging. Pool routes use credits to cap how much liquidity a destination pathway can promise, which is why a fresh quote precedes every send.

Bus queue and ticket

A Stargate Bus dispatch groups a configured set of 2 to 10 passengers traveling on one pathway. The Bus command occupies 1 byte, whereas Taxi uses empty command bytes. Each rider receives a ticket containing a 56-bit ticket ID and passenger data. Local settlement is final before the batch message leaves. Comparing that ticket with the queue's next ticket identifier reveals whether dispatch has occurred, without treating queue time as destination delivery.

Destination delivery

After LayerZero verifies and executes the message, the Stargate pool releases liquidity or the relevant OFT mechanism accounts for the destination asset. The OFT receipt's received amount remains the reconciliation figure. Bus does not support composed destination logic, while Taxi supports composition through LayerZero options. For a simple balance transfer, direct delivery keeps verification narrower than a send-and-call workflow.


Reversing the route and closing the lifecycle

One fresh quote closes the lifecycle by making Arbitrum the source, Ethereum the destination, and received USDC the new input. Fund Arbitrum gas first, approve the quoted Stargate contract if its allowance is insufficient, then choose Taxi or Bus again. The return has its own minimum received amount, messaging fee, source hash, LayerZero state, and destination receipt. Reconcile the final Ethereum balance rather than assuming that the outbound amount returns unchanged.

What readers ask about Stargate bridge

Does the receiving wallet need to stay connected during delivery?

The receiving wallet does not need to remain connected after the source transaction succeeds. Stargate and LayerZero process the on-chain message independently of the browser session. Reopen the wallet later, select the destination network, and compare the token balance with the destination event and the quoted OFT receipt.

What happens if I close the app while a Bus transfer is waiting?

Closing the app does not cancel a confirmed Bus transfer or remove its ticket from the queue. The source transaction and ticket remain on-chain while the batch waits for dispatch. Reopen the tracker later with the source hash, then confirm the LayerZero message and destination balance after the Bus leaves.

Why does a fresh approval appear when I reverse the route?

A fresh approval appears because ERC-20 allowances belong to one token contract, one owner, one spender, and one chain. An Ethereum allowance does not authorize spending on Arbitrum. The reverse quote may also select a different Stargate contract, so the wallet requests approval before it can submit the return transfer.

When should I use a custom destination address instead of my connected address?

Use a custom destination address when another wallet, custody account, or multisignature account must receive the transfer. Confirm that the address format works on the destination chain and that its operator controls destination gas. The quoted recipient becomes final once the source transaction is signed, so review it before confirmation.

Can I return only part of the received token balance?

You can return part of the received balance when the reverse route quotes that amount within its pathway limits. Leave enough native gas on the source network for approval and sending. The partial return creates a new OFT receipt and leaves the remainder at the destination address under the same token contract.