Installation
Configure React Native for Android
Configure React Native for iOS
API Reference
Migration Steps
Migration Checklist
Use this transition guidance to migrate from the Engagement-specific react-native-marketingcloudsdk model to the React Native unified plugin model.
This topic applies only to the customers who use the Engagement-specific React Native implementation.
Note
The previous React Native integration for Marketing Cloud Engagement uses one package and one static module (MCReactModule) for all features.
The React Native unified plugin integration uses modular packages with async requestSdk() APIs. This model aligns with the native unified SDK architecture and lets you install only the modules you use.
The key changes in the React Native unified implementation are:
sfmc-core, push, iam, marketingcloudsdk).requestSdk().sfmc-core.Use this table to map your previous dependency to the unified packages. While the previous plugin came as a single package, the unified plugin is split into a core product package and several optional feature packages.
| Engagement-specific React Native dependency | Unified dependency | Required? |
|---|---|---|
react-native-marketingcloudsdk (MobilePush / Engagement) | @sfmc/react-native-marketingcloudsdk | Required. This package replaces the MobilePush or Engagement-specific package. |
| SFMC core bundled inside the Engagement-specific package | @sfmc/react-native-sfmc-core | Auto-installed as a transitive dependency of any product package. |
| Push messaging support bundled inside the Engagement-specific package | @sfmc/react-native-push | Required if your app sends push notifications. |
| In-app messaging support bundled inside the Engagement-specific package | @sfmc/react-native-iam | Required if your app uses in-app messages. |
The unified plugins require a substantial baseline change from the Engagement-specific plugin. Before you begin your migration, make sure you meet these prerequisites:
| Components | Minimum Requirement |
|---|---|
| React Native | 0.85.1 or later (with New Architecture enabled) |
| React | 19.0 or later (tested against 19.2.3) |
| Node.js | 20 or later |
| iOS | 15.1 or later (Xcode 16 or later) |
| Android | minSdk 26, compileSdk 36 or later |
| Ruby (CocoaPods) | 3.1.0 or later |