Інтеграція Ozon Rocket з 1С-Бітрікс: від API до часткового викупу

Ручний розрахунок доставки та робота з альтернативними логістичними сервісами забирають час і гальмують обробку замовлень. Ми розробляємо інтеграцію Ozon Rocket з 1С-Бітрікс: підключаємо API, реалізуємо клас доставки та налаштовуємо сценарії часткового викупу. Наша команда бере на себе весь цикл — від аудиту до підтримки, щоб ви отримали надійне рішення, яке масштабується разом із бізнесом.
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Інтеграція Ozon Rocket з 1С-Бітрікс: від API до часткового викупу
Середній
~1-2 тижні

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

Часті запитання

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1523
  • Розробка веб-сайту для компанії ФІКСПЕР
    Розробка веб-сайту для компанії ФІКСПЕР
    1043
  • Розробка віджета онлайн-запису для медичного центру
    Розробка віджета онлайн-запису для медичного центру
    813
  • Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    906
  • Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    849
  • Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1200

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

Особливо якщо працюєш з альтернативними логістичними сервісами. Ozon Rocket — сучасне рішення, яке дає доступ до інфраструктури маркетплейсу: склади, сортувальні центри, кур'єрська мережа та понад 7000 ПВЗ по всій Росії. Інтеграція вимагає не просто підключення API, а грамотної реалізації класу доставки, обробки вебхуків та сценаріїв часткового викупу. Ми вже реалізували таку інтеграцію для 15 інтернет-магазинів: у кожному випадку вартість доставки знизилася на 25–40%, а терміни скоротилися в 2–3 рази. Порівняно з Поштою Росії, Ozon Rocket дешевший на 25–40% і швидший у 2–3 рази. Це підтверджують наші клієнти після успішного впровадження. Ми гарантуємо якість інтеграції та маємо досвід понад 5 років у цій сфері.

Як Ozon Rocket знижує витрати на доставку?

Ozon Rocket пропонує чотири основні варіанти доставки:

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

На відміну від Пошти Росії, Ozon Rocket повертає вартість одразу в API, без ручних тарифних сіток. А порівняно зі СДЕК — більше точок видачі та передбачувані терміни. Наприклад, в одному з проєктів із 12 000 замовлень на місяць інтеграція дозволила скоротити логістичні витрати на 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', // or '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 дні

Скільки коштує інтеграція?

Вартість розраховується індивідуально після аудиту проєкту. Ми оцінимо ваш магазин за один день. Зв'яжіться з нами для консультації — надішлемо комерційну пропозицію з точними термінами та вартістю. Замовте інтеграцію під ключ: ми налаштуємо модуль доставки з повним циклом — від розрахунку до часткового викупу. У вартість входить документація, налаштування доступів, навчання співробітників та технічна підтримка.