taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

commit fbcc74755c0900ab4c4b89891dd22ec052c43011
parent 309f88d19ebf55620d258806e45172244fd3c325
Author: Florian Dold <florian@dold.me>
Date:   Thu, 23 May 2024 22:04:29 +0200

update DD37 withdrawal states

Diffstat:
Mdesign-documents/037-wallet-transactions-lifecycle.rst | 11++++++++++-
Mimages/transaction-withdrawal-states.dot | 3+++
2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/design-documents/037-wallet-transactions-lifecycle.rst b/design-documents/037-wallet-transactions-lifecycle.rst @@ -172,9 +172,18 @@ the courts) to avoid losing the funds for good. Transaction Type: Withdrawal ---------------------------- +* ``dialog(proposed)`` + + Initial dialog state for bank-integrated withdrawals. In this state, the user must confirm + the withdrawal to proceed, and possibly provide further information (such as the amount). + + Depending on how a bank-integrated withdrawal transaction is created, + it starts either in this state or in ``pending(bank-register-reserve)``. + + * ``pending(bank-register-reserve)`` - Initial state for bank-integrated withdrawals. The wallet submits the reserve public key + Initial active state for bank-integrated withdrawals. The wallet submits the reserve public key and selected exchange to the bank (via the bank integration API). Note that if the user aborts at this stage, we do not know if the bank is in the confirmation stage, so we must still *try* to abort the transaction at the bank. diff --git a/images/transaction-withdrawal-states.dot b/images/transaction-withdrawal-states.dot @@ -1,6 +1,7 @@ digraph G { initial_manual[label="", xlabel="manual" shape="circle"]; initial_bank[label="", xlabel="bank-integrated" shape="circle"]; + dialog_proposed[label="dialog(proposed)"]; pending_brr[label="bank-register-reserve"]; pending_bc[label="bank-confirm"]; pending_ewr[label="exchange-wait-reserve"]; @@ -25,6 +26,8 @@ digraph G { } initial_bank->pending_brr; + initial_bank->dialog_proposed; + dialog_proposed->pending_brr; initial_manual->pending_ewr; pending_brr->pending_bc [color="green"]; pending_brr->aborting_bank [style="dashed", color="blue", label="abort"];