taler-docs

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

commit 3412aff724394c72c45eedc1786b3952b0a74f5e
parent 5785055a37fdf1f1cbbab9f865e2820e6df2bb9d
Author: MS <ms@taler.net>
Date:   Thu,  1 Dec 2022 19:08:22 +0100

Sandbox API.

Match types with implementation.

Diffstat:
Mlibeufin/api-sandbox.rst | 121+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 119 insertions(+), 2 deletions(-)

diff --git a/libeufin/api-sandbox.rst b/libeufin/api-sandbox.rst @@ -125,7 +125,7 @@ Subscribers. .. http:post:: /demobanks/default/ebics/subscribers - Allows (only) the `admin` user to associate a bank account + Allows (only) the *admin* user to associate a bank account to a EBICS subscriber. If the latter does not exist, it is created. @@ -215,14 +215,51 @@ Bank accounts. Give summary of all the bank accounts. + **Response:** + + .. ts:def:: AdminBankAccount + + interface AdminBankAccount { + + // IBAN + iban: string; + + // BIC + bic: string; + + // human name + name: string; + + // bank account label + label: string; + } + + .. http:get:: /admin/bank-accounts/$accountLabel Give information about a bank account. + **Response:** + + .. ts:def:: AdminBankAccountBalance + + interface AdminBankAccountBalance { + // Balance in the $currency:$amount format. + balance: string; + // IBAN of the bank account identified by $accountLabel + iban: string; + // BIC of the bank account identified by $accountLabel + bic: string; + // Mentions $accountLabel + label: string; + } + .. http:post:: /admin/bank-accounts/$accountLabel create bank account. + **Request:** :ts:type:`AdminBankAccount` + Transactions. ^^^^^^^^^^^^^ @@ -233,9 +270,68 @@ JSON. Inform about all the transactions of one bank account. + **Response:** + + .. ts:def:: AdminTransactions + + interface AdminTransactions { + payments: AdminTransaction[]; + } + + .. ts:def:: AdminTransaction + + interface AdminTransaction { + + // Label of the bank account involved in this payment. + accountLabel: string; + + // Creditor IBAN + creditorIban: string; + + // Debtor IBAN + debtorIban: string; + + // UID given by one financial institute to this payment. + // FIXME: clarify whether that can be also assigned by + // the other party's institution. + accountServicerReference: string; + + // ID of the Pain.001 that initiated this payment. + paymentInformationId: string; + + // Unstructured remittance information. + subject: string; + + // Date of the payment in the HTTP header format. + date: string; + + // The number amount as a string. + amount: string; + + // BIC of the creditor IBAN. + creditorBic: string; + + // Legal name of the creditor. + creditorName: string; + + // BIC of the debtor IBAN. + debtorBic: string; + + // Legal name of the debtor. + debtorName: string; + + // Payment's currency + currency: string; + + // Have values 'credit' or 'debit' relative + // to the requesting user. + creditDebitIndicator: string; + } + .. http:post:: /admin/bank-accounts/$accountLabel/generate-transactions - Generate one incoming and one outgoing transaction for one bank account. + Generate one incoming and one outgoing transaction for the bank account + identified by ``$accountLabel``. .. http:post:: /admin/bank-accounts/$accountLabel/simulate-incoming-transaction @@ -243,6 +339,27 @@ JSON. The debtor (not required to be in the same bank) information is taken from the request. + **Request:** + + .. ts:def:: AdminSimulateTransaction + + interface AdminSimulateTransaction { + + // Debtor IBAN. + debtorIban: string; + + // Debtor BIC. + debtorBic: string; + + // Debtor name. + debtorName: string; + + // Amount number (without currency) as a string. + amount: string; + + // Payment subject. + subject: string; + } Camt. +++++