taler-docs

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

exchange-account.rst (3311B)


      1 ..
      2   This file is part of GNU TALER.
      3   Copyright (C) 2014-2024 Taler Systems SA
      4 
      5   TALER is free software; you can redistribute it and/or modify it under the
      6   terms of the GNU Affero General Public License as published by the Free Software
      7   Foundation; either version 2.1, or (at your option) any later version.
      8 
      9   TALER is distributed in the hope that it will be useful, but WITHOUT ANY
     10   WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
     11   A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more details.
     12 
     13   You should have received a copy of the GNU Affero General Public License along with
     14   TALER; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
     15 
     16   @author Florian Dold
     17   @author Benedikt Muller
     18   @author Sree Harsha Totakura
     19   @author Marcello Stanisci
     20   @author Christian Grothoff
     21   @author Javier Sepulveda
     22 
     23 EXCHANGE ACCOUNT OPTIONS
     24 ------------------------
     25 
     26 An exchange (or merchant) can have multiple bank accounts. The following
     27 options are for sections named “[exchange-account-SOMETHING]”. The ``SOMETHING`` is
     28 arbitrary and should be chosen to uniquely identify the bank account for
     29 the operator.  These options are used by the **taler-exchange-aggregator**, **taler-exchange-closer**, **taler-exchange-transfer** and **taler-exchange-wirewatch** tools.
     30 
     31 PAYTO_URI
     32   Specifies the full payto://-URL of the account. The general format is
     33   ``payto://$METHOD/$DETAILS?receiver-name=NAME``.  Examples:
     34   ``payto://x-taler-bank/localhost:8899/Exchange?receiver-name=Exchange`` or
     35   ``payto://iban/GENODEF1SLR/DE67830654080004822650/?receiver-name=Exchange`` or
     36   ``payto://iban/DE67830654080004822650/?receiver-name=Exchange`` (providing the BIC is optional).
     37 
     38 ENABLE_DEBIT
     39   Must be set to ``YES`` for the accounts that the
     40   **taler-exchange-aggregator** and **taler-exchange-closer** should debit.
     41 
     42 ENABLE_CREDIT
     43   Must be set to ``YES`` for the accounts that the **taler-exchange-wirewatch**
     44   should check for credits. It is yet uncertain if the merchant
     45   implementation may check this flag as well.
     46 
     47 
     48 Additionally, for each enabled account there MUST be another matching section named “[exchange-accountcredentials-SOMETHING]”.  This section SHOULD be in a ``secret/`` configuration file that is only readable for the **taler-exchange-wirewatch** and **taler-exchange-transfer** processes. It contains the credentials to access the bank account:
     49 
     50 WIRE_GATEWAY_URL
     51   URL of the wire gateway.  Typically of the form
     52   ``https://$HOSTNAME[:$PORT]/accounts/$USERNAME/taler-wire-gateway/``
     53   where $HOSTNAME is the hostname of the system running the bank
     54   (such as the Taler Python bank or the Nexus) and ``$USERNAME`` is
     55   the username of the exchange's bank account (usually matching
     56   the ``USERNAME`` option used for authentication).  Example:
     57   ``https://bank.demo.taler.net/accounts/Exchange/taler-wire-gateway/``.
     58 
     59 WIRE_GATEWAY_AUTH_METHOD
     60   This option determines how the exchange (auditor/wirewatch/aggregator)
     61   authenticates with the wire gateway.  Choices are ``basic``, ``bearer`` and ``none``.
     62 
     63 USERNAME
     64   User name for ``basic`` authentication with the wire gateway.
     65 
     66 PASSWORD
     67   Password for ``basic`` authentication with the wire gateway.
     68 
     69 TOKEN
     70   Token for ``bearer`` authentication with the wire gateway.