Подключите WhatsApp к CRM Bitrix24 на номере Coexistence
Направьте вебхуки номера в рабочий процесс n8n, а он пусть обращается к Bitrix24 через URL входящего вебхука. Метод crm.duplicate.findbycomm находит лид, контакт или компанию с телефоном отправителя, crm.lead.add создаёт лид, если такой записи нет, а crm.timeline.comment.add записывает сообщение в таймлайн записи. Команда по-прежнему отвечает из приложения WhatsApp Business.
Максимальное число телефонов или адресов email, которое crm.duplicate.findbycomm принимает в одном запросе.
Устойчивая частота REST-запросов на тарифах Bitrix24 ниже Enterprise, где допускается 5.
Статус, который Bitrix24 возвращает вместе с QUERY_LIMIT_EXCEEDED, когда счётчик запросов превышает порог.
Как n8n обращается к Bitrix24?
Через входящий вебхук. В Bitrix24 он служит не приёмником, а учётными данными. Вы создаёте его в разделе ресурсов для разработчиков, выбираете допустимые права доступа и получаете URL с адресом портала, идентификатором создавшего его пользователя и секретным кодом. Если добавить к этому URL имя метода, вызов REST API выполняется от имени этого пользователя и с его правами.
Поэтому в n8n каждый шаг с Bitrix24 представляет собой узел HTTP Request, который отправляет запрос на этот URL с методом, например crm.lead.add.json. Проходить OAuth и публиковать приложение не нужно. Выдайте вебхуку только право на CRM и создайте его от пользователя, чьих прав хватает на все лиды и контакты, которые должен видеть процесс: Bitrix24 проверяет доступ именно от его имени.
Какие методы Bitrix24 вызывает рабочий процесс?
Три, по порядку, после того как узел Webhook в n8n получит сообщение от Meta.
crm.duplicate.findbycomm с типом PHONE и номером отправителя возвращает идентификаторы лидов, контактов и компаний, у которых есть этот номер. Такой поиск подходит лучше всего: он ищет сразу по всем трём типам и рассчитан на сравнение контактных данных, а не текстового поля.
Если ничего не найдено, crm.lead.add создаёт лид: в названии имя из профиля WhatsApp, а номер записан в поле телефона. Затем crm.timeline.comment.add добавляет текст сообщения комментарием к записи, принимая ENTITY_TYPE, ENTITY_ID и COMMENT. Комментарий появляется в таймлайне рядом со звонками и письмами, то есть там, где менеджер по продажам и так смотрит.
POST https://yourcompany.bitrix24.com/rest/1/<secret>/crm.duplicate.findbycomm.json
{ "type": "PHONE", "values": ["14155550188"] }
POST .../crm.lead.add.json
{ "fields": { "TITLE": "WhatsApp: Maria", "PHONE": [{ "VALUE": "14155550188", "VALUE_TYPE": "MOBILE" }] } }
POST .../crm.timeline.comment.add.json
{ "fields": { "ENTITY_TYPE": "lead", "ENTITY_ID": 4211, "COMMENT": "do you have anything friday?" } }Как ограничение частоты запросов влияет на процесс?
Bitrix24 учитывает REST-вызовы по схеме дырявого ведра. Каждый запрос увеличивает счётчик, счётчик каждую секунду уменьшается с постоянной скоростью, а когда он превышает порог, следующий запрос получает ответ 503 с QUERY_LIMIT_EXCEEDED. На тарифах Enterprise счётчик уменьшается на 5 в секунду при пороге 250, на остальных тарифах на 2 при пороге 50.
Каждое входящее сообщение стоит два или три вызова, поэтому ровный поток до порога не доходит. Всплеск доходит: пятьдесят клиентов, ответивших на один шаблон за минуту, дают до 150 вызовов. Включите для узлов HTTP Request повторную попытку при ошибке с короткой паузой и запускайте выполнения процесса по одному: тогда всплеск будет постепенно уходить в Bitrix24, а не отскакивать от него.
Попадают ли в Bitrix24 ответы, набранные на телефоне?
Да, могут. На номере Coexistence приложение WhatsApp Business продолжает работать, и когда кто-то отвечает из него, Meta отправляет копию исходящего сообщения на тот же адрес вебхука, в поле smb_message_echoes.
Вторая ветка процесса обрабатывает такие копии так же, как входящие сообщения, только комментарий помечается как исходящий. В записи видна вся переписка: реплики клиента и ответы магазина по порядку.
Ответы, которые процесс отправляет сам через Cloud API, уже находятся в его руках в момент отправки. Записывайте их сразу, не дожидаясь, пока вебхук вернётся.
Распространённые ошибки
- Вставлять URL входящего вебхука в клиентский код или общий документ. Секретный код в нём даёт все права, выданные вебхуку.
- Создавать вебхук от пользователя, который видит не все лиды. Тогда поиск пропускает записи, и процесс создаёт дубликаты.
- Отправлять всплеск вызовов без повторных попыток. Bitrix24 отвечает 503 QUERY_LIMIT_EXCEEDED, и эти сообщения не попадают в таймлайн.
Подключите номер на easycoexistence.com, укажите рабочий процесс n8n как адрес его вебхука, и Bitrix24 начнёт получать переписку. От US$ 9 за подключённый номер в месяц, до US$ 1 по мере добавления номеров, первые 3 дня бесплатно.
Часто задаваемые вопросы
Будут ли чаты видны в открытых линиях Bitrix24?
Нет, при таком процессе не будут. Он записывает лиды и комментарии таймлайна через REST API CRM, а на переписку отвечают из приложения WhatsApp Business или сам процесс.
Можно ли использовать Make вместо n8n?
Да. Сообщение принимает пользовательский вебхук Make, а модули HTTP вызывают те же три метода по URL входящего вебхука.
Может ли процесс отправить шаблон WhatsApp по данным из Bitrix24?
Да. n8n считывает из Bitrix24 нужные данные и отправляет утверждённый шаблон через Cloud API, используя идентификатор номера телефона и токен.
Хранит ли EasyCoexistence сообщения?
Нет. Meta доставляет каждый вебхук прямо на ваш URL в n8n. EasyCoexistence не хранит содержимое переписки.
Читайте дальше
Готовы начать?
Настройте WhatsApp Coexistence за несколько минут, а не месяцев. Приложение продолжит работать на телефоне.
Начать бесплатный пробный периодПроверено по состоянию на