commit f2a31ef406c9e78552528b71488a5d902e7b8eee
parent 0c76482eb547ed3fb5bb7443833a4c48ca221597
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date: Tue, 7 Oct 2025 11:21:46 +0200
dd taldir alias registration
Diffstat:
2 files changed, 64 insertions(+), 1 deletion(-)
diff --git a/core/api-taldir.rst b/core/api-taldir.rst
@@ -30,7 +30,7 @@ address in a messaging service. Examples for messaging services include E-mail
and SMS.
The service in principle allows registration of any valid URI as inbox
service.
-For Taler, the URI is a link a :ref:`mailbox <api-mailbox>`.
+For Taler, the URI is a link to a :ref:`mailbox <api-mailbox>`.
The API specified here follows the :ref:`general conventions <http-common>`
for all details not specified in the individual requests.
diff --git a/design-documents/070-alias-directory-mailbox.rst b/design-documents/070-alias-directory-mailbox.rst
@@ -71,6 +71,69 @@ The service must be suitable to be operated at very high availability constraint
As such, the service must be scalable and ideally have a small footprint and
computing base.
+User Stories
+============
+
+
+US-1: Alias registration
+------------------------
+
+Prerequisites: Alice has installed Taler Wallet
+
+In the Taler Wallet, Alice is provided with an option
+to register one or more Aliases with her Wallet Address.
+This requires a Wallet interface element that is probably found somewhere in
+the settings or hidden in a menu.
+More specifically, Alice will be able to register an Alias with
+the Mailbox URI that corresponds to his Wallet ID (See also :ref:`Mailbox API <api-mailbox>`).
+The interface does not require Alice to input the URI manually, the
+Wallet can synthesize the Mailbox URI.
+Both the Mailbox server URI and the Taldir server URI have hard-coded defaults
+that can be overriden in expert settings.
+The interface offers registration of Aliases supported by the Taldir instance.
+Alice chooses an Alias and is then prompted to provide her handle, e.g. `alice@example.com`.
+This initiates the Alias validation procedure (See also :ref:`Taldir API <api-taldir>`).
+The registration procedure may succeed or fail.
+Alice may retry on failure to register the same Alias.
+Alice may also register other Aliases.
+
+US-2: Send Payment Request
+--------------------------
+
+Prerequisites: Bob has installed Taler Wallet
+
+Bob wants to request money from Alice.
+He opens his Taler wallet and opens the `Send to Friend` screen from the menu.
+The screen consists of a search input and an Alias type selector.
+Bob selects the Alias type (e.g. GitHub or Email) and inputs Alice's Alias.
+If not found, Bob canno use this feature.
+If found, Bob will be able to proceed to create a payment request.
+A screen that allows to create a payment request is shown to Bob.
+Once Bob has input all necessary details, the payment request is sent to
+Alice's Mailbox URI.
+This request may fail if Alice's Mailbox is full (See also :ref:`Mailbox API <api-mailbox>`).
+
+
+Note: It makes sense to use something like HPKE to encrypt the payment request
+to Alice's Wallet Public Key.
+
+US-3: Receive Payment Request
+-----------------------------
+
+Prerequisites: Alice has installed Taler Wallet, Alice has registered an Alias.
+
+Alice's Wallet periodically checks her Mailbox (:ref:`Mailbox API <api-mailbox>`)
+for new payment requests.
+If a new payment request is found the Wallet should notify Alice.
+The wallet provides a screen with payment request overviews (list of messages
+in the mailbox).
+Alice selects Bob's payment request either through the notification or from the list
+of payment requests.
+Alice creates a P2P payment based on the metadata in the payment request.
+Upon completion of the payment, the request is deleted from the Mailbox.
+She may also decline to pay and delete the payment request.
+
+
Proposed Solution
=================