Skip to main content
The Salesforce logo
To import closed Salesforce Service Cloud cases as customer feedback, see Salesforce Service Cloud.

Overview

Salesforce Contacts is a customer context source (CRM enrichment). It adds details from Salesforce Contact and Account records, such as role, company, and revenue, to the contacts in your Dovetail contacts database. It doesn’t import feedback, so it doesn’t add data points to channels. Dovetail matches Salesforce records to contacts by email address and fills in the contact fields you map. It updates contacts that already exist in Dovetail and doesn’t create new ones. Data flows one way, from Salesforce into Dovetail. A workspace can connect one CRM at a time, so Salesforce and HubSpot can’t both be connected. Channels 2.0 uses the company and revenue on linked contacts to roll up revenue on ideas, so ideas can be prioritized by the revenue behind them. Learn more about customer context sources →

Prerequisites

To connect Salesforce to Dovetail, you need:
  • Salesforce admin access to authorize the connection.
  • In Salesforce, either:
    • The Approve Uninstalled Connected Apps user permission, or
    • Access to the Dovetail app in Connected Apps (a Salesforce setting), if it’s already installed in your Salesforce org.
  • Dovetail workspace admin access.
  • Full access or Can edit access to the Contacts database in Dovetail.
The credentials you connect with are shared by the whole workspace. See Shared credentials for how to choose an account.
Salesforce blocks users from connecting apps that aren’t installed in their org unless they have the Approve Uninstalled Connected Apps permission. If you use a custom profile, including one cloned from System Administrator, a Salesforce admin must add this permission to it. Only the System Administrator standard profile includes it by default. Alternatively, a Salesforce admin can install the Dovetail app from Connected Apps OAuth Usage (a Salesforce setting) in Setup.For more information, see Salesforce’s documentation on connected app usage restrictions.
Salesforce is connected once for the whole workspace. Only the user who connected it can change the field mappings and the daily sync setting. Any user who can view the Contacts database can view the mappings.

Connect Salesforce

A workspace admin connects Salesforce once for the whole workspace. If HubSpot is already connected, disconnect it first.
1

Open Sources and select Salesforce

In the sidebar, select Sources, then select the Salesforce CRM integration.
2

Connect Salesforce

Start the connection. You’re taken to Salesforce to sign in and approve access. Sign in with a Salesforce admin account. When you return to Dovetail, Salesforce is connected and Daily syncing is turned on.
3

Map fields

Choose which Salesforce fields fill which contact fields, then save the configuration. See Map fields.
Contacts aren’t updated until at least one field is mapped and a sync runs. See Syncing your contacts.

Map fields

Field mappings decide which Salesforce fields fill which Dovetail contact fields. Only the user who connected Salesforce can change them. To open the mappings, select the Salesforce source under Customer context on the Sources page, then select Configure. The mappings are on the Configuration tab. Dovetail matches Salesforce records to contacts on the Email default contact field, so the Email row can’t be mapped. The table lists your default contact fields first, followed by your other contact fields. The first time you configure Salesforce, Dovetail suggests a Salesforce field for each default field it can fill: You can change any suggestion. To roll up revenue on ideas, keep your company name and revenue mapped to Company and Revenue. See Revenue and customer roll-ups on ideas. To map fields:
  1. For each contact field you want to fill, choose a field from the Salesforce Contact or Account object. Make sure the field types match — for example, map a Salesforce number field to a Dovetail number field.
  2. To add a contact field for a Salesforce field, select New field below the table. This needs permission to create contact fields.
  3. Check the sync toggle on each mapped row. It turns on when you choose a field. Turn it off to stop syncing that field without removing the mapping.
  4. Under Preview with sample records, enter one or more email addresses and select Preview to check the mapped values before you sync.
  5. Select Save configuration.

Map a new Salesforce field

Salesforce fields don’t sync into Dovetail automatically. When you add a field in Salesforce, map it in Dovetail so it appears on your contacts:
  1. Create the field on the Contact or Account object in Salesforce.
  2. Open the mappings in Dovetail and go to the Configuration tab. The new Salesforce field appears in the list of fields you can choose.
  3. Map it to a contact field, or select New field to create one, then select Save configuration.
  4. Sync your contacts. The next daily sync detects the change and does a full refresh to pull in the new field’s values. To update contacts sooner, run a bulk sync.
After the sync, the new values appear on matching contacts, and the field is read-only on contacts synced from Salesforce. See Field protection.

Syncing your contacts

Once your mappings are saved, you can enrich your contacts with Salesforce data. There are three ways to sync: automatically each day, one contact at a time, or in bulk. To enrich people who aren’t in your contacts database yet, import them from a CSV first, then sync.

Set up an automatic daily sync

Daily syncing is turned on when Salesforce is connected. To turn it off or back on:
  1. On the Sources page, select the Salesforce source under Customer context, then select Configure.
  2. On the Configuration tab, turn Daily syncing on or off, then select Save configuration. Only the user who connected Salesforce can change this setting.
Each day, Dovetail pulls fresh data from Salesforce for contacts that are already synced, and for any other contacts whose email address matches a Salesforce record. If you don’t want a contact that has never been synced to be updated automatically, leave its Email field blank. To check the latest sync, open the Sources dialog on the Contacts page and expand Salesforce. If a daily sync fails or only partly completes, a warning appears there.

Sync an individual contact

  1. Go to Contacts and select or create a contact. Make sure it has an email address.
  2. In the contact’s side panel, select Sync contact. The mapped fields fill in from the contact’s Salesforce record.

Bulk sync contacts

  1. On the Contacts page, open the Sources dialog from the header.
  2. Select Bulk sync next to Salesforce, then confirm the sync.
Dovetail syncs every contact whose email address matches a record in Salesforce, and sends a notification when the sync is complete. The sync can’t be undone.

Import contacts from a CSV

To enrich people who aren’t in your contacts database yet, add them first:
  1. In Contacts, select the + button in the header, then Import CSV files.
  2. Upload a CSV with a column for each person’s name and a column for their email address. For example, export the names and email addresses of the Salesforce contacts you want. For file requirements, see Contacts.
  3. Run a bulk sync to enrich every imported contact whose email address matches a record in Salesforce.

Field protection

Once a contact is synced from Salesforce, each mapped field with sync turned on is read-only on that contact. This stops manual edits from being overwritten by the next sync. To make a field editable again, turn off its sync toggle in the mappings, or remove its mapping. See Map fields. Disconnecting Salesforce also makes mapped fields editable, because it deletes the mappings. See Disconnect Salesforce.

Resolving sync errors

Contacts can fail to sync because of configuration or permission issues. When a contact fails during a bulk sync, Dovetail pauses syncing for that contact and lists it on the Sync Errors tab of the Salesforce configuration. For each contact on the tab, select •••, then choose one of these:
  • Re-sync contact tries the sync again. If it succeeds, the contact leaves the list and syncing resumes for it.
  • Un-sync contact removes the contact’s link to its Salesforce record, for example so you can correct its email address. The contact keeps its current data.

Requested permissions

When you connect Salesforce to Dovetail, you grant Dovetail access to:
  • Manage user data via APIs (api): lets Dovetail read Salesforce records, such as contacts and accounts, to keep your Dovetail contacts in sync with Salesforce.
  • Perform requests at any time (refresh_token, offline_access): keeps your Salesforce connection active with a refresh token, so Dovetail can keep syncing without asking you to sign in again.
For more information, see Salesforce’s documentation on OAuth scopes.

How Dovetail uses Salesforce data

  • Dovetail only pulls data from Salesforce. It doesn’t write any data back.
  • Dovetail pulls only account and contact data.
  • The user who connects Salesforce controls which data is synced, through the field mappings.

Empty values from Salesforce

When a synced contact’s Salesforce record returns an empty (null) value for a mapped field, Dovetail keeps the existing value for that field in your contacts database and doesn’t overwrite it. Existing data isn’t lost because Salesforce returned an empty value.
Key behaviors and limitations:
  • One-way sync: Dovetail pulls data from Salesforce but doesn’t push any changes back.
  • Matching: Contacts that have synced before are matched by their Salesforce record ID. Other contacts are matched on the Email default contact field.
  • Editing: Mapped fields are read-only on contacts synced from Salesforce. See Field protection.
  • Unsyncing: Turning off a field’s sync, removing its mapping, or disconnecting Salesforce makes that field editable again.
  • Duplicate records: If multiple Salesforce records share the same email address, Dovetail uses the data from the most recently updated record.
  • Database limits: The contacts database supports up to 50,000 contacts.
  • Character limits: Text can be up to 300 characters, and a select field option up to 50 characters. Longer values are truncated.
  • Field limits:
    • Select and Multi-select fields can each have up to 750 options. If a sync would add more, Dovetail changes the field to a text field so the sync keeps running, and sends a notification.
    • Multi-select fields allow up to 100 selections.
    • If you expect to exceed these limits, we suggest using a text field instead.
    • We recommend mapping Salesforce multi-select picklist fields only to Dovetail Multi-select fields.

Troubleshooting

I can’t connect Salesforce. Only workspace admins who can edit the Contacts database can connect Salesforce. A workspace can also connect only one CRM at a time, so if HubSpot is connected, disconnect HubSpot first. Bulk sync or Sync contact is disabled. Syncing needs edit access to the Contacts database, at least one mapped field with sync turned on, and an Email default contact field to match on. A contact wasn’t enriched. Check that the contact has an email address in its Email field, and that the same address is on a contact in Salesforce. Contacts with no matching Salesforce record are skipped. If the contact failed to sync, it’s listed on the Sync Errors tab. See Resolving sync errors. Dovetail shows “Salesforce connection lost. Reconnect your integration to sync your contacts.” The connection to Salesforce stopped working, for example because access was revoked in Salesforce. A workspace admin needs to reconnect Salesforce from the same place it was connected. See Connect Salesforce. I can’t edit a field on a contact. The field is mapped to Salesforce, and the contact has been synced. See Field protection.

FAQs

This error comes from Salesforce, and it usually appears with the OAUTH_APPROVAL_ERROR_GENERIC message. It means Salesforce is blocking the connection because the Dovetail connected app isn’t installed in your Salesforce org, and your user doesn’t have the Approve Uninstalled Connected Apps permission.To resolve it, contact your Salesforce admin and share Salesforce’s documentation on connected app usage restrictions. For what’s required to connect, see Prerequisites.

Disconnect Salesforce

A workspace admin can disconnect Salesforce from its source on the Sources page. When Salesforce is disconnected:
  • Dovetail stops syncing contacts from Salesforce, and Daily syncing is turned off.
  • Your field mappings are deleted, so fields that were mapped become editable again. If you reconnect Salesforce later, map your fields again.
  • Your contacts stay in your contacts database, with the data already synced.
To connect HubSpot instead, disconnect Salesforce first, because a workspace can connect one CRM at a time.

Customer context sources

How CRM enrichment differs from the sources that import feedback.

Contacts and revenue

How Channels uses contacts’ company and revenue to roll up ideas.

Default contact fields

The contact fields Dovetail matches on and fills from your CRM.

Revenue intelligence

Rank what matters by revenue and enrich contacts from a CRM.