summaryrefslogtreecommitdiff
path: root/design-documents
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2023-02-16 21:52:32 +0100
committerFlorian Dold <florian@dold.me>2023-02-16 21:52:32 +0100
commit5c1364894e127812c7ae37f6f6a5677e759aa41f (patch)
tree43389a13acac16b8545c940b0b277b783ea7163a /design-documents
parentb52ff32d67833fa11917690255b59e740b8b1e70 (diff)
downloaddocs-5c1364894e127812c7ae37f6f6a5677e759aa41f.tar.gz
docs-5c1364894e127812c7ae37f6f6a5677e759aa41f.tar.bz2
docs-5c1364894e127812c7ae37f6f6a5677e759aa41f.zip
spec withdrawal transaction
Diffstat (limited to 'design-documents')
-rw-r--r--design-documents/037-wallet-transactions-lifecycle.rst31
1 files changed, 30 insertions, 1 deletions
diff --git a/design-documents/037-wallet-transactions-lifecycle.rst b/design-documents/037-wallet-transactions-lifecycle.rst
index b882c139..6a318198 100644
--- a/design-documents/037-wallet-transactions-lifecycle.rst
+++ b/design-documents/037-wallet-transactions-lifecycle.rst
@@ -92,7 +92,36 @@ or starts the necessary steps to actively abort the transaction (e.g. to avoid l
Transaction Type: Withdrawal
----------------------------
-TBD.
+* ``pending(bank-register-reserve)``
+
+ Initial state for bank-integrated withdrawals.
+
+ * ``[processing-success] => pending(bank-confirming)``
+ * ``[processing-error(bank-aborted)] => aborted(bank)``
+
+* ``pending(bank-confirming)``
+
+ * ``[poll-success] => pending(exchange-wait-reserve)``
+
+* ``pending(exchange-wait-reserve)``
+
+ Initial state for manual withdrawals.
+
+ * ``[poll-success] => pending(withdrawing-coins)``
+
+* ``pending(withdrawing-coins)``
+
+ * ``[processing-success] => done``
+ * ``[processing-kyc-required] => kyc-required``
+
+* ``kyc-required``
+
+ * ``[poll-success] => pending(withdrawing-coins)``
+
+* ``aborted(bank)``: The bank notified the wallet that the withdrawal
+ was aborted on the side of the bank and won't proceed.
+
+* ``done``
Transaction Type: Payment to Merchant
-------------------------------------