Sector(s)
Team Members
Visit the site
Visit the siteOrganizations Involved
Community contributions
Drupal modules developed during the project:
AmoCRM is a lead management system that keeps all the client’s requests from e-mail, telephone, online forms, through chats and instant messengers. It has headquarters in Moscow and San-Francisco.
Why have we done this integration? Some people can say that Drupal already has an assembly for client base processing. They are right and we sure it will be enough for a small team.
But if you have a large team of sales managers who daily treat hundreds of clients, you need a specialized product.
High-quality product with Angular single page application technology will work quickly and accurately.
We have been choosing system for our sales department for a long time, exploring and comparing plenty of them. Finally decided that amoCRM is the most suitable for us because of its fast growing and innovative company. It has a lot integrations with different services and a lot of partners who can help you to configure the sales department tools.
It also has recently added a unique instrument - digital pipeline. It could automatically write letters on behalf of manager, change lead statuses upon of any event, notify you and set the task, and also can help to show clients different advertisement depending on the selling stage.
About the project
Goals
The project has been initiated by two parties with their own goals which greatly fit each other and complemented one another.
The global amoCRM goal was to enter the Drupal market and Drupal ecosystem, to became noticeable in the Drupal community, to make a solution for Drupal users and by users we mean not only developers but also their clients.
As for us, we came up with the idea to develop a new product for business processes optimization.
Requirements
First, amoCRM wanted us to make a plugin like in the CMS Wordpress, which would allow users to easily create multifunctional forms with a choosable design.
As for us, we wanted to fit into the existing Drupal philosophy and community. So we had to sacrifice the design for a little bit, there is no possibility to interactively adjust the form in our solution and we were not able to use the client’s designs.
Anyway, we are happy to get manage to make it Drupal Way and develop the module on the basis of ready solutions. For example, we have used the following modules:
Module Webform - the most popular forms editor in Drupal;
Module Rules - lets to define conditionally executed actions based on occurring events.
This greatly simplifies the task of development and we hope, you can easily use our modules for solving issues in your projects.
Team & Timeline
The Drupal and amoCRM development team include five software engineers, project manager and PR manager. Also, Designers and Sales Managers helped us with consultations.
800 human-hours
July 23, 2015
Publication of the CodeSprint report. Receiving a proposal from amoCRM for modules development.
July 31, 2015
The first meeting with the client. Record of the meeting results.
August 4, 2015
Roadmap planning.
August 19, 2015
Launch on the first part of the Roadmap development.
September 9, 2015
The first phase of work delivering.
October 1, 2015
The start of the phase 2 discussion.
November 5, 2015
Validation of the second stage plan.
February 4, 2016
The launch of the 2nd stage development.
March 14, 2016
Completion of the first part of the 2nd stage: the widget and the widget module.
Optimization of some 1st stage modules.
May 20, 2016
amoCRM has posted the widget to public access.
Stages
Project roadmap has the following steps:
1. Create a seamless integration for Drupal website owners;
2. Make a wrapper module for amoCRM API, so Drupal developers can use it in their projects;
3. Integrate amoCRM with some modern tools such as Slack, Trello, to be able to build and automate certain business processes using all the advantages of the tools, Drupal, and amoCRM.
Now let's take a closer look at the stages of our cooperation:
Stage 1
- Module amoCRM Form. Development of the module for simple integration of Drupal and amoCRM. The module integrates with amoCRM via WebHook and the module Rules.
- Module amoCRM API. The development of integration module on the basis of current REST API amoCRM.
- Creation and filling in amoCRM profile on drupal.org (English language)
- Preparation of the modules description (Russian and English language)
- Press release writing and publication.
You can get a Shortcode of the form in amoCRM and insert it into any Content field in the Drupal.

Stage 2
- amoCRM Contact. Integration of the standard Drupal module Contact (simple feedback form) with amoCRM for automate new contacts creation in amoCRM.
- amoCRM module modification, integration with module Rules. This lets to define conditionally executed actions in amoCRM based on occurring events on the Drupal website.
- Front-End & Back End Widget
- Preparation of the modules description (Russian and English language)
- Modules localization via localize.drupal.org.
- Writing of a detailed guidance with photo and video materials how to make an integration of Drupal and amoCRM.
- Press release about amoCRM modules writing and publication.
New contact in amoCRM is marked with tag wich is a category of the Contact form.

There are two actions in our example:
User appears on your site.

User get the e-mail about registration.

Outcome
So, let's summarize how integration with Drupal was useful for amoCRM:
- The integration allowed amoCRM to attract the attention of new audience.
- Now every Drupal developer can use the module amoCRM API and create own module.
For us, it was a new experience in Drupal exploring. Now we know Drupal is perfect as a platform for integration!
Join us in using Drupal for integration! The more applications will be integrated with Drupal, the more companies will prefer Drupal as universal and able to solve almost any task system!
Modules:
Instructions:
How to videos:
Why Drupal was chosen
amoCRM is developing as a platform. Today being a platform means that product should have some easy and fast tools for integration with other platforms and markets.
As Drupal is one of the leading digital customer experience delivery platforms product can not become a platform without Drupal.
DrupalJedi has been building Drupal sites for the last seven years. We generally develop middle- and large-size projects. We are one of the biggest Drupal team in Russia (https://www.drupal.org/drupaljedi).
Our collaboration with amoCRM started when we came up with the necessity of integration the CRM with our websites. During one of our regular Drupal Code Sprints, we started to develop an integration module and published the report about it in social networks.
AmoCRM owner had found us and suggested to discuss the cooperation as they already wanted to integrate their app with Drupal and had some ideas of modules too.

Technical Specifications
Drupal version:
Key modules/theme/distribution used:
We had a goal, to build a useful, powerful and flexible integration with amoCRM system.
That's why we use Rules module, how it works in Drupal world: if you have integration with Rules => you have integration with hundreds of other contributed modules.
Also, we started the development of new module (X Reference) which allows to use Drupal as reference storage. For example, we store the reference between Card ID (from Trello) and Lead ID (from amoCRM).