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