Интеграция Битрикс24 с сайтом | REDs group
REDS Group
ул. Большая Академическая, дом 5, стр. 1, Москва.
Интеграция Битрикс24 с сайтом

Интеграция Битрикс24 с сайтом

1214

Практически любой владелец сайта, у которого имеется Битрикс24 задается вопросом: "Как автоматически добавлять лиды в CRM с моего сайта?" или
"Как интегрировать Битрикс с Битрикс 24?".

У Битрикс 24 существует как минимум три автоматизированных основных способа:

  1. На основе входящего письма на почту
  2. На основе веб-форм Битрикс24
  3. Методами Rest API

В этой статье мы решили рассмотреть метод создания лидов Методами Rest API, в которых будем использовать так называемые "Вебхуки".

Что такое лид?

Лид – это потенциальный контакт, тем или иным образом отреагировавший на маркетинговую коммуникацию.

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

Любой из вышеуказанных способов автоматизирует процесс создания лида в CRM. Если вам нужно создавать лид из любого стороннего сайта/сервиса, вы можете воспользоваться Вебхуками. Наш пример рассматривает отправку нового лида из формы обратной связи.

Тут возникает вопрос: "Мы ведь можем воспользоваться стандартными веб-формами Битрикс24?". Можем! Но если у вас свои формы обратной связи, которые уже работают или сильно отличаются от стандартных веб-форм, то тут нужно использовать Вебхуки. Именно они помогут сделать интеграцию с сайтом.

Что же за Вебхуки такие?

WebHooks - упрощенный вариант rest-событий и rest-команд, без написания приложения.
А если русским языком: механизм оповещения системы о событиях.

Ближе к делу.

Ниже пример отправки лида в Битрикс 24 после отправки формы обратной связи. Предполагается, что после заполнения формы, создается элемент инфоблока "Обратная связь". Тут именно код самого обработчика, который будет подключен в /local/php_interface/init.php

AddEventHandler("iblock", "OnAfterIBlockElementAdd", Array("CRestApi", "generateLead"));

/**
 * Класс, включающий в себя методы Rest API
 */
class CRestApi {
    function generateLead(&$arFields) {

        if($arFields[IBLOCK_ID] == IBLOCK_FEEDBACK_ID)
        {
            CModule::IncludeModule("iblock");
            $webhook = 'https://yoururl.bitrix24.ru/rest/7/YOUR_WEBHOOK_CODE/';

        	/* Webhook*/
        	$queryUrl = $webhook.'crm.lead.add.json'; // Строка обращения к вебхуку
            if(isset($arFields["PROPERTY_VALUES"]["SOURCE"])) {
                $sourсe = '['.strtolower($arFields["PROPERTY_VALUES"]["SOURCE"]).']';
            }
            else {
                $sourсe = '';
            }

            // REST Api
        	$queryData = http_build_query(array( // Передаем данные
        		'fields' => array(
                            'TITLE' => $arFields["NAME"].' (www.redsgroup.ru) '.$sourсe,
                            'NAME' => $arFields["PROPERTY_VALUES"]["FIO"],
                            'PHONE' => array(array("VALUE" => preg_replace("/[^,.0-9]/", '', $arFields["PROPERTY_VALUES"]["PHONE"]), "VALUE_TYPE" => "WORK" )),
                            'PHONE_WORK' => preg_replace("/[^,.0-9]/", '', $arFields["PROPERTY_VALUES"]["PHONE"]),
                            'EMAIL' => array(array("VALUE" => $arFields["PROPERTY_VALUES"]["EMAIL"], "VALUE_TYPE" => "WORK" )),
                            'EMAIL_WORK' => $arFields["PROPERTY_VALUES"]["EMAIL"],
                            'COMMENTS' =>  $arFields["PROPERTY_VALUES"]["PHONE"].' '.$arFields["PROPERTY_VALUES"]["EMAIL"].'
Лид сгенерирован автоматически. Источник: redsgroup.ru.
'.$arFields["PROPERTY_VALUES"]["COMMENT"], 'SOURCE_ID' => 'WEB', //'ASSIGNED_BY_ID ' => 7, ) )); $curl = curl_init(); // метод cURL curl_setopt_array($curl, array( CURLOPT_SSL_VERIFYPEER => 0, CURLOPT_POST => 1, CURLOPT_HEADER => 0, CURLOPT_RETURNTRANSFER => 1, CURLOPT_URL => $queryUrl, CURLOPT_POSTFIELDS => $queryData, )); $result = curl_exec($curl); curl_close($curl); /* Webhook*/ } } }
  • YOUR_WEBHOOK_CODE - ваш код входящего вебхука. Как создать вебхук, описано ниже.
  • $queryUrl - Обращаемся к вебхуку по методу crm.lead.add в формате JSON
  • $queryData - Массив передаваемых данных

В классе CRestApi мы написали функцию generateLead(), которая вызывается при событии OnAfterIBlockElementAdd (после создания элемента инфоблока). Она получает все поля заполненной формы обратной связи и отправляет данные методом RestApi - crm.lead.add.json. Подобным способом мы можем создать контакт или компанию, но нужно использовать другую функцию Rest API. Все методы описаны в документации.

Создание вебхука

В меню Битрикс24 переходим: Приложения → Вебхуки → Добавить вебхук (входящий вебхук)

При создании даём права только на CRM.

Создание вебхука

После создания получаем код вебхука, который можно применять в наших Rest-запросах:

Полезные ссылки по материалу:

  1. CRM: Создание лидов из других сервисов.
  2. Webhooks - Получение доступа к REST API

Промокод

Мы дарим всем своим посетителям один промокод на выбор для вашего Битрикс 24:

REDS_5GB – Дополнительные 5Гб в облаке на один год

  REDS24   – 12 дополнительных пользователей

Подробнее: Битрикс 24 Промокод

27.10.2018 / Садовиков Сергей
Комментарии (0)