Closed adrianhopebailie closed 3 years ago
Hi @adrianhopebailie,
You wrote above "No fingerprinting by RP without explicit RP UI shown to user." You refer to e.openWindow only in the final step of "Flow without instrument selection." I assume that means that other risk assessment would happen without the user having to see a window. So what is the explicit RP UI shown to the user? Thanks!
Thanks for the writeup @adrianhopebailie.
The PReq returns a ThreeDSMethodURL. That should however be run as an hidden iFrame and it to a different domain than that of the user:
I'm going to close this for now since we have reached FPWD.
What follows is an alternative flow and API design for SPC that enables a zero-friction flow where the payment network supports this.
Thanks to Gerhard for the idea of using the PReq in this way.
Advantages:
Flow without instrument selection
e.g 3DS 2 with legacy card entry form
e.openWindow
to render the fallback step-up authentication UI (e.g. SMS-based OTP or similar)Flow with instrument selection
e.g. 3DS 2 with browser-rendered instrument selection or Google Pay
e.openWindow
to render the fallback step-up authentication UI (e.g. SMS-based OTP or similar)Assumptions:
Example using existing 3DS 2 back-end flows
https://bankofamerica.com/web-payments/visa-platinum
If the issuers Payment Handler is already installed then it is invoked via the
PaymentRequestEvent
otherwise the JIT install steps are followed first:And the server would then respond:
The browser will install the Payment Handler that is defined by the app manifest at
https://bankofamerica.com/web-payments/webappmanifest.json
If the JIT install fails the PR API will return an error and the merchant falls back to legacy 3DS