Kadhom argues that payments matter because apps and companies depend on revenue from transactions or advertising. He traces online checkout from early web purchases, such as a Sting CD sold in 1994, to the payment forms still common today. On mobile, he says shoppers are twice as likely to abandon checkout.
React Native Payments Bringing the Payment Request API to React Native
Speaker
Naoufal Kadhom, a senior software engineer at Netflix and React Native open-source contributor, explains React Native Payments at React Native Europe, showing how it brings the Payment Request API to iOS, Android, and the web.
Kadhom describes autofill, Apple Pay, and Android Pay as steps toward reducing repeated entry of card details. The Payment Request API offers a standard way to present a one-touch payment dialog, and was available in several browsers including Chrome for Android, Edge, and Samsung Browser. It returns payment data but does not process the payment.
React Native Payments provides a polyfill for the Payment Request API and bridges requests to native platforms. Developers define line items, a total, and supported payment methods such as Apple Pay, Android Pay, or a basic card. The API selects the first method available on the current platform, allowing shared payment code across web, iOS, and Android.
The payment response varies by method: it may contain card details, an Apple Pay or Android Pay token, or a processor token. Kadhom says the app sends that data to its server, then completes or fails the request based on the server response. The library supports Stripe and Braintree and has a pluggable interface for other processors.
Kadhom demonstrates installing the package, linking its native dependencies, and enabling Apple Pay with a merchant ID in Xcode. Android setup requires enabling the Wallet API in the manifest. In JavaScript, the example builds a payment request with a movie ticket priced at $15 and calls show() from a button handler; each attempt needs a new request.
Takeaways
- Consider a payment sheet before building a checkout form, especially for mobile purchases.
- Keep payment method configuration in an array so the platform can select an available method.
- Calculate the transaction total in your app before creating the payment request.
- Send payment response data to your server for processing, then complete or fail the request based on its result.
- For Apple Pay, match the merchant ID configured in Xcode with the ID used in JavaScript.
Mentioned in this talk
Search inside this talk
What was claimed 10
- role atNaoufal Kadhom is senior software engineer at
Netflix
“I also work for Netflix as a senior software engineer.”
YouTube Unverified1 source· Talk
- feature
Apple Pay: Lets users make purchases in different applications without re-entering payment information
“make purchases in different applications without re-entering this payment information”
YouTube Unverified1 source· Talk
- featurePayment Request API: Available in Chrome for Android, Edge, Samsung Browser, and Chrome desktop; Firefox was working on it
“currently available on Chrome for Android, Edge, and the Samsung Browser”
YouTube Unverified1 source· Talk
- integrates withReact Native Payments integrates with Android Pay
“as of today, Android Pay”
YouTube Unverified1 source· Talk
- integrates withReact Native Payments integrates with
Apple Pay
“charge your customers with Apple Pay”
YouTube Unverified1 source· Talk
- featureReact Native Payments: Supports Apple Pay, Android Pay, contact and shipping information requests, and payment processors
“gives you a way to charge your customers with Apple Pay and, as of today, Android Pay”
YouTube Unverified1 source· Talk
- uses
“It's built on top of this web standard, the Payment Request API”
YouTube Unverified1 source· Talk
- featurePayment Request API: Returns payment data after the user approves a request; it does not process the payment
“You’ll get a payment response, which contains the credit card details or a token.”
YouTube Unverified1 source· Talk








