YML-файл: зачем он нужен магазинам и как его создать

В 2025 году онлайн торговля не ограничивается интернет-магазином. Большую долю в e-commerce занимают маркетплейсы и товарный поиск Яндекса.
Чтобы начать продавать через Яндекс Маркет или товарный поиск, нужно создать и загрузить YML-файл, в котором будет содержаться вся необходимая информация о товарах.
Оглавление
- YML-файл: что это и зачем он нужен
- Отличие YML от YAML
- Как выглядит YML-файл
- Как создать YML-файл
- Как добавить товары в поиск Яндекса при помощи YML
- Как добавить прайс-лист на Яндекс Маркет
- Проверка на ошибки
- Отличия в YML фидах для поиска и Маркета
- Обновление прайс-листа формата YML
- YML-файл полезен для контекстной рекламы
- Резюме
YML-файл: что это и зачем он нужен
У Яндекс Маркета есть определенные требования к прайс-листам, их содержанию и формату. Для загрузки товаров можно использовать привычные форматы XLS (файл Excel) и CSV. Однако предпочтительнее создавать документ YML (Yandex Market Language) — собственную разработку Яндекса на базе стандарта XML.
Готовить файл в формате YML немного сложнее, чем в XLS или CSV. Однако он дает ряд преимуществ. Например, позволяет автоматизировать процесс обновления товарных позиций и их характеристик.
Вот как это работает:
- Вы создаете прайс-лист, где указываете все необходимые параметры по правилам Яндекса.
- Яндекс обрабатывает полученные данные и создает карточки в соответствующих категориях.
- Если файл составлен правильно и в нем нет ошибок, вы получаете релевантные целевые клики и продажи.
Отличие YML от YAML
Формат YML не стоит путать с YAML.
YAML можно расшифровать как Yet Another Markup Language — «ещё один язык разметки» или как YAML Ain’t Markup Language «YAML — не язык разметки». Это формат хранения данных, похожий на язык микроразметки, но с более простым и удобным синтаксисом. В отличие от формата XML, YAML использует для обозначения структуры данных не теги, а отступы и двоеточия.
YAML используют для хранения конфигурационных файлов, баз данных и других структурированных данных.
Вот пример файла YAML:
name: new-app
version: 3.0
dependencies:
— spring-boot
— postgresql
Еще один популярный формат для хранения данных — JSON. Подробно о микроразметке JSON-LD, основанной на этом формате, мы писали в этой статье. В отличие от JSON, который использует синтаксис, основанный на фигурных скобках и кавычках, в YAML применяются отступы и двоеточия, что делает его более компактным и удобочитаемым. YAML поддерживает больший набор типов данных, чем JSON, включая даты, времена и бинарные данные. Также формат YAML позволяет добавлять комментарии к данным через символ #, что полезно для документирования и пояснения структуры данных.
Итак, если YAML — это универсальный формат для хранения данных, то YML — это специальный формат файла для управления ассортиментом интернет-магазина в Яндекс Маркете, Директе и товарном поиске.
Как выглядит YML-файл
Файл состоит из общей информации о магазине и списка товарных предложений (офферов).
Шапка (заголовок и корневой элемент)
В шапке файла указана:
- версия XML и кодировка (возможна UTF-8 или windows-1251);
- дата формирования файла.
В любом YML-файле есть корневой элемент — это элемент
Вот так выглядит шапка в YML-файле (первые две строки):
<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2025-09-22T14:37:38+03:00">
Информация о магазине
В элемент <yml_catalog> входит только один элемент — <shop> без атрибутов. Внутри элемента <shop> указана информация о магазине, оффере и другие данные:
В элемент <shop> вложены другие элементы:
- <name> — фактическое название интернет-магазина, которое публикуется на сайте.
- <company> — полное название компании. Обязательный элемент. Он не публикуется, но необходим для внутренней идентификации на маркетплейсе.
- <url> — адрес сайта, записанный по стандарту RFC 3986.
- <platform> — наименование CMS (системы управления контентом), на которой сделан сайт.
- <categories> — список категорий и подкатегорий.
- <offers> — список товаров с ценами.
Есть еще и дополнительные, необязательные элементы, входящие в <shop>: название агентства, которое отвечает за техподдержку сайта, опции самовывоза и другие. Подробнее о них читайте в соответствующем разделе Справки.
Категории
Элемент <categories> включает элементы <category>, каждый из которых описывает одну из товарных категорий интернет-магазина.
Каждой категории нужно присвоить уникальный идентификатор — целое положительное число длиной до 18 цифр — и записать его в атрибут id. Если нужно вложить одну категорию в другую, используется атрибут parentId.
Вот пример записи элемента <categories> из справки Яндекса:
Оффер
Информация обо всех товарах в YML-файле содержится в элементе <offers>. Внутрь него помещаются элементы <offer> — по одному для каждого предложения.
Вот как выглядит часть файла (<offer>):
Подробное описание параметров элемента <offer> — по ссылке.
Разберем некоторые параметры элемента <offer>.
- <price> и <oldprice> — в карточке будет отображаться скидка, так как новая цена ниже старой.
- <currencyId> — указатель валюты, в которой принимается оплата.
- <picture> — ссылка на фотографию. Подтягивается в товарную выдачу Яндекса и на Маркет.
- <pickup> — значения true и false для возможности забрать товар самовывозом в пункте выдачи.
- <delivery> и <delivery-options> — наличие и сроки доставки.
Подробнее обо всех элементах можно почитать здесь.
Не все элементы обязательны к использованию. Для каждой категории перечень обязательных и рекомендуемых элементов будет разным. У Яндекса есть готовые рекомендации по подготовке прайсов для разных категорий бизнеса. Подробно описывать все их нет смысла — воспользуйтесь удобным рубрикатором Справки.
Как создать YML-файл
Есть три основных способа создания YML-файлов:
- вручную или с помощью скрипта;
- с помощью встроенного функционала и дополнительных модулей CMS;
- с помощью специального ПО.
Вручную
Это самый трудоемкий способ. Он подойдет сайтам, у которых не более 20-30 товарных предложений.
Можно попросить программиста написать скрипт для выгрузки товарных предложений в YML-файл. На GitHub есть готовые библиотеки, которыми можно воспользоваться для генерации. Например, вот эта.
Модули для CMS
Большинство популярных CMS могут экспортировать данные из интернет-магазинов в YML-файлы. У одних CMS есть встроенный функционал — файл можно сгенерировать прямо в административной панели сайта. В других случаях приходится использовать дополнительные модули/плагины.
Полный список CMS, в которых можно создавать файл для Яндекс Маркета и Яндекс Товаров, здесь.
С помощью софта
Можно воспользоваться программным обеспечением сторонних разработчиков, созданным специально для генерации YML-файлов.
Например, YML-генератор от Mysitemapgenerator.com. С ним можно:
- индексировать сайт и конвертировать данные в YML;
- настраивать регулярное обновление файла;
- индексировать бесплатно до 500 страниц.
Как добавить товары в поиск Яндекса при помощи YML
Товарный поиск Яндекса — это демонстрация предложений товаров непосредственно в результатах поисковой выдачи. Пользователям не обязательно переходить на сайты конкретных продавцов, чтобы найти и купить то, что они искали. Подробнее об этой функции мы рассказывали здесь.
Готовый файл для товарного поиска загружается через Вебмастер. В разделе «Услуги и предложения в поиске» → «Фиды и ошибки» нужно загрузить фид:
При добавлении фида нужно выбрать категорию бизнеса, регион показа объявлений и ввести ссылку на файл.
Бизнесу, у которого в ассортименте десятки и сотни тысяч артикулов, Яндекс советует использовать несколько фидов одновременно. Так система быстрее обработает товары за счет параллельной работы с файлами.
Загрузить фид можно также через API Яндекса по инструкции.
После загрузки фида Вебмастер выдаст информацию о наличии или отсутствии ошибок в нем. Чтобы увидеть подробный отчет, нужно нажать на кнопку «Смотреть ошибки».
Яндекс проверяет не только технические характеристики файла, но и указанную в нем информацию. Например, наличие товара, его характеристики, правдивость указанной цены. Подробнее обо всех возможных ошибках можно прочитать здесь.
Как добавить прайс-лист на Яндекс Маркет
Добавить товары на площадку можно несколькими способами: вручную, через Excel шаблон, с помощью файла для другого маркетплейса или через YML файл. Информация о первых трех способах доступна в Справке.
Чтобы данные обновлялась автоматически, стоит использовать именно YML фиды.
В личном кабинете перейдите на вкладку «Товары» → «Автообновление каталога».
Далее нажмите на кнопку «Добавить ссылку на файл».
На этом этапе необходимо выбрать, будет ли фид передавать информацию конкретно о товарах или только об условиях размещения: ценах, остатках и проч.
Разделение файлов удобно для продавцов, работающих одновременно по разным бизнес-моделям. Предположим, у вас есть два магазина, по FBS и DBS, с одинаковым ассортиментом. В этом случае вы создаете три фида: один с товарным каталогом и два с индивидуальными условиями размещения для каждого магазина.
Даже если у вас в аккаунте только один магазин, есть смысл разделять фиды. Так Маркет быстрее будет обрабатывать информацию о ваших предложениях.
Выбрав нужный вариант фида, добавьте ссылку на файл. Он может храниться на вашем сайте или сервере. Если доступ к файлу защищен логином и паролем, укажите их.
При добавлении фида проставьте галочки напротив характеристик, которые будут обновляться через него. По умолчанию активны все пункты.
Подробнее о тонкостях добавления фидов для Маркета можно почитать здесь.
Перед загрузкой нажмите на кнопку «Проверить файл». Если Яндекс не найдет ошибок в загружаемом фиде, вы сможете сохранить ссылку.
Проверка на ошибки
После создания YML его стоит проверить на ошибки в валидаторе XML-фидов в Вебмастере (вот ссылка). Для этого выберите категорию фида (недвижимость, видео и другие) и способ проверки (файл, ссылка или код).
Если вы не проверите YML-файл, в любом случае при добавлении его в Вебмастер сервис проверит его на ошибки и выдаст отчет.
Ошибки могут появиться как в случае создания YML-файла вручную, так и тогда, когда вы просто выгружали его с помощью модуля CMS.
Есть несколько классификаций ошибок, о которых сообщает Яндекс:
- Критичные ошибки. Обязательно нужно исправить, иначе прайс не опубликуется на маркетплейсе.
- Общие ошибки. Ошибки в элементе
. Такой прайс скорее всего будет опубликован, но в товарных позициях могут быть неточности. - Ошибки в предложениях — обязательно нужно исправить, иначе они не опубликуются.
- Предупреждения в предложениях. Неточности, которые лучше исправить. Товары будут опубликованы, даже если не исправлять, но в таком случае это может привести к нерелевантным кликам.
- Рекомендации. Советы по оптимизации прайс-листа. Помогают получать больше переходов и заказов.
Подробнее об ошибках — здесь.
Отличия в YML фидах для поиска и Маркета
Некоторые элементы YML файла для Маркета необязательны при формировании файла для поиска по товарам. Более того, они могут привести к возникновению ошибок.
Примеры подобных элементов:
- bid — ставка для аукциона на Маркете;
- count — остаток на складе;
- downloadable — для виртуальных товаров, которые пользователи скачивают с предоплатой;
- expiry — срок годности;
- manufacturer_warranty — официальная гарантия от производителя;
- supplier — ОГРН или ОГРИП стороннего продавца.
Полный перечень необязательных строк доступен в Справке.
Элемент platform, в котором продавец указывает версию CMS своего сайта, наоборот, обязателен для YML фидов в товарном поиске.
Обновление прайс-листа формата YML
Обновление файла необходимо для того, чтобы в карточках товарных предложений в Маркете всегда отображалась актуальная информация о:
- цене;
- наличии на складе;
- условиях оплаты и доставки.
Размещенный на Маркете прайс нужно обновлять как минимум один раз в 30 дней, если вы загружали его в личном кабинете.
Если же YML-файл находится на сайте, нужно обновлять его каждый раз, как происходят изменения ключевых параметров (цена, количество товара и т. д.). Робот сам скачает обновленный файл при индексации.
Общая индексация Яндекс Маркета проводится каждые 3-6 часов. За это время полностью обновляются все товарные предложения. Измененные цены и скидки обновляются быстрее — 30-40 минут.
Удобнее всего настроить автоматическое обновление файла на сайте. Тогда на маркетплейсе всегда будет актуальная информация.
При добавлении фида в Вебмастер Яндекс сам будет периодически скачивать файл и актуализировать информацию.
YML-файл полезен для контекстной рекламы
Фид для товарной кампании
YML-файлы используются в кампаниях Яндекс Директа. На их основе генерируются товарные и динамические объявления, смарт-баннеры. Как создать фид для кампании в Директе, мы рассказывали здесь.
Настроить и запустить все типы объявлений можно, создав прямой аккаунт Яндекс Директа в PromoPult. Вы получаете доступ ко всем функциям, настройкам и плейсментам, при этом — удобное пополнение баланса с единого счета PromoPult, простую и бесплатную маркировку рекламы, понятную статистику на интерактивном дашборде. А еще — участие в бонусной программе: 5% от расходов на внешнюю рекламу ежедневно возвращается бонусами, независимо от размера бюджета. Бонусы можно вложить в SEO и рекламу, оплатить ими инструменты PromoPult или вывести на кошелек WB Продвижение и оплатить рекламу на Wildberries.
Сейчас в PromoPult действует акция: удвоение рекламного бюджета для всех новых прямых аккаунтов в Яндекс Директе. Пополняете счет на 15 000 рублей — и в конце месяца получаете еще 15 000 рублей бонусом.
Генерация объявлений
Еще один вариант применения YML-файла — быстрое составление объявлений для контекстной рекламы. Для того чтобы в один клик получить объявления для каждого товара:
- Перейдите в бесплатный Генератор из YML и укажите ссылку на ваш YML-файл (например, https://mysite.ru/market.xml).
- Загрузите результат в формате XLSX в «Списке задач».
Объявления выглядят так:
Без автоматизации пришлось бы долго вручную перебирать все названия и цены товаров. Для сайтов с большим ассортиментом Генератор из YML — удобное решение. Вот исчерпывающий гайд по работе с Генератором из YML от PromoPult.
Если же вы хотите полностью избавиться от необходимости составлять объявления контекстной рекламы, попробуйте инструмент «Написание контекстных объявлений» от PromoPult. Вот инструкция по работе с ним.
Реклама. ООО «Клик.ру», ИНН:7743771327, ERID: 2VtzqumqcrH
Резюме
- Фиды YML позволяют разместить торговые предложения на Яндекс Маркете, в поиске по товарам Яндекса и запустить рекламу в Директе. Присутствуя на этих площадках, вы значительно расширяете свой контакт с аудиторией и повышаете продажи.
- Фид можно сгенерировать вручную или с помощью плагинов для CMS. Второй вариант предпочтительнее, так как он сокращает возможность появления ошибок в файле.
- В фидах для Маркета и для товарного поиска есть небольшие различия, об этом стоит помнить при подготовке офферов.
- И напоследок: позаботьтесь о должном качестве сайта, чтобы привлекаемый трафик не уходил из-за досадных ошибок.
Полный автопилот с указанием домена и бюджета или тонкая ручная настройка:
Запустить рекламу в PromoPult