aboutsummaryrefslogtreecommitdiff
path: root/contrib/articles/ui/figs/taler-pay.pml
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/articles/ui/figs/taler-pay.pml')
-rw-r--r--contrib/articles/ui/figs/taler-pay.pml47
1 files changed, 47 insertions, 0 deletions
diff --git a/contrib/articles/ui/figs/taler-pay.pml b/contrib/articles/ui/figs/taler-pay.pml
new file mode 100644
index 000000000..93b21f856
--- /dev/null
+++ b/contrib/articles/ui/figs/taler-pay.pml
@@ -0,0 +1,47 @@
+@startuml
+autonumber
+
+Actor "Payer (Shopper) Browser" as Payer
+Participant "Payee (Merchant) Site" as Payee
+Participant "Taler Exchange" as Exchange
+
+note over Payer, Payee: Tor/HTTPS
+note over Payee, Exchange: HTTP/HTTPS
+
+title Taler (Payment)
+
+== Request Offer ==
+
+Payer->Payee: Choose goods by navigating to offer URL
+
+Payee->Payer: Send signed digital contract proposal
+
+opt
+Payer->Payer: Select Taler payment method (skippable with auto-detection)
+end
+
+== Execute Payment ==
+
+opt
+Payer->Payer: Affirm contract
+end
+
+Payer->Payee: Navigate to fulfillment URL
+
+Payee->Payer: Send hash of digital contract and payment information
+
+Payer->Payee: Send payment
+
+Payee->Exchange: Forward payment
+
+Exchange->Payee: Confirm payment
+
+Payee->Payer: Confirm payment
+
+== Fulfilment ==
+
+Payer->Payee: Reload fulfillment URL for delivery
+
+Payee->Payer: Provide product resource
+
+@enduml