zero confirmation
A zero-confirmation transaction has been broadcast to the Bitcoin network and is visible in the mempool, but has not yet been included in a block. It carries a risk of double-spend until at least one confirmation is received.
A zero-confirmation transaction, also called an unconfirmed transaction, is one that has been broadcast to the Bitcoin network and accepted by nodes into the mempool but has not yet been included in a block. From the moment a transaction enters the mempool it becomes visible to the network, but it has not yet been sealed into the blockchain and carries no protection against reversal.
The risk specific to unconfirmed transactions is double-spending. Because the transaction has not been written into a block, the sender can attempt to broadcast a conflicting transaction that sends the same funds to a different address with a higher fee. If miners pick up the replacement first, the original transaction may never confirm, effectively cancelling the payment. This risk exists until at least one confirmation has been received, and diminishes further with each subsequent block built on top.
Whether accepting zero-confirmation is reasonable depends on the context and the amount involved. For small in-person transactions where the merchant can monitor the mempool for conflicting transactions, the practical risk is low. For larger amounts, online payments, or situations where goods are delivered digitally and instantly, waiting for at least one confirmation is the norm. Six confirmations is a widely cited threshold for large amounts, reflecting the point at which reversing the transaction would require an impractical amount of computational work. A re-org reaching back six blocks, while theoretically possible, becomes exponentially less probable with each additional block.