Прайс-лист из 1С 8.3 в Excel, XML и YML: форматы, обмен с сайтом и автоматическая выгрузка
Содержание
Быстрее всего выгрузить прайс с 1С так: откройте отчёт «Прайс-лист» (в 1С:Бухгалтерии 3.0 — Склад → Цены → Прайс-лист), выберите тип цен, сформируйте и сохраните результат кнопкой с дискетой в xlsx или pdf. Этого хватает, чтобы отправить цены клиенту. Для сайта нужен обмен в формате CommerceML (XML), для Яндекс Маркета и агрегаторов — фид YML, а для регулярной рассылки — расписание.
Способ выбирают по получателю. Человеку нужен файл Excel или PDF. Сайту — XML-пакет, который он умеет разбирать. Площадке — фид по её спецификации или API.
Форматы выгрузки прайс-листа: что куда подходит
Начните с выбора формата. От него зависит, каким механизмом 1С вы будете пользоваться.
| Формат | Кому | Чем выгружать | Особенности |
|---|---|---|---|
xlsx, xls | клиенты, менеджеры | отчёт «Прайс-лист» | удобно фильтровать и править |
pdf | клиенты | отчёт «Прайс-лист» | нельзя случайно изменить цену |
mxl | другая база 1С, архив | отчёт, сохранение табличного документа | открывается только в 1С или бесплатном просмотрщике |
txt, html | простые интеграции | сохранение табличного документа | без форматирования |
CommerceML (import.xml, offers.xml) | интернет-магазин | обмен с сайтом | стандартный протокол для CMS |
| YML | Яндекс Маркет, агрегаторы | сайт или отдельная обработка | XML со своей схемой |
| JSON через API | маркетплейсы | интеграционные модули | обмен без файла |
CSV в списке форматов сохранения табличного документа нет. Если площадка требует CSV, сохраните прайс в xlsx, откройте в Excel и пересохраните как «CSV (разделители — точки с запятой)».
Как выгрузить прайс из 1С в Excel и PDF
Это основной способ для бухгалтера и менеджера. Работает в любой типовой конфигурации, где ведутся цены.
Где найти отчёт в разных конфигурациях
| Конфигурация | Где открыть прайс-лист | Откуда берутся цены |
|---|---|---|
| 1С:Бухгалтерия 3.0 | Склад → Цены → Прайс-лист | «Типы цен номенклатуры», документ «Установка цен номенклатуры» |
| 1С:Управление торговлей 11 | раздел CRM и маркетинг, группа ценообразования, отчёт «Прайс-лист» | «Виды цен», документ «Установка цен номенклатуры» |
Термины не путайте: в Бухгалтерии справочник называется «Типы цен», в УТ — «Виды цен». Если не видите отчёт в меню, наберите «прайс» в поле поиска по интерфейсу в верхней части окна.
Пошагово: формируем и сохраняем
- Откройте отчёт «Прайс-лист».
- Укажите дату. Цены берутся последние действующие на эту дату.
- Выберите один или несколько типов (видов) цен. Например, «Оптовая» и «Розничная» в двух колонках.
- Задайте отбор: группа номенклатуры, только товары с остатком, без услуг. Отбор открывается через кнопку настроек отчёта.
- Нажмите
Сформировать. - Нажмите кнопку сохранения (значок дискеты) в командной панели отчёта.
- Выберите тип файла: «Лист Microsoft Excel 2007» (
xlsx), «Документ PDF» или другой. - Укажите папку и имя файла, например
prajs_opt_2026-10-07.xlsx.
Если в форме отчёта есть кнопка с конвертом, её используют, чтобы сразу отправить файл по почте. Для этого в базе должна быть настроена учётная запись электронной почты.
Как сделать прайс аккуратнее
- 🖼️ Картинки товаров. В УТ 11 в настройках прайс-листа можно включить колонку с изображением. Файл заметно растёт: на 2 000 позиций с фото он легко переваливает за десятки мегабайт.
- 📦 Остатки. Не выкладывайте клиенту точные остатки, если это коммерческая тайна. Достаточно отбора «есть в наличии».
- 🏷️ Артикул. Добавьте колонку артикула. Клиенты ищут по нему, а не по наименованию.
- 💾 Вариант отчёта. Настроили колонки и отборы — сохраните как свой вариант отчёта. В следующий раз выбираете вариант и сразу жмёте
Сформировать.
Excel иногда показывает цену как текст, и формулы с ней не работают. Причина — разделитель групп разрядов в числе. Выделите колонку и примените в Excel «Текст по столбцам» или задайте числовой формат.
Выгрузка товаров и цен на сайт через CommerceML (XML)
Для интернет-магазина отчёт не подходит: сайту нужен машинный формат. Стандарт для этого — CommerceML. Его понимают 1С-Битрикс, UMI.CMS, модули для WordPress и OpenCart, многие конструкторы магазинов.
Что уходит в пакете обмена
| Файл | Содержимое |
|---|---|
import.xml | каталог: группы, товары, артикулы, свойства, картинки |
offers.xml | предложения: цены по типам, остатки, характеристики |
Цены прайса живут именно в offers.xml. Если сайт получил товары, но без цен, смотреть надо сюда.
Настройка обмена с сайтом
- Включите синхронизацию:
Администрирование → Синхронизация данных. В УТ 11 раздел называетсяНСИ и администрирование → Администрирование → Синхронизация данных. - Установите флажок обмена с сайтом.
- Создайте новый узел обмена с сайтом по ссылке, которая появится рядом с флажком.
- На первой вкладке выберите способ:
- через интернет — укажите адрес сайта, логин и пароль пользователя сайта, у которого есть право на обмен;
- через каталог — 1С кладёт файлы в папку, а сайт или скрипт забирает их сам.
- Укажите, какие группы номенклатуры выгружать. Не отмечайте весь справочник, если на сайте продаются не все товары.
- Выберите тип (вид) цен для сайта. Без этого
offers.xmlуйдёт без цен. - Отметьте выгрузку картинок, если сайт их принимает.
- Сохраните узел и нажмите команду выполнения обмена вручную. Первый обмен идёт дольше, потом передаются только изменения.
Сначала настройте обмен через каталог и посмотрите файлы глазами. Откройте offers.xml в браузере и найдите пару товаров: есть ли цена, правильный ли тип цен, нет ли нулей. Это быстрее, чем выяснять со стороны сайта, почему цены не пришли.
Где окажутся файлы в серверной базе
В клиент-серверном режиме обмен по расписанию выполняет сервер 1С. Путь каталога он понимает со своей стороны. Запись C:\Exchange означает диск сервера, а не компьютера бухгалтера.
Ещё одна деталь: служба сервера 1С работает под своей учётной записью Windows. Этой записи нужны права на запись в папку обмена. Если права не выданы, обмен завершится ошибкой доступа, хотя вручную из-под пользователя папка открывается.
Фид YML для Яндекс Маркета и других площадок
YML (Yandex Market Language) — XML-формат со своей схемой: магазин, валюты, категории, предложения. Его принимают Яндекс Маркет, сервисы сравнения цен, некоторые рекламные системы.
Минимальная структура фида
<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2026-10-07T09:00">
<shop>
<name>Магазин</name>
<company>ООО «Пример»</company>
<url>https://example.ru</url>
<currencies>
<currency id="RUR" rate="1"/>
</currencies>
<categories>
<category id="10">Канцтовары</category>
</categories>
<offers>
<offer id="A-1001" available="true">
<name>Бумага офисная А4, 500 л.</name>
<price>389</price>
<currencyId>RUR</currencyId>
<categoryId>10</categoryId>
<vendorCode>A-1001</vendorCode>
</offer>
</offers>
</shop>
</yml_catalog>
Площадка может требовать дополнительные поля: штрихкод, бренд, вес, ссылку на товар и картинку. Перед запуском сверьте фид с требованиями её справки.
Откуда взять YML
В типовой Бухгалтерии и УТ кнопки «Выгрузить YML» в стандартной поставке нет. Рабочих путей три:
| Путь | Когда выбирать | Минусы |
|---|---|---|
| Сайт строит YML из данных CommerceML | магазин уже есть | фид зависит от работы сайта |
| Готовое расширение или обработка из каталога решений | сайта нет, нужен только фид | платно, надо следить за совместимостью с релизом |
| Своя обработка | нестандартные требования | нужен программист 1С |
Для Ozon и Wildberries цены удобнее передавать не файлом, а через API площадки. В актуальных релизах УТ 11 есть встроенные средства интеграции с крупными маркетплейсами. Для Бухгалтерии используют внешние сервисы-коннекторы.
Если пишете свою обработку
Основа обработки — запрос к ценам и запись XML. Пример для 1С:Бухгалтерии 3.0, где цены хранятся в регистре сведений «Цены номенклатуры» с измерением «Тип цен»:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Цены.Номенклатура КАК Номенклатура,
| Цены.Номенклатура.Артикул КАК Артикул,
| Цены.Цена КАК Цена
|ИЗ
| РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, ТипЦен = &ТипЦен) КАК Цены
|ГДЕ
| Цены.Цена > 0";
Запрос.УстановитьПараметр("Дата", ТекущаяДатаСеанса());
Запрос.УстановитьПараметр("ТипЦен", ТипЦен);
Выборка = Запрос.Выполнить().Выбрать();
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.ОткрытьФайл(ИмяФайла, "UTF-8");
ЗаписьXML.ЗаписатьОбъявлениеXML();
ЗаписьXML.ЗаписатьНачалоЭлемента("offers");
Пока Выборка.Следующий() Цикл
ЗаписьXML.ЗаписатьНачалоЭлемента("offer");
ЗаписьXML.ЗаписатьАтрибут("id", Строка(Выборка.Артикул));
ЗаписьXML.ЗаписатьНачалоЭлемента("name");
ЗаписьXML.ЗаписатьТекст(Строка(Выборка.Номенклатура));
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьНачалоЭлемента("price");
ЗаписьXML.ЗаписатьТекст(Формат(Выборка.Цена, "ЧДЦ=2; ЧРД=.; ЧГ=0"));
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьКонецЭлемента();
КонецЦикла;
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.Закрыть();
Это фрагмент блока offers. Шапку yml_catalog, shop, валюты и категории дописывают по той же схеме до цикла.
Ключевая строка — Формат: ЧРД=. ставит точку в качестве десятичного разделителя, ЧГ=0 убирает пробелы между разрядами. Без этого цена 1 250,50 уйдёт в фид как 1 250,50, и площадка её не примет.
Пустой артикул даст пустой id и отказ площадки по товару. Перед запуском проверьте, что артикулы заполнены и не повторяются.
Автоматическая выгрузка прайса по расписанию
Ручная выгрузка раз в день — это 10–15 минут, которые легко забыть. Автоматизируют её двумя механизмами.
Расписание обмена с сайтом
В карточке узла обмена с сайтом есть настройка расписания. Типичные варианты:
- ⏱️ цены и остатки — каждые 30–60 минут в рабочее время;
- 🌙 полный каталог с картинками — раз в сутки ночью;
- 📅 после массовой переоценки — вручную, не дожидаясь расписания.
Состояние задач видно в Администрирование → Обслуживание → Регламентные и фоновые задания. Там же смотрят, когда задание запускалось последний раз и чем закончилось.
В файловой базе регламентные задания выполняются, только пока в базе открыт хотя бы один сеанс пользователя. Закрыли 1С на ночь — ночной обмен не пройдёт. Для автоматики без людей нужна серверная база или отдельный компьютер с постоянно запущенной 1С.
Рассылка прайса клиентам по почте
Для клиентов и менеджеров используют рассылку отчётов:
- Включите функцию:
Администрирование → Печатные формы, отчеты и обработки, флажок рассылок отчётов. - Откройте список рассылок по ссылке рядом с флажком и создайте новую.
- Добавьте отчёт «Прайс-лист» и выберите сохранённый вариант с нужными колонками.
- Укажите формат вложения, например
xlsxиpdfодновременно. - Добавьте получателей: контрагентов, контактных лиц или конкретные адреса.
- Задайте расписание: например, каждый понедельник в 8:00.
- Запустите рассылку вручную один раз и проверьте письмо у себя.
Рассылка тоже работает на регламентном задании. Ограничение про файловую базу действует и здесь.
Почему прайс не выгружается или выгружается неправильно
Большинство сбоев сводится к нескольким причинам. Найдите свой симптом:
offers.xml.Если обмен с сайтом падает с непонятной ошибкой, переключите узел на обмен через каталог. Получится отдельно проверить, формирует ли 1С корректные файлы. Файлы в порядке — проблема на стороне сайта.
Как поддерживать прайс в порядке
Выгрузка показывает то, что лежит в базе. Поэтому основная работа — не в настройке обмена, а в дисциплине данных.
- 🏷️ Один документ на переоценку. Меняйте цены документом «Установка цен номенклатуры», а не правкой в карточках. Так видна история и легко найти, кто и когда поднял цену.
- 🗂️ Порядок в группах. Структура групп номенклатуры становится категориями на сайте и в фиде. Группа «Разное» на 400 позиций превращается в такую же категорию у клиента.
- 🔢 Уникальные артикулы. Сайт и площадки опознают товар по коду или артикулу. Дубли приводят к затиранию одного товара другим.
- 🔁 Проверка после обновления. После обновления конфигурации запустите обмен вручную и посмотрите результат. Внешние обработки и расширения могут перестать работать с новым релизом.
- 🧾 Отдельный тип цен для сайта. Заведите «Цена для сайта» или «Цена для маркетплейса». Акции и наценку площадки так проще считать, не трогая оптовый прайс.
Частые вопросы
Можно ли выгрузить прайс с остатками по конкретному складу?
Как выгрузить прайс сразу с двумя ценами — оптовой и розничной?
offers.xml.