I went ahead and wrote this semi-detailed post about how to implement Chargebacks, when I hit my head and said "Doh, maybe this can just be implemented more cleanly with Scripts".

So ... is there a way to use scripts to create a chargeback mechanism in Bitcoin? Has this been discussed before? (please provide links)

  • 1
    The closest thing I've ever heard discussed would be escrow-type transactions using M of N signing. Also, in the link you posted it's apparent that the community at large seems to think chargebacks are a bad idea that go against the Bitcoin concept (I would tend to agree). Still, if you wanted to implement them, scripts would be the way to go. I don't know enough to answer the question directly, only to say that M of N signing and escrow transactions will probably solve whatever problem you're working on better. Mar 8 '12 at 19:56

The discussion on Bitcoin Talk pretty much convinced me that "elective Chargebacks" (where some tx be reverrsed, but not all) is essentially meaningless.

If a shop would choose to give a customer the ability to do chargebacks for a limited time, this is equivalent to just postponing the payment. Since this is the main use case, and the other use case of chargebacks is personal wallet security, for which there are better alternatives, I'll accept this answer and consider the matter closed.

  • 2
    For the shop scenario, some form of burn escrow (discussed for example in bitcoin.stackexchange.com/questions/557/…) is probably the solution. For the server scenario, the solution is of course multi-signature, and Mike Hearn has recently proposed streamlining this using trusted computing. Mar 9 '12 at 8:46

Partially, simply use a 2-3 Multi where one party holds two keys.

Say for example an exchange wanted to sell bitcoins by credit card. They would send the use a M-Of-N escrow containing their public key but also the two of their own public keys. If the buyer then reversed the credit card transaction the exchange can then reclaim their coins.

However the user will not be able to forward the transaction without the approval of the exchange and their would be few merchants who would accept the M-Of-N transaction.


Escrow of course has its uses, but the issue is more practical than technical insofar as deciding when the transaction is irreversibly settled. With credit cards etc. there is an adjudication and arbitration process, so presumably any bitcoin chargeback mechanism would also need such a (distributed) procedure.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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