Автоматизация amoCRM дважды создаёт контакт из формы из-за обратного вызова

  • Обновлено
  • Чтение ≈ 2 минуты

Краткий ответ

Узкая неисправность: форма создаёт контакт, событие запускает автоматизацию, которая повторно вызывает создание того же контакта. Это не обычное отсутствие поиска дублей при первой отправке формы.

В этой статье
  1. Что именно происходит
  2. Как отличить причины
  3. Пошаговая диагностика и устранение
  4. Проверка результата
  5. Когда обращаться к администратору

#Что именно происходит

Узкая неисправность: форма создаёт контакт, событие запускает автоматизацию, которая повторно вызывает создание того же контакта. Это не обычное отсутствие поиска дублей при первой отправке формы.

#Как отличить причины

Возможная причинаКак узнатьЧто делать
Обработчик события повторно отправляет формуЦикл «форма → событие → форма» возвращает заявку в началоВ журнале два последовательных создания после одной заявкиРазорвать повторный вызов
Ретрай вызывается после задержки ответаИнтеграция не проверяет уже выполненное действиеКлиент отправил один раз, сервер запросил создание повторноДобавить ключ идемпотентности
Воронка создаёт связанный контакт отдельноДва независимых действия создают одну сущностьВторая карточка создана ботом и отличается ответственнымОставить один источник записи

#Пошаговая диагностика и устранение

  1. Выберите безопасную форму для проверкиСохраните настройки исходной формы и создайте тестовую заявку с уникальным email. В «Списки» → «Контакты» найдите все карточки с этим адресом, запишите ID и время создания. Не объединяйте их до установления второго источника.
  2. Проверьте число отправок браузераРазработчик откроет средства разработчика браузера на тестовом сайте, вкладку «Сеть», затем один раз отправит форму и посмотрит число запросов к своему серверу. Если запрос один, но контактов два, источник повтора находится дальше по цепочке.
  3. Проследите запись до amoCRMВ закрытом серверном журнале сопоставьте уникальный идентификатор тестовой заявки с обращениями к API. Ищите два запроса создания контакта либо создание сделки с контактом плюс дополнительный запрос; не публикуйте журнал с телефонами клиентов.
  4. Проверьте автоматические действия воронкиАдминистратор откроет «Сделки» → «Настроить» и соответствующий источник/этап, затем найдёт правила, вызывающие внешние интеграции или создающие новые записи. Не выключайте сразу все роботы: отключение согласовывайте только для тестового потока.
  5. Сверьте события вебхукаРазработчик проверит типы add_contact и add_lead, которые могут запустить разные обработчики. Если обработчик на add_contact вновь создаёт контакт, добавьте проверку собственного происхождения и уже обработанного ID, не скрывая все события.
  6. Исправьте повтор в одном местеОставьте одну операцию создания контакта и обеспечьте поиск существующей записи с подходящими правами. Для повторных доставок одной заявки примените устойчивый идентификатор; он не должен объединять независимых людей с одинаковым номером.
  7. Проведите два независимых тестаПервую заявку отправьте единожды, вторую — как предусмотренный повтор с тем же тестовым идентификатором. Успех — нет второй ненужной карточки, а исходная сделка и журнал обработки сохранились; при сбое восстановите прежнюю настройку.

#Проверка результата

Одна форма формирует один контакт без циклического повторного создания при ретраях.

#Когда обращаться к администратору

Если после проверки проблема остаётся, передайте ответственному техническому специалисту сведения о версии приложения и типе учётной записи, времени контрольного события и результате конкретного шага. Не передавайте пароли, токены, данные клиентов и рабочие файлы через незащищённый канал.

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.