[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-docs] 01/02: work paying invoices for DD37
From: |
gnunet |
Subject: |
[taler-docs] 01/02: work paying invoices for DD37 |
Date: |
Sun, 09 Apr 2023 19:10:28 +0200 |
This is an automated email from the git hooks/post-receive script.
grothoff pushed a commit to branch master
in repository docs.
commit b40e3af8fd8cb9cd439742c829d1665fbdfb6bb2
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Sun Apr 9 19:10:16 2023 +0200
work paying invoices for DD37
---
Makefile | 4 +-
.../037-wallet-transactions-lifecycle.rst | 66 +++++++++++++++++-----
2 files changed, 54 insertions(+), 16 deletions(-)
diff --git a/Makefile b/Makefile
index a214435..06d0464 100644
--- a/Makefile
+++ b/Makefile
@@ -73,6 +73,8 @@ transaction-push-credit-states.png:
transaction-push-credit-states.dot
dot -Tpng transaction-push-credit-states.dot >
transaction-push-credit-states.png
transaction-pull-credit-states.png: transaction-pull-credit-states.dot
dot -Tpng transaction-pull-credit-states.dot >
transaction-pull-credit-states.png
+transaction-pull-debit-states.png: transaction-pull-debit-states.dot
+ dot -Tpng transaction-pull-debit-states.dot >
transaction-pull-debit-states.png
coin.png: coin.dot
dot -Tpng coin.dot > coin.png
deposit.png: deposit.dot
@@ -80,7 +82,7 @@ deposit.png: deposit.dot
reserve.png: reserve.dot
dot -Tpng reserve.dot > reserve.png
-diagrams: arch-api.png coin.png deposit.png reserve.png
transaction-common-states.png transaction-withdrawal-states.png
transaction-payment-states.png transaction-refund-states.png
transaction-refresh-states.png transaction-tip-states.png
transaction-deposit-states.png transaction-push-debit-states.png
transaction-push-credit-states.png transaction-pull-credit-states.png
+diagrams: arch-api.png coin.png deposit.png reserve.png
transaction-common-states.png transaction-withdrawal-states.png
transaction-payment-states.png transaction-refund-states.png
transaction-refresh-states.png transaction-tip-states.png
transaction-deposit-states.png transaction-push-debit-states.png
transaction-push-credit-states.png transaction-pull-credit-states.png
transaction-pull-debit-states.png
# The html-linked builder does not support caching, so we
diff --git a/design-documents/037-wallet-transactions-lifecycle.rst
b/design-documents/037-wallet-transactions-lifecycle.rst
index 2e4f085..bf8831b 100644
--- a/design-documents/037-wallet-transactions-lifecycle.rst
+++ b/design-documents/037-wallet-transactions-lifecycle.rst
@@ -1046,7 +1046,7 @@ TODO: Also specify variant where account reserve needs to
be created / funded fi
* ``done``
- The invoice was successfully paid.
+ The payment for the invoice was successfully received.
* ``[action:delete] => deleted``
@@ -1061,52 +1061,88 @@ Transaction Type: Peer Pull Debit
* ``initial``
- Wallet read the taler:// URI
+ Initial state where we encounter the taler:// URI.
+
+ * ``[trigger] => pending(download)``
+
+* ``pending(download)``
+
+ We are downloading the information about the invoice.
- * ``[action:success] => pending(invoice-downloaded)``
+ * ``[action:suspend] => suspended(download)``
+ * ``[success] => pending(user)``
+* ``suspended(download)``
-* ``pending(invoice-downloaded)``
+ User suspended downloading the information about the invoice.
- We've downloaded information about the pull payment and are waiting
- for the user to confirm.
+ * ``[action:resume] => pending(download)``
+ * ``[action:cancel] => deleted``
+
+``pending(user)``
+
+ We have downloaded information about the pull payment and are waiting for
+ the user to confirm.
- * ``[action:abort] => aborted``: Safe to abort!
* ``[action:confirm-pay] => pending(submit-payment)``
+ * ``[action:cancel] => deleted``
+ * ``[timeout] => aborted``
-* ``pending(submit-payment)``
+* ``pending(deposit)``
The user has confirmed the payment and the wallet tries to deposit
into the provided purse.
- * ``[action:abort] => aborting(refund)``
- * ``[processed-success(auto-refund-enabled)] => pending(refundable)``
+ * ``[action:suspend] => suspended(deposit)``
+ * ``[processed-success(auto-refund-enabled)] => pending(refundable)``.
FIXME(CG): I think we should not support auto-refund.
* ``[processed-success(auto-refund-disabled)] => done``
- * ``[processed-error(expired)] => aborting(refresh)``
+ * ``[failure:timeout] => aborting(refresh)``
* ``[processed-success] => done``
- * ``[action:abort] => aborting(refresh)``
+ * ``[failure:other] => aborting(refund)``
+
+* ``suspended(deposit)``
+
+ User suspended depositing into the purse.
+
+ * ``[action:resume] => pending(deposit)``
+ * ``[action:abort] => aborting_refund``
* ``pending(refundable)``
-The payment succeed but if auto-refund-check is active it will be checking for
refunds
+ The payment succeed but if auto-refund-check is active it will be checking
for refunds.
+ FIXME(CG): I do not think we should support auto-refunds here. Not included
in diagram.
* ``[auto-refund-timeout] => done``
* ``aborting(refund)``
+ Aborts the payment, asking for the already deposited coins to be refunded.
+
* ``[processed-success] => aborted(refunded)``
* ``[processed-failure] => aborting(refresh)``
-
+ * ``[action:force-abort] => aborted``
* ``aborting(refresh)``
- XXX Before refreshing, should we not wait until the purse has expired?
+ Refreshes the coins that were previously deposited into the purse to recover
their value.
* ``[processed-success] => aborted``
* ``[processed-failed] => failed``
* ``done``
+ The invoice was successfully paid.
+
+ * ``[action:delete] => deleted``
+
+* ``deleted``
+
+ All information about the invoice has been deleted.
+
+.. image:: ../transaction-pull-debit-states.png
+ :width: 800
+
+
Alternatives
============
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.