commit ef9ae5c1b76d6995caf6d5f9fb7f8892c2575e4b
parent 78fad18dcbb4a6917426c15d182bc89ffe527eeb
Author: Antoine A <>
Date: Thu, 18 Sep 2025 21:09:19 +0200
corebank: add missing new tan_channels field
Diffstat:
1 file changed, 24 insertions(+), 6 deletions(-)
diff --git a/core/api-corebank.rst b/core/api-corebank.rst
@@ -361,11 +361,18 @@ Account Management
// @since **v9**
conversion_rate_class_id?: Integer;
+ // @deprecated in **v10**
// If present, enables 2FA and set the TAN channel used for challenges
// Only admin can set this property, other user can reconfig their account
// after creation.
tan_channel?: TanChannel;
+ // If present, enables 2FA and set the TAN channels used for challenges
+ // Only admin can set this property, other user can reconfig their account
+ // after creation.
+ // @since **v10**
+ tan_channels?: TanChannel[];
+
// @deprecated in **v9**, use conversion_rate_class_id instead
min_cashout?: Amount;
}
@@ -400,8 +407,8 @@ Account Management
* ``TALER_EC_BANK_NON_ADMIN_PATCH_DEBT_LIMIT`` : a non-admin user has tried to create an account with a customer debt limit.
* ``TALER_EC_BANK_NON_ADMIN_SET_CONVERSION_RATE_CLASS`` : a non-admin user has tried to create an account with a conversion rate class. Since **v9**
* ``TALER_EC_BANK_NON_ADMIN_SET_TAN_CHANNEL`` : a non-admin user has tried to create an account with 2fa.
- * ``TALER_EC_BANK_TAN_CHANNEL_NOT_SUPPORTED``: ``tan_channel`` is not supported, check bank config to find supported ones.
- * ``TALER_EC_BANK_MISSING_TAN_INFO``: the user did not share any contact data where to send the TAN via ``tan_channel``.
+ * ``TALER_EC_BANK_TAN_CHANNEL_NOT_SUPPORTED``: ``tan_channel`` or one of ``tan_channels`` is not supported, check bank config to find supported ones.
+ * ``TALER_EC_BANK_MISSING_TAN_INFO``: the user did not share any contact data where to send the TAN via ``tan_channel`` or one of ``tan_channels``.
* ``TALER_EC_BANK_PASSWORD_TOO_SHORT``: password is shorter than 8 characters.
* ``TALER_EC_BANK_PASSWORD_TOO_LONG``: password is longer than 64 characters.
* ``TALER_EC_BANK_CONVERSION_RATE_CLASS_UNKNOWN`` : no conversion rate class found for this id. Since **v9**
@@ -454,10 +461,16 @@ Account Management
// @since **v9**
conversion_rate_class_id?: Integer | null;
+ // @deprecated in **v10**
// If present, enables 2FA and set the TAN channel used for challenges
// Sending null will disable 2FA
tan_channel?: TanChannel | null;
+ // If present and not empty, enables 2FA and set the TAN channels used for challenges
+ // Sending null or an empty array will disable 2FA
+ // @since **v10**
+ tan_channels?: TanChannel[] | null;
+
// @deprecated in **v9**, user conversion rate classes instead
min_cashout?: Amount;
}
@@ -479,8 +492,8 @@ Account Management
* ``TALER_EC_BANK_NON_ADMIN_PATCH_CASHOUT`` : a non-admin user has tried to change their cashout account.
* ``TALER_EC_BANK_NON_ADMIN_PATCH_DEBT_LIMIT`` : a non-admin user has tried to change their debt limit.
* ``TALER_EC_BANK_NON_ADMIN_SET_CONVERSION_RATE_CLASS`` : a non-admin user has tried to create an account with a conversion rate class. Since **v9**
- * ``TALER_EC_BANK_TAN_CHANNEL_NOT_SUPPORTED`` : ``tan_channel`` is not supported, check bank config to find supported ones.
- * ``TALER_EC_BANK_MISSING_TAN_INFO`` : the user did not share any contact data where to send the TAN via ``tan_channel``.
+ * ``TALER_EC_BANK_TAN_CHANNEL_NOT_SUPPORTED`` : ``tan_channel`` or one of ``tan_channels`` is not supported, check bank config to find supported ones.
+ * ``TALER_EC_BANK_MISSING_TAN_INFO`` : the user did not share any contact data where to send the TAN via ``tan_channel`` or one of ``tan_channels``.
* ``TALER_EC_BANK_CONVERSION_RATE_CLASS_UNKNOWN`` : no conversion rate class found for this id. Since **v9**
@@ -785,9 +798,14 @@ Account Management
// @deprecated since **v7**
is_locked?: boolean;
+ // @deprecated in **v10**
// Is 2FA enabled and what channel is used for challenges?
tan_channel?: TanChannel;
+ // Is 2FA enabled and what channels are used for challenges?
+ // @since **v10**
+ tan_channels?: TanChannel[];
+
// Current status of the account
// active: the account can be used
// locked: the account can be used but cannot create new tokens
@@ -1199,7 +1217,7 @@ Cashouts
* ``TALER_EC_BANK_UNALLOWED_DEBIT``: the account does not have sufficient funds or the amount is too low or too high.
* ``TALER_EC_BANK_CONFIRM_INCOMPLETE``: the user did not share any cashout payto to uri where to wire funds.
:http:statuscode:`501 Not Implemented`:
- * ``TALER_EC_BANK_TAN_CHANNEL_NOT_SUPPORTED``: the chosen ``tan_channel`` is not currently supported.
+ * ``TALER_EC_BANK_TAN_CHANNEL_NOT_SUPPORTED``: the chosen ``tan_channel`` or one of ``tan_channels`` is not currently supported.
* This server does not support conversion, client should check config response.
**Details:**
@@ -1651,7 +1669,7 @@ Requesting challenges
:http:statuscode:`429 Too many requests`:
Too many challenges are active right now, you must wait or confirm current challenges.
:http:statuscode:`502 Bad Gateway`:
- * ``TALER_EC_BANK_TAN_CHANNEL_SCRIPT_FAILED``: TAN transmition via ``tan_channel`` failed.
+ * ``TALER_EC_BANK_TAN_CHANNEL_SCRIPT_FAILED``: TAN transmition failed.
Solving challenges
^^^^^^^^^^^^^^^^^^