К статье
Практический материал

Справочники и Данные · 10 мин

Как сделать экспорт в 1С-Битрикс

Пошаговая инструкция по экспорту данных в 1С-Битрикс: выгрузка каталога, заказов и пользователей в CSV, XML и CommerceML, настройка профилей и типичные ошибки.

Экспорт в 1С-Битрикс — это выгрузка данных из базы сайта в файлы стандартных форматов: CSV, XML, YML или CommerceML. Чаще всего экспортируют каталог товаров, заказы, пользователей и элементы инфоблоков. В зависимости от задачи используются разные инструменты: встроенные профили экспорта инфоблоков, выгрузка заказов в «1С:Управление торговлей», экспорт списков через действия над элементами или выгрузка через API.

Перед началом работы определите три вещи: какие именно данные нужны (товары, свойства, цены, остатки, заказы), в каком формате их примет принимающая система и как часто будет повторяться выгрузка. От этого зависит выбор инструмента. Разовая выгрузка каталога для аналитики делается стандартным профилем за несколько минут, а регулярный обмен с учётной системой требует настройки CommerceML-обмена или модуля интеграции.

Все операции экспорта выполняются из административного раздела и требуют прав доступа к соответствующим модулям. Перед первой выгрузкой на рабочем сайте сделайте резервную копию базы данных или хотя бы проверьте результат на тестовой копии — сам экспорт данные не меняет, но сопутствующие настройки (например, деактивация элементов при обмене) могут повлиять на отображение каталога.

Какие данные можно выгрузить и в каких форматах

Штатно из коробки 1С-Битрикс выгружает: элементы и разделы инфоблоков (CSV, XML), товарный каталог с ценами и свойствами, заказы магазина (CommerceML), списки пользователей (CSV из раздела «Пользователи»), результаты веб-форм, а также данные highload-блоков. Формат выбирается исходя из принимающей стороны: Excel и Google Таблицы удобно читают CSV, учётные системы на платформе 1С — CommerceML, маркетплейсы и Яндекс.Маркет — YML.

Важно понимать ограничение стандартного CSV-экспорта: он выгружает поля и свойства инфоблока, но не всегда корректно передаёт множественные свойства, привязки к элементам и торговые предложения (SKU). Если каталог содержит товары с вариациями (размер, цвет), для полноценной выгрузки лучше использовать XML-экспорт инфоблока или специализированные профили типа YML.

Экспорт инфоблока в CSV: пошаговая настройка профиля

Стандартный путь: «Контент → Инфоблоки → Экспорт → CSV». Нажмите «Добавить профиль» и заполните параметры. Укажите имя профиля, выберите тип инфоблока и сам инфоблок. В настройках файла задайте разделитель полей (обычно точка с запятой для корректного открытия в русской версии Excel) и кодировку — для Excel чаще подходит Windows-1251, для сторонних систем — UTF-8.

На шаге сопоставления полей отметьте, какие поля и свойства попадут в файл: название, символьный код, цены, остатки, свойства. Для каждого поля задайте соответствие колонке. Сохраните профиль и запустите экспорт кнопкой «Выполнить». Готовый файл будет доступен для скачивания по ссылке после завершения операции.

Сохранённый профиль остаётся в системе, поэтому повторная выгрузка с теми же настройками делается в два клика. Если выгрузка нужна регулярно, профиль можно запускать через агент или cron, вызывая соответствующий обработчик — но это уже требует минимальных навыков разработки.

Порядок действий
  1. 1
    Откройте «Контент → Инфоблоки → Экспорт → CSV» и создайте новый профиль
  2. 2
    Выберите инфоблок, задайте разделитель «;» и кодировку Windows-1251 для Excel
  3. 3
    Сопоставьте поля и свойства инфоблока колонкам файла
  4. 4
    Сохраните профиль и нажмите «Выполнить»
  5. 5
    Скачайте файл и проверьте: открывается ли в Excel, все ли строки и цены на месте

Экспорт заказов и обмен с «1С:Управление торговлей»

Для выгрузки заказов в учётную систему используется механизм обмена в формате CommerceML. Настройка ведётся в разделе «Магазин → Настройки → Интеграция с 1С» (в старших редакциях). Здесь задаются: какие заказы передавать (по статусам, сайтам, типам плательщиков), параметры авторизации для 1С и режим обмена — ручной или по расписанию.

Со стороны 1С обмен запускается из обработки «Обмен с сайтом», куда вводится адрес вида /bitrix/admin/1c_exchange.php, логин и пароль пользователя с правами на обмен. Заказы выгружаются пакетами; после успешной передачи сайт может автоматически менять статусы заказов — это настраивается отдельно и требует аккуратности, чтобы не рассылать покупателям ложные уведомления.

Если нужна простая разовая выгрузка заказов в таблицу, зайдите в «Магазин → Заказы», отфильтруйте нужные записи и используйте экспорт списка в Excel через меню действий над списком. Это быстрее, чем настраивать полноценный обмен, но подходит только для ручной работы.

Выгрузка каталога для маркетплейсов и Яндекс.Маркета (YML)

Для выгрузки товаров в Яндекс.Маркет, на маркетплейсы и в товарные кампании используется формат YML — разновидность XML с тегами offers, price, categoryId. В Битриксе есть готовые решения из Маркетплейса и встроенные механизмы экспорта торгового каталога, которые формируют YML-файл по расписанию и отдают его по постоянной ссылке.

При настройке YML-выгрузки ключевое — корректное сопоставление свойств товара обязательным полям: название, цена, категория, ссылка на товар, изображение. Маркетплейсы отклоняют фиды с пустыми ценами, битыми ссылками на картинки и отсутствующими категориями. После генерации файла проверьте его валидатором принимающей площадки — обычно он доступен в личном кабинете.

Экспорт пользователей, списков и нестандартных данных

Список пользователей выгружается из раздела «Настройки → Пользователи → Список пользователей»: настройте отображаемые колонки, примените фильтр и выберите экспорт в Excel в меню действий. Аналогично работают списки (модуль «Списки») и результаты веб-форм — у них есть собственные кнопки выгрузки.

Когда штатных инструментов не хватает — например, нужен экспорт со сложной фильтрацией, объединением нескольких инфоблоков или выгрузкой по расписанию в стороннюю систему — используют REST API Битрикса или прямые запросы через ORM. Это уже задача для разработчика: пишется скрипт, вызываемый через cron или webhook, который формирует файл нужной структуры.

Сравнение вариантов

CSV-экспорт инфоблока

Подходит для разовой выгрузки каталога и аналитики. Ограничение: слабо работает с множественными свойствами и торговыми предложениями.

CommerceML-обмен с 1С

Для регулярного обмена каталогом и заказами с учётной системой. Требует настройки с двух сторон и тестирования.

YML-выгрузка

Для маркетплейсов и Яндекс.Маркета. Нужен автоматический перегенерируемый файл по постоянной ссылке.

REST API / скрипт

Для нестандартных выгрузок и интеграций. Требует разработчика и контроля нагрузки на сайт.

Проверка результата и типичные ошибки

После любой выгрузки сверьте результат с исходными данными: количество строк в файле должно совпадать с количеством элементов по фильтру, цены и остатки — с данными в карточках товаров, кодировка — корректно отображаться в принимающей программе. Откройте файл в том приложении, где его будут использовать: CSV, нормально выглядящий в «Блокноте», может развалиться в Excel из-за неправильного разделителя.

Частые проблемы: «кракозябры» вместо кириллицы (несовпадение кодировок UTF-8 и Windows-1251), обрезанные файлы при большом каталоге (упирается в лимиты PHP — max_execution_time и memory_limit), отсутствие части свойств (не отмечены при сопоставлении полей) и выгрузка деактивированных элементов (не задан фильтр по активности). Большие каталоги выгружайте по частям — по разделам или с постраничным лимитом.

Типичные ошибки
01
Экспорт без фильтра по активности — в файл попадают скрытые и удалённые с витрины товары, которые потом уезжают на маркетплейс
02
Кодировка UTF-8 для Excel — русские буквы превращаются в нечитаемые символы, файл приходится пересохранять
03
Выгрузка всего каталога одним запросом — скрипт падает по таймауту, файл получается обрезанным
04
Настройка обмена заказами сразу на боевом сайте — массовое изменение статусов и ложные письма покупателям
05
Выгрузка YML без проверки валидатором — маркетплейс отклоняет фид из-за пустых обязательных полей
Контрольные точки

Как проверить результат

Количество строк в файле
Норма

Совпадает с числом элементов по фильтру в админке

Тревожный признак

Строк меньше — выгрузка оборвалась или сработал лимит

Кодировка
Норма

Кириллица читается в целевой программе

Тревожный признак

Нечитаемые символы — пересоздайте файл в нужной кодировке

Цены и остатки
Норма

Совпадают с карточками товаров на сайте

Тревожный признак

Пустые или устаревшие значения — не выгружены нужные поля

YML-файл
Норма

Проходит валидацию на стороне площадки, доступен по ссылке без авторизации

Тревожный признак

403/404 по ссылке или ошибки валидатора

Частые вопросы

Можно ли настроить автоматический экспорт по расписанию?

Да. Для CommerceML-обмена расписание настраивается со стороны 1С или через cron на сервере, вызывающий скрипт обмена. Для CSV-профилей и YML-выгрузок автозапуск реализуется через агенты Битрикса или системный cron — обычно это делает разработчик, так как требуется вызов обработчика экспорта кодом.

Почему Excel показывает весь CSV в одном столбце?

Причина в разделителе: русская версия Excel ожидает точку с запятой, а файл часто выгружается с запятой. Либо пересоздайте профиль с разделителем «;», либо откройте файл через «Данные → Получение данных из текстового файла» с ручным указанием разделителя.

Как выгрузить товары вместе с торговыми предложениями (размерами, цветами)?

Стандартный CSV-экспорт инфоблока товаров не всегда включает SKU корректно. Используйте экспорт торгового каталога в XML, YML-выгрузку (где каждое предложение — отдельный offer) или CommerceML-обмен с 1С, где структура предложений передаётся штатно.

Безопасно ли делать экспорт на работающем сайте?

Само чтение данных при экспорте ничего не меняет в базе, риск минимален. Осторожность нужна в двух случаях: при обмене с 1С, который может менять статусы и деактивировать элементы, и при выгрузке очень больших каталогов в час пик — тяжёлый запрос может замедлить сайт для посетителей.

Что делать, если стандартных полей для выгрузки не хватает?

Проверьте, добавлены ли нужные свойства в настройки профиля экспорта. Если требуется вычисляемое поле, объединение данных из нескольких сущностей или особый формат — задача решается кастомным скриптом через API Битрикса, для этого привлеките разработчика.

Итог

Что важно запомнить

Разовый экспорт делайте стандартным профилем CSV/XML, регулярный обмен с 1С — через CommerceML, выгрузку на маркетплейсы — через YML с автоматическим обновлением. Всегда проверяйте кодировку, количество строк и актуальность цен после выгрузки, а обмен заказами сначала тестируйте на копии сайта.