summaryrefslogtreecommitdiff
path: root/design-documents
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2023-02-16 21:45:07 +0100
committerFlorian Dold <florian@dold.me>2023-02-16 21:45:07 +0100
commitb52ff32d67833fa11917690255b59e740b8b1e70 (patch)
treeb5497bd563f4aa5c8bad454ca95f9384c2d90eb0 /design-documents
parentdd1c2b2ed3fcbb0023741eb36853df43576d5b36 (diff)
downloaddocs-b52ff32d67833fa11917690255b59e740b8b1e70.tar.gz
docs-b52ff32d67833fa11917690255b59e740b8b1e70.tar.bz2
docs-b52ff32d67833fa11917690255b59e740b8b1e70.zip
spec peer push credit transaction
Diffstat (limited to 'design-documents')
-rw-r--r--design-documents/037-wallet-transactions-lifecycle.rst32
1 files changed, 30 insertions, 2 deletions
diff --git a/design-documents/037-wallet-transactions-lifecycle.rst b/design-documents/037-wallet-transactions-lifecycle.rst
index 94de1667..b882c139 100644
--- a/design-documents/037-wallet-transactions-lifecycle.rst
+++ b/design-documents/037-wallet-transactions-lifecycle.rst
@@ -138,7 +138,7 @@ States and transitions:
* ``pending(purse-created)``
- In this state, the user can send / show the `taler://` URI or QR code to somebody else.\
+ In this state, the user can send / show the ``taler://`` URI or QR code to somebody else.
* ``[action:abort] => aborting(delete-purse)``: The user aborts the P2P payment. The wallet tries to reclaim money in the purse.
* ``[purse-timeout] => aborting(refresh)``: The other party was too slow.
@@ -175,7 +175,35 @@ States and transitions:
Transaction Type: Peer Push Credit
----------------------------------
-TBD.
+Peer Push Credit transactions are created when the user accepts to be paid via
+a ``taler://pay-push`` URI.
+
+States and transitions:
+
+* ``pending(initial)``
+
+ * ``[processed-success] => pending(withdrawing)``: Merging the reserve was successful
+
+* ``pending(withdrawing)``
+
+ * ``[processed-kyc-required] => kyc-required``
+
+* ``kyc-required``
+
+ * ``[poll-success] => pending(withdrawing)``
+ * ``[action:abort] => aborted``: The user will lose the coins they were not able to withdraw yet, unless they
+ resume the transaction again.
+
+* ``aborted``
+
+ * ``[action:resume] => pending(withdrawing)``
+ * ``[action:delete] => deleted``: The user will irrevocable lose coins that were not withdrawn from the reserve yet.
+
+* ``done``
+
+ * ``[action:delete] => deleted``: No money will be lost, the withdrawn coins will be kept
+
+
Transaction Type: Peer Pull Credit
----------------------------------