

The Zendesk for Salesforce integration connects your Salesforce accounts to Zendesk accounts. It allows Zendesk tickets to be viewed in Salesforce from an Account, Contact, Lead, or Opportunity page. You can also create and edit Zendesk tickets, and sync Salesforce accounts to Zendesk organization data.
The Zendesk for Salesforce integration is available if you are using Salesforce edition: Performance, Unlimited, Enterprise, Developer Edition (or other editions with Salesforce API rights, such as Professional with the API add-on).
You must be a Zendesk Support administrator and Salesforce administrator to set up your integration. The setup process requires performing a series of tasks:
If you need to disconnect your integration, see Disconnecting the integration.
Related information:
Checking your Salesforce session settings
The integration requires your Salesforce session settings to be not set to a locked IP address. If your session settings remain locked, your integration will be disconnected once a session expires.
To disable Salesforce sessions being locked to an IP address
- Log in to your Salesforce account.
- Click on the cog in the upper right pane, and click Setup.
- In the left navigation pane under SETTINGS > Security, select Session Settings.
- Review and ensure the Lock sessions to the IP address from which they originated checkbox is not selected.
Connecting Zendesk to Salesforce
The Admin Center is where you set up and configure your integration including the integration location. It is recommended to test the integration with your Zendesk sandbox account and Salesforce sandbox account first.
To connect Zendesk to Salesforce
- In your Zendesk Admin Center, click the Integrations icon (
) in the left sidebar.
- Click Connect next to the Salesforce integration.
- Select the Salesforce instance to set up the integration.
Note: You can only connect one Salesforce account to one Zendesk account. So if you test the integration on a sandbox account, you need to disconnect the integration and reconnect to your production account. - Click Install managed package. This opens Salesforce in a new web browser tab. The package installs a Lightning component and Visualforce component which is used for the Ticket View feature. You will be asked to log in to Salesforce if you are not already logged in. Do this in a private web browser window to ensure that there is only one active Salesforce session.
Note: We recommend selecting Install for All Users. Users who are not granted access cannot view Zendesk tickets in Salesforce. - Click Install . When the package has finished installing, click Done.
- Return to the Admin Center, accept the Built by Zendesk Terms of Use, and click Connect.
- On the Allow Access? screen, click Allow.
Setting up user access to Zendesk tickets in Salesforce
After setting up your connection between Zendesk and Salesforce, you need to define which user profiles in Salesforce can view Zendesk tickets.
To select user profiles to view Zendesk tickets
- In Salesforce, click on the cog (
) in the upper right pane, and click Setup.
- In the left navigation pane under Platform Tools, select Manage Connected Apps and click the Salesforce Integration for Zendesk app.
- Click Edit Policies.
- Under OAuth Policies, set Permitted Users to "Admin approved users are pre-authorized" and click Save. This is a required setting.
- Return to the Manage Connected Apps page, and click the Salesforce Integration for Zendesk app.
- Under Profiles, select Manage Profiles.
- Select the user profiles in Salesforce which can view Zendesk tickets. You must select the System Administrator profile. User profiles that are not selected will not be able to view Zendesk tickets.
- Click Save.
Your setup is now complete! Next, you can continue with:
Disconnecting the integration
The Zendesk for Salesforce integration can be disconnected in the Admin Center. Once disconnected, your configuration settings are still retained if you decide to set it up again. If you are setting up the integration again, you will need to enable syncing and activate the Salesforce trigger again.
- Go to your Zendesk Admin Center and click the Integrations icon (
) in the left sidebar.
- In Salesforce integration, click Configure.
- Click Disconnect in the upper right. Confirmation of the disconnection is displayed.
87 Comments
I want account fields in Salesforce to sync with custom Organization fields in Zendesk. Is this possible?
Rick Goodlaski Yes, you can use Data Sync to sync Salesforce account fields to Zendesk organisation fields (standard and custom). Data sync is explained here: https://support.zendesk.com/hc/en-us/articles/360034751534
How about updating the Salesforce account details from the Zendesk organization? Is that possible?
I'm having some issues getting the new sync to work. I have raised a ticket last week but so far not received any call back or response with help: #5122809
1. When I configure org/user and ticket sync, then logout and come back into the admin center, the org and user sync is always back to being disabled.
2. I have been able to see organizations sync and User, but no tickets are syncing. I have gone through the full setup, connected app, target activation etc and all looks good but no Cases are created.
Can someone please respond to my ticket or give assistance? We are under the gun for the Jan 30 cut off.
We are getting similar behavior. However, we are only syncing Orgs and Users, not Tickets. Both the Org and Users sync configurations disable themselves, and we haven't been able to get any Orgs or Users to sync over from SFDC to Zendesk. We have a ticket open with Tier 2. Our latest update from them contains this:
"Our Dev Team has confirmed that this is an unexpected bug and is actively investigating the issue. Our goal is to resolve this prior to the cut-off date but we cannot offer a firmed timeline"...
The subheading "Setting up user access to Zendesk tickets in Salesforce" is misleading. We skipped over that part because we won't be accessing Zendesk tickets from Salesforce via this integration, but this caused an error when we clicked "Connect" in Zendesk: "OAUTH_APP_ACCESS_DENIED: user is not admin approved to access this app".
It seems that, as a minimum, the user making the connection needs to be given access in step 9 under "Setting up user access to Zendesk tickets in Salesforce" in order for the connection to be established.
Niki Vankerk I checked on your ticket and it looks like our Customer Advocacy team replied back yesterday. Let me know if you never received that response!
Geoff Clare apologies for the confusion! I'll see if we can get the documentation updated to clarify this step more.
Cheers!
Brett Bowser I have not heard back from anyone in support, only our old account AE introducing us to the new account AE. What we need is Tier 2 support to pick up my ticket to help with the integration transition. We are having issues turning off the legacy sync and getting the ticket sync to turn on. My call on Monday was to level 1 and they indicated that Tier 2 is needed for anything Salesforce related. Jon Beck
Thanks for the update Niki!
I can confirm your ticket has been assigned to our Tier 2 support team and they will follow up once they've had a chance to dig into your issue. I've also bumped the priority of your ticket to help get eyes on it faster.
Thanks again for you patience!
I have encounter a problem. After successfully connecting to Salesforce, it will turn to connection interrupted status whenever I try to click setting to enable view of ticket etc. As the pic shows, can anyone help me?
@ソンイン ヨ
This indicates that your Salesforce session is expired. Can you please ensure that your Salesforce session settings are not locked to an IP address:
Anika Rani
Thanks for replying. I even don't have the button of "Lock sessions to the IP address from which they originated" Im using the free trial version. Perhaps it is the reason?
I too (professional version of SF) don't have a "Lock sessions to the IP address from which they originated" setting, only a domain setting.
Are there logs available with information on failed sync with this new integration? The legacy integration was quite helpful with diagnosing issues with failed record syncs. I can't find anything now and have no idea why things fail when they do :/
I faced the same disconnections issues as described above, solved by switching from a Trial SF account to a Developer SF account. Now this is working fine. Please tell me if this sloved your issues.
Does anyone know how the Ticket sync to Salesforce works in terms of the upsert? Where does ZD store the Salesforce Case Id that it has created?
I tried to create a Case manually with an existing ZenDesk Support Ticket Id expecting that to be the unique key. When I next updated the ticket in ZD, the sync created a net new Case with the same ZenDesk Support Ticket Id. When I deleted that new Case from Salesforce, subsequent updates to the ticket in ZD failed to sync.
This suggests the sync is creating the case in SF and then must store the Case ID value back in ZenDesk which it uses to find the Case for subsequent updates. When I delete the Case record in Salesforce, the ticket still had the same record Id and it tried to update the case but Salesforce won't let it update a deleted record.
I exported a list of synced Tickets with the Ticket External Id field and they are all blank. So where is that value??
I am trying to move our legacy data from the ZenDesk Ticket object in Salesforce to the Case and retain the CreatedDate value - but if ZenDesk doesn't recognize the existing ticket and always creates a duplicate, we will not be able to rely on the CreatedDate and Case Age etc metrics in Salesforce. This must be possible ... anyone?
Hi
when setting up the connection in Zendesk (with consumer key & consumer secret) i receive following error message:
Is it the Callback URL or Canvas App URL which is wrong then?
If yes, what is meant with "support domain"?
Many thanks for the right direction
Flo
florian.eschert, you need to make sure the Connected App in salesforce is matching the zendesk subdomain. So look at what your URL is when you are logged into Zendesk - for example mycompany.zendesk.com/agent/dashboard. So you need to put the 'mycompany' portion of your ZD URL into the connected App's callback and canvas URL.
https://mycompany.zendesk.com/api/services/zis/connections/oauth/callback
https://mycompany.zendesk.com/integrations/salesforce/canvas/tickets
florian.eschert -- We were also seeing the same error you were when we were initially trying to get things connected. What was happening in our case was that our Callback URL was configured with our 2nd Brand URL in Zendesk. If you attempt to connect the integration using a Brand that is not your default, it will automatically attempt to redirect the URL to your main default Brand. We had to actually edit the URL of the page, while on the error screen with the error message you posted, so it used our 2nd Brand's URL rather than the default Brand's URL.
Alternatively, you can change the Callback URL to be your default Brand's URL, connect the integration (you likely won't see the same error), and then adjust the Callback URL back to a different Brand's URL after the connection is already successfully made.
Not very intuitive... but we were able to get by that issue with either of the 2 methods above. Good luck.
We are using Salesforce integration now, but we have two different brands on Zendesk, and we need to separate the tickets of those brands on Salesforce side.
Is it possible to do that?
Hey Selçuk,
I did some digging on my end and it doesn't look like there's a way to separate branded tickets on the Salesforce side at this time. I'll be sure to pass your use case along to our Product Managers so they're aware of this need.
Let me know if you have any other questions!
Does anyone know what happens with Salesforce cases when a synced Zendesk ticket is merged or deleted? From our org it looks like nothing happens, ie the cases are left in Salesforce and not merged or deleted according to the action on the synced ticket.
How are others handling these scenarios?
HeyO Niki,
The act of merging a ticket instantly closes it on the Zendesk side. Unfortunately, triggers to notify targets don't appear to fire on tickets as they close.
To work around this limitation, I have two ideas:
I've not seen other customers run into this, but I'll also mention this to our Developers to see if there's something else they'd recommend to work around this, but hopefully one of those two potential solutions will work for you.
Thanks Dwight Bussman. How about for deletes? My customer has deleted several tickets from Zendesk but they still show in Salesforce with their most recent status. Ideally we want them deleted out of Salesforce as well or our reporting will be off.
Unfortunately, this will have the same limitation - the act of deleting a ticket does not notify any targets, which is how our integration passes information over to SFDC.
Dwight Bussman can we add that as a feature request? If this is supposed to be a sync integration, it's not complete unless it will also sync a merged ticket and deleted ticket event. At this point our 2 systems are out of sync again.
I will absolutely mark this as a feature request. I agree that having those events captured would be very helpful to preserving the ticket-to-case status parity. Hopefully we can work something out that enables this.
Dwight B. | Customer Advocate | support@zendesk.com
Hi, When I click 'Configure Settings' on Salesforce sidebar, I dont see an option to save after adding new Object. The way it's explained in this article is different from what I am seeing in my Sandbox. In our implementation, we don't want to sync Org or any data, but we only want to display Tickets data in Salesforce(which is working as expected) and Asset data from Salesforce should be displayed in Zendesk. Is it even possible, without syncing Org?
Hi Amulya,
This is a known issue that our Developers are looking into. Here are a few ways to work around this:
Please let me know if this helps you to save those settings.
Dwight Bussman - Thanks for the quickest reply.!! First option did helped, however I am not able to see the result yet due to below error. I think there is some issue with the way I am mapping the Custom Object. I will try to resolve that myself.
Failed to synchronize info. Please try again later
Also, when we map Organization data to Salesforce Account data, can we match using any other custom field in Zendesk Org instead of Organization name/Ticket Requester Email?
Please sign in to leave a comment.