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
The expected time for the full flow is shown in the withdrawal dialog when you submit, and it differs by destination chain — the dispute period dominates it. Wait until that window 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 destination chain for the payout transaction, using the address you withdrew to. If funds arrived there, the withdrawal completed and the question is where your wallet is displaying them.
- Check the withdrawal status as reported by Intention itself, either in the app or through whatever integration you are using.
What to include in a ticket
Send the following tocontact@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.