taler-docs

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

commit 787bbe5b9a37db24d34994bad346e314016d5f19
parent 368d64189b6354b645f3d289374a02fb497a57da
Author: Christian Grothoff <grothoff@gnunet.org>
Date:   Thu, 23 Oct 2025 10:03:22 +0200

spec updates for #10525

Diffstat:
Mcore/api-merchant.rst | 25+++++++++++++++++++++----
Mmanpages/taler-merchant.conf.5.rst | 9+++++++++
2 files changed, 30 insertions(+), 4 deletions(-)

diff --git a/core/api-merchant.rst b/core/api-merchant.rst @@ -125,7 +125,7 @@ of that instance. Currently, the ``/private/auth/`` API supports two main authentication methods in the ``InstanceAuthConfigurationMessage``: -* ``external``: (*@deprecated since v20*) With this method, no checks are done by the merchant backend. +* ``external``: (@deprecated since **v20**) With this method, no checks are done by the merchant backend. Instead, a reverse proxy / API gateway must do all authentication/authorization checks. * ``token`` (**@since v19**): With this method, the client must provide an authorization header that contains a bearer token when accessing a protected endpoint in the form @@ -135,14 +135,14 @@ Currently, the ``/private/auth/`` API supports two main authentication methods i A login token is commonly only valid for a limited period of time and scoped to specific permissions. If the ``$INSTANCE_PASSWORD`` is lost, the administrator can set a password using the ``taler-merchant-passwd`` command-line tool. -* ``token`` (*@deprecated since v19*): With this method, the client must provide an authentication token in +* ``token`` (@deprecated since **v19**): With this method, the client must provide an authentication token in the format ``secret-token: $INSTANCE_PASSWORD``. The behaviour is then equivalent to the ``token`` method above. Any API may be accessed using the bearer authentication ``secret-token: $INSTANCE_PASSWORD``. Notice that this behaviour is deprecated and will be phased out in favor of login tokens. For testing, the service may be started with the configuration option ``DISABLED_AUTHENTICATION = YES`` -in section ``[merchant]`` (@since v20). +in section ``[merchant]`` (@since **v20**). Scopes ^^^^^^ @@ -172,7 +172,7 @@ such as the implemented version of the protocol and the currency used. .. http:get:: /config Return the protocol version and currency supported by this merchant backend. - This specification corresponds to ``current`` protocol being version **v21**. + This specification corresponds to ``current`` protocol being version **v22**. **Response:** @@ -238,6 +238,23 @@ such as the implemented version of the protocol and the currency used. // Since protocol **v21** mandatory_tan_channels?: TanChannel[]; + // Space-separated list of enabled payment target types. + // Useful if the SPA should not show allow adding other + // types of bank accounts. "*" is used to represent no + // restriction. + // Since protocol **v22** + payment_target_types: string; + + // Regular expression representing further restrictions + // on allowed payment targets. Any "payto://"-URI supplied + // for a bank account must match the given regular expression. + // For example, "payto://iban/CH.*" would restrict the system + // to only Swiss bank accounts. + // Optional, no restrictions are imposed if the field is + // absent. + // Since protocol **v22** + payment_target_regex? string; + } enum TanChannel { diff --git a/manpages/taler-merchant.conf.5.rst b/manpages/taler-merchant.conf.5.rst @@ -196,6 +196,15 @@ HELPER_EMAIL STRICT_PROTOCOL_V19 Set to YES to strictly enforce protocol version 19 or later. Transient option for development. +PAYMENT_TARGET_TYPES + Space-separated list of allowed payment target types (like bitcoin, iban or x-taler-bank). + Defaults to "*" which means no restrictions if not specified. + +PAYMENT_TARGET_REGEX + POSIX regular expression imposing additional restrictions on the "payto://"-URIs allowed + for bank accounts of instances of this system. For example, "payto://iban/CH.*" would + restrict the system to only Swiss IBAN accounts. Optional, no restrictions if not set. + MERCHANT KYCCHECK OPTIONS -------------------------