1. Install the released package
Run npm install @rapidoreachsdk/react-native-rapidoreach@1.0.9, then run pod install from ios for an iOS build. Rebuild the native app after installation.
Package and source referenceConnect a native rewarded survey wall to your React Native app with the published JavaScript wrapper and native platform dependencies.
React Native wrapper 1.0.9 · Guide reviewed October 15, 2026
Public web playground · Sample inventory · Native presentation variesPlace the entry point in your rewards screen. Await initialization, check availability and remove reward listeners when the screen unmounts.
Run npm install @rapidoreachsdk/react-native-rapidoreach@1.0.9, then run pod install from ios for an iOS build. Rebuild the native app after installation.
Package and source referenceUse a native Android or iOS build with the package’s native dependencies. A JavaScript reload alone does not install the native module.
Create a publisher app in the dashboard and use its SDK token with a stable, non-personal app user ID. The web UID signing App Key stays on your backend.
React Native integration referenceReplace the placeholders in your own app. Catch SDK errors in the calling screen, handle unavailable inventory and refresh balances from your server.
import RapidoReach, { RapidoReachEventEmitter }
from '@rapidoreachsdk/react-native-rapidoreach';
export async function initializeRewards(refreshBalance) {
await RapidoReach.initWithApiKeyAndUserId(
'YOUR_API_TOKEN', 'YOUR_USER_ID'
);
const listener = RapidoReachEventEmitter.addListener(
'onReward', () => refreshBalance()
);
return () => listener.remove(); // Call on unmount.
}
export function openRewards(showEmptyState) {
RapidoReach.isSurveyAvailable((available) => {
if (available) RapidoReach.showRewardCenter();
else showEmptyState();
});
}These are screenshots of the public web playground, captured October 15, 2026. They show sample survey cards shared as a visual reference, not screenshots of a React Native native build or a guarantee of inventory.

This local interaction illustrates presentation states. It does not call the SDK, load live surveys or issue rewards.
A survey is available in this simulated placement.
Open the public widget playground ↗
The playground previews layout and themes. To validate React Native SDK behavior, use the package example and your own development app on a supported device.
Get the React Native package / exampleUse a development publisher app. In the app’s Test users section, add the raw app user ID exactly as your SDK sends it and enable Test mode for that test user. For web, generate the signed UID from that same raw user ID.
The test survey helps verify the journey. Keep test activity separate from live earnings.
Open the integration testing guideConfigure the app’s server callback and send a Test Callback from the dashboard. Verify the documented hash, attribute the transaction to the correct user and store it once. Repeat the same transaction to check duplicate handling.
Client reward notifications should refresh UI. They should not create a second credit.
Callback verification referenceInstall the package, install iOS pods where applicable and rebuild the native binary. Verify the module is linked in your actual app target.
Refresh the CocoaPods spec repository with pod repo update and run pod install again. Open the workspace rather than the project.
Remove event listeners on unmount. Refresh from the server ledger instead of adding currency for every client event.
Trace the same app user ID and transaction through your callback receiver and reward ledger. Check hash verification, duplicate detection and currency conversion. Use redacted diagnostics when contacting support.
Create a publisher account, register your app and connect the first test user. Review the reward flow before opening the placement to live users.