When a cross-chain transfer gets stuck, the source transaction may still be waiting for confirmation, or it may have confirmed while the destination step is still processing. If your wallet shows pending or failed, start with the transaction hash: it tells you whether the transfer actually left the source chain. Knowing how to choose a Mayan bridge route helps explain why two transfers between the same chains can take different paths and have different completion steps.
First, did the source transaction confirm?
A transfer cannot proceed until its source-chain transaction is confirmed. Open the transaction hash in the source chain’s block explorer and check its status there; a wallet’s spinner or error message alone does not establish whether the chain accepted it.
If it is pending, the transaction has not yet completed on the source chain. On Ethereum, for example, a transaction can wait because its gas fee is too low for current demand. Avoid submitting the transfer again while the first transaction is unresolved: if both are later accepted, you could send twice. If your wallet offers a “speed up” or “cancel” option, check what it will replace before confirming; replacement behavior depends on the chain and wallet.
If the explorer marks it failed, look for the failure reason and check whether the tokens were spent. A failed onchain transaction usually does not execute the transfer, but it can still cost a network fee. Save the hash and error details before deciding whether to try again.
What does “confirmed” mean if the tokens have not arrived?
A confirmed source transaction is only the first milestone; the route may still need to arrange delivery on the destination chain. The source explorer proves what happened on the sending chain, while the destination explorer can show whether a separate delivery transaction has appeared.
For an intent-based route such as Mayan Swift, the transfer can involve a solver: a service that uses its own funds to deliver the requested asset on the destination chain. Wormhole’s Settlement documentation describes solvers competing to fulfill these transfers and says Swift typically completes in around 12 seconds. Treat that as a typical case, not a deadline. Network congestion, the selected route, or a solver issue can extend the wait.
For MCTP, a route that uses Circle’s CCTP to move USDC, the source transfer must pass through the relevant chain finality and attestation steps before delivery. Wormhole’s documentation describes the attestation as evidence needed for destination redemption. That extra process can take longer than a fast solver route, so compare the transfer’s current stage with the route you actually selected before concluding it has failed.
What should you check while it is processing?
Use the transaction hash and route status to identify the last completed step. Check that the destination address and token are the ones you intended, then look for a destination transaction or a route-specific refund status.
- Source transaction pending: wait for confirmation or use the wallet’s replacement option only after checking its effect.
- Source transaction failed: read the explorer’s error and confirm whether the transfer executed before retrying.
- Source confirmed, destination absent: check the bridge’s status page or route tracker for progress or a refund.
- Destination transaction confirmed: verify the recipient address and token contract; the wallet may not display a token automatically.
For Swift, Wormhole’s Settlement FAQ says funds are refunded on the source chain if no solver starts the auction before its deadline. A missing destination receipt is therefore not, by itself, proof that funds are lost. Look for the refund transaction too, and do not start another transfer until you know whether the first one delivered or returned funds.
When is it time to seek help?
Ask the bridge’s support team for help when the source transaction is confirmed but the route tracker shows no progress or refund after its stated window. Send the source hash, route, source and destination chains, and recipient address; never send a seed phrase or private key.
If the destination transaction succeeded, the next step is to check the exact token address and destination account. If the source transaction never confirmed, resolve that transaction before retrying. The deciding condition is the onchain record: a confirmed source transfer needs route-status follow-up, while an unconfirmed or failed one needs source-side resolution first.
Top comments (0)