Постачальник питає: «У якому вигляді вам надіслати прайс?» Від відповіді залежить, скільки роботи буде під час підключення і наскільки надійно йтимуть оновлення. Розберемо, чим відрізняються XML, YML, CSV і Excel, що в прайсі важливіше за формат і як сформулювати прохання постачальнику.
Ця стаття — про те, яке джерело обрати й попросити. Як уже отриманий прайс налаштовується в програмі, описано в документації: Feed formats (англійською).
Спершу — посилання чи файл
Це важливіше за розширення файлу. Прайс за постійним посиланням, який постачальник оновлює сам, можна забирати за розкладом: програма завантажує його, коли треба, і ніхто нічого не пересилає. Файл поштою потребує, щоб хтось щоразу його зберіг і завантажив, — і оновлення відбувається тоді, коли в цієї людини дійшли руки.
Якщо в постачальника є і те, і те, просіть посилання. Якщо посилання за логіном в особистий кабінет оптовика, це теж розв’язується, але вже окремим налаштуванням під цього постачальника.
Чотири формати
YML
Різновид XML для каталогів товарів, придуманий для Яндекс.Маркету й прийнятий Prom і Rozetka. До YAML стосунку не має. Головна перевага — кожне поле має своє місце: категорії окремим деревом, у товару код, ціна, наявність, бренд, картинки й характеристики. Якщо постачальник уже вивантажує товари на маркетплейс, такий файл у нього майже напевно є, і підключається він швидше за інші.
XML власного формату
Теж дерево тегів, але влаштоване так, як вирішив постачальник. Дані всередині зазвичай добрі, але один раз треба описати, де що лежить: який тег — код, який — ціна. Якщо у файлі кілька рівнів вкладеності або товар збирається з кількох файлів, знадобиться окремий розбір під постачальника.
CSV
Проста таблиця текстом: рядок — товар, стовпці через кому або крапку з комою. Читається швидко й майже без обмежень за розміром. Слабкі місця: немає загальноприйнятих назв стовпців, бувають різні кодування, а вкладені дані — категорії, кілька фото, варіанти — кожен постачальник пакує по-своєму. Під час підключення один раз указується, який стовпець що означає.
Excel
Найпоширеніший і найнезручніший для автоматики. Книга розрахована на людину: об’єднані клітинки в шапці, групи рядків замість категорій, ціна на одному аркуші, наявність на іншому. Прочитати можна, але розбір пишеться під конкретний файл і ламається, коли постачальник змінює оформлення. Якщо в постачальника є CSV або XML з тими самими даними — беріть їх.
Порівняння
| Формат | Сильні сторони | На що дивитися |
|---|---|---|
| YML | Поля на своїх місцях, категорії деревом, часто є готовий | Повнота: опис, фото, характеристики |
| XML власного формату | Будь-яка структура, зазвичай за посиланням | Треба описати, де яке поле; вкладеність |
| CSV | Просто, швидко, великі обсяги | Роздільник, кодування, як упаковано фото й категорії |
| Excel | Є майже в усіх | Об’єднані клітинки, кілька аркушів, часта зміна оформлення |
Що в прайсі важливіше за формат
Ідеальний YML без коду товару гірший за кривий CSV із ним. Перевірте вміст:
- Постійний код товару. Той, що не змінюється від вивантаження до вивантаження. За ним товар упізнають під час оновлення; без нього кожен повторний імпорт ризикує створити дублі. Докладніше — у статті Повторний імпорт: як уникнути дублів.
- Ціна й валюта. Роздрібна чи закупівельна, з ПДВ чи без, у якій валюті.
- Наявність. Хоча б «є / немає». Точна кількість буває не в усіх і не завжди потрібна.
- Категорія. Дерево або хоча б назва — інакше розкладати товари доведеться за іншими ознаками.
- Фотографії посиланнями, які відкриваються без логіна.
- Опис і характеристики — якщо товари треба створювати, а не лише оновлювати ціни.
- Код виробника або штрихкод — якщо постачальників кілька й один товар може бути у двох. Про це — Кілька постачальників в одному магазині.
Як попросити
Короткий лист, який можна надіслати постачальнику майже як є:
Добрий день! Для завантаження ваших товарів у наш магазин потрібне вивантаження за постійним посиланням, краще YML або XML, можна CSV. Важливо, щоб у ньому були: код товару, який не змінюється, ціна із зазначенням валюти, наявність, категорія, посилання на фото й опис. Підкажіть, будь ласка, як часто воно оновлюється.
Якщо відповідь — «у нас лише Excel», це не вирок: його теж читають. Просто закладайте більше часу на підключення й попросіть постачальника попереджати про зміни у файлі. Якщо відповідь — «прайсу немає, дивіться на сайті», є окремий шлях: збір даних із сайту постачальника.
Як із форматами в PIMPORT
Без окремої розробки програма читає YML, вивантаження Prom, Rozetka, Horoshop і Google Merchant, XML власного формату за картою полів і CSV за картою стовпців. Excel підключається плагіном «Прайси Excel», розбір під книгу конкретного постачальника. Прайс за логіном, із кількох файлів або зі сторінок сайту — окремий клас постачальника, це ми робимо самі.

Розмір прайсу впирається в пам’ять хостингу, а не у формат: на розбір потрібно в кілька разів більше пам’яті, ніж важить файл. Якщо прайс великий, скажіть про це одразу — перевіримо на вашому хостингу.
Загальна картина — які бувають способи імпорту і як обрати свій — у статті Імпорт товарів в інтернет-магазин.