Verify first, sign second
A wallet selects UTXO inputs, creates an output for the recipient, usually a change output for the user, and calculates the fee as the difference between inputs and outputs. Before signing, check the receiving address, amount, currency or unit, and that the payment is on-chain Bitcoin.
Copying and QR codes reduce manual transcription errors, but a compromised device can substitute data. With a separate signing device, comparing its display with the original instruction is decisive. A shortened display of only a few characters is a weaker check than complete or otherwise securely identified data.
The fee is not a percentage of the amount
Miners select transactions according to their own policy and the economics of block space. Wallets therefore use a feerate—a rate per virtual byte—and multiply it by the transaction's virtual size. A transaction with several inputs can cost more than a higher-value transfer with one input.
Virtual size accounts for the witness-data discount under SegWit rules. Users usually need not count bytes manually, but should distinguish a network fee from an exchange trading fee, spread and service withdrawal charge. The same word, fee, can describe four different costs.
- total on-chain fee = feerate × virtual size
- the number and type of inputs and outputs affect size
- the value in euros does not itself determine the network fee
An estimate is not a block-space reservation
Tools such as estimatesmartfee estimate a rate from observed transactions and blocks for a chosen confirmation target. The mempool can fill rapidly after signing, however, and miners need not follow the same policy. The result is an informed estimate, not a delivery-time contract.
An urgent payment can use a higher rate; a non-urgent one can wait for cheaper block space. A rate that is too low can mean a long wait or eventual eviction from some nodes' mempools. That alone does not mean the bitcoin vanished; the UTXO may later be spent again according to the network and wallet state.
What can be done after sending
Some wallets support Replace-by-Fee, where the sender creates a replacement with a higher fee, or Child Pays for Parent, where spending the change from a pending transaction incentivises a miner to include the package. Availability depends on transaction construction, node policy and wallet features.
These mechanisms are not a reliable Cancel button. After confirmation, only the key holder of the received output can return the payment in a new transaction. For a large or unusual payment, a small test and a fee check before signing are wiser than trying to repair a mistake after broadcast.