I believe this was the intent for non-WebView PaymentRequest: https://groups.google.com/a/chromium.org/g/blink-dev/c/p1DYoxHlkKg/m/rBqBMGbFCgAJ
LGTM1 to ship to WebView as well with the restriction you outlined. Please also start the rest of the reviews (WP Security, Enterprise, Testing). On Friday, February 28, 2025 at 3:06:33 PM UTC-5 Rouslan Solomakhin wrote: > Contact emailsrous...@chromium.org > > Specificationhttps://w3c.github.io/payment-request/ > > Documentationhttps://web.dev/explore/payments > <https://developers.google.com/web/fundamentals/primers/payment-request/> > (WebView-specific documentation will follow.) > > Summary > > PaymentRequest is an API that allows browsers to act as an intermediary > between the three key parties in a financial transaction: the merchant > (e.g. an online web store), the buyer (e.g. the user buying from the online > web store), and the Payment Method (e.g. credit card). Information > necessary to process and confirm a transaction is passed between the > Payment Method and the merchant via the browser with the buyer confirming > and authorizing as necessary across the flow. > > > PaymentRequest has been shipped on Desktop and Android for a while now, > but not on Android WebView. This Intent is for partially shipping the > feature on Android WebView, restricted to Android intent-based payment > apps <https://web.dev/articles/android-payment-apps-developers-guide>. > Web-based Payment Handlers are not supported due to lack of the required UI > in WebView. > > *Design* > Design: WebView PaymentRequest for native Android intent based payment apps > <https://docs.google.com/document/d/1yS2_LykHMhSTHr_oX9gtHgE8WS0x5QYtdg_k_8XBUj8> > . > > Blink componentBlink>Payments > <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EPayments%22> > > Risks > Interoperability and Compatibility > > Android WebView works slightly differently than other platforms, so > developers should be aware of caveats. See for example: > > How is WebView different from a typical browser like Chrome? > <https://developer.android.com/develop/ui/views/layout/webapps/embed-web-content-in-app#how-is> > > > *Gecko*: PaymentRequest development stopped. > *WebKit*: Shipped PaymentRequest > <https://webkit.org/blog/8182/introducing-the-payment-request-api-for-apple-pay> > . > *Web developers*: Positive views of PaymentRequest in WebView, e.g.: "We > believe this to be huge unlock for us and our customers. > <https://crbug.com/381849264#comment7>" > > WebView application risks > > Low: WebView host apps must opt-in to enable PaymentRequest (including a > recompile and pushing an update to their users). There are two steps > required: > > > 1) Add the following to AndroidManifest.xml: > > > <queries> > <intent> > <action android:name="org.chromium.intent.action.PAY"/> > </intent> > <intent> > <action android:name="org.chromium.intent.action.IS_READY_TO_PAY"/> > </intent> > <intent> > <action > android:name="org.chromium.intent.action.UPDATE_PAYMENT_DETAILS"/> > </intent> > </queries> > > > 2) Execute the following initialization code for each WebView where > PaymentRequest should be enabled: > > > WebView myWebView = (WebView) findViewById(R.id.webview); > WebSettings webSettings = myWebView.getSettings(); > webSettings.setPaymentRequestEnabled(true); > > > Will this feature be supported on all six Blink platforms (Windows, Mac, > Linux, ChromeOS, Android, and Android WebView)? > This Intent is specifically for Android WebView. The other platforms are > already shipping PaymentRequest. > > Flag name on WebView Dev ToolsWebPayments > > Finch feature nameWebPayments > > Requires code in //chrome?No > > Tracking bughttps://crbug.com/381849264 > > *Sample links* > Running a demo is a bit more involved in Android WebView, so here are > instructions > for device setup and running a demo > <https://docs.google.com/document/d/17UojtddKjJ4WpVZO-DYi7heyDEiDBLgKg33lqAbRAew> > . > > Estimated milestones > Shipping on WebView 136 > Anticipated spec changes > > None > > Link to entry on the Chrome Platform Status > https://chromestatus.com/feature/5639348045217792?gate=5794834437111808 > > *Launch tracking* > launch/4328654 (Google internal only) > > This intent message was generated by Chrome Platform Status > <https://chromestatus.com/>. > -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/34282fd9-8a1c-4a53-b0fd-525af0e86137n%40chromium.org.