Поставщик спрашивает: «В каком виде вам прислать прайс?» От ответа зависит, сколько работы будет при подключении и насколько надёжно пойдут обновления. Разберём, чем отличаются XML, YML, CSV и Excel, что в прайсе важнее формата и как сформулировать просьбу поставщику.
Эта статья — о том, какой источник выбрать и запросить. Как уже полученный прайс настраивается в программе, описано в документации: Форматы прайсов.
Сначала — ссылка или файл
Это важнее, чем расширение файла. Прайс по постоянной ссылке, который поставщик обновляет сам, можно забирать по расписанию: программа скачивает его, когда нужно, и никто ничего не пересылает. Файл по почте требует, чтобы кто-то каждый раз его сохранил и загрузил, — и обновление идёт тогда, когда у этого человека дошли руки.
Если у поставщика есть и то и другое, просите ссылку. Если ссылка за логином в личный кабинет оптовика, это тоже решается, но уже отдельной настройкой под этого поставщика.
Четыре формата
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», разбор под книгу конкретного поставщика. Прайс за логином, из нескольких файлов или со страниц сайта — отдельный класс поставщика, это мы делаем сами.

Размер прайса упирается в память хостинга, а не в формат: на разбор нужно в несколько раз больше памяти, чем весит файл. Если прайс большой, скажите об этом сразу — проверим на вашем хостинге.
Общая картина — какие бывают способы импорта и как выбрать свой — в статье Импорт товаров в интернет-магазин.