diff options
authorChristian Grothoff <>2020-07-13 19:03:05 +0200
committerChristian Grothoff <>2020-07-13 19:03:05 +0200
commitb89e433f4f48f5be8d35d7a7eaf45d5ac45169fd (patch)
parent5e5a15b01b136b347d15bf7517ad2745a4e1b465 (diff)
add more detail to coin state machine
-rw-r--r--doc/system/taler/coin.pdfbin17066 -> 17151 bytes
3 files changed, 7 insertions, 4 deletions
diff --git a/doc/system/taler/ b/doc/system/taler/
index ab1f8139..3112a1b6 100644
--- a/doc/system/taler/
+++ b/doc/system/taler/
@@ -6,7 +6,8 @@ digraph Coin {
partial [color=blue, label="dirty coin", shape="box"];
revoked [color=blue, label="revoked coin", shape="box"];
zombie [color=blue, label="zombie coin", shape="box"];
- spent [color=blue, label="spent coin", shape="doublecircle"];
+ spent [color=blue, label="spent coin", shape="box"];
+ wired [color=blue, label="wired coin", shape="doublecircle"];
expired [color=blue, label="expired coin", shape="doublecircle"];
subgraph {
@@ -36,6 +37,7 @@ digraph Coin {
+ spent->wired [style=dotted];
partial->expired [style=dotted];
partial->deposit [color=red];
diff --git a/doc/system/taler/coin.pdf b/doc/system/taler/coin.pdf
index a5590b75..dcd47292 100644
--- a/doc/system/taler/coin.pdf
+++ b/doc/system/taler/coin.pdf
Binary files differ
diff --git a/doc/system/taler/design.tex b/doc/system/taler/design.tex
index d78acac1..535dc51a 100644
--- a/doc/system/taler/design.tex
+++ b/doc/system/taler/design.tex
@@ -727,8 +727,9 @@ the {\em withdraw} protocol or the refresh protocol. The most common scenario
is that the {\em fresh coin} is {\em deposited}. This payment creates a
deposit (see Figure~\ref{fig:deposit:states}) and either a {\em dirty coin}
(if the payment was for a fraction of the coin's value) or a {\em spent coin}.
-A spent coin can be {\em refunded} by the merchant (until the deposit is due),
-creating a {\em dirty coin}.
+A spent coin can be {\em refunded} by the merchant, creating a {\em dirty
+ coin}. Once the exchange has aggregated a coin and wired the amount to the
+merchant, a coin can no longer be refunded.
A {\em fresh coin} may also be subject to key {\em revocation}, at which point
the wallet ends up with a {\em revoked coin}. At this point, the wallet can
@@ -754,7 +755,7 @@ when the committment made for the {\em refresh session} is checked during the
- \includegraphics[scale=0.75]{taler/coin.pdf}
+ \includegraphics[scale=0.65]{taler/coin.pdf}
\caption{State machine of a coin.}