taler-docs

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

commit 788605d9ea06247706e77fa639c6c9f1cc64737c
parent ea14230157cae2e06ce831a72c2f67d3b924b4e0
Author: Vlada Svirsh <svirv1@bfh.ch>
Date:   Tue, 21 Apr 2026 19:13:09 +0200

checkout page draft

Diffstat:
Mdesign-documents/090-branding.rst | 2+-
Adesign-documents/093-checkout-page.rst | 97+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mdesign-documents/index.rst | 1+
3 files changed, 99 insertions(+), 1 deletion(-)

diff --git a/design-documents/090-branding.rst b/design-documents/090-branding.rst @@ -115,7 +115,7 @@ Additional color definitions Detailed color values and any future extensions of the palette are available here: :doc:`Color scheme <066-wallet-color-scheme>`. - +..payment-qr Payment QR code design ~~~~~~~~~~~~~~~~~~~~~~ diff --git a/design-documents/093-checkout-page.rst b/design-documents/093-checkout-page.rst @@ -0,0 +1,96 @@ +DD 93: Checkout Page +#################### + +Summary +======= + + +Motivation +========== +The checkout page may be reached from different places, such as a merchant portal or another service integrating +Taler. To avoid inconsistent user experiences, Taler should provide a unified checkout design that looks and +behaves the same across all integrations. +A consistent checkout page helps users immediately recognize a Taler payment flow, builds trust, and makes +payment faster and easier to understand. It also ensures shared handling of states such as payment, claim, +and completion across all use cases. + + +Proposed Solution +================= +The checkout page should follow one common layout across desktop and mobile, while adapting the content +depending on the payment state and available purchase benefits. + +PenPot design files for the checkout page are available `here <https://penpot.taler.net/#/workspace?team-id=826af720-982c-8096-8006-0dbdd6a758c1&file-id=29e68e1b-4b36-81a2-8007-31db7e7bbdd2&page-id=29e68e1b-4b36-81a2-8007-31db7e7bbdd3>`_. + +Default payment +--------------- + +.. image:: images/checkout-page-1.png + :alt: Default checkout page design + +The default state shows the core payment information in a clear two-column layout on desktop and a stacked +layout on mobile. + +At the top of the page, the user sees the Taler heading and a short instruction to scan the QR code with a +mobile wallet. The main content area contains: + +* the `QR code <https://docs.taler.net/design-documents/090-branding.html#payment-qr-code-design>`_ +* the main order metadata next to it +* the primary action button to open the Taler wallet +* a secondary link for users who do not yet have a wallet +* a footer with a link to the GNU Taler website and copyright information + +The order metadata must always show the order id, summary, amount, and merchant name. + +Order with discounts or subscriptions +------------------------------------- +.. image:: images/checkout-page-2.png + :alt: Checkout page design with discounts and subscriptions + +If the purchase includes discounts, subscription, these should be +displayed as additional cards in the order details area next to the main payment information. + +Each card should present a benefit in a compact and scannable way. The card may include: + +* a price condition +* coupons or subscriptions to spend/use +* the reward granted by the purchase +* quantity indicators for repeated or accumulated benefits + +These benefit cards must not replace the core payment information. They are supplementary elements and should +remain visually secondary to the QR code, order metadata, and wallet action. On smaller screens, the cards +should stack vertically below the main payment section. + +Claimed state / waiting for payment +----------------------------------- + +.. image:: images/checkout-page-3.png + :alt: Checkout page design after order claim + +Once the wallet has claimed the order, the QR code should no longer be shown. Instead, the QR code area is +replaced by a status panel indicating that the order has been claimed and that the system is waiting for +payment confirmation. + +This state should keep the same overall page structure and continue showing the order metadata and main wallet +action. Replacing the QR code after claim helps avoid confusion, prevents rescanning of an already claimed +order, and makes the current payment state immediately visible. + +Mobile layout +------------- +.. image:: images/checkout-page-4.png + :alt: Mobile layout of the checkout page + :width: 50% + +On mobile devices, the same elements must be preserved but arranged in a single-column flow. The order of +elements should be: + +* page heading and instruction +* QR code or claimed-state status panel +* wallet action button +* wallet installation link +* order metadata +* discount or subscription cards if available +* footer + +The QR code container, action button, and order details should use full available width with appropriate +spacing for touch interaction and readability. +\ No newline at end of file diff --git a/design-documents/index.rst b/design-documents/index.rst @@ -104,4 +104,5 @@ Design documents that start with "XX" are considered deprecated. 090-branding 091-wallet-coin-selection 092-incremental-backup-sync + 093-checkout-page 999-template