Salesforce Integration
This integration is available for the Enterprise plan only.
Overview
The Salesforce integration in Userpilot facilitates the seamless exchange of event data. Users can transmit Userpilot events to Salesforce and update attributes created on Salesforce within Userpilot. This integration empowers users to send checklists, flows, surveys, NPS, forms, feature tags, and button-tracked events to Salesforce. Additionally, it enables the viewing them under contact or lead profiles. Automate workflows and send emails based on interactions with Userpilot content, and personalize onboarding content in Userpilot using attributes from Salesforce data.
Use Cases
- Send Userpilot Events to Salesforce
- Trigger emails from Salesforce based on user interactions with Userpilot content.
- Display Userpilot events as custom objects of Contacts and Leads relationship events
- Pass NPS scores and feedback from Userpilot to Salesforce, facilitating more effective customer outreach and sending Userpilot events to Salesforce to identify customers for targeted initiatives.
- Enhance automation of workflows and profile details viewing.
- Send Salesforce Attributes to Userpilot
- Enhance options for segmenting and filtering data in Userpilot.
- Customize onboarding content in Userpilot using attributes retrieved from Salesforce data.
- Update attributes created on Salesforce to Userpilot.
Prerequisites
- A Userpilot Enterprise Account
- A Salesforce Plan with API Access: Enterprise Edition, Unlimited Edition, Developer Edition,
Sandbox Edition. You can refer to their plans with API access here.
- The user connecting the integration must have the following permissions on Salesforce:
Object Name | Object Permission | |
---|---|---|
Object Settings | Accounts, Contacts , Leads | Read, View All |
System Permissions | API Enabled, Download AppExchange Packages(Only used to check if package is installed) |
What events do we send?
Flow, Checklist, Feature Tag and Button tracked events are listed under the event name "Userpilot Interaction"
The following events can be sent to Salesforce:
- Flows: The name and ID of the flow, the event Completed, Started, and Dismissed.
- Checklists: The name and ID, the event Completed, Started, Dismissed
- NPS: Score, Dismissed, Feedback
- Surveys: Survey name, Question, Question Type and Answer.
- Forms: Submitted
- Feature Tags: Click, Hover, Text Input
- Button Tracked Events: Tracked through the button action settings in a flow
How to Setup the Integration
- Navigate to the integrations page and click on the "Salesforce" integration.
- Select if you would like to connect Userpilot to the Production or Sandbox
You will be navigated to Salesforce to install the package
- Approve Third-Party Access
If this step is skipped you will see an error in Userpilot that the integration will not work without installing the package.
All done! Now you can set up the mapping in Userpilot.
Navigate back to Userpilot and you will find the integration enabled, click on it to configure the integration and follow the steps below:
- Select your Data Direction: Both ways, Salesforce to Userpilot, or Userpilot to Salesforce.
- Map the user/company properties
User Mapping
Option A Unique ID: Select the Contact/Lead property in Salesforce that represents the User ID . This ID must match the unique user ID passed to Userpilot in the identify call.
Option B Email: Via a Salesforce email address. This email must match the email passed to Userpilot in the identify call.
Company Mapping (optional)
If you would like sync data with companies(Accounts) in Salesforce, select the company ID property.
This ID must match the company ID passed to Userpilot in the identify call.
- Configure the data or events that you would like to sync
You can send checklist events, flows, surveys, NPS, forms, feature tags, and button-tracked events to Salesforce.
Locating Events in Salesforce
Salesforce does not show custom objects by default. In order to view Userpilot custom objects in the Sales tab, you will need to manually configure them. Please refer to our guide on adding custom objects to Salesforce.
Once you have completed this, you'll observe the events displayed under the app launcher icon within Salesforce. Simply initiate a search, such as for "NPS," and you'll subsequently access a list of all users who have engaged with the NPS feature.
Please be aware that there is no necessity to run the sync job manually more than once, as real-time syncing is also performed for non-synced users.
- When a user performs an event from the selected events in the integration settings, we attempt to find them in Salesforce and sync them.
- When a contact is created in Salesforce, we attempt to find them in Userpilot and sync them.
- When a contact's property (one of the chosen properties in the settings) is changed in Salesforce, we attempt to find them in Userpilot and sync them.
Hence, it's rare that you would need to run the manual sync more than once. It is only necessary when you want to bulk-sync fully populated users/contacts for the first time.
Important notes to keep in mind
- Users have to match between Userpilot & Salesforce for the integration to process data, If the ID mapping doesn’t exist (No UP/SF match), the users won’t be mapped to any Salesforce object and therefore no events will be sent to Salesforce for these users, also no properties will be received by Userpilot
- The integration applies to both Salesforce leads and contacts. It will establish a one-to-one relation between Userpilot User and Salesforce Lead/Contact. If the lead was converted from lead->contact or the mapping matches for both lead and contact, we map the contact object
- All events are pushed as custom objects by design so you can keep a full history of your contact/lead/account events
For any questions or support please reach out to support@userpilot.co