> ## Documentation Index
> Fetch the complete documentation index at: https://docs.unifygtm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Salesforce integration guide

> This guide outlines how to connect your Salesforce instance to Unify.

## Overview

In just a few steps, you can connect your Salesforce instance to Unify and start
syncing data bidirectionally. This unlocks a few key benefits when using Unify:

1. Salesforce records can be used to [construct exclusions](/tutorials/how-to-create-an-exclusion)
   that prevent Unify from engaging with specific people or companies. For
   example, you can create an exclusion for all current customers or deals in
   progress.
2. You can create Plays that are triggered by Salesforce records. This allows
   you to run a Play based on a specific event or criteria captured within
   Salesforce.
3. Unify can write data back to Salesforce so that you can maintain a source of
   truth in your CRM and respect rules of engagement in other tools or business
   processes.

Unify's integration with Salesforce is designed from the ground up to prevent
many common pitfalls, including overwriting existing data or creating duplicate
records. For an in-depth description of how Unify does this, see [How bidirectional syncs work](/reference/integrations/salesforce/bidirectional-syncs).

## Prerequisites

* **Salesforce Subscription:** Unify requires API access to your Salesforce
  instance. This is typically included with most Salesforce plans, but some
  plans may require an upgrade.

  * If you're unsure, follow [these instructions](https://help.salesforce.com/s/articleView?id=000386929\&type=1)
    to determine your plan and then check [here](https://help.salesforce.com/s/articleView?id=000385436\&language=en_US\&type=1)
    to see if API access is included.

* **Administrative Access:** To assign the correct permissions to the
  integration user, a Salesforce admin may be needed to complete these steps.

## Setup

<Note>
  If you are using a Salesforce sandbox instance, let our support team know in
  advance and we will create a dedicated testing login for you.
</Note>

<Steps titleSize="h3">
  <Step title="Choose an integration user strategy">
    Decide which integration user Unify should use to connect to Salesforce.
    Unify supports multiple approaches:

    | Setup                                                      | Pros                                                                                                                                                                         | Cons                                                                                                                                                                 |
    | ---------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | **Dedicated integration user**                             | This is best practice and our recommended option. The user is granted specific limited permissions and all updates made within Salesforce are clearly attributable to Unify. | This requires the purchase or use of a dedicated Salesforce user license, which may require time to set up at your company.                                          |
    | **Shared integration user with other connected apps**      | This might be a better choice, because you may already use an integration user with other connected apps. You don't need to provision a new user.                            | Unify must share the permissions and limits of the shared integration user. If this user's access is shut down, all connected apps will be impacted.                 |
    | **Existing individual user with system admin permissions** | This is typically the fastest and most affordable option because you use an individual user that already exists in your Salesforce. There's no need to create anything new.  | Unify is given full system access and edits made within Salesforce are attributed to the individual user. If the user leaves the company, the connection will break. |

    If you choose to create a dedicated integration user, you can follow [this guide](https://help.salesforce.com/s/articleView?id=ind.sf_contracts_create_users_and_assign_permission_sets.htm\&type=5)
    for step-by-step instructions.
  </Step>

  <Step title="Connect Salesforce instance">
    Navigate to [Settings → Salesforce](https://app.unifygtm.com/dashboard/settings/integrations/salesforce)
    and select **Connect**. You will be redirected to the Salesforce authentication
    page where you can sign in using the desired Salesforce integration user that
    Unify will use.

    <Frame caption="This screen will appear before you have connected a Salesforce organization.">
      <img src="https://mintcdn.com/unify-19/FV7_ax32WGUYsOt7/images/reference/integrations/salesforce/connect-salesforce-instance.png?fit=max&auto=format&n=FV7_ax32WGUYsOt7&q=85&s=6a1c510a608f9a7930ee41fe8abc29ab" width="2880" height="2048" data-path="images/reference/integrations/salesforce/connect-salesforce-instance.png" />
    </Frame>

    <Frame caption="Once a connected, you will see the settings available for your Salesforce connection.">
      <img src="https://mintcdn.com/unify-19/FV7_ax32WGUYsOt7/images/reference/integrations/salesforce/connected-settings.png?fit=max&auto=format&n=FV7_ax32WGUYsOt7&q=85&s=966bc13bfbab95e05d10f6a946774c9b" width="2880" height="2048" data-path="images/reference/integrations/salesforce/connected-settings.png" />
    </Frame>
  </Step>

  <Step title="Assign required permissions">
    Unify requires specific permissions to access the Salesforce API and read
    and write data. If any permissions are missing, they will be shown on the
    settings page.

    <Frame caption="The permissions widget will indicate if permissions are missing.">
      <img src="https://mintcdn.com/unify-19/FV7_ax32WGUYsOt7/images/reference/integrations/salesforce/missing-permissions-settings-page.png?fit=max&auto=format&n=FV7_ax32WGUYsOt7&q=85&s=c1b2160778cc25bdc9df55963c4aaf2d" width="2880" height="2048" data-path="images/reference/integrations/salesforce/missing-permissions-settings-page.png" />
    </Frame>

    See [Required Permissions and Settings](/reference/integrations/salesforce/required-permissions)
    for details on fixing any issues.
  </Step>

  <Step title="Choose which objects to create">
    Salesforce has two different ways of representing companies and people:

    1. **Contacts and Accounts**: Every person has a Contact record, and Contacts are associated with Accounts.
    2. **Leads**: Every person has a Lead record which contains information about both the person and their company.

    Unify supports both options, and you can choose which approach you want to
    use on the integration settings page. This can be changed at any time.

    <Tip>
      Pick the option that best aligns with how your team uses Salesforce today.
      If you're unsure, Unify recommends **Contacts and Accounts** as a best
      practice.
    </Tip>
  </Step>

  <Step title="Create field mappings">
    Unify provides granular control over which Salesforce fields map to which
    Unify fields. For each object, select **Create Mapping** and update any
    fields you wish to customize.

    In most cases, the default options will be a good starting point. You can
    always return to change these mappings in the future.

    <Frame caption="The field mappings page lets you customize which fields Unify can read and write.">
      <img src="https://mintcdn.com/unify-19/FV7_ax32WGUYsOt7/images/reference/integrations/salesforce/company-field-mapping.png?fit=max&auto=format&n=FV7_ax32WGUYsOt7&q=85&s=c5cc752682aff7d93f6fc97d10951710" width="2304" height="1639" data-path="images/reference/integrations/salesforce/company-field-mapping.png" />
    </Frame>

    See [Field mappings](/reference/integrations/salesforce/field-mappings) for details on
    how field mappings work and the available options.
  </Step>

  <Step title="Enable syncs">
    Once you're satisfied with your integration settings and field mappings, you
    can begin syncing data into Unify by selecting **Resume**. If at any point
    you want to pause syncs again, you can return to this page and select
    **Pause**.

    To enable Unify to write data back to Salesforce, activate the toggle next to
    **Enable writing to Salesforce**. This will allow Unify to sync records back
    to Salesforce.

    <Frame caption="The Salesforce integration settings page after setup is complete.">
      <img src="https://mintcdn.com/unify-19/FV7_ax32WGUYsOt7/images/reference/integrations/salesforce/salesforce-integration-settings.png?fit=max&auto=format&n=FV7_ax32WGUYsOt7&q=85&s=ad94068dd0e453ea13f91477f5fa13a6" width="2880" height="2048" data-path="images/reference/integrations/salesforce/salesforce-integration-settings.png" />
    </Frame>
  </Step>
</Steps>

## Additional Salesforce resources

<CardGroup cols={2}>
  <Card icon="shield-check" title="Required Permissions" href="/reference/integrations/salesforce/required-permissions">
    Ensure your Salesforce user has the correct permissions and settings enabled
    for Unify.
  </Card>

  <Card icon="arrow-right-arrow-left" title="Field Mappings" href="/reference/integrations/salesforce/field-mappings">
    Configure mappings between Unify fields and Salesforce fields.
  </Card>

  <Card icon="pen-to-square" title="Configure Default Values" href="/reference/integrations/salesforce/default-values">
    Specify default values that should be used when writing to Salesforce.
  </Card>

  <Card icon="arrows-rotate" title="How Bidirectional Syncs Work" href="/reference/integrations/salesforce/bidirectional-syncs">
    Learn how Unify's bidirectional syncs work and how to avoid common pitfalls.
  </Card>
</CardGroup>
