Разделите владельцев данных

CRM обычно хранит клиента и историю отношений, а Queue CTRL — текущий визит, статус очереди и этап обслуживания. Такое разделение снижает дублирование и спор о том, где правда.

Согласуйте справочники

Услуги, филиалы, сотрудники, расписания и категории клиентов должны иметь стабильные идентификаторы. Обмен названиями без идентификаторов почти гарантирует будущую археологию данных.

Определите события

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

Проектируйте сбои заранее

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

Защитите персональные данные

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

Версионируйте контракт обмена

Описание API, схемы сообщений, коды ошибок и правила совместимости должны иметь версию. Это позволяет развивать CRM и Queue CTRL независимо, не превращая каждое обновление в совместный сеанс археологии.

Принимайте интеграцию по сквозным сценариям

Тестируйте создание и отмену записи, повторную доставку события, опоздание посетителя, перевод между услугами и восстановление после недоступности системы. Отдельно сверяйте время и идентификаторы во всех журналах.