Skip to content



Helpdesk extension provides you with all required functionality to support your customers when they need it. Your Help Desk agents are company employees responsible for assisting customers upon request. Since customer concerns vary in nature (eg. product concerns, delivery, refunds, etc), agents can come from different departments (eg. Accounting, Logistics, Product). Admin users can view, add, and modify existing agents in the backend.

When an unread message is discovered in the email fetching account, this will be treated as a part of an existing ticket or a new request following the conditions below:

  • If the message has a subject line with a valid ticket ID in square brackets, e.g. “[XXX-99999]”, and comes from the customer email associated with this ticket, then the message contents will be added to the open ticket associated with it. If these conditions are satisfied, but the ticket is already closed, then the system will create a new ticket.
  • If the message is not connected to an existing ticket, then the system will create a new ticket with the following parameters:

  • Email subject becomes the ticket subject

  • Mail body becomes the first message of the ticket
  • If the sender exists as a Magento account (emails match) then the ticket is created on behalf of the account. Otherwise, the system will create the ticket as a guest.

When a new agent reply is sent, the “From” field contains agent details while the “reply-to” field contains customer email fetching accounts. The "To" field contains customer email.


The helpdesk module is compatible with the following Magento platforms:

Community Edition (Open Source) Enterprise Edition (Commerce) Cloud Edition
2.3.0 - 2.4.* 2.3.0 - 2.4.* 2.3.0 - 2.4.*


Installing module using zip file

  • Unzip and paste the extension file into your root Magento folder.
  • Connect to your server by SSH.
  • Go to your Magento root folder.
  • To install the extension, perform this command:
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy

Composer installation

If you haven't installed any Aitoc module before, in that case first you will need to add your Aitoc composer repository. Please go through the document to see how you can add composer repository.

To install the module, you will need to run following commands:

composer require aitoc/helpdesk-package
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy -f
  • To switch the extension on/off, perform these commands:
php bin/magento module:enable Aitoc_Helpdesk
php bin/magento module:disable Aitoc_Helpdesk
  • To update the module, use below command:
composer update aitoc/helpdesk-package

Initial setup

Go to STORES → CONFIGURATION → AITOC EXTENSIONS → HELPDESK to set up the extension. Note that these settings are global.

Setting Purpose
Head Agent Your default assignee for all incoming tickets.
Allow choosing department on frontend You can allow your customers to choose the department when creating tickets.
Integrate with the Contact Form Set up website contact form integration.
Enable Email Fetching Set up email fetching to allow customers to create tickets and reply via email.
Email Templates You can customize which email templates are used in the notifications. By default, pre-created Helpdesk templates are used.The list of customizable templates:• New Ticket by Customer to Customer • New Ticket by Customer to Agent • New Ticket by Agent to Customer • Ticket Assigned to Agent • New Message by Customer to Customer • New Message by Customer to Agent • New Message by Agent to Customer

Email templates

The default templates used by the extension are system, you cannot edit them directly. However, you can create your own templates based on them and edit these templates the way you need. To do it, go to MARKETING → COMMUNICATIONS → EMAIL TEMPLATES and create new templates using the system ones:

Agents configuration

You can add as many agents as you need to distinguish between the departments, issues, etc. "Agent" entity defines who customers see as their agent when communicating in a ticket. All agents can be used by a single person who chooses on which behalf to reply in each particular case.

Departments configuration

You can create as many departments as needed and split tickets between them. You can also set the default Agent for each department (and change the agent if needed for each particular ticket).

Quick replies

Prepare a set of pre-written replies that your Agents can use in their conversations to improve the reply time and ease the work.

Tickets creation

Tickets can be created via several routes: - Customer’s account: My Account > Help Desk - Customer’s account: My Account > Orders > Order > Submit Support Ticket - The native Magento contact form (if configured) - By the admin in the backend - By an email sent to the email account configured in Email Fetching section (if configured)


All new tickets are created with status New and Normal priority unless the priority is defined by the customer.

Here's an example of ticket creation by the agent:

Here's an example of ticket creation by the customer:

Agents can access all tickets in CUSTOMERS → AITOC HELP DESK → TICKETS:

The ticket has a number of properties that can be observed on the tickets grid:

Setting Purpose
Checkbox column Provides mass action functionality.
Ticket ID Unique value. Assigned in random order.
Assignee Takes its value from Head Agent global setting by default. Can be reassigned.
Department Null by default. Can be reassigned.
Customer Name and email of the customer.
Order ID If the ticket was created from the order tab in the customer profile, the order number value will be linked.
Subject Ticket subject.
Priority Normal by default. Has several options to choose from:• Low • If Time • Normal • High • Urgent
Store View Includes the store view from which the ticket was created.
Messages (number of) The number of messages in the conversation.
Created Date of ticket creation.
Last message Date of the last message in the conversation.
Rating Customer can rate the support received in his profile.
Action Allows ticket editing.

Tickets update

Tickets can be updated via several routes: - When agents reply in the backend - When agents reply in email (only if email fetching account is configured) - When clients reply in their account - When clients reply in email (only if email fetching account is configured)

When the agent replies to the client, a message “The ticket has been updated.” is shown, and it triggers an email alert event.

For internal communication, agents can add internal messages visible only to them in the backend. If the agent added a message and changed field values, a system message (visible only to the agents in the backend) will be added to the ticket. The system message consists of agent name, date, and a description of the previous and current values of the edited fields.

If email fetching account is configured, agents can reply directly to the customer’s email using corporate mailbox. The replies will be fetched and automatically included in the ticket.

Customer service desk portal

Customers can view their existing tickets in the Help Desk section once they login to their account. Customers should click on the Subject to view ticket contents. Customers who have no existing account or who are signed out of their store account can still view tickets using External Ticket View. The link is sent to them in the email.

Customers can open the ticket and use the Post a Message section to update a ticket. Customers also have the option to rate the service provided to them for the corresponding ticket.