Short answer
A failed or expired cross-chain transfer is refunded to a refund address on a specific chain, not "back to wherever it came from" by magic. On most bridges the default is the depositing address on the source chain, and many APIs let the app change it. Before you sign, make sure the refund address is one you control on the chain where the refund will be paid — ideally your own wallet, never an exchange deposit address.
Key terms
- Source (origin) chain: where you deposit funds.
- Destination chain: where you expect to receive them.
- Depositor: the address that signs the source transaction.
- Refund address: the address that receives funds if the transfer is not completed.
How refunds work on common services
Across
If no relayer fills a deposit before its fill deadline, the deposit expires and the funds, still escrowed in the source-chain contract, are refunded. Across exposes two settings: refundAddress, which defaults to the depositor, and refundOnOrigin, which defaults to true (refund on the source chain; false means on the destination chain). Refunds go through Across's settlement process and can take several hours (Across docs: refunds). See our Across page for measured quotes.
NEAR Intents 1Click
With 1Click you send funds to a deposit address and the quote request names a refundTo address and a refundType — the origin chain, or an internal NEAR Intents balance. If the swap fails the status becomes REFUNDED, meaning funds were returned to the refund address (NEAR Intents: making a request). Front ends normally fill refundTo with your source address, but check it on the confirmation screen. Read our NEAR Intents 2026 incident page for how a protocol pause affected in-flight funds.
deBridge DLN
deBridge orders can be cancelled if they are not filled, and the protocol fee is refunded in full on cancellation (deBridge docs: fees). See deBridge DLN.
Exchanges
If you withdraw from an exchange and the withdrawal fails, the exchange credits your exchange account. If you deposit to an exchange on the wrong network, see the wrong-network matrix.
Which wallet types are safe refund addresses?
| Wallet type | Safe as refund address? | Why |
|---|---|---|
| Your own EOA (MetaMask, Rabby, hardware wallet account) | Yes, on any EVM chain | The same key controls the same address on every EVM chain (ethereum.org: accounts) |
| Smart-contract wallet such as Safe | Only on chains where it is deployed | The address exists only where the contract is deployed; later deployment works for v1.3.0+ Safes, not on zkSync Era (Safe docs) |
| Exchange deposit address | No | You do not hold the key; recovery depends on the exchange's policy |
| Someone else's address | No | The refund belongs to whoever controls it |
Non-EVM chains follow their own formats: a refund on Solana or Tron must go to an address valid on that chain.
A pre-sign refund checklist
- Find the refund address on the confirmation screen; if it is not shown, assume the depositor address on the source chain.
- Confirm it is your address and that you can sign on that chain.
- If you use a smart-contract wallet, confirm it is deployed on the refund chain.
- Keep a little gas on the refund chain so you can move refunded funds.
- Save the source transaction hash; it is the key to every tracker (verification guide).
FAQ
My transfer failed. Why did the refund arrive on a different chain?
The service's refund setting may point to the destination chain. On Across, for example, refundOnOrigin set to false refunds on the destination chain.
Can I change the refund address after sending?
Usually not; it is part of the signed deposit or the quote. Contact the service's support with the transaction hash if the address is wrong.
Do refunds include the fees I paid?
It depends on the service. deBridge documents that its protocol fee is refunded in full on cancellation; source-chain gas is never refunded because it was paid to the network.
Sources
- Across docs: refunds — accessed 2026-10-24
- NEAR Intents docs: making a request — accessed 2026-10-24
- deBridge docs: fees and supported chains — accessed 2026-10-24
- ethereum.org: Ethereum accounts — accessed 2026-10-24
- Safe docs: multi-chain deployment — accessed 2026-10-24
