Bare React Native setup (no Expo plugin)
Use this guide when your app is not using Expo config plugins and you need to configure Apple Pay / Google Pay manually in native projects.
iOS (Apple Pay)
1) Add Apple Pay capability
In Xcode:
- Open your app target.
- Go to Signing & Capabilities.
- Add the Apple Pay capability.
- Select your Merchant ID (for example
merchant.com.company.app).
2) Verify entitlements and Info.plist
Your app should contain:
- Entitlement key:
com.apple.developer.in-app-paymentswith your merchant ID(s). - Info.plist key:
ReactNativePayApplePayMerchantIdentifierswith merchant ID(s).
Example Info.plist entry:
<key>ReactNativePayApplePayMerchantIdentifiers</key>
<array>
<string>merchant.com.company.app</string>
</array>
3) Apple Developer setup
In Apple Developer:
- Create/verify Merchant ID.
- Enable Apple Pay on your App ID.
- Create a Payment Processing Certificate and configure it in your gateway.
Android (Google Pay)
1) Add Google Pay metadata
In android/app/src/main/AndroidManifest.xml, inside <application>:
<meta-data
android:name="com.google.android.gms.wallet.api.enabled"
android:value="true" />
2) Configure runtime gateway settings
In app code, pass Google Pay config in usePaymentCheckout (or PaymentRequest):
googlePayMerchantIdgooglePayEnvironment(TESTfor sandbox,PRODUCTIONfor live)googlePayGatewaygooglePayGatewayMerchantId
3) Device readiness
- Test on a real device or Play-enabled emulator.
- Ensure Google Play Services is available.
- Ensure at least one wallet card is configured in Google Pay.
Verify both platforms
- iOS payment sheet opens and returns a token.
- Android payment sheet opens and returns a token.
- Backend can process both token formats with your gateway.