Skip to main content

Withdrawals

Withdrawals are cross domain transactions initiated on the rollup (ie. Arbitrum One, Arbitrum Nitro or an Orbit L3), and finalized by a transaction executed on the base chain (ie. Ethereum Mainnet, Arbitrum One or Arbitrum Nitro).

To maintain a shared language, Rollbridge refers to bridge operations where tokens flow from the base chain to the rollup as deposits, and bridge operations where tokens flow from the rollup to the basechain as withdrawals.

How do withdrawals work?

Ether withdrawals are initiated by a withdrawETH call to the ArbSys precompile.

ERC20 token withdrawals are initiated via calls to outboundTransfer on the GatewayRouter.

Once assertions are posted to the base chain (usually within ~ 1 hour) and the assertion is confirmed (usually about ~ 1 week) the withdrawal can be finalized by posting a proof to the Outbox's executeTransaction function.

7 day delay

withdrawal

On Arbitrum Nitro powered rollups, withdrawals require two transactions (one on the rollup and one on the basechain) and a seven day waiting period.

After initiating the withdrawal, a 7 day challenge period needs to be observed. This 7 day period allows for other network participants to challenge the integrity of the corresponding output root. Once the challenge period has passed, the withdrawal can be finalized with a second finalizing transaction.

For more information, please refer to L2 to L1 messaging in the Arbitrum Nitro documentation.