Интеграция с API Почты России для транспортной компании

Тип: Доработка системы учёта грузоперевозок
Назад к портфолио

Задача

После рейса логист формирует закрывающие документы - реестр и счёт - и отправляет оригиналы заказчику Почтой России. Пока заказчик не получит оригиналы, деньги за рейс не приходят, поэтому дата вручения письма важна не меньше самой перевозки.

Статус каждого письма проверяли вручную: открыть реестр, скопировать трек-номер, пробить его на сайте Почты России, вернуться и проставить статус. Писем в работе десятки, и такой обход занимал около получаса каждое утро. Заказчик попросил обновлять статусы сразу по всем реестрам, не заходя в каждый.

Что сделано

  • Обновление по всем реестрам сразу - кнопка над списком обходит все отправления через официальное API Почты России
  • Обновление одного реестра - отдельная кнопка в карточке, когда нужно проверить конкретное письмо
  • Статус на виду - состояние отправления и дата в колонке документов списка, то же самое в карточке заявки
  • Работа по расписанию - каждое утро система опрашивает Почту сама, логист приходит уже к свежим статусам; время и частоту можно менять
  • Сроки оплаты - статус "Вручено" проставляет дату вручения, от неё считается расчётная дата оплаты
  • Понятные состояния - десятки кодов операций Почты сведены к трём состояниям, которые нужны логисту в работе

Результат

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

Так же настраивается обмен со СДЭК, 1С, банками и системами электронного документооборота - схема одна и та же.

Технологии

Laravel 10 PHP 8 Vue.js 3 Ant Design Vue MySQL API Почты России Очереди и планировщик

Проект целиком

Доработка сделана в системе учёта грузоперевозок - Delivery Trans: заявки на перевозку, заказчики и перевозчики, маршрутные листы, документы и расчёт маржи по каждому рейсу.

Дмитрий Ченгаев Привет! Я веб-программист
Дмитрий Ченгаев
Нужна похожая интеграция?
Напишите мне
Или подпишитесь на канал в Telegram, чтобы следить за новыми кейсами ;)