Настройка службы доставки в 1С-Битрикс — ключевой этап для любого интернет-магазина, от которого зависит удобство покупателей и конверсия заказов. Даже самая выгодная цена товара не спасёт продажи, если клиент не сможет выбрать удобный способ получения или увидит завышенную стоимость доставки. В этой статье мы разберём все этапы: от базовой настройки встроенных модулей до интеграции с внешними сервисами типа СДЭК, Boxberry или Почты России.
Особенность 1С-Битрикс в том, что система предлагает гибкие инструменты для работы с доставкой — от простых фиксированных тарифов до сложных расчётов по весу, габаритам и геозонам. Однако без правильной конфигурации даже эти возможности могут работать некорректно. Например, неправильно настроенные зоны доставки приведут к тому, что клиенты из некоторых регионов не увидят доступные варианты, а ошибки в расчёте стоимости станут причиной конфликтов с покупателями.
Мы рассмотрим не только техническую сторону, но и практические нюансы: как избежать типичных ошибок, какие настройки влияют на скорость загрузки страницы оформления заказа, и почему иногда выгоднее использовать API внешних служб вместо встроенных калькуляторов. Если вы только начинаете работать с 1С-Битрикс или хотите оптимизировать текущие настройки — эта инструкция поможет разобраться во всех деталях.
1. Подготовка к настройке: что нужно знать до начала работы
Прежде чем приступать к настройке, убедитесь, что ваш сайт соответствует минимальным требованиям для работы с модулем доставки. В 1С-Битрикс этот функционал входит в состав модуля Интернет-магазин, поэтому:
- 📌 У вас должна быть установлена редакция «Малый бизнес» или выше (в редакции «Старт» возможности ограничены).
- 🔧 Модуль
Интернет-магазиндолжен быть активирован в разделеНастройки → Настройки продукта → Модули. - 🌍 Для работы с геозонами и внешними службами доставки потребуется актуальная база городов и регионов (обновляется через
Настройки → Региональные настройки → Города). - 📦 Если вы планируете использовать расчёт по весу/габаритам, заранее настройте эти параметры для товаров в карточках.
Также проверьте, включены ли необходимые опции в настройках магазина. Перейдите в Магазин → Настройки → Настройки модуля интернет-магазина и убедитесь, что:
- 🔘 Опция
Использовать доставкуактивна. - 🔘 Включён расчёт стоимости доставки на этапе оформления заказа.
- 🔘 Указаны правильные валюта и единица измерения веса (граммы или килограммы).
Критическая ошибка многих новичков: игнорирование региональных настроек. Если база городов устарела, клиенты из новых населённых пунктов не смогут оформить заказ, а система будет выдавать ошибку «Доставка недоступна». Обновите справочник городов перед началом настройки!
2. Базовая настройка службы доставки в админ-панели
Начнём с создания самой службы доставки. Для этого:
- Перейдите в раздел
Магазин → Настройки → Службы доставки. - Нажмите
Добавить службу доставки. - Выберите тип службы:
- 📦 Встроенная — для фиксированных тарифов или расчёта по весу/стоимости.
- 🔄 Внешняя — для интеграции с API курьерских служб (например, СДЭК или DPD).
Рассмотрим настройку встроенной службы (самый распространённый вариант для начинающих). После выбора типа заполните основные поля:
| Параметр | Описание | Рекомендации |
|---|---|---|
| Название | Отображается клиенту при оформлении заказа (например, «Курьер по Москве») | Используйте понятные формулировки, избегайте технических терминов |
| Описание | Дополнительная информация (сроки, условия) | Укажите примерные сроки («2-3 дня») и ограничения («до 30 кг») |
| Активность | Включает/отключает службу | Отключайте неактуальные службы, чтобы не путать клиентов |
| Сортировка | Порядок отображения в списке доставок | Расположите популярные варианты выше |
| Логотип | Иконка службы (опционально) | Загружайте лого в формате SVG или PNG (размер 100×100 px) |
После сохранения основных параметров перейдите на вкладку Настройки тарифов. Здесь вы можете:
- 💰 Установить фиксированную стоимость (например, «300 руб. по Москве»).
- ⚖️ Настроить расчёт по весу или стоимости заказа (например, «50 руб. за каждый кг»).
- 📍 Привязать тарифы к геозонам (об этом подробнее в следующем разделе).
Указана понятная клиенту служба доставки|
Активирована опция "Использовать доставку" в настройках магазина|
Заполнены все обязательные поля (название, описание)|
Проверена актуальность базы городов-->
3. Настройка геозон и тарифов по регионам
Одна из самых сложных задач — правильно настроить зоны доставки, чтобы клиенты из разных регионов видели актуальные тарифы. В 1С-Битрикс это делается через раздел Магазин → Настройки → Географические зоны.
Создание геозоны происходит в несколько этапов:
- Нажмите
Добавить геозонуи укажите название (например, «Москва и МО»). - В разделе
Связанные регионывыберите нужные города или области. Можно использовать:- 🏙️ Отдельные города (например, «Москва», «Санкт-Петербург»).
- 🌐 Целые регионы (например, «Московская область»).
- 📌 Почтовые индексы (если нужно точечное покрытие).
Пример настройки тарифов для геозоны «Москва»:
- 🚚 Курьерская доставка: 400 руб. (фиксированно).
- 🏢 Самовывоз из пункта выдачи: 0 руб.
- 📦 Доставка за МКАД: 600 руб. + 50 руб./км.
Для других регионов можно использовать динамические тарифы. Например:
- 📍 Регионы России (кроме Москвы и СПб): стоимость = 500 руб. + 2% от суммы заказа.
- 🌍 Международная доставка: 1500 руб. фиксированно + 100 руб./кг.
Если у вас много регионов с одинаковыми тарифами, создайте одну геозону (например, «Регионы РФ») и привяжите её ко всем службам. Это сэкономит время на настройку.
⚠️ Внимание: Если клиент из региона, не попадающего ни в одну геозону, он не увидит доступных вариантов доставки. Всегда добавляйте «запасную» зону типа «Прочие регионы» с универсальным тарифом или уведомлением «Доставка рассчитывается индивидуально».
4. Интеграция с внешними службами доставки (СДЭК, Boxberry, DPD)
Встроенные инструменты 1С-Битрикс подходят для простых сценариев, но если вам нужны точные расчёты от курьерских служб, потребуется интеграция по API. Большинство популярных служб (например, СДЭК, Boxberry, DPD) предоставляют готовые модули для 1С-Битрикс, которые можно установить через Маркетплейс.
Рассмотрим подключение на примере СДЭК:
- Установите модуль
СДЭК: ДоставкаизМаркетплейса(Настройки → Маркетплейс → Каталог решений). - Получите API-ключ в личном кабинете СДЭК (раздел
Интеграции → API). - В настройках модуля в 1С-Битрикс введите:
- 🔑 API-ключ и логин от СДЭК.
- 📦 Параметры упаковки (вес, габариты по умолчанию).
- 🕒 Время обработки заказа (например, «1 день»).
После сохранения проверьте работу модуля в тестовом режиме:
- Создайте тестовый заказ с разными параметрами (вес, регион).
- Убедитесь, что система корректно рассчитывает стоимость и сроки.
- Проверьте, что все пункты выдачи отображаются на карте (если это предусмотрено модулем).
- 🎁 По сумме заказа: например, «Бесплатно при заказе от 5000 руб.». Настраивается в параметрах службы доставки на вкладке
Условия бесплатной доставки. - 🏷️ По промокоду: создайте правило в модуле
Маркетинг → Правила корзины, где при применении купон аннулирует стоимость доставки. - 📅 По времени: например, «Бесплатная доставка по пятницам». Используйте модуль
Маркетинг → Акции.
⚠️ Внимание: Тарифы внешних служб могут меняться без предупреждения. Настройте кеширование расчётов (в настройках модуля) на 1–2 часа, чтобы снизить нагрузку на API и избежать ошибок при временных сбоях.
Что делать, если API службы доставки не отвечает?
Если при оформлении заказа клиент видит ошибку «Не удалось рассчитать доставку», проверьте:
1. Актуальность API-ключа (возможно, истёк срок действия).
2. Лимиты запросов (некоторые службы ограничивают количество запросов в минуту).
3. Логи ошибок в Настройки → Настройки продукта → Логи.
Если проблема сохраняется, временно отключите интеграцию и используйте фиксированные тарифы.
5. Настройка бесплатной доставки и промо-акций
Бесплатная доставка — один из самых эффективных маркетинговых инструментов. В 1С-Битрикс её можно настроить несколькими способами:
Пример настройки бесплатной доставки по сумме:
- Откройте службу доставки, для которой нужно активировать акцию.
- Перейдите на вкладку
Условия бесплатной доставки. - Укажите минимальную сумму заказа (например, 3000 руб.).
- Сохраните изменения и проверьте работу в корзине.
Если вы используете промокоды, создайте правило:
- Перейдите в
Маркетинг → Правила корзины. - Нажмите
Добавить правилои выберите типКупона. - В условиях укажите:
- 🔠 Код купона (например,
FREESHIP). - 📦 Действие:
Установить стоимость доставки = 0. - 📅 Срок действия (если акция временная).
- 🔠 Код купона (например,
⚠️ Внимание: Если у вас несколько служб доставки, бесплатный вариант должен быть приоритетным. Иначе клиент может увидеть в корзине и платную, и бесплатную доставку одновременно, что вызовет путаницу. Настройте сортировку так, чтобы бесплатный вариант отображался первым.
6. Тестирование и отладка настроек доставки
Даже если настройки выглядят корректно, всегда тестируйте их на реальных сценариях. Типичные ошибки, которые выявляются только при проверке:
- 🚫 Доставка не рассчитывается для некоторых регионов (проблема с геозонами).
- 💸 Неправильная стоимость при изменении веса или количества товаров.
- ⏳ Зависание страницы оформления заказа (слишком много запросов к API внешней службы).
- 📦 Отсутствие пунктов выдачи на карте (неверные настройки модуля интеграции).
Чек-лист для тестирования:
Создайте тестовый заказ с разным весом товаров|
Проверьте расчёт для 3–5 регионов (включая «прочие»)|
Убедитесь, что бесплатная доставка применяется по условиям|
Протестируйте работу промокода на скидку по доставке|
Проверьте отображение пунктов выдачи (если используется самовывоз)-->
Если обнаружены ошибки, используйте логи для диагностики:
- Перейдите в
Настройки → Настройки продукта → Логи. - Отфильтруйте записи по модулю
sale.delivery(доставка) илиsale(заказы). - Ищите ошибки типа
API request failedилиNo delivery options for region.
Для отладки API внешних служб можно использовать инструменты типа Postman или встроенный режим отладки в 1С-Битрикс (включается в Настройки → Настройки продукта → Производительность → Отладка).
Всегда тестируйте настройки доставки в режиме инкогнито или с другого браузера. Кеш и куки могут скрывать реальные ошибки отображения.
7. Оптимизация скорости расчёта доставки
Медленный расчёт доставки — частая причина отказа от покупки. Если страница оформления заказа грузится дольше 3 секунд, клиент может закрыть её. Чтобы ускорить работу:
- 🔄 Кешируйте результаты запросов к API внешних служб (настройка есть в большинстве модулей интеграции).
- 🗃️ Ограничьте количество служб, отображаемых одновременно. Например, показывайте только 2–3 самых популярных варианта.
- 📶 Используйте CDN для статических файлов (карты пунктов выдачи, иконки служб).
- 🔧 Отключите ненужные опции в настройках модуля доставки (например, расчёт по габаритам, если вы используете только вес).
Если вы используете СДЭК или Boxberry, проверьте настройки их модулей:
- 🔘 Отключите расчёт тарифов для всех возможных вариантов (достаточно показать 1–2 самых дешёвых).
- 🔘 Настройте прелоадер (анимацию загрузки), чтобы клиент видел, что система работает.
- 🔘 Используйте асинхронный расчёт (если модуль поддерживает), чтобы страница не «замирала».
Для проверки скорости используйте инструменты:
- 🌐 Google PageSpeed Insights (проверьте метрику
Time to Interactive). - 📊 Встроенный профайлер 1С-Битрикс (
Настройки → Настройки продукта → Производительность → Профайлер).
8. Типичные ошибки и как их избежать
Даже опытные администраторы иногда сталкиваются с проблемами при настройке доставки. Рассмотрим самые распространённые ошибки и способы их решения:
| Ошибка | Причина | Решение |
|---|---|---|
| Доставка не отображается в корзине | Не настроены геозоны или служба отключена | Проверьте активность службы и привязку к регионам |
| Неправильная стоимость доставки | Ошибка в формуле расчёта или устаревшие тарифы API | Обновите настройки тарифов и проверьте актуальность API-ключа |
| Долгая загрузка страницы оформления | Слишком много запросов к API внешних служб | Настройте кеширование и ограничьте количество отображаемых вариантов |
| Клиент видит все службы доставки, включая недоступные | Не настроены условия отображения (геозоны, вес, сумма) | Добавьте ограничения в настройках каждой службы |
| Ошибка «No delivery options» | Регион клиента не попадает ни в одну геозону | Создайте «запасную» геозону с универсальным тарифом |
⚠️ Внимание: Если вы используете многосайтовую конфигурацию (несколько магазинов на одной установке 1С-Битрикс), настройки доставки могут конфликтовать. Всегда проверяйте, к какому сайту привязана служба доставки в параметрах модуля.
Ещё одна частая проблема — несовпадение веса товаров в карточках и в настройках доставки. Например, если в товаре указан вес 1 кг, а в службе доставки стоит ограничение «до 0.5 кг», клиент не увидит этот вариант. Всегда синхронизируйте данные!
FAQ: Ответы на частые вопросы
Как сделать, чтобы доставка рассчитывалась только после ввода адреса?
В настройках службы доставки (Магазин → Настройки → Службы доставки) выберите опцию Рассчитывать стоимость после указания адреса. Также убедитесь, что в шаблоне оформления заказа ( sale.order.ajax ) включён соответствующий функционал.
Можно ли настроить разные тарифы для оптовых и розничных клиентов?
Да, для этого используйте типы цен и группы пользователей. Создайте отдельные службы доставки для оптовиков и розницы, а затем настройте условия отображения через модуль Маркетинг → Правила корзины.
Почему клиенты из некоторых регионов не видят пункты самовывоза?
Скорее всего, в настройках модуля интеграции (например, Boxberry или СДЭК) не указаны все необходимые городские коды или не обновлена база пунктов выдачи. Обновите модуль и проверьте привязку геозон.
Как отключить доставку для определённых товаров?
В карточке товара (Каталог → Товары) есть параметр Особые условия доставки. Здесь можно указать ограничения по весу, габаритам или полностью отключить доставку для этого товара.
Можно ли импортировать тарифы доставки из Excel?
Да, но только для встроенных служб доставки. Используйте модуль Импорт/Экспорт данных (Магазин → Импорт/Экспорт) и загрузите файл с тарифами в формате CSV. Для внешних служб (например, СДЭК) импорт тарифов не поддерживается — они подгружаются автоматически по API.