This package is a continuation of https://www.npmjs.com/package/react-native-paypal-reborn , the name change happened because of adding expo support, and all of future updates will be done under react-native-expo-braintree
- Please note that, from 2.x.x version of the package and whole integration is rewritten from the scratch using Kotlin (previously Java) and Swift (previously Objective-C) to prepare the whole codebase to migrate it into expo package at some point. If you find any problem or issue in the package do not hesitate and report it via Issue panel.
- Currently we, actively support 2.x.x and 3.x.x versions of the package, the main reason why is, that 3.x.x version of package provides a breaking change for the Android integration
React Native Expo Braintree package is a pure native implementation of Braintree SDK https://developer.paypal.com/braintree/docs/start/overview
React Native Expo Braintree Version | Braintree Android SDK | Braintree IOS SDK | Minimum SDK Android | Minimum SDK IOS |
---|---|---|---|---|
2.2.0 | v4.41.x | v6.17.0 | 21 | 14.0 |
2.2.1 | v4.41.x | v6.17.0 | 21 | 14.0 |
2.2.2 | v4.41.x | v6.17.0 | 21 | 14.0 |
2.3.0 | v4.41.x | v6.23.3 | 21 | 14.0 |
2.4.0 | v4.41.x | v6.23.3 | 21 | 14.0 |
3.0.1 | v5.2.x | v6.23.3 | 23 | 14.0 |
React Native Expo Braintree Version | Expo SDK |
---|---|
2.2.0 | 50 or 51 |
2.2.1 | 50 or 51 |
2.2.2 | 50 or 51 |
2.4.0 | 50 or 51 |
2.5.0 | 50 or 51 or 52 |
3.0.1 | 50 or 51 |
3.0.2 | 50 or 51 |
3.0.3 | 50 or 51 or 52 |
Package Version 3.x.x, introduce breaking change for the whole Android Integration, long story short Braintree SDK For Android, from version 5.X.X , change a way of handling deep link and context switch from the PayPal (Browser) to the App, instead using custom schema Deep Link, SDK Version 5.x.x introduces usage of AppLinks for Android, with https schema.
Please check official Migration Guide from v4 to v5, most likely you do not need to do anything with that, the package itself already handles that. MIgration Guide v4 to v5
This step is required, to finalize if you want to upgrade this package to the newest version 3.x.x^.
Please follow, the official Set Up App Links Guide, and make sure that all the steps was completed.
- Make sure that the domain/url that you added to the AndroidManifest, is verified successfully as auto-verified AppLink, you can check that by using command from adb
Command:
adb -d shell pm get-app-links com.expobraintreeexample
Output:
ID: b3a3a2ff-0148-4bc0-b0d0-dfcaaf047a4b
Signatures: [FA:C6:17:45:DC:09:03:78:6F:B9:ED:E6:2A:96:2B:39:9F:73:48:F0:BB:6F:89:9B:83:32:66:75:91:03:3B:9C]
Domain verification state:
braintree-example-app.web.app: verified
- Make Sure that, your .well-known/assetlinks.json on your web page, is using right fingerprint, and the right data to handle the AppLink, an example used for Example App and for link is located here
- You can have, various other issues related to that upgrade , but most likely they will be related to the AppLink's setup, until Q3 2025 braintree-android v4.x.x will be supported, but after that , everyone will need to switch to the v5.x.x SDK. If you have any other issues please create an Issue, on board
Since package, currently is supporting two versions tracks 2.x.x and 3.x.x, which had a bit different integration steps, the documentation about that is separated based on version and based on if your project is using expo or react-native-cli. Please follow the correct integration guide before you will start a new issue.
Integration Expo Based Project Package Version 2.x.x
Integration Expo Based Project Package Version 3.x.x
React Native CLI Based Project Package Version 2.x.x
React Native CLI Based Project Package Version 3.x.x
You can find it in Example App or in dedicated, usage pages:
- To iacop0 https://github.com/iacop0 - For introducing Venmo Integration And Android Version Bump
- Add ApplePay,
- Google Pay,
- 3D-Secure (In Progress)
- Venmo