Learn · 4 min read

What a confirmation actually means

Mempool, blocks, confirmations and finality — explained without jargon, with what each one means for when you can ship an order.

When a customer sends a crypto payment, the transfer goes through stages. Knowing them helps you decide when it is safe to deliver.

1. Broadcast and seen

The customer’s wallet broadcasts a transaction. Nodes that hear about it keep it in a waiting area called the mempool. At this point the payment is detected: it exists, but nothing guarantees it will be included in the chain.

2. Included in a block

Miners or validators pick transactions and bundle them into a block. Once the transfer is inside a block, it has one confirmation.

3. Buried by more blocks

Every new block built on top adds another confirmation. Replacing a transaction that sits under many blocks becomes progressively harder, so each confirmation increases confidence.

4. Final enough for your risk

There is no universal number. A small digital purchase may be fine with fewer confirmations than a large one. FeitPay lets each network define a confirmation policy, and the payment only becomes confirmed when that policy is met.

What can still go wrong

  • Reorganisation: occasionally two blocks compete and one is discarded. Transfers in the discarded block return to waiting, or disappear. FeitPay reports this as reorged instead of hiding it.
  • Replacement: on some networks an unconfirmed transfer can be replaced by another paying a different address. That is why unconfirmed payments are never treated as final.

The practical rule

Ship when the payment is confirmed — not when it is detected — and let the webhook, not a timer, tell you.

← All articles