The withdrawal lifecycle
A withdrawal from Intention to an external chain has three stages, and each one has its own latency.- Request. Your signed withdrawal message is accepted by IntentionKernel and included in a block. At this point your internal balance has already been reduced by the withdrawal amount. This happens at the same speed as any other on-chain action — sub-second on a healthy network.
- Validator attestation. Once the Intention block containing the withdrawal is finalized by IntentionBFT, validators observe it and sign an attestation that authorizes a payout on the destination chain. A stake-weighted quorum of attestations is what the destination-chain contract requires before it will release funds. See the Bridge page for the full protocol.
- Destination chain settlement. Someone — any relayer, including you — submits the aggregated attestation to the destination-chain contract, which validates it and executes the payout. The time for this stage is whatever the destination chain itself requires for inclusion and confirmation.
Where the time goes
Two latency components dominate, and they are independent.- The Intention-side finality component is bounded and small. IntentionBFT finalizes blocks within the consensus pipeline rather than waiting for probabilistic confirmations.
- The destination-chain component is whatever that chain’s blocks and finality rules demand. A fast chain adds seconds. A slower chain can add minutes.
When to worry
Each supported destination chain has a documented worst-case budget for the full flow, published on the Bridge page. Wait until that budget has elapsed before you open a support ticket. Before the budget expires, your withdrawal is almost certainly still in-flight and opening a ticket will not speed it up. If the budget has elapsed, you should:- Check your own destination wallet on a block explorer to confirm the funds have not already arrived and been missed by the wallet UI. UIs sometimes lag the chain.
- Check the bridge contract on the destination chain to see whether the withdrawal has been marked as settled there. The Bridge page points at the canonical contract addresses.
- Check the API (link at API reference) for the withdrawal status as reported by Intention itself.
What to include in a ticket
Send the following tosupport@intention.xyz:
- The Intention account address that initiated the withdrawal.
- The Intention block or transaction where the withdrawal was recorded.
- The destination chain and the destination address.
- The asset and amount.
- The UTC time at which you submitted the withdrawal.
- Any status strings you observed at each of the three checks above.