taler-docs

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

commit 5b8e0b0c282f0914d667298579792bdc6504e02d
parent f3c8ef70bd3dc914c8e3d391405207108d2d9e72
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sun, 23 Apr 2023 13:22:36 +0200

add KYC to deposit

Diffstat:
Mdesign-documents/037-wallet-transactions-lifecycle.rst | 15+++++++++++++++
Mtransaction-deposit-states.dot | 13++++++++++++-
2 files changed, 27 insertions(+), 1 deletion(-)

diff --git a/design-documents/037-wallet-transactions-lifecycle.rst b/design-documents/037-wallet-transactions-lifecycle.rst @@ -679,8 +679,23 @@ Transaction Type: Deposit All the coins were submitted, waiting to be wired. * ``[poll-success] => done`` + * ``[poll-accepted] => pending(kyc)`` * ``[action:abort] => aborting(refund)`` +* ``pending(kyc)`` + + Exchange requires KYC (or AML) before making the wire transfer. + + * ``[poll-success] => done`` + * ``[action:suspend] => suspended(kyc)`` + +* ``suspended(kyc)`` + + The user suspended us while we were waiting for KYC to be finished. + + * ``[action:resume] => pending(kyc)`` + * ``[action:force-delete] => deleted`` + * ``aborting(refund)`` Wallet should try to get the deposited amount back from the exchange (by submitting a refund). diff --git a/transaction-deposit-states.dot b/transaction-deposit-states.dot @@ -4,6 +4,8 @@ digraph G { pending_deposit[label="pending(deposit)"]; suspended_deposit[label="suspended(deposit)", shape="box"]; pending_track[label="pending(track)"]; + pending_kyc[label="pending(kyc)"]; + suspended_kyc[label="suspended(kyc)", shape="box"]; aborting_refresh[label="aborting(refresh)"]; aborting_refund[label="aborting(refund)"]; @@ -21,9 +23,18 @@ digraph G { pending_deposit->pending_track; pending_deposit->aborting_refund [color="red", label="failure"]; + pending_deposit->suspended_deposit [color="blue", label="suspend"]; + pending_track->aborting_refund [color="blue", label="abort"]; pending_track->done; - pending_deposit->suspended_deposit [color="blue", label="suspend"]; + pending_track->pending_kyc; + + pending_kyc->suspended_kyc [color="blue", label="suspend"]; + pending_kyc->done; + + suspended_kyc->pending_kyc [color="blue", label="resume"]; + suspended_kyc->deleted [color="blue", label="force-delete"]; + suspended_abort_refund->aborting_refund [color="blue", label="resume"]; suspended_abort_refresh->aborting_refresh [color="blue", label="resume"];