Как создать файл выгрузки для Розетки?

Файл выгрузки — одно из требований Розетки, которое может завести в ступор технически не подготовленного предпринимателя.


В данной статье, я попробую объяснить все тонкости создания XML/YML файла-выгрузки на готовых примерах. О себе скажу кратко — я программист, начавший работу с Розеткой два года назад.

Приступаем к работе

Для начала создайте файл rozetka.xml (название может быть любое) и откройте его с помощью Notepad++. Вставьте в созданный файл этот шаблон:

<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2018-04-01 12:00">
<shop>
<name>Conundrum</name>
<company>Conundrum</company>
<url>https://krutygolov.com.ua/</url>
<currencies>
<currency id="UAH" rate="1" />
</currencies>
<categories>
<category id="1">Детские конструкторы</category>
</categories>
<offers>
<offer available="true" id="9004">
<url>https://krutygolov.com.ua/tovar/3d-models/3d-crystal-puzzle-dog/</url>
<price>159</price>
<currencyId>UAH</currencyId>
<categoryId>1</categoryId>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-2.jpg</picture>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-1.jpg</picture>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-3.jpg</picture>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-4.jpg</picture>
<name>3D-пазл Huaxinda Собака (9039)</name>
<vendor>Huaxinda</vendor>
<description><![CDATA[<p>Соберите верного друга — симпатичную собачку с миской. Высота собранной фигуры приблизительно 12 сантиметров. Бывают желтого и прозрачного цветов.</p><p>В комплекте идет инструкция по сборке, наклейки с глазами, 6 пластин с деталями.</p>]]></description>
<param name="Дополнительные характеристики"><![CDATA[<p>Уровень сложности: 3 из 5.<br>Количество деталей: 41 деталь.<br>Время сборки: 1 час 30 минут.</p>]]></param>
<param name="Возраст">От 9 лет</param>
<param name="Материал">Пластик</param>
<param name="Вид">Конструкторы</param>
<param name="Размеры коробки">180x75x75 мм</param>
<param name="Страна-производитель">Китай</param>
<param name="Гарантия">14 дней</param>
<stock_quantity>100</stock_quantity>
</offer>
</offers>
</shop>
</yml_catalog>

Можно смело сказать, что половина дела уже сделана. Теперь давайте разбираться с шаблоном. Очень красиво об этом шаблоне написано на самой Розетке, почитать можно здесь.


Разбор файла: настройки магазина

Первая строка задает кодировку файла и нужна, чтобы корректно отображались надписи на русском и других языках:

<?xml version="1.0" encoding="UTF-8"?>

Далее идут настройки магазина. Здесь просто вписываем свое название и адрес сайта, согласно договору с Розеткой:

<name>Conundrum</name>
<company>Conundrum</company>
<url>https://krutygolov.com.ua/</url>

Далее идут настройки валюты. По-умолчанию прописана гривна, но если у вас на сайте цены в долларах, извольте прописать это и следить за курсом самостоятельно. Например, курс 26.5 выглядит так:

<currencies>
<currency id="USD" rate="26.50"/>
</currencies>

К сожалению, с ценами в долларах не сталкивался. Если на Розетке поддерживается курс НБУ, то можно писать rate="NBU" . Подробнее об этом написано в Яндексе (основатель YML формата).

Следующие строки отвечают за категории. Названия категорий должны строго совпадать с категориями Розетки. Для этого предварительно изучаем категории на Розетке и выбираем нужную. В нашем случае это Детские конструкторы:

<categories>
<category id="1">Детские конструкторы</category>
</categories>

Если вы не магазин одного товара, то и категорий у вас будет несколько. Здесь всё просто: новые категории добавляем между тегами <categories>, например так:

<categories>            
<category id="1">Игральные карты</category>
<category id="2">Пазлы</category>
<category id="3">Настольные игры и головоломки</category>
<category id="4">Головоломки, антистрессы</category>
<category id="5">Детские конструкторы</category>
<category id="6">Спиннеры</category>
<category id="7">Карты Таро</category>
</categories>

Причём нумерация id="1" может идти не по порядку. Главное помнить id каждой категории.


Товары

Далее в выгрузке идут товарные позиции. Здесь будет немного сложнее, но если все детально рассмотреть — разобраться сможет любой.

Припустим, мы хотим продать пазл Собака. Подобные товары на Розетке продаются в категории Детские конструкторы. Поэтому код нашего товара будет выглядеть так:

<offer available="true" id="9004">
<url>https://krutygolov.com.ua/tovar/3d-models/3d-crystal-puzzle-dog/</url>
<price>159</price>
<currencyId>UAH</currencyId>
<categoryId>1</categoryId>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-2.jpg</picture>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-1.jpg</picture>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-3.jpg</picture>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-4.jpg</picture>
<name>3D-пазл Huaxinda Собака (9039)</name>
<vendor>Huaxinda</vendor>
<description><![CDATA[<p>Соберите верного друга — симпатичную собачку с миской. Высота собранной фигуры приблизительно 12 сантиметров. Бывают желтого и прозрачного цветов.</p><p>В комплекте идет инструкция по сборке, наклейки с глазами, 6 пластин с деталями.</p>]]></description>
<param name="Дополнительные характеристики"><![CDATA[<p>Уровень сложности: 3 из 5.<br>Количество деталей: 41 деталь.<br>Время сборки: 1 час 30 минут.</p>]]></param>
<param name="Возраст">От 9 лет</param>
<param name="Материал">Пластик</param>
<param name="Вид">Конструкторы</param>
<param name="Размеры коробки">180x75x75 мм</param>
<param name="Страна-производитель">Китай</param>
<param name="Гарантия">14 дней</param>
<stock_quantity>100</stock_quantity>
</offer>

Рассмотрим его детальнее, ибо есть множество нюансов.

Строка <offer available="true" id="9004"> содержит информацию о наличии товара available="true" и его уникальный ID: id="9004".

То есть, если товар закончился, меняем "true" на "false" чтобы получилось available="false" (дополнительно меняется <stock_quantity>0</stock_quantity> и дата, но об этом позже).

Важно: менять ID товара категорически запрещено — за такое могут снять с Розетки.

Далее идет ссылка на товар на вашем сайте:

<url>https://krutygolov.com.ua/tovar/3d-models/3d-crystal-puzzle-dog/</url>

Цена и валюта (у нас в примере — в гривнах):

<price>159</price>
<currencyId>UAH</currencyId>

Номер категории (в нашем случае 1 это Детские конструкторы):

<categoryId>1</categoryId>

Несколько ссылок на фотографии товара:

<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-2.jpg</picture>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-1.jpg</picture>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-3.jpg</picture>
<picture>https://krutygolov.com.ua/wp-content/uploads/2017/02/dog-crystal-puzzle-4.jpg</picture>

Фото должны быть на белом фоне либо профессионально сделанные (например, диван в интерьере) и не меньше 600 на 500 пикселей. Более подробно об этом написано на самой Розетке здесь.

Далее идет название товара. Оно создается по такому принципу: Вид товара + Название бренда + Название товара + Название разновидности + Артикул. В нашем коде это строка:

<name>3D-пазл Huaxinda Собака (9039)</name>

Например, головоломка скьюб Guanlong из черного пластика от компании MoYu (YongJun) на Розетке будет называться так: Скьюб YJ MoYu Guanlong Черный (YJ8328). Артикул берется с коробки. Тоже самое относится и к любым другим товарам.

Здесь важно отметить, что откровенный Китай без упаковки, конкретного названия и бренда на Розетку не допустят.

Далее идет строка отвечающая за производителя. Если такого бренда нет на Розетке, но он известный, то во время модерации его автоматически создадут (возможно, попросят предоставить сертификаты, где указан этот бренд):

<vendor>Huaxinda</vendor>

Если нужный производитель уже есть на Розетке, просто скопируйте его полное название себе в выгрузку. Узнать есть или нет можно с помощью поиска по сайту.

Далее идет самая важная часть товара — его описание:

<description><![CDATA[<p>Соберите верного друга — симпатичную собачку с миской. Высота собранной фигуры приблизительно 12 сантиметров. Бывают желтого и прозрачного цветов.</p><p>В комплекте идет инструкция по сборке, наклейки с глазами, 6 пластин с деталями.</p>]]></description>

Можно использовать некоторые HTML теги для оформления либо обычный текст, но в таком случае товар будет “бедно” выглядеть. Описание начинается между этими тегами:

<description><![CDATA[Описание или HTML-код]]></description>

По поводу вставки видео, нужно дополнительно согласовывать с модераторами. Для этого есть специальный бланк.

Далее идут свойства товара. Они начинаются с <param name="">. Например, у нас это:

<param name="Дополнительные характеристики"><![CDATA[<p>Уровень сложности: 3 из 5.<br>Количество деталей: 41 деталь.<br>Время сборки: 1 час 30 минут.</p>]]></param>
<param name="Возраст">От 9 лет</param>
<param name="Материал">Пластик</param>
<param name="Вид">Конструкторы</param>
<param name="Размеры коробки">180x75x75 мм</param>
<param name="Страна-производитель">Китай</param>
<param name="Гарантия">14 дней</param>
Важно понимать: параметры зависят от выбранной категории

Но есть и универсальные, по типу Дополнительные характеристики или Размеры коробки, Страна-производитель, Гарантия которые указываются на всех товарах.

Узнать допустимые параметры можно зайдя в нужную категорию на Розетке. Они находятся слева и называются фильтрами. Например, в категории Игральные карты допустимые параметры выглядят так:

Параметры это по сути фильтра

Исходя из этого имеем такой набор параметров для карт:

<param name="Материал">Ламинированный картон</param>
<param name="Количество в колоде">54 карты (52+2 джокера)</param>
<param name="Назначение">Для покера</param>
<param name="Количество индексов">2</param>
<param name="Размер индекса">Standard Index</param>

Ну и обязательные для всех товаров:

<param name="Размер упаковки">90x65x17 мм.</param>
<param name="Страна-производитель">США</param>
<param name="Гарантия">14 дней</param>

Надеюсь, с этим всё понятно. Далее идет количество запасов. Это нужно для того, чтобы при покупке ваш товар временно не исчезал с Розетки (со статусом нет в наличии):

<stock_quantity>68</stock_quantity>

Собственно, всё!


Почему всё так сложно?

Согласен, сейчас добавлять товары на Розетку довольно трудно, но в этом есть и свои плюсы.

Как считает предприниматель Николай Тарадайко, один из первых продавцов на Розетке, “чем сложнее система, тем лучше”. Умный разберётся, а глупый не захочет с этим заморачиваться.

Отдельно скажу, что продавать на Розетке могут лишь предприниматели (ФЛП) и крупные компании. То есть, это не сайт объявлений для всех желающих. О том, как попасть на Розетку написано в статье “Как я пытался продавать на Rozetka.ua”.

На данный момент разработчиками ведётся работа над упрощённым добавлением товаров. В будущем, можно будет редактировать и добавлять новые товары непосредственно через личный кабинет продавца.

Удачной торговли, коллеги!