273 слов | 2 минуты

Статусы наличия товара в 1С-Битрикс

Разбор логики определения наличия товара в Битрикс: какие параметры каталога, SKU и компонентов влияют на статусы «Есть в наличии» и «Нет в наличии».

Условия определения наличия

В Битрикс всего два статуса наличия: «Есть в наличии» и «Нет в наличии». Они зависят от трёх параметров торгового каталога:

Наличие Условия
НЕТ Все три условия выполнены одновременно: доступное количество ≤ 0, количественный учёт включён, покупка при отсутствии товара запрещена
ДА Любое другое сочетание

Добавить товар в корзину можно только при статусе «В наличии».

Складской учёт

Начиная с версии 12.5 в Битрикс доступны склады и учёт остатков по каждому из них. По умолчанию остатки на складах носят информационный характер и не влияют на статус наличия.

Складской учёт включается для всего сайта в настройках модуля «Интернет-магазин». После включения:

  • Поля редактирования количества товара блокируются
  • Количество изменяется только через документы (приходные, расходные)
  • CATALOG_QUANTITY всегда равен сумме остатков по всем складам

Торговые предложения (SKU)

При наличии SKU у товара важно правильно настроить параметры наличия как для основного товара, так и для каждого предложения.

Проблема: если у основного товара не заданы параметры количественного учёта, а у всех его SKU нет в наличии — Битрикс считает основной товар доступным и предлагает его купить, что некорректно.

Параметр HIDE_NOT_AVAILABLE в компоненте bitrix:catalog скрывает отсутствующие товары, но работает корректно только когда параметры наличия заданы у основного товара:

При некорректной конфигурации товары с доступными SKU могут пропасть из списка:

Дополнительные сложности возникают при совместном использовании фильтра и скрытия отсутствующих товаров:

Рекомендация: для товаров с SKU всегда задавайте параметры количественного учёта на уровне основного товара, даже если сам товар не имеет собственного остатка.