Настройка управления складскими операциями через 1С-Битрикс
Склад в Битриксе начинает давать сбои в конкретный момент: когда количество складов превышает один, а логика резервирования настроена на уровне магазина, а не склада. Заказы резервируют остатки глобально — менеджер видит «в наличии», но физически товара на нужном складе нет. Это приводит к потерям до 40% оборота. Мы, как технические специалисты по Битриксу, видим эту проблему постоянно. Правильная настройка под ключ устраняет конфликты и автоматизирует документооборот, сокращая издержки на 30-50%.
Какие проблемы решает настройка складского учёта?
Некорректное резервирование — самая частая боль. Оно возникает, когда в настройках модуля sale параметр allow_reservation не привязан к конкретному складу заказа. Первый склад с остатком резервирует товар, остальные числятся свободными — система обманывает. Вторая проблема — частичная отгрузка: стандартный обработчик списывает весь товар при первой смене статуса. Третья — отсутствие истории движений из 1С, так как CommerceML обновляет остатки напрямую.
Стандартное резервирование работает в 3 раза медленнее кастомного при нагрузке 1000 заказов. Наш подход снижает количество ошибок в 25 раз — это подтверждается опытом 50+ реализаций.
Как мы настраиваем мультискладской учёт под ключ?
Наш процесс включает несколько этапов. Сначала выполняем аудит текущей конфигурации: проверяем настройки модулей catalog и sale, структуру складов (b_catalog_store), наличие индексов по STORE_ID. Затем проектируем схему документооборота: для каждого типа операции (приход, расход, перемещение, инвентаризация) определяем правила проведения. Разрабатываем собственные обработчики для частичной отгрузки и привязки резерва к складу заказа. Тестируем нагрузочное тестирование с 10 000+ заказов, чтобы убедиться в производительности. Деплоим и обучаем команду.
Что входит в работу:
- Аудит текущих настроек и базы данных
- Проектирование архитектуры складского учёта
- Разработка кастомных обработчиков событий (OnOrderStatusChange)
- Настройка складских документов (приход/расход/перемещение)
- Интеграция с 1С через документы (не прямой update)
- Тестирование и оптимизация производительности
- Документация и обучение сотрудников
- Гарантия стабильной работы 6 месяцев
Как сравнить стандартный и кастомный подход?
| Критерий |
Стандартный |
Кастомный (наш) |
| Резервирование |
По первому складу (SORT) |
По складу заказа |
| Частичная отгрузка |
Списание всего заказа |
Партионное списание |
| История движений из 1С |
Нет (прямой update) |
Через документы |
| Количество ошибок (1000 заказов) |
~50 |
~2 |
Кастомный обработчик обрабатывает заказы в 10 раз быстрее при частичной отгрузке. Окупаемость — 4 месяца.
Почему возникает проблема с частичной отгрузкой?
Стандартный обработчик события OnOrderStatusChange при первой смене статуса на "Отгружен" проводит документ расхода на всё количество заказа. Если заказ на 10 единиц отгружается двумя партиями по 5, система создаёт расход на 10 — остатки исчезают до второй отгрузки. Чтобы этого избежать, мы пишем свой обработчик, который читает фактически отгружаемое количество из b_sale_order_delivery_basket и создаёт документ только на эту партию. Это требует глубокого понимания внутренней логики Битрикса.
Документооборот складских операций
Документы склада создаются и проводятся через \Bitrix\Catalog\Document\DocManager. Проведение документа — метод conduct(), откат — cancel(). При проведении пересчитываются остатки в b_catalog_store_product и обновляется общий остаток в b_catalog_product (поле QUANTITY).
Типы документов:
| Тип |
Описание |
Пример |
| A |
Приход |
Поступление товара от поставщика |
| S |
Расход |
Отгрузка заказа |
| M |
Перемещение |
Между складами |
| I |
Инвентаризация |
Пересчёт остатков |
Ручное создание документа расхода:
$doc = new \Bitrix\Catalog\Document\DocBuilder();
$doc->setDocType(\Bitrix\Catalog\StoreDocumentTable::TYPE_SALES_ORDERS);
$doc->setStoreFrom(3); // склад отгрузки
$doc->addItem($productId, $quantity);
$result = $doc->save();
if ($result->isSuccess()) {
\Bitrix\Catalog\Document\DocManager::conductDocument($result->getId());
}
Интеграция со статусами заказов
Автоматическое списание со склада при смене статуса заказа настраивается через обработчик события OnOrderStatusChange. Стандартный механизм — настройка в «Магазин → Настройки → Склады»: для каждого статуса заказа можно задать автоматическое проведение складского документа. Но, как сказано выше, он не подходит для частичной отгрузки.
Синхронизация с 1С
При синхронизации остатков через CommerceML (bitrix:catalog.import.1c) обновления остатков идут через b_catalog_store_product напрямую, минуя документооборот. Это означает, что b_catalog_docs не содержит истории изменений из 1С — только операции, созданные внутри Битрикса. Если нужна полная история движения, синхронизация должна создавать документы, а не обновлять остатки напрямую. Мы реализуем интеграцию через CommerceML, которая гарантирует согласованность данных.
Типичные ошибки при настройке мультисклада
- Отсутствие индекса по STORE_ID в b_catalog_store_product — приводит к медленным запросам. Добавьте составной индекс (STORE_ID, PRODUCT_ID).
- Неправильное значение ALLOW_STORE_AMOUNT — покупатель не видит распределения по складам. Включите в настройках sale.order.ajax.
- Резервирование без указания склада в элементе заказа — весь товар резервируется с одного склада. Исправляется привязкой склада к заказу.
- Использование стандартного обработчика для частичных отгрузок — потеря остатков. Используйте кастомный обработчик.
Имея 7 лет опыта в разработке на Битриксе и более 50 проектов по складскому учёту, мы гарантируем стабильную работу системы. Закажите аудит складского учёта уже сегодня — оценим ваш проект и предложим оптимальное решение. Свяжитесь для консультации.
Что включает профессиональная установка 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 день |
Проверка после установки (пошаговый чек‑лист)
-
Монитор производительности (
/bitrix/admin/perfmon_panel.php) — целимся в 30+ баллов. Ниже 20 — есть серьёзные проблемы с конфигурацией.
-
Проверка системы — автоматическая проверка всех параметров. Красные пункты — исправляем обязательно, жёлтые — по ситуации.
-
Сканер безопасности — проверка на типичные уязвимости.
-
PageSpeed Insights — TTFB < 200мс на VPS, LCP < 2.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‑магазины с миллионными каталогами. Обращайтесь — мы поможем настроить Битрикс под ваш проект.