feat(membership): pay through stripe checkout, adding apple pay and google pay
This commit is contained in:
16 files changed
+147
-228
No files matched your search
@@ -12,12 +12,18 @@ Remove items from this list once they are done.
|
||||
`android.enableMinifyInReleaseBuilds: false` in the `expo-build-properties` plugin config in
|
||||
`app.json`): smaller APK, but native Android stack traces get obfuscated unless the R8 mapping
|
||||
file reaches Bugsink, which doesn't document ProGuard/R8 mapping support. Also check whether
|
||||
Stripe or Sentry need ProGuard keep rules
|
||||
- verify the SDK 58 upgrade on devices: `useFrameworks: "dynamic"` (needed since
|
||||
`@stripe/stripe-react-native` 0.78 pulls the Stripe iOS SDK through Swift Package Manager) is
|
||||
untested with Skia, Reanimated and Sentry, so do an iOS EAS build first; then a test-mode
|
||||
purchase on Android and iOS including a card that requires authentication (exercises the
|
||||
`handleURLCallback` deep link), an expiry reminder notification, and an error that lands in Bugsink
|
||||
Sentry needs ProGuard keep rules
|
||||
- verify the SDK 58 upgrade on devices: an expiry reminder notification and an error that lands
|
||||
in Bugsink, on Android and an iOS EAS build
|
||||
- verify the Stripe Checkout purchase flow end to end (needs galtinn deployed with
|
||||
`/api/stripe/checkout-session/app/` first): a test-mode purchase on Android and iOS with `4242…`,
|
||||
a card that requires 3D Secure and a cancel, checking the app lands back on the proof with the
|
||||
right toast. Check Apple Pay shows inside the iOS auth session (ASWebAuthenticationSession); if
|
||||
not, switch to `WebBrowser.openBrowserAsync` plus a `Linking` listener. Confirm Google Pay with
|
||||
a real card in Google Wallet, and that Apple Pay, Google Pay and Link are enabled in the Stripe
|
||||
Dashboard's Checkout settings
|
||||
- once app versions using the Payment Sheet are gone, drop galtinn's `/api/stripe/payment-sheet/`
|
||||
endpoint and its `payment_intent.succeeded` handling
|
||||
- test in ios emulator? (`npm run ios`, requires macOS)
|
||||
- characters in the password input field are invisible
|
||||
- ask for date of birth and place of study when registering: galtinn now requires them on its web
|
||||
@@ -32,14 +38,3 @@ Remove items from this list once they are done.
|
||||
- try [`@expo/ui`](https://docs.expo.dev/versions/latest/sdk/ui/), production-ready as of SDK 56:
|
||||
real SwiftUI / Jetpack Compose components that could back the homegrown ones in
|
||||
`src/components/`
|
||||
- add [Apple Pay](https://docs.stripe.com/apple-pay?platform=react-native) for membership
|
||||
payments: either natively in the payment sheet (register the merchant ID
|
||||
`merchant.no.neuf.chateau` + Apple Pay certificate, set `merchantIdentifier` in the
|
||||
`@stripe/stripe-react-native` plugin config, pass `applePay` to `initPaymentSheet`,
|
||||
new iOS build), or for free by moving payment to a Stripe-hosted Checkout page in the
|
||||
browser (needs a backend Checkout Session endpoint and a return deep link)
|
||||
- add [Google Pay](https://docs.stripe.com/google-pay?platform=react-native) for
|
||||
membership payments: either natively in the payment sheet (`enableGooglePay: true` in
|
||||
the plugin config, pass `googlePay` to `initPaymentSheet`, request production access in
|
||||
the Google Pay & Wallet Console, new Android build), or for free via the same
|
||||
Stripe-hosted Checkout page as for Apple Pay
|
||||
Reference in new issue
Block a user