Автоматизация бизнеса / Блог ontech.pro
Интеграция двух систем: как назначить главный источник данных
Две системы могут хранить одну карточку клиента, но использовать её для разных задач. Если обе свободно исправляют все поля, очередной обмен способен вернуть старый адрес или затереть согласованную цену. Нужны правила владения данными.
Подготовила команда ontech.pro · · 3 мин чтенияНазначайте источник по полю
Не обязательно объявлять одну систему главной для всего. Учёт может отвечать за реквизиты и цены, CRM — за потребность и ответственного, сервисная система — за состояние обращения. Составьте таблицу полей, владельцев и направлений передачи.
Укажите, кто имеет право инициировать изменение и кто подтверждает его. Покупатель может предложить новый адрес через кабинет, но это не всегда означает немедленную замену реквизитов в учёте. Разделите запрос на исправление и принятую действующую запись.
Согласуйте идентификаторы и соответствия
Системы должны узнавать одну сущность по устойчивой связи, а не по похожему названию. Сохраните внутренние и внешние идентификаторы. При объединении дублей или смене кода нужна процедура обновления соответствий, иначе обмен снова создаст старые записи.
Отдельно определите создание и удаление. Отсутствие строки в очередной выгрузке может означать фильтр, временную ошибку или реальное выбытие. Нельзя автоматически трактовать любую пропажу как команду удалить данные во второй системе.
Опишите конфликт изменений
Представьте, что менеджер исправил телефон в CRM, а в учёте одновременно обновили карточку из старого документа. Правило «последняя запись побеждает» не учитывает качество источника. Для важного поля предпочтительнее установленный владелец или очередь согласования противоречия.
Неизвестное значение и намеренное очищение тоже различаются. Пустое поле из источника не должно стирать подтверждённое сведение без согласованного правила. Эти случаи нужно включить в задание наряду с обычной передачей заполненной строки.
Сохраните происхождение и задержку
В рабочем представлении полезно знать, откуда пришло значение и когда оно обновлялось. Для ошибки нужны идентификатор операции, затронутая запись и причина. Это позволяет быстро отделить устаревший источник от ошибки сопоставления или ручной правки.
Если обмен временно недоступен, определите, какие действия допустимы. Разрешённое ручное изменение должно либо вернуться в главный источник через предусмотренный маршрут, либо оставаться явно временным. Иначе восстановление связи неожиданно отменит работу сотрудника.
Примите правила на конфликтном наборе
Проверьте создание, обычное обновление, пустое значение, переименование, объединение дублей и одновременную правку. Для каждого примера заранее запишите ожидаемые значения в обеих системах. Успешная передача одной новой карточки не проверяет владение данными.
Передайте таблицу ответственности владельцам систем и согласуйте порядок её изменения. Новое поле нельзя подключать к обмену по умолчанию без понимания источника. Интеграция становится устойчивой, когда расхождение можно объяснить и исправить по правилу, а не каждый раз решать спор между двумя экранами.