Salesforce Sync is the simplest and most reliable way to keep your Salesforce CRM and sales communication platform entirely in sync. The sync works in near real-time, and administrators have the ability to decide which application “wins” when syncing each field.
Salesforce Sync can sync People fields in Cadence with Lead and/or Contact fields in Salesforce. Salesforce Sync also maps Company and Account for complete parity with CRM.
Requirements & Expectations Before You Begin
- Must have Salesforce Professional edition with REST API access or Salesforce Enterprise edition.
- Have overall Salesforce administrator privileges (or full object- or field-level security permissions, i.e. “modify,” “edit,” “create” and “delete”) for the user acting as the Main Salesforce Connection. This is used by SalesLoft to make all Salesforce Sync updates for Leads and Contacts on behalf of this SalesLoft main connector, while also acting as a back-up connection for Activities if a team member's individual Salesforce connection becomes disconnected. (Please note: Currently, activity logging still relies on the original individual, user-specific connection.)
- Be aware of your API limit. You only have a certain number of API Calls per day, based on your Salesforce edition and number of seats. You can read more about how to find your API Call limit and how to change it here.
Note: If you have previously connected SalesLoft with Salesforce, you and each of your team members used an individual, user-specific connection to log activities. While your activities currently are still based on that connection, the advanced Salesforce Sync relies on a single main connection per team, which must have the security access outlined above.
Setting the main connection and mapping your users
From your Cadence dashboard, click on your name and Settings.
Navigate to the “Salesforce Connector” section in the left-hand menu.
Click on the “Sync” section at the top right. Next, click the toggle at the top of the screen to enable Salesforce Sync.
You’ll get a pop-up asking you to select the Salesforce Connector, which will be your team's “Main Connection” used for Salesforce Sync. This connection uses a team member's (usually an admin’s) Salesforce username to make all updates in both SalesLoft and Salesforce on behalf of each SalesLoft team member. If a team member's individual Salesforce connection becomes disconnected, their data will still flow back and forth between Salesforce and SalesLoft through this Salesforce Connector. (Please note: currently, activity logging still relies on the original individual, user-specific connection.)
Click the drop-down menu and select the SalesLoft user for your main Salesforce Connector (typically, this will be you or the main admin on your account, as outlined in the Requirements section above).
You’ll now see a message stating you need to map your fields before you can configure any more Salesforce Sync settings.
Now, let’s go map your People and Company fields! Navigate to the “Field Configuration” section in the left-hand menu. You can then select either People Fields or Company Fields to map.
There are two types of fields on this page: Default Fields and Custom Fields. Default Fields are SalesLoft's standard, "out-of-the-box" fields, while Custom Fields are ones you or other team admins have created.
You will notice that each field has a section for Salesforce Lead and Salesforce Contact. If you map your fields to Salesforce, these sections will display your chosen corresponding Salesforce field and sync direction for each SalesLoft field.
Let’s map the First Name field to show how it works. Click the gear icon on the line and select “Edit” from the dropdown.
You can now select whether you want to map “First Name” to and from (a) Leads, (b) Contacts, or (c) both in Salesforce. Check the box for each Salesforce object type that you want to map.
Next, select the Salesforce field you wish to map to; this will automatically populate the following fields with the Salesforce API name and field type.
The “Direction” field has three options:
- SalesLoft ⇋ Salesforce: This indicates that you want your data to stay in sync between SalesLoft and Salesforce. If you select this field, you will get access to Advanced Configuration options as well. (see below).
- SalesLoft ← Salesforce: This indicates that you only want to bring Salesforce data into SalesLoft. With this option, we will never send SalesLoft data back to Salesforce.
- SalesLoft → Salesforce: This indicates that you only want to bring SalesLoft data into Salesforce. With this option, we will never send Salesforce data back to SalesLoft.
If you selected SalesLoft ⇋ Salesforce, you will see a link appear for “Show Advanced Configuration.” Clicking this will expand a new section called “Merge Behavior.”
This section allows you to change what happens when a Salesforce record and a SalesLoft record are merged. A merge happens when: (1) The records are first linked, (2) when you retry a failed sync job, (3) when you re-import a Person, (4) when you convert a Lead to a Contact, or (5) when you edit field mappings. SalesLoft must then merge the data from the two records, and if one record has data that the other is missing, or if records have differing data, then SalesLoft fills in the missing data or selects the preferred data based on your Advanced Configuration settings. It defaults to using the timestamp of the most recently updated system, but you can change it to any of these options:
- Use most recent value: You want the most recent data from either system to populate that field. (Example: Changes in email address will always be updated in both systems when there’s a change, so you always have the most current email. This means if SalesLoft has the latest email address, the sync will overwrite any value in the email field in Salesforce)
- Use Salesforce value unless blank: If Salesforce already has data, leave it untouched. (This means that if there is data in that field in Salesforce, SalesLoft will not write in a new value.)
- Use SalesLoft value unless blank: If SalesLoft already has data, leave it untouched. (This means that if there is data in that field in SalesLoft, Salesforce will not write in a new value.)
Repeat these steps above for any additional fields you’d like to map, selecting the Salesforce field and the sync direction for each.
Company Fields work exactly the same way as People fields, with Default and Custom fields available for mapping between SalesLoft Companies and Salesforce Accounts.
Important People & Company fields to know:
- Company CRM ID: For Contacts only, this field would map to the “Account ID” field, which is a standard Salesforce field linking to the Account object. This allows SalesLoft to identify which Salesforce accounts match which SalesLoft companies.
- Owner CRM ID: This field allows SalesLoft to identify the Lead, Contact and Account object owners, based on the Salesforce user matches set under the User Management section. Owner ID is a standard field on the Lead, Contact and Account objects.
- Things to consider:
- This field must be set to use any rules associated with owner changes in SalesLoft or Salesforce (such as the “When Salesforce Owner Changes” rule outlined here)
- This field must be set to use any rules that would create a new Person in SalesLoft or a new Lead or Contact in Salesforce (such as the “Create Person in SalesLoft” rule outlined here).
- Company Name & Domain: Currently, these are required fields in SalesLoft. You must map these fields to import Accounts from Salesforce.
Suggested People fields to map:
- Cadence Stage
- Do Not Contact
- Email Address
- First Name
- Last Name
Suggested Company fields to map:
- Company Stage
- Conversational Name
- Do Not Contact
You can also create custom fields for each lead, contact or account field that can be used as dynamic tags or mapped to and from Salesforce. Navigate to the right side of your screen, and click the “+ New Custom Field” button.
From here, you can fill in the name of your custom field, and select the Salesforce field you wish to map to and the sync direction, just as you did with the default fields above. Once you have added the a custom field, you will see asterisk next to the field name. See the image above for an example.
Now that you’ve mapped your fields, let’s return to the Salesforce Settings > Connector setup page and check your sync frequency. This is how often SalesLoft connects to your Salesforce instance and looks for changes. Our default is every 10 minutes, to reduce the number of API calls made to your Salesforce instance, but you can set the sync frequency to every one minute, five minutes or 10 minutes.
Note: The more frequently we connect to Salesforce, the more API calls we use. As mentioned at the start of setup, you only have a certain number of API Calls per day, based on your Salesforce edition and number of seats. You can read more about how to find your API Call limit and how to change it here.
- Currently, SalesLoft can bi-directionally sync People fields with Lead and/or Contact fields once you’ve mapped them.
- When identifying the merge behavior for each field, please note that we will not write null values or blanks; if there is data in a field, that value will always win over a blank field.
- Certain types of fields are read-only, and can only be synced from Salesforce to SalesLoft, because we cannot write to these fields. They include Salesforce system fields (such as “Last Activity Date”) and any formula fields.
You have full visibility into all sync actions taken by viewing the Sync Logs. This can be reached from the Salesforce Connector > Sync setup page, by clicking the “View Salesforce Sync logs →” link. Here, you can see the timestamp, source, type and status of each sync action:
You can Filter by Status (Success or Failed):
You can click each object to go to the external record (Lead, Contact or Person) associated with the action, and you can filter by a specific Lead, Contact or Person to see all sync actions associated with that record by clicking the Filter icon () next to the object you want to see.