Salesforce Integration
Salesforce Integration
Permissions
The following permissions are needed in Salesforce:
● Access to API
Installing the Native App allows you to integrate ZoomInfo data directly within your Salesforce instance. With
the Native App, your users can view records in Salesforce enhanced with ZoomInfo data, and enables your
organization to benefit from ZoomInfo IDs, timestamps, and Salesforce dashboards without leaving
Salesforce.
See the Salesforce Native App Implementation Guide for details on how to download, install, and configure
the Native App from the Salesforce AppExchange.
3. Configure your export settings (supported objects, limits and other settings)
4. Configure mapping between ZoomInfo data fields and Salesforce fields and behavior for each field
when exporting.
5. If you have ZoomInfo Copilot, Advanced Sync is enabled by default to allow ZoomInfo to import and
analyze information about your team and prospects/customers from your Salesforce.
6. If you don't have ZoomInfo Copilot, Salesforce Filtering enables your organization's users to view and
filter records found in Salesforce right within ZoomInfo Advanced Search.
7. Turn on the integration for your users and enable them to begin exporting.
8. Understand how duplicate checking logic and data sharing with ZoomInfo works.
A service account simplifies the onboarding process as your organization evolves and changes, and
eliminates the need for your Support team to troubleshoot individual Salesforce connection issues for your
users.
● All exports and Salesforce Filtering jobs will be run using this account.
● Other ZoomInfo admins and users will not need to connect to Salesforce using their own credentials.
● Assuming your org's ZoomInfo user accounts match to Salesforce user accounts, exports will be
associated with the user that made the export, including any applicable lead assignment rules you've
configured in Salesforce.
● The ZoomInfo admin that makes the initial connection to Salesforce is considered the primary
connected admin.
● Only the primary connected admin can disconnect the connection to Salesforce.
● Any other ZoomInfo admins defined in your organization can manage the configuration settings such
as adjusting mapping, export settings, and filtering. However, these admins cannot directly disconnect
the connection to Salesforce.
Secondary Admins
Any other ZoomInfo admins defined in your organization are considered a secondary admin. These admins:
● Can view the existing Salesforce integration configured for the org without connecting their own
Salesforce account to Zoominfo.
● Can manage the configuration settings such as adjusting mapping, export settings, and filtering.
● Can disable all exports for users by toggling off the connections.
● Can switch the service account user by using the Change User option on the General Settings page
for the integration (Service Account option only). Ensure the new service account user has the same
set of Salesforce permissions as the previous user.
● Cannot directly disconnect the connection to Salesforce. However, a secondary admin can become
the primary admin by using the Change User option on the General Settings page for the integration.
If the exporting user's email address in ZoomInfo is the same as their Salesforce user email address:
● ZoomInfo will automatically associate exports of net new records with the user that performed the
export.
● The record owner for net new records exported will be set to the user account that performed the
export.
● The Created By and Last Modified By value for each record will reflect the primary connected admin.
● If your organization has configured lead assignment rules in Salesforce, the logic described in Lead
Assignment Rules applies. Note the following:
○ If a user exports 25 net new records or less, the lead assignment rules will be used to set the
record owner.
○ If a user exports 26 net new records or more, the lead assignment rules are not applied and the
records will be owned by the user that performed the export.
● The record Owner, Created By and Last Modified By fields will reflect the primary connected admin.
● If your organization has configured lead assignment rules in Salesforce, the logic described in Lead
Assignment Rules applies. Note the following:
○ If a user exports 25 net new records or less, the lead assignment rules will be used to set the
record owner.
○ If a user exports 26 net new records or more, the lead assignment rules are not applied and the
records will be owned by the primary connected admin.
● If this logic presents an issue for your organization, you can choose the Individual User Account
Connections option instead. This will require your organization's users to individually connect to
Salesforce.
● Ensure that your org's users have the required permissions in Salesforce.
● You'll still need to make the initial admin connection for the integration using Salesforce credentials.
● Once you have enabled the integration for all users by clicking the toggle to the left of the integration
in the Admin Portal, individual ZoomInfo users can connect to Salesforce.
● Admins should share the following link with users for instructions on how to connect to Salesforce.
2. Click Integrations.
● The Service Account is the default preference. Therefore, when you make this connection, the
Salesforce credentials you provide will be set as your Service Account.
● As the admin setting up the initial connection, your ZoomInfo account will be listed as the
ZoomInfo Admin (and considered the primary connected admin).
● You can alternatively change the default preference of Service Account to User Account after
making the initial connection.
Click Edit Settings on the success message to be directed to the General Settings page for the
Salesforce integration.
a. Assuming you choose to use the default Service Account option, click Edit User Mapping.
● Typically, you should see correct user mappings assuming your org's users use the same
email address for both ZoomInfo and Salesforce.
● If the Salesforce User field does not have a user selected, click the dropdown and
select a user.
● If the Salesforce user field has multiple matches, choose the appropriate user.
b. If you've made updates to the User Mapping page, click Save Changes.
5. If you elect to use the User Account option, you've already connected to Salesforce and must finish
configuring the integration (e.g., export settings, mapping, and Salesforce Filtering). Continue to
Configure Export Settings.
1. From the General Settings page for the integration, select Edit settings.
3. Select each object type you want your users to be able to export to Salesforce.
4. For each object type, set a maximum number of records a user can export to Salesforce at one time
(up to 100,000).
5. Click Save Changes to apply the changes for all users in your org's ZoomInfo instance.
For exports of 26 records or more (max 100,000): Exporting 26 or more records (max 100,000) requires
Salesforce Bulk API access.
The following table models API consumption when your users export ZoomInfo records to Salesforce.
Total Records Records To Be Records To Be SFDC Rest API SFDC Bulk API Notes
Exported From Created in SFDC Updated In SFDC Consumption Consumption
ZoomInfo To SFDC
25 25 1 -
25 10 15 2 - See
footnote1
200 200 - 1
200 100 100 - 2 See
footnote2
201 201 - 1
201 201 - 1
201 to 100K 201 to 100K - 1
201 to 100K 201 to 100K - 1
Important Native App consideration: Unlike the direct integration with Salesforce from the ZoomInfo
platform, the Native App does not leverage the Salesforce Bulk API when performing exports. For this reason
the export limit through the Native App is 5,000, not 100,000.
For exports of 26 records or more (max 100,000): Exporting 26 or more records as leads, the lead
assignment rules in your Salesforce system will not be activated.
1
In this example, 1 REST API call is made to create 10 records, and 1 REST API call is made to update 15 records.
2
In this example, 1 Bulk API call is made to create 100 records and 1 Bulk API call is made to update 100 records.
25 25 Yes
25 10 15 Yes
● If an account does not exist, the user is asked to confirm the creation of the account. If confirmed,
ZoomInfo will assign the contact to the newly created account.
● If only one account exists, the user is asked to confirm that they want to associate the contact with
that account.
● If we match on multiple accounts, the user is asked to choose the account with which they want to
associate the contact.
Configure Mapping
With your integration successfully connected (but not yet turned on for your organization), you can configure
and customize mapping and optionally enable Scoops, Intent, and ZoomInfo Custom Object exports.
Note: The gray fields shown above are only included if you've installed the Salesforce Native
Application.
2. On the Mapping tab, use the Accounts, Contacts, and Leads tabs to review the default mappings for
each object type and make any mapping changes.
ZoomInfo Field Available ZoomInfo fields. Required fields are marked with an asterisk
(*).
Salesforce Field Available Salesforce fields. These fields are retrieved directly from
your Salesforce instance.
You can also export Intent (at the account level only) to Salesforce.
● ZoomInfo Scoops
● ZoomInfo Intent
These custom objects are related objects on the account, contact, or lead record. You can customize the
fields that you want to show or hide, such as create date, description, topic, Scoop ID, and so on.
Click the trash icon to remove any fields that you do not want to map.
For example, you may want to import both the ZoomInfo Direct Phone and Company Phone fields into the
Salesforce Business Phone field.
The first occurrence of the Business Phone field is denoted with number 1, and the second with number 2.
Field hierarchy allows for both first and second choice values for selected Salesforce properties. For exported
records where more than one data point is available from ZoomInfo (such as phone numbers) you can
prioritize the data by preference within your mapping.
● If the test record cannot be created, this is typically due to an error in the mapping settings. For
example, mappings cannot be saved with a blank field.
● If the mappings are not set correctly, an error notification displays indicating the adjustments needed.
Advanced Sync allows ZoomInfo to import and analyze information about your team and
prospects/customers from Salesforce. This sync is required to deliver auto-configurations of ZoomInfo
settings and tailored recommendations to enhance your team's productivity.
For the optimum Copilot user experience, it's crucial that ZoomInfo Copilot has read access to all fields for
the specified objects.
● Comprehensive Data Integration: Copilot aggregates extensive Salesforce data, which is crucial for
generating detailed insights and highly targeted recommendations.
● Efficiency and Productivity: Automation of data collection and analysis reduces manual data
handling, allowing sales teams to focus on engaging with clients and closing deals.
● Predictive and Generative AI: Copilot utilizes advanced AI algorithms to predict future buying
behaviors and generate actionable engagement strategies. This includes AI-driven suggestions on
whom to contact, optimal contact times, and personalized messaging recommendations, all based on
Salesforce data.
● Enhanced Personalization: Copilot can tailor interactions more precisely to each prospect's context
and needs, enhancing personalization and relevancy at scale.
● Target Account Activation: Target accounts are automatically activated, enabling a more efficient
sales process.
● ynamic Company Lists: Users gain a new 'My Target Accounts' company list, dynamically populated
D
with accounts assigned to them in Salesforce, facilitating a user-friendly experience for building
advanced searches.
● Signal Routing: When a funding signal from ZoomInfo intersects with your org's Salesforce data,
Copilot can route this signal precisely to customers whose solutions align with the growth objectives
of these freshly funded companies.
● Account ● User
● Contact ● AccountContactRole
● Lead ● AccountTeamMember
● Opportunity ● OpportunityContactRole
● Event
● Task
For each Salesforce object, ZoomInfo will import all fields within that object to which the connected user has
access. This data is stored in our secure database. ZoomInfo stores both matched and non-matched data
from these Salesforce objects and fields.
● Non-matched data: This data is used to create rich signals, ensuring that we can present the full
picture to your users instead of relying only on a subset that consists of matched-only data.
When Advanced Sync is enabled, the sync already includes all fields within these objects. Our aim is to steer
you toward the "optimal setting," guaranteeing the utilization of all fields for each object, instead of confining
them to particular lists or reports. Because of this, we've disabled ability to edit the settings within each
object, except in the following cases:
● You want to specify the Salesforce fields (per object) that you want your users to be able to filter on in
Advanced Search.
● If you have previously configured Lists/Reports for an object, you can continue to edit Lists/Reports
for filtering purposes only. Advanced Sync will continue to import all records/fields on these objects.
● If you haven't checked Opportunities for the Account object, you are still able to do so.
● For details on how data privacy works when using filtering, see the CRM/MAT Filtering Data & Privacy
FAQ.
User Experience
Before configuring Salesforce filtering, it's important to understand the capabilities you are enabling for your
organization's users.
Once you configure and run Salesforce filtering, ZoomInfo users can use the Salesforce filters in Advanced
Search to search for account, contact, and lead records using the following criteria:
● Account records: Include or exclude based on account ownership or account type. You can also filter
accounts based on Opportunity data in Salesforce.
● Contact records: Include or exclude based on contact ownership with an option to exclude contacts
who have opted out of email.
● Lead records: Include or exclude based on lead ownership and status with an option to exclude leads
who have opted out of email.
● Include all owners to see all of the records matched from Salesforce, or exclude all records matched
from Salesforce.
● Create saved search alerts based on Salesforce ownership, helping users maintain a narrow focus on
prospecting efforts.
● See additional indicators on ZoomInfo contact and company profile pages, including owner
information and filter date. Clicking on the owner name will redirect to the existing Salesforce record
in a new tab.
● See indicators that a record exists in Salesforce when viewing Scoops and Org Charts.
As an admin setting up Salesforce filtering, you can choose to configure filtering of accounts, contact and/or
lead objects.
For the account, contact, and lead object types, there is a limit of 2 million records. For opportunities there is
a limit of .5 million records. You can adjust your filtering settings using Salesforce Lists to adhere to these
limits.
API consumption
Salesforce filtering functions by leveraging Salesforce’s Bulk API. Salesforce provides a limit for the number of
API calls which can be used by an organization.
● Salesforce records are queried using the Bulk API in batches of 10,000. So 1 million records will
consume 100 Bulk API calls.
● Check with Salesforce Support to confirm how many API calls your organization has access to (daily
limits).
● Consider other integrations that you are leveraging (including ZoomInfo Enrich) which also use
Salesforce’s API.
If you subsequently disable filtering for an object, previously-filtered records are not deleted - disabling
simply stops future filtering.
If you want to remove records that are already filtered, you have the option to clear them so they no longer
appear in searches and remove Salesforce indicators. Clearing filtered records only removes the ownership
information in ZoomInfo - your Salesforce records are not impacted.
Record persistence
Salesforce filtering will only persist the records ZoomInfo is able to match.
Duplicate records
If there are multiple records for the same account, ZoomInfo will only match to one record. For example, your
Salesforce instance may include multiple or duplicate accounts across different locations. In this case, these
records would be matched to a single ZoomInfo profile.
Only records that meet specified criteria at the time of filtering are filtered. Records that no longer meet the
criteria are removed on subsequent filtering runs. For example, if a lead is converted to a contact, it will no
longer be filtered as a lead in future filtering runs.
Scheduled runs
Scheduled filtering runs are performed on "off hours", specifically from 8PM to 6AM EST.
● Choose reports that align with specific goals and objectives for your organization
● Ensure that reports do not include more than 2,000 records. If a report has greater than 2,000 records
that you want to import, split the report into individual reports to meet this requirement.
Include the following essential data fields for accurate matching with ZoomInfo’s database and optimized
filtering.
2. Enable the Show Salesforce settings, filters, and indications toggle for Salesforce.
For simplicity, this section describes your options in the context of the Account object, but the same
instructions apply for Contacts and Leads.
1. Click the toggle to enable and configure filtering for the object (e.g., Account).
Use the Update Frequency dropdown to schedule filtering for the object type.
If you choose Daily, a full sync will occur once per week, beginning on the day you set it up, and recurring
each week on that same day. For the days of the week in-between, only new records or updated fields for
existing records are synced.
You can perform a full sync at any time by choosing the Run Now option on the Mapping tab for an object.
For each object, you can configure the records you want your users to be able to search for in ZoomInfo.
● All Accounts from Salesforce along with the option to include Salesforce Lists/Reports that you
select.
○ If you choose All Accounts, users will be able to filter ZoomInfo search results for all accounts
in Salesforce that match to a company in ZoomInfo.
○ If you optionally select Add List and Report Filters, users will also be able to filter ZoomInfo
search results based on list and/or report information.
Tip: See Salesforce report creation best practices for your Salesforce reports to optimize matching
and filtering.
Include Opportunities
You can choose to include Salesforce Opportunities created in the past 6 months, 1 year, or 2 years.
2. Repeat the configuration described in this section for other objects (Contacts, Leads) as needed.
Important: This action has no impact on records in your Salesforce instance - it simply removes records that
were matched to ZoomInfo so that they will no longer be shown in search results.
Run statistics are provided for each object. Roll over the info icons to view the definition of each statistic.
● You can add up to 3 fields for each object type (Accounts, Contacts, and Leads).
● You define the name for each custom filter that users will see in ZoomInfo Advanced Search.
In this example, we'll enable 3 additional fields for the Account object. Click Select Salesforce
Account Field.
2. Add up to three Salesforce picklist or lookup fields to include by clicking the Search Salesforce Field
dropdown.
The Filter Name value for each custom field will display in Advanced Search. The default value is initially the
same as the Salesforce Field. You can choose to edit this text so that it makes better contextual sense to
users conducting searches.
User Experience
When using Advanced Search, users can filter using the custom fields that an admin has configured.
The account Deal Story is a ZoomInfo Marketing feature that helps your users visualize how accounts are
moving through the marketing funnel, where to prioritize effort and spend, and how ZoomInfo Marketing is
delivering ROI.
● A visual display of the engagements across all activities for that account.
● Salesforce opportunity data for the account (see Include Salesforce Opportunity Data for details)
These steps must be performed by the admin user who connected the Salesforce integration from the
ZoomInfo Admin Portal.
Do the following:
1. In Salesforce, navigate to Setup > Object Manager > Opportunity (or type in the search bar for quick
access).
3. Choose one of the following Field Names (type Field Name in the search bar for quick access).
● Opportunity Name
● Stage
● Close Date
● Amount
● Contract
4. Click Set Field-Level Security and select all checkboxes for Visible.
5. Click Save.
● Important: Users must have access to the Opportunity object itself, and all of the fields you
choose in this procedure.
● Once configured, the opportunity data will appear in the account Deal Story view within 24
hours. If the data does not appear after this timeframe, disconnect and reconnect your
Salesforce integration in the ZoomInfo Admin Portal.
● If you chose to use the default Service Account export preference, turning on the toggle enables the
ability to export for all users in your organization.
○ Individual ZoomInfo users must connect to Salesforce with their own credentials to be able to
export.
○ Admins should share the following link with users for instructions on how to connect to
Salesforce.
2. Ensure that the new admin has the same Salesforce permissions as the outgoing admin.
● Already logged in to Salesforce in another browser or tab, the account is simply switched.
In this scenario, the Service Account user is also switched to the secondary admin's account.
2. Ensure that the new admin has the same Salesforce permissions as the outgoing admin.
Note: If Salesforce Filtering jobs are not configured, the secondary admin will not see the Change
User option.
● Already logged in to Salesforce in another browser or tab, the account is simply switched.
2. On the Connected tab, temporarily turn off the integration for your organization using the toggle.
Note: Saving the changes will enable the Edit User Mapping link.
6. Verify the user mapping configuration to ensure your org's users are mapped to Salesforce users by
clicking Edit User Mapping.
7. Return to the Connected tab and turn on the integration using the toggle.
● If you do not proactively make the mapping, the system will automatically regenerate this mapping
when the new user performs their first export.
● If the system is unable to map a user, the user can still perform exports as described in Record
Ownership When Exporting Using a Service Account Connection.
● Option 1: You can use standard duplicate-checking logic used by ZoomInfo when exporting
accounts, contacts, and leads.
● Option 2: You can use custom duplicate rules configured in Salesforce to flag duplicates when
exporting accounts, contacts, and leads.
● When enabled, the Salesforce custom duplicate rules fully replace the duplicate-checking logic
used by ZoomInfo.
● You can configure this feature per object (accounts, contacts, and leads).
Duplicate Logic
ZoomInfo checks for specific criteria, in a specific order, to determine if existing data in Salesforce matches
data being exported.
For companies: Companies in ZoomInfo are equivalent to accounts in Salesforce. When exporting companies
to Salesforce, ZoomInfo will check for duplicate Salesforce accounts using criteria applied in the following
order:
1. ZoomInfo ID
2. Website
For people: People in ZoomInfo are designated as contacts, and can be exported as Salesforce contacts or
leads.
When exporting contacts to Salesforce, ZoomInfo will check for duplicate Salesforce prospects using criteria
applied in the following order:
1. ZoomInfo ID
2. Email Address
1. ZoomInfo ID
2. Email Address
Duplicate Logic
ZoomInfo checks for specific criteria, in a specific order, to determine if existing data in Salesforce matches
data being exported.
For companies: Companies in ZoomInfo are equivalent to accounts in Salesforce. When exporting companies
to Salesforce, ZoomInfo will check for duplicate Salesforce accounts using criteria applied in the following
order:
1. ZoomInfo ID
2. Website
For people: People in ZoomInfo are designated as contacts, and can be exported as Salesforce contacts or
leads.
When exporting contacts to Salesforce, ZoomInfo will check for duplicate Salesforce prospects using criteria
applied in the following order:
1. ZoomInfo ID
2. Email Address
1. ZoomInfo ID
2. Email Address
Note: If a person in Salesforce exists as both a contact and a lead, ZoomInfo will present the contact record
as the duplicate.
Data Sharing
The Data Sharing page in the Admin Portal is enabled if your organization has not contractually opted out of
data sharing with ZoomInfo that is intended to analyze your use of connected integrations. Data sharing helps
to improve the ZoomInfo service and make recommendations to you.
● If your organization has chosen to opt-out of data sharing, the following message displays:
As a precaution, this function is set to OFF and is not editable, in order to prevent unintended
changes that may be in conflict with your organization's contractual terms.
2. Data collection is subject to ZoomInfo's Privacy Policy. Review the policy details using the link
provided.
3. Review and manage the data sharing settings according to your organization's data sharing
preferences.
4. Over time, you can review the Contributions tab to monitor the contributions made by your
organization.