summaryrefslogtreecommitdiff
path: root/diagrams/taler-pay.pml
blob: 54c61e57831f91772a16d94b4f0783df1b2bc67c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
@startuml
' This is a PlantUML diagram, see https://plantuml.com/

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)

== Order Creation/Claiming ==

Payer->Payee: Choose product(s) to buy on merchant's Website

Payee->Payee: Create order

Payee->Payer: Send taler://pay URI that identifies order

Payer->Payee: Claim order ownership with nonce

Payer->Payer: Display contract terms

== Payment Execution ==

Payer->Payer: Confirm payment

Payer->Payee: Send payment

Payee->Exchange: Forward payment

Exchange->Payee: Confirm payment

Payee->Payer: Confirm payment

== Fulfilment ==

Payer->Payee: Navigate to fulfillment URL

Payee->Payer: Provide product resource
@enduml