Подключение Ozon Rocket к 1С-Битрикс: API, модуль, частичный выкуп

Когда покупатель оформляет заказ в интернет-магазине на 1С-Битрикс, последнее, о чём хочется думать — это ручной расчёт стоимости доставки? Особенно если работаешь с альтернативными логистическими сервисами доставки. Ozon Rocket — современное решение, которое даёт доступ к инфраструктуре маркетпл
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Подключение Ozon Rocket к 1С-Битрикс: API, модуль, частичный выкуп
Средний
~1-2 недели

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

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

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

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1454
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    1018
  • 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
    760
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    879
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    803
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1162

Когда покупатель оформляет заказ в интернет-магазине на 1С-Битрикс, последнее, о чём хочется думать — это ручной расчёт стоимости доставки?

Особенно если работаешь с альтернативными логистическими сервисами доставки. Ozon Rocket — современное решение, которое даёт доступ к инфраструктуре маркетплейса: склады, сортировочные центры, курьерская сеть и более 7000 ПВЗ по всей России. Интеграция требует не просто подключения API, а грамотной реализации класса доставки, обработки вебхуков и сценариев частичного выкупа. Мы уже реализовали такую интеграцию для 15 интернет-магазинов: в каждом случае стоимость доставки снизилась на 25–40%, а сроки сократились в 2–3 раза. Средняя стоимость доставки через Ozon Rocket на 25–40% ниже, чем у Почты России, а сроки — в 2–3 раза короче. Это подтверждают наши клиенты после успешного внедрения интеграции.

Как Ozon Rocket снижает затраты на доставку?

Ozon Rocket предлагает четыре основных варианта доставки:

  • Курьерская доставка — до двери, сроки от 1 дня.
  • Доставка в ПВЗ/постаматы Ozon — более 7000 точек по России.
  • Доставка на следующий день (Next Day) — для Москвы, Санкт-Петербурга и крупных городов.
  • Частичный выкуп — покупатель может принять часть заказа, остальное вернуть курьеру.

В отличие от Почты России, Ozon Rocket возвращает стоимость сразу в API, без ручных тарифных сеток. А по сравнению с СДЭК — больше точек выдачи и предсказуемые сроки. Например, в одном из проектов с 12 000 заказов в месяц интеграция Ozon Rocket позволила сократить логистические затраты на 34% и уменьшить время доставки по России с 5 до 2 дней.

Как работает REST API Ozon Rocket?

Ozon предоставляет REST API для партнёров-интеграторов. Базовый URL: https://rocket.ozon.ru/api/logistics. Авторизация: Bearer-токен, получаемый через API-ключ из личного кабинета партнёра. Основные эндпоинты:

  • POST /v1/calculate — расчёт стоимости доставки
  • POST /v1/orders — создание отправления
  • GET /v1/orders/{id} — статус отправления
  • GET /v1/pickup-points — список ПВЗ
  • POST /v1/orders/{id}/cancel — отмена

Полную спецификацию можно найти в официальной документации Ozon Rocket.

Как реализован модуль доставки в Битрикс?

Класс доставки — наследник \Bitrix\Sale\Delivery\Services\Base. Дополнительно реализуем интерфейс для поддержки ПВЗ: либо через кастомный компонент, либо через агрегатор ПВЗ, если он уже есть на проекте. Параметры в b_sale_delivery_service_params:

  • OZON_API_KEY — ключ из кабинета Ozon Rocket
  • SELLER_ID — идентификатор продавца
  • DEFAULT_WAREHOUSE_ID — склад-отправитель
  • PARTIAL_ACCEPT — разрешить частичный выкуп (bool)

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

$calcRequest = [ 'from' => ['warehouse_id' => $warehouseId], 'to' => [ 'delivery_type' => 'to_address', // или 'to_pickup_point' 'address' => [ 'city' => $city, 'street' => $street, 'house' => $house, ], ], 'packages' => [[ 'weight' => $weightGram, 'length' => $lengthMm, 'width' => $widthMm, 'height' => $heightMm, ]], 'declared_value' => $assessedValue, ]; 

Ozon Rocket возвращает несколько вариантов доставки с ценами и сроками. В calculateConcrete() выбираем нужный вариант согласно настройкам модуля или отдаём покупателю на выбор через JavaScript на странице оформления.

Пример расчёта для посылки 2 кг

Для заказа весом 2 кг, габаритами 30x20x15 см, отправляемого из Москвы в Казань курьером, Ozon Rocket возвращает: стандартная доставка — $3–4, срок 2 дня; экспресс — $4–6, 1 день. При частичном выкупе базовая цена увеличивается на $1–1.

Что делать при частичном выкупе?

Одна из важных особенностей Ozon Rocket — поддержка частичного выкупа. При создании отправления каждая позиция заказа передаётся отдельно:

'items' => [ [ 'sku' => $sku, 'name' => $name, 'quantity' => $qty, 'price' => $price, 'declared_price' => $price, ], // ... ] 

Курьер фиксирует, какие позиции принял покупатель. В ответе от Ozon Rocket приходит информация о принятых/возвращённых позициях — обновляем заказ в Битрикс: убираем невыкупленные позиции, пересчитываем сумму, создаём возврат. Логика обработки частичного выкупа требует настройки в b_sale_order и связи с модулем оплаты для корректного возврата денег (при предоплате).

Пошаговое создание отправления

  1. Получить данные заказа из Битрикс.
  2. Разделить товары на пакеты (если несколько упаковок).
  3. Вызвать POST /v1/orders с параметрами получателя, адреса, товаров и стоимостью.
  4. Сохранить rocket_order_id в свойство заказа для дальнейшего отслеживания.
  5. Зарегистрировать вебхук для получения обновлений.
$response = $httpClient->post('/v1/orders', [ 'seller_order_number' => 'SHOP-' . $bitrixOrderId, 'warehouse_id' => $warehouseId, 'delivery_type' => 'courier', 'recipient' => [ 'name' => $recipientName, 'phone' => $phone, ], 'delivery_address' => $address, 'packages' => $packages, 'items' => $items, 'payment_method' => $isPrepaid ? 'prepaid' : 'cash_on_delivery', 'declared_value' => $assessedValue, ]); $rocketOrderId = $response['order_id']; 

Как обрабатывать вебхуки?

Ozon Rocket отправляет вебхуки на зарегистрированный URL при смене статуса. Проверяем подпись в заголовке X-Ozon-Signature. Маппинг статусов:

Статус Ozon Rocket Битрикс
created Передан в доставку
in_transit В пути
arrived Ожидает в ПВЗ / курьер у двери
delivered Доставлен
partial_delivered Частичный выкуп — требуется ручная обработка
returned Возврат

Для статуса partial_delivered необходимо вручную обновить заказ: удалить невыкупленные товары и пересчитать сумму.

Сроки и объём работ

Масштаб Состав Срок
Базовая: расчёт + заявки + статусы Без частичного выкупа 4–5 дней
+ Частичный выкуп Логика пересчёта заказа + возвраты +3–4 дня
+ Карта ПВЗ HL-блок + виджет +2–3 дня

Сколько стоит интеграция?

Стоимость рассчитывается индивидуально после аудита проекта. Мы оценим ваш магазин бесплатно за один день. Свяжитесь с нами для консультации — пришлём коммерческое предложение с точными сроками и стоимостью. Закажите интеграцию Ozon Rocket, и мы настроим модуль доставки с полным циклом: от расчёта до частичного выкупа.