Технический разбор · amoCRM и Kommo

Как работает AntiTwiks

По каким правилам виджет считает карточки дублями, что происходит в реальном времени и при массовом прогоне, что переносится в основную карточку и почему дубль не удаляется, а нейтрализуется. Для тех, кто уже понял идею и хочет деталей.

Виджет AntiTwiks в amoCRM: список найденных дублей контактов и сделок

Назначение

AntiTwiks находит и объединяет дубли сделок, контактов и компаний в Kommo и amoCRM. Работает в двух режимах: проверяет каждую новую карточку в момент создания и разбирает всю накопленную базу за один массовый прогон.

Совпадения ищутся по телефону и email, а не по названию карточки: один и тот же клиент, заведённый трижды с разным написанием имени, будет найден. Данные дубля переносятся в основную карточку, после чего дубль нейтрализуется — без удаления, потому что удалять карточки интеграциям платформа больше не позволяет (подробнее — в разделе «Что происходит с дублем»).

Кому подойдёт: кабинетам, где заявки приходят из нескольких источников (сайт, WhatsApp, реклама, маркетплейсы) и один клиент регулярно заводится по второму разу; отделам, где менеджеры спорят за клиента; администраторам, которые вручную сводят базу после импортов.

Как виджет находит дубли

Для контактов и компаний правила задаются отдельно на своих вкладках, для сделок — в разделе «Правила». Базовая логика одинаковая.

Поля поиска

  • Телефон — сравниваются последние 10 цифр. Формат записи не важен: +7 (999) 123-45-67 и 89991234567 — одно и то же.
  • Email — точное совпадение без учёта регистра.

Логика

  • ИЛИ — совпало любое из выбранных полей. Ловит больше дублей.
  • И — должны совпасть все выбранные поля. Строже, почти нет ложных срабатываний.

Дополнительные предохранители

  • Порог схожести имени — карточки с непохожими именами не объединяются, даже если телефон совпал.
  • Исключения — списки телефонов и email, которые никогда не считаются признаком дубля (общий номер офиса, info@, номер колл-центра).
  • Флажок-исключение — отдельное поле-чекбокс в карточке: помеченная карточка не участвует в проверке.
  • Лимит контактов у компании — компания с большим числом контактов не будет объединена случайно.
Как формируются группы. Виджет объединяет пересекающиеся совпадения в кластеры: если карточка A совпала с B по телефону, а B с C по email, все три попадают в одну группу. В группе выбирается одна основная карточка, остальные считаются дублями.

Режим реального времени

Kommo сообщает виджету о создании карточки, после чего задача уходит в очередь. Обработка всегда фоновая — карточка, в которой вы работаете, не «залипает».

  • Задержка — от 1 до 60 секунд. Нужна, чтобы другие интеграции успели дописать в карточку телефон и email: сразу после создания их часто ещё нет.
  • Действие при находке — «слить дубль» или «пометить тегом». Тегирование удобно для обкатки: неделю смотрите, что виджет находит, и только потом включаете слияние.
  • После слияния — можно автоматически добавить примечание со сравнением карточек и поставить задачу ответственному.
На тарифе START реальное время работает только в режиме пометки тегом: дубли находятся и помечаются, но не сливаются. Слияние на START доступно через массовый прогон (100 объединений в месяц).

Массовое слияние по всей базе

Отдельная вкладка виджета. Один прогон разбирает то, что накопилось за годы, и проходит три фазы — они видны в интерфейсе как дерево шагов:

  1. Загрузка данных. Виджет выгружает карточки из CRM постранично, с ограничением частоты запросов.
  2. Поиск дубликатов. Индекс строится на нашей стороне, и совпадения ищутся локально — без единого поискового запроса к CRM. Поэтому база из десятков тысяч карточек не превращается в тысячи обращений к API.
  3. Слияние. Пары обрабатываются по очереди; в дереве видно, сколько слито, сколько пропущено и по какой причине.

Прогон можно остановить в любой момент — уже выполненные слияния остаются, каждое из них по-прежнему обратимо. Если квота тарифа заканчивается посреди прогона, он останавливается сразу, а оставшиеся пары попадают в «пропущено» с причиной «квота исчерпана».

Очередь. На тарифе MAX прогон получает приоритет и может выполняться в два потока; на START и PRO — один поток. Это влияет только на скорость, не на результат.

Какая карточка останется основной

Для контактов и компаний основную карточку выбирает выбранная вами стратегия:

  • самая ранняя по дате создания — обычно «историческая» карточка клиента;
  • самая поздняя по дате создания — свежая, с актуальными данными;
  • самая ранняя или самая поздняя по дате изменения.

Для сделок логика богаче и задаётся правилами: правила срабатывают по приоритету сверху вниз, а внутри правила вы выбираете, какая сделка остаётся — самая ранняя, самая поздняя, та, где есть задача, та, что дальше по этапам, или с наибольшим бюджетом. Дополнительно можно ограничить правило одной воронкой, исключить отдельные этапы и задать сортировку для тай-брейка.


Что переносится в основную карточку

Перенос всегда происходит до того, как дубль будет нейтрализован.

  • Поля. Значения дубля дописываются в основную карточку. Внутри одного поля значения сводятся без повторов: телефоны сравниваются по последним 10 цифрам, email — без учёта регистра, поэтому один и тот же номер в двух форматах не задваивается.
  • Теги. Переносятся, кроме служебных: наши собственные метки дублей на основную карточку никогда не попадают.
  • Задачи. Открытые задачи дубля переназначаются на основную карточку — ни одна задача не остаётся висеть на нейтрализованном дубле.
  • Связи. Связанные сделки, компании и контакты перепривязываются к основной карточке и отвязываются от дубля.
  • Переписка. Чаты дубля (WhatsApp, Telegram и другие каналы) перепривязываются к основной карточке — вместе со всей историей сообщений. Это работает для контактов; у компаний чатов нет, а у сделок переписка приходит через их контакты.
  • Примечание о слиянии. В основной карточке появляется служебное примечание со сравнением: что было в дубле, что в основной карточке и что получилось в итоге.
Что перенести нельзя. Примечания и системные события таймлайна дубля (смены полей, ответственного, статусов) остаются на дубле: API истории событий доступен только на чтение. Именно поэтому дубль не уничтожается, а сохраняется в нейтрализованном виде — вся его история остаётся доступной.

Что происходит с дублем: нейтрализация вместо удаления

По стандартам безопасности публичных интеграций Kommo и amoCRM удаление контактов, сделок и компаний закрыто на уровне API: метода удаления там нет, запрос возвращает ошибку. Это защита от ситуации, когда сторонний виджет одной ошибкой сносит базу. Поэтому «просто удалить дубль» сегодня не может ни одна легальная интеграция.

AntiTwiks вместо удаления делает следующее:

  • Контакт или компания. Все поля дубля очищаются, карточка переименовывается в «Дубль (склеен)». Она перестаёт всплывать в поиске, не подтягивается к новым сделкам и не участвует в дальнейшем поиске дублей. Данные при этом не теряются — они уже в основной карточке.
  • Сделка. Дубль переводится в системный статус «Закрыто и не реализовано» с причиной потери «Дубль» и проставленной датой закрытия. Её контакты и компании к этому моменту уже перепривязаны к основной сделке.
  • Ответственный. Опционально нейтрализованный дубль можно переназначить на отдельного пользователя, чтобы он не мозолил глаза в списках работающих менеджеров.
  • Служебный тег. Каждый дубль получает нашу собственную метку — по ней виджет отличает свои карточки от чужих (пользовательский тег для этого не годится: его переименовывают и в него пишут другие интеграции).
  • Тег To_delete. Когда срок отмены истёк и карточку уже нельзя восстановить, ночной процесс добавляет этот тег. Отфильтруйте базу по нему — и удалите отработавшие дубли пачкой руками в интерфейсе CRM.
Важное правило безопасности. Если перепривязка связей прошла не полностью, дубль не нейтрализуется: он остаётся нетронутым и только помечается тегом. Лучше оставить дубль в базе, чем осиротить сделку или задачу.

Расклейка: как отменить слияние

Перед каждым слиянием сохраняется полный снимок обеих карточек. Пока действует срок отмены, слияние разбирается обратно из карточки дубля или из истории слияний — одной кнопкой.

Что возвращается: поля основной карточки к прежнему виду; имя и все поля дубля восстанавливаются из снимка; связи и задачи перепривязываются обратно; для сделки возвращается исходный статус и снимается причина потери.

Что вернуть нельзя: перепривязанные чаты — в CRM нет операции «отвязать чат», поэтому после расклейки переписка останется видна и в основной карточке. Данные при этом не теряются.

  • START — 15 дней
  • PRO — 30 дней
  • MAX — 90 дней

Отменить можно как отдельное слияние, так и результат целого массового прогона. По истечении срока снимок удаляется, и карточка помечается тегом To_delete как готовая к ручному удалению.


Настройки

Вкладки виджета: Контакты, Компании, Правила (для сделок), Массовое слияние, История, Настройки.

На вкладках контактов и компаний

  • включён или выключен поиск дублей;
  • действие: слить дубль или пометить тегом, и название тега;
  • поля поиска (телефон, email) и логика И/ИЛИ;
  • задержка слияния в секундах;
  • стратегия выбора основной карточки;
  • исключения: телефоны и email, максимум контактов у компании;
  • действия после слияния: примечание со сравнением, задача ответственному, ответственный для нейтрализованного дубля.

Настройки компаний можно зеркалить с контактов — тогда достаточно настроить один раз.

Правила для сделок

Список приоритетных правил: какая сделка остаётся, ограничение по воронке, область слияния (в пределах воронки или по всем), исключённые этапы, объединение значений полей, примечание о слиянии и отложенное слияние с задержкой.


История слияний

Таблица всех операций: дата, основная карточка, по какому совпадению найден дубль, сам дубль и статус. Фильтры: все, слитые, пропущенные, помеченные тегом, ошибки. Для пропущенных видна причина — например, исчерпанная квота или несовпадение по порогу схожести имени.

Из строки открывается окно сравнения: что было в основной карточке, что в дубле и что получилось в итоге, с кнопкой отмены слияния и сроком, до которого отмена доступна.


Ограничения, о которых стоит знать заранее

  • Удаление карточек невозможно — его нет в API для интеграций. Финальное удаление всегда делает человек в интерфейсе CRM, по тегу To_delete.
  • Примечания и таймлайн дубля не переносятся — API событий доступен только на чтение. История остаётся на нейтрализованном дубле.
  • Перепривязка чатов необратима — операции «отвязать чат» в CRM нет.
  • Квоты считаются раздельно — реальное время и массовые прогоны имеют собственные счётчики, и лимит одного не расходует лимит другого.

Тарифы

Цена за весь аккаунт, а не за пользователя. Тестового периода нет — вместо него постоянный бесплатный тариф START. Тариф выбирается и оплачивается внутри виджета.

START
$0 / навсегда
Реальное время — только пометка тегом · 100 массовых объединений в месяц · отмена 15 дней
MAX
$45 / мес
Без лимитов · приоритет в очереди и два прогона одновременно · отмена 90 дней
Нужен счёт или есть вопросы? Напишите на sales@ventas-boost.com — оформим оплату по счёту или годовой инвойс.

Установка

  1. 1Нажмите кнопку установки или найдите «AntiTwiks» в маркетплейсе Kommo или amoCRM.
  2. 2Авторизуйте виджет — предоставьте доступ к вашему кабинету.
  3. 3Откройте настройки виджета и нажмите «Сохранить» — после этого появятся вкладки «Контакты», «Компании», «Правила», «Массовое слияние» и «История».

Другие виджеты

Все виджеты >

Продвинутые поля

Группировка полей, преобразование переключателей в удобные контролы, добавление единиц измерения.

Пересменка

Управление сменами менеджеров и автораспределение сделок. Равномерная нагрузка, статистика в реальном времени.

Массовое создание сделок

Массово создаёт сделки для обзвона из выбранных контактов. Задачи планируются в рабочее время.

Диагностика кабинета

Автоматический аудит здоровья CRM: воронки, сделки, задачи, активность — с рекомендациями ИИ.

Свяжитесь с нами

Остались вопросы по виджету?

Оставьте заявку — поможем с установкой, настройкой и подберём виджеты под ваш процесс в Kommo CRM.

или напишите
в мессенджеры
+1