diff options
author | Marcello Stanisci <marcello.stanisci@inria.fr> | 2016-12-26 18:42:18 +0100 |
---|---|---|
committer | Marcello Stanisci <marcello.stanisci@inria.fr> | 2017-01-27 10:42:46 +0100 |
commit | 735fb8a89f51875196783b167e8ae622368808fc (patch) | |
tree | 39db1fdaa9fc253abcbdddc641ce6aee598f545b /api/api-bank.rst | |
parent | f248c701bbb16af1a540d56895a772c6748b80a9 (diff) | |
download | docs-735fb8a89f51875196783b167e8ae622368808fc.tar.gz docs-735fb8a89f51875196783b167e8ae622368808fc.tar.bz2 docs-735fb8a89f51875196783b167e8ae622368808fc.zip |
Still on splitting
Diffstat (limited to 'api/api-bank.rst')
-rw-r--r-- | api/api-bank.rst | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/api/api-bank.rst b/api/api-bank.rst new file mode 100644 index 00000000..48b7075e --- /dev/null +++ b/api/api-bank.rst @@ -0,0 +1,81 @@ +.. + This file is part of GNU TALER. + Copyright (C) 2014, 2015, 2016 INRIA + TALER is free software; you can redistribute it and/or modify it under the + terms of the GNU General Public License as published by the Free Software + Foundation; either version 2.1, or (at your option) any later version. + TALER is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. + You should have received a copy of the GNU Lesser General Public License along with + TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/> + + @author Marcello Stanisci + +========= +Bank API +========= + +The following APIs are served from banks, in order to allow exchanges to +deposit funds to money recipients. A typical scenario for calling this +APIs is after a merchant has deposited coins to the exchange, and the exchange +needs to give real money to the merchant. + +------------------ +Administrative API +------------------ + +This is `local` API, meant to make the bank communicate with trusted entities, +namely exchanges. + +.. _bank-deposit: +.. http:post:: /admin/add/incoming + +**Request:** The body of this request must have the format of a `BankDepositRequest`_. + +**Response:** + +:status 200 OK: The request has been correctly handled, so the funds have been transferred to the recipient's account + +:status 400 Bad Request: The bank replies a `BankIncomingError`_ object + +**Details:** + +.. _BankDepositRequest: +.. code-block:: tsref + + interface BankDepositRequest { + + // JSON 'amount' object. The amount the caller wants to transfer + // to the recipient's count + amount: Amount; + + // The id of this wire transfer + wtid: base32; + + // The sender's account identificator + debit_account: number; + + // The recipient's account identificator + credit_account: number; + + } + +.. _BankIncomingError: +.. code-block:: tsref + + interface BankIncomingError { + + // Human readable explanation of the failure. + reason: string + + } + +-------- +Util API +-------- + +Whenever the user wants to know the bank account number of a public account, +the following path returns a human readable HTML containing this information + + `/public-accounts/details?account=accountName` |