How to Cancel a Bitcoin Transaction? Dos and Donts

As a user of cryptocurrency, you are already familiar with depositing and withdrawing Bitcoin to and from your wallet. Now, let’s take a look at it from a technical viewpoint, and get a better understanding of Bitcoin transactions. Here, we aim to answer your questions about when a transaction can be canceled, and when it has passed the point of no return. Keep reading to discover the answers to these questions, and also, how to cancel a Bitcoin transaction (if you still can)!

What is a bitcoin transaction?

If you want to send some of your Bitcoin to your friend, you need to publish your intention and the nodes scan the entire Bitcoin network to validate that you have that bitcoin and that you haven’t already sent it to someone else. Once your send operation has been confirmed (validated), it gets included in a “block” which gets attached to the previous block – hence the term “blockchain.” Transactions can’t be undone or tampered with, because it would mean having to re-do all subsequent blocks.

Bitcoin in blue

What is a confirmed and unconfirmed transaction?

Roughly every ten minutes, a new block is created and added to the blockchain through the mining process. This block verifies and records any new transactions. The transactions are then considered to be confirmed by the Bitcoin network.

For example, if Person A sends one BTC to Person B, this transaction will remain “unconfirmed” until the next block is created. Once that block is created and the new operation is verified and included in that block, the transaction will get one confirmation. Approximately every ten minutes thereafter, a new block is created and the wallet statement is reconfirmed by the Bitcoin network. While some services are instant or require only one confirmation, many Bitcoin merchants will require more as each confirmation greatly decreases the likelihood of a payment being reversed.

The confirmation does not usually take much time, but if you need it to be completed ASAP, you can pay a higher fee. If your transaction is unconfirmed for hours, just wait. If more than 72 hours pass and your operation still isn’t confirmed, you can resend your BTC.

Sometimes, for a variety of reasons, there will be a spike in the number of BTC transactions that are waiting to be confirmed. That will cause a delay in confirmation times and will increase the fees required for each operation to be included in a block.

If your BTC was sent with low fees, it can take many hours or even days for its confirmation. Once a transaction is broadcast, it is stored by thousands of nodes all around the world, so it can’t be canceled. Eventually it will either be confirmed, or rejected, and the coins will be returned to your address like they were never sent.

Block waiting time

Can any transaction be canceled or reversed?

We are all human beings, not computers, so every person can make a mistake and accidentally send the wrong amount of funds to the wrong recipient. And then we’ll be desperately looking for a ‘Cancel’ option. Unfortunately, the steps to cancel a Bitcoin transaction are a little more complicated than just pressing an “Undo” button.
As it was mentioned earlier, a BTC operation has to be confirmed in order to be completed. But it takes a while to get this confirmation. If you are lucky enough and your transaction has not been confirmed yet, then you still have a chance to cancel it.

The first thing you need to do is to check whether or not it has any confirmations. Take your transaction ID and enter it into some block explorer, like Blockchain.info to see the information about your operation including the number of its confirmations. If the number of confirmations is greater than 0, you won’t be able to cancel your transaction. A Confirmed transactions are permanent and irreversible. But if it has zero confirmations, then you still have a chance to undo your sending.

Blockchain info interface

How to cancel an unconfirmed Bitcoin transaction?

If you are lucky, and you have noticed a mistake in a BTC transaction before it was confirmed, here are a few options that may help you cancel it.

Replace by Fee (RBF)

Some wallets support the RBF protocol allowing you to replace your original transaction with a new one that includes a higher transaction fee. This would effectively undo your operation. To use this feature, you would have needed to make the original transaction replaceable (usually via an opt-in checkbox):

• Find your transaction somewhere on a blockchain site.
• Use coinb.in tools to replicate the transaction but leave off a higher fee.
• Exactly duplicate inputs and outputs of the transaction and get the unsigned text of the “duplicated” operation.
• Sign the above unsigned transaction. You will need to bypass the friendly UI of your wallet (or check if your wallet software supports RBF natively, some might do it at this point).


If you’re using Bitcoin Core, you can use the Help -> Debug Window -> Console. Type help to get a full list of commands.

If you have a passphrase on your wallet, use wallet passphrase “passphrase” timeout where timeout is in seconds.

• Get the private key for the address that the transaction originated from (dumpprivkey might be helpful here) and use it to sign the operation.
• Broadcast your transaction. However it can be tricky, as some broadcasters do not allow rebroadcasting transactions that are still in the mempool (waiting to be picked up by miners and written to the blockchain). You may need to wait for a few days for the operation to drop out of the mempool.
• Once the “double spend” transaction is out there, the old operation should be “cancelled” by the new transaction being picked up by miners.

Double spend using a higher fee

If you are not able to use RBF, you still have a chance to cancel the Bitcoin transaction by double spending with a higher fee:
• Create a new transaction equal to the amount of the original one and send it to yourself. Make sure the transaction fee on this is significantly higher than the original one you paid.
• It might be necessary to use a different wallet or some specialized software that would allow double spending for the operation to be broadcast to the network.
• Miners will pick up the new transaction, and your BTC will be back in your wallet.
But keep in mind that most miners and wallets have safeguards against double spending. If none of these two methods helped you, treat this as an important lesson.



Summing up

As unfortunate as it may be, cryptocurrency transactions on the Bitcoin, Ethereum, and Bitcoin Cash networks are designed to be irreversible and we have no control over them. Knowing this, it’s extremely important to double-check your sending details and make corrections before you click on the ‘Send’ button.

Read also: Bitcoin Problems Today: Full Analysis

Sources:

Confirmation Delay Prediction of Transactions in the Bitcoin Network Beltran Fiz, Stefan Hommes, Radu State
Replace by fee Bitcoin Wiki
Bitcoin and Decentralized Trust Protocols Ricardo Perez-Marco