summaryrefslogtreecommitdiff
path: root/core/api-merchant.rst
diff options
context:
space:
mode:
Diffstat (limited to 'core/api-merchant.rst')
-rw-r--r--core/api-merchant.rst14
1 files changed, 9 insertions, 5 deletions
diff --git a/core/api-merchant.rst b/core/api-merchant.rst
index 51b08a82..23f4cba3 100644
--- a/core/api-merchant.rst
+++ b/core/api-merchant.rst
@@ -718,9 +718,12 @@ Payment processing
summary: string;
// URL that will show that the order was successful after
- // it has been paid for. The wallet must always automatically append
- // the order_id as a query parameter to this URL when using it.
- fulfillment_url: string;
+ // it has been paid for. Optional. When POSTing to the
+ // merchant, the placeholder "${ORDER_ID}" will be
+ // replaced with the actual order ID (useful if the
+ // order ID is generated server-side and needs to be
+ // in the URL).
+ fulfillment_url?: string;
}
The following fields can be specified if the order is inventory-based.
@@ -1418,7 +1421,8 @@ Payment processing
:status 402 PaymentRequired:
The response is a `StatusUnpaidResponse`.
:status 403 Forbidden:
- The ``h_contract`` (or the ``token`` for unclaimed orders) does not match the order.
+ The ``h_contract`` (or the ``token`` for unclaimed orders) does not match the order
+ and we have no fulfillment URL in the contract.
:status 410 Gone:
The response is a `StatusGoneResponse`.
:status 404 Not found:
@@ -2464,7 +2468,7 @@ The contract terms must have the following structure:
// The URL for this purchase. Every time is is visited, the merchant
// will send back to the customer the same proposal. Clearly, this URL
// can be bookmarked and shared by users.
- fulfillment_url: string;
+ fulfillment_url?: string;
// Maximum total deposit fee accepted by the merchant for this contract
max_fee: Amount;