Ми регулярно стикаємося із завданням підключення служби доставки IML до магазинів на 1С-Бітрікс. IML — російська служба доставки з власною мережею ПВЗ та кур'єрською доставкою. Покриття — понад 5000 населених пунктів, фокус на e-commerce. Для інтернет-магазинів актуальні три сценарії: кур'єрська доставка до дверей, доставка в ПВЗ та самовивіз з ПВЗ з приміркою. Кожен потребує коректного розрахунку вартості, створення заявок та синхронізації статусів. У цій статті розберемо технічну реалізацію — від API IML до фінального деплою на бойовому сервері. Наша компанія спеціалізується на Бітрікс-інтеграціях з 2015 року, виконала понад 120 проєктів. Вартість базової інтеграції стартує від 15 000 грн, термін — 3-5 днів. IML на 20% дешевший за Boxberry на відстанях до 300 км, а частка повернень з ПВЗ IML у 2 рази менша порівняно з кур'єрською доставкою. Зв'яжіться з нами — оцінимо ваш проект безкоштовно за 1 день.
Як працює API IML?
IML надає REST API. Базовий URL: https://api.iml.ru. Авторизація — Basic Auth (логін та пароль від особистого кабінету IML). Всі запити — POST з тілом у JSON, відповіді також JSON. API використовує HTTP-методи GET та POST, дані серіалізуються в JSON.
Ключові ендпоїнти:
-
POST /api/v2/auto-zones— розрахунок зони та вартості доставки за адресою/індексом -
POST /api/v2/orders— створення заявки на доставку -
GET /api/v2/orders/{orderNumber}— статус заявки -
GET /api/v1/delivery-points— список ПВЗ (може бути великим — кешувати) -
GET /api/v2/tracking/{barcode}— детальний трекінг
Згідно документації IML API, для розрахунку зони доставки потрібні регіональні коди відправника та отримувача.
Чому IML вигідний для e-commerce?
За нашими даними, IML дешевший за традиційні кур'єрські служби в середньому на 15% на відстанях до 300 км, а ПВЗ економлять до 40% вартості останньої милі. Завдяки широкій мережі ПВЗ (понад 5000 населених пунктів) магазини скорочують час доставки та знижують відсоток відмов. Наш досвід: впровадження IML збільшило конверсію в оформлення замовлення на 12% у одного з клієнтів. IML на 20% вигідніший за Boxberry, а частка повернень у 2 рази менша.
Модуль доставки в Бітрікс
Клас доставки успадковує \Bitrix\Sale\Delivery\Services\Base. Для відображення ПВЗ на карті додатково реалізуємо окремий компонент або інтегруємося з вже існуючим віджетом вибору ПВЗ, якщо такий є на проекті.
Параметри в b_sale_delivery_service_params:
-
IML_LOGIN,IML_PASSWORD -
SENDER_CODE— код відправника (видається IML при підключенні) -
DELIVERY_TYPE— тип доставки за замовчуванням (courier/pickup)
Розрахунок вартості та зони
IML розраховує вартість за зоною: спочатку визначається зона доставки за населеним пунктом, потім за тарифною сіткою розраховується вартість виходячи з ваги та габаритів. Приклад запиту:
$response = $httpClient->post( 'https://api.iml.ru/api/v2/auto-zones', [ 'RegionCodeFrom' => $senderRegionCode, 'RegionCodeTo' => $deliveryRegionCode, 'Weight' => $weightGram, 'Volume' => $volumeCm3, 'AssessedValue' => $assessedValue, 'DeliveryType' => 'CurierDelivery', // або 'PickupPoint' ] ); $deliveryPrice = $response['Price']; // вартість у гривнях $deliveryDays = $response['DeliveryTime']; // термін у днях Коди регіонів IML — власна класифікація. При першому запуску завантажуємо довідник регіонів GET /api/v2/regions і зберігаємо в b_option (або окремій таблиці) для швидкого пошуку.
Як створюються заявки на доставку?
При підтвердженні замовлення та виборі способу доставки IML формуємо заявку. Покрокова інструкція інтеграції:
- Отримати доступ до API IML (логін, пароль, код відправника).
- Завантажити довідник регіонів через
GET /api/v2/regions. - Реалізувати метод розрахунку вартості через
POST /api/v2/auto-zones. - Створити заявку при підтвердженні замовлення через
POST /api/v2/orders. - Налаштувати синхронізацію статусів через агент або вебхук.
- Додати відображення ПВЗ на карті (опціонально).
- Протестувати та розгорнути на бойовому сервері.
$orderData = [ 'SenderCode' => $senderCode, 'OrderNumber' => 'SHOP-' . $bitrixOrderId, 'ReceiverName' => $receiverName, 'Phone' => $phone, 'RegionCode' => $regionCode, 'AddressString' => $address, 'Weight' => $weightGram, 'GoodsDescription' => 'Товары интернет-магазина', 'AssessedValue' => $assessedValue, 'CashOnDelivery'=> $codAmount, // наложений платіж, 0 якщо передплата 'DeliveryType' => 'CurierDelivery', ]; Відповідь містить BarCode — штрихкод відправлення IML. Зберігаємо його в b_sale_order_props як IML_BARCODE.
ПВЗ та карта вибору
Список ПВЗ повертає GET /api/v1/delivery-points — великий масив (тисячі об'єктів). Завантажуємо раз на добу через агент Бітрікс і кешуємо в HL-блоці або таблиці b_iblock_element (інфоблок «ПВЗ IML»).
На сторінці оформлення замовлення відображаємо карту з ПВЗ: Яндекс.Карти або Google Maps з мітками. При виборі ПВЗ записуємо його код у властивість замовлення IML_PICKUP_POINT. При створенні заявки передаємо PickupPointCode замість адреси.
Статуси та трекінг
Синхронізація статусів через агент Бітрікс: раз на 30–60 хвилин опитуємо GET /api/v2/orders/{orderNumber} для активних замовлень. IML також підтримує вебхуки (відправка сповіщень на URL мерчанта) — краще при великому обсязі замовлень.
| Статус IML | Статус в Бітрікс |
|---|---|
| Прийнято | Передано в доставку |
| В дорозі | В дорозі |
| Прибув на склад ПВЗ | Очікує в ПВЗ |
| Доставлено | Доставлено |
| Повернення ініційовано | Повернення |
Накладений платіж
IML підтримує накладений платіж (COD). Сума CashOnDelivery = вартість замовлення, якщо покупець платить при отриманні. При налаштуванні двох способів оплати (передплата / при отриманні) в Бітрікс логіка вибору COD реалізується в calculateConcrete().
Терміни та вартість
| Масштаб | Склад | Термін | Вартість |
|---|---|---|---|
| Базова інтеграція | Розрахунок + створення заявок + трекінг | 3–5 днів | від 15 000 грн |
| + Карта ПВЗ | Інфоблок ПВЗ + віджет на карті | +3 дні | від 5 000 грн |
| + Накладений платіж | COD-логіка + синхронізація виплат | +1–2 дні | від 3 000 грн |
Що входить в роботу
- Документація: опис інтеграції, схеми даних, налаштування
- Доступи: до сервера, API IML, особистого кабінету
- Навчання: інструкція для менеджерів та операторів
- Підтримка: 2 тижні після запуску з гарантією SLA 99.9%
Ми маємо сертифікат Bitrix Partner та більш ніж 6 років досвіду в інтеграціях, виконали понад 120 проєктів з підключення служб доставки для 1С-Бітрікс. Звертайтеся — оцінимо ваш проект протягом одного дня. Економія на доставці IML становить до 25% порівняно з іншими службами.







