Personal tools
Namespaces

Variants
Actions

Freshdesk For WHMCS

From ModulesGarden Wiki
(Difference between revisions)
Jump to: navigation, search
(About Freshdesk For WHMCS)
(About Freshdesk For WHMCS)
 
(39 intermediate revisions by 5 users not shown)
Line 32: Line 32:
 
*'''Admin Area Features:'''
 
*'''Admin Area Features:'''
 
{|
 
{|
|style="padding: 10px 0px 0px 30px;"|✔ Manually Export to Freshdesk:
+
|style="padding: 10px 0px 0px 30px;"|✔ Manually Export To Freshdesk:
 
|}
 
|}
 
{|
 
{|
Line 99: Line 99:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 30px;"|✔ Transfer Custom Ticket Statuses
+
|style="padding: 0px 0px 0px 30px;"|✔ Transfer Custom Ticket Statuses
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ View WHMCS Client Details In Freshdesk Using Widget
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Contact Details
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Services
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Domains
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Product Addons
 +
|}
 +
{|
 +
|style="padding: 0px 0px 10px 45px;"|✔ Due Invoices
 
|}
 
|}
  
 
*'''General Info:'''
 
*'''General Info:'''
 
{|
 
{|
|style="padding: 10px 0px 0px 30px;"|✔ Requires Freshdesk "Blossom" Pricing Plan Or Higher
+
|style="padding: 10px 0px 0px 30px;"|✔ Requires Freshdesk "Pro" Pricing Plan Or Higher
 
|}
 
|}
 
{|
 
{|
Line 113: Line 131:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 7.1 Up To PHP 7.4
+
|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 Template Six
+
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V8.10 Back To WHMCS V8.6
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V7.9 And Later
+
|style="padding: 0px 0px 0px 30px;"|✔ Requires ionCube Loader V12 Or Later
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 30px;"|✔ Easy Module Upgrade To [https://www.modulesgarden.com/products/whmcs/freshdesk#open-source-version Open Source Version]
+
|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/freshdesk#open-source-version Open Source Version]
 
|}
 
|}
  
Line 139: Line 160:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|'''2. In the downloaded file you might find one or two packages that support different PHP 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/>
In the most recent versions of the module, you will find only one package that supports PHP 7.1 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]. -->
+
In the most recent versions of the module, you will find only one package that supports PHP 7.4 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:PHP71_74.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:PHP74_81.png]]
 
|}
 
|}
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|'''Previous updates of the module may contain two packages dedicated to various PHP versions.'''<br/>  
 
|style="padding: 0px 0px 15px 15px;"|'''Previous updates of the module may contain two packages dedicated to various PHP versions.'''<br/>  
The first one that supports PHP 5.6 up to PHP 7.0, and the second one addressed to PHP 7.1 up to PHP 7.3.<br/>
+
The first one that supports PHP 5.6 up to PHP 7.3, and the second one addressed to PHP 7.4 up to PHP 8.1.<br/>
'''''Note:''' Keep in mind that PHP versions 5.6 up to 7.0 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].''
+
'''''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:PHP56_73.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:PHP56_74_81.png]]
 
|}
 
|}
 
{|
 
{|
Line 158: Line 179:
 
|style="padding: 0px 0px 15px 15px;"|'''3. Once you have chosen the package with the right PHP version, extract it and upload its content into the main WHMCS directory.'''<br />
 
|style="padding: 0px 0px 15px 15px;"|'''3. Once you have chosen the package with the right PHP version, extract it and upload its content into the main WHMCS directory.'''<br />
 
The content of the chosen PHP version files to upload should look like this.  
 
The content of the chosen PHP version files to upload should look like this.  
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:NF2_2.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''4. When you install Freshdesk For WHMCS for the first time you have to rename '' 'license_RENAME.php' '' file.'''<br />
 +
File is located in '' 'modules/addons/Freshdesk/license_RENAME.php'.'' Rename it from '' 'license_RENAME.php' '' to '' 'license.php'. ''
 
|}
 
|}
 
{|
 
{|
Line 163: Line 191:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''4. 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 our 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'. ''  
 
|}
 
|}
Line 170: Line 198:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''5. Now, set up the  '' 'storage' '' folder as recursively writable.'''<br />
+
|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/Freshdesk/' ''.
+
This folder is available at '' 'your_whmcs/modules/addons/Freshdesk/'.''
 
|}
 
|}
 
{|
 
{|
Line 179: Line 207:
 
==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 />
 
Afterward, find '' 'Freshdesk' '' and press the '' 'Activate' '' button.
 
Afterward, find '' 'Freshdesk' '' and press the '' 'Activate' '' button.
Line 187: Line 215:
 
|}
 
|}
 
{|
 
{|
|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 the '' 'Configure' '' button, tick checkboxes to assign desired admin roles.
 
To do so, click on the '' 'Configure' '' button, tick checkboxes to assign desired admin roles.
 
|}
 
|}
Line 194: Line 222:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 15px;"|'''8. You have just successfully installed Freshdesk For WHMCS!'''
+
|style="padding: 0px 0px 30px 15px;"|'''9. You have just successfully installed Freshdesk For WHMCS!'''
 
|}
 
|}
  
 
==Configuration==
 
==Configuration==
 
{|
 
{|
|style="padding: 20px 0px 30px 15px;"|'''Now you have to configure your newly installed module.'''<br/>
+
|style="padding: 10px 0px 30px 15px;"|'''Now you have to configure your newly installed module.'''<br/>
Before we proceed to the configuration itself, you have to log in to your Freshdesk account to find your API details.
+
Before we proceed to the configuration itself, you have to find API details to your Freshdesk account.<br/>
 +
'''''Important:''' Please be aware that a minimum Freshdesk pricing plan is ''' 'Pro'.'''<br/> If you use any lower plan, it will be impossible to successfully connect the module with the API (click [https://support.freshdesk.com/support/solutions/articles/225439-what-are-the-rate-limits-for-the-api-calls-to-freshdesk here] for more information).''
 
|}
 
|}
 
===API Connection===
 
===API Connection===
 
{|
 
{|
|style="padding: 10px 0px 20px 15px;"|Firstly, log in to your Support Portal in order to find API details.<br/>
+
|style="padding: 10px 0px 20px 15px;"|Firstly, log in to your Freshdesk portal at ''https://support.freshdesk.com/support/login.''  
<!-- w dniu 02.07.2020 ukrywam tę notkę, gdyż, Freshedk ostatnio zmienił API i działa też z tym podstawowym planem Blossom: https://support.freshdesk.com/support/solutions/articles/225439-what-are-the-rate-limits-for-the-api-calls-to-freshdesk- -->
+
<!--
+
'''''Important:''' Please be aware that a minimum Freshdesk pricing plan is '''"Garden"'''. If you use any lower plan, it will be impossible to successfully connect the module with the API.''
+
-->
+
 
|}
 
|}
 
{|
 
{|
Line 214: Line 239:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Click on your profile picture that is in the top right corner of the page and go to the '' 'Profile settings' '' section.
+
|style="padding: 0px 0px 20px 15px;"|Click on your profile picture that is in the top right corner of the page and go to the '' 'Profile Settings' '' section.
 
|}
 
|}
 
{|
 
{|
Line 221: Line 246:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|You can find your API key on the right side of the settings page.  
 
|style="padding: 0px 0px 15px 15px;"|You can find your API key on the right side of the settings page.  
Use an existing key or reset it to generate a new one. Copy an active API key.<br/>
+
Use an existing key or reset it to generate a new one. Copy the active API key.<br/>
 
'''IMPORTANT:''' Copy and keep your API key in a safe place. You will need it in a moment to complete the configuration of the module.
 
'''IMPORTANT:''' Copy and keep your API key in a safe place. You will need it in a moment to complete the configuration of the module.
 
|}
 
|}
Line 238: Line 263:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Enter your Freshdesk details:<br/>
 
|style="padding: 0px 0px 15px 15px;"|Enter your Freshdesk details:<br/>
'''Note:''' Please remember that in order to connect your WHMCS with the Freshdesk server you need to complete '' 'Administrator Username' '' and '' 'Administrator Password' '' or your '' 'API Key' ''.
+
'''Note:''' Please remember that in order to connect your WHMCS with the Freshdesk server you need to complete '' 'Administrator Username' '' and '' 'Administrator Password' '' or your '' 'API Key'.''
 
*'''Account Name''' - this is your subdomain e.g. in ''<nowiki>https://mycompany.freshdesk.com</nowiki>'', account name will be ''mycompany''
 
*'''Account Name''' - this is your subdomain e.g. in ''<nowiki>https://mycompany.freshdesk.com</nowiki>'', account name will be ''mycompany''
 
*'''API Key''' - API key found in the previous steps
 
*'''API Key''' - API key found in the previous steps
Line 244: Line 269:
 
*'''Administrator Password''' - the admin's password used to log into your Freshdesk account<br/>
 
*'''Administrator Password''' - the admin's password used to log into your Freshdesk account<br/>
 
*'''SSL''' - check this box if you want to turn on the SSL certificate verification<br/>
 
*'''SSL''' - check this box if you want to turn on the SSL certificate verification<br/>
 +
*'''Widget Authorization Password''' - use this field only if you want to use a Freshdesk widget, the widget configuration instructions are described in the next section of this [[#Freshdesk_Customer_Widget|tutorial]] <br/>
 
Finally, test the connection and, if successful, save the changes.<br/>
 
Finally, test the connection and, if successful, save the changes.<br/>
  
Line 260: Line 286:
 
{|
 
{|
 
|style="padding: 0px 0px 30px 15px;"|'''Good job! Now your WHMCS is connected with the Freshdesk support system.'''
 
|style="padding: 0px 0px 30px 15px;"|'''Good job! Now your WHMCS is connected with the Freshdesk support system.'''
 +
|}
 +
 +
===Freshdesk Customer Widget===
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|Configuration of the Freshdesk Customer Widget is '''completely optional'''. If you do not aim to use this tool, simply skip it and move directly to the [[#Management|Management]] section.<br> Freshdesk App Widget, once configured, allows to see customer's WHMCS data. <br/> The widget includes client contact details along with their owned products, domains, product addons and due invoices next to the created ticket in the Freshdesk panel, as shown in the picture below:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:NF_12_1.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"| In order to enable the widget, compete the following steps: <br/>
 +
Navigate to '' 'Addons' → 'Freshdesk' → 'Settings' → 'Server Settings' ''  in your WHMCS. Find the  '' 'Widget Authorization Password' '' field and enter your own password.<br/> This password will be used to communicate with the Freshdesk widget application.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:NF_12_2.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Next, go to https://developers.freshdesk.com, click ''' 'Log in as Developer' ''' and sign on using your Freshdesk '' 'Organization URL' '' or '' 'Account URL' '' data.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:NF_12_3.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|After a successful sign-in, press the '' 'Create App'.'' Provide any app name, next choose '' 'Custom Apps' '' type and '' 'Upload App file' '' with the archive that you will find below. <br/>
 +
 +
'''Download:''' [https://www.modulesgarden.com/client-area/dl.php?type=d&id=5491 freshdesk_widget_1.0.2.zip]
 +
 +
Proceed when you are ready.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:NF_12_4.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Now, fill out the rest of the required fields and click ''' 'Save and Publish'.''' After a few minutes (max 30), the app will be ready to run in your Freshdesk instance (the status must be '' 'Published' '').
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:NF_12_5.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Go to Freshdesk admin panel and click '' 'Admin' → 'Support Operations' → 'Apps' '' settings.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:NF_12 _6.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Find the '' 'Manage Apps'' ' button located in the top right corner and click on it.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:NF_12_6_1.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Choose '' 'Custom App' '' and press '' 'Install' '' next to the previously created app.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:NF_12_6_2.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Finally, fill out the fields according to the prompts so the application can connect to your WHMCS.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:NF_12_7.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|That's all. If all the provided data are correct, then, next time, when you open a WHMCS ticket from your Freshdesk account, you should see the customer details in the panel on the right.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:NF_12_8.png]]
 
|}
 
|}
  
Line 317: Line 410:
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|Freshdesk For WHMCS module allows the management of '' 'Customer Fields' '' created in the panel.   
 
|style="padding: 10px 0px 15px 15px;"|Freshdesk For WHMCS module allows the management of '' 'Customer Fields' '' created in the panel.   
Move to '' 'Freshdesk' → 'Admin' → 'General Settings' → 'Contact Fields'. '' On this site you can edit existing or add new custom fields to add any data on the client in their profile.<br />
+
Move to '' 'Freshdesk' → 'Admin' → 'Support Operations' → 'Customer Fields'. '' On this site you can edit existing or add new custom fields to add any data on the client in their profile.<br />
 
Edit any existing field, change behavior or add new ones.
 
Edit any existing field, change behavior or add new ones.
 
|}
 
|}
Line 331: Line 424:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|Then, move again to the addon '' 'Settings' → 'Client Fields Relations' '' to define the relations between the Freshdesk fields and the ones you have in your WHMCS.<br/>
 
|style="padding: 0px 0px 15px 15px;"|Then, move again to the addon '' 'Settings' → 'Client Fields Relations' '' to define the relations between the Freshdesk fields and the ones you have in your WHMCS.<br/>
Select from the list corresponding fields, that will be visible in the clients profile.
+
Select from the list of corresponding fields, that will be visible in the client's profile.
 
  |}
 
  |}
 
{|
 
{|
Line 348: Line 441:
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|You can also manage ticket fields, by adding fully editable ''Custom Fields'' that are available in WHMCS on a new ticket form, directly in Freshdesk.<br />
 
|style="padding: 10px 0px 15px 15px;"|You can also manage ticket fields, by adding fully editable ''Custom Fields'' that are available in WHMCS on a new ticket form, directly in Freshdesk.<br />
Move to '' 'Freshdesk' → 'Admin' → 'General Settings' → 'Ticket Fields'. '' There follow the Freshdesk instructions to edit or add new custom fields to collect the data when a client submits a ticket.
+
Move to '' 'Freshdesk' → 'Admin' → 'Workflows' → 'Ticket Fields'. '' There follow the Freshdesk instructions to edit or add new custom fields to collect the data when a client submits a ticket.
 
|}
 
|}
 
{|
 
{|
Line 380: Line 473:
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|You can also manage custom ticket statuses used in Freshdesk panel.<br/>
 
|style="padding: 10px 0px 15px 15px;"|You can also manage custom ticket statuses used in Freshdesk panel.<br/>
Move again to '' 'Freshdesk' → 'Admin' → 'General Settings' → 'Ticket Fields' → 'Status' '' to add new or modify existing ticket statuses.
+
Move again to '' 'Freshdesk' → 'Admin' → 'Workflows' → 'Ticket Fields' → 'Status' '' to add new or modify existing ticket statuses.
 
|}
 
|}
 
{|
 
{|
Line 408: Line 501:
 
===Users===
 
===Users===
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|The first option offered by our module is the export of users from WHMCS to Freshdesk, proceed to '' 'Users Export' ''.<br/>
+
|style="padding: 10px 0px 15px 15px;"|The first option offered by our module is the export of users from WHMCS to Freshdesk, proceed to '' 'Users Export'.''<br/>
 
You will see here a list of all users who exist in your WHMCS and have not been synchronized with Freshdesk yet.
 
You will see here a list of all users who exist in your WHMCS and have not been synchronized with Freshdesk yet.
 
|}
 
|}
Line 442: Line 535:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|If a ticket has already been exported from WHMCS to Freshdesk, they will have a different ''Freshdesk Status'' visible on the list.<br/> All tickets newly created to WHMCS will be automatically synchronized with Freshdesk.''<br/><br/>
+
|style="padding: 0px 0px 15px 15px;"|If a ticket has already been exported from WHMCS to Freshdesk, they will have a different ''Freshdesk Status'' visible on the list.<br/> All tickets newly created to WHMCS will be automatically synchronized with Freshdesk.''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:NF_30.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:NF_30.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Is is also possible to export tickets using a CLI cron command, which can be useful when you need to export a greater number of tickets created within the selected date range.<br/> Underneath you can see a command that must be executed from you CLI to start such export. <br/>
 +
'''Please remember to adjust the date rage located at the end of the command to your personal needs first!'''
 +
 
 +
<pre>php /yourWHMCS/modules/addons/Freshdesk/cron/cron.php ExportTicket 2022-01-01 2022-12-31</pre>
 +
 
 +
'''''Important:''' Keep in mind that the provided dates at the end of the command ''(in the above example these are: 2022-01-01 2022-12-31)'' are exemplary.<br/> They indicate the beginning and ending dates of the date range within which all the created tickets shall be exported.''<br>
 +
 
 +
'''''Note:''' Keep in mind that exporting too many tickets at once can cause issues with running out of API calls per minute, that you have available in your Freshdesk plan. <br/> You can find more information about call limits [https://support.freshdesk.com/support/solutions/articles/225439-what-are-the-rate-limits-for-the-api-calls-to-freshdesk- here].''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:NF_30_1.png]]
 
|}
 
|}
  
Line 478: Line 584:
 
==Logs==
 
==Logs==
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|All module activities are recorded in '' 'Logs' ''.<br />
+
|style="padding: 10px 0px 15px 15px;"|All module activities are recorded in '' 'Logs'.''<br />
 
'''''Note:''' You might have no visible logs here if there are no logged actions yet.''
 
'''''Note:''' You might have no visible logs here if there are no logged actions yet.''
 
|}
 
|}
Line 485: Line 591:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|In case you no longer wish to see a particular log you can easily remove it. Click on the bin icon next to a selected entry as presented on the screen below.<br/> In order to delete multiple logs at the same time you can simply take advantage of the '' 'Mass Remove Action' ''.
+
|style="padding: 0px 0px 15px 15px;"|In case you no longer wish to see a particular log you can easily remove it. Click on the bin icon next to a selected entry as presented on the screen below.<br/> In order to delete multiple logs at the same time you can simply take advantage of the '' 'Mass Remove Action'.''
 
|}
 
|}
 
{|
 
{|
Line 509: Line 615:
 
|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/><br/>
 
|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/><br/>
 
While moving from the 1.0.0 version of Freshdesk, note that no data can be migrated, so the module needs to be configured from scratch.<br/>It is also advised to deactivate the older version of the addon before installing the latest one. Do not forget to reactivate it once this procedure is finished.<br/>
 
While moving from the 1.0.0 version of Freshdesk, note that no data can be migrated, so the module needs to be configured from scratch.<br/>It is also advised to deactivate the older version of the addon before installing the latest one. Do not forget to reactivate it once this procedure is finished.<br/>
However, when the module becomes successfully reconfigured, the previously submitted tickets should be visible in the client profiles.<br/><br/>
+
However, when the module becomes successfully reconfigured, the previously submitted tickets should be visible in the client profiles.
Keep in mind there is a quick and easy option in our client area that will let you upgrade the license of your module to an open source version at any time - and at a lower price!<br/>
+
|}
To take advantage of it, simply use the '''License Upgrade''' button located on the product's page and a discounted invoice will be generated automatically.<br/>
+
=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/freshdesk#open-source-version Open Source version] of your Freshdesk 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 520: Line 632:
 
{|
 
{|
 
|style="padding: 0px 0px 10px 15px;"|2. In case it is taking too much time for new tickets to appear, keep in mind that the module's cache is set for 5 minutes.<br/>Some of other module elements may also not reflect immediate changes made in the Freshdesk panel.<br/>
 
|style="padding: 0px 0px 10px 15px;"|2. In case it is taking too much time for new tickets to appear, keep in mind that the module's cache is set for 5 minutes.<br/>Some of other module elements may also not reflect immediate changes made in the Freshdesk panel.<br/>
If you need the immediate cache refreshment, go to the '' 'Ticket Settings' '' or save '' 'Sever Settings' '' again.  
+
If you need the immediate cache refreshment, go to the '' 'Ticket Settings' '' or save '' 'Server Settings' '' again.  
 
|}
 
|}
 
{|
 
{|

Latest revision as of 13:51, 26 April 2024

Contents

[edit] About Freshdesk For WHMCS

Freshdesk For WHMCS gives your customers the access to a complex Freshdesk support solution in your own WHMCS.

Not only will your clients manage Freshdesk tickets straight on your website, but also your support teams will control every WHMCS ticket in Freshdesk.
In addition, you will be able to create relations between certain fields in WHMCS and Freshdesk to export all user details in a fully automated manner.

  • Client Area Features:
✔ View Freshdesk Departments
✔ Manage Existing Tickets
✔ Open New Ticket
✔ Fill Out Freshdesk Ticket Fields
✔ Assign Owned Service To Ticket
✔ Attach Files To Ticket
✔ List Recent Tickets
  • Admin Area Features:
✔ Manually Export To Freshdesk:
✔ WHMCS Clients
✔ WHMCS Tickets
✔ Define Module Behavior
✔ Show Solved Tickets
✔ Update Client Credentials
✔ Define Replies Order
✔ Define Available Support Departments
✔ Define Client Service Field
✔ Define Client ID Field
✔ Define Ticket Status Colors
✔ Set Default Field Values For Agent Required Fields
✔ Configure And Test Server Connection
✔ Toggle SSL Verification
✔ Define Client Fields Relations
✔ View Logs
  • Integration:
✔ Automatically Export To Freshdesk:
✔ New Tickets
✔ Clients On Tickets Creation
✔ Synchronize Ticket Responses Between WHMCS And Freshdesk
✔ Transfer Ticket Fields Settings
✔ Transfer Client Custom Fields Details
✔ Transfer Custom Ticket Statuses
✔ View WHMCS Client Details In Freshdesk Using Widget
✔ Contact Details
✔ Services
✔ Domains
✔ Product Addons
✔ Due Invoices
  • General Info:
✔ Requires Freshdesk "Pro" Pricing Plan Or Higher
✔ 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 Freshdesk 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 the module.
NF 1.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.4 and later.

PHP74 81.png
Previous updates of the module may contain two packages dedicated to various PHP versions.

The first one that supports PHP 5.6 up to PHP 7.3, and the second one addressed to PHP 7.4 up to PHP 8.1.
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 here.

PHP56 74 81.png
Note: You can check the current PHP version in your WHMCS. To do so, proceed to 'Utilities' → 'System' → 'PHP Info'.
3. Once you have chosen the package with the right PHP version, extract it and upload its content into the main WHMCS directory.

The content of the chosen PHP version files to upload should look like this.

NF2 2.png
4. When you install Freshdesk For WHMCS for the first time you have to rename 'license_RENAME.php' file.

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

NF2 3.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'.

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

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

NF6 2.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'.
Afterward, find 'Freshdesk' and press the 'Activate' button.

NF 5.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.

NF 6.png
9. You have just successfully installed Freshdesk For WHMCS!

[edit] Configuration

Now you have to configure your newly installed module.

Before we proceed to the configuration itself, you have to find API details to your Freshdesk account.
Important: Please be aware that a minimum Freshdesk pricing plan is 'Pro'.
If you use any lower plan, it will be impossible to successfully connect the module with the API (click here for more information).

[edit] API Connection

Firstly, log in to your Freshdesk portal at https://support.freshdesk.com/support/login.
NF 7.png
Click on your profile picture that is in the top right corner of the page and go to the 'Profile Settings' section.
NF 8.png
You can find your API key on the right side of the settings page.

Use an existing key or reset it to generate a new one. Copy the active API key.
IMPORTANT: Copy and keep your API key in a safe place. You will need it in a moment to complete the configuration of the module.

NF 9.png

[edit] Server Configuration

Now, that you have safely stored your API, you may move to the second part of configuration.

Proceed to 'Addons' → 'Freshdesk' → 'Settings' → 'Server Settings', here you have to enter any data required to connect your WHMCS with the Freshdesk server.

NF 10.png
Enter your Freshdesk details:

Note: Please remember that in order to connect your WHMCS with the Freshdesk server you need to complete 'Administrator Username' and 'Administrator Password' or your 'API Key'.

  • Account Name - this is your subdomain e.g. in https://mycompany.freshdesk.com, account name will be mycompany
  • API Key - API key found in the previous steps
  • Administrator Username - the admin's email used to log into your Freshdesk account
  • Administrator Password - the admin's password used to log into your Freshdesk account
  • SSL - check this box if you want to turn on the SSL certificate verification
  • Widget Authorization Password - use this field only if you want to use a Freshdesk widget, the widget configuration instructions are described in the next section of this tutorial

Finally, test the connection and, if successful, save the changes.

NF 11.png
Finally, move to 'Setup' → 'General Settings' → 'Support' in your WHMCS.

There choose the 'Freshdesk' support module from a dropdown menu and save the changes.
From now on, your clients will see Freshdesk tickets and departments (not WHMCS).

NF 12.png
Good job! Now your WHMCS is connected with the Freshdesk support system.

[edit] Freshdesk Customer Widget

Configuration of the Freshdesk Customer Widget is completely optional. If you do not aim to use this tool, simply skip it and move directly to the Management section.
Freshdesk App Widget, once configured, allows to see customer's WHMCS data.
The widget includes client contact details along with their owned products, domains, product addons and due invoices next to the created ticket in the Freshdesk panel, as shown in the picture below:
NF 12 1.png
In order to enable the widget, compete the following steps:

Navigate to 'Addons' → 'Freshdesk' → 'Settings' → 'Server Settings' in your WHMCS. Find the 'Widget Authorization Password' field and enter your own password.
This password will be used to communicate with the Freshdesk widget application.

NF 12 2.png
Next, go to https://developers.freshdesk.com, click 'Log in as Developer' and sign on using your Freshdesk 'Organization URL' or 'Account URL' data.
NF 12 3.png
After a successful sign-in, press the 'Create App'. Provide any app name, next choose 'Custom Apps' type and 'Upload App file' with the archive that you will find below.

Download: freshdesk_widget_1.0.2.zip

Proceed when you are ready.

NF 12 4.png
Now, fill out the rest of the required fields and click 'Save and Publish'. After a few minutes (max 30), the app will be ready to run in your Freshdesk instance (the status must be 'Published' ).
NF 12 5.png
Go to Freshdesk admin panel and click 'Admin' → 'Support Operations' → 'Apps' settings.
NF 12 6.png
Find the 'Manage Apps ' button located in the top right corner and click on it.
NF 12 6 1.png
Choose 'Custom App' and press 'Install' next to the previously created app.
NF 12 6 2.png
Finally, fill out the fields according to the prompts so the application can connect to your WHMCS.
NF 12 7.png
That's all. If all the provided data are correct, then, next time, when you open a WHMCS ticket from your Freshdesk account, you should see the customer details in the panel on the right.
NF 12 8.png

[edit] Management

Once Freshdesk For WHMCS is installed and the connection is configured, you can create/update your ticket departments and begin using them.

Each ticket department you create in Freshdesk will be available for your customers in WHMCS client area.

[edit] Settings

[edit] WHMCS

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

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

NF 13.png
In the first box 'Options', you may enable some basic settings that will be applied to tickets view in the client area.
Let's now discuss their functionality in details:
  • Default Department - select a default department for exported tickets
  • Allowed Departments - select which of your departments from Freshdesk will be available in WHMCS ticket system
  • 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)
  • Replies Descending Order - enable this option and ticket replies will be sorted by date in a descending order when viewing a ticket
  • Template Name - optional, select only in case you wish to use a custom template
  • Client Services - choose the field (created in Freshdesk panel), responsible for displaying all client's products and domains, you can find more info here
  • Client ID - allows you to display IDs of your WHMCS clients next to their tickets in Freshdesk panel.
    Remember that firstly you need to add a new custom label with 'WHMCS ID|whmcsid' in the 'Ticket Fields' section of your Freshdesk panel and then activate your new custom label in the module configuration.
  • Update Client Credentials - if a client's email is updated in WHMCS, it will be updated in Freshdesk accordingly (name is also updated but only if the email is changed)
NF 14.png
Under the 'Options' box you will find a section where you can assign some colors to a specific ticket status.

Click on the field to choose a color from the palette of colors or type in the number of the color you like.
Tickets of each status will be marked with selected colors on homage.

Moreover, in the 'Agent Required Fields' section, the administrator can set default values for fields that might be required for agents when submitting a form or closing a ticket.
Remember to save the changes if you make any in ticket settings.

NF 15.png
Tickets of each status are now marked with the selected colors on homepage:
NF 16.png
Tickets history in the client area:
NF 15 1.png

[edit] Freshdesk Client Fields

Freshdesk For WHMCS module allows the management of 'Customer Fields' created in the panel.

Move to 'Freshdesk' → 'Admin' → 'Support Operations' → 'Customer Fields'. On this site you can edit existing or add new custom fields to add any data on the client in their profile.
Edit any existing field, change behavior or add new ones.

NF 16 1.png
Once ready, you will need to move to your 'WHMCS' → 'Setup' → 'Custom Client Fields' where a corresponding field shall be created.
NF 17.png
Then, move again to the addon 'Settings' → 'Client Fields Relations' to define the relations between the Freshdesk fields and the ones you have in your WHMCS.

Select from the list of corresponding fields, that will be visible in the client's profile.

NF 18.png
Fields from the 'Required' section (marked in red) must be filled in to export the user to Freshdesk successfully. If left empty, error will occur and export fail.

Adequately, optional fields (marked in blue) may be left empty to proceed with the export.

NF 20.png

[edit] Freshdesk Ticket Fields

[edit] Custom Ticket Fields

You can also manage ticket fields, by adding fully editable Custom Fields that are available in WHMCS on a new ticket form, directly in Freshdesk.

Move to 'Freshdesk' → 'Admin' → 'Workflows' → 'Ticket Fields'. There follow the Freshdesk instructions to edit or add new custom fields to collect the data when a client submits a ticket.

NF 21.png
Once you have configured your ticket fields on the Freshdesk panel side, they will automatically be added and visible in the ticket view in WHMCS client area.
NF 21 1.png

[edit] Client Services

It is possible to use one of the created in Freshdesk panel custom fields as a dropdown to select an owned product that a client may assign to a just created ticket.

Go back to WHMCS addon → 'Ticket Settings', where you can instantly select it under the 'Client Services' dropdown.
Do not forget to save the changes.

NF 23.png
As you can see on the screen below, a new field, which may help to draw the Administrator's attention to a specific client's service appeared in WHMCS client area.

Edit/add ticket fields to adjust the ticket form perfectly to your needs.

NF 24.png

[edit] Custom Ticket Statuses

You can also manage custom ticket statuses used in Freshdesk panel.

Move again to 'Freshdesk' → 'Admin' → 'Workflows' → 'Ticket Fields' → 'Status' to add new or modify existing ticket statuses.

NF 23 1.png
Once you have configured your ticket statuses on the Freshdesk panel side, go back to WHMCS addon → 'Ticket Settings', where you can see them among other default statuses.
Select colors for them.
NF 24 1.png
The custom statuses are visible in the client area with names typed in the panel in the 'For Customers' field. However, it is possible to alter or translate the Fresdesk custom statuses names.

Open the used language file located in /your_WHMCS/moduels/addons/Freshdesk/langs/ directory and add new lines at the very bottom.
In case you use multilanguage option this possibility allows full translations.

Exemplary lines to add:

$_LANG['addonCA']['FreshdeskCustomStatusName'] = "Your translation visible in WHMCS Client Area";
$_LANG['addonCA']['Being Processed'] = "In lavorazione";

[edit] Export

Our module allows to export data gathered in your 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 Freshdesk and what are the possible means of such synchronizations.

[edit] Users

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

You will see here a list of all users who exist in your WHMCS and have not been synchronized with Freshdesk yet.

NF 25.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 (the blue arrow).

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

NF 27.png

[edit] Tickets

The next option offered by our module is the export of tickets from WHMCS to Freshdesk, proceed to 'Tickets Export'.
You will see here a list of all tickets which exist in your WHMCS and have not been synchronized with Freshdesk yet.
NF 28.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 the 'Export' button as marked on the screen.
NF 29.png
If a ticket has already been exported from WHMCS to Freshdesk, they will have a different Freshdesk Status visible on the list.
All tickets newly created to WHMCS will be automatically synchronized with Freshdesk.
NF 30.png
Is is also possible to export tickets using a CLI cron command, which can be useful when you need to export a greater number of tickets created within the selected date range.
Underneath you can see a command that must be executed from you CLI to start such export.

Please remember to adjust the date rage located at the end of the command to your personal needs first!

php /yourWHMCS/modules/addons/Freshdesk/cron/cron.php ExportTicket 2022-01-01 2022-12-31

Important: Keep in mind that the provided dates at the end of the command (in the above example these are: 2022-01-01 2022-12-31) are exemplary.
They indicate the beginning and ending dates of the date range within which all the created tickets shall be exported.

Note: Keep in mind that exporting too many tickets at once can cause issues with running out of API calls per minute, that you have available in your Freshdesk plan.
You can find more information about call limits here.

NF 30 1.png

[edit] Support Tickets

Move to your client area. There, on your homepage, is the 'Recent Support Tickets' box.

You will find the latest tickets available in your system. The visible tickets are marked with colors related to their current status.

NF 31.png
Now, we will create a ticket message to show the flow. Just like in case of a standard WHMCS support ticket, choose a department, fill out the form and submit the ticket.
NF 31 1.png
A new ticket, sent with Freshdesk For WHMCS module, is immediately visible in Freshdesk admin area.

Do not hesitate and send a reply to this ticket.

NF 31 3.png
A client has received an answer. Note that the ticket status has been updated as well.
NF 31 4.png

[edit] Logs

All module activities are recorded in 'Logs'.

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

NF 32.png
In case you no longer wish to see a particular log you can easily remove it. Click on the bin icon next to a selected entry as presented on the screen below.
In order to delete multiple logs at the same time you can simply take advantage of the 'Mass Remove Action'.
NF 33.png

[edit] Tips

1. If you create a custom field in Freshdesk, it will be also visible in WHMCS. Custom fields need to be enabled/visible/editable by the client.
2. In case you wish to use a custom template, do not forget to place its files in the following directory:
/modules/addons/Freshdesk/templates/client/default/pages/submodule/yourCustomTemplateName/
3. You can configure the support sidebars that are displayed in the client area by switching them on/off.

Simply, change the flag from true into false in the following file if you wish to hide the support sidebars.

/modules/addons/freshdesk/app/Config/freshdesk.yml

[edit] Update Instructions

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

While moving from the 1.0.0 version of Freshdesk, note that no data can be migrated, so the module needs to be configured from scratch.
It is also advised to deactivate the older version of the addon before installing the latest one. Do not forget to reactivate it once this procedure is finished.
However, when the module becomes successfully reconfigured, the previously submitted tickets should be visible in the client profiles.

[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 Freshdesk 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. In case it is taking too much time for new tickets to appear, keep in mind that the module's cache is set for 5 minutes.
Some of other module elements may also not reflect immediate changes made in the Freshdesk panel.

If you need the immediate cache refreshment, go to the 'Ticket Settings' or save 'Server Settings' again.

3. We do not recommend using Freshdesk For WHMCS module either with Multibrand For WHMCS or with Resellers Center For WHMCS.

Integration between these modules is hampered due to specific features of each one of them and their individual work flow.

Navigation
WHMCS Modules
WHMCS Widgets
Translations
cPanel Modules
General
FAQ
Community
Freshdesk For WHMCS