Интеграция служб доставки для интернет-магазинов: пошаговый план и чек-лист
![]()
Интеграция со службами доставки — это подключение сайта, интернет-магазина, CRM, ERP или складской системы к программному интерфейсу перевозчика. После такого подключения магазин может автоматически показывать доступные отделения и почтоматы, рассчитывать ориентировочную стоимость доставки, создавать ТТН, печатать этикетки, передавать данные об отправлениях и обновлять статус заказа без ручного копирования информации.
Для украинского e-commerce чаще всего требуется интеграция с Новой Почтой, Укрпочтой и Meest. Компаниям, которые продают за границу, дополнительно подключают международные службы доставки: DHL, UPS, FedEx, Nova Post Europe и других операторов. В этой статье я объясню, как работает интеграция служб доставки для интернет-магазинов, какой способ подключения выбрать и что необходимо проверить перед запуском.
Что такое интеграция со службами доставки
Простыми словами, интеграция создает автоматический канал обмена данными между вашим магазином и системой перевозчика. Обычно такой обмен происходит через API. Чтобы глубже разобраться в принципе работы, рекомендую отдельный материал Brainlab о том, что такое API и как он связывает разные системы.
Без интеграции менеджер получает заказ на сайте, открывает кабинет перевозчика и вручную переносит туда данные клиента. Затем копирует номер ТТН обратно в CRM или админпанель, следит за статусом посылки и отдельно уведомляет покупателя. Когда заказов мало, такая схема кажется приемлемой. После роста продаж она превращается в постоянный источник ошибок, задержек и лишних операций.
После интеграции заказ и отправление становятся частями одного процесса. Система уже знает, что купил клиент, куда нужно доставить товар, кто является отправителем, каков вес посылки, способ оплаты и сумма наложенного платежа. Разработчику необходимо правильно сопоставить эти данные с полями API перевозчика и предусмотреть нестандартные ситуации: изменение адреса, частичный возврат, отказ от получения, несколько мест в отправлении или временную недоступность внешнего сервиса.
Мой практический совет: не начинайте интеграцию с выбора плагина. Сначала определите, где в вашей системе хранится достоверная информация о заказе. Для одного магазина это может быть WooCommerce, для другого — CRM, ERP или WMS. Именно эта система должна быть главным источником данных для создания отправления.
Какие процессы автоматизирует интеграция служб доставки для интернет-магазинов
Выбор способа доставки во время оформления заказа
Покупатель видит актуальный список городов, отделений, почтоматов или доступность адресной доставки. Вместо обычного текстового поля лучше использовать поиск с подсказками и фильтрами. Это уменьшает количество ошибок в названиях населенных пунктов и избавляет менеджера от необходимости уточнять адрес по телефону.
Расчет стоимости и ориентировочного срока
Магазин может передать перевозчику город отправления, город получения, вес, габариты, тип услуги и объявленную стоимость. В ответ система получает доступные тарифы и ориентировочный срок. Важно показывать пользователю, что финальная сумма может измениться после фактического измерения отправления или применения условий договора.
Автоматическое создание ТТН
Данные получателя и заказа уже есть в системе, поэтому менеджеру достаточно проверить параметры и нажать кнопку создания. Для массовой обработки можно формировать ТТН пакетно, объединять их в реестры и отправлять на печать на термопринтер.
Печать этикеток и сопроводительных документов
Для внутренних отправлений обычно требуется транспортная этикетка. Для международных посылок могут добавляться инвойсы, таможенные декларации, опись вложения и другие документы. Точный набор зависит от страны, перевозчика, товарной категории и условий договора.
Синхронизация статусов
Перевозчики используют собственные наборы статусов. В магазине их лучше привести к единой бизнес-логике: «ТТН создана», «передано перевозчику», «в пути», «прибыло в отделение», «получено», «отказ», «возврат». Тогда подключение второй или третьей службы доставки не нарушает отчеты и автоматизации.
Уведомление клиента
После создания отправления система может отправить номер ТТН через email, SMS, Viber, Telegram или личный кабинет. На сайтах с повторными покупками полезно показывать историю заказов и доставки в личном кабинете пользователя.
Аналитика логистики
Когда статусы и расходы хранятся централизованно, бизнес может анализировать долю возвратов, среднее время до отправки, популярность перевозчиков, географию заказов и проблемные этапы. Это уже не просто удобство для менеджера, а данные для управленческих решений.
Новая Почта, Укрпочта, Meest и DHL: что можно интегрировать
| Служба доставки | Когда подходит | Что обычно интегрируют | На что обратить внимание |
|---|---|---|---|
| Новая Почта / Nova Post | Продажи по Украине, доставка в отделения, почтоматы, курьером, отдельные международные сценарии | Справочники населенных пунктов и точек выдачи, создание отправлений, расчет, печать этикеток, трекинг, возврат и переадресация | Корректно работать с весовыми и габаритными параметрами, кешировать справочники, контролировать актуальность отделений |
| Укрпочта | Доставка по Украине и международные почтовые отправления | Адресный классификатор, поиск отделений и индексов, создание отправлений, этикетки, трекинг, международные документы | Для полной интеграции нужны токены доступа и должным образом оформленное сотрудничество; международные отправления содержат больше обязательных полей |
| Meest | Внутренняя и трансграничная доставка, e-commerce и работа с разными странами | Выбор пунктов обслуживания, создание и оформление отправлений, документы, статусы и трекинг | Функциональность и доступ к API могут зависеть от продукта, страны и коммерческих условий |
| DHL Express | Срочная международная доставка, экспортные заказы, глобальная логистика | Проверка доступных сервисов, тарифы, ориентировочное время, создание отправления, вызов курьера, этикетки, трекинг, таможенные данные | Нужен активный бизнес-аккаунт; особое внимание следует уделить адресам, товарным описаниям, HS-кодам, валютам и таможенным документам |
Возможности конкретного API меняются, поэтому перед разработкой необходимо проверять актуальную официальную документацию: интеграцию Новой Почты, API Укрпочты, интеграции Meest и MyDHL API.
Как работает интеграция доставки: путь одного заказа
- Клиент формирует корзину. Сайт знает состав товаров, сумму, примерный вес и габариты.
- Клиент выбирает страну и населенный пункт. Система показывает доступные службы и способы получения.
- Сайт получает точки выдачи или тариф. Запрос к API выполняется напрямую или через серверный модуль.
- Заказ сохраняется. Выбранная служба, отделение, адрес и другие параметры записываются вместе с заказом.
- Менеджер проверяет данные. При необходимости уточняет вес, количество мест, наложенный платеж или тип упаковки.
- Система создает отправление. API возвращает номер ТТН, этикетку и служебную информацию.
- ТТН привязывается к заказу. Номер доступен менеджеру, клиенту и другим подключенным системам.
- Статусы обновляются. Магазин получает изменения через webhook, push-механизм или периодические запросы.
- Автоматизации реагируют на статус. Например, после получения заказа сделка закрывается, а после отказа запускается сценарий возврата.
На практике самая сложная часть — не кнопка «Создать ТТН», а согласование данных между всеми системами. Если сайт, CRM и склад по-разному хранят номер телефона, адрес, вес или статус оплаты, ошибки будут появляться даже при технически правильной работе API.
Как подключить доставку: плагин, CRM, ERP или прямая API-интеграция
1. Готовый плагин или модуль
Это оптимальный вариант для типового магазина на WooCommerce или OpenCart, если бизнес-процесс не отличается от стандартного. Готовый модуль может добавить выбор отделения, создание ТТН и базовое отслеживание. Для WordPress у нас есть отдельная инструкция о том, как подключить Новую Почту к WooCommerce.
Преимущества: более быстрый запуск и меньший стартовый бюджет. Риски: зависимость от автора модуля, конфликты после обновления CMS, ограниченная логика и сложность доработки.
2. Интеграция через CRM
Подходит, когда менеджеры обрабатывают все заказы в CRM, а сайт только передает туда новые заявки. В такой архитектуре ТТН создается в CRM, а номер и статус возвращаются на сайт. Если готовая система не учитывает процессы компании, можно рассмотреть разработку индивидуальной CRM.
3. Интеграция через ERP или WMS
Для магазинов с несколькими складами, оптовыми продажами, резервированием товара и сложными правилами отгрузки источником данных часто становится ERP или WMS. Тогда создание отправления запускается после комплектации, а не сразу после оформления заказа. Brainlab также выполняет разработку ERP-систем под бизнес-процессы компании.
4. Прямая интеграция через API
Кастомная интеграция нужна для Laravel, собственной CMS, маркетплейса, B2B-портала или нестандартной логики. Она дает полный контроль над чекаутом, статусами, ролями, журналом ошибок, пакетной обработкой и взаимодействием с другими системами.
Выбор между готовой CMS и кастомным решением напрямую влияет на интеграции. Полезные сравнения есть в наших материалах Laravel или OpenCart и WooCommerce или кастомная CMS.
5. Middleware — промежуточный интеграционный слой
Когда заказы поступают с сайта, маркетплейсов и мобильного приложения, а отгрузку выполняют несколько складов, прямые связи между каждой парой систем быстро становятся неуправляемыми. В таком случае мы создаем промежуточный сервис, который принимает заказы, нормализует данные, работает с API перевозчиков и возвращает единые статусы всем каналам.
Как подключить Новую Почту, Укрпочту, Meest или DHL: пошаговый план
Шаг 1. Описать реальный процесс доставки
Необходимо зафиксировать, кто создает отправление, когда оно формируется, где хранится вес, кто меняет статус, как работают наложенный платеж, возвраты и частичная отгрузка. Без этого интеграция автоматизирует хаос, а не процесс.
Шаг 2. Выбрать службы и сценарии
Не ограничивайтесь названием перевозчика. Для каждого нужно определить способы доставки: отделение, почтомат, адрес, курьер, международное отправление, самовывоз из партнерской точки. Также решите, показывать ли все службы каждому клиенту или фильтровать их по стране, городу, сумме, весу и категории товара.
Шаг 3. Получить доступ к API
Для Новой Почты ключ обычно создается в бизнес-кабинете. Укрпочта предоставляет токены после оформления сотрудничества. Для Meest порядок доступа зависит от продукта и условий договора. Для MyDHL API компании нужен активный клиентский аккаунт DHL Express. Ключи нельзя добавлять в открытый JavaScript-код или передавать третьим лицам без контроля доступа.
Шаг 4. Подготовить карту данных
Мы сопоставляем поля магазина с полями перевозчика: ФИО, телефон, email, страна, город, почтовый индекс, улица, номер дома, отделение, вес, габариты, количество мест, описание товара, объявленная стоимость, наложенный платеж, валюта и данные отправителя.
Шаг 5. Настроить чекаут
Форма оформления должна быть быстрой, понятной и устойчивой к ошибкам внешнего API. Списки отделений нужно кешировать, поиск — оптимизировать, а пользователю показывать понятное сообщение, если служба временно не отвечает. Интеграция не должна блокировать весь заказ из-за кратковременного сбоя перевозчика.
Шаг 6. Реализовать кабинет менеджера
В заказе должны быть доступны создание, повторная генерация, удаление или обновление ТТН в соответствии с возможностями оператора. Также нужны печать этикетки, копирование номера, журнал запросов, пояснение ошибок и права доступа для разных ролей.
Шаг 7. Нормализовать статусы
Мы создаем внутреннюю таблицу соответствия между кодами перевозчиков и статусами магазина. Это позволяет подключать автоматические уведомления, аналитику, возврат товара на склад и финансовые сценарии без привязки к формулировкам конкретной службы.
Шаг 8. Провести тестирование
Проверяются обычные и проблемные сценарии: неправильный телефон, отсутствующее отделение, нулевой вес, несколько мест, наложенный платеж, безналичная оплата, международный адрес, повторное нажатие кнопки, тайм-аут API, возврат и изменение данных.
Шаг 9. Запустить мониторинг
После релиза необходимо отслеживать ошибки, время ответа API, количество неудачных созданий ТТН и расхождения статусов. Для стабильной работы интеграций после обновлений CMS и внешних сервисов полезна техническая поддержка сайта.
Интеграция с Новой Почтой для интернет-магазина
Самый распространенный базовый сценарий — показать покупателю города, отделения и почтоматы, сохранить выбранную точку в заказе и дать менеджеру возможность создать экспресс-накладную. Более полная интеграция включает расчет стоимости, адресную доставку, печать этикеток, реестры, автоматическое обновление статусов, возвраты и переадресацию.
В проектах с большим каталогом важно правильно передавать вес и габариты. Если эти параметры отсутствуют в товарах, система может использовать некорректные значения по умолчанию. Поэтому перед запуском я рекомендую провести аудит карточек товаров и правил упаковки.
Еще одна типичная задача — синхронизация справочников. Сайт не должен загружать тысячи отделений при каждом открытии чекаута. Данные лучше кешировать на сервере, обновлять по расписанию и обеспечить быстрый поиск по городу, номеру или адресу.
Интеграция с Укрпочтой
API Укрпочты охватывает отправления по Украине, международные почтовые отправления, адресный классификатор, поиск отделений и индексов и трекинг. Для полной интеграции необходимо получить параметры авторизации и использовать их только на сервере.
Для украинских адресов отдельное внимание уделяем индексам и классификатору. Для международной доставки добавляются страна, полный адрес латиницей, описание вложения, стоимость, валюта и таможенные сведения. Система должна проверять обязательные поля до отправки запроса, чтобы менеджер сразу видел, каких данных не хватает.
Если магазин работает и с Новой Почтой, и с Укрпочтой, не стоит создавать две несовместимые формы. Лучше разработать единый компонент выбора доставки, который меняет поля в зависимости от выбранного способа.
Интеграция с Meest
Meest используют для доставки по Украине и трансграничной логистики. В зависимости от продукта и договора интеграция может охватывать выбор пункта обслуживания, создание отправления, формирование документации и отслеживание.
Перед разработкой необходимо уточнить, с каким именно сервисом Meest работает бизнес, в каких странах, кто является плательщиком доставки и какие типы отправлений используются. Название группы одно, но технический сценарий для внутренней посылки и международного e-commerce может существенно отличаться.
Интеграция международных служб доставки: DHL и другие операторы
Международная доставка сложнее внутренней не только из-за большего количества полей. Здесь появляются таможенные правила, страны происхождения товаров, товарные описания, HS-коды, валюты, инвойсы, налоги, ограничения по категориям и разные форматы адресов.
MyDHL API позволяет проверять доступность сервисов, получать ориентировочные тарифы и сроки, создавать отправления, формировать этикетки, заказывать забор курьером и отслеживать посылки. Для некоторых сценариев доступен расчет ориентировочных пошлин и налогов, но окончательные суммы зависят от фактических данных и таможенного оформления.
Что нужно добавить в международный чекаут
- выбор страны до показа способов доставки;
- валидацию почтового индекса и структуры адреса;
- отдельные поля для области, штата или провинции, если это требуется в стране;
- написание имени и адреса латиницей;
- предупреждение о возможных налогах и таможенных платежах;
- ограничения для товаров, которые нельзя отправлять конкретной службой;
- корректное округление веса, стоимости и валютных значений.
Если магазин планирует экспорт, интеграцию доставки лучше закладывать еще на этапе проектирования. В материале о этапах создания современного интернет-магазина мы объясняем, почему интеграции нужно учитывать до запуска, а не добавлять в последний момент.
Технические требования к надежной интеграции
Серверное хранение ключей
API-ключи, токены и учетные данные хранятся в защищенной серверной среде. Их нельзя выводить в HTML, передавать в браузер или хранить в открытом репозитории.
Кеширование справочников
Города, отделения и почтоматы меняются не каждую секунду, поэтому их целесообразно синхронизировать по расписанию. Это ускоряет чекаут и уменьшает зависимость от времени ответа внешнего API.
Очереди для фоновых операций
Массовое создание ТТН, обновление статусов и отправку уведомлений лучше выполнять через очереди. Тогда кратковременный сбой перевозчика не блокирует работу менеджера, а неудачную задачу можно повторить автоматически.
Идемпотентность
Повторное нажатие кнопки или повтор запроса после тайм-аута не должны создавать две одинаковые накладные. Для этого используют внутренние идентификаторы операций, проверку уже созданной ТТН и блокировку дублирования.
Логирование
В логах необходимо сохранять время запроса, тип операции, результат и код ошибки, но не дублировать лишние персональные данные. Понятный журнал сокращает время диагностики, когда внешнее API меняет формат или возвращает нестандартный ответ.
Резервный сценарий
Пользователь должен иметь возможность завершить заказ, даже если расчет доставки временно недоступен. Например, магазин может сохранить выбор службы без финальной цены и сообщить, что менеджер уточнит ее после восстановления связи.
Типичные ошибки при интеграции служб доставки
1. Вся логика работает непосредственно в чекауте
Если каждое поле запускает тяжелый внешний запрос, оформление становится медленным. Часть справочников нужно кешировать, а запросы — выполнять только тогда, когда они действительно необходимы.
2. Отсутствует единая модель статусов
В результате аналитика показывает десятки похожих состояний, а автоматические письма работают только для одного перевозчика. Статусы необходимо нормализовать еще на этапе технического задания.
3. ТТН создается до проверки заказа
Если отправление генерируется сразу после нажатия «Заказать», система может создавать лишние накладные для неоплаченных или ошибочных заказов. Момент создания должен соответствовать процессу магазина.
4. Вес и габариты не хранятся в каталоге
Из-за этого расчет становится приблизительным, а менеджеры каждый раз исправляют отправление вручную. Для товаров с нестандартной упаковкой нужны отдельные правила объемного веса и количества мест.
5. API-ключ доступен в браузере
Это создает риск сторонних запросов от имени магазина. Все защищенные операции должны проходить через backend.
6. Не учтены изменения API и обновления модулей
Даже стабильная интеграция требует поддержки. Перевозчики добавляют поля, меняют справочники и обновляют правила. CMS и плагины также меняются, поэтому после обновлений нужны регрессионные тесты.
7. Нет сценария возврата
Многие команды автоматизируют только отправку. Но для e-commerce не менее важно обработать отказ, возврат на склад, повторную отправку и корректировку финансового статуса.
От чего зависят стоимость и сроки интеграции
Одинаковое название услуги может означать разный объем работы. Добавить список отделений в стандартный WooCommerce-магазин и построить двустороннюю синхронизацию между кастомным сайтом, CRM, ERP, складом и четырьмя перевозчиками — это разные по сложности проекты.
На оценку влияют:
- платформа сайта и качество существующего кода;
- количество служб и способов доставки;
- необходимость расчета тарифов и сроков;
- создание ТТН, этикеток, реестров и таможенных документов;
- интеграция с CRM, ERP, WMS, маркетплейсами и бухгалтерией;
- пакетная обработка, несколько складов и несколько юридических лиц;
- международные адреса, валюты и таможенные данные;
- необходимость доработки чекаута и личного кабинета;
- наличие технического задания, тестовой среды и доступов;
- требования к мониторингу, SLA и дальнейшей поддержке.
Для предварительной оценки мы сначала проводим аудит и определяем минимальный полезный сценарий. Часто бизнесу не нужно реализовывать все возможности API в первой версии. Рациональнее запустить выбор доставки, создание ТТН и статусы, а затем добавить реестры, возвраты, международные документы и аналитику.
Как Brainlab реализует интеграцию служб доставки
В Brainlab мы рассматриваем доставку как часть всей системы продаж, а не как отдельную кнопку в админпанели. Это особенно важно для магазинов, у которых уже есть CRM, складской учет, маркетплейсы или нестандартные правила отгрузки.
- Аудируем текущую архитектуру. Проверяем CMS, код, базу данных, модули, CRM, ERP и способ обработки заказов.
- Описываем бизнес-сценарии. Определяем, какие службы нужны, кто создает ТТН, когда обновляется статус и что происходит при возврате.
- Проектируем интеграцию. Выбираем готовый модуль, прямую API-интеграцию или промежуточный сервис.
- Разрабатываем и тестируем. Проверяем обычные, граничные и аварийные сценарии.
- Запускаем поэтапно. При необходимости сначала подключаем одну службу или отдельный канал продаж.
- Передаем документацию. Команда клиента получает инструкции для менеджеров и описание технических настроек.
- Поддерживаем после релиза. Следим за ошибками, обновлениями API и стабильностью обмена.
Интеграцию можно добавить на действующий сайт или заложить в новый проект. Если вы планируете полноценный запуск, ознакомьтесь с услугой разработки интернет-магазина под ключ. Для уже работающего ресурса подойдет доработка сайта с аудитом существующего кода.
Чек-лист перед началом интеграции
- определены все службы, страны и способы доставки;
- понятно, какая система является главным источником данных о заказе;
- получены бизнес-аккаунты, договоры, API-ключи или токены;
- в товарах указаны вес, габариты и другие необходимые логистические параметры;
- описаны правила наложенного платежа, бесплатной доставки и страхования;
- согласован момент создания ТТН;
- определены внутренние статусы заказа и их соответствие статусам перевозчика;
- предусмотрены возвраты, отказы, переадресация и повторные отправления;
- есть тестовая среда или план безопасного тестирования;
- настроены логи, мониторинг и назначен ответственный за поддержку.
Часто задаваемые вопросы об интеграции служб доставки
Что такое интеграция служб доставки для интернет-магазинов?
Это автоматический обмен данными между магазином, CRM или ERP и системой перевозчика через API или готовый модуль. Интеграция позволяет выбирать способ доставки, создавать ТТН, печатать документы и получать статусы без повторного ручного ввода.
Как подключить Новую Почту к интернет-магазину?
Необходимо получить API-доступ, установить совместимый модуль или разработать прямое подключение, настроить данные отправителя, выбор отделений, параметры посылки, создание ТТН и синхронизацию статусов. Перед запуском интеграцию тестируют на разных типах заказов.
Можно ли подключить Новую Почту, Укрпочту и Meest одновременно?
Да. Покупателю можно показывать несколько служб, а доступные варианты фильтровать по городу, стране, весу, сумме корзины или товарной категории. Для аналитики и автоматизации статусы разных перевозчиков желательно привести к единой модели.
Можно ли интегрировать доставку с уже готовым сайтом?
Да, но сначала необходимо проверить CMS, версию платформы, установленные модули, структуру заказов и качество кода. Для стандартного магазина может быть достаточно плагина, а для нестандартной системы потребуется API-интеграция или middleware.
Что лучше: готовый плагин или кастомная интеграция?
Готовый плагин подходит для типового процесса и быстрого запуска. Кастомная интеграция нужна, если есть несколько складов, CRM/ERP, специфические правила цены, пакетное создание ТТН, международная логистика или особый чекаут.
Обязательно ли иметь CRM?
Нет. Доставку можно интегрировать непосредственно с сайтом. CRM нужна тогда, когда в ней менеджеры обрабатывают заказы, общаются с клиентами и контролируют статусы.
Как работает расчет стоимости доставки?
Сайт передает перевозчику маршрут, вес, габариты, тип услуги, объявленную стоимость и другие параметры. API возвращает доступный тариф или ориентировочную цену. Финальная стоимость может отличаться после фактического измерения и применения условий договора.
Как подключить DHL и другие международные службы доставки?
Необходимо заключить договор или создать бизнес-аккаунт, получить API-доступ, настроить международные адреса, товарные описания, вес, валюту, таможенные данные и документы. Для DHL Express доступ к MyDHL API предоставляется активным клиентам после проверки учетной записи.
Что произойдет, если API службы доставки временно не работает?
Надежная интеграция не должна полностью блокировать заказ. Система может использовать кешированные справочники, сохранить выбор клиента, повторить фоновую операцию позже или передать задачу менеджеру. Ошибка должна быть зафиксирована в журнале и показана пользователю понятным сообщением.
От чего зависит стоимость интеграции?
От платформы, качества существующего кода, количества перевозчиков, глубины автоматизации, интеграций с CRM/ERP/WMS, международных документов, количества складов и требований к поддержке. Точную оценку можно дать после аудита и описания бизнес-сценариев.





