Инструкция по настройке обмена данными между облаком Битрикс24 и коробкой (создание и обновление сделок)
Многие пользователи платформы Пинкит настраивают нужные интеграции самостоятельно, используя инструмент экспорта и импорта интеграций. Сегодня делимся еще одной инструкцией по настройке интеграции. В этот раз рассмотрим популярный кейс обмена между двумя порталами Битрикс24 с созданием и обновлением сделок плюс контактов.
1. Настраиваем коммуникацию между порталами Битрикс24: проблема и решение
Рассмотрим настройки на примере кейса нашего заказчика, который предоставляет услуги кадрового аутсорсинга. Он берет на себя функции не только ведения кадрового документооборота, консалтинга и прочую рутину, но и поиск и подбор новых кадров для других компаний.
Читайте нашу подборку об автоматизации работы кадровой службы здесь.
У компании есть сеть филиалов, но база данных для всей сети должна быть единой для всех. Допустим, головное агентство находит нового соискателя на джоб-ресурсе по запросу клиента. Далее создает сделку и новый контакт, куда сохраняет данные о соискателе. Эти данные нужно передать в Битрикс24 филиала с выгрузкой всех полей. Чтобы избежать необходимости предоставления сотрудникам расширенных доступов, а также потери данных и времени, данный алгоритм необходимо автоматизировать.
Подборка статей об обмене между несколькими Битрикс24 по ссылке.
Бизнес-сценарий может варьироваться, подробно на этом останавливаться не будем. Рассмотрим технические детали решения: настройку интеграции Пинкит для обмена сделками и контактами между двумя порталами Битрикс24.
2. Настройка обмена сделками и контактами в одну сторону из одного портала Битрикс24 в другой портал Битрикс24. Создание сделки.
2.1. Шаг 1 - Откуда. Настраиваем интеграцию таким образом, чтобы в момент создания сделки на портале Битрикс24 (это коробка головной компании) в воронке "Подбор сотрудников" Пинкит получал эти данные. Также в момент создания сделки в Битрикс24 к ней привязывается контакт с данными соискателя:
2.2. Шаг 2 - Инструменты
2.2.1. Получить контакт
Выбираем из данных сделки контакт при помощи API-запроса GET-методом. Необходимо указать URL запроса: /crm.contact.get?id={{source.CONTACT_ID}}.
2.2.2. Проверить, что контакт в сделке есть
Проверяем инструментом "Если-Иначе". Необходимо указать название поля: source.CONTACT_ID.
Успешному результату проверки присваиваем значение 1, неуспешному - 0.
2.2.3. Если контакт в сделке есть, то найти его на другом портале:
Снова используем инструмент API-запроса GET-методом. Необходимо указать URL запроса: /crm.contact.list?filter[EMAIL]={{step1.result.EMAIL.0.VALUE}}. Так как поиск выполняется на другом портале Битрикс24, то необходимо указать доступ к этому порталу.
2.2.4. Контакт найден на другом портале или нет:
Проверяем инструментом "Если-Иначе". Необходимо указать название поля: step23.result.
Проверяем пустое значение поля, успешному результату проверки присваиваем значение 1, неуспешному - 0.
2.2.5. Создать контакт, если он есть в сделке и его нет на другом портале
Используем инструмент API-запроса, но уже POST-методом. Необходимо указать URL запроса: /crm.contact.add.
Также указываем заголовок: Content-Type: application/json и даем доступ ко второму порталу Битрикс24. Не забываем указать название поля: step24.
2.2.6. Выбрать, старый контакт или новый
Проверяем инструментом "Если-Иначе". Необходимо указать название поля: step24. Используем условие Число-Равно.
Успешному результату проверки присваиваем значение {{step23.result.0.ID|default()}}, неуспешному - {{step2.result}}.
2.2.7. 1.Паспорт (Проверка файла)
Проверяем инструментом "Если-Иначе". Необходимо указать название поля: source.UF_CRM_1710714. Используем условие Не пустое значение.
Успешному результату проверки присваиваем значение 1, неуспешному - 0.
2.2.8. 2. Паспорт (Получить файл)
Используем инструмент Скачать файл. Условие выполнения (название поля) - step4. Проверяем GET-методом. Необходимо указать URL запроса: ссылка_на_ваш_портал/{{source.UF_CRM_1710714.0.downloadUrl|default()}. Файл должен иметь расширение JPG.
2.2.9. 3. Паспорт (Вытащить формат файла)
Используем тип шага Замена по регулярному выражению. Условие выполнения - step4, Название поля - step5, Регулярное выражение - /.+\//.
Три описанных выше инструмента подходят для разных файлов, которые находятся в сделке в полях типа Файл. Не забывайте только менять названия полей, в которых лежат эти файлы.
2.2.10. Сопоставление стадий
Используем сопоставление данных. Название поля - source.STAGE_ID.
Затем необходимо указать соответствия значений, то есть, стадий на обоих порталах. Указываем названия стадий в соответствующих полях, как на скриншоте ниже.
2.3. Шаг 3 - Куда
На данном этапе настраиваем интеграцию так, чтобы она создавала сделку на втором портале в указанной воронке.
2.4. Шаг 4 - Сопоставление данных
Сопоставляем стандартные поля:
Название сделки - Название сделки;
ID контакта - {{step25|default()}}.
Далее сопоставляем пользовательские поля:
2.5. Шаг 5 - Запуск
Указываем название интеграции, шаг интеграции и запускаем.
3. Настройка обмена сделками и контактами в одну сторону из одного портала Битрикс24 в другой портал Битрикс24. Обновление сделки.
3.1. Шаг 1 - Откуда. Все аналогично, только триггером будет обновление сделки.
3.2. Инструменты. Настраиваются также, как в предыдущей интеграции.
3.3. Шаг 3 - Куда. Интеграция будет обновлять сделку на втором портале в указанной воронке.
3.4. Шаг 4 - Сопоставление данных
Аналогично предыдущей интеграции, сопоставляем ID сделки и ID контакта, а также пользовательские поля.
3.5. Шаг 5 - Запуск
Указываем название интеграции, шаг интеграции и запускаем.
Резюмируем
Отметим, что заказчик настраивал эти интеграции самостоятельно, поскольку мы предоставили ему шаблон интеграции с уже настроенными шагами, и ему требовалось только поменять названия полей, через инструмент экспорта интеграций Пинкит:
Затем необходимо просто импортировать интеграцию и добавить свои доступы:
Данный инструмент значительно сокращает время на настройку интеграций, а также избавляет от необходимости разработки с нуля.
Пример инструкции, который мы описали в статье, необходимо тестировать и отлаживать, так как бизнес-сценарий не для всех одинаков, и некоторые детали могут все же отличаться.
Регистрируйтесь по ссылке: https://lk.pinkit.io/register в личном кабинете Пинкит и тестируйте интеграции Битрикс24-Битрикс24 самостоятельно по нашей инструкции.