Child pages
  • Help Desk Ultimate
Skip to end of metadata
Go to start of metadata


Extension page:

As many as 78% of customers cite "Customer Support" as the # 1 factor when choosing a merchant or a provider on the internet. That's what we found out in our recent study on factors influencing consumers' online buying behaviour. An efficient customer support, case tracking and resolution system is indispensable for a successful e-commerce business.

The Help Desk Ultimate Magento extension, developed after taking on board the lessons we've learned on online shopper behaviour, is the perfect customer care and support solution for your Magento-based e-commerce site.



1. Backup your web directory and store database.

 Click to view details

You can make backup copies with any tool you find appropriate

If you are going to use the native Magento backup function, navigate to System -> Tools -> Backups and perform System and Database backups

 2. Log in to the Magento backend

 3. Disable compilation

 Click to view details

Navigate to System -> Tools -> Compilation.

If Compiler status is Disabled, you can skip to the next step

If Compiler is enabled, disable it.

IMPORTANT: after the extension is installed, you can enable the compilation again; IT IS CRUCIAL that you use "Run Compilation Process" function, not just "Enable button"


Installing an extension with the Compilation enabled will result in store downtime.

 4. Flush store cache

 Click to view details

You can flush the store cache in 2 ways:

  • via the backend:

Navigate to System -> Cache Management menu, and click Flush Magento Cache button

  • via filesystem:

On your server, navigate to Magento root folder, then proceed to /var/cache/; delete all the content there.

 5. Download the extension package from your account and extract the downloaded archive

 6. Copy the content of /Step_1/ folder to your store's root directory

If you are using a custom theme,

 read the instructions here.

In case you are using a custom theme, it is recommended to copy the design files to your current theme's folders. In case there are several themes in use at the same store, the design files must be copied to each of them.

  • Find this folder in the package: /step_1/app/design/frontend/base/default/ ; copy its content to /app/design/frontend/[your_package]/[your_theme]/
  • Find this folder in the package: /step_1/skin/frontend/base/default/ ; copy its content to /skin/frontend/[your_package]/[your_theme]/

 7. Copy the content of /Step_2/ folder to your store's root directory

 8. Flush store cache again; log out from the backend and log in again.

Set up cron

The Help Desk Ultimate extension uses cron for message processing. Read the following instructions on setting cron job for your Magento store: Magento user guideIf you have already configured cron jobs for your Magento installation then you can skip this step.

Generally, it would be enough to run in SSH console of your server: 

crontab -e

And add the following line: 


*/3 * * * * wget 'http://your-store/cron.php'
Don't forget to confirm saving request when exit.

The recommended Cron execution frequency is 3-5 minutes.
Once cronjob is set up and running, the extension will be saving every action in the log, which can be viewed in System->Configuration->aheadWorks Extensions->Info->aheadWorks Extensions logging->View log. If you think that the extension does not work as expected, it is recommended to check the log first. If it is empty or contains very few records, it may indicate that your cronjob is not set or set improperly. Normally, every cron launch should add 1 or more entries. The actual quantity of the entries depends on the number of processed events per given cronjob.


To start using the extension


you should define the general settings and create at least one Department

General Configuration

The extension's general parameters can be configured in System -> Configuration -> aheadWorks Extensions -> Help Desk (or, Help Desk -> Settings) backend page.


Advanced Options section:


  • Show priority selector on frontend - shows / hides Priority selector in the frontend ticket submission form
  • Show department selector on frontend - shows / hides Department selector in the ticket submission form in Customer Account area
  • Handle file uploads - allows / prohibits attaching files to messages.
  • Max Upload File Size - sets the maximum size of the uploaded files (per-message)
  • Ticket auto-expiration, days - sets the delay since last ticket update until it gets automatically closed.
  • Create new tickets from email - allow / prohibit converting new emails that come to a gateway mailbox to tickets.
  • Custom ticket statuses - in this field, you can specify extra Status titles
  • Default admin ticket status - defines the default status for a ticket in case it is initiated by the store admin
  • Allow external view for tickets - enables External view option
  • Enable linking tickets to orders - allows attributing a ticket to a specific order placed by a customer.
  • Send carbon copy to - defines an email address where the copies of all the Help Desk messages will be sent
  • Send email to customer on department reassign (yes / no) - enables / disables automated email notification on this particular event.


Modules integration tab:


  • Product Questions - enables integration with the Product Question extension: the incoming Product questions will be parsed to tickets. ( Product Questions 1.X branch only )
  • Contact Form - if enabled, the messages sent in through the standard Contact Form will be parsed to tickets
  • Show departments selector on the contact form - shows / hides department selector for tickets submitted through the Contact Form.
  • Disable standard contact form emails - if enabled, the incoming Contact From messages will be parsed to tickets ONLY; if disabled, the messages will be parsed to tickets AND emails will be sent to the standard General Contact mailbox.



The extension is designed to work with the standard Magento Contact form (available at ). If you are using a custom Contact form (for instance, a static CMS page), some adjustments may be required. Check this article for instructions.


Grid Columns Options tab:


Through this tab, you can do minor adjustments to the View Tickets grid.

Last Customer Reply enabled (yes / no) and Last Department Reply enabled (yes / no) options include / exclude correspondent columns to / from the View Tickets grid.



Managing Departments


You must create at least one department to start using the extension


The extension allows creating an unlimited number of Departments. You can view the existent ones and create new through Help Desk -> Manage Departments backend grid.

Here's how the department setup looks like.

Department Details tab:


  • Active (yes / no) - defines the Department status
  • Visible on (select Storeview(s)) - this selector allows choosing on what store views the department will be selectable in the forms


    This option defines frontend visibility status only. Any active department can still be assigned tickets to even if it is invisible for the ticket's original store view.

  • Title - defines the Department name both for frontend and backend usage
  • Primary for store - this selector allows to mark the department as Primary for any single store view


    "Primary" department will be used by default if the customer does not select any Departments when submitting a ticket, or in case frontend Department Selector is disabled

  • Sort Order - define list position of the Department


Email Settings tab:


  • Use email notifications - enables / disables email notification to the department email address
  • Email (works in conjunction with the above option) - the actual email address of the department
  • Sender - defines the email sender (NOTE: if you are using extension's Gateway functionality, the outgoing emails will have reply-to = "gateway mailbox")
  • Use email gateways - this option defines what Gateway(s) will be used by the department.


Email Templates tab:


In this tab, you can select the email templates to be used for each of the listed events.

 How do I edit these templates?


There are 7 default email templates, placed at app/locale/en_US/template/email/helpdeskultimate/. You can edit any of those templates, and create your custom ones as well.

Notification templates

  • new_to_admin.html - notifications sent to admin when a new ticket is created
  • new_to_customer.html - notifications sent to customer about a new ticket
  • new_from_admin_to_customer.html - notifications sent to customer when a ticket is created by the store admin
  • to_admin_reassign_email.html - notifications sent to store admin when a ticket is reassigned to a different department
  • to_customer_reassign_email.html - notifications sent to customer when a ticket is reassigned to a different department

Ticket reply templates

  • reply_to_admin.html - notification about ticket reply sent to admin
  • reply_to_customer.html - notification about ticket reply sent to customer


The extension also supports notification templates created in Configuration -> Transactional Emails.

There is a number of template variables you can use in these templates, as well as in the actual ticket replies.



Admin Permissions tab:


Through this tab, you can define what Admin Role Scope (s) are allowed access to the department's tickets. Just select the necessary Admin Roles in the Allowed Roles selector.


Make sure to select at least one admin role here. By default, all the entries are deselected, if the department is saved without any role scopes marked, the tickets assigned to this department will not be accessible from the backend.



Gateway email configuration


The Help Desk Ultimate extension allows submitting tickets via email, this functionality is implemented via the support of Email Gateways.

A gateway is a dedicated mailbox, which is meant to be used by the extension exclusively. The module will consider every message that goes through that mailbox either a ticket reply or a new ticket.

The extension supports an unlimited number of gateways. You can create them via Help Desk -> Manage email gateways backend grid.

To set up a gateway, you should specify the below values:

  • Title
  • Status (Enabled / Disabled)
  • Type ( IMAP / POP3 )
  • Gateway Email
  • Gateway Host
  • Login and Password
  • Port - make sure that the specified port is opened in your server's firewall settings, otherwise, the extension will be unable to connect to the gateway
  • Use SSL / TLS
  • Delete Emails From Host - this option defines whether an email will be removed from the gateway mailbox after it gets parsed to ticket


Use Test Connection button to quick-check if settings are correct.


The screen above shows typical setup for Gmail IMAP - based gateway



If you are using a non-empty mailbox as a Gateway

  • If you use a non-empty mailbox as a gateway, it is recommended to clear the Inbox folder (i.e., either archive the existent emails, or move them to a different folder), just as a security measure.
  • If you specify non-empty email as a gateway and enable the "Create new tickets from email" option before first running of the cron then all emails that were in the email box will be converted to the tickets.
  • If you want only new emails to be converted to the tickets you need to enable the "Create new tickets from email" option after first running of the cron. 


Managing Tickets

The tickets can be viewed and managed through Help Desk - > View Tickets backend grid.

Basic options

A ticket has a number of basic properties and parameters:

  • Ticket ID - is assigned to a ticket automatically on submission. Has a format like "ABC-12345". The ID serves a number of crucial purposes, the main one is properly associating email ticket updates with the ticket thread. Ticket ID MUST be kept in the subject line if a ticket is replied to directly via email.

  • Status - the parameter introduced to ease managing the workflow. Technically, all statuses except "Closed" (including the Custom Statuses you might have specified) are identical and can be used for filtering the View Tickets grid. Status "Closed" prohibits further updates from the customer side - the ticket thread can still be viewed, but submitting any new messages to that particular ticket is disabled. NOTE: a "Closed" ticket can still be re-opened by the store admin.

  • Priority - the parameter introduced to ease managing the workflow. Has 5 possible values (Urgent / ASAP / To Do / If Time / Postponed), can be used for filtering the View Tickets grid.

  • Department assignation - one of the key ticket parameters. All the notifications and replies will be sent to / from the department the ticket is currently assigned to. If frontend department selector is enabled, a customer will have an option to choose the desired department during the ticket submission. After the ticket is created, department assignation can be changed by admin users ONLY. NOTE: department assignation is not in direct relation with backend user account. Any admin user which has sufficient access permissions can respond to tickets, but all the message signatures will belong to the current department.

  • Ticket Lock (yes / no) - this function restricts updating a ticket to the current department. If Ticket Lock is on, only the current department can respond to, and change other parameters (Priority, Status, etc) of a given ticket.

  • Customer Assignation - one of the key ticket parameters. Defined automatically for logged in users, must be manually specified by guests. NOTE: if a registered user submits a ticket as a guest, but specifies their account email address, it is possible to link the ticket to their account.

  • Order Assignation (optional) - links a ticket to an order; using this function allows opening the order screen directly from the Edit Ticket screen, and, lists the ticket in the Help Desk tab in the View Order page. This function also enables updating tickets via the Order Comments dialog box.

The majority of the above-mentioned parameters can be changed through the Ticket Options section (Ticket Information tab in Edit Ticket screen).

Use template selector allows pasting pre-made Quick Response text.

 Quick Responses

The extension allows storing pre-made reply templates that can be pasted into a ticket reply.

You can manage these templates in Help Desk -> Quick Responses grid. 

Basically, creating a Quick Response only requires specifying Status (Enabled / Disabled), Title and Content. After a Quick Response is saved, it can be pasted into the Reply message.


Just below Ticket Options is the Reply section.

For the Message field, you have a possibility to switch on or off the WYSIWYG editor.


A number of extension-specific email variables can be used in ticket replies


File option below allows you to attach a file to the message. The max upload size can be restricted in the extension's general settings. Multiple attachments are supported.


Below the Reply section, you can find actual Ticket Thread.

This section contains all the messages associated with the ticket, latest to earliest (pagination is not supported)



Ticket actions

There are several actions allowed for a ticket:


  • Reset - reverts any current editing to the state the ticket had been in before it was opened
  • Delete - deletes the entire ticket thread
  • Save - saves the current admin message and ticket parameter updates, DOES NOT send an email to the customer, redirects back to the View Tickets grid (NOTE: the admin message is still visible if the customer accesses the thread from their account or via External View URL)
  • Save and email - saves the current admin message and ticket parameter updates, sends an email to the customer, redirects back to the View Tickets grid.
  • Save And Continue Edit - saves the current admin message and ticket parameter updates, DOES NOT send an email to the customer, DOES NOT redirect to any other page (reloads the current page)


Miscellaneous options

Additional Information tab:

This tab contains the Ticket ID field, Customer Name with the link to their account (if the ticket was submitted by a registered customer) and the External URL

 What Is "External URL"?

External View Link is a long encrypted URL which allows accessing the ticket thread without being logged in to a store account. This link is crucial in case you allow guest submissions, but do not use the Email Gateway functionality.



Status History tab:

In this tab, a short summary of the history of the current ticket is given.

Notes tab:

This tab contains a single text field, where admin user(s) can submit their comments. Any comments posted in this field WILL NOT be visible to the customer.



Tickets History tab:

In this tab, all the tickets from the customer are listed for quick access.




E-mail variables

The Help Desk Ultimate extension allows using a number of variables in outgoing emails (see the list below).

These variables can be used both in department notifications templates and in actual messages.


{{var ticket.content}} 
ticket text
{{var ticket.uid}} 
ticket id
{{var ticket.title}} 
ticket title
{{var ticket.customer_name}}
customer name
{{var ticket.customer_email}}
customer email
name of department assigned ticket
{{var message.content}}*
reply text

*For Ticket Reply Templates only (reply_to_admin.html and reply_to_customer.html)

Additional facilities

Department Statistics

The extension allows viewing general tickets stats via Help Desk -> Department Statistics backend grid

This grid lists the stats on per-department basis, and shows the total number of tickets assigned to a department, and number of tickets of each of the available Statuses (including custom ones specified in module's general settings - LINK!). The stats can be collected for a specific time period, you just need to specify From-To dates above the grid.


E-mail Rejecting

The Help Desk Ultimate extension allows setting up automated spam filters. If Header, Subject or Body of an incoming email contains some specific text, this message can be blocked. To configure the email spam filters:


You can also view all the rejected emails in Help Desk -> Email Rejecting -> Rejected Emails grid.




If you just need to temporary disable the extension, you can just do the steps 1-5, without deleting the files of the extension.

  1. Disable compilation, in case it is enabled.
  2. Login to your FTP, navigate to app/etc/modules/
  3. Open the file AW_Helpdeskultimate.xml and change the following line:   






    Now your Magento is unaware of the existence of this module.

  4. Clear the cache under var/cache
  5. Make sure that the site is working properly, otherwise roll back the changes and apply to our technical support.
  6. If everything works fine, it is safe to delete the files of the extension.
    In case you need to clean the database, make a backup and then run the following query in MySQL: 

    Note, if you are using the table with prefixes, you must specify them in all table names. 
    If you are not sure how to do that or expect any troubles with it, please contact your server administrator regarding the matter.
    If you remove the tables as it is described above, you will need to reconfigure the extension completely again after the extension is reinstalled (department/gateway details, etc). All conversations history will be lost as well.



After the extension installation the store gives an error, or blank page, or suggests to start Magento installation procedure.

Change the owner of the extracted extension files to the web server user and set 775 permissions on them. Clear the store cache and try again.

After the extension installation I receive a 404 error in System->Configuration->Help Desk Ultimate.

Logout from backend and login back. 

There is no aheadWorks extensions under my configuration section, or having the extension tab clicked I get a blank page, or Access Denied error.

Clear the store cache, browser cookies, logout and login again.

I've set up everything correctly, inserted the HTML code but there is nothing on that page.

Clear the store cache, clear your browser cache and domain cookies and refresh the page.

My configuration changes do not appear on the store.

 Clear the store cache, clear your browser cache and domain cookies and refresh the page.

You can always find the latest version of the software, full documentation, demos, screenshots and reviews at
License agreement:
Contact us:
Copyright © 2019 aheadWorks Co.

  • No labels