diff options
author | MS <ms@taler.net> | 2023-11-03 09:07:57 +0100 |
---|---|---|
committer | MS <ms@taler.net> | 2023-11-03 09:07:57 +0100 |
commit | 6c0d79ea6d4907f4bd6d52cdce315a8ee1f10592 (patch) | |
tree | 51ef91a151f7a06cb382609ee5407381a6698b3c /design-documents | |
parent | b58f700aab5f90fd5e5a3d4ce70011b27dfc7723 (diff) | |
download | docs-6c0d79ea6d4907f4bd6d52cdce315a8ee1f10592.tar.gz docs-6c0d79ea6d4907f4bd6d52cdce315a8ee1f10592.tar.bz2 docs-6c0d79ea6d4907f4bd6d52cdce315a8ee1f10592.zip |
DD 50: new payment submission states.
Diffstat (limited to 'design-documents')
-rw-r--r-- | design-documents/050-libeufin-nexus.rst | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/design-documents/050-libeufin-nexus.rst b/design-documents/050-libeufin-nexus.rst index 82982dc3..bc459e17 100644 --- a/design-documents/050-libeufin-nexus.rst +++ b/design-documents/050-libeufin-nexus.rst @@ -326,3 +326,20 @@ Discussion / Q&A * As of private communication, the responsibility of submitting idempotent payments relies on the use of ``request_uid`` (a database column of the initiated payment) as the ``MsgId`` value of the corresponding pain.001 document. + +* ``submitted`` column of an initiated payment evolved into the following enum: + + .. code-block:: shell-session + + CREATE TYPE submission_state AS ENUM ( + 'unsubmitted' + ,'transient_failure' + ,'permanent_failure' + ,'success' + ,'never_heard_back' + ); + + * ``unsubmitted``: default state when a payment is initiated + * ``transient_failure``: submission failed but can be retried, for example after a network issue. + * ``permanent_failure``: EBICS- or bank-technical error codes were not EBICS_OK (nor any tolerated EBICS code like EBICS_NO_DOWNLOAD_DATA_AVAILABLE), never retry. + * ``never_heard_back``: the payment initiation submission has **been** ``success`` but it was never confirmed by any outgoing transaction (from a camt.5x document) or any pain.002 report. It is responsability of a garbage collector to set this state after a particular time period. |