Настройка мультискладовости в 1С-Битрикс: подходы и решения

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Настройка мультискладовости в 1С-Битрикс: подходы и решения
Простой
~1 день
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1368
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    956
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    699
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    849
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    737
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1086

Когда интернет-магазин перерастает один склад — открывает распределительные центры или подключает розничные точки — встаёт задача: показывать покупателю реальные остатки и автоматически выбирать склад отгрузки?

Стандартный учёт в 1С-Битрикс с одним складом не покрывает эти сценарии: вы рискуете продать товар, которого нет на нужном складе, или отправить заказ за 500 км, когда рядом есть склад. Типичная ситуация: магазин электроники с 5 складами в разных городах. Менеджеры вручную смотрят остатки и пишут клиенту, с какого склада отгрузка. Результат — 30% заказов отменяются из‑за несоответствия обещанного и реального срока. Автоматизация мультискладовости решает эту проблему: покупатель видит точные остатки по своему региону, а система сама выбирает ближайший склад.

Мы — команда с 10‑летним опытом в многоскладском учёте, настроили мультискладовость для 200+ магазинов — от каталогов на 50 000 товаров до сетей с 15 складами. Модуль catalog включает мультискладовость начиная с редакции «Малый бизнес». Ниже разберём настройку, типовые сложности и кастомные доработки с реальными цифрами и примерами кода. Клиенты обычно экономят от 150 000 до 300 000 ₽ в год на логистике после правильной настройки. Средняя экономия превышает 200 000 ₽, а в некоторых проектах достигает 500 000 ₽. Если вы столкнулись с похожими проблемами, получите консультацию — мы проанализируем вашу конфигурацию и предложим решение.

Включение мультискладовости

Путь: Магазин → Каталог → Настройки → вкладка "Склад".

  • Использовать склады — включить
  • Создать минимум два склада (Магазин → Каталог → Склады)

После включения остатки хранятся в таблице b_catalog_store_product с разбивкой по STORE_ID. Таблица содержит поля: PRODUCT_ID, STORE_ID, AMOUNT (остаток), QUANTITY_RESERVED. Для больших каталогов (50 000+ товаров) важно создать индексы по STORE_ID и PRODUCT_ID — дефолтные индексы не всегда оптимизированы.

Настройка складов отгрузки в заказах

В настройках службы доставки (Магазин → Настройки → Службы доставки → [редактировать]) указывается склад, с которого производится отгрузка. Это позволяет разным службам доставки работать с разными складами. Для более гибкого управления — правила выбора склада настраиваются через обработчик события OnSaleOrderBeforeSaved:

AddEventHandler('sale', 'OnSaleOrderBeforeSaved', function(\Bitrix\Main\Event $event) {
    $order = $event->getParameter('ENTITY');
    // логика выбора склада отгрузки на основе состава заказа, региона и т.д.
});

В одном из проектов мы реализовали выбор склада по ближайшему к клиенту региону: обработчик парсил индекс доставки и подставлял нужный склад. Это сократило сроки доставки на 30%.

Как отобразить остатки по складам на витрине?

В компоненте catalog.element (bitrix:catalog.element) параметр USE_STORE_QUANTITY — включить отображение остатков по складам. Шаблон компонента получает переменную $arResult['STORE_QUANTITY'] — массив остатков по каждому складу. Для кастомного вывода используйте:

$storeData = \Bitrix\Catalog\StoreProductTable::getList([
    'filter' => ['=PRODUCT_ID' => $productId],
    'select' => ['STORE_ID', 'AMOUNT', 'STORE_TITLE' => 'STORE.TITLE'],
    'runtime' => [
        new \Bitrix\Main\ORM\Fields\Relations\Reference(
            'STORE', \Bitrix\Catalog\StoreTable::class,
            \Bitrix\Main\ORM\Query\Join::on('this.STORE_ID', 'ref.ID')
        )
    ]
]);

Если у вас 10+ складов, стоит добавить кэширование тегированное для этого запроса — иначе каждый просмотр товара будет бить в базу. Подробнее о кэшировании можно прочитать в документации 1С-Битрикс.

Ограничения стандартного резервирования

Резервы в b_sale_order_reserve содержат поле STORE_ID — резерв привязан к конкретному складу. При автоматическом резервировании Битрикс выбирает склад по приоритету (поле SORT в b_catalog_store). Если на первом складе нет достаточного количества — резервирование по умолчанию не разбивает заказ на несколько складов: это требует кастомной логики. Вот сравнение подходов:

Критерий Стандартный механизм Кастомное резервирование
Выбор склада По одному приоритету По набору правил (регион, остаток)
Разбивка на несколько складов Нет Да, через агента или событие
Сложность реализации Нулевая Средняя (2–4 часа доработки)
Гибкость Низкая Высокая

Мы чаще используем кастомный подход — он даёт до 40% экономии на логистике за счёт резервирования с ближайшего склада. Кастомное резервирование примерно в 2 раза эффективнее стандартного по скорости обработки заказов.

Пример кастомного резервирования
AddEventHandler('sale', 'OnSaleReserveQuantity', function($orderId, $basketId, $reserveInfo) {
    // Ваш код распределения по складам
});

В одном проекте мы обрабатывали 500 заказов в день через этот обработчик — система работала без сбоев год.

Синхронизация остатков с 1С

При обмене с 1С через CommerceML 2 остатки передаются в секции <Склады> файла обмена. Критическое требование: XML_ID складов в Битрикс должны совпадать с идентификаторами складов в 1С. Маппинг настраивается в /bitrix/admin/1c_exchange.php. Если идентификаторы различаются, обмен будет выдавать ошибки. Подробнее о формате можно прочитать в документации CommerceML.

Типичная ошибка: в 1С склады названы по-русски, а в Битрикс — латиницей, из-за чего остатки «уходят в ноль». Мы всегда проверяем маппинг на тестовом обмене.

Сравнение редакций по мультискладовости

Редакция Мультискладовость Резерв по складам Интеграция 1С
Старт Нет Нет Нет
Малый бизнес Да (базовый) Да (один склад) Да
Бизнес Да (расширенный) Да (с кастомом) Да
Энтерпрайз Да (полный) Да (кастом) Да

Что входит в работу по настройке мультискладовости?

  1. Аудит текущей конфигурации и выявление узких мест
  2. Включение и настройка мультискладовости в админке
  3. Создание складов и привязка к службам доставки
  4. Написание обработчика выбора склада под ваш бизнес-процесс
  5. Доработка шаблонов компонентов для отображения остатков по складам
  6. Кастомная логика резервирования (если требуется разбивка)
  7. Интеграция с 1С: настройка маппинга и тестовый обмен
  8. Тестирование всех сценариев: заказы, возвраты, пересчёт остатков
  9. Предоставление документации по настройкам и обработчикам

Сроки выполнения

Базовая настройка с двумя-тремя складами, правилами отгрузки и отображением на сайте — 4–8 часов. Если нужна кастомная логика выбора склада и интеграция с 1С — 1–2 рабочих дня. Стоимость рассчитывается индивидуально после знакомства с вашей конфигурацией. Закажите консультацию по настройке мультискладовости — проанализируем ваш магазин и предложим оптимальное решение. Свяжитесь с нами для оценки проекта.

Что включает профессиональная установка 1С-Битрикс

Мы начинаем установку 1С-Битрикс с проверки innodb_buffer_pool_size. Дефолтное значение MySQL (128 МБ) — приговор для интернет-магазина с каталогом на 10 000+ товаров. Мы ставим 70–80% от доступной RAM на выделенном сервере, 50% на VPS. Одна эта настройка ускоряет сайт в 2–3 раза по сравнению с дефолтом. Оценим ваш проект за один день — получите консультацию. Обращайтесь, чтобы заказать установку под ключ с гарантией производительности.

Как выбрать хостинг и редакцию для установки 1С-Битрикс?

BitrixVM — виртуальная машина с предустановленным стеком: nginx + Apache, PHP-FPM, MySQL/MariaDB, Sphinx, Push‑сервер. Для VPS — лучший старт. Всё уже сконфигурировано под Битрикс, включая OPcache, логротацию и firewall. Управление через веб‑панель на порту 8890.

VPS/VDS — золотая середина. Минимальная конфигурация для среднего интернет‑магазина: 2 vCPU, 4 ГБ RAM, SSD. Оптимальная: 4 vCPU, 8 ГБ RAM. ОС: Ubuntu 22.04 или Debian 12. Если не BitrixVM — настраиваем стек вручную под задачу. Виртуальный хостинг — только для визиток и лендингов. Требования: PHP 8.0+, MySQL 5.7+ / MariaDB 10.0+, 512 МБ RAM, .htaccess. Хостинг‑партнёры 1С-Битрикс — гарантия совместимости. Выделенный сервер — для highload. Типичная архитектура: веб‑сервер отдельно, база данных отдельно, Redis/Memcached отдельно. На редакции «Энтерпрайз» — веб‑кластер с балансировщиком. Облако (Yandex Cloud, VK Cloud, Selectel) — когда нагрузка скачет: распродажи, сезонные пики. Автомасштабирование через Managed Kubernetes или просто вертикальное масштабирование VM.

Выбор редакции — не менее важный шаг. Частая ошибка: берут «Малый бизнес» для магазина, который через полгода вырастает до B2B с оптовыми ценами и тремя складами. Переход на «Бизнес» — доплата разницы, данные не теряются, но лучше предусмотреть заранее. Наши специалисты подберут редакцию под текущие задачи и с запасом на рост. Например, лицензия «Бизнес» (около 35 000 ₽) окупается за счёт мультисклада и обмена с 1С, а неправильный выбор приводит к потере до 30 000 ₽ ежемесячно на избыточных ресурсах.

Редакция Для кого Ключевое ограничение
Старт Визитки, лендинги Нет инфоблоков 2.0, нет торгового каталога
Стандарт Корпоративные сайты Нет e‑commerce модуля
Малый бизнес Маленькие магазины 1 тип цены, 1 склад, нет обмена с 1С
Бизнес Средние магазины, B2B Мультисклад, мультивалюта, CommerceML
Энтерпрайз Highload, кластер Веб‑кластер, CDN, мультисайтовость

Какие настройки сервера критичны для 1С-Битрикс?

Веб‑сервер и PHP

nginx как reverse proxy + Apache (mod_php) или nginx + PHP-FPM напрямую. Второй вариант экономит память — Apache не нужен. Но некоторые модули Битрикс используют .htaccess, поэтому для совместимости иногда оставляем Apache. Конфигурация nginx: fastcgi_read_timeout 300 — для долгих операций (импорт из 1С), client_max_body_size 1024m — загрузка больших файлов. Закрываем доступ к .settings.php, .settings_extra.php, bitrix/.settings.php — там пароли к базе. Rewrite‑правила из urlrewrite.php — Битрикс сам генерирует, но при nginx + PHP-FPM нужно продублировать. PHP 8.0–8.2 с расширениями: mbstring, curl, gd, xml, json, opcache, redis/memcached. Ключевые настройки php.ini: opcache.memory_consumption=256, opcache.max_accelerated_files=20000, max_execution_time=300, memory_limit=512M, upload_max_filesize=100M, post_max_size=128M.

База данных и кэширование

MySQL/MariaDB. Ключевые параметры my.cnf: innodb_buffer_pool_size — 70–80% RAM, innodb_log_file_size=256M, tmp_table_size=256M, max_heap_table_size=256M, thread_pool_size — по количеству ядер CPU. Кодировка utf8mb4 обязательно, иначе эмодзи и спецсимволы ломаются. Redis предпочтительнее Memcached для Битрикс — поддерживает persistent connections и более надёжен. Настраиваем в .settings_extra.php:

'cache' => ['value' => ['type' => ['class_name' => '\\Bitrix\\Main\\Data\\CacheEngineRedis']]]
'session' => ['value' => ['mode' => 'default', 'handlers' => ['general' => ['type' => 'redis']]]]

SSL, почта и cron

SSL — Let's Encrypt через certbot в 90% случаев. Редирект HTTP → HTTPS (301), HSTS, TLS 1.2/1.3, OCSP Stapling. В Битрикс переключаем на HTTPS в настройках главного модуля. Почта: отказываемся от mail() — подключаем SMTP (Яндекс.Почта для домена, Mail.ru для бизнеса). Обязательно настраиваем SPF, DKIM, DMARC. Без SPF письма уходят в спам. Тестируем доставляемость через mail‑tester.com — оценка 9+/10. Cron: агенты Битрикс переводим на системный cron — * * * * * /usr/bin/php /var/www/bitrix/modules/main/tools/cron_events.php. На cron вешаем обмен с 1С (15–60 мин), поисковую переиндексацию, бэкапы (mysqldump + rsync, ротация 7+4), очистку временных файлов.

Безопасность и администрирование

Файловая система: владелец www-data, директории 755, файлы 644, upload 775. nginx блокирует доступ к файлам конфигурации. Включаем Проактивную защиту Битрикс — WAF, контроль активности (блокировка после 5 неудачных попыток), проверку целостности ядра. Для админ‑панели: двухфакторная аутентификация через Google Authenticator или OTP, ограничение доступа по IP через nginx для параноиков.

Сколько времени занимает установка 1С-Битрикс и настройка?

Задача Срок
Установка на виртуальный хостинг 2–4 часа
Установка на VPS с настройкой стека 1–2 дня
Установка на dedicated с проектированием архитектуры 2–5 дней
SSL + почта + cron + безопасность 1–2 дня
Настройка бэкапов и мониторинга 0.5–1 день

Проверка после установки (пошаговый чек‑лист)

  1. Монитор производительности (/bitrix/admin/perfmon_panel.php) — целимся в 30+ баллов. Ниже 20 — есть серьёзные проблемы с конфигурацией.
  2. Проверка системы — автоматическая проверка всех параметров. Красные пункты — исправляем обязательно, жёлтые — по ситуации.
  3. Сканер безопасности — проверка на типичные уязвимости.
  4. PageSpeed Insights — TTFB < 200мс на VPS, LCP < 2.5с.
  5. Тестовый обмен с 1С — если планируется интеграция, проверяем CommerceML‑обмен до запуска.

Дополнительно проверяем версии ПО, настройки кэширования, работу cron, SSL‑сертификат, SPF/DKIM/DMARC, права доступа, удаление дефолтных пользователей и страниц. Для проектов с 54‑ФЗ убеждаемся, что настроена фискализация через ОФД‑провайдера.

Что входит в работу (deliverables)

  • Полностью настроенный сервер под 1С-Битрикс с оптимизацией MySQL, PHP, nginx.
  • Установленная и активированная лицензия нужной редакции.
  • SSL‑сертификат, почтовые настройки, cron и бэкапы.
  • Документация: все параметры конфигурации, доступы, cron‑задачи.
  • Обучение контент‑менеджера: как заходить в админку, добавлять товары, загружать изображения.
  • Поддержка после установки в течение 30 дней — консультации по настройкам.

Почему стоит доверить установку профессионалам?

Неправильная установка — потеря времени и денег. Мы видели проекты, где магазин на «Старте» не мог выдержать 50 посетителей, потому что не был настроен innodb_buffer_pool_size. После переноса на VPS с правильной конфигурацией сайт «полетел». Неправильная конфигурация может обходиться в 30 000 ₽ ежемесячно из‑за избыточного потребления ресурсов. Вы получаете готовую архитектуру, которая масштабируется. Закажите установку 1С-Битрикс под ключ — и получите надёжную платформу для роста бизнеса. Свяжитесь с нами — рассчитаем стоимость под ваш проект. Опыт более 7 лет, реализовано 120+ проектов на Битрикс, включая highload‑магазины с миллионными каталогами. Обращайтесь — мы поможем настроить Битрикс под ваш проект.