Shifting an Email Marketing Application from X2CRM to Mautic


Team span: Aug 2014 to March 2016
Duration: 1.5 years
Technology: X2CRM/Engine, Mautic, MySQL
Development Manager: Mobeen Zafar
Engineers: Zeeshan Ahmad, Danish Khan
Reason for closure: Successful Project Completion

vteam #480 was hired to work on a project of an existing web based application for email marketing. The client had more than 40,000 contacts on which he wanted to send the marketing material via the designed campaigns. He was already using Salesforce CRM software for the management of leads, campaigns, contacts, etc.

In the project development phase, the client required vteams engineers Zeeshan Ahmad and Danish Khan to import all the data from Salesforce to X2CRM/Engine based on Yii2 framework. Later on, he planned to shift his application to Mautic CRM based on Symfony2.

Importing Data from Salesforce

At first, all the Leads, Campaigns, Contacts, Opportunities, Companies and Accounts were imported from Salesforce to X2CRM. After that, Insurance module was developed in X2CRM and its relevant data was then imported from Salesforce.

Fixed X2CRM’s Core Code Bugs

Few bugs were found in X2CRM’s core code. vteams engineers fixed those bugs and also modified the way of X2CRM for handling contacts as per the client’s requirement.

X2CRM Module Development

A Slingshot module was developed which contained a Target List (Dynamic Contacts List based on a defined criteria) using A/B Testing (also known as Split Testing). After that, SMS based campaign module was developed so that the client could reach his users more efficiently.

Chrome Extension for Gmail

A Chrome Extension was developed for Gmail that synchronized X2CRM contacts with Logged-in Gmail users. With the help of this chrome extension, the client was able to:

  • Identify Gmail contacts in X2CRM
  • Generate Lead or Contact from Gmail (if didn’t exist)
  • Update Contacts
  • Send emails to X2 Contacts from Gmail using X2CRM Email Templates

After that, the following miscellaneous tasks were completed:

  • Dokker Setup
  • Rollbar Implementation
  • Unit, Functional and Acceptance Testing of the above mentioned modules
  • Customized X2 Flow (an Automated feature of X2CRM)

Shifting the Application to Mautic CRM

Instead of adding patches in code, vteams engineers developed a plug-in for syncing leads, campaigns, contacts, etc. from X2CRM to Mautic CRM. With the help of this plug-in, a bridge was established between X2CRM and Mautic CRM. Initially, this bridge only worked for the one way traffic that flowed from X2CRM to Mautic CRM. After the creation of Web Hooks in Mautic CRM, the plug-in started two way communication.

As a result, the client was then able to send multiple emails of a single lead to all his contacts.