How to Integrate Freshdesk with Salesforce
Connecting Freshdesk and Salesforce means your support agents can see who they're talking to — the account, the open opportunities, the contract tier — without alt-tabbing into a CRM they may not even have a seat for. Freshworks ships a native Salesforce Connector app that does two distinct jobs: it surfaces Salesforce records inside the ticket sidebar, and, with a paid add-on, it keeps contact and account data in sync between the two systems. This guide walks through installing the app, wiring up the Salesforce credentials, choosing a sync direction, and mapping fields, and it stays honest about the one thing most people assume the native connector does but it doesn't: sync tickets to Salesforce Cases.
Native app vs middleware vs Zapier: pick the right tool first
Before you install anything, be clear about what you actually need to move between the two platforms, because that determines which route to take.
| Approach | Best for | Sync direction | Tickets ↔ Cases? |
|---|---|---|---|
| Salesforce Connector app (native, Freshworks) | Viewing CRM data in tickets + contact/account sync | One-way either direction, or two-way | No — contacts and accounts only |
| Middleware (e.g. Exalate) | Full bidirectional ticket ↔ case sync with field-level control | Configurable two-way | Yes |
| Zapier / iPaaS | Simple trigger-based automations (new ticket → new lead) | One-way per Zap | Only what you build, record-by-record |
The native connector is free to view data and paid to sync it, and it's the right starting point for most teams. Reach for middleware only when you genuinely need Freshdesk tickets and Salesforce Cases to mirror each other, which the native app does not do. If your goal is workflow automation rather than record mirroring, you may be better served by automating Freshdesk with AI than by wiring a CRM sync at all.
Step 1: Install the Salesforce Connector app
The native integration lives in the Freshworks Marketplace. Per Freshworks' Salesforce Connector app documentation, it's a Freshworks-verified app (currently version 8.0, with 200+ installs) supported on both Freshdesk and Freshdesk Omni.
- Go to Admin → Apps in your Freshdesk account.
- Search for "Salesforce Connector App" and open the listing.
- Click Install.
The widget itself — the part that shows Salesforce data inside a ticket — is available on the Growth, Pro, and Enterprise plans, not the Free tier. Installing the app is the easy part; the credentials are where teams get stuck.
Step 2: Connect your Salesforce account
The connector authenticates through a Salesforce Connected App, which you (or your Salesforce admin) create on the Salesforce side to generate the OAuth credentials. During install, Freshdesk asks for five things:
- Salesforce URL, in the form
acme.my.salesforce.com. - Consumer ID (also called the Consumer Key) from your Salesforce Connected App.
- Consumer Secret from the same Connected App.
- Freshdesk domain, in the form
yourcompany.freshdesk.com. - Freshdesk API key for an admin account, found under Profile Settings → View API key.
You then choose which agents get access to the widget, and click Install. This is the first place the integration crosses an account boundary: creating the Connected App and finding the Consumer ID/Secret requires Salesforce admin access, not just a Freshdesk one. If you don't own the Salesforce org, this step needs your CRM administrator.
Step 3: See Salesforce data inside the ticket
Once connected, the widget renders in the ticket detail view. It surfaces the matched Lead and Contact information, the associated Account, and the related Tasks, Cases, and Opportunities for that record. Agents can also create new Leads, Contacts, Tasks, Cases, and Opportunities in Salesforce directly from a Freshdesk ticket — a genuinely useful bit of two-way action even before you turn on any background sync.
Worth flagging clearly: the "Cases" and "Tasks" the widget shows and creates are Salesforce objects, not Freshdesk tickets. Displaying a Salesforce Case in the sidebar is not the same as syncing your Freshdesk ticket into Salesforce. That distinction trips up a lot of first-time setups.
Step 4: Turn on data sync with Recipes
Viewing data is free; keeping records in step is not. Background sync runs through Recipes and requires the Connector apps add-on, a paid service. Per the same Freshworks documentation, the add-on is billed at $80 per 5,000 tasks and is purchased under Admin → Plans and Billing. (Confirm the current rate against your own billing screen, since add-on pricing changes.)
A Recipe is a workflow that defines the flow and direction of data. When you build one, you choose a direction:
- One way — from Salesforce to Freshdesk (CRM is the source of truth).
- One way — from Freshdesk to Salesforce (support captures new contacts).
- Two-way — sync between both (records mirror each other).
Pick the direction deliberately. Two-way sync feels tidy but can create loops and clobber edits if both sides can change the same field; most teams are better served by a clear one-way flow from whichever system is authoritative for that data.
Step 5: Map your fields
Inside the Recipe you decide which fields move and how they line up. The core rule from the docs: you map fields from the source to the destination, and each mapped field must already exist in the destination — Freshdesk won't invent a Salesforce field for you, or vice versa. So before mapping, make sure the target field exists on the other side.
You also set the unique field used to match an existing record instead of creating a duplicate. On the Freshdesk side this can be the external ID, email, Twitter ID, or phone — and by default it's mapped to email. Email is the pragmatic default, but if your contacts share addresses (shared inboxes, role accounts), pick a genuinely unique key like external ID to avoid merges you didn't intend.
A sensible field-mapping starting point:
- Match on: email (or external ID for higher precision).
- Sync: name, company/account, phone — the fields agents actually read.
- Leave out: free-text notes and status fields that each system owns differently, which are the usual source of sync conflicts.
The honest limits — and where an AI layer picks up
The native connector is a well-built, Freshworks-verified integration, and for its actual job — putting CRM context in front of an agent and keeping contacts and accounts aligned — it does that job cleanly. But it's important to be clear-eyed about its edges.
It syncs contacts and accounts, not tickets. The single biggest misconception is that the native connector will mirror Freshdesk tickets into Salesforce Cases. It won't. Its sync scope is contact and account data. If you need true ticket ↔ case bidirectional sync — status, comments, attachments flowing both ways — you're into middleware territory (Exalate, Workato, or similar), which the Exalate team documents in their Freshdesk–Salesforce integration guide.
Sync is a paid add-on. The in-ticket widget is included on Growth and above, but the background data sync costs extra on a per-task basis. For a low-volume team that just wants to see Salesforce data, that's fine; for high-volume two-way sync, model the cost first.
It crosses account boundaries. The Salesforce Connected App and its OAuth credentials require Salesforce admin access. If support and sales are different orgs with different admins, expect a coordination step, not a five-minute self-serve install.
And none of this changes the core reality of support: even with Salesforce data sitting in the sidebar, an agent still has to read every ticket, interpret it, and write the reply. The integration surfaces context; it doesn't act on it. This is the seam where an AI agent layer fits — and it's worth understanding the build-versus-buy tradeoff before you reach for one. The broader category of AI agents for customer service exists to do exactly the reasoning-and-writing work a data connector can't.
Macha is one such layer: it runs on top of the Freshdesk you already use as a native connector — it does not replace Freshdesk, and it isn't a CRM. You connect Macha to Freshdesk with your subdomain and API key, and it reads and writes the same tickets your Salesforce connector enriches: reading the customer's actual question, drafting a grounded reply, and — where you need live account or order data mid-conversation — calling out to an external system through a custom tool that turns a REST API (including a Salesforce endpoint) into something an agent can query in the moment, rather than waiting for a batch sync. Macha's connector is for Freshdesk specifically — not Freshchat, Freshservice, or Freshcaller — and credits are consumed per AI action, not per resolution; the pricing page has the breakdown.
The clean division of labour: let the Salesforce Connector keep contacts and accounts aligned and put CRM context in the sidebar, and layer an agent on top for the part a sync can't do — reading the ticket and writing the answer.
FAQ
Does the native Freshdesk Salesforce integration sync tickets to Salesforce Cases? No. The Salesforce Connector app syncs contact and account data only. It can display and create Salesforce Cases from a ticket, but it does not mirror your Freshdesk tickets into Salesforce Cases. For full ticket ↔ case bidirectional sync you need middleware such as Exalate.
Where do I install the Salesforce Connector app? In Freshdesk, go to Admin → Apps, search for "Salesforce Connector App," and click Install. You'll then supply your Salesforce URL, a Consumer ID and Secret from a Salesforce Connected App, your Freshdesk domain, and an admin Freshdesk API key.
Is the Freshdesk Salesforce integration free? The in-ticket widget is available on the Growth, Pro, and Enterprise plans at no extra charge. Background data sync requires the paid Connector apps add-on, documented at $80 per 5,000 tasks — confirm the current rate on your Plans and Billing screen.
Which direction does the sync run? You choose per Recipe: one-way Salesforce → Freshdesk, one-way Freshdesk → Salesforce, or two-way between both. Records are matched on a unique field that defaults to email.
Can I add AI to Freshdesk without replacing Salesforce or Freshdesk? Yes. An AI agent layer like Macha connects to Freshdesk as a native connector and runs on top of your existing help desk — it doesn't replace Freshdesk or your CRM. It reads tickets and drafts grounded replies, and can pull live account data via a custom tool, while Salesforce stays your system of record for customer data.
Ready to put the CRM context your agents can see to actual work? Start a free trial of Macha and connect it to your Freshdesk in minutes.
Add AI agents to your Freshdesk
Macha resolves tickets end to end on Freshdesk — no migration, no code.
Shopify
Stripe
Slack
Notion
Google Workspace
Confluence

