summaryrefslogtreecommitdiff
path: root/core/api-merchant.rst
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2020-05-02 19:43:33 +0200
committerChristian Grothoff <christian@grothoff.org>2020-05-02 19:43:33 +0200
commit05aa6d5ac501a62063f5b903805cdb633d14b2db (patch)
tree7aedafb4a569d2305bcbd738b2ad26a250f25bea /core/api-merchant.rst
parentebe14556125c525f46ba0f3272ed03fe1e520567 (diff)
downloaddocs-05aa6d5ac501a62063f5b903805cdb633d14b2db.tar.gz
docs-05aa6d5ac501a62063f5b903805cdb633d14b2db.tar.bz2
docs-05aa6d5ac501a62063f5b903805cdb633d14b2db.zip
finish spec part of #5987
Diffstat (limited to 'core/api-merchant.rst')
-rw-r--r--core/api-merchant.rst15
1 files changed, 10 insertions, 5 deletions
diff --git a/core/api-merchant.rst b/core/api-merchant.rst
index 7d009c8f..5b086f80 100644
--- a/core/api-merchant.rst
+++ b/core/api-merchant.rst
@@ -956,8 +956,11 @@ Receiving Payments
**Response:**
:status 200 OK:
- The exchange accepted all of the coins. The body is a
- a `merchant refund response <MerchantRefundResponse>`.
+ The merchant accepted the request, and passed it on to the exchange. The body is a
+ a `merchant refund response <MerchantRefundResponse>`. Note that the exchange
+ MAY still have encountered errors in processing. Those will then be part of
+ the body. Wallets MUST carefully consider errors for each of the coins as
+ returned by the exchange.
:status 400 Bad request:
Either the client request is malformed or some specific processing error
happened that may be the fault of the client as detailed in the JSON body
@@ -967,11 +970,13 @@ Receiving Payments
:status 404 Not found:
The merchant backend could not find the order or the instance
and thus cannot process the abort request.
- :status 410 Gone:
- It is too late for aborting, the exchange may have already sent wired funds
- to the merchant.
+ :status 408 Request Timeout:
+ The merchant backend took too long getting a response from the exchange.
+ The wallet SHOULD retry soon.
:status 412 Precondition Failed:
Aborting the payment is not allowed, as the original payment did succeed.
+ It is possible that a different wallet succeeded with the payment. This
+ wallet should thus try to refresh all of the coins involved in the payment.
:status 424 Failed Dependency:
The merchant's interaction with the exchange failed in some way.
The error from the exchange is included.