Когда маркетингу мало аналитики: внедряем Mindbox в кастомную CRM
1 апреля 2026 г.
Содержание статьи

Мы уже некоторое время работали с Академией TOP – крупной сетью с сотнями филиалов по всей России. За плечами была интеграция CRM со сквозной аналитикой, которая дала бизнесу понимание эффективности рекламных каналов. Но маркетинг не ограничивался аналитикой – рассылки тоже были частью процесса. Сначала самописные email и SMS уведомления, потом SendPulse, затем Unisender. Каждый инструмент закрывал часть задач, но маркетингу хотелось большего: не просто рассылать письма, а полноценно работать с клиентской базой – строить сценарии коммуникаций, сегментировать аудиторию, автоматизировать цепочки взаимодействий. Так появилась задача интеграции с Mindbox.
Зачем нужен Mindbox
Mindbox – платформа автоматизации маркетинга. По сути, это большой инструментарий, который позволяет маркетологам самостоятельно работать с клиентской базой:
- CDP – единый профиль клиента, собранный из разных источников
- Омниканальные рассылки – email, SMS, push-уведомления, мессенджеры
- Сценарии коммуникаций – автоматические цепочки действий на основе поведения клиента
- Сегментация – гибкие фильтры для выделения целевых аудиторий
На практике это означает возможность, например, автоматически напомнить клиенту о назначенном визите в филиал, отправить серию писем после подачи заявки или выделить сегмент тех, кто оставил заявку, но не дошёл до договора, – и работать с ними отдельно. Всё это маркетологи могут настраивать сами, без привлечения разработчиков и без ручной работы в CRM.
Но для того, чтобы всё это заработало, Mindbox нужно наполнить данными – и не статичным дампом, а постоянным потоком актуальной информации из CRM.
С чем пришлось работать
Имеем собственную CRM-систему, разработанную с нуля. Это не Битрикс и не amoCRM, для которых у Mindbox есть готовые коннекторы. Интеграцию нужно было строить через API с нуля.
С этой проблемой мы уже сталкивались при внедрении сквозной аналитики – в CRM не было ярко выраженных сущностей «заказ» и «клиент» в том виде, в каком их ожидают внешние системы. Не было привычного жизненного цикла заявки с чётко определёнными статусами, не было единой сущности клиента с понятным набором полей. Чтобы отправить во внешнюю систему что-то осмысленное, нужно было сначала собрать целостную картину из того, как эти понятия реально устроены в CRM: кто клиент, что за заявка, на каком она этапе, какой продукт, какой филиал.
Как мы это построили
К моменту старта работ CRM уже умела собирать данные о клиентах и заказах – для системы сквозной аналитики. Но вся эта логика жила внутри одного сервиса и работала только на него. Дублировать её для Mindbox не хотелось, поэтому мы вынесли подготовку данных в отдельный общий слой.
Появились универсальные сущности – «клиент», «заказ», «продукт» – которые описывают данные CRM в нормализованном виде, не привязанном ни к одной внешней системе. Дальше они попадают в адаптеры: каждый адаптер преобразует универсальные данные в формат конкретной интеграции и отправляет их через соответствующий API.
Обработка построена на событийной модели. Когда в CRM происходит значимое действие – клиент оставил заявку, менеджер назначил встречу, был заключён договор – система генерирует событие. Слушатель перехватывает его и ставит задачу в очередь. CRM не ждёт ответа от внешних систем и продолжает работать, а данные уходят в Mindbox в фоне.
Такая архитектура позволила подключить Mindbox без переписывания того, что уже работало – мы добавили новый адаптер, который встроился в существующий конвейер обработки данных.
Какие данные передаём
Интеграция охватывает несколько типов данных.
Клиенты. При каждом значимом событии в CRM отправляются данные о клиенте: имя, телефон, email, подписки на каналы коммуникаций. Телефон выступает основным идентификатором – по нему платформа связывает все действия клиента в единый профиль.
Заказы. Заявка клиента проходит через воронку статусов, и каждое изменение передаётся на платформу. Вместе со статусом уходят дополнительные поля: дата визита, результат собеседования, дата создания договора и другие данные из истории клиента. Это позволяет маркетологам строить сценарии на основе воронки продаж.
Каталог продуктов. CRM автоматически генерирует YML-фид с актуальным списком продуктов. Платформа периодически забирает его и обновляет у себя справочник, что позволяет в сценариях и фильтрах оперировать конкретными продуктами.
Точки контакта. Каждый филиал представлен как точка контакта – со своим идентификатором, названием, адресом и телефоном. Выгрузка филиалов реализована отдельной задачей, которая формирует файл и загружает его на платформу.
От первых филиалов до полного охвата
Интеграция вводилась в эксплуатацию поэтапно.
Сначала – фундамент: клиент для работы с API Mindbox, общий слой подготовки данных, адаптер, каталог продуктов и точки контакта. Затем подключили несколько филиалов для тестирования, убедились в корректности данных и начали расширять охват – до подключения всех активных филиалов бренда.
После этого перешли к историческим данным – чтобы маркетологи могли работать не только с новыми клиентами, но и с накопленной базой. Оценили объём, согласовали ограничения с бизнесом, собрали данные за несколько лет в CSV-файлы и загрузили пакетами. Параллельно расширяли состав передаваемых полей.
Периодически появляются новые требования – доработка полей, приём входящих событий через вебхуки. Архитектура, заложенная на старте, позволяет добавлять такие доработки без переделки фундамента.
Что в итоге
Маркетинг получил полноценную платформу для работы с клиентской базой – сценарии коммуникаций, рассылки, сегментация. А чтобы это стало возможным, сущности клиентов и заказов, которые раньше существовали только внутри интеграции с системой аналитики, были вынесены в независимый слой. Событийная архитектура и система адаптеров теперь позволяют подключать новые интеграции, построенные на сущностях «клиент – заказ», с меньшими затратами, чем если бы каждую из них мы строили с нуля.