YML-фід — це один файл, у якому описано весь асортимент інтернет-магазину: назви, ціни, наявність, фото, категорії й характеристики товарів. Саме його читають Rozetka, Prom, Hotline і Google Merchant Center, коли показують ваші товари. З нього ж може відповідати покупцям AI-консультант. Якщо ви продаєте в Україні, ваша платформа майже напевно вже вміє такий файл формувати. Нижче розберемо, що всередині YML-фіду, як вивантажити його з Хорошоп, Prom, WooCommerce та OpenCart і що перевірити, перш ніж комусь давати посилання.
Що таке товарний фід
Товарний фід — це копія каталогу, яку зручно читати програмам. Вітрина магазину зроблена для людей: сторінки, меню, банери. Фід зроблено для сервісів: товар за товаром, і в кожного той самий набір полів.
Магазин формує фід зі своєї бази, зазвичай за постійним посиланням. Усі, кому потрібен ваш каталог, періодично завантажують це посилання. Ви змінили ціну в адмінці, фід оновився, і маркетплейс чи консультант побачить нову ціну при наступному завантаженні.
Що таке YML
YML розшифровується як Yandex Market Language: формат колись придумали для сервісу порівняння цін. Сьогодні він живе своїм життям і фактично став стандартом українського e-commerce. Rozetka публікує власні вимоги до YML-прайсу, Prom вивантажує й приймає YML, а більшість українських платформ уміють його генерувати.
Технічно YML — це звичайний XML з домовленим набором тегів. Як пише довідка Prom, YML заснований на стандарті XML. Тож будь-яка програма, що читає XML, прочитає і YML.
Як влаштований YML-фід
Короткий, але коректний приклад:
<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2026-11-03 09:00">
<shop>
<name>Фарбовий куток</name>
<url>https://farbkut.com.ua</url>
<currencies>
<currency id="UAH" rate="1"/>
</currencies>
<categories>
<category id="10">Фарби</category>
<category id="11" parentId="10">Фарби для дерева</category>
</categories>
<offers>
<offer id="DX450" available="true">
<name>Фарба для дерева DX-450, 2,5 л, горіх</name>
<url>https://farbkut.com.ua/dx-450-gorih</url>
<price>1299</price>
<oldprice>1450</oldprice>
<currencyId>UAH</currencyId>
<categoryId>11</categoryId>
<picture>https://farbkut.com.ua/img/dx450.jpg</picture>
<vendor>Arbor</vendor>
<vendorCode>DX-450-G</vendorCode>
<description><![CDATA[Фарба на водній основі для дерева надворі.]]></description>
<param name="Об'єм">2,5 л</param>
<param name="Колір">Горіх</param>
<param name="Призначення">Зовнішні роботи</param>
</offer>
</offers>
</shop>
</yml_catalog>
Що тут головне:
| Елемент | Що містить | Навіщо |
|---|---|---|
<yml_catalog date="…"> |
Кореневий тег і час формування файлу | Видно, наскільки фід свіжий |
<shop> |
Назва, сайт, валюти | Загальний контекст |
<categories> |
Дерево категорій; parentId прив'язує підкатегорію до батьківської |
З нього відновлюється «Фарби > Фарби для дерева» |
<offers> / <offer> |
Один <offer> на товар чи варіант |
Власне товари |
атрибут id |
Унікальний незмінний код | Так товар впізнають при наступному оновленні |
атрибут available |
true або false |
Є в наявності чи ні |
<price>, <oldprice>, <currencyId> |
Ціна, перекреслена ціна, валюта | Те, про що питають найчастіше |
<categoryId> |
До якої категорії належить товар | Зв'язок із деревом категорій |
<picture>, <url> |
Фото і сторінка товару | Картка і посилання |
<vendor>, <vendorCode> |
Бренд і артикул | Питання про бренд, точний пошук |
<param name="…"> |
Одна характеристика на тег: об'єм, колір, розмір, матеріал | Відповіді на «а для вулиці підійде?» |
У вимогах Rozetka є кілька правил, які варто дотримуватися для будь-кого, хто читатиме фід: кодування UTF-8, id лише з латиниці й цифр, який ніколи не змінюється, і екрановані спецсимволи на кшталт & та < у текстах. Двомовні магазини часто додають name_ua і description_ua поруч з основними полями.
Окремо про param. Покупці рідко питають просто назву. Вони питають «а є на 5 літрів?», «вона не боїться вологи?». Фід із заповненими характеристиками дозволяє на це відповісти. Фід, де є тільки назва й ціна, не дозволяє.
Які ще бувають формати
YML — не єдиний варіант. Той самий каталог можна описати як:
- XML для Google Merchant. Файл RSS або Atom, де поля мають префікс
g::g:id,g:title,g:price,g:availability. Опис — у специфікації даних про товари Google. Якщо ви рекламуєтеся в Google Shopping, такий фід у вас уже є. - CSV або TSV. Таблиця: рядок на товар, колонка на поле.
- JSON. Список товарів-об'єктів, частіше трапляється на самописних сайтах.
Vendigit приймає всі ці формати: XML (YML, Google Merchant RSS/Atom або інший XML із повторюваними записами товарів), CSV/TSV/TXT і JSON.
Як вивантажити YML-фід з вашої платформи
Меню в адмінках змінюються, тому до кожної платформи ми додали посилання на її офіційну довідку. Якщо у вас інтерфейс виглядає інакше, орієнтуйтеся на довідку.
Хорошоп
У Хорошоп є два шляхи. Фіди для маркетплейсів (Rozetka, Hotline, Google Shopping, Facebook) налаштовуються в розділі «Маркетинг → Маркетплейси»: вмикаєте потрібний фід, у картках товарів позначаєте «Завантажувати на маркетплейси», натискаєте «Згенерувати фід» і відкриваєте посилання кнопкою XML. Посилання розташоване на вашому домені. Обмеження за тарифами описані в довідці Хорошоп про товарні фіди.
Другий шлях — експорт для Prom: у розділі «Товари» відкрийте експорт і виберіть «XML (Prom, основна мова)», потім згенеруйте файл. У інструкції Хорошоп щодо фіду для Prom пояснено, як обрати характеристики для експорту в налаштуваннях категорій і як увімкнути автоматичну генерацію. Такий фід зручний тим, що містить характеристики. Повне підключення до Vendigit — у нашому гайді для Хорошоп.
Prom.ua
У кабінеті Prom в експорті товарів можна вибрати YML-файл і згенерувати на нього посилання. За довідкою Prom, експорт доступний на платних пакетах, а файл формується саме в момент звернення за посиланням, тож він завжди актуальний. Деталі — у статті Prom «Експорт товарів та груп товарів» і в нашому гайді для Prom.ua.
WooCommerce
Сам WooCommerce вивантажує товари в CSV: «Товари → Усі товари → Експорт» (в англійському інтерфейсі Products → All Products → Export → Generate CSV), як описано в офіційній документації. Це файл, а не посилання, що оновлюється. Для живого фіду магазини зазвичай ставлять плагін, який публікує YML або XML для Google Merchant на домені магазину. Докладніше — у гайді для WooCommerce.
OpenCart
У сучасних версіях OpenCart вбудованого YML-експорту немає. Фід дають модулі з OpenCart Marketplace: є вивантаження для українських маркетплейсів і генератори фідів для Google Merchant. Перевірте, чи модуль підтримує вашу версію OpenCart. Див. гайд для OpenCart.
Shopify і Magento
Ці платформи YML не використовують. Shopify експортує CSV через «Products → Export» (довідка Shopify), великі вивантаження надходять на пошту. Magento (Adobe Commerce) — через «System → Data Transfer → Export» з типом Products (документація Adobe). Для обох поширений фід для Google Merchant через застосунок чи модуль, і він теж підходить. Більше — у гайді для Shopify і Magento.
Що AI-консультант бере з фіду
Коли ви підключаєте фід до Vendigit, він стає для асистента єдиним джерелом правди про товари. Ось що з ним відбувається:
- Фід має бути на вашому домені. Спершу ви підтверджуєте домен одним DNS-записом, а посилання на фід має бути на цьому домені або його піддомені. Якщо посилання веде на інший сайт, завантажте файл (до 20 МБ).
- Поля зіставляються автоматично. AI-модель читає кілька товарів-прикладів і зіставляє ваші поля з полями Vendigit: код, назва, ціна, стара ціна, валюта, наявність, категорія, бренд, артикул, фото, посилання. Якщо модель недоступна, спрацьовує таблиця відомих назв полів українською, англійською та російською (
назва,ціна,наявність,vendorCode,g:price…). Результат зіставлення видно в кабінеті. - Категорії й характеристики відновлюються. Дерево
<categories>стає каталогом, а коженparam— характеристикою, за якою асистент шукає й порівнює товари. - Ціни беруться з фіду, а не з AI. Коли асистент радить товар, назву, ціну й посилання в картці товару Vendigit підставляє просто з фіду. Називати ціну чи наявність, яких модель не знайшла, їй заборонено інструкцією.
- Фід перечитується кожні 6 годин. Фіди за посиланням оновлюються автоматично. Завантажений файл — ні, його треба замінювати вручну.
Наскільки свіжими будуть дані насправді, залежить і від платформи. Про це — у статті як часто оновлювати товарний фід.
Коротка перевірка перед тим, як ділитися фідом
Відкрийте посилання на фід у браузері й перевірте:
- У кожного товару є
idі назва. Товари без них пропускаються. idне змінюються. Якщо коди щоразу нові, будь-який сервіс щоразу бачить новий каталог.- Ціни записані просто числом:
1299або1299.00, без пробілів-роздільників тисяч і без «грн». - Наявність вказана для кожного товару.
- Категорії зв'язані: кожен
categoryIdє в<categories>. - Характеристики заповнені в
paramдля того, про що питають покупці. - Файл повний. Якщо в фіді раптом удвічі менше товарів, ніж зазвичай, це майже завжди збій вивантаження, а не розпродаж.
Найчастіші проблеми й способи їх виправити зібрані в статті помилки товарного фіду.
Часті запитання
YML і XML — це одне й те саме?
YML — це XML із фіксованим набором тегів для магазинів: shop, categories, offers, offer, price, param тощо. Кожен YML-файл є XML-файлом, але не кожен XML — це YML.
Чи потрібен саме YML, щоб підключити Vendigit?
Ні. Vendigit читає YML, XML для Google Merchant (RSS чи Atom), інший XML з повторюваними записами товарів, CSV/TSV і JSON. Беріть той формат, який ваша платформа вивантажує найповніше.
У мене фід українською і російською. Це проблема?
Ні. Vendigit визначає основну мову фіду і читає додаткові мовні версії назв, описів і характеристик, якщо вони є. Покупець отримує відповідь тією мовою, якою пише.
Можна завантажити файл замість посилання?
Так, до 20 МБ у форматах .xml, .yml, .csv, .txt або .json. Але файл не оновлюється сам, тож для каталогу, де часто змінюються ціни й наявність, краще посилання на вашому домені.
Якого розміру може бути фід?
Фід за посиланням — до 128 МБ (JSON — до 24 МБ). Скільки товарів потрапляє в пошук, залежить від тарифу: 10 000 на Starter, 15 000 на Growth, 50 000 на Business.