summaryrefslogtreecommitdiff
path: root/taler-wallet.rst
diff options
context:
space:
mode:
Diffstat (limited to 'taler-wallet.rst')
-rw-r--r--taler-wallet.rst114
1 files changed, 111 insertions, 3 deletions
diff --git a/taler-wallet.rst b/taler-wallet.rst
index 04a77e7d..4a975340 100644
--- a/taler-wallet.rst
+++ b/taler-wallet.rst
@@ -1,8 +1,28 @@
-GNU Taler Wallet Manual
-#######################
+..
+ This file is part of GNU TALER.
+ Copyright (C) 2014-2024 Taler Systems SA
+
+ TALER is free software; you can redistribute it and/or modify it under the
+ terms of the GNU Affero General Public License as published by the Free Software
+ Foundation; either version 2.1, or (at your option) any later version.
+
+ TALER is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License along with
+ TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
+
+
+Wallet Manual
+#############
The GNU Taler wallet allows customers to withdraw and spend digital cash.
+.. contents:: Table of Contents
+ :depth: 1
+ :local:
+
WebExtension Wallet
===================
@@ -172,6 +192,53 @@ Manual withdrawing
--amount EUR:5
+P2P push payments
+-----------------
+
+The following code generates a P2P push transaction over 1 CHF
+with an expiration time of 30 days (assuming the wallet has a
+sufficient balance):
+
+.. code-block:: console
+
+ $ taler-wallet-cli p2p initiate-push-debit \
+ --purse-expiration="30 d" \
+ --summary="The summary" \
+ CHF:1
+
+The final URL can then be found in the transaction list:
+
+.. code-block:: console
+
+ $ taler-wallet-cli transactions
+
+Background wallet
+-----------------
+
+A wallet can be launched in the background:
+
+.. code-block:: console
+
+ $ taler-wallet-cli advanced serve &
+
+You can then run various Taler operations faster against
+this one persistent instance:
+
+.. code-block:: console
+
+ $ taler-wallet-cli --wallet-connection=wallet-core.sock ...
+
+Here ``...`` needs to be changed to the commando to run.
+Make sure to run
+
+.. code-block:: console
+
+ $ taler-wallet-cli --wallet-connection=wallet-core.sock \
+ run-until-done
+
+to wait for pending transactions to complete.
+
+
Testing an exchange deployment
------------------------------
@@ -207,6 +274,48 @@ is functional:
# The "deposit group id" can be found in the output of the transactions list.
$ taler-wallet-cli deposit track $DEPOSIT_GROUP_ID
+.. _withdraw-simulation:
+
+
+Paying for an order
+===================
+
+.. note::
+
+ This section is in dire need for some editing...
+
+This section explains how to pay for an order in a scenario where the fiat bank
+is simulated. The simulation takes place by crafting ad-hoc XML files as if the
+bank would have issued them. Such XML files carry information about incoming payments
+to the regional currency master bank account. Finally, the XML files are passed
+to LibEuFin nexus via a convenient CLI method. The responsible script for such
+simulation is ``withdraw.sh``.
+
+Run ``./withdraw.sh`` without any arguments. Assuming that you ran the command
+as the ``test-user``, after the execution, 5 units of the regional currency should
+be found in the CLI wallet owned by ``test-user``.
+
+
+Check it with:
+
+.. code-block:: console
+
+ $ taler-wallet-cli balance
+
+If so, call the wallet in the following way to finally pay for the order just created:
+
+.. code-block:: console
+
+ $ taler-wallet-cli handle-uri "$TALER_PAY_URI"
+
+.. note::
+
+ Reset the state before going to production, as it impacts the way nexus
+ asks records to the bank. In particular, delete: any database and the
+ files ``config/user.conf`` and ``config/internal.conf``, and finally run
+ ``./main.sh`` again.
+
+
@@ -389,7 +498,6 @@ Things we still need tests for:
Or when the merchant is not reachable? Or the bank?
This can be tested by temporarily killing those services.
* How does the wallet deal with processing the same ``taler://(pay|withdraw)`` URI twice?
-* Test rewards (accepting/refusing a reward)
* Test refunds
* Test for :ref:`session-based payments <repurchase>`
* Test case for auto-refunds