Integration
Prerequisites
- Follow the steps in Set up MoEngage app on Salesforce to set up the MoEngage Streams Connected App on Salesforce.
- This is part of the Streams add-on. Contact your dedicated MoEngage Customer Success Manager (CSM) to get it enabled for your account.
Scope
| Context | Support status |
|---|---|
| Sync MoEngage campaign interaction events to Salesforce as Activities | Supported |
| Sync MoEngage campaign interaction events to Salesforce as a standard or custom Salesforce object | Supported |
| Support for all standard Salesforce field types (string, datetime, numeric, formula) | Supported |
Steps
Step 1: Set up streams on MoEngage
Choose user attributes and events
Add the user attributes and events that you want to send to Salesforce.
No Integrate tab on the App Marketplace?If you don’t see the Integrate option on your dashboard, Streams is not enabled for your workspace. Contact the MoEngage Support team or your dedicated Customer Success Manager to get it enabled, providing the following details:
- Salesforce domain
- Salesforce Secret ID
- Salesforce Secret Key
- User attributes to be synced
- Events to be sent to Salesforce
Step 2: Set up the sync on the MoEngage app in Salesforce
The sync consists of the following steps:- Connections: A Connection is the authorization to your MoEngage workspace. You can connect multiple MoEngage workspaces to a single Salesforce instance.
- Syncs: A Sync is a job that runs in real time to send specific data between the two systems. It includes the sync type (MoEngage to Salesforce or Salesforce to MoEngage), entities to sync, and data mapping.
Launch the MoEngage app
Click App Launcher, enter MoEngage, and select MoEngage App.
Set up a connection
Enter your MoEngage workspace details
Provide the following details:

| Field name | Value |
|---|---|
| Connection Name | Any name for your connection (for example, MoEngage Prod or MoEngage Workspace). |
| Workspace ID | The Workspace ID of your MoEngage account, available at Settings > Account > APIs > Workspace ID. |
| Data Key | The Data API Key of your MoEngage account, available at Settings > Account > APIs > Data Key. |
| MoEngage Data Center | Your MoEngage data center. Read more. |
Set up a sync
For this guide, we use the example of syncing MoEngage campaign interaction events to Salesforce as Activities. You can follow a similar process for other Salesforce objects.Sync MoEngage campaign interaction events to Salesforce as Activities
Configure data mapping
Configure the data mapping between the two systems:
- Define the identifier between the two systems. For MoEngage, the identifier name is Customer ID — it can be mapped to any field on the Activity object.
-
Set up mappings for other fields. Enter the MoEngage attribute (these are passed in MoEngage Streams data) and select the Salesforce field that the MoEngage attribute should be mapped to.
Some mandatory fields associated with an Activity in Salesforce do not appear on the mapping page under the mapping section. You need to manually add these. Refer to the FAQs for more details. - Click Save.
Mapping user attributes to Salesforce fields
When enabling Streams on the MoEngage App Marketplace, you can select the user attributes that need to be synced to Salesforce. These attributes can be accessed within the mapping using:
Step 3: View activities in Salesforce
Open a contact to see all the activities sent through MoEngage.
Frequently asked questions
Some standard Salesforce fields are not getting updated. Why?
Some standard Salesforce fields are not getting updated. Why?
Some Salesforce fields are not writable, such as
MailingAddress, BillingAddress, or location-type fields. Instead, map to the individual components of these fields — for example, mailing country, city, billing country, street, latitude, and longitude.Why are some mandatory fields on standard Salesforce objects (Activities/Events, Tasks, Account) not visible during mapping?
Why are some mandatory fields on standard Salesforce objects (Activities/Events, Tasks, Account) not visible during mapping?
In certain situations, mandatory fields for standard objects may not appear in the visible Mandatory section. If the fields do not appear, ensure that the respective fields are marked in the Others section of the mapping page.The following sections list the fields you must add in the Others section for each Salesforce standard entity.Activity / Event
Task
Account
| When these fields are not available | Necessary fields to add in the Others section |
|---|---|
| Start and end date | AssignedTo (or NameID), Subject, ActivityDate, Duration |
| Activity Date Duration | AssignedTo (or NameID), Subject, Start Date, End Date |
| Duration | AssignedTo (or NameID), Subject, ActivityDate, AllDayEvent (to mark the event as an all-day event) |
| When these fields are not available | Necessary fields to add in the Others section |
|---|---|
| Subject | Subject |
| AssignedTo | AssignedTo |
| When these fields are not available | Necessary fields to add in the Others section |
|---|---|
| Account Name (only applicable if Person Accounts is enabled for your Salesforce instance) | Account Name |




