Shopify Web Payments Demos

Krystian Czesak (Shopify) has recorded several demos that illustrate Web Payments flows enabled by Payment Request API, Payment Handler API, and Payment Method Manifest.

The demos show basic card payment, Affirm, and iDEAL.

These flows were made possible by the work that Anna Gyergyai and Michael Elfassy did on the Shopify Platform.

Overview of Checkout Flow

The demos all make use of:

Each demo involves a similar checkout flow, but a different payment method. In the checkout flow:

The sections below describe the flow for the selected payment method. See below for more about the payment handlers used in the Affirm and iDEAL demos.

Basic Card Payment

After the flow described above:


The Affirm payment method involves real-time financing. Unlike "basic card," this payment method is not implemented natively in the browser. Therefore, a payment handler provides the support needed to use it with Payment Request API. In this demo, the user has previously registered the Web-based payment handler via the Payment Handler API.

After the flow described above:


iDEAL is the most used payment method in the Netherlands. It allows customers to buy on the Internet using direct online transfers from their bank account. In the following demo, a payment is accomplished through the ABN Amro bank.

After the flow described above:

About the Payment Handlers

Shopify created these Web-based payment handlers for demo purposes. They happen to wrap access to these payment methods, but the system could work just as well with payment handlers distributed by the payment systems themselves.

These payment handlers take advantage of Chrome's "just-in-time payment handler registration" feature. When guided by a Payment Method Manifest, Chrome will show users available payment handlers that may be registered upon first selection by the user.

All pre-recorded video is Copyright © Shopify.

Questions? Please write to the Web Payments Working Group <public-payments-wg@w3.org>. Please note this is a publicly archived mailing list.