Доставка в интернет-магазине на 1С-Битрикс — это не одна настройка, а отдельная подсистема модуля sale со своими обработчиками, деревом служб и ограничениями. Служба доставки определяет, какие варианты увидит покупатель в оформлении заказа и сколько будет стоить доставка при его параметрах. Разберём, как собрать эту подсистему с нуля и не запутаться в её логике.
Где живут службы доставки
Всё управление доставкой сосредоточено в одном разделе админки: Магазин → Настройки → Службы доставки (страница sale_delivery_service_list.php). Это часть модуля sale — того же, что отвечает за заказы, корзину и оплату, поэтому доставка тесно связана с местоположениями, статусами заказов и платёжными системами.
Важно понимать разницу между двумя сущностями. Обработчик доставки — это программный компонент, который умеет считать стоимость по определённой логике (фиксированная цена, расчёт по весу, запрос к API курьерской компании). Служба доставки — это уже настроенный экземпляр обработчика с конкретными параметрами, названием и ограничениями, который и видит покупатель.
Bitrix\Sale\Delivery. Старые «типы доставки» из первых версий модуля устарели и в новых проектах не используются.Обработчики: чем считается стоимость
Прежде чем создавать службы, полезно знать, какие обработчики доступны «из коробки». Именно от выбора обработчика зависит, откуда берётся цена доставки.
- Фиксированная цена — самый простой вариант: одна сумма независимо от заказа. Подходит для «доставки по городу за 300 ₽».
- Настраиваемая (по расчёту) — стоимость складывается из правил: по весу, по сумме заказа, по количеству, по местоположению. Основной рабочий обработчик для гибких тарифов.
- Самовывоз — доставка со списком пунктов выдачи и, как правило, нулевой или сниженной стоимостью.
- Обработчики служб — модули интеграции с курьерскими компаниями (СДЭК, Почта России, DPD, Boxberry и др.), которые запрашивают тариф по API.
Обработчики курьерских служб обычно ставятся отдельными модулями из Marketplace. После установки они появляются в списке доступных при создании новой службы доставки.
Дерево служб и профили
Службы доставки в Битрикс организованы иерархически. На верхнем уровне создаётся группа (например, «Курьерская доставка» или конкретная транспортная компания), а внутри неё — профили, дочерние службы с уточнёнными условиями.
Пример типичной структуры для курьерской компании:
| Уровень | Сущность | Назначение |
|---|---|---|
| Группа | СДЭК | Общий узел, логотип, описание |
| Профиль | СДЭК — до двери | Курьер до адреса |
| Профиль | СДЭК — до ПВЗ | Самовывоз из пункта выдачи |
Дерево удобно тем, что покупателю в оформлении заказа профили показываются сгруппированными под родительской службой, а расчёт и ограничения можно задавать точечно на нужном уровне. Реальную стоимость всегда считают именно профили — конечные «листья» дерева.
Создание службы с нуля
Разберём порядок действий для базовой службы «Курьер по городу» с фиксированной стоимостью.
- В разделе
Службы доставкинажмите «Добавить службу доставки» и выберите обработчик (для нашего примера — фиксированная цена или настраиваемая). - Заполните основные поля: название (его видит покупатель), сортировку, логотип, краткое описание, активность и валюту расчёта.
- Задайте стоимость и параметры расчёта — для фиксированной службы это одна цена, для настраиваемой — таблица правил по весу или сумме заказа.
- При необходимости укажите период доставки (например, «1–2 дня») — он выводится покупателю как ориентир.
- Сохраните службу и проверьте, что она активна и привязана к нужным местоположениям.
Ограничения: когда служба доступна
Ключевой механизм, отделяющий Битрикс от «просто списка тарифов», — это ограничения (restrictions). Каждой службе можно задать условия, при которых она вообще показывается покупателю и участвует в расчёте.
- По местоположению — служба доступна только для выбранных городов, регионов или групп местоположений.
- По весу — например, курьер везёт до 30 кг, всё тяжелее уходит на транспортную компанию.
- По сумме заказа — основа для бесплатной доставки от определённого порога.
- По способу оплаты — наложенный платёж только для служб, которые его поддерживают.
- По габаритам и периоду — ограничение крупногабаритных отправлений или доставки в определённые дни.
Ограничения проверяются в момент оформления заказа: если параметры корзины и адреса не проходят условие, служба просто не появится в списке. Это позволяет тонко управлять тем, кто и что видит, без правки кода.
Дополнительные услуги и местоположения
У каждой службы есть вкладка дополнительных услуг — платных или бесплатных опций, которые покупатель выбирает вместе с доставкой: подъём на этаж, доставка в определённый интервал времени, страховка, примерка. Каждая доп. услуга имеет свою стоимость и прибавляется к цене доставки.
Отдельного внимания требует привязка к местоположениям. Модуль sale хранит справочник местоположений (страны, регионы, города) и позволяет объединять их в группы. Ограничение службы «по местоположению» опирается именно на этот справочник, поэтому перед настройкой доставки стоит навести порядок в местоположениях.
Проверка в оформлении заказа
Настройка не закончена, пока вы не увидели службу глазами покупателя. Доставка выводится в компоненте оформления заказа (sale.order.ajax или sale.order.checkout), поэтому финальная проверка — это тестовый заказ.
- Соберите корзину с товаром, у которого заполнен вес — без веса расчёт по весовым правилам работать не будет.
- Перейдите в оформление заказа и укажите реальный адрес из разрешённого местоположения.
- Убедитесь, что нужные службы появились, а стоимость посчиталась корректно и в правильной валюте.
- Проверьте граничные случаи: заказ выше порога бесплатной доставки, слишком тяжёлый заказ, город вне зоны обслуживания.
Если служба не появляется — почти всегда дело в ограничениях или в незаполненных характеристиках товара (вес, габариты). Начинайте разбор именно с них, а уже потом ищите проблему в самом обработчике.
Итог
Настройка доставки в 1С-Битрикс — это последовательность из понятных шагов: выбрать обработчик под нужную логику расчёта, выстроить дерево служб и профилей, задать стоимость, ограничить показ условиями по местоположению, весу и сумме, добавить доп. услуги и обязательно проверить всё тестовым заказом. Ключевая идея модуля sale в том, что покупатель видит только те службы, чьи ограничения прошли по параметрам его корзины и адреса, — поэтому большинство проблем решается не в коде, а в аккуратной настройке местоположений и условий.
Мы в B2Bsite настраиваем доставку под реальную логистику магазина: подключаем курьерские службы по API, выстраиваем тарифы по весу и зонам, собираем бесплатную доставку от суммы и чиним ситуации, когда служба «не показывается». Если доставка на вашем проекте считается неверно или её нужно связать с транспортными компаниями и 1С — поможем собрать её так, чтобы она работала предсказуемо.
Частые вопросы
Чем обработчик доставки отличается от службы доставки?
Обработчик — это программный компонент с логикой расчёта стоимости, а служба доставки — его настроенный экземпляр с названием, ценой и ограничениями, который видит покупатель в оформлении заказа.
Где в админке настраиваются службы доставки?
В разделе Магазин → Настройки → Службы доставки. Это часть модуля sale, связанная с местоположениями, заказами и платёжными системами.
Зачем нужны профили внутри службы?
Профили — это дочерние службы с уточнёнными условиями, например «до двери» и «до пункта выдачи» у одной курьерской компании. Стоимость всегда считают именно профили, конечные узлы дерева.
Почему настроенная служба не показывается покупателю?
Чаще всего дело в ограничениях: город не входит в разрешённую группу местоположений, заказ не проходит по весу или сумме. Реже — не заполнены вес и габариты товара.
Как сделать доставку доступной только для отдельных городов?
Добавьте службе ограничение по местоположению и укажите нужные города или группу местоположений. Служба появится только для покупателей из этих зон.
Нужен ли отдельный модуль для курьерских служб?
Да. Обработчики СДЭК, Почты России, DPD, Boxberry и других обычно устанавливаются отдельными модулями из Marketplace, после чего появляются в списке доступных при создании службы.
Что задаёт стоимость доставки при расчёте по весу?
Настраиваемый обработчик с правилами по весу. Обязательное условие — заполненный вес у товаров каталога, иначе расчёт по весовым правилам не сработает.
Как проверить, что доставка настроена правильно?
Оформите тестовый заказ с реальным адресом и товаром с заполненным весом, проверьте появление служб, корректность суммы и граничные случаи — порог бесплатной доставки и зону вне обслуживания.
Поможем с настройкой и поддержкой 1С-Битрикс: Управление сайтом
Поможем с настройкой, доработкой и поддержкой 1С-Битрикс: Управление сайтом.