Сверка заказов и статусов RouteDesk
Версия 2.7
Ключ сопоставления
В локальной таблице храните номер заказа магазина и подтверждённый номер отправления RouteDesk. Добавляйте среду и организацию, если система обслуживает несколько контуров или клиентов. Не выводите номер отправления из имени получателя, адреса или совпадения суммы. При нескольких коробках или повторном выпуске этикетки сохраните связь с конкретным этапом заказа.
Какие записи проверять в первую очередь
Начните с заказов, у которых неизвестен итог создания, прошла ожидаемая дата доставки или есть конфликт между локальным статусом и кабинетом. Для обычных доставленных отправлений используйте плановую выборку, чтобы не расходовать рабочий лимит запросов без причины. Фоновая сверка не должна мешать выпуску этикеток и чтению статуса оператором.
Как отличить виды расхождений
Разделяйте отсутствие связи с отправлением, задержку обновления и подтверждённое различие статусов. Если нет связи, проверьте журнал исходящего создания. Если статус в кабинете верен, но локальная запись старая, проверьте журнал доставки webhook, внутреннюю очередь и запись результата. Если состояние расходится в самом кабинете, соберите историю и номер отправления для специалиста.
Безопасное исправление
Сверка может уточнить существующую связь и восстановить локальное представление из подтверждённого состояния. Для спорного заказа сначала сохраните текущую историю и причину поправки. Повторное создание отправления требует проверки прежней операции. Истечение 24 часов хранения Idempotency-Key особенно важно при тайм-ауте: тот же ключ уже не защищает от дубля.
Итог и журнал изменений
В отчёте сверки отметьте дату, среду, источник подтверждения, локальный заказ и действие дежурного. Различайте позиции, исправленные автоматически, и позиции, ожидающие сотрудника. Для каждой записи укажите причину и шаг проверки. Такой журнал помогает установить, почему интерфейс магазина показывает статус позже кабинета и к какой попытке относится изменение.
Проверка изменений от двух процессов
Фоновая сверка и обработчик webhook могут обновлять один заказ почти одновременно. Перед записью сравните наблюдаемое состояние с тем, на котором основано решение. Если запись изменилась, перечитайте её и заново оцените расхождение. Для контрольного случая запустите проверку на устаревшей копии записи и подтвердите, что она не стирает более свежее изменение.
Отчёт по незакрытым позициям
Передавайте следующей смене конкретные заказы и время очередной проверки. Для каждой позиции укажите, что уже подтвердилось, какое подтверждение отсутствует и кто может его получить. Не оставляйте спорную запись в общем счётчике без ссылки на историю. После ручного исправления проверьте, что следующая сверка видит согласованное состояние и не открывает прежний конфликт повторно.