This article contains the following sections:



Overview


The Salesforce Connector App integrates with Freshdesk, providing agents and admins with data from your CRM.

The app includes two components:

1. An inbox view that displays customer details from Salesforce using their email ID.

2. A data sync feature powered by the Connector App add-on.


Installation

To setup the Salesforce Connector app, follow these steps:

  1. Create a Connected app in Salesforce.
  2. Install the Salesforce Connector app in Freshdesk.

1. Create a Connected App in Salesforce

To install the Salesforce Connector App, create a Connected app in Salesforce. To do this,

  1. Log in to your Salesforce account.

  2. Click on the gear icon (⚙️) in the top right corner and select "Setup."

  3. In the left sidebar, under the "Platform Tools" section, click on "Apps" and then select "App Manager."

  4. Click the "New Connected App" button in the top right corner.

  5. Provide details like the Connected App Name, API Name, and Contact Email.

  6. Check the "Enable OAuth Settings" checkbox, and enter the callback URL as https://oauth.freshdev.io/auth/callback

  7. Add the OAuth scopes required for accessing Salesforce details through API. If you are unsure, give access to all scopes. The app uses only the necessary scopes.

  8. Enable the following checkboxes:

    • Require Secret for Refresh Token Flow

    • Enable client credentials flow

    • Enable authorization code and credentials flow

    • Enable Token Exchange Flow

    • Require Secret for Token Exchange Flow

    • Disable Refresh Token Rotation

    • Set session timeout value as None

  9. Ensure you disable the 'Require proof key for code exchange' checkbox



2. Install the Salesforce App in Freshdesk

To install the Salesforce Connector App on Freshdesk, go to the Freshdesk marketplace by navigating to Admin -> Apps and search for ‘Salesforce Connector App’.


Once you click Install, you will be prompted to enter your Salesforce app credentials.

  1. Enter your Salesforce URL in the following format: acme.my.salesforce.com.
  2. Input your Salesforce Consumer ID and Consumer Secret that you got in the previous step from your Salesforce connected app.
  3. Enter your Freshdesk domain. Enter the URL in the format: yourcompany.freshdesk.com.

  4. Enter an admin Freshdesk API key. 

    1. To get this, Click on your profile picture on the top right and select 'Profile Settings.' 

    2. The ‘View API key’ button is available in the sidebar on the right. 

    3. Click on it and complete the captcha verification.

  5. Select the agents who will have access to the Salesforce configuration.

  6. Click 'install'. Once the app installation is complete, navigate to the full-page app on the left navigation bar.


Configuring the Salesforce widget

  1. Choose the specific Salesforce fields you wish to display in Freshdesk.

  2. Decide if agents should have the capability to create duplicate records of existing Salesforce entries.

  3. Hit ‘Save Settings,’ and the Salesforce details of a contact based on the email ID will appear in the widget. 



Features of the Salesforce widget app

1. View Salesforce Information:

  • Access comprehensive information about leads and contacts.

  • Get insights into account details.

  • View associated Tasks, Cases, and Opportunity information.


2. Create Salesforce Records:

Directly from the ticket details page, agents can create:

  • Lead & Contact records.

  • Tasks, Cases, and Opportunities.



Configuring data sync

Before you configure sync, ensure you do not have any other version of the Salesforce app installed in your account.


To synchronize data between Salesforce and Freshdesk, go to the 'Data sync' tab in the full-page app. This feature is powered by the 'Connector apps add-on.' For pricing information, refer to the section below.

  1. Authenticate the Salesforce account you want to synchronize data with. You have the option to connect either your sandbox or active account.

  2. You will find a tab for recipes. Recipes are workflows that dictate the flow and direction of data.

  3. Choose the direction of data flow based on your requirements:

    1. One way - From Salesforce to Freshdesk

    2. One way - From Freshdesk to Salesforce

    3. Two-way - Sync between both Salesforce and Freshdesk

  4. After choosing the direction, relevant recipes will appear. You can currently sync your contact and account information between Salesforce and Freshdesk. 



  1. Determine which fields you want to sync. 


Salesforce to Freshdesk:

Contacts:

Step 1: Choose from when the recipe should pick up events. By default this is set to 1 hour. You can choose a date further back but please note that the further you go back to get updates, the more tasks you will consume


Step 2: Navigate to Step 5 of the recipe. Map the Account fields in Salesforce from Step 1 of the recipe to the Company field in Freshdesk. This ensures that contacts that have companies not present in Freshdesk are created




Step 3: In Step 6 of the recipe, choose the unique field based on which you want to search contacts based on. This can be any of the default unique fields on Freshdesk (Unique external ID, email ID, Twitter ID, Phone numbers) or custom fields. By default, this value is mapped to email.


To see how to construct this query, refer to the Filter API documentation in Freshdesk - https://developers.freshdesk.com/api/#filter_contacts




Step 4: In step 8 of the recipe, map contact fields from Step 1. This step updates Salesforce contacts that already exist in Freshdesk. Ensure all mandatory fields from your Freshdesk account have an equivalent field mapped from Salesforce. 




Step 5: In step 11 of the recipe, map contact fields from Step 1. These steps create Salesforce contacts that don’t exist in Freshdesk. Ensure all mandatory fields from your Freshdesk account have an equivalent field mapped from Salesforce




Companies:

The unique identifier is companies is the “Name of the company’


Step 1: Choose from when the recipe should pick up events. By default this is set to 1 hour. You can choose a date further back but please note that the further you go back to get updates, the more tasks you will consume




Step 2: Update Step 4 & 6 of the recipes by mapping Salesforce fields from step 1 of the recipe to Freshdesk fields




Step 3: In Step 6 of the recipe, choose the unique field based on which you want to search contacts based on. This can be any of the default unique fields on Freshdesk (Unique external ID, email ID, Twitter ID, Phone numbers) or custom fields. By default, this value is mapped to email.


To see how to construct this query, refer to the Filter API documentation in Freshdesk - https://developers.freshdesk.com/api/#filter_contacts


Freshdesk to Salesforce:


Contacts:

In your Salesforce account, create a field called ‘Freshdesk Contact ID’ under the Contact object


Step 1: Choose from when the recipe should pick up events from. By default this is set to 1 hour. You can choose a date further back but please note that the further you go back to get updates, the more tasks you will consume


Step 2: Navigate to step 4 of the recipe. Map the Account fields in Freshdesk from Step 3 of the recipe to Company fields in Freshdesk. This ensures that contacts that have companies not present in Salesforce are created. The lookup field for Accounts will be the Account name.




Step 3: In Step 5 of the recipe, map the Freshdesk fields to Salesforce fields. You can configure the field which will act as the primary key. This means the recipe will search whether a contact on Salesforce exists with that value. If it’s present, it will get updated, if not a new contact will be created. By default the primary key will be set as email ID   





Companies:


Step 1: Choose from when the recipe should pick up events from. By default this is set to 1 hour. You can choose a date further back but please note that the further you go back to get updates, the more tasks you will consume


Step 2: Map the fields from Freshdesk to Salesforce



Ensure these fields are present in the destination product where you're syncing the data.

  1. After completing the configuration, click on 'Test recipe' to verify that the data is flowing smoothly.

  2. If the data flows without any issues, enable the recipe's toggle to start. 

  3. The dashboard will display the number of successful versus failed jobs, as well as the tasks consumed.

  4. If you want to modify the configured Salesforce account/authenticate with another user’s credentials, you can do so in the Account section.

Pricing

The Connector app add-on is a paid add-on, priced at $80 per 5000 tasks. These tasks will align with your billing cycle. For example, tasks expire monthly if you're on the monthly billing cycle or at the end of the year if you're on the annual plan.


To purchase the add-on, navigate to Admin > Plans and Billing. Then, select the number of Connector App Task Packs you wish to purchase. Please note that you will be able to purchase the add-on only once you have an active subscription on Freshdesk


How are tasks calculated?

Every action block in the recipe constitutes a task. 


The table below shows the task consumption based on the entity and direction of sync. 


Sync direction

Entity

Number of tasks

Freshdesk to Salesforce

Create/Update Contact [No Company]

1

Create/Update Contact with Company [Company already exists in Salesforce]

3

Create/Update Company

1

Salesforce to Freshdesk

Create Contact [No Account]

2

Update Contact [No Account]


2

New/Updated Contact [Account exists in Freshdesk]

3

New/Updated Contact [Account does not exist in Freshdesk]

4