Интеграция 1С-Битрикс со службой доставки Белпочта (Беларусь)

Даже одна отправка в деревню превращается в проблему: курьерские службы туда не ездят, а Белпочта остаётся единственным оператором, покрывающим всю Беларусь. Без интеграции менеджеры вручную заполняют данные на сайте почты — ошибки, задержки, потерянные статусы. Клиенты недовольны, а вы теряете врем
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Интеграция 1С-Битрикс со службой доставки Белпочта (Беларусь)
Средний
~1-2 недели

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1454
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    1017
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    759
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    879
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    802
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1162

Даже одна отправка в деревню превращается в проблему: курьерские службы туда не ездят, а Белпочта остаётся единственным оператором, покрывающим всю Беларусь. Без интеграции менеджеры вручную заполняют данные на сайте почты — ошибки, задержки, потерянные статусы. Клиенты недовольны, а вы теряете время. Ручное создание посылки занимает 10–15 минут, а при 50 заказах в день это часы бесполезной работы. Ошибки при вводе индекса или веса приводят к возвратам и повторным отправкам — до 20% заказов требуют корректировки. Наши инженеры с 10+ летним опытом интегрировали Белпочту с десятками магазинов на 1С-Битрикс, обработав более 100 000 посылок. Решение закрывает весь цикл: от расчёта стоимости до печати марки и трекинга.

Как интегрировать API Белпочты с каталогом Битрикс?

Белпочта предоставляет SOAP и REST API. Рекомендуем REST версию: https://api.belpost.by/api/v1. Авторизация через токен в заголовке Authorization: Token <token>. Токен выдаётся после заключения договора с Белпочтой и подключения услуги «Электронная доставка».

Основные методы API:

Метод Назначение Частота использования
POST /parcel/calculate Расчёт стоимости отправления при каждом изменении корзины
POST /parcel/create Создание посылки при оформлении заказа
GET /parcel/{id} Статус посылки по агентам раз в 6 часов
GET /parcel/{id}/label Получение марки в PDF при печати из админки

Расчёт стоимости реализуется через кастомный транспорт. Регистрируем обработчик на событие OnSaleDeliveryHandlersBuildList и добавляем класс BelposhtaHandler. В свойствах заказа обязательно добавляем индекс получателя (6 цифр) — без него расчёт невозможен.

class BelposhtaHandler extends \Bitrix\Sale\Delivery\Services\Base { protected function calculateConcrete( \Bitrix\Sale\Shipment $shipment ): \Bitrix\Sale\Delivery\CalculationResult { $result = new \Bitrix\Sale\Delivery\CalculationResult(); $response = $this->apiPost('/parcel/calculate', [ 'from_region' => $this->getOption('SENDER_REGION_CODE'), 'to_index' => $this->getRecipientIndex($shipment), 'weight' => max((int)($shipment->getWeight()), 50), // граммы, минимум 50г 'cost' => round($shipment->getOrder()->getPrice()), 'payment' => 'prepaid', // или cod ]); if (!empty($response['amount'])) { $result->setDeliveryPrice((float)$response['amount']); $days = $response['delivery_days'] ?? '3–7'; $result->setPeriodDescription("{$days} дней"); } return $result; } private function getRecipientIndex(\Bitrix\Sale\Shipment $shipment): string { $props = $shipment->getOrder()->getPropertyCollection(); return (string)($props->getItemByOrderPropertyCode('ZIP')?->getValue() ?? ''); } } 

Индекс получателя — обязательное свойство заказа. Добавляем его через \Bitrix\Sale\Property с кодом ZIP и привязываем к службе доставки. При выборе Белпочты свойство становится обязательным.

Как создать посылку и печатать марки?

После оформления заказа необходимо создать посылку. Отправляем POST-запрос с полными данными отправителя и получателя. В ответ получаем parcel_id, который сохраняем в заказ (например, в UF-поле).

public function createParcel(\Bitrix\Sale\Shipment $shipment): string { $order = $shipment->getOrder(); $props = $order->getPropertyCollection(); $payload = [ 'sender' => [ 'name' => $this->getOption('SENDER_NAME'), 'address' => $this->getOption('SENDER_ADDRESS'), 'phone' => $this->getOption('SENDER_PHONE'), ], 'recipient' => [ 'name' => $props->getItemByOrderPropertyCode('FIO')?->getValue(), 'phone' => $props->getItemByOrderPropertyCode('PHONE')?->getValue(), 'index' => $props->getItemByOrderPropertyCode('ZIP')?->getValue(), 'address' => $props->getItemByOrderPropertyCode('ADDRESS')?->getValue(), ], 'parcel' => [ 'weight' => max((int)$shipment->getWeight(), 50), 'cost' => round($order->getPrice()), 'contents' => 'Товар', ], 'payment' => $this->getPaymentType($order), // prepaid или cod 'cod_sum' => $this->getCodSum($order), ]; $response = $this->apiPost('/parcel/create', $payload); return (string)($response['parcel_id'] ?? ''); } 

Марка возвращается в PDF формате. Мы добавляем кнопку «Печать марки» в административную часть заказа. При нажатии вызывается агент, который получает PDF через GET /parcel/{id}/label и выводит на печать. Трекинг обновляется агентами раз в 6 часов — этого достаточно, так как Белпочта обновляет статусы раз в сутки. Для ускорения можно настроить вебхук от Белпочты, но они пока не предоставляют push-уведомлений.

Когда Белпочта — оптимальный выбор?

Белпочта в 2–3 раза дешевле курьерских служб в регионы, особенно для отправлений в деревни и посёлки. API позволяет автоматизировать весь цикл: от расчёта до печати марок. Для интернет-магазинов, ориентированных на всю Беларусь, это обязательный канал.

Особенности:

  • Минимальный вес — 50 г. Товары меньше оформляются как «мелкий пакет» по другому тарифу — модуль автоматически подбирает тариф.
  • Международная доставка: Белпочта участник UPU, отправка в страны СНГ и дальнее зарубежье. Таможенные декларации CN22/CN23 через отдельный метод API. Интеграция поддерживает заполнение деклараций на основе товарных позиций каталога.
  • Сроки: в пределах Беларуси 3–7 рабочих дней, в отдалённые районы до 10 дней. Фактические сроки зависят от загрузки отделений.
  • Наложенный платёж поддерживается, перечисление раз в неделю. Сумма наложенного платежа (cod_sum) автоматически рассчитывается как стоимость заказа плюс почтовый сбор.

Интеграция снижает трудозатраты на обработку заказов до 95%. Ошибки ручного ввода исключаются — адреса и веса берутся напрямую из заказа. Это особенно важно для интернет-магазинов с большим ассортиментом и высокой сезонностью. Экономия на обработке одного заказа составляет до 8 минут, что при 100 заказах в месяц даёт более 13 часов сэкономленного времени.

Что входит в работу

  • Аналитика: аудит текущего обмена, определение точек интеграции (расчёт, создание, печать, трекинг).
  • Проектирование: разработка схемы обработчиков, агентов, HL-блоков (если нужна дополнительная логика).
  • Разработка: реализация транспорта, агентов синхронизации, интерфейса печати. Кеширование запросов расчёта — тегированное, с привязкой к корзине.
  • Тестирование: на тестовом контуре Белпочты (песочница) — проверка всех сценариев, включая ошибки API и таймауты.
  • Запуск: установка модуля на боевой сервер, настройка агентов, обучение сотрудников. Документация по эксплуатации и восстановлению после сбоев.

Сроки работ

Состав Срок
Расчёт + создание посылки 3–5 дней
+ Печать марки + трекинг +2 дня
+ Международные отправления +2 дня
Полный функционал (все опции) 5–9 дней

Сроки варьируются в зависимости от сложности каталога и требований к обмену с 1С. Например, если уже настроены торговые предложения и инфоблоки v2.0, интеграция выполняется быстрее. Для интернет-магазинов, работающих с 1С через CommerceML, мы настраиваем передачу статусов доставки обратно в 1С.

Оценим ваш проект бесплатно — свяжитесь с нами для консультации. Закажите интеграцию — она окупится на первых ста отправлениях за счёт экономии времени и снижения возвратов. Получите готовое решение за 5–9 дней.