path: root/frags
diff options
authorThien-Thi Nguyen <>2021-02-23 11:05:13 -0500
committerThien-Thi Nguyen <>2021-02-23 11:05:13 -0500
commit6ac20bd752e7b2d9f84785ff3d725cdfe2a80b8b (patch)
treea9562218f31ea00b451e56506c1a8b4f1501ab57 /frags
parent2f61e1ebe0cc25ff6ef91b3881be93dc6701f347 (diff)
new file: frags/taler-payment-cycle.rst
Diffstat (limited to 'frags')
1 files changed, 37 insertions, 0 deletions
diff --git a/frags/taler-payment-cycle.rst b/frags/taler-payment-cycle.rst
new file mode 100644
index 0000000..00aa447
--- /dev/null
+++ b/frags/taler-payment-cycle.rst
@@ -0,0 +1,37 @@
+The Taler payment cycle involves six parties:
+(a) customer,
+(b) exchange,
+(c) merchant,
+(d) customer bank,
+(e) exchange bank,
+(f) merchant bank.
+The exchange is the central entity that mediates the wire transfer of real
+currency between (d), (e), (f) by way of "coins", cryptographically secure
+tokens passed between (a), (b), (c).
+There are six steps to a Taler payment cycle.
+In step 1, (a) directs (d) to make real funds available to (b).
+In step 2, (d) does a wire transfer of real funds to (e), fulfilling the
+request from step 1. (b) generates coins corresponding to those real funds;
+these are called the "reserve".
+In step 3, (a) "withdraws" coins, either wholly or partially, from (b). These
+coins are kept in a "wallet" under control of (a). The coins in the wallet
+are anonymous.
+In step 4, (a) authorizes payment of coins from the wallet to (c). This
+transfers payment coins from the wallet to (c), and change coins from (b) to
+the wallet (unless the payment amount exactly matches the denomination of the
+coins in the wallet).
+In step 5, (c) "deposits" coins into (b). These coins are still anonymous,
+although the transaction itself is not anonymous.
+In step 6, (b) directs (e) to wire transfer real funds corresponding to the
+accumulated deposited coins to (f).
+NB: The Taler payment cycle is part of the Taler payment system, which
+includes also an auditor component, not described here.