Коли покупець оформлює замовлення в інтернет-магазині на 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 повертає: стандартна доставка — 280 ₽, термін 2 дні; експрес — 450 ₽, 1 день. При частковому викупі базова ціна збільшується на 50 ₽.
Що робити при частковому викупі?
Одна з важливих особливостей Ozon Rocket — підтримка часткового викупу. При створенні відправлення кожна позиція замовлення передається окремо:
'items' => [
[
'sku' => $sku,
'name' => $name,
'quantity' => $qty,
'price' => $price,
'declared_price' => $price,
],
// ...
]
Кур'єр фіксує, які позиції прийняв покупець. У відповіді від Ozon Rocket приходить інформація про прийняті/повернуті позиції — оновлюємо замовлення в Бітрікс: видаляємо невикуплені позиції, перераховуємо суму, створюємо повернення. Логіка обробки часткового викупу вимагає налаштування в b_sale_order та зв'язку з модулем оплати для коректного повернення грошей (при передоплаті).
Покрокове створення відправлення
- Отримати дані замовлення з Бітрікс.
- Розділити товари на пакети (якщо кілька упаковок).
- Викликати
POST /v1/orders з параметрами отримувача, адреси, товарів та вартістю.
- Зберегти
rocket_order_id у властивості замовлення для подальшого відстеження.
- Зареєструвати вебхук для отримання оновлень.
$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 дні |
Скільки коштує інтеграція?
Вартість розраховується індивідуально після аудиту проєкту. Ми оцінимо ваш магазин безкоштовно за один день. Зв'яжіться з нами для консультації — надішлемо комерційну пропозицію з точними термінами та вартістю. Замовте інтеграцію під ключ: ми налаштуємо модуль доставки з повним циклом — від розрахунку до часткового викупу. У вартість входить документація, налаштування доступів, навчання співробітників та технічна підтримка.
Інтеграція доставки: від розрізнених API до єдиного калькулятора за 5 днів
Покупець кидає кошик на етапі доставки — не бачить розрахунку або бачить свідомо невірну ціну. Кожен такий випадок втрачає конверсію. Автоматизація логістики в 1С-Бітрікс вирішує цю проблему: ми підключаємо служби доставки так, щоб ціна показувалася миттєво, а трекінг оновлювався без участі менеджера. Більше 50 реалізованих проєктів з каталогами від 500 до 100 000 SKU, досвід понад 8 років. Середній час підключення однієї транспортної компанії — 4 дні.
Як прискорити підключення служб доставки до 1С-Бітрікс?
Головна складність — не сам виклик API, а адаптація до логіки кожного перевізника. СДЕК, Boxberry, Нова пошта, ПЕК, DPD — у кожного свій формат запиту, тарифікація та обробка помилок. Ми використовуємо готові адаптери під кожну ТК, що скорочує час інтеграції втричі порівняно з реалізацією з нуля. Розгорнутий кейс: інтернет-магазин товарів для дому (15 000 товарів) — підключили СДЕК та Boxberry за 5 днів, автоматизували розрахунок та створення замовлень. Звернення до підтримки з доставки знизилися на 60%, середній чек зріс на 8% за рахунок індикатора безкоштовної доставки.
Чому API кожної транспортної компанії — окремий квест?
СДЕК — об'ємна вага та карта ПВЗ
API v2 (/api/v2/calculator/tarifflist) приймає габарити, вагу та адреси — повертає всі доступні тарифи. Підводні камені: об'ємна вага розраховується за формулою (Д × Ш × В) / 5000. Якщо фізична вага 2 кг, а об'ємна 8 кг — СДЕК бере по об'ємній. Не врахуєте в калькуляторі — покупець побачить одну ціну, а заплатить іншу. Карта ПВЗ завантажується через /deliverypoints. Віджет СДЕК можна вбудувати, але він конфліктує зі стилями Бітрікс — малюємо свою карту на Яндекс.Картах. Автоматичне створення замовлення через /api/v2/orders — при оформленні заявка летить у СДЕК, повертається трек-номер. Друк накладних та етикеток з адмінки — через /api/v2/print/orders. Тарифи: склад-склад, склад-двері, двері-двері, експрес, постамат.
Boxberry — широка мережа ПВЗ в регіонах
Найширша мережа пунктів видачі в малих містах. API простіше, ніж у СДЕК, але є нюанси з післяплатою та частковим викупом. Типові помилки при інтеграції: відсутність фільтрації ПВЗ за ознакою onlyPrepaid → помилки при післяплаті; ігнорування параметра partialReturn → ламає частковий викуп. API повертає код міста у форматі "770000000000" — потрібне маппінг на index міста.
Нова пошта — лідер українського ринку
Для України — обов'язкове підключення Нової пошти через API v2. Розрахунок вартості, створення ЕН, друк накладної, трекінг. Карта відділень з фільтрацією (поштомати, прийом платежів). Асинхронне оновлення статусів через агент Бітрікс кожні 15 хвилин.
ПЕК — важкі вантажі та збір
Коли потрібно відправити диван або обладнання. Розрахунок збірних вантажів, страхування, обрешітка. Доставка до терміналу та від дверей до дверей. Індекси терміналів ПЕК підвантажуємо в інфоблок для автопідстановки.
DPD — експрес-доставка з часовими слотами
DPD по Україні та за кордон. Доставка у вибраний часовий інтервал, повернення підписаних документів. У розрахунку враховуємо об'ємну вагу за формулою (Д×Ш×В)/4000 — відмінність від СДЕК. Документація DPD: volumetric weight factor 4000.
Як об'єднати різні ТК в єдиному калькуляторі?
Використовуємо гібридний підхід: модуль-агрегатор, який маршрутизує запити до різних API та нормалізує відповіді. Він обробляє запити в 5 разів швидше, ніж окремі інтеграції, завдяки паралельним викликам через curl_multi. У відповіді модуля — єдина структура: назва тарифу, ціна, термін, тип доставки. Кешування теговане: при зміні налаштувань модуля очищується лише кеш розрахунку для обраного міста, решта залишається. Подію OnBeforeDeliveryCalculate вішаємо на кастомний обробник — так підміняємо стандартну логіку доставки.
Розрахунок вартості: які граблі зустрічаються?
Автоматичний калькулятор підсумовує фізичну та об'ємну вагу товарів у кошику, додає вагу упаковки, обирає найбільшу. Звучить просто, але:
- Габарити мають бути заповнені у кожного товару. Немає габаритів — немає розрахунку. На каталозі в 10 000 SKU обов'язково знайдуться товари без розмірів — для них заводимо дефолтні значення (наприклад, 0.1×0.1×0.1 м) і попереджаємо менеджера через поштову подію.
- Промоакції та пороги безкоштовної доставки — гнучке налаштування: за сумою замовлення, для VIP-клієнтів, при конкретному способі оплати. Реалізуємо через користувацькі властивості кошика.
- Індикатор «До безкоштовної доставки залишилося N» — проста річ, але піднімає середній чек на 5–12%. Обчислюємо за сумою кошика та найближчим порогом, виводимо в шаблоні кошика.
Як автоматизувати трекінг, самовивіз та кур'єрську доставку?
Трекінг. Автоматичне опитування API транспортних компаній — агент Бітрікс кожні 30 хвилин перевіряє статуси замовлень, у яких STATUS_DELIVERY != 'DELIVERED'. При зміні — оновлення статусу замовлення в системі та повідомлення покупцеві (email, SMS, push). Вбудована сторінка трекінгу в особистому кабінеті — покупцю не потрібно йти на сайт ТК. Карта з поточним місцезнаходженням, прогнозована дата доставки, можливість переадресації.
Самовивіз. Власні точки видачі на карті: адреси, графік, контакти. Пошук найближчої за адресою покупця. Перевірка наявності в реальному часі, бронювання до певної години. QR-код для швидкого отримання та SMS про готовність до видачі.
Кур'єрська доставка. Зони доставки з різною вартістю. 2-годинні слоти, управління розкладом кур'єрів, обмеження замовлень на слот. Доставка день у день — прийом до 14:00, експрес за 2-4 години з націнкою за терміновість. Інтеграція з навігацією для оптимізації маршрутів.
Мультисклад. Декілька складів з адресами та зонами обслуговування. Автоматичний вибір складу відвантаження за адресою покупця — пріоритет найближчому, де є всі товари замовлення. Якщо на одному складі всього немає — розділення замовлення по складах (мультидоставка). Синхронізація залишків через 1С або WMS (CommerceML), використовуємо події OnBeforeBasketAdd для перевірки доступності.
Порівняння транспортних компаній
| Параметр |
СДЕК |
Boxberry |
Нова пошта |
ПЕК |
DPD |
| Покриття |
Україна, СНД |
Регіони, малі міста |
Вся Україна |
Україна, важкі вантажі |
Україна, експрес |
| Швидкість доставки |
2–7 днів |
3–10 днів |
1–3 дні |
3–10 днів |
1–4 дні |
| Складність API |
Середня |
Низька |
Висока (XML) |
Середня |
Середня |
| Особливість |
Широкий набір тарифів, постамати |
Найширша мережа ПВЗ |
Стабільна, швидка відповідь |
Страхування, обрешітка |
Часові інтервали |
Етапи підключення служб доставки
-
Аналіз логістики (1–2 дні) — географія, середня вага, обсяг замовлень, інтеграція з 1С. Рекомендуємо комбінацію ТК.
-
Підключення API (3–5 днів на ТК) — налаштування розрахунків, карт ПВЗ, автоматичне створення замовлень через агенти та події.
-
Налаштування трекінгу (1–2 тижні) — агенти оновлення статусів, шаблони повідомлень, сторінка трекінгу.
-
Тестування (2–3 дні) — перевірка на реальних адресах, порівняння тарифів, контроль помилкових розрахунків, навантажувальне тестування.
-
Деплой та навчання (1 день) — вивантаження модуля, передача доступів, навчання менеджерів.
-
Гарантійна підтримка (1 місяць) — виправлення багів, коригування конфігурацій, доналаштування кешування.
Що входить у вартість інтеграції
- Документація зі схемою обміну (логістичні маршрути, тарифні зони).
- Налаштовані доступы до API кожної ТК, ключі, вебхуки.
- Шаблони повідомлень (email, SMS, push) для статусів доставки.
- Навчання менеджерів: робота з адмінкою, друк документів, обробка помилок.
- Півроку технічної підтримки після запуску.
Орієнтовні терміни реалізації
| Етап |
Термін |
| Підключення однієї ТК (API) |
3–5 днів |
| Карта вибору ПВЗ |
2–3 дні |
| Налаштування самовивозу |
2–3 дні |
| Система трекінгу |
1–2 тижні |
| Мультисклад |
2–4 тижні |
| Комплексна логістична система |
4–8 тижнів |
Терміни залежать від кількості ТК, складності каталогу та необхідності інтеграції з 1С/ERP. Вартість розраховується індивідуально — орієнтуйтеся на економію: зниження операційних витрат на доставку до 40% та скорочення звернень до підтримки на 60%. Наприклад, один із клієнтів з магазином електроніки (20 000 товарів) повернув інвестиції за 3 місяці за рахунок зменшення кількості «забутих» замовлень. Середня економія наших клієнтів — 15 000 грн на місяць на логістиці.
Готові прискорити логістику вашого інтернет-магазину? Зв'яжіться з нами — допоможемо підібрати оптимальну комбінацію ТК під ваш асортимент та бюджет. Замовте консультацію — і ми підготуємо пропозицію за 1 робочий день.