Skip to content
LogoLogo

Withdrawal Lifecycle

The lifecycle of a withdrawal operation

SourceTxDiscovered

This is the initial state of an operation, which is created when a deposit is discovered in a Hyperliquid block. A withdrawal is identified as a Hyperliquid transfer - greater than the minimum for the source-chain - to a Unit withdrawal address.

Once a sourceTx is discovered, the deposit operation goes through validation, which includes checks for sanctioned addresses.

WaitForSrcTxFinalization

Unit requires 5000 confirmations for a Hyperliquid withdrawal to be considered final.

ReadyForWithdrawQueue

In accordance with throughput limitations of supported networks, destination transactions are staged on a withdraw queue to be triggered in batches. Like sweeps, withdraw queue transactions are triggered every ~3 Bitcoin blocks for bitcoin withdrawals, and ~21 Ethereum slots for ethereum withdrawals.

The operation's positionInWithdrawQueue may be used to inform the expected completion of this state.

QueuedForWithdraw

The operation has been included in a withdraw queue batch, the tx-hash of which corresponds to the tx-hash returned by the withdraw queue endpoint and can be inspected on any explorer for the destination network.

Done

The withdrawal is finalized on the destination network. The operation's state is officially "done" - this state is terminal.