If I sent bitcoins to someone, but then want to cancel this transaction after it was already made (like a chargeback on a credit card), is this possible with Bitcoin?

up vote 12 down vote accepted

No, a bitcoin transaction which has already been included in a block on the longest chain cannot be reversed. This is by design as Bitcoin is intended to behave much like cash, with recipients being assured that the money is now permanently in their possession after a transaction has been included in a block.

Bitcoin transactions cannot be reversed. However, there are escrow services that make sure that transactions are safe for both parties. For example, if you want to buy an item from someone, using an escrow service, you would first send the Bitcoins to the escrow service. The seller then knows their money is secured and sends you the item. Once you've received it, you give your "ok" to the escrow service and the seller receives the money. If there's trouble with the item (or you never receive it), the issue can be settled through the escrow service.

Aside from that, fraudulent transactions can also be settled through legal means (that might be more difficult, though).

One service (that's currently not available, unfortunately) is ClearCoin: https://clearcoin.appspot.com/

If you search for Bitcoin Escrow, you will find a couple of solutions (I'm not posting them here because I can't recommend any; maybe "What are reliable Bitcoin Escrow services?" would be a good question ;-) ).

  • It is indeed a good question, and it has been asked here: bitcoin.stackexchange.com/questions/241/… – Domchi Aug 31 '11 at 19:22
  • 1
    Should we add a note here about reorgs? Maybe "Bitcoin transactions that have been confirmed in the blockchain cannot be reversed". Something about 1 hour, 6 blocks, etc. – Brian Armstrong Dec 5 '12 at 2:30

Bitcoin transactions are not reversible. This is by design.

Whether it is a feature or a flaw depends on your point of view. Many merchants consider it a feature as it eliminates counterparty risk. However, some people, notably Wikileaks, have called for a cryptocurrency with time limited reversibility.

It is not possible to reverse a transaction that has already been transmitted on the bitcoin network. However if you can keep a transaction from being transmitted then you can close the client restore the wallet file from a backup. When the client is restored with the -rescan flag the transaction will no longer be pending.

The only way to "reverse" the transaction is to immediately double-spend from the same set of UXTOs to a different address that you control (within a few seconds after your original transmission) and pray that the doublespend reaches enough nodes and wins.

But if your tx is already confirmed in a block, then no way.

  • You have on average, about five minutes to figure out you made a mistake and submit a double-spend (which should have a higher tip than the original transaction, to give the miner incentive to include it an not the original) – alfwatt Jan 14 at 7:01

There is a new cryptocurrency on the block (Reversecoin), that offers functionality to reverse ones transactions. Say a hacker gets your coins, you can cancel the transactions and get your coins another safe address of yours. Reversecoin does this in a completely distributed fashion, with out needing for any kind of central or third party. Check out our website Reversecoin for more details.

Disclosure: I am the lead dev for Reversecoin.

  • Hi Obulpathi! This looks like an interesting basis for a cryptocurrency. For a configurable period of time, your transactions can be reversed Could you elaborate on this? Who configures the amount of time that reversing a transaction takes? – Nick ODell Dec 10 '14 at 19:45
  • 1
    While creating the Reverse account (the account for which transactions can be reversed), user can choose the timeout, master key (used for reverting the transactions). When a hacker initiates transactions from Reverse accounts, the transactions stay in the blockchain in a pending state for the timeout period, instead of getting confirmed. User can reverse the transactions, using the master key. If user does not do anything, the transactions get confirmed, after the timeout period. – Obulpathi Dec 16 '14 at 16:53

To be honest all has been already said about this topic and all the competent previous posters are right in that Bitcoin is by design not reversible.

But to have all the facts at hand, one needs to mention also the event of March 2013 where Bitcoin underwent a 24 block reorganisation. Before people start screaming this was a network issue/program issue and no one did intentionally try to reverse a transaction - I know, it is just so no one can say afterwords, no one told me that was possible, even if it is a remote possibility.

I think people need to know that it is in fact possible, but very very unlikely. As I do not want to scare people away (and hopefully comply with other opinions on this matter and prevent any outrage) the probability is low and there is no incentive from miners to try something.

protected by Community Jun 12 '17 at 18:03

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.