taler-docs

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

commit 56d5d0d8b3315cbb8c5c6ed51fb3715211367fbc
parent bfa912b3c689533692d8c217115f561bef147cc3
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sun, 16 Nov 2025 15:00:18 +0100

revise DD74

Diffstat:
Mdesign-documents/074-merchant-backend-simplification.rst | 174+++++++++++++++++++++++++++++++++++++++----------------------------------------
1 file changed, 86 insertions(+), 88 deletions(-)

diff --git a/design-documents/074-merchant-backend-simplification.rst b/design-documents/074-merchant-backend-simplification.rst @@ -76,109 +76,102 @@ Personas Persona Definitions ^^^^^^^^^^^^^^^^^^^ -* Developer +* ``Developer`` * Every feature flag on, developer mode on -* Unattended simple in-person offline vending (minimal farm shop) +* ``Unattended in-person offline vending`` (minimal farm shop) showing: - * Only show: + * ``Orders``, but exclude ``+``-button for creating new orders manually, + that's already a power-user feature. - * Orders + * ``Templates``, but exclude OTP devices, only useful for power-users. - * But exclude "+" button for creating new orders manually, - that's already a power-user feature. + * ``KYC status`` (but only if action required) - * Templates + * ``Bank accounts``, including KYC status - * But exclude OTP devices, again, HW doesn't exist yet, + * ``Settings`` + + * ``Logout`` + + +* ``Unattended in-person offline vending with inventory``, + (this choice should only be enabled once we have the next + version of templates with inventory!) showing: + + * Orders, but exclude ``+`` button for creating new orders manually, + that's already a power-user feature. + + * ``Inventory`` (once supported by templates!) + + * ``Categories`` (once supported by templates!) + + * ``Templates``, but exclude OTP devices, again, HW doesn't exist yet, and only useful for power-users. - * KYC status (if action required) - * Bank accounts - * Settings - * Password - * Logout + * ``KYC status`` (if action required) + * ``Bank accounts`` + * ``Settings`` -* Unattended in-person offline vending with inventory (to be added later!): + * ``Logout`` - * Only show: +* ``In-person online point-of-sale with inventory`` showing: - * Orders + * ``Orders``, but exclude ``+``-button for creating new orders manually, + that's already a power-user feature. - * But exclude "+" button for creating new orders manually, - that's already a power-user feature. + * ``Inventory`` - * Inventory + Categories (once supported by templates!) + * ``Categories`` - * Templates + * ``Access tokens`` - * But exclude OTP devices, again, HW doesn't exist yet, - and only useful for power-users. + * ``KYC status`` (if action required) - * KYC status (if action required) - * Bank accounts - * Settings - * Password - * Logout + * ``Bank accounts`` -* Attended in-person online point-of-sale with inventory (Taler PoS-App) + * ``Settings`` - * Only show: + * ``Logout`` - * Orders +* ``Digital publishing`` showing: - * But exclude "+" button for creating new orders manually, - that's already a power-user feature. + * ``Orders``, but exclude ``+``- button for creating new orders manually, + that's already a power-user feature. - * Inventory + Categories - * Access tokens + * ``Subscriptions and Discounts`` (only after v1.6) - * KYC status (if action required) - * Bank accounts - * Settings - * Password - * Logout + * ``Access tokens`` -* Digital publishing (Turnstile, etc.): + * ``KYC status`` (if action required) - * Only show: + * ``Bank accounts`` - * Orders + * ``Settings`` - * But exclude "+" button for creating new orders manually, - that's already a power-user feature. + * ``Logout`` - * Subscriptions and discount tokens (after v1.6) +* ``E-commerce site`` showing: - * Access tokens - * KYC status (if action required) - * Bank accounts - * Settings - * Password - * Logout + * ``Orders``, but exclude ``+``-button for creating new orders manually, + that's already a power-user feature. -* E-commerce site (DrupalCommerce, etc.): + * ``Subscriptions and Discounts`` (only after v1.6) - * Only show: + * ``Webhooks`` - * Orders + * ``Access tokens`` - * But exclude "+" button for creating new orders manually, - that's already a power-user feature. + * ``KYC status`` (if action required) - * Subscriptions and discount tokens (after v1.6) + * ``Bank accounts`` - * Webhooks - * Access tokens + * ``Settings`` - * KYC status (if action required) - * Bank accounts - * Settings - * Password - * Logout + * ``Logout`` Proposed Solution (Iteration 2) @@ -194,11 +187,12 @@ Proposed Solution (Iteration 2) Simplication of Bank Account Settings ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Currently we have three screens involving the bank account: "Bank account" -(under configuration), "KYC Status" and "Wire transfers". +Currently we have three screens involving the bank account: +``Bank accounts`` (under configuration), +``KYC Status`` and ``Wire transfers``. -Since all of the activities done on this screen are related to the bank account, -we can simplify it into one "Bank account" page. +Since all of the activities done on this screen are related to the bank +account, we can simplify it into one ``Bank accounts`` page. .. note:: @@ -215,22 +209,25 @@ The wire transfers can be shown by clicking on the details page of a bank accoun .. note:: This feature needs more testing, I think we should only show - it in "show everyting" and/or "developer" modes for now. + it in ``Developer`` mode for now! -The KYC status can also be shown there for every bank account. +The KYC status can also be shown in the table of the bank accounts. If KYC is required for a bank account, we can both highlight the bank account -*and* also add a "KYC required" highlighted menu item that directly goes to the -KYC status of the bank account that requires action. +*and* also add a ``KYC required`` highlighted menu item that directly goes to +the KYC status of a bank account that requires action. Simplication of OTP devices ^^^^^^^^^^^^^^^^^^^^^^^^^^^ -OTP devices are only used for templates. They are not used for logins etc., which might make it confusing to always show them. +``OTP devices`` are only used in combination with templates. They are not +used for logins etc., which might make it confusing to always show them. As a simplification, we could make the OTP devices *only* available via the -"Templates" screen. +``Templates`` screen. So the ``Templates`` screen would basically have two +tables (and ``+``-buttons), one for ``Templates`` and a second below +for ``OTP devices``. Settings Structure @@ -238,7 +235,7 @@ Settings Structure Currently we have: -* Settings: Contains five different types of settings: +* ``Settings``: Contains five different types of settings: * payment-technical settings: transaction fee, payment delay default * contact information shown to the user @@ -248,22 +245,28 @@ Currently we have: * Interface: Contains user interface settings. * Password: Change password -We also might want to separate the phone number and email shown to the user and -the one used for authentication. By default, they can be the same. +We should also separate the phone number and email shown to the user and +the one used for 2FA. Suggested restructuring: -* Settings +* ``Settings`` gets sub-menus: + + * ``Personalization`` (was: Interface, only UI settings, *maybe* link to other settings) - * User Interface (only UI settings, *maybe* link to other settings) - * Profile (Contact settings as seen by the wallet users via contract terms) + * ``Payment options`` (was: Settings, with Taler-specific options, like default payment, refund and wire delays and STEFAN option on payment fees - * We should add e-mail and phone number under the merchant "address" + * ``Public profile`` (Contact settings as seen by the wallet users via contract terms) + + * We should add e-mail and phone number under the merchant ``address`` in the contract terms (after all, they are contact addresses for the merchant). Many advantages, starting with no change required in the backend. - * Security (both password and 2FA-related fields) + * ``Security`` (both password and 2FA-related fields) + + * This will include the phone number and e-mail address used for 2FA + Definition of Done ================== @@ -285,9 +288,4 @@ Discussion / Q&A * Can the be changed while being logged in? - * Yes, under "Personalization", just like the language and date format. - -* Do we show access tokens under "Simple Shop"? - - * No, as we also don't show the inventory, - so it doesn't make sense to show access tokens. + * Yes, under ``Personalization``, just like the language and date format.