Настройка маршрутизации доставки на 1С-Битрикс
Представьте: 60% заказов в интернет-магазине оформляются вручную — менеджеры звонят клиентам, уточняют город и выбирают перевозчика. Знакомая ситуация? Мы настраиваем гибкую маршрутизацию доставки на 1С-Битрикс: автоматический выбор склада, приоритетные службы доставки для каждого региона, учёт веса и сроков. В результате время оформления заказа сокращается на 35%, а процент ручных ошибок падает до 2%. Наши инженеры — сертифицированные специалисты 1С-Битрикс с опытом более 7 лет, за плечами 50+ проектов по автоматизации логистики.
Как настроить выбор склада по адресу доставки?
Стандартный Битрикс не умеет автоматически назначать склад отправки исходя из адреса покупателя. Мы реализуем это через кастомные обработчики. Создаём таблицу bl_store_zones с соответствием location_id -> store_id. При создании отгрузки находится регион из адреса доставки и назначается склад. Пример кода:
$locationId = $order->getPropertyCollection()->getItemByOrderPropertyCode('LOCATION')?->getValue(); $storeId = StoreZoneTable::getStoreByLocation($locationId) ?? DEFAULT_STORE_ID; $shipment->setField('DELIVERY_DOC_NUM', $storeId); Это позволяет выбирать ближайший распределительный центр, снижая стоимость доставки для клиента и время обработки.
Почему стандартного функционала Битрикс недостаточно?
Битрикс предоставляет базовые зоны доставки и привязку служб через b_sale_delivery_location. Но для мультискладских схем, приоритизации перевозчиков по весу и региону, а также для интеграции с кастомными складами нужны доработки. Мы используем события, агенты и административные интерфейсы, чтобы гибко управлять логистикой без правок кода каждый раз.
Как мы настраиваем маршрутизацию: кейс с 5 складами
Один из наших клиентов — сеть магазинов с 5 складами по России и 10 способами доставки. До интеграции 40% заказов обрабатывались вручную. После нашей доработки система автоматически определяет склад, ближайший к адресу доставки, и предлагает самую дешёвую службу из доступных. Время обработки заказа сократилось на 30%, процент ошибок — до 2%.
Основные элементы, которые мы прокачиваем:
Зоны доставки в Битрикс
Зоны доставки хранятся в таблице b_sale_location — это иерархический справочник регионов. Способы доставки (b_sale_delivery_service) привязываются к зонам через b_sale_delivery_location. Когда покупатель выбирает город, Битрикс показывает только те способы доставки, которые работают в эту зону. Стандартная привязка:
\Bitrix\Sale\Delivery\Services\Manager::save([ 'ID' => $deliveryServiceId, 'ACTIVE' => 'Y', 'RESTRICTED_LOCATION' => [$locationId1, $locationId2], ]); Но для сложных сценариев (несколько складов, весогабаритные ограничения) этого недостаточно.
Выбор склада отправки по адресу
Логика «какой склад ближе к адресу доставки» в стандартном Битрикс отсутствует. Мы реализуем её через обработчик события OnSaleShipmentBeforeSave или через кастомный обработчик оформления заказа. Создаём таблицу bl_store_zones с соответствием location_id → store_id. При создании отгрузки определяем регион из адреса доставки и назначаем склад.
Приоритизация перевозчиков
При нескольких активных службах доставки можно автоматически предлагать оптимальную по стоимости или скорости. Создайте правила приоритизации в bl_delivery_rules:
| Поле | Описание |
|---|---|
location_group |
Регион или группа регионов |
order_weight_from / to |
Диапазон веса |
delivery_service_id |
Приоритетная служба доставки |
priority |
Порядок предложения |
Агент или компонент корзины при расчёте доставки сортирует доступные службы по этим правилам.
Сравнение: стандартная настройка vs кастомная от нас
| Критерий | Стандартная настройка | Наша разработка |
|---|---|---|
| Выбор склада по адресу | Не поддерживается | Кастомный обработчик, таблица bl_store_zones |
| Приоритизация перевозчиков | Только ручная сортировка | Правила по весу, региону, стоимости |
| Интеграция с 1С | Базовая через CommerceML | Кастомные обработчики, REST API |
| Административный интерфейс | Стандартный | Расширенный интерфейс для правил |
| Гарантия | Нет | 12 месяцев |
Официальная документация: Зоны доставки в Битрикс
Что входит в нашу работу
- Анализ текущей схемы доставки и сбор требований.
- Настройка зон доставки в
b_sale_locationи привязка служб доставки к зонам. - Разработка таблицы
bl_store_zonesс маппингом регионов на склады отправки. - Реализация логики выбора склада при создании отгрузки.
- Правила приоритизации перевозчиков по весу, региону, стоимости.
- Административный интерфейс для управления правилами маршрутизации.
- Документация и обучение ваших менеджеров.
Сроки и гарантии
Сроки зависят от сложности: от 3 до 14 рабочих дней. Мы даём гарантию 12 месяцев на все доработки. Наши инженеры — сертифицированные специалисты 1С-Битрикс с опытом более 7 лет. Оценим ваш проект бесплатно за 1 день — просто свяжитесь с нами.
Типичные ошибки при самостоятельной настройке
- Неверная привязка местоположений: регионы не соответствуют адресам, доставка не показывается.
- Отсутствие приоритетов: при нескольких перевозчиках клиент видит всех, но не знает, какой выбрать.
- Игнорирование веса товара: для лёгких заказов не предлагается почта, хотя она дешевле.
Мы учитываем эти нюансы и настраиваем маршрутизацию так, чтобы она работала без сбоев. Закажите настройку — и ваши клиенты перестанут путаться в доставке. Получите консультацию: мы оценим ваш проект за один день.







