Клієнт скаржиться: «Доставка в Калінінград коштує $3–4ів, а в Москву — 500, хоча вага однакова — 2 кг». Ця ситуація знайома багатьом. Бітрікс рахує доставку за шаблоном, якщо не налаштувати індивідуально. Ми стикалися з цим десятки разів: в одному проекті через неправильну вагу товарів система помилялася на 30%, а в іншому — API СДЭК повертав ціну вдвічі нижче наших тарифів. Наш досвід — понад 50 проектів з налаштування доставки, від простих фіксованих ставок до інтеграцій з API СДЭК та Пошти Росії. Правильне налаштування розрахунку вартості доставки на 1С-Бітрікс — це не тільки точність для клієнта, але й зниження навантаження на підтримку. За нашими даними, коректний розрахунок зменшує кількість питань від покупців на 40% та збільшує конверсію в замовлення на 15%.
Як ми вирішуємо проблеми розрахунку доставки
Розрахунок вартості доставки в Бітрікс працює через модуль sale. Служба доставки — це PHP-клас, успадкований від \Bitrix\Sale\Delivery\Services\Base, який реалізує метод calculateConcrete(). Все, що робить Бітрікс при оформленні замовлення — викликає цей метод і очікує об'єкт CalculationResult з ціною та терміном.
Методи розрахунку:
- Фіксована ціна. Налаштовується в адміністративній частині без коду: у властивостях служби доставки вказується сума. Підходить для «доставка $3–4ів по Москві».
- За тарифними сітками. Ціна залежить від ваги та/або суми замовлення. Таблиця зберігається в
b_sale_delivery_zone_rate. Налаштування в адміністративній панелі. - За місцезнаходженням. Тариф прив'язується до вузла дерева локацій, автоматично застосовується до всіх дочірніх населених пунктів.
- Розрахунок через зовнішній API. Запит до API служби доставки в реальному часі. Точність вища в 2-3 рази порівняно з фіксованими тарифами для нестандартних маршрутів. Наприклад, інтеграція з СДЭК API дозволяє отримувати актуальні ставки з урахуванням знижок клієнта.
Чому об'ємна вага важлива для розрахунку?
Логістичні компанії часто рахують за об'ємною вагою: (довжина × ширина × висота) / 5000. Стандартний механізм Бітрікс це не враховує — додаємо в calculateConcrete():
$dimensionWeight = ($length * $width * $height) / 5000; $chargeableWeight = max($actualWeightKg, $dimensionWeight); Розміри беремо з властивостей товару (b_iblock_element_prop) або з полів товарної пропозиції. Без цього розрахунку доставка габаритного товару (наприклад, меблі) може бути занижена в 2-3 рази, що веде до збитків.
Як створити свою службу доставки?
- Успадкувати
\Bitrix\Sale\Delivery\Services\Base. - Реалізувати метод
calculateConcrete(). - Зареєструвати обробник в адміністративній панелі.
Типові помилки при налаштуванні:
- Вага товарів не заповнена в каталозі — доставка завжди 0.
- Регіон покупця не визначається (властивість
LOCATIONне задана). - Кілька служб з перекриваючимися тарифними зонами — конфлікт при виборі.
Порада: як уникнути частих помилок
Переконайтеся, що вага вказана для кожного товару, інакше доставка буде нульовою. Також перевірте, що у всіх товарів заповнені габарити, якщо використовуєте об'ємну вагу.Порівняння методів розрахунку
| Метод | Переваги | Недоліки | Коли використовувати |
|---|---|---|---|
| Фіксований | Простота, без програмування | Не гнучкий | Кілька зон, прості правила |
| За вагою | Враховує реальну вагу | Не враховує габарити | Товари з великим розкидом ваги |
| За місцезнаходженням | Адаптація під регіони | Складність налаштування | Більше 10 регіонів з різними тарифами |
| Зовнішній API | Точність у 2-3 рази вища | Необхідність програмування | Великі каталоги, динамічні тарифи |
Порівняння служб доставки за точністю
| Служба | Тип розрахунку | Похибка | Рекомендується для |
|---|---|---|---|
| СДЭК | API | 5-10% | E-commerce, термінові відправлення |
| Пошта Росії | API | 10-15% | Нерентабельні напрямки |
| Boxberry | API | 5-8% | Малі міста |
Що входить в роботу
- Аналіз вимог до доставки: які служби, зони, габарити.
- Проектування архітектури: вибір методів, тарифних сіток, інтеграцій.
- Реалізація кастомних служб доставки з урахуванням об'ємної ваги та API.
- Тестування на різних сценаріях: вага до 50 кг, регіони з різними тарифами, знижки.
- Документація та навчання ваших менеджерів роботі з налаштуваннями.
- Підтримка після запуску: швидке виправлення помилок.
Наш досвід та гарантії
Працюємо з Бітрікс більше 10 років, виконали 50+ проектів з налаштування доставки — від невеликих магазинів до федеральних мереж. Гарантуємо, що вартість буде розрахована вірно незалежно від складності. Отримайте консультацію — ми розберемо ваш випадок та запропонуємо оптимальне рішення. Зв'яжіться з нами, щоб обговорити деталі та замовити розрахунок.
Документація 1С-Бітрікс: Робота зі службами доставки







