/sites/default/files/2019-11/b24_drupal_0.jpg

В настоящий момент Битрикс24 является одним из ведущих решений на рынке CRM и заслуженно занимает одно из ключевых мест в бизнес-процессах многих организаций. Эффективное использование интернет-сайта компании неизбежно подразумевает интеграцию его информационных потоков в структуру CRM.

При этом ввиду направленности компании на продвижение собственного продукта на рынке CMS средства интеграции для конкурирующих решений компанией почти не разрабатываются, в результате чего реализация этого функционала зачастую представляет собой однобокие кастомные решения, заточенные под конкретный проекты.

Для сайтов, построенных на CMF Drupal 8, специалистами нашей компании был разработан пакет модулей https://drupal.org/project/b24, решающий задачи интеграции с Битрикс24 для наиболее востребованных сценариев работы: создание лидов в Битрикс 24 при отправке веб-форм и создание лидов и сделок в Битрикс 24 при добавлении заказов в Drupal Commerce 2.

25 октября 2019 опубликована альфа-версия модулей на Drupal.org. В настоящий момент модуль еще не имеет достаточно стабильной версии, поскольку структура кода и API еще не устоялась и в дальнейшем возможно внесение изменений, которые теоретически могут поломать построенные на его основе сторонние решения. Однако, мы успешно внедряем модуль как на сайтах наших клиентов, так и на наших собственных сайтах так как внутри компании сами используем Битрикс 24 в качестве CRM.

Пакет состоит из основного модуля, обеспечивающего взаимодействие с Битрикс24, а также ряда дополнительных модулей, реализующих конкретный функционал:

  • b24_commerce - обеспечивает интеграцию с модулем commerce и реализует экспорт заказов в лиды, контакты и товары на стороне Битрикс24.
  • b24_contact - экспортирует результаты отправки форм, реализованных модулем contact, входящим в ядро Drupal 8.
  • b24_webform - аналогично, но уже для форм, сделанных на основе популярного модуля webform.
  • b24_user - синхронизирует пользователей Drupal со списком контактов в CRM.
  • b24_utm - реализует учет UTM-меток при экспорте лидов.

Модуль учитывает оба стандартных режима работы Битрикс24 — классический (создание лида с последующей конвертацией в сделку и контакт) и упрощенный (создание сделки и контакта сразу без создания лида).

Начало работы и настройка основного модуля

Для начала работы необходимо внести ряд основных настроек для связи с Битрикс24. На странице для ввода учетных данных (Администрирование » Конфигурация » Bitrix24 » Credentials) укажите домен вашего Битрикс24-сайта. То есть если вы заходите в свою CRM по адресу my-crm.bitrix24.ru, то в это поле следует ввести «my-crm». После сохранения формы в полях ниже для удобства будут сформированы ссылки на страницы вашего Битрикс24, на которых вы должны будете зарегистрировать приложение с правами доступа к CRM и выбранной опцией «Приложение использует только API» (Рис. 1). Для более тонкой настройки модуля может также потребоваться доступ к пользователям.

Создание приложения в Битрикс24
Рис. 1 - Добавление приложения в Битрикс24: необходимые права

 

Для корректной аутентификации в полях «Укажите ссылку» следует проставить значение «[адрес_сайта]/b24/oauth» - эта строка также будет показана в описаниях к полям формы (Рис. 2).

Создание приложения в Битрикс24 - установка callback-страницы
Рис. 2 - Добавление приложения в Битрикс24: установка callback-страницы

 

После создания приложения ему будет присвоен код приложения (client_id) и ключ приложения (client_secret). Их необходимо внести в соответствующие поля настроек модуля. После сохранения формы необходимо инициировать первичное получение токена для доступа к приложению, кликнув на ссылку «Get access token» внизу формы (Рис. 3). В дальнейшем токен будет обновляться при каждом обращении к приложению, а также по крону. Поскольку срок жизни токена составляет один час, для сайтов с малой посещаемостью лучшим решением будет установить периодичность запуска крона в один час.

Настройка основного модуля - учетные данные
Рис. 3 - Настройка основного модуля: учетные данные

 

После установки данных для доступа к Битрикс24 на странице "Администрирование » Конфигурация » Bitrix24 » Настройки"  можно указать ответственного пользователя, то есть пользователя в CRM, которому будет назначаться вновь созданные лиды и сделки (Рис. 4). Если список выбора пуст, то всего скорее вы забыли дать права своему приложению на доступ к пользователям. При отсутствии этой настройки создаваемые сущности будут назначаться в соответствии с настройками CRM.

Настройки основного модуля - установка ответственного пользователя
Рис. 4 - Настройки основного модуля: установка ответственного пользователя

 

 

b24_contact: Экспорт данных из стандартных контактных форм Drupal (модуль contact)

Перейдите на страницу настройки соответствующего модуля "Администрирование » Конфигурация » Bitrix24 » Contact Form Setings". Выберите вкладку с названием нужной формы и активируйте чекбокс «Enable Export», после чего отобразится группа полей, каждое из которых соответствует полю лида (Рис. 5). В каждом установите соответствие с полем контактной формы.

В качестве соответствия можно выбрать вариант «Custom», который позволяет ввести свободную строку с поддержкой токенов, однако стоит заметить, что в отличие от webform каждое заполнение формы не является сущностью и передать одно из его значений в виде токенов не получится в виду отсутствия поддержки оных. То есть изменить, к примеру, значение, передаваемое полем «Ваше имя» на «Форма отправлена клиентом [submission:field_name]» не получится. Возможно, это будет реализовано в будущем. Однако глобальные токены вроде [site:name] доступны.

Настройка экспорта контактных форм Drupal
Рис. 5 - Настройка экспорта контактных форм Drupal

 

b24_webform: Экспорт данных из форм, созданных средствами модуля webform

Настройки аналогичны предыдущему пункту за исключением более полной поддержки токенов (Рис. 6).

Настройка экспорта результатов заполнения форм Drupal webforn
Рис. 6 - Настройка экспорта результатов заполнения форм Drupal webform

 

b24_users: Синхронизация пользователей с контактами

На странице "Администрирование » Конфигурация » Bitrix24 » Users synchronization" выберите роли пользователей, которые следует синхронизировать с контактами Битрикс24 (Рис. 7).

Настройка экспорта пользователей - выбор ролей для экспорта
Рис. 7 - Настройка экспорта пользователей: выбор ролей для экспорта

 

После чего необходимо установить соответствия между полями пользователей (имеется также поддержка полей профилей) и полями контактов Битрикс24 на странице "Администрирование » Конфигурация » Bitrix24 Users synchronization » Fields mapping".

Конфигурирование соответствий несколько менее понятный и прозрачный процесс, поскольку здесь нет списков выбора, как это имеет место в настройке экспорта форм, и соответствия назначаются при помощи токенов, что очевидно займет больше времени, однако такой способ предлагает необходимую гибкость и разнообразие в настройке.

Далее можно произвести экспорт пользователей на странице "Администрирование » Конфигурация » Bitrix24 » Users synchronization » Users Export". При этом соответствия между сущностями пользователя Drupal и контакта Битрикс24 сохраняются и при повторном экспорте новые контакты создаваться не будут.

При активации опции «Enable live export» (Рис. 7) все изменения будут отправляться в CRM сразу при создании/редактировании/удалении пользователя.
Поддерживается также импорт контактов из CRM в пользователи Drupal ("Администрирование » Конфигурация » Bitrix24 » Users synchronization » Users Import"). При этом га страницу импорта можно выбрать, какие дополнительные роли будут назначены импортируемым пользователям.

 

b24_commerce: Экспорт заказов и товаров Drupal Commerce

Настройка экспорта заказов происходит на странице "Администрирование » Конфигурация » Bitrix24 » Commerce Integration". Здесь необходимо установить режим работы CRM (уже упомянутые классический или упрощенный) — к сожалению, в текущем состоянии API Битрикс24 не позволяет получать этот показатель автоматически. При этом в случае упрощенного режима настройки на этом заканчиваются. В случае стандартного режима для каждого типа товаров в отдельности следует выбрать, надо ли управлять конвертацией созданных лидов в контакты и в сделки на стороне модуля. Обычно это происходит на стороне CRM, однако этот функционал можно настроить на стороне Drupal, для чего нужно активировать конвертацию в нужные сущности и указать, на каком этапе жизни заказа это должно происходить (Рис. 8).

Настройка экспорта заказов Drupal Commerce - выбор режима экспорта
Рис. 8 - Настройка экспорта заказов Drupal Commerce: выбор режима экспорта

 

Далее на странице "Администрирование » Конфигурация » Bitrix24 » Commerce Integration » Fields Mapping" следует с помощью токенов установить соответствия полей заказа с полями сделок и лидов для каждого из типов товаров. Обратите внимание, что на этой странице в зависимости от конфигурации вашего интернет-магазина может присутствовать несколько вкладок-табов (сверху), каждая из которых соответствует типу товара. Вкладки «Leads» и «Deals» содержат соответствия поле лидов и сделок соответственно (Рис. 9).

Настройка экспорта заказов Drupal Commerce: соответствие полей
Рис. 9 - Настройка экспорта заказов Drupal Commerce: соответствие полей

 

Для привязки создаваемых лидов и сделок к товарам на стороне Битрикс24 реализован экспорт товаров. Настройка экспорта производится на странице "Администрирование » Конфигурация » Bitrix24 » Commerce Integration » Products Export", где устанавливается магазин, из которого будут экспортироваться товары, а также при необходимости указывается поле, по которому на сайте просходит распределение товаров по разделам каталога. Это позволит сохранить структуру каталога при его экспорте в CRM. Первичный экспорт лучше провести после первичной настройки модуля на этой же странице. В дальнейшем все изменения будут синхронизироваться с CRM автоматически.


b24_utm. Учет UTM-меток при экспорте лидов

Это очень простой функционал, отслеживающий приход посетителя с UTM-меткой и в случае экспорта лида от его лица заполняющий на стороне Битрикс24 соответствующие поля. Для отслеживания меток достаточно включить модуль. Какие бы то ни было настройки в настоящий момент не требуются.

 

Поиск и отслеживание проблем

Поскольку любая интеграция с внешними сервисами часто сопровождается значительными сложностями в конфигурации, при написании модуля уделено особое внимание логированию результатов запросов к Битрикс24. Поэтому если что-то по вашему мнению пошло не так, нужная информация наверняка находится в логах «/admin/reports/dblog». 

 

Итого

Любой масштабный проект — это не только ценный мех огромное количество рабочих часов и литры выпитого кофе, но и необходимость смотреть значительно шире своего кода, на высоком уровне разбираться в чужой работе и понимать самые разнообразные потребности как всего бизнеса, так и его составляющих — простых сотрудников у монитора. Поэтому мы с радостью примем любые отзывы и советы по поводу работы модуля и дальнейшему развитию функционала.

 

 

Добавить комментарий