Чат-бот подключают к CRM через её программный интерфейс (API), под отдельной служебной учётной записью с минимальными правами. Бот сначала ищет клиента, потом находит или создаёт карточку, записывает обращение и передаёт диалог человеку с контекстом. Подключение ломается не на передаче данных, а на трёх вещах: бот не узнаёт клиента и создаёт вторую карточку, повторная доставка одного сообщения создаёт вторую сделку, и у бота прав больше, чем нужно.
Статья — про устройство обмена, а не про выбор бота. Услуга описана на странице «Интеграция чат-бота с CRM», а о том, где достаточно сценарного бота и где нужен агент, сказано в статье «Чем ИИ-агент отличается от чат-бота».
Что бот делает с CRM: пять операций и риск каждой
Слово «интеграция» скрывает пять разных операций, и каждая требует своих правил. Сначала нужно выписать, какие из них нужны вашему боту. Бот, который только отвечает по базе знаний, обходится чтением. Бот, который принимает заявки, пишет. Бот, который двигает сделки, получает самые опасные права.
| Операция | Что происходит | Главный риск | Правило |
|---|---|---|---|
| Найти клиента | бот ищет контакт по телефону, почте или идентификатору мессенджера | Нашёлся не тот человек: общий номер организации, чужой телефон | Поиск по нормализованному значению, при нескольких совпадениях бот не выбирает сам |
| Прочитать данные | статус заказа, ответственный, история обращений | Бот рассказывает клиенту лишнее: чужой заказ, внутренний комментарий | Читаются только разрешённые поля, внутренние заметки не выдаются |
| Создать карточку | новый контакт, обращение или сделка | Дубль карточки, пустые обязательные поля | Создание только после поиска, повтор не плодит записей |
| Дополнить карточку | комментарий, поле, задача менеджеру | Бот затирает то, что менеджер заполнил руками | Бот добавляет, а не перезаписывает; для чужих полей запись запрещена |
| Изменить состояние | смена стадии, назначение ответственного | Ошибочное закрытие сделки, потеря клиента в воронке | Для критичных стадий бот только предлагает, подтверждает человек |
Принцип такой же, как для агентов с действиями: чем необратимее операция, тем меньше самостоятельности у бота. Подробно о правах и подтверждениях — в статье «Права ИИ-агента и подтверждение действий».
Как бот узнаёт клиента и не создаёт вторую карточку
Главная причина дублей — не ошибка кода, а то, что бот и CRM знают клиента по разным идентификаторам. В мессенджере у человека есть внутренний номер аккаунта, телефон он может не показывать, а в CRM карточка заведена по телефону и фамилии.
| Идентификатор | Откуда берётся | Надёжность | Что учесть |
|---|---|---|---|
| Телефон | клиент пишет сам или делится контактом через кнопку мессенджера | Высокая, если подтверждён | Приводится к единому виду: код страны, без пробелов и скобок; 8 и +7 считаются одним номером |
| Идентификатор в мессенджере | приходит с каждым сообщением | Высокая для того же канала | Не подходит для связи между каналами; хранится в карточке отдельным полем |
| Электронная почта | клиент указывает в диалоге | Средняя | Приводится к нижнему регистру; общие ящики организаций дают ложные совпадения |
| Имя и фамилия | клиент пишет в диалоге | Низкая | Использовать как уточнение, но не как ключ: тёзки, сокращения, ошибки |
| Номер заказа или договора | клиент называет сам | Высокая, но не для всех | Подтверждает связь с уже существующим клиентом, если номер найден в CRM |
Порядок действий всегда один: нормализовать идентификатор, найти карточку, при единственном совпадении использовать её, при нескольких отдать вопрос человеку, при отсутствии создать новую. Если клиент пришёл через новый канал и найден по телефону, идентификатор мессенджера добавляется к существующей карточке, а не к новой.
Правило слияния должно быть записано до запуска: что считается дублем, какую карточку оставляют, как переносят историю. Слияние бот не выполняет: его делает оператор.
Повторы, сбои и порядок: как записывать в CRM без дублей и потерь
Сообщения в мессенджерах доходят до бота повторно, интернет между ботом и CRM обрывается, CRM иногда отвечает ошибкой. Если бот на каждый такой случай создаёт новую запись или молча теряет данные, дубли и потери гарантированы. Нужны четыре механизма.
- Ключ повтора. Каждое событие получает собственный номер (например, идентификатор сообщения мессенджера). Перед записью проверяется, не обработано ли оно, и повторная доставка ничего не создаёт.
- Очередь записи. Бот не пишет в CRM прямо из обработчика сообщения. Событие кладётся в очередь, отдельный обработчик пишет в CRM, а при ошибке повторяет с растущими паузами.
- Блокировка одновременных записей. Если клиент отправил три сообщения подряд, обработчики не должны одновременно искать «нет карточки» и создать три. Запись по одному клиенту идёт по очереди.
- Журнал обмена. Для каждого события видно: получено, записано, ошибка, повтор. По журналу отвечают на вопрос «почему обращения нет в CRM».
Что видит клиент при недоступности CRM, решается отдельно. Бот может продолжить диалог, сохранив обращение в очереди, и сказать, что заявка принята. Нельзя отвечать «заявка создана номер такой-то», пока CRM номер не вернула.
Получать изменения из CRM можно двумя способами: вебхуки (CRM сама сообщает о событии) и периодический опрос. Вебхуки быстрее, но требуют доступного адреса и защиты от подделки запроса. Опрос проще, но отстаёт и упирается в ограничения частоты запросов, которые различаются у систем. Общие правила проектирования обмена описаны в статье «Проектирование API для интеграций».
Сопоставление полей: что бот заполняет и кто хозяин данных
Бот записывает в CRM то, что узнал из диалога, а CRM содержит то, что ведут менеджеры. Если не договориться, чьё значение главное, они будут затирать друг друга. Для каждого поля выбирается хозяин.
| Поле карточки | Откуда значение | Хозяин | Поведение при конфликте |
|---|---|---|---|
| Имя, телефон, почта | диалог | менеджер после первого контакта | Бот заполняет пустое поле, непустое не меняет, расхождение пишет комментарием |
| Источник и канал | бот | бот | Записывается всегда, по нему считают обращения по каналам |
| Тема обращения | бот по сценарию или классификации | бот до взятия в работу, затем менеджер | После передачи человеку бот поле не меняет |
| Стадия сделки | CRM | менеджер | Бот читает, меняет только на начальную стадию создаваемой сделки |
| Ответственный | правила распределения CRM | CRM | Бот не выбирает, а использует правило системы |
| Согласие на обработку данных | диалог | бот фиксирует, юрист описывает | Записывается дата и формулировка согласия, а не просто отметка |
Справочники CRM (источники, воронки, причины отказа) бот не придумывает, а берёт значения из системы. Новое значение появляется в справочнике по решению владельца CRM. Если справочники в CRM ведутся в нескольких местах, это нужно исправить до подключения, иначе бот размножит беспорядок. Общая схема распределения хозяев данных между системами описана в статье «Интеграция 1С с CRM: типовые схемы».
Права бота в CRM и персональные данные
Бот работает под служебной учётной записью. Права на неё выдаются по списку операций из первой таблицы, а не по принципу «дайте администратора, чтобы заработало».
- Минимум по операциям. Если бот не должен удалять и объединять карточки, у записи нет такого права. Проверяется попыткой, а не чтением настроек.
- Минимум по данным. Бот видит только те воронки и поля, с которыми работает. Если CRM позволяет ограничить доступ по подразделению или воронке, ограничение включают.
- Секреты. Ключи и токены лежат в хранилище секретов, а не в коде и не в репозитории. Срок жизни и порядок замены записаны в регламенте.
- Тестовая и боевая среда. Бот сначала подключается к тестовому аккаунту CRM или к отдельной воронке. Боевая запись включается после приёмки.
- Журнал. По каждой записи видно, что бот создал или изменил и по какому событию. Это нужно и для разбора ошибок, и для вопросов службы безопасности.
Диалог содержит персональные данные: телефон, имя, иногда адрес и обстоятельства. Сначала решается, какие реплики попадают в CRM целиком, а какие только в виде выжимки, и где хранится полная история диалога. Персональные данные граждан России обычно должны храниться на серверах в России, это относится и к базе диалогов бота, и к самой CRM. Тексты согласий и политику обработки готовит юрист заказчика, мы юридических консультаций не даём.
Передача человеку: что видит оператор и как не потерять диалог
Бот закрывает типовое и должен вовремя звать человека. В подключении к CRM это означает, что передача — не сообщение «ждите», а задача менеджеру с контекстом.
- Причина передачи. Клиент попросил человека, бот не уверен, вопрос вне темы, клиент недоволен. Причина записывается в карточку, потому что по ней потом настраивают бота.
- Сводка диалога. Менеджер читает несколько строк, а не прокручивает переписку. Полный диалог доступен по ссылке.
- Срок реакции. Задача получает срок, а при его нарушении уведомляется руководитель смены. Если сотрудников нет на связи (ночь, выходной), бот честно говорит, когда ответят.
- Возврат боту. После решения вопроса менеджером диалог либо закрывается, либо возвращается боту. Иначе бот и человек отвечают клиенту одновременно.
Круглосуточного дежурства мы не обеспечиваем. Если ваш регламент требует ответа человека ночью, это решается вашей сменой, а не ботом и не нашим сопровождением.
Как проверить подключение до запуска
Проверка идёт по сценариям, а не по ощущению «работает». Набор сценариев составляется на обследовании и входит в приёмку.
- Новый клиент пишет впервые: создаются контакт и обращение, поля заполнены, источник указан.
- Существующий клиент пишет из нового канала: идентификатор добавлен к старой карточке, новая не создана.
- Один номер у двух карточек: бот не выбирает, а отдаёт вопрос оператору.
- Одно сообщение доставлено дважды: запись одна.
- Три сообщения подряд от нового клиента: карточка одна.
- CRM недоступна: обращение лежит в очереди, после восстановления записано один раз.
- Менеджер изменил поле, затем клиент написал снова: поле не затёрто.
- Попытка бота выполнить запрещённую операцию (удаление, слияние) отклонена правами.
- Передача человеку: задача создана с причиной и сводкой, срок поставлен.
- Клиент спрашивает про чужой заказ: бот не раскрывает данные.
Затем запуск на части трафика: один канал или один отдел, а не все сразу. Первые дни смотрят журнал обмена, число дублей и отзывы менеджеров. Критерий успеха — не «бот отвечает», а «менеджер не перепроверяет записанное».
Типичные ошибки и признаки плохого подключения
Если в предложении подрядчика встретилось что-то из списка, задайте уточняющий вопрос.
| Признак | Что за ним стоит | Что спросить |
|---|---|---|
| Бот создаёт карточку на каждое обращение | Нет поиска перед созданием, дубли неизбежны | По какому идентификатору бот ищет клиента до создания |
| Бот работает под администратором | Права выданы «чтобы заработало» | Список операций и прав служебной учётной записи |
| Нет очереди и журнала обмена | При сбое CRM обращения теряются молча | Где видно, что событие получено, но не записано |
| Ключи доступа лежат в коде | Утечка репозитория даёт доступ к CRM | Где хранятся секреты и как они заменяются |
| Подключение сразу к боевой CRM | Тестовые записи попадут в отчёты менеджеров | Есть ли тестовый контур и план включения |
| Передача человеку без контекста | Менеджер переспрашивает клиента | Что именно попадает в задачу менеджеру |
Если CRM самописная или её возможности упираются в недостающий интерфейс, иногда дешевле доработать систему, чем строить обходной обмен. Это разобрано в статье «CRM на заказ или готовая».
Что делаем мы и с чего начать
Начинаем с обследования: 200 000 ₽ и 2–3 недели за один канал и одну CRM, 350 000 ₽ и 3–4 недели за несколько каналов и систем. На выходе таблица операций бота, правила идентификации и слияния, матрица хозяев данных, список прав служебной учётной записи и набор сценариев приёмки. Стоимость вычитается из первого этапа, если продолжаете с нами, а документом можно пользоваться и без нас.
Дальше лёгкий пилот одного сценария и одной CRM (150 000–400 000 ₽, 2–8 недель), затем при необходимости тяжёлый пилот с действиями в CRM и вывод в эксплуатацию. Мы делаем один канал и одну связку, а не внедрение CRM целиком, не дежурим круглосуточно и не даём юридических консультаций. Исходники лежат в вашем репозитории с первого коммита. Цены и сроки — на странице «Тарифы», описание услуги — на странице «Интеграция чат-бота с CRM».
Частые вопросы
Как подключить чат-бот к CRM?
Через программный интерфейс CRM под отдельной служебной учётной записью с минимальными правами. Бот нормализует идентификатор клиента, ищет карточку, при отсутствии создаёт её, записывает обращение через очередь с защитой от повторов и при необходимости передаёт диалог менеджеру с причиной и сводкой.
Почему бот создаёт дубли карточек?
Чаще всего потому, что создаёт карточку до поиска, ищет по ненормализованному телефону или не защищён от повторной доставки сообщения. Лечится порядком «нормализовать, найти, потом создать», ключом повтора для каждого события и последовательной записью по одному клиенту.
Какие права нужны боту в CRM?
Столько, сколько операций он выполняет: чтение разрешённых полей, создание контакта и обращения, добавление комментария. Удаление, объединение карточек и закрытие сделок ему обычно не нужны. Права проверяют попыткой запрещённой операции перед запуском.
Можно ли подключить бота к amoCRM или Битрикс24?
Да, у обеих систем есть программные интерфейсы для чтения и записи контактов, сделок и задач. Ограничения на частоту запросов и набор полей у них свои, их выясняют на обследовании. Бот должен работать с ними через очередь, а не прямыми вызовами из обработчика сообщений.
Что видит клиент, если CRM недоступна?
Бот продолжает диалог и сообщает, что обращение принято, пока запись ждёт в очереди. Номера заявки он не называет, пока CRM его не вернула. После восстановления запись создаётся один раз.
Нужен ли генеративный ИИ для подключения к CRM?
Нет. Подключение не зависит от того, как бот понимает вопросы. Модель помогает разобрать свободный текст и заполнить поля, но запись, проверки и права выполняет обычный код. Модели доверять запись напрямую в CRM нельзя: сначала проверка форматов и справочников.
Сколько стоит подключение бота к CRM?
Обследование стоит 200 000 ₽ за один канал и одну CRM, 350 000 ₽ при нескольких каналах и системах. Лёгкий пилот — 150 000–400 000 ₽ за 2–8 недель, тяжёлый с действиями в CRM — 400 000–1 200 000 ₽ за 2–3 месяца. Точная цена называется после обследования.
Где хранятся диалоги и персональные данные?
На ваших серверах или у выбранного вами хостера. Персональные данные граждан России обычно должны храниться на серверах в России. В CRM попадает то, что нужно менеджеру, а полная переписка лежит в базе диалогов бота с журналом доступа.