Імпорт через YML

Основний yml файл оновлюється кожну годину.

Файли YML-каталогу містять інформацію про товари, їх характеристики, категорії, ціни та інші деталі, які використовуються для відображення товарів і взаємодії з ними.

YML є одним з варіантів XML-розмітки

XML (Extensible Markup Language) є розширюваним мовою розмітки, яка використовується для представлення структурованої інформації у вигляді текстових файлів. XML використовує теги для опису даних і їх ієрархічних відношень.

Формат XML зазвичай використовується для обміну даними між різними системами, а також для зберігання даних у структурованому вигляді. XML-файли можуть бути створені, редаговані та читані за допомогою різних програм та мов програмування.


Структура для YML-імпорту

    
1<yml_catalog date="0000-00-00 00:00">
2    <shop>
3        <name>Тотобі</name>
4        <company>Тотобі</company>
5        <url>http://totobi.com.ua</url>
6        <platform>CS-Cart</platform>
7        <version>4.4.2</version>
8        <agency>Agency</agency>
9        <email>info@totobi.com.ua</email>
10        <currencies>
11            ...
12        </currencies>
13        <categories>
14            ...
15        </categories>
16        <offers>
17            <offer id="..." available="...">
18                ...
19            </offer>
20            ...
21        </offers>
22    </shop>
23</yml_catalog>
    

yml_catalog - Тег використовується в YML-файлах для оголошення початку та закінчення каталогу товарів у форматі YML. Цей тег охоплює всі інші елементи і вказує на те, що файл містить каталог товарів для імпорту або експорту. Може містити атрибути, такі як date, який вказує на дату та час створення каталогу.

Загальна структура YML-файлу зазвичай включає тег yml_catalog, який містить внутрішні елементи, такі як shop (інформація про магазин) та інші елементи, які описують товари, категорії, ціни та інші характеристики.

<yml_catalog>...</yml_catalog> - обгортка для оголошення імпорту файлу.

<shop>...</shop> - загальна інформація про магазин.

<name>...</name> - містить назву магазину.

<company>...</company> - містить назву компанії.

<url>...</url> - може використовуватись для вказівки URL-адреси магазину, товару або іншого об'єкта, що вказує на його доступність в Інтернеті.

<platform>...</platform> - інформація про платформу або програмне забезпечення, на якому базується об'єкт.

<version>...</version> - інформація про конкретну версію платформи або програмного забезпечення.

<agency>...</agency> - інформація про агентство або компанію, яка відповідає за певні аспекти об'єкта.

<email>...</email> - поштова адреса магазину/компанії.


Передача валюти

<currencies>...</currencies> - використовується для групування і визначення валют, які використовуються в контексті об'єкта, до якого він відноситься. Всі валюти визначаються в межах тегу <currencies></currencies> як окремі елементи <currency></currency>.

    
1<currencies>
2    <currency id="UAH" rate="1.00000"/>
3    <currency id="USD" rate="0.00001"/>
4    <currency id="EUR" rate="0.00001"/>
5</currencies>
    

Тег - <currencies>...</currencies> містить групу валют, а тег <currency>...</currency> описує саму валюту.

Атрибут id="UAH" - вказує на назву валюти, а атрибут rate="1.00000", використовується для вказівки курсу обміну валюти.


Передача категорій

<categories>...</categories> - містить категорії - <category>...</category>, з відповідними ідентифікаторами id та можливими вказівками на батьківські категорії parentId, якщо вони є.

    
1<categories>
2    <category id="179">Інструменти</category>
3    <category id="286" parentId="179">Викрутки</category>
4    <category id="250" parentId="179">Мультитули</category>
5     ...
6</categories>
    

Передача товарів

<offers>...</offers> - контейнер який використовується для групування товарів.

<offer>...</offer> - окремий елемент/товар, включаючи ідентифікатор id, наявність available, URL, ціну, категорію, зображення, характеристики та інші деталі, пов'язані з кожною окремою пропозицією товару.

    
1<offers>
2     <offer id="1594" available="false">
3         <url>http://totobi.com.ua/nstrumenti-ta-lhtar/ruletki/ruletka-galaxy-tm-totob-art-9001-09/</url>
4         <amount>0</amount>
5         <in_stock>0</in_stock>
6         <is_new>N</is_new>
7         <textile>N</textile>
8         <price_type>Базова ціна</price_type>
9         <reserve>0</reserve>
10         <wait>0</wait>
11         <date_delivery>0</date_delivery>
12         <price>277.98</price>
13         <currencyId>UAH</currencyId>
14         <categoryId>180</categoryId>
15         <picture>http://totobi.com.ua/images/detailed/3/...-80c9-000c295c9c78..jpg</picture>
16         ...
17         <store>false</store>
18         <pickup>false</pickup>
19         <delivery>true</delivery>
20         <name>Рулетка Galaxy, 5 м., ТМ Totobi</name>
21         <vendorCode>9001-09</vendorCode>
22         <description>Рулетка будівельна, 5 метрів... </description>
23         <param name="Вага ящика">18 кг</param>
24         ...
25     </offer>
26     ...
27</offers>
    

<url>...</url> - посилання на товар/об'єкт.

<amount>...</amount> - к-сть в наявності.

<in_stock>...</in_stock> - наявність на складі.

<is_new>...</is_new> - вказує що товар доданий нещодавно.

<textile>...</textile> - використовується для позначення наявності текстильних матеріалів в товарі.

<price_type>...</price_type> - вказує на тип ціни товару. "Базова ціна" або "Основна ціна" - може означати, що ціна, вказана в полі <price></price>, є основною ціною для товару.

<reserve>...</reserve> - може вказувати на кількість товару, зарезервовану для покупця або відвідувача.

<wait>...</wait> - час очікування або термін постачання товару. Він використовується для вказівки періоду часу, який необхідно очікувати перед постачанням товару після замовлення або придбання.

<date_delivery>...</date_delivery> - використовується для вказівки дати або періоду доставки товару. Він може вказувати на термін, коли товар буде доставлений або доступний для отримання покупцем..

<price>...</price> - вказує на ціну товару..

<oldprice>...</oldprice> - показує стару ціну товару.

<currencyId>...</currencyId> - відображає валюту.

<categoryId>...</categoryId> - вказує на ідентифікатор категорії, до якої належить товар..

<picture>...</picture> - посилання на фотографію товару. Може бути від 1 до 10 картинок.

<store>...</store> - вказує на наявність товару в фізичному магазині або торговій точці. Зазвичай, значення цього тегу вказує, чи можна придбати товар безпосередньо в магазині.

<pickup>...</pickup> - вказує на можливість самовивозу товару. Зазвичай, значення цього тегу вказує, чи доступний самовивіз для даного товару покупцеві або клієнту.

<delivery>...</delivery> - вказує на доступність доставки для товару. Зазвичай, значення цього тегу вказує на те, чи можлива доставка даного товару покупцеві або клієнту.

<name>...</name> - назва товару.

<vendorCode>...</vendorCode> - код товару (артикул) необхідний для швидкого та зручного пошуку потрібної позиції на сайті.

<description>...</description> - опис товару.

<param>...</param> - характеристика товару. Ліміт до 100 характеристик на одну позицію.


Приклад товару з текстилем

Розглянемо приклад товару, який містить параметр - <textile>Y</textile>.

    
1<offer id="3177" available="true">
2    <url>http://totobi.com.ua/odyag/reglani/reglan-heavy-blend-271-uk-17/</url>
3    <amount>0</amount>
4    <in_stock>0</in_stock>
5    <is_new>N</is_new>
6    <icon_images>http://totobi.com.ua/images/detailed/8/...-000c295c9c78..jpg</icon_images>
7    <textile>Y</textile>
8    <price_type>Базова ціна</price_type>
9    <sizes>
10        <size modifier="675.180" product_code="18000-CG 3C-S" amount="0" in_stock="0"
          position="10" reserve="0" wait="0" date_delivery="0" params="69/51" box="36">S</size>
11        <size modifier="675.180" product_code="18000-CG 3C-M" amount="0" in_stock="0"
          position="20" reserve="0" wait="0" date_delivery="0" params="71/56" box="36">M</size>
12        <size modifier="675.180" product_code="18000-CG 3C-L" amount="0" in_stock="0"
          position="30" reserve="0" wait="0" date_delivery="0" params="74/61" box="36">L</size>
13        <size modifier="675.180" product_code="18000-CG 3C-XL" amount="0" in_stock="0"
          position="40" reserve="0" wait="0" date_delivery="0" params="76/66" box="36">XL</size>
14        <size modifier="675.180" product_code="18000-CG 3C-2XL" amount="0" in_stock="0"
          position="50" reserve="0" wait="0" date_delivery="0" params="79/71" box="36">2XL</size>
15        <size modifier="748.650" product_code="18000-CG 3C-3XL" amount="0" in_stock="0"
          position="60" reserve="0" wait="0" date_delivery="0" params="81/76" box="36">3XL</size>
16        <size modifier="748.650" product_code="18000-CG 3C-4XL" amount="0" in_stock="0"
          position="70" reserve="0" wait="0" date_delivery="0" params="84/81" box="12">4XL</size>
17        <size modifier="748.650" product_code="18000-CG 3C-5XL" amount="0" in_stock="0"
          position="80" reserve="0" wait="0" date_delivery="0" params="86/86" box="12">5XL</size>
18    </sizes>
19    <reserve>0</reserve>
20    <wait>0</wait>
21    <date_delivery>0</date_delivery>
22    <price>0.00</price>
23    <oldprice>748.65</oldprice>
24    <currencyId>UAH</currencyId>
25    <categoryId>246</categoryId>
26    <picture>http://totobi.com.ua/images/detailed/8/...-000c295c9c78._c8kp-mq.jpg</picture>
27    <picture>http://totobi.com.ua/images/detailed/8/...-000c295c9c78._fsp0-jz.jpg</picture>
28    <store>false</store>
29    <pickup>false</pickup>
30    <delivery>true</delivery>
31    <name>Реглан Heavy Blend 271, TM Gildan</name>
32    <vendorCode>18000-CG 3C</vendorCode>
33    <description>Яскравий світшот, широка гамма кольорів, матеріал - мольтон. Склад: 50% бавовна/50% поліестер</description>
34    <param name="Група Кольорів">Сірий</param>
35    <param name="Група нанесення">Термотрансфер, шовкодрук, вишивка</param>
36    <param name="Кількість у ящику">36 шт</param>
37    <param name="Колір">ash grey</param>
38    <param name="Матеріал">бавовна/поліестер</param>
39    <param name="Підрозділ у каталозі">Реглани та фліси</param>
40    <param name="Розділ у каталозі">Одяг</param>
41    <param name="Розмір">S. M. L. XL. 2XL. 3XL. 4XL. 5XL</param>
42    <param name="Стать">унісекс</param>
43    <param name="ТМ">Gildan</param>
44    <param name="Щільність">271 г/м2</param>
44</offer>
    

В данму прикладі тег - <textile>Y</textile> вказує, що цей продукт містить текстильну продукцію, з додатковим тегом <sizes>Y</sizes>.

<sizes>...</sizes> - контейнер який містить розміри товару.

<size>...</size> - конкретний розмір товару. Містить в собі теги:

  • modifier - Ціна розміру.
  • product_code - Код товару для цього розміру.
  • amount - Кількість товару даного розміру.
  • in_stock - Кількість товару в наявності даного розміру.
  • position - Позиція розміру в списку.
  • reserve - Кількість товару зарезервована даного розміру.
  • wait - Кількість товару, який очікується даного розміру.
  • date_delivery - Дата доставки даного розміру.
  • params - Параметри розміру.
  • box - Кількість товару в коробці даного розміру.

Ціна розміру різна, вона вказана в параметрі modifier


Імпорт для prom.ua

Структура файлу для імпорту не відрізняється від звичайного імпорту, окрім вмісту тега <offer>...</offer>, який будує структуру для іморту конкретного товару.

    
1<offer id="1594" available="false">
2    <url>http://totobi.com.ua/nstrumenti-ta-lhtar/ruletki/ruletka-galaxy-tm-totob-art-9001-09/</url>
3    <quantity_in_stock>0</quantity_in_stock>
4    <price>277.98</price>
5    <currencyId>UAH</currencyId>
6    <categoryId>180</categoryId>
7    <picture>http://totobi.com.ua/images/detailed/3/...-000c295c9c78..jpg</picture>
8    <picture>http://totobi.com.ua/images/detailed/3/...-000c295c9c78..jpg</picture>
9    <picture>http://totobi.com.ua/images/detailed/3/...-000c295c9c78..jpg</picture>
10    <picture>http://totobi.com.ua/images/detailed/3/...-000c295c9c78..jpg</picture>
11    <store>false</store>
12    <pickup>false</pickup>
13    <delivery>true</delivery>
14    <name>Рулетка Galaxy, 5 м., ТМ Totobi</name>
15    <vendorCode>9001-09</vendorCode>
16    <description>Рулетка будівельна, 5 метрів...</description>
17    <weight>0.01</weight>
18    <param name="Індивідуальна упаковка">Індивідуальна картонна коробка</param>
19    <param name="Вага ящика">18 кг</param>
20    <param name="Група нанесення">Тамподрук, УФ друк, смоляна наліпка</param>
21    <param name="Кількість в упаковці">1 шт</param>
22    <param name="Кількість у ящику">72 шт</param>
23    <param name="Колір">срібний</param>
24    <param name="Матеріал">Пластик</param>
25    <param name="Метраж">5 м</param>
26    <param name="Підрозділ у каталозі">Рулетки</param>
27    <param name="Розділ у каталозі">Інструменти</param>
28    <param name="Розмір">7.9 х 7.2 х 4.3 см</param>
29    <param name="Стать">унісекс</param>
30    <param name="ТМ">Totobi</param>
31</offer>
    

<quantity_in_stock>...</quantity_in_stock> - вказує на кількість товару, що є в наявності.

<weight>...</weight> - Цей тег вказує на вагу товару.

Механізм імпорту розмірів товару відрізняється для prom.ua, нижче розглянемо приклад заповнення розмірів. Для початку нам потрібно заповнити всю повну інформацію про товар і в параметрі <param name="Розмір">...</param> - вказати всі розміри. Наш наступний <offer id="18000-CG 3C-S" available="true" group_id="3177"> - дублює всю інформацію, окрім характеристик <param>...</param>. Має атрибут id - який дублює тег vendorCode основного товару та дописує до ідентифікатора, ідентифікатор розміру. Потім залишається тільки параметр конкретного розміру - <param name="Розмір">S</param>. Нижче приклад в якому спочатку головний товар і за ним його розміри.

    
1<offer id="3177" available="false" group_id="3177">
2    <url>http://totobi.com.ua/odyag/reglani/reglan-heavy-blend-271-uk-17/</url>
3    <quantity_in_stock>0</quantity_in_stock>
4    <price>675.180</price>
5    <oldprice>748.65</oldprice>
6    <currencyId>UAH</currencyId>
7    <categoryId>246</categoryId>
8    <picture>http://totobi.com.ua/images/detailed/8/...-000c295c9c78._c8kp-mq.jpg</picture>
9    <picture>http://totobi.com.ua/images/detailed/8/...-000c295c9c78._fsp0-jz.jpg</picture>
10    <store>false</store>
11    <pickup>false</pickup>
12    <delivery>true</delivery>
13    <name>Реглан Heavy Blend 271, TM Gildan</name>
14    <vendorCode>18000-CG 3C</vendorCode>
15    <description>Яскравий світшот, широка гамма кольорів, матеріал - мольтон...</description>
16    <weight>0.01</weight>
17    <param name="Група Кольорів">Сірий</param>
18    <param name="Група нанесення">Термотрансфер, шовкодрук, вишивка</param>
19    <param name="Кількість у ящику">36 шт</param>
20    <param name="Колір">ash grey</param>
21    <param name="Матеріал">бавовна/поліестер</param>
22    <param name="Підрозділ у каталозі">Реглани та фліси</param>
23    <param name="Розділ у каталозі">Одяг</param>
24    <param name="Розмір">S. M. L. XL. 2XL. 3XL. 4XL. 5XL</param>
25    <param name="Стать">унісекс</param>
26    <param name="ТМ">Gildan</param>
27    <param name="Щільність">271 г/м2</param>
28</offer>
29<offer id="18000-CG 3C-S" available="true" group_id="3177">
30    <url>http://totobi.com.ua/odyag/reglani/reglan-heavy-blend-271-uk-17/</url>
31    <quantity_in_stock>0</quantity_in_stock>
32    <price>675.180</price>
33    <oldprice>748.65</oldprice>
34    <currencyId>UAH</currencyId>
35    <categoryId>246</categoryId>
36    <picture>http://totobi.com.ua/images/detailed/8/...-000c295c9c78._c8kp-mq.jpg</picture>
37    <picture>http://totobi.com.ua/images/detailed/8/...-000c295c9c78._fsp0-jz.jpg</picture>
38    <store>false</store>
39    <pickup>false</pickup>
40    <delivery>true</delivery>
41    <name>Реглан Heavy Blend 271, TM Gildan</name>
42    <vendorCode>18000-CG 3C</vendorCode>
43    <description>Яскравий світшот, широка гамма кольорів, матеріал - мольтон...</description>
44    <weight>0.01</weight>
45    <param name="Розмір">S</param>
46</offer>
47<offer id="18000-CG 3C-M" available="true" group_id="3177">
48    <url>http://totobi.com.ua/odyag/reglani/reglan-heavy-blend-271-uk-17/</url>
49    <quantity_in_stock>0</quantity_in_stock>
50    <price>675.180</price>
51    <oldprice>748.65</oldprice>
52    <currencyId>UAH</currencyId>
53    <categoryId>246</categoryId>
54    <picture>http://totobi.com.ua/images/detailed/8/...-000c295c9c78._c8kp-mq.jpg</picture>
55    <picture>http://totobi.com.ua/images/detailed/8/...-000c295c9c78._fsp0-jz.jpg</picture>
56    <store>false</store>
57    <pickup>false</pickup>
58    <delivery>true</delivery>
59    <name>Реглан Heavy Blend 271, TM Gildan</name>
60    <vendorCode>18000-CG 3C</vendorCode>
61    <description>Яскравий світшот, широка гамма кольорів, матеріал - мольтон...</description>
62    <weight>0.01</weight>
63    <param name="Розмір">M</param>
64</offer>