- From: Anders Rundgren <notifications@github.com>
- Date: Thu, 16 Dec 2021 23:36:15 -0800
- To: w3c/payment-request <payment-request@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <w3c/payment-request/issues/981/996500857@github.com>
Hi @dcrousso, As one of probably very few users of **PaymentRequest** (for Android only since iOS does not support custom payment applications), I came up with a similar need but different solution. The `retry()` method may be useful but in my case there is a pretty sophisticated wallet which only uses the `PaymentResponse` for navigation to a success page or back to a payment selection page. So this particular scheme rather needed a way to talk back to the merchant with the actual authorization while remaining in the wallet UI. The return from this call is either: - OK. The wallet can terminate. - A message from the Merchant like "We don't accept cards issued in XYZ, select another one card if possible". - A message from the Issuer like "Insufficient funds" or "Purchases exceeding $3000 needs additional confirmation, please type the number we just sent to your phone and reauthorize". This message must be handled inside of the wallet because it is _encrypted_ to provide private channel between the User and the Issuer. In the absence of a talk-back mechanism, the wallet uses a somewhat awkward OOB channel requiring the Merchant to include cookies in the **PaymentRequest** call. BTW, since payment instrument enrollment is not a part of **PaymentRequest**, an additional task was figuring out how to do that in a convenient and secure way. It turned out that (ab)using **PaymentRequest** was the best solution! https://cyberphone.github.io/doc/web/calling-apps-from-the-web.pdf -- Reply to this email directly or view it on GitHub: https://github.com/w3c/payment-request/issues/981#issuecomment-996500857 You are receiving this because you are subscribed to this thread. Message ID: <w3c/payment-request/issues/981/996500857@github.com>
Received on Friday, 17 December 2021 07:36:27 UTC