Что такое YML-файл, и зачем он нужен
Поделиться этим постом
Владельцам интернет-магазинов, которые заинтересованы в автоматизации обновления товарных позиций в Яндекс.Маркете, без YML-файла обойтись трудно. О том, что такое YML-файл, и как его создать, я расскажу в этом посте.
1. YML-файл: что это, для чего используется и как выглядит
YML-файл для Яндекс.Маркета пишется на языке Yandex Market Language, созданном специалистами этой поисковой системы на основе стандарта XML.
Он позволяет получать сведения о товарных предложениях интернет-магазинов и добавлять их на торговую площадку.
Yandex YML-файл размещается на сайте и автоматически обновляет информацию о товарных позициях на Яндекс.Маркете, например, сведения о стоимости или наличии товаров. Это одно из преимуществ такого формата по сравнению с CSV и XLSX, в которых также можно загружать прайс-листы магазина, однако в них не доступно автоматическое обновление информации.
2. Как создать YML-файл
Файл YML Яндекс необходимо создавать в кодировке UTF-8 или windows-1251. Для описания товаров используются специальные теги, добавляются наименование товара, цена, валюта, категории, акции, параметры. При заполнении всех тегов формируются стандартные рекламные предложения либо карточки товаров в Яндекс.Маркете с расширенной информацией — рейтингом, обзорами, отзывами и прочими данными.
Для создания YML-файла можно использовать специальные программы и модули либо действовать вручную. Для интернет-магазинов с небольшим ассортиментом, до нескольких десятков товарных позиций, подойдёт ручной метод.
2.1. Создание YML-файла в ручном режиме
Перед тем как перейти к созданию, стоит ознакомиться со следующими правилами:
Обязательные теги блока с описанием магазина:
О необязательных тегах элемента можно почитать в документации Яндекс.
Далее используются стандартные обязательные теги, такие же, как и в упрощённом типе описания.
Обязательные теги элемента для упрощённого типа описания:
В некоторых случаях необходимо добавлять и другие теги. Весь список также доступен в Яндекс.Помощи.
Элементы промоакций
и
В YML-файл также могут добавляться данные об акциях магазина. При этом они могут распространяться как на отдельные товары, так и на категории. В данном блоке размещают описание акций и идентификаторы позиций и категорий, которые в них участвуют. Доступны такие акции:
Информация по акциям должна совпадать в Яндекс.Маркете и на сайте компании. Какие теги нужны для формирования акций, можно узнать в справочной документации Яндекса.
Пример файла:
2.2. Программы для автоматического создания YML-файла
Для крупных интернет-магазинов ручное создание YML-файла Яндекс.Маркета — слишком трудоёмкий процесс. Автоматизировать задачу позволяют различные модули и расширения, которые генерируют файл с ассортиментом онлайн-магазина. Полный список расширений и модулей размещён в Яндекс.Справке. Упомяну несколько их них:
3. Как добавить YML-файл в Яндекс.Маркет
После создания YML-файла со всеми данными о товарах прайс-лист загружается в личный кабинет для обработки Яндекс.Маркетом. Это можно сделать двумя способами:
Для начала зарегистрируйтесь в Яндекс.Маркете и добавьте сведения о магазине:
Затем загрузите юридическую информацию. В личном кабинете перейдите на страницу «Ассортимент» — «Прайс-лист». Здесь можно добавить ссылку либо сам файл-YML:
После добавления ссылки либо файла нажмите «Проверить прайс-лист». Если ошибки не будут обнаружены, нажмите «Добавить прайс-лист», и на этом настройка будет завершена.
На основании полученной информации для популярных продуктов формируются карточки товаров.
Для товаров, пользующихся меньшим спросом, — обычные рекламные блоки.
Чтобы ускорить процесс попадания своего товара на карточку, отправьте соответствующий запрос в форме обратной связи.
Подводим итоги
Файл YML предназначен для импорта товаров в Яндекс.Маркет. Благодаря ему стандартные товарные предложения могут дополняться расширенными характеристиками, обзорами и рейтингами, формирующими карточки товаров.
Также файл YML позволяет автоматически обновлять информацию о наличии товаров, изменять их цены в Яндекс.Маркете. Если разместить файл по ссылке, он будет загружен в течение двух с половиной минут. Регулярное обновление файла позволит быстро менять данные товарных предложений на Яндекс.Маркете— это занимает не более четырёх часов, а иногда достаточно всего 30 минут.
А вы используете в работе YML-файлы? Буду рада, если поделитесь своими мнением и опытом в комментариях 🙂
YML-файл: зачем он нужен магазинам и как его создать
Маркетплейс (агрегатор товарных предложений от разных продавцов) — удобный ресурс для пользователя. На одной площадке собрано большое количество товаров, есть возможность изучить отзывы покупателей и сравнить цены.
Яндекс.Маркет — самый популярный российский маркетплейс с огромной аудиторией. Технически для попадания на его витрину требуется создать специальный прайс-лист в формате YML. Это файл с данными о всех товарах, которые вы планируете размещать на площадке. Составили подробную инструкцию, как подготовить этот файл и загрузить его в систему.
У Яндекс.Маркета есть определенные требования к прайс-листам, их содержанию и формату. Для загрузки товаров можно использовать привычные форматы XLS (файл Excel) и CSV. Однако предпочтительнее создавать документ YML (Yandex Market Language) — собственную разработку Яндекса на базе стандарта XML.
Готовить прайс-лист в формате YML немного сложнее, чем в XLS или CSV. Однако он дает ряд преимуществ. Например, позволяет автоматизировать процесс обновления товарных позиций и их характеристик.
Вот как это работает:
Прайс-лист для Яндекс.Маркета состоит из общей информации о магазине и списка товарных предложений (офферов).
В шапке YML-файла указана:
Вот так выглядит шапка в YML-файле (первые две строки):
Внутри элемента shop указана информация о магазине, оффере и другие данные:
В элемент shop вложены другие элементы:
Есть еще и дополнительные, необязательные элементы, входящие в shop: CMS и ее версия, название агентства, которое отвечает за техподдержку сайта, и другие. Подробнее о них читайте в соответствующем разделе Справки.
Информация обо всех товарах интернет-магазина в YML-файле содержится в элементе offers. Внутрь него помещаются элементы offer — по одному для каждого товарного предложения.
Вот как выглядит часть YML-файла с одним товарным предложением (offer):
На этом скриншоте показан offer — одно товарное предложение (в данном случае мороженица). Маркет использует эти данные и создает карточку товара.
Элемент offer может быть упрощенного и произвольного типа. Разница — в названии товара:
Подробное описание формата — по ссылке.
Разберем некоторые параметры элемента offer.
Подробнее обо всех элементах YML-файлов можно почитать здесь.
Не все элементы обязательны к использованию. Для каждой категории товаров перечень обязательных и рекомендуемых элементов будет разным. У Яндекса есть готовые рекомендации по подготовке прайс-листов для разных категорий. Подробно описывать все их нет смысла — воспользуйтесь удобным рубрикатором Справки Яндекса.
Есть три основных способа создания YML-файлов:
Это самый трудоемкий способ. Он подойдет интернет-магазинам, у которых не более 20-30 товарных предложений.
Можно попросить программиста написать скрипт для выгрузки товарных предложений в YML-файл. На GitHub есть готовые библиотеки, которыми можно воспользоваться для генерации YML-файлов. Например, вот эта.
Большинство популярных CMS могут экспортировать данные из интернет-магазинов в YML-файлы. У одних CMS есть встроенный функционал — файл можно сгенерировать прямо в административной панели сайта. В других случаях приходится использовать дополнительные модули/плагины.
Полный список CMS, в которых можно создавать файл прайс-листа для Яндекс.Маркета, здесь.
Можно воспользоваться программным обеспечением сторонних разработчиков, созданным специально для генерации YML-файлов.
Например, YML-генератор от Mysitemapgenerator.com. С ним можно:
После регистрации магазина на Маркете помимо указания необходимой информации о нем нужно добавить прайс-лист.
YML-файл: зачем он нужен магазинам и как его создать
Руководство для тех, кто хочет продавать на Яндекс.Маркете
Маркетплейс (агрегатор товарных предложений от разных продавцов) — удобный ресурс для пользователя. На одной площадке собрано большое количество товаров, есть возможность изучить отзывы покупателей и сравнить цены.
Яндекс.Маркет — самый популярный российский маркетплейс с огромной аудиторией. Технически для попадания на его витрину требуется создать специальный прайс-лист в формате YML. Это файл с данными о всех товарах, которые вы планируете размещать на площадке. Составили подробную инструкцию, как подготовить этот файл и загрузить его в систему.
YML-файл: что это и зачем он нужен
У Яндекс.Маркета есть определенные требования к прайс-листам, их содержанию и формату. Для загрузки товаров можно использовать привычные форматы XLS (файл Excel) и CSV. Однако предпочтительнее создавать документ YML (Yandex Market Language) — собственную разработку Яндекса на базе стандарта XML.
Готовить прайс-лист в формате YML немного сложнее, чем в XLS или CSV. Однако он дает ряд преимуществ. Например, позволяет автоматизировать процесс обновления товарных позиций и их характеристик.
Вот как это работает:
Контекст на профессиональном уровне и без агентства — в системе PromoPult.
Автоматический подбор слов, автогенерация объявлений, «умное» управление ставками. Готовые отраслевые решения. Статистика в реальном времени. Для профессионалов — множество точных настроек.
Как выглядит YML-файл
Прайс-лист для Яндекс.Маркета состоит из общей информации о магазине и списка товарных предложений (офферов).
Шапка
В шапке YML-файла указана:
Вот так выглядит шапка в YML-файле (первые две строки):
Информация о магазине
Внутри элемента указана информация о магазине, оффере и другие данные:
В элемент вложены другие элементы:
Есть еще и дополнительные, необязательные элементы, входящие в : CMS и ее версия, название агентства, которое отвечает за техподдержку сайта, и другие. Подробнее о них читайте в соответствующем разделе Справки.
Оффер
Вот как выглядит часть YML-файла с одним товарным предложением ( ):
На этом скриншоте показан — одно товарное предложение (в данном случае мороженица). Маркет использует эти данные и создает карточку товара.
Элемент может быть упрощенного и произвольного типа. Разница — в названии товара:
Подробное описание формата — по ссылке.
Подробнее обо всех элементах YML-файлов можно почитать здесь.
Не все элементы обязательны к использованию. Для каждой категории товаров перечень обязательных и рекомендуемых элементов будет разным. У Яндекса есть готовые рекомендации по подготовке прайс-листов для разных категорий. Подробно описывать все их нет смысла — воспользуйтесь удобным рубрикатором Справки Яндекса.
Как создать YML-файл
Есть три основных способа создания YML-файлов:
Вручную
Это самый трудоемкий способ. Он подойдет интернет-магазинам, у которых не более 20-30 товарных предложений.
Можно попросить программиста написать скрипт для выгрузки товарных предложений в YML-файл. На GitHub есть готовые библиотеки, которыми можно воспользоваться для генерации YML-файлов. Например, вот эта.
Модули для CMS
Большинство популярных CMS могут экспортировать данные из интернет-магазинов в YML-файлы. У одних CMS есть встроенный функционал — файл можно сгенерировать прямо в административной панели сайта. В других случаях приходится использовать дополнительные модули/плагины.
Яндекс подсказывает, в каких CMS можно создать YML-файл
Полный список CMS, в которых можно создавать файл прайс-листа для Яндекс.Маркета, здесь.
С помощью софта
Можно воспользоваться программным обеспечением сторонних разработчиков, созданным специально для генерации YML-файлов.
Например, YML-генератор от Mysitemapgenerator.com. С ним можно:
Важно! Страницы товарных предложений (карточки товара) должны содержать разметку Schema.org Product или Open Graph Product. Детально микроразметку Schema.org мы разобрали здесь, Open Graph — тут. О добавлении разметки с помощью Google Tag Manager вы можете почитать в этой статье.
Как добавить прайс-лист на Яндекс.Маркет
После регистрации магазина на Маркете помимо указания необходимой информации о нем нужно добавить прайс-лист.
Делается это в разделе Ассортимент → Прайс-лист.
Добавление прайс-листа на Маркет
Добавить прайс можно тремя способами:
Способ 1. Разместить YML-файл на сайте вашего интернет-магазина (обычно — в корневой папке), а в личном кабинете Маркета добавить ссылку на него. Если доступ на сервер, где хранится файл, защищен, укажите логин и пароль.
Добавление ссылки на прайс-лист
После добавления файла нажмите кнопку «Проверить прайс-лист». Система проверит его, и если найдет ошибки, сообщит о них.
Проверка прайс-листа перед загрузкой на Маркет
После загрузки прайс появится в общем списке.
Список загруженных прайс-листов на Маркете
Способ 2. Загрузить YML-файл напрямую (размер не должен превышать 100 Мб). Для этого в окне загрузки выберите «Файл» и загрузите прайс с компьютера.
Загрузка YML-файла напрямую
Способ 3. Загрузка прайса с помощью макроса в Excel. Способ подходит, если вы составляли прайс в Excel. Он позволяет установить связь вашего файла в Excel с Яндекс.Маркетом и обновлять прайс автоматически после внесения изменений в исходный файл. Для использования этой функции нужно авторизоваться в Excel, используя полученный в Яндексе номер рекламной кампании и ключ. Подробно об этом способе — в справке Яндекса.
Загрузка прайса из Excel
Проверка YML на ошибки
После создания YML его стоит проверить на ошибки в валидаторе XML-фидов в Яндекс.Вебмастере (вот ссылка). Для этого выберите схему валидации документа (недвижимость, работа, видео, Маркет и другие) и источник XML-данных (файл, ссылка или текст).
Если вы не проверите YML-файл, в любом случае при добавлении его в Яндекс.Маркет сервис проверит его на ошибки и выдаст отчет.
Ошибки могут появиться как в случае создания YML-файла вручную, так и тогда, когда вы просто выгружали его с помощью модуля CMS.
Есть несколько классификаций ошибок, о которых сообщает Яндекс:
Подробнее об ошибках — здесь.
Обновление прайс-листа формата YML
Обновление прайс-листа необходимо для того, чтобы на карточках товарных предложений в Маркете всегда отображалась актуальная информация о:
Размещенный на Маркете прайс-лист нужно обновлять как минимум один раз в 30 дней, если вы загружали его в личном кабинете.
Если же YML-файл находится на сайте, нужно обновлять его каждый раз, как происходят изменения ключевых параметров (цена, количество товара и т.д.). Робот Яндекс.Маркета сам скачает обновленный файл при индексации.
Общая индексация Яндекс.Маркета проводится каждые 3-6 часов. За это время полностью обновляются все товарные предложения на Маркете. Измененные цены и скидки обновляются быстрее — 30-40 минут.
Удобнее всего настроить автоматическое обновление YML-файла на сайте. Тогда на Маркете всегда будет актуальная информация.
YML-файл полезен не только для Яндекс.Маркета, но и контекстной рекламы
Добавление магазина на Яндекс.Маркет — не единственная причина создать YML. Еще один вариант применения YML-файла — быстрое составление объявлений для контекстной рекламы. Для того чтобы в один клик получить объявления для каждого товара:
Объявления составляются для Яндекс.Директа и Google Ads и выглядят так:
Без автоматизации пришлось бы долго вручную перебирать все названия и цены товаров. Для интернет-магазинов с большим ассортиментом Генератор из YML — удобное решение. Вот исчерпывающий гайд по работе с Генератором из YML от PromoPult.
Если же вы хотите полностью избавиться от необходимости составлять объявления контекстной рекламы, попробуйте инструмент «Написание контекстных объявлений» от PromoPult. Вот инструкция по работе с ним.
Резюме
Размещение товарных предложений на Яндекс.Маркете дает ряд преимуществ:
Поэтому однозначно стоит воспользоваться этим инструментом. Стать участником маркетплейса несложно, к тому же это доступно даже малому бизнесу.
Следуя нашей инструкции, вы легко подготовите YML-файл.
И напоследок: позаботьтесь о должном качестве сайта, чтобы привлекаемый трафик не уходил из-за досадных ошибок.
Как сформировать YML-файл и устранить ошибки
После добавления профиля выгрузки вы сможете сформировать YML-файл, проверить его на наличие ошибок и добавить в личный кабинет на Маркете.
Укажите параметры выгрузки:
Выберите созданный или отредактированный профиль выгрузки, на основе которого будет сформирован YML-файл.
Укажите длительность одного шага выгрузки в секундах. Значение параметра должно быть сопоставимо со значением таймаута на сервере (обычно 30 секунд).
В двухуровневой архитектуре (Nginx + Apache HTTP Server/ PHP FPM) ограничения по времени могут устанавливаться как на уровне Nginx, так и на уровне Apache HTTP Server/ PHP FPM — соответственно, нужно указывать меньшее из значений.
Укажите интервал (пауза) между двумя шагами выгрузки в секундах. Значение параметра при стабильной работе сервера должно быть в диапазоне от 1 до 3 секунд. В случае перебоев значение стоит увеличить до 5-10 секунд.
Выберите созданный или отредактированный профиль выгрузки, на основе которого будет сформирован YML-файл.
Укажите длительность одного шага выгрузки в секундах. Значение параметра должно быть сопоставимо со значением таймаута на сервере (обычно 30 секунд).
В двухуровневой архитектуре (Nginx + Apache HTTP Server/ PHP FPM) ограничения по времени могут устанавливаться как на уровне Nginx, так и на уровне Apache HTTP Server/ PHP FPM — соответственно, нужно указывать меньшее из значений.
Укажите интервал (пауза) между двумя шагами выгрузки в секундах. Значение параметра при стабильной работе сервера должно быть в диапазоне от 1 до 3 секунд. В случае перебоев значение стоит увеличить до 5-10 секунд.
В результате будет сформирован YML-файл.
Посмотрите и устраните ошибки
Загрузите файл в личный кабинет
Если вы сформировали новый файл, после устранения ошибок укажите ссылку на новый файл в личном кабинете на Маркете. Подробнее о загрузке файлов см. в Справке Маркета для модели ADV.
Если вы отредактировали файл, при этом ранее вы указывали ссылку на файл в личном кабинете на Маркете, то делать это повторно не нужно.
Как сформировать YML-файл и устранить ошибки
После добавления профиля выгрузки вы сможете сформировать YML-файл, проверить его на наличие ошибок и добавить в личный кабинет на Маркете.
Укажите параметры выгрузки:
Выберите созданный или отредактированный профиль выгрузки, на основе которого будет сформирован YML-файл.
Укажите длительность одного шага выгрузки в секундах. Значение параметра должно быть сопоставимо со значением таймаута на сервере (обычно 30 секунд).
В двухуровневой архитектуре (Nginx + Apache HTTP Server/ PHP FPM) ограничения по времени могут устанавливаться как на уровне Nginx, так и на уровне Apache HTTP Server/ PHP FPM — соответственно, нужно указывать меньшее из значений.
Укажите интервал (пауза) между двумя шагами выгрузки в секундах. Значение параметра при стабильной работе сервера должно быть в диапазоне от 1 до 3 секунд. В случае перебоев значение стоит увеличить до 5-10 секунд.
Выберите созданный или отредактированный профиль выгрузки, на основе которого будет сформирован YML-файл.
Укажите длительность одного шага выгрузки в секундах. Значение параметра должно быть сопоставимо со значением таймаута на сервере (обычно 30 секунд).
В двухуровневой архитектуре (Nginx + Apache HTTP Server/ PHP FPM) ограничения по времени могут устанавливаться как на уровне Nginx, так и на уровне Apache HTTP Server/ PHP FPM — соответственно, нужно указывать меньшее из значений.
Укажите интервал (пауза) между двумя шагами выгрузки в секундах. Значение параметра при стабильной работе сервера должно быть в диапазоне от 1 до 3 секунд. В случае перебоев значение стоит увеличить до 5-10 секунд.
В результате будет сформирован YML-файл.
Посмотрите и устраните ошибки
Загрузите файл в личный кабинет
Если вы сформировали новый файл, после устранения ошибок укажите ссылку на новый файл в личном кабинете на Маркете. Подробнее о загрузке файлов см. в Справке Маркета для модели ADV.
Если вы отредактировали файл, при этом ранее вы указывали ссылку на файл в личном кабинете на Маркете, то делать это повторно не нужно.
Форматы YML и CSV
Формат YML
Стандарт разработан Яндексом и основан на стандарте XML. Формат YML предоставляет больше возможностей и преимуществ, чем форматы XLS, CSV.
Требования к YML-файлу
В YML нельзя использовать непечатаемые символы с ASCII-кодами от 0 до 31 (за исключением символов с кодами 9, 10, 13 — табуляция, перевод строки, возврат каретки).
Символы » & > ‘ нужно заменять на эквивалентные коды:
Допустимые кодировки YML-файла: UTF-8, windows-1251.
Структура YML-файла
Текстовый формат
Текстовый формат с разделителями удобен при генерации прайс-листа из базы данных или редакторов электронных таблиц (например: Exсel, OpenOffice, Google Docs).
Требования к прайс-листу в текстовом формате
Одна строка файла должна соответствовать одной строке электронной таблицы.
В качестве разделителя полей используется запятая или точка с запятой (CSV) либо символ табуляции (TSV).
Одна строка файла должна содержать описание одного предложения.
Первая строка файла должна содержать названия полей.
Кодировка файла должна быть UTF-8.
Нельзя использовать табуляцию и перенос строки внутри полей.
Файл не должен содержать пустых столбцов.
Порядок столбцов (полей) не задан строго, но в пределах одного файла порядок столбцов (полей) должен быть одинаковым.
Примеры прайс-листов
С конца октября в Санкт-Петербурге, Нижнем Новгороде, Ростове-на-Дону и Воронеже будем показывать только товары, которые можно купить прямо на Маркете. Постепенно это же произойдёт по всей стране. Полностью переход к маркетплейсу завершится в 2022 году.
Форматы YML и CSV
Формат YML
Стандарт разработан Яндексом и основан на стандарте XML. Формат YML предоставляет больше возможностей и преимуществ, чем форматы XLS, CSV.
Требования к YML-файлу
В YML нельзя использовать непечатаемые символы с ASCII-кодами от 0 до 31 (за исключением символов с кодами 9, 10, 13 — табуляция, перевод строки, возврат каретки).
Символы » & > ‘ нужно заменять на эквивалентные коды: