Форма на сайте может показывать зелёное сообщение и всё равно не приводить к работе менеджера. Заявка застряла в почте, потеряла источник рекламы, создала дубль в CRM или попала не в ту воронку. Поэтому интеграция сайта с CRM — это не просто «поставить виджет», а договориться о данных, статусах и действиях при ошибке.
Эта задача отличается от обмена товарами и заказами с 1С. Здесь речь о пути обращения: форма, чат, звонок или заказ должны превратиться в понятную запись, которую сотрудник сможет обработать и связать с результатом.
Сначала опишите путь заявки
Нарисуйте путь одного обращения от первого действия до закрытия сделки:
- посетитель открывает страницу и заполняет форму;
- сайт проверяет обязательные поля и показывает результат отправки;
- данные передаются в промежуточный сервис или CRM;
- создаётся контакт, лид или сделка;
- менеджер получает уведомление и меняет статус;
- источник и итог сделки возвращаются в аналитику.
На схеме должны быть видны не только зелёные стрелки, но и ответ на вопрос «что произойдёт, если шаг не сработал». Если CRM временно недоступна, заявка должна попасть в очередь повторной отправки или хотя бы сохраниться в журнале для ручной обработки.
Составьте карту полей
Перед настройкой API соберите таблицу соответствий. Не полагайтесь на одинаковые названия полей: в одной системе может быть «Телефон», в другой — «phone», а в третьей номер хранится в нескольких форматах.
| На сайте | В CRM | Правило |
|---|---|---|
| Имя | Имя контакта | Не перезаписывать существующее значение пустой строкой. |
| Телефон | Телефон | Привести к единому формату и проверить обязательность. |
| Комментарий | Описание лида | Сохранить исходный текст без потери переносов. |
| Страница и UTM | Источник/дополнительные поля | Передать вместе с обращением, а не только в письмо. |
| Тип формы | Воронка или тег | Различать заявку на аудит, заказ и обратный звонок. |
Решите заранее, где хранятся согласие на обработку данных, время отправки, URL страницы и технический идентификатор обращения. Набор данных должен соответствовать реальной задаче бизнеса: лишние поля усложняют форму и увеличивают объём информации, за который отвечает команда.
Разделите контакт, лид и сделку
Повторная заявка не всегда означает нового клиента. Один человек может написать с разных страниц, позвонить после формы и затем оформить заказ. Если каждый сигнал создавать как новый контакт, база быстро наполнится дублями. Если склеивать всё по одному телефону без проверки, можно ошибочно объединить разные обращения.
Опишите правила:
- по каким полям искать существующий контакт;
- когда создавать новый лид, а когда добавлять событие к текущему;
- что делать с двумя открытыми обращениями одного клиента;
- какая форма создаёт сделку сразу, а какая — задачу менеджеру;
- кто и когда переводит запись в «в работе», «успешно» или «нецелевой».
Эти правила лучше проверить на пяти реальных сценариях, чем выяснять их после запуска по десяткам дублей.
Сохраните источник обращения
Поле «пришёл с сайта» почти бесполезно для маркетинга. Передавайте URL страницы, UTM-метки, реферер, рекламную кампанию и тип устройства там, где это возможно. Сохраняйте исходные значения отдельно от поля, которое менеджер может изменить вручную.
Проверьте сценарий без рекламных меток и переход из органического поиска. Пустое UTM-поле не означает, что источник неизвестен: он может определяться по рефереру или сессии. Главное — заранее решить, какая система считается источником истины для отчёта.
Не забудьте про ошибки и повторную отправку
Интеграция считается готовой, когда команда знает, как обнаружить сбой. Нужны понятные признаки:
- ответ формы не скрывает ошибку передачи в CRM;
- система записывает идентификатор отправки и время;
- повторная попытка не создаёт пять одинаковых лидов;
- администратор получает уведомление о постоянной ошибке;
- менеджер может найти обращение, которое пришло во время недоступности CRM.
Не отправляйте пароль или полный токен в JavaScript на странице. Секреты должны храниться на серверной стороне или в защищённом сервисе интеграции. Доступ к журналам и данным формы выдавайте только тем, кому он нужен для поддержки процесса.
Проведите приёмку по сценариям, а не по галочкам
- Отправьте форму с компьютера, телефона и медленным соединением.
- Проверьте обязательное поле, неверный телефон и длинный комментарий.
- Убедитесь, что письмо клиенту и уведомление менеджеру не противоречат друг другу.
- Проверьте UTM-метки, страницу отправки и тип обращения.
- Отключите тестовый доступ к CRM и убедитесь, что ошибка фиксируется.
- Повторите отправку после восстановления и проверьте отсутствие дубля.
Для магазина добавьте тесты заказа, отмены, возврата и изменения статуса. Не смешивайте в одной проверке передачу каталога и передачу заявок: у этих потоков разные поля, частота обмена и последствия ошибки.
Хорошая интеграция незаметна для клиента. Он получает подтверждение, менеджер видит полную задачу, маркетолог понимает источник, а владелец может восстановить цепочку событий. Этого важнее, чем длинный список подключённых сервисов.
При разработке или доработке сайта заранее опишите CRM, формы, поля и правила обработки ошибок — тогда интеграция войдёт в архитектуру, а не станет хрупкой вставкой после запуска.
