Разделите владельцев данных
CRM обычно хранит клиента и историю отношений, а Queue CTRL — текущий визит, статус очереди и этап обслуживания. Такое разделение снижает дублирование и спор о том, где правда.
Согласуйте справочники
Услуги, филиалы, сотрудники, расписания и категории клиентов должны иметь стабильные идентификаторы. Обмен названиями без идентификаторов почти гарантирует будущую археологию данных.
Определите события
Практический минимум: запись создана, посетитель прибыл, зарегистрирован, вызван, обслуживание начато, переведено и завершено. Для каждого события фиксируют время и контекст.
Проектируйте сбои заранее
Нужны повторная доставка, идемпотентность, журнал обмена и автономный сценарий на случай недоступности CRM. Интеграция считается готовой не тогда, когда всё работает, а когда понятно, что происходит при отказе.
Защитите персональные данные
Передавайте только необходимые атрибуты, разграничьте доступ по ролям и определите сроки хранения. В журналах не должны бесконтрольно появляться документы, телефоны и медицинские сведения.
Версионируйте контракт обмена
Описание API, схемы сообщений, коды ошибок и правила совместимости должны иметь версию. Это позволяет развивать CRM и Queue CTRL независимо, не превращая каждое обновление в совместный сеанс археологии.
Принимайте интеграцию по сквозным сценариям
Тестируйте создание и отмену записи, повторную доставку события, опоздание посетителя, перевод между услугами и восстановление после недоступности системы. Отдельно сверяйте время и идентификаторы во всех журналах.

