DEV Community

Anna Botsford
Anna Botsford

Posted on

Why bridge withdrawals wait for a Merkle proof

A Merkle proof is a compact receipt that lets a bridge check a withdrawal against a record on Ethereum. It works only after the Polygon block containing the withdrawal has been included in a checkpoint, a record validators submit to Ethereum.

What does the proof prove?

The proof shows that a specific burn happened on Polygon. A burn destroys the bridged tokens there, so they cannot also remain in your Polygon wallet after you claim them on Ethereum.

Think of a Merkle tree as a filing system that combines many records into one fingerprint, called a root. A Merkle proof carries the path from one record to that root; the bridge can check the path without receiving every record in the filing system.

Polygon Bridge turns that check into a two-step withdrawal: first burn the tokens on Polygon, then claim them on Ethereum after the proof is ready. The proof is what connects those two actions, even though they happen on separate networks.

How does the proof release tokens?

When you start a withdrawal, the bridge burns the tokens on Polygon and records the event in the transaction receipt, a record of what the transaction did. Validators later checkpoint the relevant Polygon block on Ethereum.

Once that checkpoint exists, the bridge can assemble a proof linking the burn receipt to the block and the block to the checkpoint. The RootChainManager, the Ethereum contract that handles exits, checks this evidence before releasing the matching tokens from escrow, the bridge’s locked pool.

That check also prevents a second claim. After the first successful exit, the bridge marks the withdrawal as used, so the same proof cannot unlock the tokens again.

Why can’t I claim straight away?

You have to wait for the checkpoint before the proof can pass. A recent burn may be visible on Polygon, but Ethereum cannot verify it through the bridge until validators have committed its block.

For a typical user, expect a wait of tens of minutes, though checkpoint timing can vary. After it is ready, the Ethereum claim itself usually takes minutes once included in a block. Polygon’s support pages describe the burn and later claim as separate steps; PolygonScan lets you inspect the burn transaction and its block.

Before starting, check that you have POL for the Polygon transaction and ETH for the Ethereum claim. You pay network fees on both chains, and the Ethereum fee changes with congestion. Your wallet shows the current estimate before you sign each transaction.

What should I check before claiming?

Use the withdrawal status in Polygon Portal to see whether the checkpoint has arrived and the claim is ready. Check that the Ethereum wallet address is the one you intend to receive the tokens at, and keep the Polygon burn transaction handy if you need to find the withdrawal again.

There is an important edge case: once the burn is confirmed, you cannot cancel the withdrawal or return those tokens to your Polygon wallet. If Ethereum fees are high, you can wait to claim; Polygon support says the pending claim does not expire, and the tokens remain in the bridge contract.

Polygon Bridge makes the checkpoint the practical dividing line: before it, wait; after it, review the claim and its Ethereum fee, then sign when you are ready. Check the burn transaction first, confirm the checkpoint status, and keep enough ETH for the final claim.

Top comments (0)