From ModulesGarden Wiki
Jump to: navigation, search



CRM For WHMCS is a module created to expedite the management process of potential clients.

You will be able to not only add new contacts and easily alter their status but also create accounts for them directly in the addon.
The module will allow you to send automated notifications, create quotes and notes as well as add custom fields to contacts' profiles according to your needs.
What is more, all the information about the contacts will be shown in a graphic presentation on the dashboard.

TIP: You can extend the functionality of CRM For WHMCS by integrating the module with Asterisk VoIP Center For WHMCS, Quotes Automation For WHMCS and SMS Center For WHMCS.

  • Addon Module Features:
✔ Create Contacts:
✔ Leads
✔ Potentials
✔ Custom Types
✔ Convert Contact Type
✔ Send Mass Email & SMS To:
✔ All Clients
✔ Chosen Client Groups
✔ Contacts From Chosen Campaigns
✔ Restrict Access To Contact Types
✔ Assign Client Account To Contact
✔ Assign Administrator To Contact
✔ Assign Ticket To Contact
✔ Quickly Edit Contact Details
✔ Add And Manage Contact's Follow-ups
✔ Add And Manage Contact's Notes
✔ View, Create And Synchronize Quotes For Contact
✔ View Contact Tickets
✔ View Contact Orders
✔ Send Email From Template Or Custom Message - Include Files And Quote
✔ Send Email Using Custom Mailbox
✔ Send Ticket Response
✔ Upload And Manage Files From Contact Profile
✔ View Announcements For Administrators
✔ View Logs Concerning Contact
✔ View Dashboard Containing Incoming Follow-ups
✔ View Calendar With All Reminders Sorted By Type
✔ View CRM Statistics And Graphs Concerning Contacts
✔ Import Contacts In Chosen File Formats: CSV, XSL, XSLX and ODS
✔ Export Contacts In Chosen File Formats: CSV, XSL, XSLX, ODS and PDF
✔ Remove Contact:
✔ Move Contact To Archive Where It Can Be Restored From
✔ Delete Contact From CRM Database Completely
  • Follow-up Features:
✔ 3 Types Of Notifications: Now, On Follow-up Date, Before Follow-up Date - Both For Administrators And Clients
✔ Administrator To Notify - Defines Included Administrators Per Notification Type
✔ Notify Administrator and Clients via Email And SMS
✔ Notify Administrator via Pop-up Alarm
✔ Follow-up Type - Easier Determination Of Follow-up Purpose
✔ Use Email Template Or Place Custom Message
✔ Synchronize Follow-ups With:
✔ Google Calendar
✔ WHMCS Calendar
  • Campaign Features:
✔ Create Campaign
✔ Define Campaign Duration Time
✔ Assign Contacts To Campaign Using Filters
✔ Manually Assign Campaign To Contact
✔ Display Dashboard Per Campaign
✔ Display Campaign Description In Assigned Contact Profile
  • Web Form Features:
✔ Create Web Form
✔ Allow Your Site Guests To Create New Contacts Via Web Form
✔ Define Details Of Web Form Created Contact:
✔ Assign Fields To Web Form
✔ Contact Type
✔ Contact Status
✔ Assigned Admin
✔ Get Generated Web Form To Be Placed On Your Site
✔ View Number Of Contacts Created From Each Web Form
✔ Notify Administrators About New Contact Creations
  • Addon Settings Features:
✔ View Module Status - Contains Status Of CRM Key Elements
✔ Define Whether To Use Quotes And Administrator Assignment
✔ Define Follow-up Types And Default Notifications On Follow-up Reschedule
✔ Define Temporary And Permanent Notifications For Administrators
✔ Define If Notification Needs To Be Acknowledged By Administrators
✔ Manage Custom Fields:
✔ Create Fields Groups
✔ Create Custom Fields - Text, Textarea, Checkbox, Radio And Select
✔ Add Description To Custom Field
✔ Add Validators To Custom Fields
✔ Define WHMCS - CRM Fields Mapping - Automatically Fill Out Form With Appropriate Values
✔ Define Custom Contact Types:
✔ Define Contact Type Color And Icon
✔ Define Contact Type Visibility On Navigation
✔ Configure Default View Of Contact Lists - Visibility And Order In Columns
✔ Define Permissions Per Administrator Role Group
✔ Define Personal Settings:
✔ Define Avatar
✔ Define Default Email Address
✔ Define Visible Fields And Their Order For Contacts And Dashboard
✔ Create CRM Email Templates
✔ View Information About CRM Cron
  • Admin Area Features:
✔ WHMCS Support Tickets System - Create Contact, Quickly View Their Details And Move To CRM Contact Profile
✔ WHMCS Quotes - Quotes Created From CRM Profile Are Assigned To Contact Automatically
  • General Info:
✔ Meets GDPR Requirements
✔ Integrated With Asterisk VoIP Center For WHMCS - Call Your Clients At Any Time (read more)
✔ Integrated With Quotes Automation For WHMCS - Extend Your Quotes Possibilities (read more)
✔ Integrated With SMS Center For WHMCS - Send Reminders & Mass Messages via SMS (read more)
✔ Connect With CRM Using Its API
✔ Migration Tool - Migrate Contacts And Settings From CRM For WHMCS 1.2.4
✔ Toggle Standalone Mode - Display CRM Outside WHMCS
✔ Display Any Page Or Panel In Full Screen Mode
✔ Multi-Language Support
✔ Supports PHP 5.6 Up To PHP 7.2
✔ Supports WHMCS V7


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

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


1. Log in to our client area and download the module.
CRM2 1.png
2. In the downloaded file, you will find two packages that support different PHP versions.
As presented on the screen below, the first one is dedicated to PHP 5.5.9, while the second one is aimed at PHP 7.
It does not apply to open source versions.

Note: You can check current PHP version in your WHMCS. To do so proceed to 'Utilities' → 'System' → 'PHP Info'.

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.

The content of PHP version files should look like this.

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

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

CRM 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'.

CRM 4.png
6. The next step is setting up the 'Storage' folder as recursively writable.

It is located in 'your_whmcs/modules/addons/mgCRM2/app/'.

CRM 4 2.png

Activate the Addon

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

Log in to your WHMCS admin area. Go to 'Setup' 'Addon Modules'. Afterward, find 'CRM' and press the 'Activate' button.

CRM2 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.
CRM as a standalone page - if selected, the CRM page will be visible in the standalone mode by default, no matter which template is used.
Full Access Admin - select admins that will have full access to your module.
Access Control - select admin groups that will have access to your module.
Now, press 'Save Changes'.

CRM2 6.png
9. Now, you have to set up a cron job, which can be found in CRM Addon → 'Settings' 'General' 'System Overview'.

We advise to set up the cron as frequently as possible to send email notifications, 5 minutes interval is recommended.

CRM2 46.png
10. You have just successfully installed CRM For WHMCS!

You can access your module in 'Addons' 'CRM'.

Configuration and Management

CRM For WHMCS is a module which allows you and your staff to manage relations with your current as well as possible clients in one place.


When you proceed to 'Addons' 'CRMv2', you are automatically moved to the application dashboard.

From there you have a quick preview of the most important information in your CRM.
View follow-ups on the calendar, the list of recently added contacts and last activities.

CRM2 42.png
It is possible to adjust a dashboard view according to applied filters. Choose a dashboard view of CRM for a selected administrator.
Select '--Any' if you want to show all content.

Additionally, you may impose campaign filters. Choose which campaign records shall be viewed.
Select '--Not Applied' to disable this filter.
CRM2 42 1.png

Standalone Mode

Use the cross arrows icon to switch into the standalone mode, your CRM module pages will be then accessed outside of WHMCS.

Press it again to come back to the WHMCS view.

CRM2 43.png


Create Contact

To create a new contact press the button marked on the screen below.
CRM2 11 1.png
You are moved to a contact creation form. As you can see below, fields are divided into two sections: Options and Information.
Fill out the form and press 'Add' to add the contact to the list. There may be visible some custom fields if they have been previously added and enabled.

Note: Only staff members with full privileges can assign admins to the contacts.

CRM2 11.png
Immediately, after a new contact is added you are moved to its summary, where you can find/edit some additional data.

Read more about them in the following section.

CRM2 12.png

Manage Contacts

In 'Actions' column you can find various useful operations which can be performed on a contact.

As you can see, in dropdown menu, actions such as 'Convert To Potential' and 'Move To Archive' can be found.
'Note: 'Call Out' functionality is available as well if you have Asterisk VoIP Center For WHMCS installed and configured properly.

CRM2 13.png
Now, let's proceed to the contact itself.

Press the pencil icon to move to the contact's summary page.

CRM2 14.png
You can also browse your contacts by typing in a client's phone number into the URL field.
CRM2 114.png


To edit any of the options in the contact summary page, simply press a pencil icon that appears when you hover your mouse cursor on the option.
In this way, you may reassign the administrator, alter the name and change the current status. Mark the appropriate number of stars to change the contact's priority:
  • Low
  • Medium
  • Important
  • Urgent
CRM2 20.png
As mentioned above, when you press the pencil icon, you may select a current status, choose from:
  • Pending (custom)
  • New
  • Active
  • Closed
  • Urgent

Every time you are editing any information please press the green confirmation button to save the changes.

CRM2 19.png
In the area marked on the following screen, you can find fields where an existing client can be assigned,
ticket from which the contact was created, its basic details and campaigns if this contact belongs to any.
CRM2 15.png
The module allows assignment of a client account to the contact.

This can be done in two ways, by creating a new client from a contact or by selecting an existing client to a contact.

CRM2 16.png
In the same way, you may assign a support ticket to a contact. Then, you can easily and quickly find details of the contact background.
CRM2 17.png
When you hover over the email address, two icons will appear. Press the first one and you will be redirected to a section which allows you to send email messages.
When you decide to edit (2.), simply type in the new address.
CRM2 18.png
Just like in a case of any other option in this section, you may assign your contact to any campaign if such exists.
When assigned, campaign details appear in a separate widget.
CRM2 18 1.png
In the 'Summary' page you may also find a brief conclusion on created notes, the list of flow-ups and quickly do actions like:
  • adding new notes
  • sending emails
  • sending SMS messages (for SMS Center integration)
  • adding follow-ups
  • sending tickets responses (if assigned)
CRM2 21.png


Follow-ups allow you to send email templates or text messages to contacts and staff members and create ToDo entries.

Any follow-up can be rescheduled (1.) or removed (2.) using buttons in the 'Actions' column.
You can search for the desired follow-up using the search box and sort by one of the columns.

CRM2 21 1.png
To add a new follow-up, fill out the 'New Follow-up' form.

Here you can define:

  • Date - (required) the time when the notifications will be sent.
  • Description - (required) a short description of a follow-up, it will be afterward visible in the follow-up list.
  • Follow-up Type - allows you to define the type of a follow-up for easier determination of its purpose.
  • Admin - the admin to whom ToDo entry will be assigned.
CRM2 22.png
The last step consists in defining the reminders, we will explain each of them below.

Reminders for Administrators

  • 'On Create' - Notification is sent to an admin, who is assigned to a contact, immediately when a follow-up is created.
  • 'Follow-up Due Date ' - Notification is sent to an admin, who is assigned to a contact, on the set date.
  • 'Before Follow-up Due Date ' - Specify time (date/hours/minutes etc) before the Follow-up Due Date to send the notification to an admin, who is assigned to a contact.

Reminders for Clients

  • 'On Create' - Notification is sent to a client, who is assigned to a contact, immediately when a follow-up is created.
  • 'Follow-up Due Date ' - Notification is sent to a client, who is assigned to a contact, on the set date.
  • 'Before Follow-up Due Date ' - Specify the time (date/hours/minutes etc) before the Follow-up Due Date to send the notification to a client, who is assigned to a contact.

Choose whether you wish to send reminders via email or SMS (if SMS Center For WHMCS is activated) or both.
Once the option is marked and the path is chosen, you need to fill out the details for the chosen reminder, separate for emails and separate for SMS messages.
Press 'Add Follow-up' to finalize the process.

CRM2 23.png
Added follow-up will be displayed on the list of all follow-ups of the contact. Use action buttons to delete, reschedule or edit the follow-up.
CRM2 24.png
In order to reschedule a follow-up, you always have to provide the reason.
CRM2 25.png
Edit follow-up details:
  • Edit details
  • Add reminders
  • Manage existing reminders
CRM2 26.png


'Notes' enables you to make and manage notes about the contact.

On the following screen you can see how to add an exemplary note.

CRM2 27.png
Any existing note can be modified and hidden as presented below.
CRM2 28.png
Please note that only hidden notes can be deleted.
To show hidden notes press 'Display Hidden'.
CRM2 29.png


Any staff member can send an email from the contact's profile.

As you can see, you can manually fill out the email subject and content.

CRM2 30.png
Alternatively, you can choose one of the email templates to be sent as well as attach the files and quotes.

You can also select the mailbox from which the message will be sent. These mailboxes are obtained from the CRM 'Outgoing Mailboxes' , WHMCS 'Support Departments' and 'General Settings' sections.
If you do not want to manually select mailboxes every time, you can set the default one in the 'Personal Settings' .

CRM2 31.png


Move to orders page where you can place orders for the contact. Press 'Add New Order' and you will be redirected to your WHMCS page where an order can be placed.
Preview details of all orders and edit them if required.
CRM2 32.png


Quotes can be created for each CRM contact.

As you can see on the screen below, in the 'Quotes' section of the contact page, brief information about quotes assigned to the contact is displayed.
You can edit any of these quotes through using buttons in the 'Actions' column.

CRM2 34.png
You can also create a new quote for the contact, press 'Add New Quote' as shown on the following screen.
CRM2 35.png
Now, create a quote for your contact.

You can do it in two ways, if a client is assigned to the contact, they will be automatically linked to the quote.
Otherwise, module will ask you to fill out a new client account details form to complete the quote.
In the second scenario, a client's account will not be created in the process, unless you use the 'Convert to Invoice' functionality.
Important: For extended functionality related to quotes we recommend our Quotes Automation For WHMCS.
It extends quotes with functionalities like adding product addons and domains to the quote, their automatic provision, and quote acceptance from the client area.

CRM2 36.png


The 'Tickets' tab displays all tickets created by a client.

If you want to create a new ticket for the client manually, click 'Add New Ticket'.

CRM2 36 2.png


The 'Files' tab allows you to upload and manage files related to your contact.

To upload a new file, select the file to upload and describe it shortly, then press 'Upload'.

CRM2 37.png
Any uploaded file can be downloaded from CRM by pressing its name or using actions icons.

It can be also removed by clicking on the dustbin icon.

CRM2 38.png


To view the latest actions performed on the contact, go to the 'Logs' tab.

As you can see, it contains all details you might want to find there.

CRM2 39.png
The 'Logs' page, apart form displaying all the logs concerning the contact, contains a search box.

Using the search option allows you to find logs of actions performed by specific administrators, at a desired time and concerning desired actions.
On the following screen we were looking for logs associated with events of a specific client.

CRM2 40.png


Access the 'Calendar' tab and you will find a fully manageable and adjustable calendar.

Switch between days, month and week views to have a clear and precise view of your scheduled events (click on a selected day to see details).

Month view:

CRM2 43 1.png
Under the calendar, there is a detailed legend of visible items with enumerated types of follow-ups.

Click on any follow-up to see its details.

CRM2 43 2.png


Another functionality that CRM For WHMCS has to offer is the possibility to create customized campaigns.

If you decide to apply this option, you will be able to create many various campaigns with selected contacts included and filtered according to your personal configurations.
Let's check how this functionality works.

Add Campaign

In order to add a new campaign use the 'Create Campaigns' button.
CRM2 41.png
Start with filling out some basic data about the campaign such as its name and descriptions. Select color that will be used to distinguish items.
Assign admins who will have access to the campaign entries and declare beginning and ending dates.
CRM2 41 1.png
In the second part you need to select filters to assign wanted record to this campaign. You may use both predefined system fields and your custom fields.
Finally 'Add Campaign'.
CRM2 41 2.png

Campaigns List

Find all the created campaigns stored together on a convenient list with the most crucial data close at hand.

Use Action buttons to:
1. Manually force a record's reassignment
2. Move to the edition page
3. Delete an unused campaign

CRM2 41 3.png


Due to the wide variety of possible configurations, the 'Settings' section has been moved underneath to make the presentation more precise.

In 'Settings' 'General' page of the module you can check current module status, enable major features and define follow-ups' settings.


System Overview

Under System Overview you can find information about:
  • Integration with Asterisk VoIP Center For WHMCS
  • Integration with SMS Center
  • Cron job setup
  • Number of CRM email templates
  • Storage folder used by the module
CRM2 45.png
In 'Cron Details', you can find all the information about the cron such as its path, last execution date and interval between cron runs.
CRM2 46.png


In 'Additional Options' , quotations may be enabled for contacts and there is also a possibility to assign contacts to administrators.
CRM2 47.png


In the next section of General Settings there are few options to configure follow-ups.

In settings part, you may activate alarms which will show pop-up notifications on coming follow ups. Next, follow-up per day, it means that a follow-up can be added within a day, not a specific hour.
You may also choose email template used to notify admins about a follow-up being rescheduled.
Note: Pop-up alarms are sending once per minute. If follow-up starts e.g. at 12:15 the alarm might be shown at 12:14.
Moreover if the 'Follow-ups Per Day' option is enabled then if follow-up starts e.g. 07.08.2017 the alarm might be shown on 06.08.2017 at 11:59 PM.

CRM2 48.png
If you enable follow-up alarms, the pop-up notifications will be look like on the image below:
CRM2 48 3.png

Additionally you can enable a follow-ups synchronization with WHMCS and the Google calendar
No additional configuration is required for the WHMCS calendar. To configure the Google Calendar, follow the steps described here.

CRM2 48 2.png
At the end, you can add a new follow-up type by entering its name, assigning a color and finally enabling it to use. Once added, you will see it in the list of available follow-up types below.
CRM2 49.png
Google Calendar

To set up a connection with the Google calendar, go to 'Settings' 'General' 'Follow-ups' .
Then, select the Google calendar from the dropdown menu and click on 'Update Settings'. You will see a box to configure the API data.

CRM2 67.png
If necessary, find your 'Client ID' and 'Client Secret' go to 'Google API Manager' and log in.

In 'API Manager' go to the 'Library' and select Calendar API. Accept 'Terms of Service', if shown.

CRM2 68.png
Next, press 'Create Project', and enter a new project name.
CRM2 69.png
After project creation, you will be ready to enable calendar API.
CRM2 70.png
Now, press the 'Credentials' tab.
CRM2 71.png
Click on 'Create credentials' and select '0Auth client ID'.
CRM2 72.png
In the second step, provide the project name, your main website URL and callback URL in the following format:

Note that your 'admin' folder might also have a custom name.

CRM2 73.png
You will obtain your 'client ID and 'client secret'.
CRM2 74.png
Now, copy and paste them into your CRM authorization settings.

Press the 'Authorization' button.

CRM2 75.png
In the last step, allow the authorization.
CRM2 76.png
Your Google calendar should be now synchronized with CRM follow-ups.

Please note that this synchronization will work only for newly created follow-ups and only in a single way, from CRM module to Google calendar.

API Connection

You may easily connect with our module through its own API. To learn more details please visit this page.
CRM2 49 1.png


Personal Settings

Provide the URL to your avatar in order to personalize your CRM according to your needs.

Also, choose the email address which will be used as default when sending email to a contact.
Available mailboxes will be obtained from the CRM 'Outgoing Mailboxes' , WHMCS 'Support Departments' and 'General Settings' sections.

CRM2 50.png

Fields' View

In this place you may decide which columns exactly and even in what order they will appear in each of the possible sections
(Contact's page and Dashboard). Click on each section one by one to set its view.

Drag and drop available fields to create a perfect configuration.

CRM2 51.png

Outgoing Mailbox

In this section, custom mailboxes can be added and then assigned to administrators who can then use them as default for sending emails to contacts.

This might be handy if you want to use different mailboxes than those configured in the WHMCS settings. To begin, press the 'Create Mailbox' button.

CRM2 77.png
Next, provide the name that will be shown in the contact's mail massage, choose the admin to whom the mailbox shall be assigned and fill in the remaining fields with your mailbox data configuration.

Press the 'Add Mailbox' button when ready.

CRM2 78.png
From now on, when the admin wants to send the email to the contact, they will be able to use the configured mailbox.
CRM2 78.png


Manage 'Fields' fully, add new fields, group them, define statuses and map existing fields.

List Of Fields

Each field, regardless of its type, has its name, description, assigned group and obviously its type.

Available types and validators for each of the types (seen when editing an existing field)

  • text: required, min, max, email, url, ip, regex
  • textarea: required, min, max, regex
  • radio: required, min, max
  • checkbox: required, min, max
  • select: required, min, max

On the following screen you can see an example of a dropdown type custom field.
To add a field, press 'Create Field'.

CRM2 53.png


Place where groups are created to segregate fields. Once you already know how you want to group your fields, create an adequate group.
Name it, assign a color and enable to start using it.
CRM2 54.png


Similarly to groups, here you may add statuses that later on will be used to segregate fields.
Name the new status, assign a color and enable to start using it.
CRM2 55.png

Fields Mapping

'Fields Mapping' option allows you to bond CRM fields with WHMCS standard or client custom fields.

This way during creation a contact from client's ticket or a client from a contact, mapped fields will be automatically filled out.

CRM2 56.png

Contact Types

'Leads' and 'Potentials' are the only predefined contact types that are available from the moment you start using your CRM.

However, to make our CRM for WHMCS even more customizable and user friendly we have implemented a function which allows creating new contact types and their full management.

CRM2 56 1.png

Add New

To add a new type simply fill out the visible on the screen below form.
  • Enter its name and choose a color
  • Enter icon code - the icon will be always visible next to this contact type name, remember to use available formats, e.g.: 'fa fa-empire', 'fa fa-plus-circle '
  • Visibility in navigation bar - choose whether you wish to have the new contact type visible on the main navigation menu and submenu (under the 'Contacts' tab)
  • Dashboard - if you select this option, the new type will be visible on dashboard, and you will be able to filter the view by this type.

Press the 'Add' button to finish the process.

CRM2 56 2.png

Contacts Management

Under the creation form, there is a list of all available in your CRM contact types, together with the predefined 'Leads' and 'Potentials'.

Here you can fully customize your contact by:

  • changing the assigned color or icon,
  • turning on/off its availability in the navigation menus and dashboard
  • activating/deactivating the contact
  • deleting useless types.

Any changes made in this section require reloading the page or clearing browser cache! Changes to contact types are not immediate.

CRM2 56 3.png
If you want to delete a contact type, you will be asked to choose another type to which any contacts of the deleted type will be reassigned to.

If you do not want to reassign the contacts to another type, you can move them to the archive, to do so, simply select the 'Move to Archive' option.
Still, you will have to choose a type for contacts. It will be used in case you decide in future to restore these contacts from the archive.

CRM2 56 4.png


The last but one section in 'Settings' is responsible for assigning permissions to certain roles of group of administrators.

Select permissions for each existing role.

CRM2 57.png
Once you have added a new role, use actions buttons to move the page where you can choose particular permissions for the group.

Select the one you need and 'Update' the settings.

CRM2 52.png


Export File

In order to export a file from your CRM system, simply choose a target file format (CSV, XLS, XLSX, ODS or PDF) and press the 'Export' button.
A file with a list of contacts available in your system with their details such as name, type, priority, phone etc will download shortly.

A list of available fields that can be included in the file to either import or export are available underneath.
It is required that you use only the fields that are visible underneath. In case you name your columns in any other way, the import action will fail!

CRM2 57 1.png

Import File

In order to import a file to your CRM system, simply select a file from your disc and press the 'Upload' button.

A file with uploaded list of contacts will be available shortly.
Note: you can upload files of 'csv', 'xls', 'xlsx' or 'ods' formats only.

CRM2 57 2.png

Web Forms

Web Forms give the possibility to collect contacts' details from different sources.

In your CRM for WHMCS you may now generate sample web forms which you can then locate in your external sites. Your customers then will fill out their data
which will be automatically delivered into your CRM. Creating new contacts is now much faster and easier.

Proceed to 'Settings' → 'Web Forms'. There is a list of all already created web forms. You may edit them or delete at any time.
Here you will also find a raw HTML code of the web form, which must be used to locate it in your desired web site (see action buttons).

Press the button marked on the screen to create a new web form.

CRM2 57 4.png
To generate a web form, you must provide some basic details:
  • Your web form name
  • URL of the site where you want to locate the web form (required for CORS)
  • Define contact type for a new customer and its initial status.
  • Optionally choose administrators who will be informed of the addition of a new client from web form.

Additionally, you may select fields that will be visible to fill out. Drag a field and drop in the currently created web form box.

CRM2 57 5.png
Once your web form draft is ready, you have to manually add it to the desired location.
Underneath, you will find a sample instruction on how to add a web form as a widget to the WordPress application.

1. Log in to your admin area on your WordPress.
2. Move to 'Appearance' → 'Widgets' and press 'Manage in Customizer'.

CRM2 57 6.png

3. Select 'Widgets' → 'Content Sidebar'.
4. Press 'Add a Widget' → 'Text'.

CRM2 57 7.png

5. Title your widget.
6. Paste the HTML code copied from your web form into 'Content'.

CRM2 57 8.png
Ready! Your web form with empty fields that can be filled out by your clients is ready.
If your clients provide required data, new contacts will be automatically added to your CRM.
CRM2 57 9.png



'Statistics' contains graph concerning all your contacts.

Among the graphs, there can be distinguished graphs showing for example: the number of contacts per status, new contacts per admin, per month and per day.
Additionally, administrators with extended permissions are able to view statistics of chosen administrators.

In 'Statistics' you can find the overall information such as graphs concerning contacts with a chosen status.
See the list of recently added contacts with details such as assigned admins, status or creation date.

CRM2 58.png
There are graphs and statistics tables presenting number of contacts added within certain periods of time (year/month)
CRM2 60.png


In this part you can manage any notifications that shall be delivered to any administrator depending on the configuration.

Let's check how it works. Press 'Create Notification' to begin.

CRM2 59.png
You are moved to the 'New Notification' creation form. Fill out the data to tailor the notification base perfectly in accordance with your needs.
  • Choose its 'Type' from 'Temporary' and 'Permanent'.
  • Select importance: 'Normal', 'Information', 'Warning' and 'Danger'.
  • Mark administrators that this notification will be displayed to. You may surely select more than one admin.
  • In 'Message' field simply type in the text of the notification. It is allowed to use HTML code here.
  • Select 'Starting' and 'Ending' dates for 'Temporary' notifications
  • 'Confirmation' - if you select this box, administrator will have to confirm reading such notification by pressing the 'Accept' button visible on the notification
  • 'Hide Once Accepted' - decide whether accepted notification should disappear from the widget

Press the 'Create Notification' button when ready.

CRM2 59 1.png
A newly created notification form is now visible on the list of all notifications in the system.

You may easily edit the notification (you will be moved to creation form where you can make any changes) or delete useless notification.
You will see here information if notifications have been accepted by administrators (if required) and by which ones exactly.

CRM2 59 2.png
Created notifications are visible for selected in the configuration admins on any page of their CRM system.

'Accept' your notifications if it is required. Such info boxes like on the screen below will be visible until the specified in the configuration 'Ending Date',
or once accepted if the 'Hide Once Accepted' option has been selected. You may easily hide it by pressing icon in the top right corner of the widget.

CRM2 59 3.png

Mass Messages

Configure mass messages templates that can be used in your campaigns.

Press 'Create Mass Message' and fill out the template form.

CRM2 60 1.png
  • Choose a group the messages will be delivered to, these can be single users, groups of users or campaigns.
  • Select message type: email or SMS (if integrated with SMS Center For WHMCS)
  • Enter subject of the message
  • Select a date when messages will be placed on the list to send (triggered by cron)
  • Select groups/users or campaigns (depending on the chosen target)
  • Describe the template shortly
  • Create the message
    • Enter the main content of the message, use an advanced tool to edit the input (email only) and available merge fields.
CRM2 60 2.png
Once added, mass message template will be visible on the list. You will find there short info on each template.

Use action buttons to edit or remove a template.

CRM2 60 3.png


List of unused contacts. Use action buttons to edit entries and convert them back to a contact from the archive.
CRM2 61.png


Our module offers additional integration in your WHMCS support tickets system.

As you can see on the screen below, your support operators can convert tickets directly into Contact Lead.
This way you can track relations with your valuable clients.

CRM 53.png
Any ticket of a given client will be displayed with the contact name, status and assigned staff member.

Additionally, after pressing 'Details' extended information about the contact will be displayed in a popup.
Note: Any contact can be transferred between the available types from the ticketing system as shown below (blue arrow).

CRM 54.png
Your staff will be also able to quickly move to the contact profile in CRM For WHMCS by pressing 'Show Contact' .
CRM 55.png

Asterisk VoIP Center For WHMCS Integration

Integration with Asterisk VoIP Center For WHMCS extends your possibilities with ability to originate calls to your CRM contacts.

As soon as you install the module, you can originate a call by pressing the 'Call Out' button.
If everything is set up correctly, you should see something similar to the screen below.

CRM 56.png


In order to familiarize you with the module even better, we are presenting here an example workflow.

In the beginning, let's point the differences between privileges groups:

  • Full Access Admins - admin role groups that will have access to everything.
  • Access Control - admin role groups that will have access to the features specified in the 'Permissions' section.
CRM 57.png

Let's say we have admin X with full privileges and admin Y who has permissions limited to sales person.

  1. The admin X obtains a new contact, which is called Company X and creates a Lead profile in CRM.
    Additionally, he assigns the admin Y to the Company X and leaves some notes in the profile.

  2. The admin Y can now read these notes and choose newsletters and promotion notifications from email templates.
    He sets them as a follow-ups spread over the next two weeks. Luckily, one of the newsletters draws the attention of the Company X.

  3. They respond to the newsletter, so that the admin Y changes this contact type to Potential.
    This way he can track the relation with that contact better.

  4. After a few emails with the Company X, the admin Y decides to prepare an interesting offer for the contact in the form of a quote.

  5. Once the quote has been accepted, the admin Y creates a client account for the contact.
    Additionally, owing to the integration with Quotes Automation For WHMCS, he is able to quickly generate the invoice & the order from the quote.

  6. The following month a few more offers are accepted, and both your company and the Company X benefit from it.

  7. All the time admins X and Y can easily track their contact with the Company X.
    Thanks to the quotes in the contact profile they can see current offers made for the Company X.
    While notes and files can give more information about progress in making current agreements.

Supported Variables

The full list of supported variables for reminders and email templates:


  • {$}
  • {$}
  • {$contact.status_id}
  • {$}
  • {$}
  • {$contact.priority}
  • {$contact.type_id}
  • {$contact.admin_id}
  • {$contact.client_id}
  • {$contact.ticket_id}
  • {$contact.created_at}
  • {$contact.updated_at}
  • {$contact.deleted_at}
  • {$contact.status}
  • {$}
  • {$contact.client.uuid}
  • {$contact.client.firstname}
  • {$contact.client.lastname}
  • {$contact.client.companyname}
  • {$}
  • {$contact.client.address1}
  • {$contact.client.address2}
  • {$}
  • {$contact.client.state}
  • {$contact.client.postcode}
  • {$}
  • {$contact.client.phonenumber}
  • {$contact.client.password}
  • {$contact.client.authmodule}
  • {$contact.client.authdata}
  • {$contact.client.currency}
  • {$contact.client.defaultgateway}
  • {$}
  • {$contact.client.taxexempt}
  • {$contact.client.latefeeoveride}
  • {$contact.client.overideduenotices}
  • {$contact.client.disableautocc}
  • {$contact.client.datecreated}
  • {$contact.client.notes}
  • {$contact.client.billingcid}
  • {$contact.client.securityqid}
  • {$contact.client.securityqans}
  • {$contact.client.groupid}
  • {$contact.client.cardtype}
  • {$contact.client.cardlastfour}
  • {$contact.client.cardnum}
  • {$contact.client.startdate}
  • {$contact.client.expdate}
  • {$contact.client.issuenumber}
  • {$contact.client.bankname}
  • {$contact.client.banktype}
  • {$contact.client.bankcode}
  • {$contact.client.bankacct}
  • {$contact.client.gatewayid}
  • {$contact.client.lastlogin}
  • {$contact.client.ip}
  • {$}
  • {$contact.client.status}
  • {$contact.client.language}
  • {$contact.client.pwresetkey}
  • {$contact.client.emailoptout}
  • {$contact.client.allow_sso}
  • {$contact.client.created_at}
  • {$contact.client.pwresetexpiry}
  • {$}
  • {$contact.client.ticket.tid}
  • {$contact.client.ticket.userid}
  • {$}
  • {$}
  • {$contact.client.ticket.title}
  • {$contact.field.<fieldID>.id}
  • {$contact.field.<fieldID>.type}
  • {$contact.field.<fieldID>.active}
  • {$contact.field[<fieldID>].name}
  • {$contact.field.<fieldID>.description}
  • {$contact.field.<fieldID>.data}
  • {$contact.field.<fieldID>.options}
  • {$}
  • {$followup.resource_id}
  • {$followup.type_id}
  • {$followup.admin_id}
  • {$followup.description}
  • {$}
  • {$followup.created_at}
  • {$followup.updated_at}
  • {$followup.deleted_at}
  • {$}
  • {$}
  • {$followup.resource.status_id}
  • {$}
  • {$}
  • {$followup.resource.priority}
  • {$followup.resource.type_id}
  • {$followup.resource.client_id}
  • {$followup.resource.ticket_id}
  • {$followup.resource.created_at}
  • {$followup.resource.updated_at}
  • {$followup.resource.deleted_at}
  • {$followup.resource.status}
  • {$}
  • {$followup.resource.client.firstname}
  • {$followup.resource.client.lastname}
  • {$}
  • {$}
  • {$followup.resource.ticket.tid}
  • {$followup.resource.ticket.userid}
  • {$}
  • {$}
  • {$followup.resource.ticket.title}
Email Templates:
  • {$}
  • {$resource.client.firstname}
  • {$resource.client.lastname}
  • {$}
  • {$}
  • {$}
  • {$resource.status_id}
  • {$}
  • {$}
  • {$resource.piority}
  • {$resource.type_id}
  • {$resource.admin_id}
  • {$resource.client_id}
  • {$resource.ticket_id}
  • {$resource.created_at}
  • {$resource.updated_at}
  • {$resource.deleted_at}
  • {$resource.status}
  • {$fields.<fieldID>.id}
  • {$fields.<fieldID>.type}
  • {$fields.<fieldID>.active}
  • {$fields.<fieldID>.name}
  • {$fields.<fieldID>.description}
  • {$fields.<fieldID>.data}
  • {$company_name}
  • {$company_domain}
  • {$company_logo_url}
  • {$whmcs_url}
  • {$whmcs_link}
  • {$whmcs_admin_url}
  • {$whmcs_admin_link}
  • {$signature}
  • {$date}
  • {$time}


1. If you want to see a specific part of your CRM, a single widget only, use full-screen mode for widgets.

You will find it in the top right corner of each widget.

2. In the addon directory you can find the 'configDB.json' file which is used to setup by default the UTF-8 coalition and character set encoding for the module.

You can simply edit this file according to your needs, or remove it to force the module to automatically obtain the configuration from your database source.

CRM2 622.png
The default content of this file contains the following lines:
   "collation": "utf8_unicode_ci",
   "charset": "utf8"

Update Instructions

Essential guidance through the process of updating the module is offered here.

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!
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.


If you have already used any of the previous versions of CRM, the very first thing that you need to do with your module before moving to any further steps is migrating the data from old CRM to CRM V2.0.0.
To do so, move to 'Addons' → 'CRM' → 'Settings' → 'Migrator'.

You need to note that not all data can be migrated due to some incompatibility between systems.
These are:

  • follow-ups
  • uploaded files

Important! Before you proceed to migration itself, you must always make a backup copy of your database for safety reasons.
In case of any unpredicted issues you will not lose any data and will be able to restore the previous version.

If you fulfill all conditions, press 'Begin Migration' to start the process.

CRM2 62.png
Prepare mapping of statuses used in CRM V 1.2.4 that you wish to map to CRM V2.x.
Confirm that you have done the mapping correctly and then move to custom fields mapping configuration.
CRM2 64.png
Map fields used in CRM V 1.2.4, confirm proper configuration and move to the last step.
CRM2 65.png
Read carefully all the information about migration consequences, if you agree with them, start the migration.
CRM2 66.png
Congratulations! You have successfully migrated your database from old CRM to the latest version!
Now, you can enjoy a much improved management of your contacts with potential clients.

Common Problems

1. When you have problems with connection, check whether your SELinux or firewall does not block ports.
2. In case you have problems with your CRM, for example empty tables, no follow-ups in the calendar or you cannot add new status, group, follow-up, then please make sure that
your .htaccess or vhost do not block the module in any way.

Underneath there is an exemplary input of a .htaccess file, which will unblock the connections and methods:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)crm.php(.*)$ /admin/crm.php [QSA, L]

    Order allow,deny
    Allow from all

Please note that admin folder may have a custom name, remember to adjust its input to your naming.

3. If you get an error that 'Directory <your_whmcs>/modules/addons/mgCRM2/app/Storage is NOT Writable. Unable to continue.' please make sure that this folder has writeable permissions set.
4. If you keep getting the '404 Not Found' or 'Internal Server Error 500' message, please verify whether the file '<your_whmcs>/admin/crm.php' has its permissions fixed similarly to the remaining files in this folder. (usually 644)

Please note that the admin folder may have a custom name.

5. If you cannot see the import and export options for the .XLSX or .ODS formats, please make sure you have the PHP Zip library installed on your server.
Otherwise, you will not be able to use these extensions.
Personal tools

WHMCS Modules
cPanel Modules
Magento Extensions
Magento Themes
PrestaShop Modules
Blesta Extensions