Set up the Salesforce User Metadata integration with Pendo

Last updated:

This article describes how to configure the Salesforce User Metadata integration for the first time. This integration is relevant when you want to use Pendo on one or more Salesforce applications. We recommend that you first read the overview article for this integration, Salesforce User Metadata integration with Pendo.

This is different from the standard integration with Pendo, which connects to different Salesforce objects and is relevant when you want to use Pendo on customer-facing applications rather than Salesforce applications. For more information, see Salesforce integration with Pendo.

Supported data types

The integration supports the following data types. Particular Pendo data types are mapped to particular Salesforce data types. This is important when:

  • Creating the initial connection. You must choose the Salesforce User field that matches the format of the Pendo Visitor ID.
  • Setting up the pull. Pendo data types should be mapped to particular Salesforce data types so that the correct Salesforce fields are pulled into Pendo as visitor metadata.
Salesforce primitive type Pendo metadata type
int integer, displayed as Number (int) in the Data Mappings page in Pendo.
string

string, displayed as Text in the Data Mappings page in Pendo.

boolean boolean, displayed as Boolean in the Data Mappings page in Pendo.
date date, displayed as Date in the Data Mappings page in Pendo.
datetime date, displayed as Date in the Data Mappings page in Pendo.
double 

float, displayed as Number (float) in the Data Mappings page in Pendo.

 

Salesforce field type Pendo metadata type
checkbox boolean, displayed as Boolean in the Data Mappings page in Pendo.
comobox string, displayed as Text in the Data Mappings page in Pendo.
currency float, displayed as Number (float) in the Data Mappings page in Pendo.
email string, displayed as Text in the Data Mappings page in Pendo.
id string, displayed as Text in the Data Mappings page in Pendo.
multipicklist string, displayed as Text in the Data Mappings page in Pendo.
percent float, displayed as Number (float) in the Data Mappings page in Pendo.
phone string, displayed as Text in the Data Mappings page in Pendo.
picklist string, displayed as Text in the Data Mappings page in Pendo.
text area string, displayed as Text in the Data Mappings page in Pendo.
url string, displayed as Text in the Data Mappings page in Pendo.
number integer, displayed as Number (int) in the Data Mappings page in Pendo.

In general, any Salesforce field type that can be mapped to a date, integer, float, boolean, or string in Pendo can be selected as a pull field in this integration.

The integration doesn't support Salesforce compound fields, such as address and location.

Step 1. Start the integration

  1. In Pendo, go to Settings > Integrations.
  2. Find and open the Salesforce User Metadata tile. This opens a panel on the right side of the screen.
  3. Select Set up.
  4. Choose an account from the dropdown menu or select New authentication.
    • Use an account that has the required permissions. For more information, see the Salesforce User Metadata integration with Pendo overview article.
    • We recommend creating a new user that others in your organization can also access, rather than a user record tied to an individual employee.
    • Adding a new account involves authenticating to Salesforce. You must have a production Salesforce instance and not a sandbox instance to use this integration.
  5. Select Next in the integration panel in Pendo. This takes you to the screen needed to choose a join key described in Step 2. Create the connection, below.

Step 2. Create the connection

To connect Pendo with Salesforce, the unique identifiers for visitors in Pendo (Visitor IDs) must match exactly with the Salesforce User field that you select for mapping.

Mapping the Pendo visitor to the Salesforce user involves choosing a Join key from the dropdown menu. The join key is the Salesforce User field that contains the unique identifier shared across Pendo visitors and Salesforce users. By choosing join key, you're telling Pendo which User field in Salesforce to send to Pendo for the Visitor ID. 

Select a Salesforce User field to map to Pendo visitors. The Salesforce user field is typically "Email" or "ID" (if the ID is the email). Any difference in casing, punctuation, or spacing prevents Pendo from matching to the correct record.

After you've chosen a join key, select Next in the integration panel in Pendo.

Step 3. Configure the "pull"

This step involves choosing what Salesforce User fields you want to pull from Salesforce into Pendo as visitor metadata. Any metadata pulled into Pendo can be included in Pendo segments. Include any metadata that would be valuable to include in a Pendo segment for personalized guide targeting and product usage analytics.

If the Join Key is selected as one of the pull fields, it isn't pulled into Pendo metadata because it already exists as the Visitor ID in Pendo.

  1. Select a Salesforce field from the dropdown menu to pull in from the Salesforce User object.
  2. Select Add to add another field and repeat the first step in this sequence for the new dropdown menu.
  3. Select Finish to complete the setup.

Step 4. Enable the integration

To start the daily syncs, enable the integration by selecting Enable integration in Settings and logs. The pull sync occurs immediately after the integration is enabled. This can take several minutes to run. After the initial run, the integration runs once a day to keep your data in sync. You can view the status of syncs in Settings and logs.

View data pulled into Pendo

To verify and view visitor metadata pulled in from Salesforce, look for the Salesforce User Metadata fields under the Group column in the table in Settings > Data Mappings. This is different from the fields associated with the blue salesforce group, which are fields pulled in from the standard Salesforce integration for customer-facing applications.

Troubleshooting

Unable to authenticate into your Salesforce account

Your organization might have policies in place that block third-party apps by default. In this case, you might need to unblock the Pendo Salesforce User Metadata Integration app in your Salesforce account:

  1. Log into your Salesforce account.
  2. Go to Setup > Home.
  3. Open Platform Tools > Apps > Connected Apps > Connected Apps OAuth Usage from the left-side menu.
  4. Find the Pendo Salesforce Integration in the Connected Apps column of the table.
  5. In the Actions column, check to see if the app is blocked, which is indicated by the presence of an Unblock button.
  6. If the integration is blocked, select Unblock. This grants the app used by this integration access.

Unable to find a Salesforce User field when selecting your Salesforce join key or the pull fields

First check that the user with which you authenticated for the Salesforce User Metadata integration has the correct permissions to read the field:

  1. Sign in to your Salesforce account.
  2. Go to Setup > Home.
  3. Open Users > Profiles.
  4. Select the profile of your user.
  5. Scroll down to the Field Level Security section and select the User object.
  6. Check that the field or fields that you're trying to pull into Pendo have Read Access checked.

Then, check that the user with which you authenticated into the Salesforce User Metadata integration has API Enabled turned on:

  1. Sign in to your Salesforce account.
  2. Go to Setup > Home.
  3. Open Users > Profiles.
  4. Select the profile of your user.
  5. Scroll down to the Administrative Permissions section and select the User object.
  6. Check that API Enabled is selected.

Error message: Error creating Salesforce query job

You might get this error if you deleted a field in Salesforce that you previously selected as a pull field when configuring the integration. In this case, the pull sync fails because you it attempts to query Salesforce for a field that no longer exists. I you delete a field in Salesforce that's being pulled into Pendo, edit the configuration and remove that field in the integration panel in Pendo.

Was this article helpful?
0 out of 0 found this helpful