Learn how to integrate the Para SDK with Expo projects.
@getpara/react-native-wallet
@alpha package that works seamlessly in both React Native bare and Expo workflows, utilizing the device’s Native Passkeys for secure wallet management.
@getpara/react-native-wallet
@alpha package in your Expo project, you will need to do some initial project setup.
For passkeys to work correctly we have to setup the Relying Party ID for both iOS and Android. This ensures passkeys are bound to the domains they were created for.
app.json
file to enable passkey functionality and secure communication:teamId + bundleIdentifier
must be registered with the Para team to set up associated domains. For example, if your Team ID is A1B2C3D4E5
and Bundle Identifier is com.yourdomain.yourapp
, provide A1B2C3D4E5.com.yourdomain.yourapp
to Para. This is required by Apple for passkey security. Allow up to 24 hours for domain propagation. You can find this setting in the Developer Portal under the ‘Configuration’ tab of the API key label as Native Passkey Configuration.metro.config.js
in your project with the following node module resolutions. This will ensure that any library that depends on global modules like crypto
or buffer
will be properly resolved in the Expo environment.
Custom Entry Point
index.js
in your project root and add the following imports:package.json
to point to your new entry file:expo prebuild
command to generate the necessary native code and then run your app using expo run:ios
or expo run:android
.
yarn start
, switch to development mode by pressing s
, then i
for iOS or a
for Android.@getpara/react-native-wallet
@alpha provides two main authentication methods: email-based and phone-based. Both flows utilize Native Passkeys for secure and seamless authentication.
Environment
as the first argument to the ParaMobile
constructor. You can retrieve your updated API key from the Para Developer Portal at https://developer.getpara.com/BETA
Environment, you can use any email ending in @test.getpara.com
(like
dev@test.getpara.com) or US phone numbers (+1) in the format (area code)-555-xxxx
(like (425)-555-1234). Any OTP
code will work for verification with these test credentials. These credentials are for beta testing only. You can
delete test users anytime in the beta developer console to free up user slots.Para SDK initialization fails
para.init()
after creating the Para instance.Native modules are not found or linked
expo prebuild
to generate native code.expo run:ios
and expo run:android
to rebuild your app after adding new native dependencies.app.json
file includes the necessary configurations for native modules.Passkey operations fail or throw errors
app.json
file for both iOS and Android.Crypto-related errors or undefined functions
Authentication fails or API requests are rejected
BETA
or PRODUCTION
) that matches your API key.Expo-specific build issues
expo doctor
to check for any configuration issues in your project.eas.json
configuration and ensure it’s set up correctly for both iOS and Android.