ReadyNative

Payments · Subscriptions / in-app purchases

Expo + Stripe Checkout

Stripe Checkout in an Expo SDK 57 app for iOS and Android, wired by one command and checked by doctor.

This sells subscriptions through Stripe's hosted Checkout in the system browser, so there's no native payments SDK at all (@stripe/stripe-react-native is deliberately not used). src/lib/payments.ts implements the shim - entitlements come from GET /api/stripe/entitlements for whoever the request's session proves - and the server side lives in your tree: src/app/api/stripe/{checkout,entitlements,webhook,return}+api.ts with the shared logic in src/server/stripe.ts. You also get /paywall as a modal, tests for both halves, and /examples/paywall with --with-examples. @/lib/payments keeps the same API whichever option you pick - pick Stripe when you're selling to the web as well, or when the 30% store cut isn't something you have to pay.

At a glance

Runs in Expo Go
Yes
Files added
13
npm packages
1
Keys to paste
EXPO_PUBLIC_API_URL, EXPO_PUBLIC_STRIPE_PUBLISHABLE_KEY
Included in
Pro

Set it up

bun run setup --payments stripe

Setup copies the module in, installs SDK-matched versions and removes the options you did not pick. Then bun run doctor lists every key still missing, with a link to where you get it. The step-by-step guide is in the Stripe Checkout docs.

Other payments options

Get it

Stripe Checkout ships in Pro: one payment, lifetime updates. See pricing or browse every module.