Складской учёт в 1С-Битрикс — это не только цифры остатков, но и разграничение прав: кто видит склады, кто проводит документы, а что из этого попадает в публичный раздел сайта. Разберём, как выстроить доступы так, чтобы кладовщик не залез в цены, а покупатель видел ровно то наличие, которое ему положено.
Где в Битрикс живут права на склад
Складской учёт реализован в модуле catalog (Торговый каталог), а сами склады, документы прихода и перемещения хранятся в его сущностях. Управление доступом идёт через групповые права модуля: Настройки → Настройки продукта → Права доступа → Уровень доступа, где для каждой группы пользователей задаётся уровень к модулю «Торговый каталог».
Важно различать два контура. Административный контур — это доступ в /bitrix/admin/ к спискам складов, документам и карточкам товара. Публичный контур — это то, что видит посетитель на витрине: наличие, остатки в карточке товара и статусы «В наличии / Под заказ». Права на первое настраиваются ролями модуля, права на второе — логикой компонентов и настройками отображения.
catalog действуют поверх прав модуля iblock: даже с полным доступом к каталогу пользователь не увидит товары, если у него нет прав на соответствующий инфоблок.Уровни доступа к торговому каталогу
Модуль «Торговый каталог» предоставляет несколько предустановленных уровней. Их удобно раздавать группам под конкретные роли сотрудников.
| Уровень | Что даёт |
|---|---|
Нет доступа D | Раздел каталога и складов недоступен полностью. |
| Просмотр каталога | Чтение цен, наличия и остатков без права редактирования. |
| Изменение каталога | Редактирование цен, количеств, торговых предложений. |
Полный доступ W | Все операции, включая настройки модуля и типы цен. |
Для складского учёта ключевой момент — доступ к складам и складским документам. Он появляется вместе с правами на изменение каталога, но управление конкретными складами и проведением документов удобнее разграничивать отдельными группами, чтобы кладовщик оформлял приход, но не менял базовые цены.
Роли сотрудников и группы пользователей
Практичный подход — завести отдельные группы под складские роли и назначить им минимально достаточные права. Типичный набор:
- Кладовщик — доступ к складским документам (приход, перемещение, списание), просмотр остатков, но без доступа к типам цен и настройкам модуля.
- Менеджер по закупкам — оформление документов прихода, изменение остатков, просмотр себестоимости.
- Контент-менеджер — редактирование карточек товара и торговых предложений, но без права проводить складские документы.
- Аналитик — только просмотр остатков и отчётов, уровень «Просмотр каталога».
Группы назначаются в Настройки → Пользователи → Группы пользователей, а привязка прав модуля — на вкладке «Доступ» каждой группы. Пользователь получает суммарные права по всем своим группам — действует наиболее высокий уровень, поэтому не добавляйте кладовщика заодно в «Администраторы контента».
Доступ к отдельным складам и документам
Если у магазина несколько складов, часто нужно, чтобы сотрудник филиала работал только со своим складом. На уровне коробочного Битрикса права раздаются на модуль целиком, а не на конкретный склад, поэтому разграничение «по складам» решается двумя путями.
- Организационно — обучением и договорённостями плюс контролем через журнал документов, кто и что проводил.
- Программно — событиями модуля
catalog(например,OnBeforeStoreDocumentAdd,OnStoreDocumentUpdate), где в обработчике проверяется, к какому складу привязан документ и есть ли у пользователя право на этотSTORE_ID.
Привязка «пользователь ↔ склад» обычно хранится в свойстве пользователя или отдельной таблице. Обработчик события отклоняет проведение документа по чужому складу, возвращая ошибку. Это надёжнее любых визуальных ограничений, потому что срабатывает на уровне бизнес-логики.
CCatalogStoreDocs из своего кода или агентов — проверку прав дублируйте в серверных обработчиках.Что показывать в публичном разделе
Публичный раздел — витрина — не должен раскрывать внутреннюю складскую кухню. Покупателю не нужны точные остатки по каждому складу, себестоимость и номера документов. Обычно на витрине показывают:
- агрегированное наличие («В наличии», «Мало», «Под заказ») вместо точной цифры;
- суммарный остаток по доступным для клиента складам, если политика магазина это допускает;
- наличие в конкретном пункте выдачи при выборе города.
За вывод отвечают компоненты catalog.element и catalog.section: в их параметрах включается показ количества (SHOW_QUANTITY) и настраиваются пороги отображения. Точный остаток лучше не выводить дословно, а маппить на статусы через настройку доступного количества или свой шаблон. Так вы одновременно защищаете коммерческую информацию и снижаете «панические» отказы, когда покупатель видит «осталось 1 шт.».
Проверка и аудит прав
После настройки права стоит проверить не «на глаз», а под реальной учётной записью. Заведите тестовых пользователей для каждой роли и пройдите сценарии: кладовщик открывает документы, но не видит типы цен; аналитик читает остатки, но не может провести приход.
- Проверьте меню админки: лишние пункты (например, «Настройки каталога») не должны быть доступны рядовым ролям.
- Убедитесь, что публичные компоненты не отдают точные остатки там, где нужны только статусы.
- Просматривайте журнал складских документов — кто, когда и по какому складу проводил операции.
Полезно вести регламент: какая группа за что отвечает и почему выдан тот или иной уровень. При росте команды это избавляет от «на всякий случай дадим полный доступ» — главной причины утечек данных об остатках и ценах.
Итог
Права на складской учёт в Битрикс держатся на трёх опорах: уровнях доступа модуля catalog, продуманных группах под роли и аккуратной настройке публичного показа наличия. Коробка разграничивает доступ на уровне модуля, а разделение по конкретным складам и защиту от прямых вызовов API добавляют обработчиками событий. На витрине показывайте статусы, а не внутренние цифры.
Если нужно выстроить ролевую модель под несколько складов, закрыть доступ к прямому API или аккуратно вывести наличие на витрину без утечки остатков — мы в B2Bsite настраиваем складской учёт и права в Битрикс под реальные процессы магазина, включая интеграцию остатков с 1С и последующую поддержку.
Частые вопросы
Где настраиваются права на складской учёт в Битрикс?
В групповых правах модуля «Торговый каталог» (catalog): Настройки продукта → Права доступа, а также на вкладке «Доступ» у групп пользователей. Права каталога работают поверх прав инфоблоков.
Можно ли дать сотруднику доступ только к одному складу?
Штатно права выдаются на модуль целиком, а не на конкретный склад. Разграничение по складам делается программно — через обработчики событий модуля catalog, которые проверяют STORE_ID документа.
Как закрыть кладовщику доступ к ценам?
Заведите отдельную группу с доступом к складским документам, но без прав на типы цен и настройки модуля. Не добавляйте пользователя одновременно в группы с более высоким уровнем доступа.
Видит ли покупатель точные остатки по складам?
Только если это явно включено в компонентах витрины. Обычно на сайте показывают статусы наличия, а не точные цифры, чтобы не раскрывать коммерческую информацию.
Чем публичный контур отличается от административного?
Административный контур — это доступ к складам и документам в /bitrix/admin/, он управляется ролями модуля. Публичный — это вывод наличия на витрине через параметры компонентов catalog.element и catalog.section.
Как защититься от прямых вызовов складского API?
Ограничения интерфейса админки не блокируют вызовы методов вроде CCatalogStoreDocs из своего кода. Проверку прав нужно дублировать в серверных обработчиках событий проведения документов.
Действуют ли права каталога поверх прав инфоблока?
Да. Даже при полном доступе к модулю catalog пользователь не увидит товары, если у него нет прав на соответствующий инфоблок каталога.
Как проверить корректность настроенных прав?
Создайте тестовых пользователей под каждую роль и пройдите реальные сценарии работы, проверяя доступность пунктов меню, документов и точных остатков. Дополнительно контролируйте журнал складских документов.
Поможем с настройкой и поддержкой 1С-Битрикс: Управление сайтом
Поможем с настройкой, доработкой и поддержкой 1С-Битрикс: Управление сайтом.