diff options
author | Ross Nicoll <jrn@jrn.me.uk> | 2014-04-26 16:59:23 +0100 |
---|---|---|
committer | Ross Nicoll <jrn@jrn.me.uk> | 2014-04-26 16:59:23 +0100 |
commit | d8bd74baf841f0d82a1b2b8af8ece37df50b06d4 (patch) | |
tree | c9e217b34cecf37ac1361a18a49c150c56e5d621 | |
parent | 694314d296cff6871b9e58c2b2b8f07305cb8a4a (diff) |
Added note about handling multiple copies of a Payment message, to ensure resend is safe
in case of a transport layer failure.
-rw-r--r-- | bip-0070.mediawiki | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/bip-0070.mediawiki b/bip-0070.mediawiki index 84a8559..b541cbc 100644 --- a/bip-0070.mediawiki +++ b/bip-0070.mediawiki @@ -156,6 +156,11 @@ If the customer authorizes payment, then the Bitcoin client: # If PaymentDetails.payment_url is specified, POST a Payment message to that URL. The Payment message is serialized and sent as the body of the POST request. Errors communicating with the payment_url server should be communicated to the user. +The merchant's server should handle receiving multiple copies of the same Payment +message in response to a single PaymentRequest. This is required to ensure that in +case of a transport level failure during transmission, recovery is possible by +re-sending the Payment message. The endpoint URL must remain valid for at least +the same period of time as the original PaymentRequest. PaymentDetails.payment_url should be secure against man-in-the-middle attacks that might alter Payment.refund_to (if using HTTP, it must be |