Author: Pieter Wuille 2014-01-30 15:16:54
Published on: 2014-01-30T15:16:54+00:00
In a conversation between Gavin Andresen and Jeff Garzik, the former states that the intent of Bitcoin's payment protocol is to give the customer a great experience. However, there is a concern about the refund or memo feature of the protocol where merchants need to provide an alternative route for delivering that information to them before the transaction is made. If their receive server is down at the right time, sending the transaction may result in the transfer of funds without knowing what to do with it and potentially no way to contact the sender. In this case, the fields are useless. This issue limits the ability to rely on the payment protocol being bidirectional, hence, Pieter suggests taking measures to prevent a transaction from being broadcast without the payment delivered. One of the ways to achieve this is never broadcasting the transaction yourself, while another is retrying to send the payment if delivery fails. To solve this problem, Pieter suggests adding some measures to the specification, which include attempting to send the payment to a payment_uri specified, making a reasonable attempt to deliver the payment when a transaction is broadcast if sending the payment fails, and no longer being responsible for broadcasting the transaction once a paymentACK has been received.
Updated on: 2023-05-19T18:02:44.675128+00:00