From 3d250ac0c1857dbe4fb64d9b46d572430d5b6450 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Thu, 29 Apr 2021 08:20:08 +0200 Subject: integrate flow graphics into DD13 --- design-documents/000-template.rst | 25 ------ design-documents/013-peer-to-peer-payments.rst | 104 +++++++++++++++++++++++++ design-documents/999-template.rst | 25 ++++++ design-documents/index.rst | 2 +- 4 files changed, 130 insertions(+), 26 deletions(-) delete mode 100644 design-documents/000-template.rst create mode 100644 design-documents/999-template.rst (limited to 'design-documents') diff --git a/design-documents/000-template.rst b/design-documents/000-template.rst deleted file mode 100644 index f620248d..00000000 --- a/design-documents/000-template.rst +++ /dev/null @@ -1,25 +0,0 @@ -Template -######## - -Summary -======= - -Motivation -========== - -Requirements -============ - -Proposed Solution -================= - -Alternatives -============ - -Drawbacks -========= - -Discussion / Q&A -================ - -(This should be filled in with results from discussions on mailing lists / personal communication.) diff --git a/design-documents/013-peer-to-peer-payments.rst b/design-documents/013-peer-to-peer-payments.rst index 9666a85b..914d87fe 100644 --- a/design-documents/013-peer-to-peer-payments.rst +++ b/design-documents/013-peer-to-peer-payments.rst @@ -18,6 +18,110 @@ needing to setup anything beyond their wallet(s). This will be used for payments via e-mail and other messaging apps, as well as possibly for transfers via NFC/QR code between mobile phones. +Invoice Flow User Experience +---------------------------------- + +.. graphviz:: + + digraph invoice { + settings [ + label = "Invoice flow"; + ]; + ranksep="0.5" + { rank = same; "inbox"; "begin"; } + { rank = same; "sending"; "receiving2"; } + { rank = same; "receiving"; "paying"; } + { rank = same; "mid"; "midbox"; } + { rank = same; "body"; "amount"; } + begin [label="Seller Inbox",shape=box]; + body [label="compose\nE-mail message"]; + amount [label="specify\ninvoice details"]; + receiving [label="receiving...",shape=diamond]; + sending [label="transmitting...",shape=diamond]; + mid [label="Seller Inbox",shape=box]; + notified [label="Notification:\npayment received"]; + end [label="Seller Inbox",shape=box]; + begin -> body [label="(1) new"]; + body -> amount [label="(2) attach invoice"]; + amount -> body [label="(3) Ok"]; + body -> sending [label="(4) send"]; + sending -> mid [style=dashed]; + mid -> receiving [style=dashed]; + receiving -> notified [style=dashed]; + notified -> end [label="(9) Acknowledge"]; + inbox [label="Buyer Inbox",shape=box]; + receiving2 [label="receiving...",shape=diamond]; + midbox [label="Buyer Inbox",shape=box]; + open [label="message with\nattached invoice"]; + confirm [label="review invoice"]; + paying [label="paying...", shape=diamond]; + paid [label="message with\npaid invoice"]; + finbox [label="Buyer Inbox",shape=box]; + inbox -> receiving2 [style=dashed]; + receiving2 -> sending [label="Internet\n(pEp)",style=dashed,dir=back]; + receiving2 -> midbox [style=dashed]; + midbox -> open [label="(5) select message"]; + open -> confirm [label="(6) view invoice"]; + confirm -> paying [label="(7) pay"]; + paying -> paid [style=dashed]; + paid -> finbox [label="(8) back"]; + paying -> receiving [style=dashed, label="Internet\n(Taler)"]; + } + +Donation Flow User Experience +------------------------------------- + +.. graphviz:: + + digraph donation { + ranksep="0.5" + settings [ + label = "Donation flow"; + ]; + { rank = same; "inbox"; "begin"; } + { rank = same; "sending"; "receiving2"; } + { rank = same; "body"; "amount"; } + { rank = same; "mid"; "midbox"; } + { rank = same; "accepting"; "timeout"; "receiving"; } + begin [label="Donor Inbox",shape=box]; + body [label="compose\nE-mail message"]; + amount [label="specify\npayment details"]; + receiving [label="receiving...",shape=diamond]; + timeout [label="timeout...",shape=diamond]; + sending [label="transmitting...",shape=diamond]; + mid [label="Donor Inbox",shape=box]; + notified [label="Notification:\npayment confirmed"]; + notified2 [label="Notification:\npayment refunded"]; + end [label="Donor Inbox",shape=box]; + begin -> body [label="(1) new"]; + body -> amount [label="(2) attach payment"]; + amount -> body [label="(3) Ok"]; + body -> sending [label="(4) send"]; + sending -> mid [style=dashed]; + mid -> receiving [style=dashed]; + receiving -> notified [style=dashed]; + mid -> timeout [style=dashed]; + timeout -> notified2 [style=dashed]; + notified -> end [label="(9a) Acknowledge"]; + notified2 -> end [label="(9b) Acknowledge"]; + inbox [label="Recipient Inbox",shape=box]; + receiving2 [label="receiving...",shape=diamond]; + midbox [label="Recipient Inbox",shape=box]; + open [label="message with\nattached payment"]; + confirm [label="accept payment?"]; + accepting [label="accepting...", shape=diamond]; + paid [label="message with\naccepted payment"]; + finbox [label="Recipient Inbox",shape=box]; + inbox -> receiving2 [style=dashed]; + receiving2 -> sending [label="Internet\n(pEp)",style=dashed,dir=back]; + receiving2 -> midbox [style=dashed]; + midbox -> open [label="(5) select message"]; + open -> confirm [label="(6) review payment details"]; + confirm -> accepting [label="(7) yes"]; + accepting -> paid [style=dashed]; + paid -> finbox [label="(8) back"]; + accepting -> receiving [style=dashed, label="Internet\n(Taler)"]; + } Requirements ============ diff --git a/design-documents/999-template.rst b/design-documents/999-template.rst new file mode 100644 index 00000000..f620248d --- /dev/null +++ b/design-documents/999-template.rst @@ -0,0 +1,25 @@ +Template +######## + +Summary +======= + +Motivation +========== + +Requirements +============ + +Proposed Solution +================= + +Alternatives +============ + +Drawbacks +========= + +Discussion / Q&A +================ + +(This should be filled in with results from discussions on mailing lists / personal communication.) diff --git a/design-documents/index.rst b/design-documents/index.rst index b039ccdc..d0ccef22 100644 --- a/design-documents/index.rst +++ b/design-documents/index.rst @@ -9,7 +9,6 @@ and protocol. .. toctree:: :glob: - 000-template 001-new-browser-integration 002-wallet-exchange-management 003-tos-rendering @@ -29,3 +28,4 @@ and protocol. 017-backoffice-inventory-management 018-contract-json 019-wallet-backup-merge + 999-template -- cgit v1.2.3