Express checkout / wallet button
The one-tap pay buttons above the card form that pull card, name, and address from a wallet the customer already has.
See it
What it is
Express checkout is the row of black-and-white buttons that sits above the card form: Apple Pay, Google Pay, PayPal, Link, Shop Pay. Tapping one hands back a payment token plus the name, email, and shipping address already stored in the wallet, so a twelve-field form collapses into a fingerprint. That is why the lift shows up hardest on mobile, where typing a card number is the whole reason people bail.
There is a second, quieter win: Apple Pay and Google Pay hand over network tokens carrying device authentication, so they usually satisfy SCA with no extra challenge and tend to approve at higher rates than a typed card. Put the row at the top of checkout above an 'or pay with card' divider, and on the product page for single-item buys.
Traps: render a button only when the device actually supports it (check availability first) or you ship a row of dead buttons to desktop Chrome. Apple Pay needs HTTPS plus a domain verification file served from your origin, and it silently will not appear otherwise. The wallets publish brand rules on label, height, and corner radius, and restyling them is grounds for getting switched off. And the address the wallet returns may not be the one you priced against, so recompute tax, shipping, and total in the wallet's change callbacks before you take the money.
Ask AI for it
Add an express checkout row to this checkout page using Stripe's Express Checkout Element for Apple Pay, Google Pay, and Link. Render a button only for wallets the device reports as available, and collapse the whole row plus its divider if none are, with no layout shift. Place it at the top of the page above an 'or pay with card' divider, full width on mobile, 48px tall, and leave the wallet marks unstyled so they stay inside brand guidelines. Wire the shipping address and shipping rate change callbacks to recompute tax, shipping, and total server-side before confirmation, and complete the payment against the same PaymentIntent the card form uses so there is one order path and one webhook. Serve the Apple Pay domain verification file from /.well-known/, and add a test for the no-wallet-available fallback.