Битрикс: чек-лист каталога и цен перед продакшеном
Ошибки в торговом каталоге 1С-Битрикс проявляются не только в карточке товара: ломаются остатки, выгрузки, корзина и расчёт заказов. Проверяем структуру, цены, права и сценарии покупки до запуска.

Каталог 1С-Битрикс может выглядеть правильно в админке и всё равно отдавать покупателю неверную цену, пустой остаток или не тот вариант товара. Перед переносом магазина в продакшен проверьте структуру инфоблоков, торговые предложения, типы цен, валюты, НДС, права доступа и полный путь от карточки до заказа. Этот чек-лист рассчитан на «1С-Битрикс: Управление сайтом» из ветки 24.x; названия пунктов меню и доступные настройки стоит сверить с установленной редакцией и обновлениями проекта.
Сначала зафиксируйте модель каталога
Не начинайте с массовой загрузки товаров. Сначала ответьте на вопрос: что в магазине считается товаром, а что — его вариантом. Футболка разных размеров и цветов обычно требует торговых предложений. Стул, у которого нет вариантов, может быть обычным товаром с одной ценой и остатком.
| Сценарий | Модель в Битрикс | Что проверить |
|---|---|---|
| Один товар, одна цена | Товар без торговых предложений | Цена, остаток и доступность записаны на самом товаре |
| Размеры, цвета, комплектации | Товар с торговыми предложениями | Цена, остаток, артикул и свойства варианта находятся у предложения |
| Разные наборы с самостоятельной логикой | Отдельные товары или отдельные предложения | Не смешаны характеристики, которые влияют на цену и остаток |
Торговое предложение[1] — вариант товара, который может иметь собственную цену, остаток, артикул и набор значений свойств. Если цена зависит от цвета или комплектации, хранить её только в свойствах родительского товара нельзя: корзина и обмен с внешними системами должны получать цену конкретного предложения.
Главный тест каталога — не «товар красиво отображается», а «покупатель выбрал конкретный вариант и получил именно его цену, остаток и артикул во всех системах».
Чек-лист перед загрузкой товаров
- Опишите обязательные поля. Для каждого типа товара зафиксируйте название, символьный код, артикул, единицу измерения, изображения, описание, раздел и свойства, влияющие на выбор. Проверьте, что символьные коды уникальны и не меняются при повторной загрузке. Если карточка открывается по ожидаемому адресу и в ней отображаются все обязательные характеристики, шаг пройден.
- Проверьте связь товара и предложений. У товара с вариантами должно быть понятное свойство, по которому фронтенд выбирает предложение: например, размер или цвет. У каждого предложения проверьте отдельный артикул и, если используется складской учёт, отдельный остаток. В карточке можно выбрать вариант, а после выбора меняются цена, наличие и артикул.
- Разделите свойства для фильтра и свойства для описания. Значения «синий», «Синий» и «сине-зелёный» не должны появляться как случайные дубли, если для них нужен один фильтр. После индексации умного фильтра нужные значения находятся, а товары не исчезают из выборки из-за разных регистров или опечаток.
- Проверьте единицы измерения. Для товара, который продаётся упаковками, метрами или килограммами, заранее определите, что означает одна единица в корзине. В корзине, заказе и выгрузке отображается одинаковая единица, а количество не превращается из упаковок в штуки без явного правила.
- Проверьте изображения и ссылки. У товара есть основное изображение, у предложений не подменяется картинка соседнего варианта, а удалённые товары не оставляют битые ссылки в меню и подборках. Для массовой загрузки отдельно проверьте кириллицу в именах файлов и ограничения размера изображений.
Цены: где чаще всего появляется ошибка
В Битрикс цена связана не только с числом. В расчёте участвуют тип цены, валюта, группа пользователя, НДС, скидки и иногда конкретное торговое предложение. Поэтому проверять нужно не одно поле в админке, а итоговую цену в разных сценариях.
Типы цен и права
Оставьте только те типы цен, которые действительно используются: например, розничную и оптовую. Для каждого типа проверьте валюту, разрешённые группы пользователей и источник заполнения. Скрытая от группы цена не должна случайно становиться ценой по умолчанию на витрине.
Создайте тестовых пользователей для гостя, обычного покупателя и оптовой группы. Проверьте карточку, список товаров, корзину и оформление заказа под каждой ролью. Если цена меняется в карточке, но возвращается к другой в корзине, ищите расхождение между компонентом каталога, скидками и настройками корзины.
Цена товара и цена предложения
Для товара с предложениями заполните цены у предложений, а не только у родительского элемента. Проверьте минимум три случая: одинаковая цена у всех вариантов, разная цена у вариантов и вариант без остатка. При переключении параметров итоговая цена должна меняться одновременно с выбранным предложением.
Валюта, НДС и округление
Зафиксируйте базовую валюту проекта и правила конвертации. Не полагайтесь на округление в шаблоне: цена в карточке, корзине, заказе, письме и выгрузке должна совпадать по правилам магазина. Ставку НДС и режим отображения цены с налогом сверяйте с учётной системой и требованиями бизнеса; не переносите настройку из другого проекта автоматически.
Что проверить в связке «цена — корзина — заказ»
- Открыть карточку гостем и авторизованным пользователем.
- Выбрать каждое значимое торговое предложение и добавить его в корзину.
- Изменить количество, удалить товар и вернуть его в корзину.
- Применить скидку или промокод, если они предусмотрены проектом.
- Перейти к оформлению, выбрать доставку и оплату.
- Сравнить цену в карточке, корзине, заказе, письме и внешней учётной системе.
- Проверить, что в заказ попали правильные артикул, вариант, количество, расчётные данные и цена за единицу.
Тестируйте не только положительный сценарий. Попробуйте купить товар с нулевым остатком, отключённое предложение, минимальное и максимальное количество, а также товар, который был изменён между добавлением в корзину и оформлением. Бизнес-правило для таких случаев должно быть заранее определено: запретить покупку, показать уведомление или пересчитать заказ.
Обмен с учётной системой и внешними каналами
Если каталог загружается из 1С или другой системы, назначьте один источник истины для каждого поля. Иначе ручная правка цены в Битрикс будет перезаписана следующим обменом. Составьте таблицу соответствий: идентификатор товара, артикул, раздел, характеристики, цена, остаток, ставка НДС и признак активности.
Запустите тестовый обмен на отдельном наборе из нескольких товаров: обычный товар, товар с предложениями, товар с несколькими ценами и товар без остатка. После обмена проверьте не только карточки, но и корзину. Отдельно посмотрите журнал обмена и ошибки сопоставления. Массовый импорт нельзя считать успешным только потому, что файл обработан без сообщения об аварии.
Права, кеш и продакшен
Перед запуском проверьте, кто может изменять цены, остатки, свойства и настройки каталога. Доступ контент-менеджера к описанию не должен автоматически давать доступ к ценам. Уберите тестовые типы цен, демонстрационные товары, временные скидки и пользователей из рабочей базы.
После изменения структуры и цен очистите кеш в предусмотренном для проекта режиме и повторите проверку с анонимной сессией. Проверьте две версии страницы: с очищенным кешем и после повторного открытия. Если одна группа пользователей видит старую цену, проблема может быть не в карточке, а в кеше, CDN или отдельном кеше компонента.
Что ломается чаще всего
| Симптом | Вероятная причина | Проверка |
|---|---|---|
| В карточке одна цена, в корзине другая | Разные типы цен, скидка или кеш | Тестовые группы пользователей, правила скидок, очищенный кеш |
| Выбранный цвет не меняет артикул | Фронтенд не переключает торговое предложение | Идентификатор предложения в запросе и состав данных карточки |
| Товар есть, но купить его нельзя | Нулевой остаток, выключенное предложение или неверный режим доступности | Остаток и активность конкретного предложения |
| После обмена пропали ручные изменения | Внешняя система перезаписывает поле | Журнал обмена и карта соответствий полей |
Когда чек-лист пройден
Сохраните результаты в виде таблицы с колонками «сценарий», «ожидаемый результат», «фактический результат», «окружение» и «ответственный». Минимальный набор — три роли пользователей, три типа товара, несколько вариантов цены и полный путь до заказа.
После запуска смотрите не только ошибки сервера. Отслеживайте заказы с нулевой или неожиданной ценой, отмены из-за отсутствия товара, ошибки обмена и расхождения между заказом и учётной системой. Следующий практический шаг — поставить регулярную автоматическую проверку нескольких контрольных SKU после каждого обмена и обновления каталога.
[1] В интерфейсе и документации Битрикс также встречается термин «SKU». В этой статье он используется как обозначение торгового предложения, а не как отдельная бизнес-сущность вне каталога.
Тендерный специалист 44-ФЗ / 223-ФЗ: Разбор PDF-документации закупки, поиск «заточек» под поставщика, чек-лист заявки.
Спросить за 20 ₽Источники: Документация 1С-Битрикс для разработчиков, Официальная документация 1С-Битрикс: Управление сайтом
Частые вопросы
Можно ли хранить все варианты товара в одном элементе?
Почему цена в карточке отличается от цены в корзине?
Что будет, если не проверить каталог перед запуском?
Как понять, где хранить остаток: у товара или у предложения?
Нужно ли очищать кеш после изменения цены?
Можно ли доверять успешному завершению обмена?
Материал носит информационный характер и подготовлен редакцией «Агентуры». Он не является офертой, рекламой или индивидуальной консультацией. Упомянутые продукты, компании и торговые знаки принадлежат их правообладателям. Перед принятием решений, влекущих юридические или финансовые последствия, обратитесь к профильному специалисту.