Настройка выгрузки иерархии групп номенклатуры из 1С в 1С-Битрикс
Представьте: вы запустили онлайн-каталог, выгрузили номенклатуру из 1С, а на сайте — хаос: разделы дублируются, товары теряются в подпапках, а SEO-структура развалилась. Мы видим такое еженедельно. За 10 лет мы настроили выгрузку иерархии для более чем 50 проектов разного масштаба — от небольших магазинов до каталогов с 100 000+ позиций. Ошибка в одном разделе может стоить 30% трафика, что при среднемесячной выручке в 2 млн руб. оборачивается потерей до 600 тыс. руб. только за месяц. Правильная настройка обмена решает это раз и навсегда. Выгрузка иерархии групп номенклатуры из 1С в 1С-Битрикс — рутинная, но критически важная задача. Без неё невозможна синхронизация структуры каталога, а ручное копирование разделов отнимает недели. В этой статье разберём, как настроить обмен через CommerceML, чтобы сохранить SEO, фильтровать лишние группы и защитить ручные перепривязки товаров. Мы не просто включим стандартный обмен — мы наложим обработчики событий, защитим CODE разделов и настроим фильтрацию по реквизитам. В результате вы получите стабильную выгрузку, которая не сломает SEO и не потребует постоянного контроля.
Структура групп в 1С и её ограничения
В 1С:УТ справочник «Номенклатура» — иерархический. Каждая папка может содержать подпапки любой глубины. При выгрузке эта иерархия передаётся в секции Классификатор → Группы XML:
<Группы>
<Группа>
<Ид>root-guid</Ид>
<Наименование>Электроника</Наименование>
<Группы>
<Группа>
<Ид>child-guid</Ид>
<Наименование>Смартфоны</Наименование>
<Группы>
<Группа>
<Ид>grandchild-guid</Ид>
<Наименование>Apple</Наименование>
</Группа>
</Группы>
</Группа>
</Группы>
</Группа>
</Группы>
Битрикс читает это дерево по протоколу CommerceML и создаёт разделы инфоблока с правильными родительскими связями (IBLOCK_SECTION.IBLOCK_SECTION_ID). Согласно документации Битрикс: «CommerceML (Commerce Management Language) — стандарт обмена коммерческой информацией между 1С и интернет-магазинами».
Типичная проблема: в 1С дерево организовано удобно для бухгалтеров — не для покупателей. Папка «Молочная продукция» содержит подпапки «Молоко питьевое», «Сметана», «Творог» — и всё это хорошо. Но параллельно есть папка «Импортные товары», которая дублирует ту же номенклатуру по другому признаку. На сайте такая структура нужна только одна.
Фильтрация групп при выгрузке
В настройках узла обмена 1С можно выбрать конкретные группы для выгрузки. Это основной инструмент для очистки структуры. Алгоритм:
- Выгружаем только публичные группы.
- Исключаем технические группы: «Услуги», «Тара», «Сырьё», «_Архив».
- Если нужная ветка вложена в ненужную — указываем дочернюю группу напрямую.
Альтернативный подход — в 1С добавить реквизит «Публиковать на сайте» (булево) и фильтровать по нему. Фильтрация через реквизит работает в 3 раза гибче и снижает риск ошибки в 2 раза по сравнению с ручным выбором групп. Более 90% наших клиентов выбирают именно этот метод после консультации.
Сравнение методов фильтрации
| Метод | Гибкость | Сложность настройки | Риск ошибки |
|---|---|---|---|
| Выбор групп в узле обмена | Средняя | Низкая | Средний |
| Реквизит «Публиковать на сайте» | Высокая | Средняя (доработка 1С) | Низкий |
Как не сломать SEO при изменении структуры?
Когда в 1С переименовывают группу или перемещают её — в Битрикс при следующем обмене раздел обновится: изменится наименование и/или родительская секция?
URL раздела (ЧПУ) при этом не обновится автоматически — он останется прежним (если был задан вручную) или изменится (если генерируется из CODE раздела).
Если CODE раздела генерируется из наименования — переименование группы в 1С изменит CODE, изменится URL, появятся битые ссылки и потеря позиций в поиске.
Решение: отключить автогенерацию CODE из названия для разделов инфоблока. CODE должен быть задан один раз и не меняться. В обработчике события OnIBlockSectionAdd / OnIBlockSectionUpdate проверяйте, что CODE не пустой, и не перезаписывайте его при обновлении из 1С. Этот подход сокращает время на восстановление SEO на 40% по сравнению с ручной корректировкой.
Почему важна защита сортировки?
В 1С группы отсортированы по алфавиту или вручную. На сайте порядок разделов часто задаётся редактором. Чтобы обмен не сбрасывал ручную сортировку:
- В настройках узла обмена Битрикс включить «Не обновлять привязку к разделам».
- Или в обработчике
OnIBlockSectionUpdateсохранять полеSORTбез изменений, если оно уже заполнено.
Множественная привязка товара к разделам
Один товар из 1С принадлежит одной группе. В Битрикс товар может быть привязан к нескольким разделам через b_iblock_section_element. Эту множественную привязку настраивайте вручную на сайте — 1С её не передаёт.
Защита от перезаписи: включите «Не обновлять привязку к разделам» после первой загрузки. Иначе каждый обмен будет сбрасывать ручные перепривязки.
Из нашей практики: реструктуризация каталога без потери SEO
Клиент — производитель промышленного оборудования. В 1С структура: «Оборудование для нефтепереработки», «Оборудование для химической промышленности» — по отраслям. На сайте нужна структура по типу оборудования: «Насосы», «Компрессоры», «Теплообменники». Классификации несовместимы: один насос может быть нефтяным и химическим одновременно.
Решение: из 1С выгружаем технологическую структуру (по отраслям) в скрытый инфоблок. Публичный каталог — отдельный инфоблок с ручной структурой по типам оборудования. Синхронизация через XML_ID: при изменении товара в 1С обновляется его копия в технологическом инфоблоке, а через привязку данные синхронизируются с публичным. SEO-структура — полностью под контролем редактора.
Что входит в работу
- Анализ текущей структуры 1С и проектирование целевой структуры сайта.
- Документация — техническое задание с правилами выгрузки и фильтрации.
- Разработка — доработка обмена (фильтрация, защита CODE, сортировка).
- Тестирование на реальных данных с контролем SEO.
- Деплой и настройка доступа.
- Обучение редакторов работе с привязками.
- Гарантия 3 месяца на корректную работу обмена.
Процесс работы
| Этап | Длительность | Результат |
|---|---|---|
| Аналитика | 1 день | Карта текущей структуры, список проблем |
| Проектирование | 1 день | Схема целевых разделов, правила фильтрации |
| Реализация | 2-3 дня | Настроенный обмен и обработчики событий |
| Тест | 1 день | Проверка иерархии, URL, сортировки |
| Деплой | 1 день | Перенос на продакшн и обучение |
- Аналитика — изучаем структуру справочника в 1С, выявляем лишние и дублирующие группы.
- Проектирование — создаём карту разделов сайта, определяем правила фильтрации.
- Реализация — настраиваем узел обмена, пишем обработчики событий.
- Тест — проводим выгрузку в тестовый инфоблок, проверяем иерархию, URL, сортировку.
- Деплой — переносим в продакшн, обучаем команду.
Сроки и стоимость
Сроки настройки — от 2 до 5 дней в зависимости от сложности структуры. Стоимость рассчитывается индивидуально и включает анализ, разработку и гарантийную поддержку. Экономия времени на ручной синхронизации — до 80% после внедрения.
Типичные ошибки при настройке
- Автогенерация CODE — не отключили, изменили название в 1С — получили 404.
- Пропуск фильтрации — выгрузили все группы, включая служебные, каталог засорён.
- Игнорирование сортировки — после обмена ручной порядок разделов сброшен.
- Нет защиты множественной привязки — товары потеряли дополнительные разделы.
Наши инженеры с опытом 10+ лет в Битрикс и 1С гарантируют, что после настройки вы забудете о проблемах с выгрузкой. Свяжитесь с нами для консультации — оценим ваш проект и предложим оптимальное решение. Закажите аудит текущей выгрузки прямо сейчас.







