gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-docs] branch master updated: revise public case


From: gnunet
Subject: [taler-docs] branch master updated: revise public case
Date: Sun, 09 Aug 2020 12:59:42 +0200

This is an automated email from the git hooks/post-receive script.

grothoff pushed a commit to branch master
in repository docs.

The following commit(s) were added to refs/heads/master by this push:
     new 8d71436  revise public case
8d71436 is described below

commit 8d7143629b608f0412a1ca77df3c78fcf30b7440
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Sun Aug 9 12:59:39 2020 +0200

    revise public case
---
 design-documents/007-payment.rst | 35 +++++++++++++++++++++--------------
 1 file changed, 21 insertions(+), 14 deletions(-)

diff --git a/design-documents/007-payment.rst b/design-documents/007-payment.rst
index 0920570..0b4ca4a 100644
--- a/design-documents/007-payment.rst
+++ b/design-documents/007-payment.rst
@@ -99,11 +99,10 @@ Backend Client Order Status Page
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 The merchant backend runs the following steps to generate the HTML page for
-``GET 
/orders/{order-ID}?session_id={session-ID}&claim_token={claim-token}&h_contract={contract-hash}``:
-------- NOTE: currently the argument is just 'token', not 'claim_token'! 
----------
+``GET 
/orders/{order-ID}?session_id={session-ID}&token={claim-token}&h_contract={contract-hash}``:
 
 1. If *order-ID* does not identify an existing order, render a 404 Not Found 
response.  **Terminate.**
-2. If *order-ID* identifies a paid order (where the *session-id* matches the 
one from the payment), run these steps:
+2. If *order-ID* identifies a paid order (where the *session-ID* matches the 
one from the payment), run these steps:
 
    1. If the *contract-hash* request parameter does not match the contract 
terms hash of the order,
       return a 403 Forbidden response. **Terminate.**
@@ -119,24 +118,32 @@ The merchant backend runs the following steps to generate 
the HTML page for
       obtained.  **Terminate.**
       ----- FIXME: IIRC our long-polling API does only allow waiting for the 
granted refund amount, not for the *obtained* refund amount. => API change?
 
-   3. Here the order has been paid. -------- what about refunded???
-      Prompt the URI ------ ???why? don't we redirect to fulfillment URL???????
+   3. Here the order has been paid and possibly refunded.
+      Redirect to the *fulfillment-URL* of the order.
+      **Terminate.**
 
-      ::
 
-        taler{proto_suffix}://pay/{/merchant_prefix*}/{order-id}/{session-id}
+3. If *order-ID* identifies an *unclaimed* order, run these steps:
 
-      Redirect to the *fulfillment-URL* of the order once
-      payment has been proven under *session-ID*.
+   1. If the order is *unclaimed* and the *claim-token* request parameter does 
not
+      match the claim token of the order, return a 403 Forbidden response. 
**Terminate**.
 
-      **Terminate.**
+   2. Prompt the URI
+
+      ::
+
+        
taler{proto_suffix}://pay/{/merchant_prefix*}/{order-id}/{session-ID}?c={claim-token}
 
+      The generated Web site should long-poll to check for the payment 
happening.
+      It should then redirect to the *fulfillment-URL* of the order once
+      payment has been proven under *session-ID*, or possibly redirect to the
+      *already-paid-order-ID*. Which of these happens depends on the 
(long-polled) JSON replies.
+      **Terminate.**
 
-3. If *order-ID* identifies an *unpaid* order, run these steps:
+4. If *order-ID* identifies an *claimed* and *unpaid* order, run these steps:
 
-   1. If the the *claim-token* request parameter does not match the claim 
token of
-      the order,  return a 403 Forbidden response. **Terminate**.
-      ----- DISCUSS: unpaid vs. unclaimed: do we check token or h_contract? 
------
+   1. If the order is *claimed* and the *contract-hash* request parameter does 
not
+      match the contract hash of the order, return a 403 Forbidden response. 
**Terminate**.
 
    2. If there is a non-null *already-paid-order-ID* for *session-ID* stored 
under the current order,
       redirect to the *fulfillment-URL* of *already-paid-order-ID*. 
**Terminate**.

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]