Полезные статьи

Интеграция интернет-магазина с транспортной компанией: API и готовые модули

31 августа 2023

API и готовые модули позволяют связать интернет-магазин с транспортной компанией за несколько часов. Разбираем варианты интеграции, типовые методы API и ловушки, о которых не пишут в документации

Ручное оформление каждого отправления через личный кабинет транспортной компании - это рабочий, но тупиковый путь. При 5 заказах в день на это уходит 15 минут, при 50 - уже полтора часа монотонной работы с неизбежными ошибками. Интеграция через API или готовый модуль CMS автоматизирует рутину: расчёт стоимости на сайте, создание отправлений, печать накладных, передачу трекинга покупателю. Современные операторы, такие как доставка грузов сдэк, предоставляют хорошо документированные API с песочницей для тестирования, что упрощает подключение даже для небольших команд разработки.

Два пути интеграции: API или готовый модуль

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

Готовые модули для CMS

Если ваш магазин работает на популярной платформе - 1С-Битрикс, WordPress + WooCommerce, OpenCart, Shopify, CS-Cart - скорее всего, у крупных транспортных компаний уже есть готовый плагин. Решение сдэк доставка в интернет магазины включает модули для большинства российских CMS.

Плюсы готовых модулей:

  • Установка за 10-30 минут без привлечения программиста.
  • Настройка через админку CMS: ввели ключ API, указали параметры - и калькулятор доставки появился на сайте.
  • Поддержка обновлений от разработчика модуля.
  • Типовые сценарии уже реализованы: расчёт, создание заказа, печать накладной, отслеживание.

Минусы:

  • Ограниченная кастомизация. Если вам нужна нестандартная логика (например, автовыбор оператора по региону), модуль может не справиться.
  • Зависимость от разработчика модуля. Если он прекратит поддержку, придётся искать замену или переходить на API.
  • Не все методы API доступны через модуль. Обычно покрыты основные, а продвинутые функции (webhook, пакетное создание) - нет.

Прямая интеграция через API

API (Application Programming Interface) - это набор методов, через которые ваш сайт общается с системой транспортной компании напрямую, без промежуточных модулей. Подходит для кастомных решений, самописных CMS и ситуаций, когда нужен полный контроль.

Типовые группы методов API доставки:

  • Расчёт стоимости и сроков (Calculator) - принимает параметры отправления (вес, габариты, откуда-куда) и возвращает варианты с ценами.
  • Создание заказа на доставку (Order) - передаёт данные получателя, состав, способ оплаты, формирует накладную.
  • Получение списка пунктов выдачи (Offices/Points) - для отображения на карте при оформлении заказа.
  • Статусы отправления (Tracking) - для отслеживания в реальном времени.
  • Печать накладных и штрихкодов (Print) - генерация PDF для наклейки на посылку.
  • Webhook-подписки (Hooks) - настройка автоматических уведомлений при смене статуса.

Расчёт стоимости на сайте: как сделать правильно

Калькулятор доставки на странице оформления заказа - обязательный элемент. Покупатель должен видеть итоговую стоимость до нажатия кнопки "оплатить". Типичная реализация:

  • Покупатель указывает город получения (автокомплит по базе населённых пунктов оператора).
  • Фронтенд отправляет AJAX-запрос на ваш бэкенд с параметрами: город, вес корзины, габариты.
  • Бэкенд обращается к API калькулятора транспортной компании.
  • Ответ возвращается покупателю: варианты доставки с ценой и сроками.

Важные нюансы: Управление заказами ведётся через личный кабинет СДЭК для ООО.

  • Кэшируйте ответы калькулятора на 15-30 минут. Иначе каждое изменение в корзине генерирует запрос к API, а у большинства операторов есть лимиты на количество обращений.
  • Обрабатывайте ошибки: если API оператора не отвечает, покажите средние сроки и стоимость из вашей базы, а не пустое поле.
  • Учитывайте объёмный вес. Если ваш товар лёгкий, но габаритный (подушки, пледы), расчёт по фактическому весу будет некорректным.

Webhook: реагируем на события в реальном времени

Классический подход к отслеживанию - периодический опрос API (polling): ваш сервер каждые 30-60 минут запрашивает статусы всех активных отправлений. Это работает, но неэффективно: большинство запросов возвращают тот же статус, что и раньше.

Webhook переворачивает схему: не вы спрашиваете оператора "что нового?", а оператор сам сообщает вам при каждом изменении статуса. Вы регистрируете URL на своём сервере, и при каждом событии (принят, в пути, доставлен, возврат) транспортная компания отправляет POST-запрос с данными.

Что это даёт на практике:

  • Мгновенное обновление статуса в вашей системе - без задержки в 30-60 минут.
  • Автоматическая отправка уведомлений покупателю при вручении.
  • Автозакрытие заказов в CRM при доставке.
  • Запуск бизнес-процессов: запрос отзыва через 3 дня после вручения, начисление бонусов, отправка предложения повторной покупки.
  • Снижение нагрузки на API оператора и на ваш сервер.

При настройке webhook обязательно реализуйте верификацию входящих запросов (по токену или подписи), повторную обработку при ошибках на вашей стороне и логирование всех событий. Это сэкономит часы отладки.

Тестирование и запуск

Вне зависимости от выбранного пути интеграции, перед выходом в продакшен обязательна проверка на тестовой среде. Большинство операторов предоставляют sandbox - тестовый контур API с отдельными ключами, где можно создавать заказы, менять статусы и тестировать webhook без реальных отправлений.

Чек-лист перед запуском:

  • Расчёт стоимости возвращает корректные значения для 10+ городов разной удалённости.
  • Заказ создаётся без ошибок: все обязательные поля заполнены, накладная генерируется.
  • Печать накладной работает: штрихкод читается сканером, данные совпадают с заказом.
  • Трекинг-номер сохраняется в заказе и отправляется покупателю.
  • Webhook-обработчик принимает все типы событий и корректно обновляет статусы.
  • При недоступности API сайт не ломается: показывает fallback-данные или альтернативный вариант.

Интеграция с транспортной компанией - это инвестиция, которая окупается быстро. При объёме 50 заказов в день автоматизация экономит минимум 2 часа ежедневной работы менеджера, исключает ошибки ручного ввода и ускоряет отправку. А для покупателя - это бесшовный опыт: выбрал способ доставки, увидел цену, оформил, получил трекинг, забрал посылку. Без лишних звонков и писем.




Дата публикации: 31/08/2023