Chrome Demos of Secure Payment Confirmation (June 2025)
On 19 June 2025, Stephen McGruer (Google) shared three pre-recorded demonstrations of Secure Payment Confirmation (SPC) featuring recently implemented features.
All demos show the SPC implementation on Android. The Chrome Team has indicated that they will soon implement these features in Chromium on desktop (MacOS, Windows). Each demo begins with information about the version of Chrome being used and which flags need to be enabled to make the demo work, namely "Secure Payment Confirmation UX Refresh."
The user first registers a Web Authentication credential. The user experience prompts the user to create a passkey. We do not see the operating system prompt for biometric authentication. After a successful registration, the demo shows the JSON data that the SPC caller would receive.
The demo then shows the user experience at authentication time. The transaction dialog shows two payment facilitator logos at the top of the sheet. In the case of a card payment, for example, these might be logos of the card network and the issuing bank. The transaction dialog also shows information about the merchant, the payment instrument (a logo for a card, a short label to describe the card, and the masked card number), and finally the transaction amount and currency.
The user pushes the "Verify" button to authenticate the payment. We do not see the operating system prompt for biometric authentication. After a successful authentication, the demo shows the JSON data that the SPC caller would receive.
The demo goes on to show what error messages are returned by the API in various error scenarios. These errors enable the caller to more easily decide what the next steps should be in the user journey.
In the first case, the user cancels the SPC transaction dialog instead of clicking on "Verify". The API returns "AbortError."
In the second case, the user clicks on "Verify another way" in the dialog. The API returns "NotAllowedError."
Fallback dialog
Summary of the demo of the fallback dialog demo, which shows the user experience in the case where the browser does not find credentials matching the credentials passed as input to SPC. When the user clicks to initiate a transaction and SPC is called, because there are no matching SPC credentials, the transaction dialog shows a "Confirm" button instead of a "Verify" button.
The demo goes on to show various scenarios:
If the user clicks "Confirm", the API returns "NotAllowedError." To protect user privacy, this is the same error returned when there are credentials available but the user chooses to verify another way.
In the second case, the user cancels the SPC transaction dialog instead of clicking on "Confirm". The API returns "AbortError."
Logo variations
The demo of logo variations shows different treatments in the transaction dialog depending on how many payment facilitator logos are provided as input to the API. In all cases, the logos are formatted at the top of the sheet.
Two logos: side by site, centered
One logo: centered
No logos: A placeholder logo provided by Chrome is centered on the sheet