Skip to content

Commit

Permalink
Added pml files (raw uml text)
Browse files Browse the repository at this point in the history
  • Loading branch information
mattsaxon committed Oct 30, 2015
1 parent 6ac3274 commit f34b684
Show file tree
Hide file tree
Showing 12 changed files with 247 additions and 0 deletions.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
@startuml
Autonumber

Participant "Payee (Merchant) PSP" as MPSP
Participant "Payee (Merchant) Site" as Payee
Actor "Payer (Shopper) Browser" as Payer
Participant "Browser Payment Agent/Wallet" as UA
Participant "Payer (Shopper) PSP Wallet [aka Issuer Wallet]" as CPSP

note over Payee, Payer: HTTPS

title Legacy Merchant Hosted Card Payment (CG Proposal)

Payee->Payer: Basket Page with Pay Button


Payer->UA: Select Payment Instrument

UA-\MPSP: Auth
Note right
Auth goes direct from Browser to Payee's nominated PSP (see
https://web-payments.org/specs/source/web-payments-api/#payment-flow-overview
6.1)
End note

MPSP-/UA: Auth Response

UA->Payee: Auth Response
Payee->Payer: Result Page

@enduml
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
@startuml
Autonumber

Participant "Payee (Merchant) PSP" as MPSP
Participant "Payee (Merchant) Site" as Payee
Actor "Payer (Shopper) Browser" as Payer
participant "Browser Form Filler" as UA
participant "Payer (Shopper) PSP Wallet [aka Issuer Wallet]" as CPSP

note over Payee, Payer: HTTPS

title Legacy Merchant Hosted Card Payment (Current)

Payee->Payer: Basket Page with Pay Button
Payer->Payer: Select Card Brand
opt
UA->Payer: Form Fill; PAN, Expiry Date, [CVV], [AVS]
End

Alt
Payer->Payee: payload
Else
Payer->Payee: Encrypt(payload)
Note right: Custom code on merchant webpage can encrypt payload
End

Payee-\MPSP: Authenticate(payload)
MPSP-/Payee: Authentication Result

Payee->Payer: Result Page

@enduml
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
@startuml
autonumber
Participant "Payee (Merchant) PSP" as MPSP
Participant "Payee (Merchant) Site" as Payee
Actor "Payer (Shopper) Browser" as Payer
participant "Browser Payment Agent/Wallet" as UA
participant "Payer (Shopper) PSP Wallet [aka Issuer Wallet]" as CPSP
participant "Issuer Website" as CPSPW


note over Payee, Payer: HTTPS

title Legacy Merchant Hosted Card Payment (Google Proposal)

Payee->Payer: Basket Page with Pay Button

Payer->UA: Select Payment Instrument

Opt
CPSP->UA: Payment Instrument data
Note left
If 3rd Party provides extension,
e.g. LastPass, MasterPass, Barclaycard
End note
End

UA->Payer: Payment Instrument data

Alt
Payer->Payee: Payment Instrument Data
Else
Payer->Payee: Encrypt(Payment Instrument Data)
Note right: Custom code on merchant webpage can encrypt payload
End

Payee-\MPSP: Authenticate(Payment Instrument data)
MPSP-/Payee: Authentication Result

Payee->Payer: Result Page

@enduml
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
@startuml
Autonumber

Participant "Payee (Merchant) PSP" as MPSP
Participant "Payee (Merchant) Site" as Payee
Actor "Payer (Shopper) Browser" as Payer
Participant "Browser Payment Agent" as UA
Participant "Payer (Shopper) PSP Wallet [aka Issuer Wallet]" as CPSP
Participant "Issuer Website" as CPSPW

note over Payee, Payer: HTTPS

title Legacy Merchant Hosted Card Payment (CG Proposal)

Payee->Payer: Basket Page with Pay Button


Payer->UA: Select Payment Instrument

UA-\MPSP: Auth
Note right
Auth goes direct from Browser to Payee's nominated PSP (see
https://web-payments.org/specs/source/web-payments-api/#payment-flow-overview
6.1)
End note

Opt
MPSP-/Payee: 3DS invoke
Payee->CPSPW: 3DS invoke
CPSPW-\Payer: 3DS challenge
Payer-/CPSPW: 3DS response
CPSPW->Payee: 3DS response
Payee-\MPSP: Authentication(3DS token)
End


MPSP-/UA: Auth Response

UA->Payee: Auth Response
Payee->Payer: Result Page

@enduml
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
@startuml
Autonumber

Participant "Payee (Merchant) PSP" as MPSP
Participant "Payee (Merchant) Site" as Payee
Actor "Payer (Shopper) Browser" as Payer
participant "Browser Form Filler" as UA
participant "Payer (Shopper) PSP Wallet [aka Issuer Wallet]" as CPSP
participant "Issuer Website" as CPSPW

note over Payee, Payer: HTTPS

title Legacy Merchant Hosted Card Payment with 3DS (Current)

Payee->Payer: Basket Page with Pay Button
Payer->Payer: Select Card Brand
opt
UA->Payer: Form Fill; PAN, Expiry Date, [CVV], [AVS]
End

Alt
Payer->Payee: payload
Else
Payer->Payee: Encrypt(payload)
Note right: Custom code on merchant webpage can encrypt payload
End

Payee-\MPSP: Authenticate(payload)

Opt
MPSP-/Payee: 3DS redirect
Payee->Payer: 3DS redirect
Payer->CPSPW: 3DS invoke
CPSPW-\Payer: 3DS challenge
Payer-/CPSPW: 3DS response
CPSPW->Payer: 3DS response
Payer->Payee: 3DS response
Payee-\MPSP: Authentication(3DS token)
End

MPSP-/Payee: Authenication Response


Payee->Payer: Result Page

@enduml
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
@startuml
autonumber
Participant "Payee (Merchant) PSP" as MPSP
Participant "Payee (Merchant) Site" as Payee
Actor "Payer (Shopper) Browser" as Payer
participant "Browser Payment Agent/Wallet" as UA
participant "Payer (Shopper) PSP Wallet [aka Issuer Wallet]" as CPSP
participant "Issuer Website" as CPSPW


note over Payee, Payer: HTTPS

title Legacy Merchant Hosted Card Payment with 3DS (Google Proposal)

Payee->Payer: Basket Page with Pay Button


Payer->UA: Select Payment Instrument

Opt
CPSP->UA: Payment Instrument data
Note left
If 3rd Party provides extension,
e.g. LastPass, MasterPass, Barclaycard
End note
End

UA->Payer: Payment Instrument data

Alt
Payer->Payee: Payment Instrument Data
Else
Payer->Payee: Encrypt(Payment Instrument Data)
Note right: Custom code on merchant webpage can encrypt payload
End

Payee-\MPSP: Authenticate(Payment Instrument data)

Opt
MPSP-/Payee: 3DS redirect
Payee->Payer: 3DS redirect
Payer->CPSPW: 3DS invoke
CPSPW-\Payer: 3DS challenge
Payer-/CPSPW: 3DS response
CPSPW->Payer: 3DS response
Payer->Payee: 3DS response
Payee-\MPSP: Authentication(3DS token)
End


MPSP-/Payee: Authentication Result

Payee->Payer: Result Page

@enduml

0 comments on commit f34b684

Please sign in to comment.