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

# Salesforce Integration Setup

Integrating Salesforce with Ruddr provides numerous benefits as outlined in the [Salesforce Integration Overview](/integrations/salesforce-integration-overview) article. To install the Salesforce integration, follow the steps below. Note that you must be a Ruddr Workspace Admin to install integrations in Ruddr and that the [Pipeline](/pipeline/pipeline-overview) feature in Ruddr must be enabled.

There are three, distinct activities required for setting up the Salesforce integration:

1. Set up and Configure a Salesforce Integration User
2. Set up and Configure Salesforce Permission Set
3. Install and Configure Salesforce Integration in Ruddr

The actions taken in the first two activities listed will produce a **Username** and **Security Token**, which will be used to install the Salesforce integration.

### Set up and Configure a Salesforce Integration User

Before following the steps below, please be sure to consult the Salesforce literature on [Best Practices for Configuring your Integration User](https://admin.salesforce.com/blog/2023/best-practices-for-configuring-your-integration-user). The steps outlined here will be tailored to the needs for Ruddr's Salesforce integration, but recommended best practices as documented by Salesforce should be followed.

The Salesforce integration user will be the account that Ruddr leverages for read-only access to Companies, Contacts, and Opportunities. There are four steps to creating this user:

1. Create a new user
2. Configure the user
3. Verify the new user account
4. Reset the security token for the new user account
5. Convert user to a Salesforce integration license

#### Step 1:  Create a new user

While logged in as a Salesforce administrator, navigate to the Users list page. From there, click the **New User** link / button.

#### Step 2:  Configure the user

Generally, you will configure this user as you normally would (Figure 1). Note that the email address specified for this user will need to be a valid address that you will be able to access. You may want to consider setting up a system email account for this user. You will need to verify that account, where you will receive important information in a later step.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-1.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=7008b6d12762663a3cb7817dfae24911" alt="" width="445" height="393" data-path="images/salesforce-integration-setup-1.png" />

Figure 1 - Example User Information when Setting up Salesforce Integration User

As part of the user configuration, assign a role, license, and profile (Figure 2) as if this is a "typical" user with login capability. Default or disable other settings as needed.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-2.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=c91f00e2e5463a562e0e706279495124" alt="" width="634" height="298" data-path="images/salesforce-integration-setup-2.png" />

Figure 2 - Supply a Role, License, and Profile for the New Salesforce Integration User

#### Step 3:  Verify new user account

Once you have created the user, Salesforce will send an email (Figure 3) to the address specified for that user. To verify the account, access the email inbox provided in Step 2. Click the **Verify Account** link in the verification email from Salesforce.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-3.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=82ebf506221b573aa6391f11aff69365" alt="" width="582" height="446" data-path="images/salesforce-integration-setup-3.png" />

Figure 3 - Click the **Verify Account** Link in the Verification Email to Activate the New Integration User

Upon clicking the **Verify Account** link, you will be prompted to enter a new password (Figure 4). Create a new password for the account. Ensure that this password is a secure password, as it will be used to in the connection to Salesforce from Ruddr as part of the Salesforce integration.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-4.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=a66c60d9542b1a7086bb57303f59d510" alt="" width="496" height="394" data-path="images/salesforce-integration-setup-4.png" />

Figure 4 - Salesforce will Prompt for a New Password Once the New User Account is Verified

#### Step 4: Reset the security token for the new user account

Once you have provided a new password for the new user and are logged into Salesforce with that account, you will need to reset the security token for the account.

Navigate to *My Settings > Personal > Reset My Security Token* (Figure 5). From here, click the **Reset Security Token** button on that page.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-5.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=a41987d47bcd1b0ca8a3a2380ad434ab" alt="" width="710" height="618" data-path="images/salesforce-integration-setup-5.png" />

Figure 5 - Reset the Security Token for the Integration User Account

A new token will be generated and sent (Figure 6) to the email address on the integration user's account. This token will used in providing credentials to Ruddr when installing the Salesforce integration.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-6.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=5cfcd55a3ac45cf673129d1e74bdaddc" alt="" width="975" height="432" data-path="images/salesforce-integration-setup-6.png" />

Figure 6 - Example Security Token from Salesforce

#### Step 5:  Convert the integration user to a Salesforce Integration license

Once you have received the new security token from Step 4, edit the user record in Salesforce (while logged in as a Salesforce administrator). Change the **User License** (Figure 7) on the user to a Salesforce Integration license. Additionally, set the **Profile** of the user to Salesforce API Only System Integrations.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-7.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=cb2ea0c5d079e389c7a0a38be31f1390" alt="" width="917" height="258" data-path="images/salesforce-integration-setup-7.png" />

Figure 7 - Specify a Salesforce Integration License for the Integration User

Applying this license will restrict the user from being able to log into Salesforce as a normal user. The user will now be limited to accessing / connecting to Salesforce via the API.

With the new user configured and a security token provided, you are now ready move on to the second activity where you will establish Salesforce permission sets for the integration user.

### Set up and Configure Salesforce Permission Set

Once the integration user has been created, you will need to assign permissions to the user such that it can access specific Salesforce data via the API. This process will also result in establishing restrictions for the user, in that you will only be providing read access to companies, contacts, and opportunities in Salesforce and any related activity data for those entities.

The four steps to complete this activity are as follows:

1. Create a new permission set
2. Configure the object settings for the permission set
3. Grant the permission set access to Salesforce activities
4. Assign the new permission set to the integration user

#### Step 1:  Create a new permission set

As a Salesforce administrator, access the Permission Sets for your Salesforce instance. Create a new permission set (Figure 8) for the Ruddr API Integration. Ensure that the permission set license is set to the Salesforce API Integration license (Figure 9) specified for the integration user in the steps above.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-8.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=7a2e93774905d6b5b59086c4c7dd5ef0" alt="" width="620" height="351" data-path="images/salesforce-integration-setup-8.png" />

Figure 8 - Create a New Permission Set for the Integration User

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-9.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=64504671425a0ec3587a08e8a9d88461" alt="" width="667" height="220" data-path="images/salesforce-integration-setup-9.png" />

Figure 9 - In Creating the Permission Set, Apply the Salesforce API Integration License

#### Step 2:  Configure the Object Settings for the new permission set

Edit the new permission set (Figure 10), selecting to manage the Object Settings for the permissions set.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-10.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=4b3cd7a160031ed82d8b31a8a6b329b0" alt="" width="693" height="470" data-path="images/salesforce-integration-setup-10.png" />

Figure 10 - Configure the Object Settings for the New Permission Set

Assign Object and Field permissions to Accounts (Figure 11), Opportunities, and Contacts to include the following for *all fields*:

* Read
* View All with Read Access

Only a subset of fields will be used for populating Ruddr data from Salesforce. However, any future enhancements to the Salesforce integration in Ruddr may include support for additional fields on the Account, Opportunity, and / or Contact objects, therefore it is recommended to apply the above settings for all fields on these objects.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-11.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=5b8fd09a56244db0be8fa4789c01e402" alt="" width="523" height="476" data-path="images/salesforce-integration-setup-11.png" />

Figure 11 - Setting Object and Field Permissions for Accounts

#### Step 3:  Grant permission set access to Salesforce activities

Navigate to the Permission Set Overview and modify System Permissions (Figure 12) to give access to activities.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-12.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=e8dd451ececa31d10a16b2fe93d13b92" alt="" width="607" height="700" data-path="images/salesforce-integration-setup-12.png" />

Figure 12 - Access System Permissions on the Permission Set

From within the System Permissions area of the permission set, enable **Access Activities** (Figure 13).

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-13.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=e8b31ae3cfd7de840d06b1877bc8bb49" alt="" width="775" height="229" data-path="images/salesforce-integration-setup-13.png" />

Figure 13 - Grant the Permission Set the Ability to Access Activities for Accounts, Contacts, and Opportunities

#### Step 4:  Assign the permission set to the integration user

Navigate to the Permission Set Overview and click the **Manage Assignments** button (Figure 14) at the top of the overview. From here (Figure 15), you will assign the permission set to the newly created API user.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-14.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=23cb245af6f133f9e8bf466602a2eff2" alt="" width="760" height="307" data-path="images/salesforce-integration-setup-14.png" />

Figure 14 - Access the **Manage Assignments** Area of the Permission Set

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-15.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=c02b1d14f541d5613f4fec176c1a30d0" alt="" width="567" height="620" data-path="images/salesforce-integration-setup-15.png" />

Figure 15 - Assign the Permission Set to the Integration User that you Created

### Install and Configure Salesforce Integration in Ruddr

With the Salesforce API user set up and configured, with the appropriate permission set assigned, you are now ready to provide the related credentials to Ruddr to install the Salesforce integration.

#### Step 1:   Install the Salesforce Integration

As a workspace administrator in Ruddr, navigate to the Integrations area of workspace settings (Figure 16).

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-16.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=fbf3c9412da54f94f81acd85c9b3f1ba" alt="" width="174" height="290" data-path="images/salesforce-integration-setup-16.png" />

Figure 16 - Access the Integrations Area of Workspace Settings to Install the Salesforce Integration

From here, click on the **Install** button (Figure 17) found on the Salesforce tile under the available integrations. NOTE: this button will be disabled if the Ruddr [Pipeline](/pipeline/pipeline-overview) feature has not been enabled.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-17.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=dec27323ebdba894853438f3f32558ce" alt="" width="176" height="166" data-path="images/salesforce-integration-setup-17.png" />

Figure 17 - Click the **Install** Button on the Salesforce Tile to Begin the Installation

Upon clicking the **Install** button, you will be prompted (Figure 18) for the Salesforce integration user's credentials for connecting to the Salesforce API for the first time.

**NOTE:**  The security token is the token that was sent to the integration user's email account from the [Set Up and Configure a Salesforce Integration User](#set-up-and-configure-a-salesforce-integration-user) activity above.

The security passphrase that will be generated by Ruddr will be a combination of the Password and the Security Token.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-18.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=5d7edc09be39557bc6a0b424792b1316" alt="" width="656" height="544" data-path="images/salesforce-integration-setup-18.png" />

Figure 18 - Supply the Salesforce Integration User's Username and Passphrase

#### Step 2:  Configure Integration

Once connected, you will be taken to the Salesforce integration settings page in Ruddr. Here, you will configure various Sync Settings to control the data that is synced from Salesforce to Ruddr.

Click the **Change Settings** button in the Sync Settings block (Figure 19) of the settings page.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-19.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=cd224434f6e7bf3e656adfe2ca665f0a" alt="" width="975" height="431" data-path="images/salesforce-integration-setup-19.png" />

Figure 19 - Configure the Sync Settings for the Salesforce Integration

This will present the Sync Settings drawer (Figure 20), where you will be able to set the following settings:

* **Automatically Sync**: Set whether or not the Salesforce integration will automatically sync data from Salesforce to Ruddr on an interval. You can also set the **Frequency** of the sync with one of the following values.
  * Every Hour
  * Every Two Hours
  * Every Three Hours
  * Every Four Hours
  * Every Eight Hours
  * Every Twelve Hours
  * Daily
* **Start Date**: Specify the earliest Start Date from which you want to sync opportunities. Any opportunity created prior to the Start Date will not be synced.
* **Opportunity Minimums**: Any opportunities with a Probability less than the **Minimum Probability** or with an opportunity amount less than the **Minimum Amount** will not be synced.
* **Opportunity Types**: Any opportunities with the selected opportunity types will be synced. These opportunity types are based on the types in your Salesforce instance.
* **Pipelines:** Ruddr supports multiple pipelines and you can choose whether or not you want all Salesforce opportunities to be associated with a single, default pipeline ("One Pipeline") in Ruddr or if you would like to split Salesforce Sales Processes into separate Ruddr pipelines ("Split Pipeline"). Any time you select an additional pipeline in the settings, you will want to [follow this guidance](#multiple-salesforce-pipelines).
* **Imported Member Availability:** Ruddr will create inactive members in Ruddr as needed to support various fields on pipeline entities, including Contact Owner, Company Owner, and Opportunity Owner. Specify whether you want these inactive members to be created with the workspace default [capacity](/workspace-administration/member-profile#capacity-periods) or without a capacity ("No Availability").

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-20.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=24cd764a45854094b9d23ab5718f4e42" alt="" width="588" height="1108" data-path="images/salesforce-integration-setup-20.png" />

Figure 20 - Configure the Sync Settings for the Salesforce Integration

##### Multiple Salesforce Pipelines

If, at any time, you opt to either sync opportunities with multiple pipelines (selecting "Split Pipeline" in the **Pipelines** section of the integration settings) or include an additional Salesforce sales process for synchronization, you will need to select that sales process (Figure 21) from the settings drawer (Figure 20) within the Salesforce integrations area in Ruddr and save the settings.

Then, you will need to immediately [run a manual, full synchronization](#step-3-manually-run-a-full-salesforce-synchronization) to ensure that the additional pipeline's settings, custom data, and sales data are synched for the first time.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-21.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=0e6aa6671d14e48a850ba9329f65deb6" alt="" width="600" height="224" data-path="images/salesforce-integration-setup-21.png" />

Figure 21 - Specify the Salesforce Sales Process(s) to Sync as Pipelines in Ruddr

#### Step 3:  Manually Run a Full Salesforce Synchronization

Once you have specified the various sync settings, click the **New Manual Sync** button found on the Sync Settings block (Figure 19) of the integrations settings page.

This will prompt you (Figure 22) to select whether or not you wish to run a **Full synchronization**, which will fetch all company, contact, opportunity, and activity data going back to the Start Date that you specified in Sync Settings in Step 2.

Once the initial, full synchronization has been run, you will be able to leave the **Full synchronization** setting unchecked, which will result in an incremental sync that will only bring over any updates since the most recent, successful sync was completed.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-22.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=5eec387f53fcf5830f084b1fecbc9008" alt="" width="975" height="488" data-path="images/salesforce-integration-setup-22.png" />

Figure 22 - Execute a Manual, Full Synchronization as a First Sync of Salesforce Data

#### Step 4:  Review the Sync Results Log

For both Automatic and Manual syncs, Ruddr will provide a log of the synchronization results, which can be accessed from the Latest Sync Results section (Figure 23) on the Salesforce integration settings page.

<img src="https://mintcdn.com/ruddr-help/44l0N8vZRnXcmI0H/images/salesforce-integration-setup-23.png?fit=max&auto=format&n=44l0N8vZRnXcmI0H&q=85&s=10c3589463edc0b2b2e8f98573edd8d1" alt="" width="968" height="460" data-path="images/salesforce-integration-setup-23.png" />

Figure 23 - Ruddr Provides Log Files from Automatic and Manual Syncs
