Personal tools
Namespaces

Variants
Actions

Zendesk For WHMCS

From ModulesGarden Wiki
(Difference between revisions)
Jump to: navigation, search
(About Zendesk For WHMCS)
 
(100 intermediate revisions by 7 users not shown)
Line 4: Line 4:
 
=About [http://www.modulesgarden.com/products/whmcs/zendesk/features Zendesk For WHMCS]=
 
=About [http://www.modulesgarden.com/products/whmcs/zendesk/features Zendesk For WHMCS]=
 
{|
 
{|
|style="padding: 10px 0px 10px 0px;"|'''Zendesk For WHMCS''' allows your customers to use a complex support system solution in your own WHMCS.<br />
+
|style="padding: 10px 0px 10px 0px;"|'''Zendesk For WHMCS''' replaces the standard WHMCS support system with the complex choice of Zendesk tools.<br />  
With our module your clients will be able to manage Zendesk tickets as if they were a part of your system.<br />
+
The module will enrich your client area with various extra features, allowing customers to e.g. fill in Zendesk ticket fields and use emojis.<br />
This product replaces a standard WHMCS client area support system with Zendesk, allowing you to easily manage all the tickets.
+
At the same time, you and your staff members will be free to monitor and manage every ticket created in WHMCS straight from within the Zendesk admin area.
 
|}
 
|}
 
<!-- fixed -->
 
<!-- fixed -->
Line 14: Line 14:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Open New Ticket
+
|style="padding: 0px 0px 0px 30px;"|✔ Open New Ticket In Chosen Department
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Open New Ticket From "Contact Us" Form
 
|}
 
|}
 
{|
 
{|
Line 20: Line 23:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Fill Out Zendesk Ticket Fields
+
|style="padding: 0px 0px 0px 30px;"|✔ Fill In Zendesk Ticket Fields
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Select Related Service
 
|}
 
|}
 
{|
 
{|
Line 33: Line 39:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Toggle SSL Verification
+
|style="padding: 0px 0px 0px 30px;"|✔ Toggle SSL Connection
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Define Available Support Departments
+
|style="padding: 0px 0px 0px 30px;"|✔ Toggle SSO For Only Verified Users
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Select Zendesk Brand
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Choose Available Support Departments  
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Choose Available Ticket Fields
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Choose Default Department For Exported Tickets
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Choose Department For "Contact Us" Tickets Opened By Visitors
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Define Client Service Field
 
|}
 
|}
 
{|
 
{|
Line 42: Line 66:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ WHMCS Clients
+
|style="padding: 0px 0px 0px 45px;"|✔ WHMCS Users
 
|}
 
|}
 
{|
 
{|
Line 48: Line 72:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Define Module Behavior
+
|style="padding: 0px 0px 0px 30px;"|✔ Check Status Of Exported Users
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Define Module Behavior:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Show Solved Tickets
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Define Order Of Replies
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Allow Shared Login Redirection
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Update Client Credentials
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Define Ticket Status Colors
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 30px;"|✔ Define Ticket Status Colors
+
|style="padding: 0px 0px 10px 30px;"|✔ View Logs
 
|}
 
|}
 
*'''Integration Features:'''
 
*'''Integration Features:'''
Line 64: Line 106:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Clients On Tickets Creation
+
|style="padding: 0px 0px 0px 45px;"|✔ Users On Tickets Creation
 
|}
 
|}
 
{|
 
{|
Line 76: Line 118:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 30px;"|✔ Convert Markdowns To HTML
+
|style="padding: 0px 0px 0px 30px;"|✔ Convert Markdowns To HTML And Emojis
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Use [https://www.modulesgarden.com/products/whmcs/multibrand Multibrand For WHMCS] Integration To:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Export Branded Tickets To Selected Departments
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Define Per Brand:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Default Department
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Contact Us Department
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Available Departments
 +
|}
 +
{|
 +
|style="padding: 0px 0px 10px 60px;"|✔ Available Ticket Fields
 
|}
 
|}
 
*'''General Info:'''
 
*'''General Info:'''
 
{|
 
{|
|style="padding: 10px 0px 0px 30px;"|✔ Custom Templates Support
+
|style="padding: 10px 0px 0px 30px;"|✔ Integrated With [https://www.modulesgarden.com/products/whmcs/multibrand Multibrand For WHMCS] - Export And Create Tickets From Each Brand To Chosen Departments
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Supports Zendesk Multibrand Feature
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Supports Zendesk Emoji - Artworks Provided By [https://www.joypixels.com// JoyPixels]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Custom Templates Support
 
|}
 
|}
 
{|
 
{|
Line 86: Line 158:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 5.4 Up To PHP 7
+
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 8.1 Back To PHP 7.4
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS Themes "Six" And "Twenty-One"
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V8.10 Back To WHMCS V8.6
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS Templates Five and Six
+
|style="padding: 0px 0px 0px 30px;"|✔ Requires ionCube Loader V12 Or Later
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 30px;"|✔ Supports WHMCS V6 and V7
+
|style="padding: 0px 0px 30px 30px;"|✔ Easy [https://www.docs.modulesgarden.com/How_To_Upgrade_WHMCS_Module Module Upgrade] To [https://www.modulesgarden.com/products/whmcs/zendesk#open-source-version Open Source Version]
 
|}
 
|}
  
 
=Installation and Configuration=
 
=Installation and Configuration=
 
{|
 
{|
|style="padding: 10px 0px 0px 0px;"|'''This tutorial will show you how to successfully install and configure Zendesk For WHMCS.''' <br />
+
|style="padding: 10px 0px 30px 0px;"|'''This tutorial will show you how to successfully install and configure [https://www.modulesgarden.com/products/whmcs/zendesk Zendesk For WHMCS.]''' <br />
 
We will guide you step by step through the whole installation and configuration process.  
 
We will guide you step by step through the whole installation and configuration process.  
 
|}
 
|}
 
==Installation==
 
==Installation==
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|'''1. Log in to your client area and download Zendesk For WHMCS.'''
+
|style="padding: 10px 0px 20px 15px;"|'''1. Log in to our client area and download Zendesk For WHMCS.'''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z1.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD1.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''2. In the downloaded file you will find two packages that support different PHP versions.'''<br/>As presented on the screen below, the first one is dedicated to PHP 7, while the second one is aimed at PHP 5.4 up to PHP 5.6.<br/>It does not apply to open source versions.<br/>
+
|style="padding: 0px 0px 15px 15px;"|'''2. In the downloaded file you might find one or two packages that support different PHP versions.'''<br/>
'' '''Note''': You can check current PHP version in your WHMCS. To do so proceed to ''' 'Utilities' → 'System' → 'PHP Info'.'''
+
In the most recent versions of the module, you will find only one package that supports PHP 7.2 and later.<br/> <!--  If you need a package for the previous versions of PHP, please [https://www.modulesgarden.com/support/ticket/general-support contact our support]. -->
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_2.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:PHP72_74.png]]
 
|}
 
|}
 +
<!--
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''3. Extract the downloaded file and choose the one with the right PHP version. Upload and extract the PHP file into the main WHMCS directory.'''<br />
+
|style="padding: 0px 0px 15px 15px;"|'''Previous updates of the module may contain two packages dedicated to various PHP versions.'''<br/>
The content of PHP version files should look like this.  
+
The first one that supports PHP 5.6 up to PHP 7.1, and the second one is addressed to PHP 7.2 up to PHP 7.4.<br/>
 +
'''''Note:''' Keep in mind that PHP versions 5.6 up to 7.1 are no longer officially supported and their security issues are not fixed or released any more. Find more info [http://php.net/supported-versions.php here].''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_2_1.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:PHP56_74.png]]
 +
|}
 +
-->
 +
{|
 +
|style="padding: 0px 0px 10px 15px;"| <!-- '' '''Important''': This situation does not affect [https://www.modulesgarden.com/products/whmcs/zendesk#open-source-version '''the open source version'''] of this module which can be applied to any PHP from version 5.6 and later.''<br/>'' --> '''Note''': You can check the current PHP version in your WHMCS. To do so, proceed to ''' 'Utilities' → 'System' → 'PHP Info'.'''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''3. Extract the package and upload its content into the main WHMCS directory. <br/>
 +
The content of the package to upload should look like this.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:ZD2.png]]
 
|}
 
|}
 
{|
 
{|
Line 126: Line 217:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_3.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD3.png]]
 
|}
 
|}
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|'''5. In order to configure your license key, you have to edit the previously renamed '' 'license.php' file. '' '''<br />
 
|style="padding: 0px 0px 15px 15px;"|'''5. In order to configure your license key, you have to edit the previously renamed '' 'license.php' file. '' '''<br />
Enter your license key between quotation marks as presented on the following screen. You can find your license key in your client area → '' 'My Products'. ''  
+
Enter your license key between quotation marks as presented on the following screen. You can find your license key in our client area → '' 'My Products'. ''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:ZD4.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''6. Now, set up the  '' 'storage' '' folder as recursively writable.'''<br />
 +
This folder is available at '' 'your_whmcs/modules/addons/Zendesk/'.''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:Z2_4.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:ZD5.png]]
 
|}
 
|}
  
 
==Activation==
 
==Activation==
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|'''6. Now, you have to activate the module in your WHMCS system.'''<br />
+
|style="padding: 10px 0px 15px 15px;"|'''7. Now, you have to activate the module in your WHMCS system.'''<br />
 
Log in to your WHMCS admin area and proceed to '' 'Setup' '' → '' 'Addon Modules'. ''<br />
 
Log in to your WHMCS admin area and proceed to '' 'Setup' '' → '' 'Addon Modules'. ''<br />
Afterwards, find '' 'Zendesk' '' and press '' 'Activate' '' button.
+
Afterwards, find '' 'Zendesk' '' and press the '' 'Activate' '' button.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_5.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD6.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''7. In the next step you need to permit access to this module.'''<br />
+
|style="padding: 0px 0px 15px 15px;"|'''8. In the next step you need to permit access to this module.'''<br />
To do so, click on '' 'Configure' '' button, tick checkboxes to assign desired admin roles.
+
To do so, click on the '' 'Configure' '' button, tick checkboxes to assign desired admin roles.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_6.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD7.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 15px;"|'''8. You have just successfully installed Zendesk For WHMCS!'''
+
|style="padding: 0px 0px 30px 15px;"|'''9. You have just successfully installed Zendesk For WHMCS!'''
 
|}
 
|}
  
 
==Configuration==
 
==Configuration==
 
{|
 
{|
|style="padding: 20px 0px 20px 15px;"|'''Now you have to configure your newly installed module.'''<br/>
+
|style="padding: 20px 0px 30px 15px;"|'''Now you have to configure your newly installed module.'''<br/>
 
Before we proceed to the configuration itself, you have to generate your API details to connect with your Zendesk account.
 
Before we proceed to the configuration itself, you have to generate your API details to connect with your Zendesk account.
 
|}
 
|}
 
===API Connection===
 
===API Connection===
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Firstly, log in to your Zendesk admin area in order to enable API access.<br />
+
|style="padding: 0px 0px 20px 15px;"|Firstly, log in to your Zendesk admin area in order to enable API access.<br />
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_8.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD8.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Go to '' 'Admin' '' → '' 'Channels:' '' '' 'API'. '' There, in '' 'Settings' '' section find '' 'Token Access' ''  and enable it.<br />
+
|style="padding: 0px 0px 15px 15px;"|Go to '' 'Admin Center' '' → '' 'Apps and integrations' '' → '' 'APIs' '' → '' 'Zendesk API'.'' There, in the '' 'Settings' '' section find '' 'Token access' ''  and enable it.<br />
Add a new token or use an existing one. Copy an active API token.<br/>
+
Add a new token or use an existing one if you already created it.<br/>
'''IMPORTANT:''' Copy and keep your API token in a safe place. You will need it in a moment to complete the configuration of the module.
+
 
 +
'' '''Important:''' Make sure to copy and store this token. It won't be shown again after you click 'Save' or leave this page.<br/>You will also need it in a moment to complete the configuration of the module.''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_9.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD9.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Now go to '' 'Settings' ''  → '' 'Security' '' section and enable '' 'Single-Sign On'. ''<br />
+
|style="padding: 0px 0px 15px 15px;"|Now go to '' 'Admin Center' ''  → '' 'Security' '' '' 'End users authentication' '' section where you can enable '' 'External authentication'.'' The action is '''optional'''.<br /> Once this option is enabled, now press the '' 'Edit' '' button as shown below. <br />
Here you can also check your remote login URL and remote logout URL.<br/> Don't forget to press '' 'Save tab', '' you will find at the bottom of the page.<br />
+
'' '''Note:''' Thanks to this feature, when clients go to the ticket URL that leads directly to the Zendesk panel (e.g. from the Zendesk email notification), they will be redirected first to your WHMCS,<br/>and after logging in, they will be again redirected and automatically logged into the Zendesk panel to view the ticket.''<br />
Scroll down to the bottom of the page and find '' 'Shared Secret' '' section. Press '' 'Regenerate' '' to get a new shared secret token or use an existing one.<br/>
+
|}
 
+
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:ZD10.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_10.png]]
+
|style="padding: 0px 0px 15px 15px;"| Once clicked, you will be redirected to the '' 'Single-Sign On' '' section where you will be able to add your remote login URL and remote logout URL. <br />They should lead to '' 'loginshare_jsonwt.php' '' file located in '' 'yourWHMCS/modules/support/Zendesk/' '' directory. For example:<br/>
 +
<pre>
 +
https://yourWHMCS.com/modules/support/Zendesk/loginshare_jsonwt.php
 +
</pre>
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Copy and keep your '' 'shared secret' '' in a safe place. We will need it in the next step.<br />
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD11.png]]
''Note that Shared secret is not required for Zendesk module to work itself. It is needed for SSO only.''
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_12.png]]
+
|style="padding: 0px 0px 20px 15px;"|Next, scroll down to the bottom of the page and find '' 'Shared Secret' '' section. Copy and keep your '' 'Shared Secret' '' in a safe place. It will be needed later.<br /> Do not forget to press '' 'Save' '' button, you will find it at the bottom of the page.<br />
 +
'' '''Note:''' The 'Shared Secret' is '''not required''' for Zendesk module to work itself. It is needed for SSO only.''
 
|}
 
|}
  
===Server Configuration===
+
===Server Settings===
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Now, that you have safely stored API and Shared Secret tokens, you may move to the second part of configuration process.<br/>
+
|style="padding: 0px 0px 15px 15px;"|Now, that you have safely stored API and Shared Secret tokens, you may move to the second part of the configuration process.<br/>
Proceed to '' 'Addons' → 'Zendesk' → 'Server Configuration', '' here you have to enter any data required to connect your WHMCS with Zendesk server.<br/><br/>
+
Proceed to '' 'Addons' → 'Zendesk' → 'Server Settings', '' this is where you have to enter any data required to connect your WHMCS with the Zendesk server.
''Note! If you have used previous versions of our product, you have to copy the tokens from your 'configuration.php' file into the addon to do the update.''
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_13.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD13.png]]
 
|}
 
|}
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Enter your Zendesk details:
 
|style="padding: 0px 0px 15px 15px;"|Enter your Zendesk details:
*'''Account Name''' - this is your subdomain e.g. in ''<nowiki>https://modulesgarden.zendesk.com</nowiki>'' your account name will be ''modulesgarden''
+
*'''Account Name''' - this is the name part of your Zendesk subdomain. E.g. in ''<nowiki>https://modulesgarden.zendesk.com</nowiki>'' your account name will be ''modulesgarden''
*'''Admin Username''' - administrator's email used to log into your Zendesk account
+
*'''Administrator Email''' - the administrator's email used to log in to your Zendesk account
*'''API Token''' - API key generated in the previous steps
+
*'''API Token''' - the API key generated in the previous steps
*'''Shared Secret Token''' - Shared Secret key generated in the previous steps
+
*'''Shared Secret Token''' - the key generated in the previous steps used for SSO
*'''Enable SSL Connection''' - check this box if you want to turn on SSL certificate verification
+
*'''SSL Connection''' - enable this option to use the secured connection with the Zendesk API
*'''Brand''' - if you have [https://support.zendesk.com/hc/en-us/articles/204108983 Zendesk Multibrand] feature enabled on your account you can choose a brand here
+
*'''Login For A Verified User''' - allows to perform the '' 'Single Sign On' '' action only for verified users
Finally, test connection, if it is successful save the changes.
+
Test the connection, to ensure that all credentials are correct, save the changes if the test ends with success.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_14.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD14.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Finally, move to '' 'Setup' → 'General Settings' → 'Support'.<br/>
+
|style="padding: 0px 0px 15px 15px;"|Next, move to '' 'Setup' → 'General Settings' → 'Support'.<br/>
There choose '' 'Zendesk' '' support module form dropdown menu. Save changes.<br/>
+
Choose '' 'Zendesk' '' support module form a dropdown menu and save changes afterwards.<br/>
''From now on, your clients will see Zendesk tickets and departments (not WHMCS).''
+
'' '''Note:''' From now on, your clients will see Zendesk tickets and departments (not the ones of WHMCS).''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_6_1.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD15.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 15px;"|'''Good job! Now your WHMCS is connected with Zendesk support system'''.
+
|style="padding: 0px 0px 30px 15px;"|'''Good job! Now your WHMCS is connected with the Zendesk support system'''.
 
|}
 
|}
  
 
=Management=
 
=Management=
 
{|
 
{|
|style="padding: 10px 0px 30px 15px;"|'''Once Zendesk For WHMCS is installed and connection configured, you can create/update your ticket departments and begin using it.'''<br />
+
|style="padding: 10px 0px 30px 15px;"|'''Once Zendesk For WHMCS is installed and the connection configured, you can either create or update your ticket departments and start using them.'''<br />
Each ticket department you create in Zendesk will be available for your customers in WHMCS client area.
+
Each ticket department you create in Zendesk will be available to your customers in the WHMCS client area.
 
|}
 
|}
 
==Settings==
 
==Settings==
Line 236: Line 338:
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|Before you start your actual work on support tickets with Zendesk For WHMCS, move again to '' 'Addons' → 'Zendesk' → 'Ticket Settings'. ''<br/>
 
|style="padding: 10px 0px 15px 15px;"|Before you start your actual work on support tickets with Zendesk For WHMCS, move again to '' 'Addons' → 'Zendesk' → 'Ticket Settings'. ''<br/>
This section of the addon allows easy and comfortable management of the way tickets are displayed in your client area, their visibility, sorting etc.
+
This section of the addon allows the easy and comfortable management of the form in which tickets are displayed in your client area, their visibility, sorting properties, etc.<br/>
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_15.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD16.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|In the first box ''''' 'Options', ''''' you may enable some basic settings that will be applied to tickets view in the client area.<br/> Let's now discuss their functionality in details:
+
|style="padding: 0px 0px 15px 15px;"|In the first box ''''' 'Options', ''''' you can enable several basic settings that will be applied to the tickets view in the client area.<br/> Let's now discuss their functionality in details:
*Show Solved Tickets - if you enable this option, all tickets no matter what status they have will be displayed on the list of the latest tickets (e.g. open/new/solved/closed tickets etc.);
+
*'''Default Department''' - choose the Zendesk department that will be selected by default for exported tickets
*Shared Login Redirection - if enabled, user is redirected to Zendesk panel after successful shared login
+
*'''Allowed Departments''' - select which of your Zendesk departments shall be available for your WHMCS clients
*Update Client Credentials - if client's email is updated in WHMCS, it's updated in Zendesk accordingly ''(name is also updated but only if email is changed)''
+
*'''Ticket Fields''' - choose which ticket fields from Zendesk panel should be displayed in the client area. <br/>Ticket fields marked as required in Zendesk panel are not visible here and will show up in the client area automatically.
*Replies Descending Order - enable this option and ticket replies will be sorted by date in descending order when viewing a ticket
+
*'''Show Solved Tickets''' - if you enable this option, all tickets, no matter what status they have, will be displayed on the list of the latest tickets (e.g. open/new/solved/closed tickets, etc.);
*Template Name - if you decide to change your current template in your WHMCS, then change it here as well. Your custom templates are also available.
+
*'''Replies Descending Order''' - enable this option to make ticket replies sorted by date in descending order when viewing a ticket
*Allowed Departments - select which of your departments from Zendesk shall be available in WHMCS ticket system
+
*'''Shared Login Redirection''' - if enabled, the user is redirected to the Zendesk panel after successfully shared login (please refer to the point 8 [https://www.docs.modulesgarden.com/Zendesk_For_WHMCS#Tips here] for more information)
 +
*'''Contact Us Integration''' - if enabled, tickets from visitors will be sent to Zendesk
 +
*'''Contact Us Department''' - select a default department for tickets sent from visitors via the "Contact Us" page.<br/> In case the '' "Contact Us Integration" '' option is disabled, a WHMCS department, selected at ''WHMCS → Setup → Mail → Presales Form Destination/Presales Contact Form Email,'' will be applied to such tickets.
 +
*'''Zendesk Brand''' - if you have [https://support.zendesk.com/hc/en-us/articles/204108983 Zendesk Multibrand] feature enabled on your account you can choose a brand here
 +
*'''Template Name''' - Change only if you want to use a custom template.<br/>Custom template files should be placed in the '' '/modules/addons/Zendesk/templates/client/default/pages/submodule/yourCustomTemplateName' '' directory
 +
*'''Client Services''' - choose the field (created in Zendesk) responsible for displaying all customer products and domains (click [https://www.docs.modulesgarden.com/Zendesk_For_WHMCS#Service_Field here] for more information)
 +
*'''Update Client Credentials''' - if enabled, each time the ID of a client's email, name or phone number is updated in WHMCS, it is updated in Zendesk accordingly.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_16.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD17.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Next to the '' 'Options' '' box you will find a box where you can assign some colors to a specific ticket status.<br/>
+
|style="padding: 0px 0px 15px 15px;"|Below the '' 'Options' '' box you will find a box where you can assign colors to a specific ticket status.<br/>
Click on the field to choose a color from the palette or type in the number of the color you like.<br/>
+
Click on the field to choose a color from the palette or type in the number of the color you like.<br/><br/>
Tickets of each status will be marked with selected colors on homepage.<br/><br/>
+
Remember to save the changes if you modify the ticket settings in any way.
Remember to save the changes if you make any changes in ticket settings.  
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_17.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD18.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Tickets of each status are now marked with selected colors on homepage.
+
|style="padding: 0px 0px 15px 15px;"|If you use [https://www.modulesgarden.com/products/whmcs/multibrand Multibrand For WHMCS], you can also define various settings for separate brands.<br/> Simply, choose the preferred brand from the dropdown menu and complete the following fields. Do not forget to save changes.  
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_18.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD18_1.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Below the '' 'Status Color' '' you will find a box where you can define what the default department for exported tickets will be.<br/>
+
|style="padding: 0px 0px 20px 15px;"|Tickets will be now marked with selected colors on the homepage according to the status they have.
You can choose from your existing Zendesk departments.<br/><br/>
+
Remember to click '' 'Save Changes' '' button before you move to another section.  
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:Z27.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD19.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|The color settings will be also viewable on your main tickets list.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:ZD20.png]]
 
|}
 
|}
  
===Zendesk===
+
===Ticket Fields===
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|You can also manage ticket fields that are available in WHMCS on a new ticket form, directly in Zendesk.<br />
 +
Move to '' 'Zendesk' → 'Admin' → 'Manage' → 'Ticket Fields'. '' On this site, you can activate, deactivate or edit any system and custom fields or add new ones. <br />
 +
For test purposes, we activated and adjusted the '' 'Priority' '' field according to our needs.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:ZD21.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|As you can see on the screen below, a new field appeared in the WHMCS client area.<br/>Edit or add ticket fields to adjust the ticket form to fit your needs perfectly.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:ZD22.png]]
 +
|}
 +
 
 +
===Service Field===
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|The '' 'Client Service' field allows your customers to specify the service they refer to when creating a ticket.<br />
 +
This can help your support teams more easily identify the problem with the service used by the client.<br/>
 +
Move to '' 'Zendesk' → 'Admin' → 'Manage' → 'Ticket Fields'. '' and press '' 'add field'. ''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:ZD41.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|There are a few types of fields to choose from. Click on the ''Text'' type to add your new ticket field.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:ZD42.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|We will now adjust the '' 'Client Service' '' field according to our needs. Firstly, you can complete an optional description.<br/>
 +
Then, select '' 'Editable for end users' '' permissions and make sure to leave the '' 'Required' '' box unchecked to keep this field optional for the clients when they open a new ticket.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:ZD43.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Once you have created your new field, you can select it as '' 'Client Service' '' in the '' 'Ticket Settings' '' section of Zendesk.<br />
 +
Do not forget to save settings.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:ZD44.png]]
 +
|}
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|You can also manage ticket fields, that are available in WHMCS on a new ticket form, directly in Zendesk.<br />
+
|style="padding: 0px 0px 20px 15px;"|As you can see on the screen below, a new field, which may help to draw the agent's attention to a specific client's service appeared in the WHMCS client area.<br/>
Move to '' 'Zendesk' → 'Admin' → 'Manage' → 'Ticket Fields'. '' On this site you can activate/deactivate/edit any system and custom fields or add new ones. <br />
+
For test purposes we activated and adjusted '' 'Priority' '' field according to our needs.
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_19.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD45.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|As you can see on the screen below, a new field appeared in WHMCS client area.<br/>Edit/add ticket fields to adjust the ticket form perfectly to your needs.
+
|style="padding: 0px 0px 20px 15px;"|Next, when the agent access the ticket in the Zendesk panel, there will be information about the service selected by the client.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:Z2_20.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:ZD54.png]]
 
|}
 
|}
  
 
==Export==
 
==Export==
 
{|
 
{|
|style="padding: 10px 0px 5px 15px;"|Our module allows to export data gathered in your WHMCS, more specifically, all the users and tickets generated before the installation of the product.<br/>
+
|style="padding: 10px 0px 30px 15px;"|Our module allows you to export data gathered in WHMCS, more specifically, all the users and tickets generated before the installation of the product.<br/>
Read the below points to learn what data can be synchronized with Zendesk and what are the possible means of such synchronizations.
+
Read the below points to learn what data can be synchronized with Zendesk and what are the possible means of such synchronization.
 
|}
 
|}
 
===Users===
 
===Users===
Line 304: Line 457:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z19.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD23.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Now, you can manually export all of the users available on the list or choose only some of them.<br/>Check boxes next to the users you are going to export and press '' 'Export' '' button as marked on the screen.
+
|style="padding: 0px 0px 15px 15px;"|Now, you can manually export all of the users available on the list or choose only some of them.<br/>Check boxes next to the users you are going to export and press the '' 'Export' '' button, marked with the red arrow on the screen.<br/>
 +
You can always check the status of the exported clients.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:ZN20.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD24.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|If a user has already been exported from WHMCS to Zendesk, they will no longer be visible on the list.<br/> All users newly added to WHMCS will be automatically synchronized with Zendesk unless otherwise stated in '' 'Synchronization Settings'.''<br/><br/>
+
|style="padding: 0px 0px 15px 15px;"|After confirming your choice, the selected users should be exported from WHMCS to Zendesk, their '' 'Status' '' field will become modified as well.<br/> All users newly added to WHMCS will be automatically synchronized with Zendesk.''<br/><br/>
After the successful export you may no longer see your users. To change the view proceed to '' 'Toggle Filters' '' to see whether the box defining the view is checked.
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z21.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:ZD25.png]]
 
|}
 
|}
 +
 +
===Tickets===
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|When the box is not checked, you will see the list of users that have been exported.
+
|style="padding: 10px 0px 15px 15px;"|The next option offered by our module is the export of tickets from WHMCS to Zendesk, proceed to '' 'Tickets Export'. ''<br/>You will see here a list of all tickets which exist in your WHMCS and have not been synchronized with Zendesk yet.
 +
Thanks to the integration with [https://www.modulesgarden.com/products/whmcs/multibrand Multibrand For WHMCS], you can also export tickets that are assigned to a particular brand. <br/> To do that, choose the proper brand from the dropdown menu.  
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:Z22.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD27.png]]
 
|}
 
|}
 
===Tickets===
 
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|The next option offered by our module is the export of tickets from WHMCS to Zendesk, proceed to '' 'Tickets Export'. ''<br/>If you are using Zendesk For WHMCS for the first time, you will see here a list of all tickets which exist in your WHMCS and have not been synchronized with Zendesk yet.
+
|style="padding: 0px 0px 15px 15px;"|Now, you can manually export all of the tickets available on the list or choose only some of them.<br/>Check boxes next to the tickets you are going to export and press '' 'Export' '' button as marked on the screen.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z23.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD28.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Now, you can manually export all of the tickets available on the list or choose only some of them.<br/>Check boxes next to the tickets you are going to export and press '' 'Export' '' button as marked on the screen.
+
|style="padding: 0px 0px 20px 15px;"|Next, confirm the default department you have chosen in the '' 'Ticket Settings' '', or select one of the other available departments.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z24.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD29.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|If a ticket has already been exported from WHMCS to Zendesk, they will no longer be visible on the list.<br/> All tickets newly created to WHMCS will be automatically synchronized with Zendesk unless otherwise stated in '' 'Synchronization Settings'.''<br/><br/>
+
|style="padding: 0px 0px 15px 15px;"|Since 2.1.0 version of the module, all exported to Zendesk tickets will have a corresponding satus. These are:
After the successful export you may no longer see your tickets. To change the view proceed to '' 'Toggle Filters' '' to see whether the box defining the view is checked.
+
*Open → Open
 +
*Closed → Closed
 +
*On Hold → On Hold
 +
*Solved → Solved
 +
*In progress → Open
 +
*Customre Reply → Open
 +
*Pending → Pending
 +
*Answered → Pending
 +
*Default → Open<br/>
 +
Prior to V2.1.0:<br/>
 +
If a ticket has already been exported from WHMCS to Zendesk, it gets an "Open" status in Zendesk.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z25.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:ZD30.png]]
 
|}
 
|}
 +
 +
==Logs==
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|When the box is not checked, you will see the list of tickets that have been exported.
+
|style="padding: 10px 0px 15px 15px;"|All module activities are recorded in '' 'Logs' ''.<br />
 +
''Note: You might have no logs visible here if there are no logged actions yet.''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:Z26.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD46.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|In case you no longer wish to see a particular log you can easily remove it.<br />
 +
Select a particular entry and click on the bin icon as presented on the screen below.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:ZD47.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|In order to delete multiple logs at the same time you can simply take advantage of the 'Mass Remove Action'.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:ZD48.png]]
 
|}
 
|}
  
 
==Support Tickets==
 
==Support Tickets==
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|Move to your Client Area. There, on your homepage, is a '' 'Recent Support Tickets' '' box. <br/>
+
|style="padding: 10px 0px 15px 15px;"|Move to your client area. There, on the homepage, a '' 'Recent Support Tickets' '' box can be found. <br/>
You will find the latest tickets available in your system. The visible tickets are marked with colors related to their current status.
+
It presents the latest tickets available in your system. The visible tickets are marked with colors related to their current status.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_21.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD31.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Now, we will create a ticket message to show the flow. Just like in case of standard WHMCS support ticket, choose department,<br> then enter subject, type in the ticket message and fill out any additional ticket fields that you feel are useful and will help you get a satisfactory answer faster.<br/>Submit the ticket.
+
|style="padding: 0px 0px 15px 15px;"|Now, we will submit a ticket to show you the complete creation flow. Just like in case of a standard WHMCS support ticket, choose the department.<br/>
 +
'' '''Note:''' For convenience, if you have only one department configured, you will be moved immediately to the ticket creation view.''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_22.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD26.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|A new ticket, sent with Zendesk For WHMCS module, is immediately visible in Zendesk admin area.  
+
|style="padding: 0px 0px 15px 15px;"|Next, enter the subject, type in the ticket message and fill in any additional ticket fields that you feel are useful and will help you quickly receive a satisfactory answer.<br/>Submit the ticket.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_23.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD32.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|A new ticket, sent with Zendesk For WHMCS module, is immediately visible in the Zendesk admin area.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:ZD33.png]]
 
|}
 
|}
 
{|
 
{|
Line 377: Line 564:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2_24.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD34.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Client has received an answer. Note that the ticket status has been updated as well.
+
|style="padding: 0px 0px 20px 15px;"|The client has received an answer. Note that the ticket status has been updated as well.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:Z2_25.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD35.png]]
 
|}
 
|}
 
<!--
 
=How To Update=
 
 
{|
 
{|
|style="padding: 20px 0px 20px 15px;"|Updating Zendesk For WHMCS to newest version is quite simple.<br />
+
|style="padding: 0px 0px 20px 15px;"|The module allows also the unlogged users to send tickets via the '' 'Contact Us' '' form.<br/> Such ticket will be delivered to a department previously defined by the admin. Please refer to the '' 'Ticket Settings' '' section [[#WHMCS|here]] to see how to configure the 'Contact Us' integration and department.
'''1. Firstly download the newest version from your client area.'''
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z1.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:ZD35_1.png]]
 
|}
 
|}
 +
===Emoji Support===
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''2. Upload and extract the module into the main WHMCS directory.'''<br />
+
|style="padding: 10px 0px 15px 15px;"|Since 2.0.0 version of the module, agents can use emojis (emoticons) without worrying that these will not be displayed to the clients in WHMCS.<br/>
Files in your WHMCS directory should look like this.
+
First, you need to enable support for them in your Zendesk Panel. <br/>
 +
Go to the '' 'Admin Center' → 'Objects and rules' → 'Tickets' → 'Settings' '' and tick the '' 'Turn on emoji text replacement' '' option.<br/>
 +
Remember to save the settings.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:Z2.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD50.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''3. Copy settings from '' 'configuration.php' '' to '' 'configuration_RENAME.php' ''.'''<br />
+
|style="padding: 0px 0px 20px 15px;"|Now, your agent can insert emojis by typing an emoji code surrounded by colons (e.g. '':smile:'').
Both files are located at '' 'your_whmcs\modules\support\zendesk' ''.<br />
+
Afterwards, remove '' 'configuration.php' '' file and rename '' 'configuration_RENAME.php' '' to '' 'configuration.php' ''.
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:Z13_1.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD51.png]]
 
|}
 
|}
-->
 
 
=Tips=
 
 
{|
 
{|
|style="padding: 10px 0px 10px 15px;"|1. If you create a custom field in Zendesk, it will also be visible in WHMCS. Custom fields need to be enabled/visible/editable_by_client.
+
|style="padding: 0px 0px 20px 15px;"|You can use a lot of different emojis. Press the '' 'Preview' '' button to see how they will look like in the ticket.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 15px;"|2. When you add '' ' |clientservice' '' at the end of the custom field title, a select with list of products and domains will show up.
+
|style="padding: 0px 0px 20px 25px;"|[[File:ZD52.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|3. Since Zendesk does not fully support WHMCS option to reopen closed tickets, '' 'Close ticket 4 days after status is set to solved' ''<br/>option is currently the only possibility to get around it. To enable configure this option proceed to ''Zendesk → Business Rules → Automations.'' <br/>Find there the option and edit it.
+
|style="padding: 0px 0px 15px 15px;"|After sending the reply, the emojis will be displayed in WHMCS to your client.<br/>
 +
'' '''Note:''' Due to the licensing issues, the appearance of emoticons used in the module is slightly different from those used by Zendesk itself.<br/>Moreover, a very small part of the emojis supported by Zendesk may not be yet included in the set used in the module. <br/>Click [https://joypixels.com/emoji/v3 here] to see the list of emojis supported by the module.''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|[[File:Z16.png]]
+
|style="padding: 0px 0px 30px 15px;"|Your customers can also use emoji codes in WHMCS, but it is not possible to preview them before sending a ticket. <br/>
 +
The workaround for this inconvenience will be presented in the near future.
 
|}
 
|}
 +
 +
=Tips=
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|Here you can configure the time until when tickets can be reopened by an answer from the client.<br/> Maximum possible time is now 672 hours (28 days).
+
|style="padding: 10px 0px 10px 15px;"|1. If you create a custom field in Zendesk, it will also be visible in WHMCS. Custom fields need to be enabled, visible and editable by client.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 15px;"|[[File:Z30.png]]
+
|style="padding: 0px 0px 15px 15px;"|2. Since Zendesk does not fully support the WHMCS option to reopen closed tickets, '' 'Close ticket 4 days after status is set to solved' ''<br/>option is currently the only available one.<br/>
 +
To enable this option, proceed to ''Zendesk → Business Rules → Automations.'' <br/>Find the option and edit it.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|4. Attachments are managed in Zendesk, therefore if you do not enable them in Zendesk, your clients will not be allowed to add any in their tickets.<br/>
+
|style="padding: 0px 0px 20px 15px;"|[[File:ZD36.png]]
To enable attachments in Zendesk please move to '' 'Zendesk' → 'Settings' → 'Tickets' → 'Attachments'.'' There enable both options:<br/>
+
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Here you can configure the time period within which the tickets can be reopened by an answer from the client.<br/>
 +
Extend the maximum time to your needs.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 15px;"|[[File:ZD37.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|3. Attachments are managed in Zendesk, therefore if you do not enable them in Zendesk, your clients will not be allowed to add them in the tickets.<br/>
 +
To enable attachments in Zendesk, please move to '' 'Zendesk' → 'Settings' → 'Tickets' → 'Attachments'.'' Then, enable both options:<br/>
 
*Customers can attach files
 
*Customers can attach files
 
*Require authentication to download
 
*Require authentication to download
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|[[File:Z17.png]]
+
|style="padding: 0px 0px 20px 15px;"|[[File:ZD38.png]]
 
|}
 
|}
 +
<!-- Nie wiem co to miało wnosić do tego:
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|In case you can see only one option, make sure you have your '' 'Help Center' '' active.
+
|style="padding: 0px 0px 20px 15px;"|If you see only one option, make sure you have your '' 'Help Center' '' active.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|[[File:Z18.png]]
+
|style="padding: 0px 0px 20px 15px;"|[[File:ZD39.png]]
 
|}
 
|}
 +
-->
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|5. If you would like to use multi brands, first make sure you have '' 'Zendesk Support multibrand' ''' option enabled in your Zendesk account.<br/>
+
|style="padding: 0px 0px 15px 15px;"|4. If you would like to use multiple brands, first make sure you have '' 'Zendesk Support Multibrand' ''' option enabled in your Zendesk account.<br/>
Go to '' 'Zendesk' → 'Settings' → 'Account' → 'Branding'.'' Note that multibrand support may require enterprise plan.
+
Go to '' 'Zendesk' → 'Settings' → 'Account' → 'Branding'.''<br/>
 +
'''Note''' that multibrand support may require the '''enterprise''' plan.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 15px;"|[[File:Z30.png]]
+
|style="padding: 0px 0px 20px 15px;"|[[File:ZD40.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|5. If you use SSO, you can still access your Zendesk panel in a normal way.<br/>
 +
Simply go to: ''[https://yoursubdomain.zendesk.com/access/normal https://'''YourZendeskSubdomain'''.zendesk.com/access/normal]'' and enter your access details.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|6. It is possible to change the name of a particular Zendesk department which is displayed while opening a ticket in the client area.<br/> All you need to do is to add the following lines to the language file. <br/>
 +
<pre> $_LANG['addonCA']['submitTicket']['ZendeskDepartmentName'] = 'NewDepartmentName'; </pre>
 +
<pre> $_LANG['ZendeskDepartmentName'] = 'NewDepartmentName'; </pre>
 +
As for example, we will change the name of the 'Feedback'  department into 'General Feedback'.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|[[File:ZD40_1.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"| We added these lines to the language file:<br/>
 +
<pre> $_LANG['addonCA']['submitTicket']['Feedback'] = 'General Feedback'; </pre>
 +
<pre> $_LANG['Feedback'] = 'General Feedback'; </pre>
 +
As a result, the name has been modified successfully.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|[[File:ZD40_2.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|[[File:ZD40_3.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|7. There is the possibility to add translations for the '' 'Ticket Fields' '' created in Zendesk. <br/>
 +
Simply, complete the below pattern by providing the field name and its translation. <br/>
 +
<pre> $_LANG['fieldName'] = "Your Translation" </pre> <br/>Here are a few ready examples: <br/>
 +
<pre> $_LANG['Related Services'] = "Saistītais pakalpojums"; </pre>
 +
<pre>$_LANG['Priority'] = "Prioritāte"; </pre>
 +
<pre>$_LANG['Request priority'] = "Pieprasījuma prioritāte"; </pre>
 +
Once ready, add them to the language file and save changes. <br/>
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|8. '' 'Shared Login Redirection' '' allows you to log in to the Zendesk panel using the URL redirection that is provided in the Zendesk panel. <br/> To find the '' 'Remote login URL' '' option, proceed to the ''Zendesk panel → Security → Single sign-on → JSON Web Token''.<br/> With this option, we can use authorization from another website to access the Zendesk panel.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|[[File:ZD40_4.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|9. Cache time of the module can be adjusted to seconds directly in the "configuration.yml" file. Open the file at: ''modules/addons/Zendesk/app/Config/configuration.yml''.<br/> The entered values are measured in seconds, if no value is entered in "cacheTime:", by default 5 minutes (300 seconds) is used.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 15px;"|[[File:ZD49_1.png]]
 +
|}
 +
 
 +
=Update Instructions=
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|An essential guidance through the process of updating the module is offered '''[https://www.docs.modulesgarden.com/How_To_Update_WHMCS_Module here]'''.<br/>
 +
Ensure successful completion of the module update by carefully following each step, thereby preventing data loss or any unforeseen issues.<br/> Additionally, you will find a current list of supplementary actions necessary for a smooth update process there.
 +
|}
 +
=Upgrade Guide=
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|Seeking a solution that offers greater flexibility, customization tailored to your precise needs, and unrestricted availability?<br/> There is an option that not only proves to be cost-effective in the long run but also includes prioritized support services, making it a truly valuable investment.<br/>
 +
 
 +
Opt for the [https://www.modulesgarden.com/products/whmcs/zendesk#open-source-version Open Source version] of your Zendesk For WHMCS module to unlock these benefits.<br/> Simply click on either the '''Get Source Code''' or '''Upgrade To Lifetime''' button found on the product's page in our client area to complete the one-step upgrade process, with a '''dedicated discount''' already applied.<br/>
 +
 
 +
Follow a [https://www.docs.modulesgarden.com/How_To_Upgrade_WHMCS_Module comprehensive guide] covering the transition process, the advantages it brings, and step-by-step instructions on what to do next after the order has been successfully finalized.
 
|}
 
|}
  
Line 459: Line 718:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|2. When you try to open a new ticket and you get error '' 'Unable to authenticate' '', this means that the user's email is already registered in Zendesk, but it's not verified yet.<br />
+
|style="padding: 0px 0px 5px 15px;"|2. When you try to open a new ticket and you get the '' 'Unable to authenticate' '' error, this means that the user's email is already registered in Zendesk, but it has not been verified yet.<br />
To solve the problem log in to your Zendesk admin area and verify the email through clicking '' 'Verify now' '' as presented on the screen below.
+
To solve the problem, log in to your Zendesk admin area and verify the email by clicking '' 'Verify now' '' as presented on the screen below.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:ZD49.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 5px 15px;"|3. If you encounter a problem when performing the export of a lot of users, make sure you are '''not''' using the Zendesk '''trial''' account.<br/>
 +
This is due to Zendesk trial account limitations, where you cannot use the API endpoint to bulk import users or organizations. A '403 Forbidden' error is returned.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 5px 15px;"|4. Some of the module elements may not reflect immediate changes made in the Zednesk panel.<br/>
 +
This is due to the use of cache to limit the number of queries to APIs.<br/>
 +
E.g. the cache refreshing time for the ticket list and replies is 30 seconds. <br/>
 +
The update of brands, ticket fields and departments can take up to 18 minutes and clients even 54 minutes.<br/>
 +
If you need the immediate cache refreshment, go to the '' 'Ticket Settings' '' or save '' 'Server Settings' '' again.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 5px 15px;"|5. If you are using the '' 'Contact Us Integration' '' option with Zendesk, you must remember to previously remove the standard WHMCS settings for this option.<br/> Move to ''WHMCS → Setup → General Settings → Mail'' and remove the '' 'Presales Form Destination' '' and '' 'Presales Contact Form Email' '' input.<br/> Otherwise, the visitor will be redirected to a login page.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 5px 15px;"|6. We do not recommend using Zendesk For WHMCS module with Resellers Center For WHMCS.<br/>
 +
Integration between the two modules is hampered due to specific features of Resellers Center For WHMCS and its individual work flow.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:Z14.png]]
+
|style="padding: 0px 0px 30px 15px;"|7. The SSO only works for end users, it cannot be enabled for the staff login attempts.
 
|}
 
|}

Latest revision as of 14:08, 26 April 2024

Contents

[edit] About Zendesk For WHMCS

Zendesk For WHMCS replaces the standard WHMCS support system with the complex choice of Zendesk tools.

The module will enrich your client area with various extra features, allowing customers to e.g. fill in Zendesk ticket fields and use emojis.
At the same time, you and your staff members will be free to monitor and manage every ticket created in WHMCS straight from within the Zendesk admin area.

  • Client Area Features:
✔ View Zendesk Departments
✔ Open New Ticket In Chosen Department
✔ Open New Ticket From "Contact Us" Form
✔ Manage Existing Tickets
✔ Fill In Zendesk Ticket Fields
✔ Select Related Service
✔ Attach Files To Ticket
✔ List Recent Tickets
  • Admin Area Features:
✔ Configure And Test Server Connection
✔ Toggle SSL Connection
✔ Toggle SSO For Only Verified Users
✔ Select Zendesk Brand
✔ Choose Available Support Departments
✔ Choose Available Ticket Fields
✔ Choose Default Department For Exported Tickets
✔ Choose Department For "Contact Us" Tickets Opened By Visitors
✔ Define Client Service Field
✔ Manually Export To Zendesk:
✔ WHMCS Users
✔ WHMCS Tickets
✔ Check Status Of Exported Users
✔ Define Module Behavior:
✔ Show Solved Tickets
✔ Define Order Of Replies
✔ Allow Shared Login Redirection
✔ Update Client Credentials
✔ Define Ticket Status Colors
✔ View Logs
  • Integration Features:
✔ Single Sign On (SSO) Integration
✔ Automatically Export To Zendesk:
✔ New Tickets
✔ Users On Tickets Creation
✔ Synchronize Ticket Responses Between WHMCS And Zendesk
✔ Transfer Ticket Fields Settings
✔ Transfer Attachments Settings
✔ Convert Markdowns To HTML And Emojis
✔ Use Multibrand For WHMCS Integration To:
✔ Export Branded Tickets To Selected Departments
✔ Define Per Brand:
✔ Default Department
✔ Contact Us Department
✔ Available Departments
✔ Available Ticket Fields
  • General Info:
✔ Integrated With Multibrand For WHMCS - Export And Create Tickets From Each Brand To Chosen Departments
✔ Supports Zendesk Multibrand Feature
✔ Supports Zendesk Emoji - Artworks Provided By JoyPixels
✔ Custom Templates Support
✔ Multi-Language Support
✔ Supports PHP 8.1 Back To PHP 7.4
✔ Supports WHMCS Themes "Six" And "Twenty-One"
✔ Supports WHMCS V8.10 Back To WHMCS V8.6
✔ Requires ionCube Loader V12 Or Later
✔ Easy Module Upgrade To Open Source Version

[edit] Installation and Configuration

This tutorial will show you how to successfully install and configure Zendesk For WHMCS.

We will guide you step by step through the whole installation and configuration process.

[edit] Installation

1. Log in to our client area and download Zendesk For WHMCS.
ZD1.png
2. In the downloaded file you might find one or two packages that support different PHP versions.

In the most recent versions of the module, you will find only one package that supports PHP 7.2 and later.

PHP72 74.png
Note: You can check the current PHP version in your WHMCS. To do so, proceed to 'Utilities' → 'System' → 'PHP Info'.
3. Extract the package and upload its content into the main WHMCS directory.

The content of the package to upload should look like this.

ZD2.png
4. When you install Zendesk For WHMCS for the first time you have to rename 'license_RENAME.php' file.

File is located in 'modules/addons/Zendesk/license_RENAME.php'. Rename it from 'license_RENAME.php' to 'license.php'.

ZD3.png
5. In order to configure your license key, you have to edit the previously renamed 'license.php' file.

Enter your license key between quotation marks as presented on the following screen. You can find your license key in our client area → 'My Products'.

ZD4.png
6. Now, set up the 'storage' folder as recursively writable.

This folder is available at 'your_whmcs/modules/addons/Zendesk/'.

ZD5.png

[edit] Activation

7. Now, you have to activate the module in your WHMCS system.

Log in to your WHMCS admin area and proceed to 'Setup' 'Addon Modules'.
Afterwards, find 'Zendesk' and press the 'Activate' button.

ZD6.png
8. In the next step you need to permit access to this module.

To do so, click on the 'Configure' button, tick checkboxes to assign desired admin roles.

ZD7.png
9. You have just successfully installed Zendesk For WHMCS!

[edit] Configuration

Now you have to configure your newly installed module.

Before we proceed to the configuration itself, you have to generate your API details to connect with your Zendesk account.

[edit] API Connection

Firstly, log in to your Zendesk admin area in order to enable API access.
ZD8.png
Go to 'Admin Center' 'Apps and integrations' 'APIs' 'Zendesk API'. There, in the 'Settings' section find 'Token access' and enable it.

Add a new token or use an existing one if you already created it.

Important: Make sure to copy and store this token. It won't be shown again after you click 'Save' or leave this page.
You will also need it in a moment to complete the configuration of the module.

ZD9.png
Now go to 'Admin Center' 'Security' 'End users authentication' section where you can enable 'External authentication'. The action is optional.
Once this option is enabled, now press the 'Edit' button as shown below.

Note: Thanks to this feature, when clients go to the ticket URL that leads directly to the Zendesk panel (e.g. from the Zendesk email notification), they will be redirected first to your WHMCS,
and after logging in, they will be again redirected and automatically logged into the Zendesk panel to view the ticket.

ZD10.png
Once clicked, you will be redirected to the 'Single-Sign On' section where you will be able to add your remote login URL and remote logout URL.
They should lead to 'loginshare_jsonwt.php' file located in 'yourWHMCS/modules/support/Zendesk/' directory. For example:
https://yourWHMCS.com/modules/support/Zendesk/loginshare_jsonwt.php
ZD11.png
Next, scroll down to the bottom of the page and find 'Shared Secret' section. Copy and keep your 'Shared Secret' in a safe place. It will be needed later.
Do not forget to press 'Save' button, you will find it at the bottom of the page.

Note: The 'Shared Secret' is not required for Zendesk module to work itself. It is needed for SSO only.

[edit] Server Settings

Now, that you have safely stored API and Shared Secret tokens, you may move to the second part of the configuration process.

Proceed to 'Addons' → 'Zendesk' → 'Server Settings', this is where you have to enter any data required to connect your WHMCS with the Zendesk server.

ZD13.png
Enter your Zendesk details:
  • Account Name - this is the name part of your Zendesk subdomain. E.g. in https://modulesgarden.zendesk.com your account name will be modulesgarden
  • Administrator Email - the administrator's email used to log in to your Zendesk account
  • API Token - the API key generated in the previous steps
  • Shared Secret Token - the key generated in the previous steps used for SSO
  • SSL Connection - enable this option to use the secured connection with the Zendesk API
  • Login For A Verified User - allows to perform the 'Single Sign On' action only for verified users

Test the connection, to ensure that all credentials are correct, save the changes if the test ends with success.

ZD14.png
Next, move to 'Setup' → 'General Settings' → 'Support'.

Choose 'Zendesk' support module form a dropdown menu and save changes afterwards.
Note: From now on, your clients will see Zendesk tickets and departments (not the ones of WHMCS).

ZD15.png
Good job! Now your WHMCS is connected with the Zendesk support system.

[edit] Management

Once Zendesk For WHMCS is installed and the connection configured, you can either create or update your ticket departments and start using them.

Each ticket department you create in Zendesk will be available to your customers in the WHMCS client area.

[edit] Settings

[edit] WHMCS

Before you start your actual work on support tickets with Zendesk For WHMCS, move again to 'Addons' → 'Zendesk' → 'Ticket Settings'.

This section of the addon allows the easy and comfortable management of the form in which tickets are displayed in your client area, their visibility, sorting properties, etc.

ZD16.png
In the first box 'Options', you can enable several basic settings that will be applied to the tickets view in the client area.
Let's now discuss their functionality in details:
  • Default Department - choose the Zendesk department that will be selected by default for exported tickets
  • Allowed Departments - select which of your Zendesk departments shall be available for your WHMCS clients
  • Ticket Fields - choose which ticket fields from Zendesk panel should be displayed in the client area.
    Ticket fields marked as required in Zendesk panel are not visible here and will show up in the client area automatically.
  • Show Solved Tickets - if you enable this option, all tickets, no matter what status they have, will be displayed on the list of the latest tickets (e.g. open/new/solved/closed tickets, etc.);
  • Replies Descending Order - enable this option to make ticket replies sorted by date in descending order when viewing a ticket
  • Shared Login Redirection - if enabled, the user is redirected to the Zendesk panel after successfully shared login (please refer to the point 8 here for more information)
  • Contact Us Integration - if enabled, tickets from visitors will be sent to Zendesk
  • Contact Us Department - select a default department for tickets sent from visitors via the "Contact Us" page.
    In case the "Contact Us Integration" option is disabled, a WHMCS department, selected at WHMCS → Setup → Mail → Presales Form Destination/Presales Contact Form Email, will be applied to such tickets.
  • Zendesk Brand - if you have Zendesk Multibrand feature enabled on your account you can choose a brand here
  • Template Name - Change only if you want to use a custom template.
    Custom template files should be placed in the '/modules/addons/Zendesk/templates/client/default/pages/submodule/yourCustomTemplateName' directory
  • Client Services - choose the field (created in Zendesk) responsible for displaying all customer products and domains (click here for more information)
  • Update Client Credentials - if enabled, each time the ID of a client's email, name or phone number is updated in WHMCS, it is updated in Zendesk accordingly.
ZD17.png
Below the 'Options' box you will find a box where you can assign colors to a specific ticket status.

Click on the field to choose a color from the palette or type in the number of the color you like.

Remember to save the changes if you modify the ticket settings in any way.

ZD18.png
If you use Multibrand For WHMCS, you can also define various settings for separate brands.
Simply, choose the preferred brand from the dropdown menu and complete the following fields. Do not forget to save changes.
ZD18 1.png
Tickets will be now marked with selected colors on the homepage according to the status they have.
ZD19.png
The color settings will be also viewable on your main tickets list.
ZD20.png

[edit] Ticket Fields

You can also manage ticket fields that are available in WHMCS on a new ticket form, directly in Zendesk.

Move to 'Zendesk' → 'Admin' → 'Manage' → 'Ticket Fields'. On this site, you can activate, deactivate or edit any system and custom fields or add new ones.
For test purposes, we activated and adjusted the 'Priority' field according to our needs.

ZD21.png
As you can see on the screen below, a new field appeared in the WHMCS client area.
Edit or add ticket fields to adjust the ticket form to fit your needs perfectly.
ZD22.png

[edit] Service Field

The 'Client Service' field allows your customers to specify the service they refer to when creating a ticket.

This can help your support teams more easily identify the problem with the service used by the client.
Move to 'Zendesk' → 'Admin' → 'Manage' → 'Ticket Fields'. and press 'add field'.

ZD41.png
There are a few types of fields to choose from. Click on the Text type to add your new ticket field.
ZD42.png
We will now adjust the 'Client Service' field according to our needs. Firstly, you can complete an optional description.

Then, select 'Editable for end users' permissions and make sure to leave the 'Required' box unchecked to keep this field optional for the clients when they open a new ticket.

ZD43.png
Once you have created your new field, you can select it as 'Client Service' in the 'Ticket Settings' section of Zendesk.

Do not forget to save settings.

ZD44.png
As you can see on the screen below, a new field, which may help to draw the agent's attention to a specific client's service appeared in the WHMCS client area.
ZD45.png
Next, when the agent access the ticket in the Zendesk panel, there will be information about the service selected by the client.
ZD54.png

[edit] Export

Our module allows you to export data gathered in WHMCS, more specifically, all the users and tickets generated before the installation of the product.

Read the below points to learn what data can be synchronized with Zendesk and what are the possible means of such synchronization.

[edit] Users

The first option offered by our module is the export of users from WHMCS to Zendesk, proceed to 'Users Export' .

If you are using Zendesk For WHMCS for the first time, you will see here a list of all users who exist in your WHMCS and have not been synchronized with Zendesk yet.

ZD23.png
Now, you can manually export all of the users available on the list or choose only some of them.
Check boxes next to the users you are going to export and press the 'Export' button, marked with the red arrow on the screen.

You can always check the status of the exported clients.

ZD24.png
After confirming your choice, the selected users should be exported from WHMCS to Zendesk, their 'Status' field will become modified as well.
All users newly added to WHMCS will be automatically synchronized with Zendesk.

ZD25.png

[edit] Tickets

The next option offered by our module is the export of tickets from WHMCS to Zendesk, proceed to 'Tickets Export'.
You will see here a list of all tickets which exist in your WHMCS and have not been synchronized with Zendesk yet.

Thanks to the integration with Multibrand For WHMCS, you can also export tickets that are assigned to a particular brand.
To do that, choose the proper brand from the dropdown menu.

ZD27.png
Now, you can manually export all of the tickets available on the list or choose only some of them.
Check boxes next to the tickets you are going to export and press 'Export' button as marked on the screen.
ZD28.png
Next, confirm the default department you have chosen in the 'Ticket Settings' , or select one of the other available departments.
ZD29.png
Since 2.1.0 version of the module, all exported to Zendesk tickets will have a corresponding satus. These are:
  • Open → Open
  • Closed → Closed
  • On Hold → On Hold
  • Solved → Solved
  • In progress → Open
  • Customre Reply → Open
  • Pending → Pending
  • Answered → Pending
  • Default → Open

Prior to V2.1.0:
If a ticket has already been exported from WHMCS to Zendesk, it gets an "Open" status in Zendesk.

ZD30.png

[edit] Logs

All module activities are recorded in 'Logs' .

Note: You might have no logs visible here if there are no logged actions yet.

ZD46.png
In case you no longer wish to see a particular log you can easily remove it.

Select a particular entry and click on the bin icon as presented on the screen below.

ZD47.png
In order to delete multiple logs at the same time you can simply take advantage of the 'Mass Remove Action'.
ZD48.png

[edit] Support Tickets

Move to your client area. There, on the homepage, a 'Recent Support Tickets' box can be found.

It presents the latest tickets available in your system. The visible tickets are marked with colors related to their current status.

ZD31.png
Now, we will submit a ticket to show you the complete creation flow. Just like in case of a standard WHMCS support ticket, choose the department.

Note: For convenience, if you have only one department configured, you will be moved immediately to the ticket creation view.

ZD26.png
Next, enter the subject, type in the ticket message and fill in any additional ticket fields that you feel are useful and will help you quickly receive a satisfactory answer.
Submit the ticket.
ZD32.png
A new ticket, sent with Zendesk For WHMCS module, is immediately visible in the Zendesk admin area.
ZD33.png
Do not hesitate and send a reply to this ticket.
ZD34.png
The client has received an answer. Note that the ticket status has been updated as well.
ZD35.png
The module allows also the unlogged users to send tickets via the 'Contact Us' form.
Such ticket will be delivered to a department previously defined by the admin. Please refer to the 'Ticket Settings' section here to see how to configure the 'Contact Us' integration and department.
ZD35 1.png

[edit] Emoji Support

Since 2.0.0 version of the module, agents can use emojis (emoticons) without worrying that these will not be displayed to the clients in WHMCS.

First, you need to enable support for them in your Zendesk Panel.
Go to the 'Admin Center' → 'Objects and rules' → 'Tickets' → 'Settings' and tick the 'Turn on emoji text replacement' option.
Remember to save the settings.

ZD50.png
Now, your agent can insert emojis by typing an emoji code surrounded by colons (e.g. :smile:).
ZD51.png
You can use a lot of different emojis. Press the 'Preview' button to see how they will look like in the ticket.
ZD52.png
After sending the reply, the emojis will be displayed in WHMCS to your client.

Note: Due to the licensing issues, the appearance of emoticons used in the module is slightly different from those used by Zendesk itself.
Moreover, a very small part of the emojis supported by Zendesk may not be yet included in the set used in the module.
Click here to see the list of emojis supported by the module.

Your customers can also use emoji codes in WHMCS, but it is not possible to preview them before sending a ticket.

The workaround for this inconvenience will be presented in the near future.

[edit] Tips

1. If you create a custom field in Zendesk, it will also be visible in WHMCS. Custom fields need to be enabled, visible and editable by client.
2. Since Zendesk does not fully support the WHMCS option to reopen closed tickets, 'Close ticket 4 days after status is set to solved'
option is currently the only available one.

To enable this option, proceed to Zendesk → Business Rules → Automations.
Find the option and edit it.

ZD36.png
Here you can configure the time period within which the tickets can be reopened by an answer from the client.

Extend the maximum time to your needs.

ZD37.png
3. Attachments are managed in Zendesk, therefore if you do not enable them in Zendesk, your clients will not be allowed to add them in the tickets.

To enable attachments in Zendesk, please move to 'Zendesk' → 'Settings' → 'Tickets' → 'Attachments'. Then, enable both options:

  • Customers can attach files
  • Require authentication to download
ZD38.png
4. If you would like to use multiple brands, first make sure you have 'Zendesk Support Multibrand' ' option enabled in your Zendesk account.

Go to 'Zendesk' → 'Settings' → 'Account' → 'Branding'.
Note that multibrand support may require the enterprise plan.

ZD40.png
5. If you use SSO, you can still access your Zendesk panel in a normal way.

Simply go to: https://YourZendeskSubdomain.zendesk.com/access/normal and enter your access details.

6. It is possible to change the name of a particular Zendesk department which is displayed while opening a ticket in the client area.
All you need to do is to add the following lines to the language file.
 $_LANG['addonCA']['submitTicket']['ZendeskDepartmentName'] = 'NewDepartmentName'; 
 $_LANG['ZendeskDepartmentName'] = 'NewDepartmentName'; 

As for example, we will change the name of the 'Feedback' department into 'General Feedback'.

ZD40 1.png
We added these lines to the language file:
 $_LANG['addonCA']['submitTicket']['Feedback'] = 'General Feedback'; 
 $_LANG['Feedback'] = 'General Feedback'; 

As a result, the name has been modified successfully.

ZD40 2.png
ZD40 3.png
7. There is the possibility to add translations for the 'Ticket Fields' created in Zendesk.

Simply, complete the below pattern by providing the field name and its translation.

 $_LANG['fieldName'] = "Your Translation" 

Here are a few ready examples:
 $_LANG['Related Services'] = "Saistītais pakalpojums"; 
$_LANG['Priority'] = "Prioritāte"; 
$_LANG['Request priority'] = "Pieprasījuma prioritāte"; 

Once ready, add them to the language file and save changes.

8. 'Shared Login Redirection' allows you to log in to the Zendesk panel using the URL redirection that is provided in the Zendesk panel.
To find the 'Remote login URL' option, proceed to the Zendesk panel → Security → Single sign-on → JSON Web Token.
With this option, we can use authorization from another website to access the Zendesk panel.
ZD40 4.png
9. Cache time of the module can be adjusted to seconds directly in the "configuration.yml" file. Open the file at: modules/addons/Zendesk/app/Config/configuration.yml.
The entered values are measured in seconds, if no value is entered in "cacheTime:", by default 5 minutes (300 seconds) is used.
ZD49 1.png

[edit] Update Instructions

An essential guidance through the process of updating the module is offered here.

Ensure successful completion of the module update by carefully following each step, thereby preventing data loss or any unforeseen issues.
Additionally, you will find a current list of supplementary actions necessary for a smooth update process there.

[edit] Upgrade Guide

Seeking a solution that offers greater flexibility, customization tailored to your precise needs, and unrestricted availability?
There is an option that not only proves to be cost-effective in the long run but also includes prioritized support services, making it a truly valuable investment.

Opt for the Open Source version of your Zendesk For WHMCS module to unlock these benefits.
Simply click on either the Get Source Code or Upgrade To Lifetime button found on the product's page in our client area to complete the one-step upgrade process, with a dedicated discount already applied.

Follow a comprehensive guide covering the transition process, the advantages it brings, and step-by-step instructions on what to do next after the order has been successfully finalized.

[edit] Common Problems

1. When you have problems with connection, check whether your SELinux or firewall does not block ports.
2. When you try to open a new ticket and you get the 'Unable to authenticate' error, this means that the user's email is already registered in Zendesk, but it has not been verified yet.

To solve the problem, log in to your Zendesk admin area and verify the email by clicking 'Verify now' as presented on the screen below.

ZD49.png
3. If you encounter a problem when performing the export of a lot of users, make sure you are not using the Zendesk trial account.

This is due to Zendesk trial account limitations, where you cannot use the API endpoint to bulk import users or organizations. A '403 Forbidden' error is returned.

4. Some of the module elements may not reflect immediate changes made in the Zednesk panel.

This is due to the use of cache to limit the number of queries to APIs.
E.g. the cache refreshing time for the ticket list and replies is 30 seconds.
The update of brands, ticket fields and departments can take up to 18 minutes and clients even 54 minutes.
If you need the immediate cache refreshment, go to the 'Ticket Settings' or save 'Server Settings' again.

5. If you are using the 'Contact Us Integration' option with Zendesk, you must remember to previously remove the standard WHMCS settings for this option.
Move to WHMCS → Setup → General Settings → Mail and remove the 'Presales Form Destination' and 'Presales Contact Form Email' input.
Otherwise, the visitor will be redirected to a login page.
6. We do not recommend using Zendesk For WHMCS module with Resellers Center For WHMCS.

Integration between the two modules is hampered due to specific features of Resellers Center For WHMCS and its individual work flow.

7. The SSO only works for end users, it cannot be enabled for the staff login attempts.
Navigation
WHMCS Modules
WHMCS Widgets
Translations
cPanel Modules
General
FAQ
Community
Zendesk For WHMCS