The first step in the process of getting Magento communicating with Zendesk is to install and configure the Zendesk extension for Magento. This extension provides functionality inside Magento and also provides an API for the Magento App to access customer information.
Prerequisites
- Magento Community v1.7+ or Magento Enterprise v1.9+ with full administrator rights
- PHP 5.5+
- Your Magento server is using HTTPS - HTTP is not supported
- Ensure your firewall is configured to allow Zendesk access. See Configuring your firewall for use with Zendesk for details
- Ensure calls to the Extension API endpoints (zendesk/api/customers/ and zendesk/api/orders/) do not have redirects applied by your network, CDN or server configuration
Install the extension
The Zendesk extension is currently not available in Magento Marketplace. Please download the latest version of the Magento extension (version 2.4.0) from Github
Manually upload the extension
- Download the Zendesk extension for Magento from GitHub .
- Using FTP or SSH access, extract the contents of the src directory into your Magento root directory.
- Clear the Magento cache:
- Log in to Magento admin.
- Navigate to System > Cache Management .
- Click Flush Magento Cache .
- Log out of Magento admin.
- Log in to Magento admin.
- Navigate to System > Configuration > Zendesk .
Set up permissions
If you have custom roles setup on your Magento admin. You must select the correct permissions these roles have on the extension.
- Navigate to the Roles page by going to System > Configuration > Permissions > Roles .
- Select the role you wish to set permissions for.
- Select Role Resources on the lefthand tabs.
- Choose what permissions to grant the role.
- Zendesk Dashboard - gives the role access to all the extension admin features
- Dashboard - gives the role access to the ticket dashboard
- Bulk Actions - gives the role access to perform bulk actions on the ticket dashboard
- Create Ticket - gives the role access to create tickets
- Launch Zendesk - disabling this will hide the Launch Zendesk menu from the role users
- View Logs - gives the role access to view the API logs
Link your Magento store to your Zendesk
Now that you've got the Zendesk extension installed, you'll need to fill out some configuration settings to link it to Zendesk.
Option 1 - Using the Setup Guide
Using the setup guide is the quickest way to get everything configured. Simply click the Setup Guide button in the Setup section on the Zendesk settings page of the Magento extension.
Go through the setup guide
Select views to be displayed
Once you have gone through the setup guide, you'll be returned to the Zendesk configuration page for Magento with all the fields populated. The final step is to select the views you want to display on your Zendesk dashboards.
- Navigate to the Zendesk configuration page by selecting System > Configuration > Zendesk .
- Choose the views you want to be displayed:
- Save the configuration.
Option 2 - Manually configure the extension
If you already have a Zendesk account, you can manually configure the Magento extension by following the instructions below.
Provide general details
The first configuration to complete is the general details. This will allow Magento to communicate with Zendesk.
- Navigate to the Zendesk configuration page by selecting System > Configuration > Zendesk .
- Enter your Zendesk domain .
- Enter an agent email address and token .
A token is required because it is a more secure way of authenticating rather than storing the agent's password in Magento. To generate a token, simply log in to Zendesk and then navigate to Manage > Channels > API > Token . Copy the token and paste it into the Agent Token field. - Save the configuration.
Select views to be displayed
Once the general configuration options are saved, you need to select the views you want to be displayed in Magento.
- Navigate to the Zendesk configuration page: System > Configuration > Zendesk .
- Choose the views you want to be displayed:
- Save the configuration.
Enable single sign-on (Optional)
Either agents or end-users can authenticate with single sign-on (SSO). We recommend that you set up SSO for end-users and have agents log in natively or with Google.
- In your Zendesk, navigate to Admin > Settings > Security .
- Select the Admins & Agents or the End-users tab.
* SSO for Magento may only be used for one user type - Select the Single Sign-on (SSO) option, then select the JSON Web Token option.
- Enter a remote login URL using the one of the following conventions, depending on which users you want to enable SSO for:
Admins & Agents : http://your_site_base_url/admin/zendesk/authenticate
End-users : http://your_site_base_url/zendesk/sso/login - Enter a remote logout URL using the one of the following conventions, depending on which users you want to enable SSO for:
Admins & Agents: http://your_site_base_url/admin/zendesk/logout
End-users: http://your_site_base_url/zendesk/sso/logout - Turn on Update of external IDs .
- Copy the shared secret, switch to the Zendesk extension configuration, and paste it in the Remote Authentication Token field.
- Save the configuration.
(Please note that if you are unable to sign-in successfully when SSO is turned on, you can log in directly with Zendesk by usinghttps://YOURSITE.zendesk.com/access/normal )
Synchronize customers from Magento to Zendesk
The extension can create or update user profiles in Zendesk with existing customer account information from Magento. User fields that exist in Magento can be created in Zendesk to store additional information.
Link orders with support tickets
The Magento extension can link a support ticket to a Magento order by creating a custom text field in Zendesk.
- Create a custom text field in your Zendesk.
- Copy the custom text field ID into the Magento extension configuration.
In Zendesk, the custom text field ID is located here:
In Magento:
Note: In order to display Zendesk Support tickets in your Magento Orders views, you need to add and save the correct Order Number in this custom Order Number Field ID within the corresponding Zendesk ticket. - Save the configuration.
Enabled other features of the extension
There are some great features of the extension you can easily enable.
-
Redirect Contact Us requests to Zendesk
- Add a Web Widget to your site
-
Display a support link in your Magento store footer
Note: The 'Order View' page will display support tickets from customer(s) whose order number match with the order being viewed on this page. There may be more than one email address associated with the same order number. For this reason support tickets that correspond with more than one email address may appear in the 'Order View' page. Support tickets specific to a particular email address will be displayed in the Customer View page.
What's next?
By now you should have tickets displaying in Magento (Zendesk > Dashboard) and be able to create tickets from Magento (Zendesk > Create).
Next, you will need to install the Magento M1 Commerce - by agnoStack/Particular. from the Zendesk Marketplace. After installation, if you encounter any issues using the new app, please refer to Troubleshooting your Magento 1 Extension setup.