summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libeufin/api-nexus.rst16
-rw-r--r--libeufin/iso20022.rst36
2 files changed, 45 insertions, 7 deletions
diff --git a/libeufin/api-nexus.rst b/libeufin/api-nexus.rst
index 666fe1f3..d58b43bd 100644
--- a/libeufin/api-nexus.rst
+++ b/libeufin/api-nexus.rst
@@ -138,6 +138,22 @@ manages payment initiations of the account and tracks the of payment initiations
preparationDate: string;
}
+.. http:get:: {nexusBase}/bank-accounts/{my-acct}/payment-initiations
+
+ Ask nexus the list of initiated payments. At this stage of the API,
+ **all** is returned: submitted and non submitted payments.
+
+ **Response**
+
+ .. ts:def:: InitiatedPayments
+
+ interface InitiatedPayments {
+
+ // list of all the initiated payments' UID.
+ initiatedPayments: PaymentStatus[];
+ }
+
+
.. http:post:: {nexusBase}/bank-accounts/{my-acct}/payment-initiations
Ask nexus to prepare instructions for a new payment.
diff --git a/libeufin/iso20022.rst b/libeufin/iso20022.rst
index d87098a3..06d929c2 100644
--- a/libeufin/iso20022.rst
+++ b/libeufin/iso20022.rst
@@ -22,15 +22,37 @@ The specifics of this mapping are:
of message elements in the same schema.
-Cash Management (camt)
-======================
+Why does LibEuFin not use ISO 20022?
+====================================
-LibEuFin combines camt.052, camt.053 and camt.054, as they essentially
-have the same structure and serve the same purpose: Reporting transactions
-on a customer's bank account.
+While LibEuFin can ingest ISO 20022 messages (camt.05x, pain.002) and generate
+them (pain.001), it does not use ISO 20022 in its API and internal data model.
-We also flatten the hierarchy a bit and only have entries ("money movement in one go")
-and transactions.
+Reasons for not using ISO 20022 directly are:
+
+1. Impedence mismatch. ISO 20022 messages do not map well to query/response
+ APIs.
+2. Cumbersome to use. Even when ISO 20022 messages are directly mapped
+ to JSON, they are difficult to use due to their verbosity.
+3. Underspecification. Messages like camt.05x leave many "degrees of freedom"
+ when translating the underlying data into a message.
+4. No interoperability. As a result of underspecification, different countries/organisations
+ define their own subset and interpretation rules for ISO 20022 messages. This can
+ lead to even contradictory usage rules. An example for this is how the Swiss and EPC
+ interpretations handle transaction amounts in the presence of multiple currencies.
+5. Redundancy. ISO 20022 are redundant, and often mix aspects of the "presentation logic"
+ with the underlying data model. An example of this is the optional "summary" information
+ in camt.05x messages.
+
+Instead of using ISO 20022 messages directly, LibEuFin leverages the standard in other ways:
+
+* As the data exchange format with banks
+* As a guideline for naming in data formats
+* As a guideline for which concepts need to be understood by LibEuFin
+
+
+Implementation notes for camt.05x
+=================================
Types of amounts in camt messages
---------------------------------