XML - импорт объявлений

Внимание!
Доступно только для «Магазины».

Фид должен быть составлен на языке XML.

Общие технические требования к наполнению фида:
  • Не подавайте одно и то же объявление повторно; Почему?
  • В фиде должны передаваться все актуальные объявления, доступные на сайте;
  • Для каждого объявления следует передавать максимальный набор параметров;
  • В текстах объявлений и в описании характеристик не должно быть HTML-кода;
  • Стоимость предложения должна быть корректной и соответствовать действительности;

После регистрации магазина в вашем личном кабинете появится вкладка «Импорт». Ознакомиться с требуемым форматом фида можно скачав шаблон интересующей категории / подкатегории.

xmlfeed

Описание структуры XML файла импорта для категории «Запчасти»:

<?xml version="1.0" encoding="UTF-8"?>
<bbs type="items-import-export">
  <title>Йоду</title>
  <url>yodu.ru</url>
  <locale>ru</locale>
  <categories>
    <category id="5" pid="1">Запчасти и автотовары</category>
    <category id="40" pid="5">Шины</category>
    <category id="41" pid="5">Диски</category>
    <category id="42" pid="5">Колеса, колпаки и камеры</category>
    <category id="43" pid="5">Масла и автохимия</category>
    <category id="44" pid="5">Автоэлектроника и GPS</category>
    <category id="45" pid="5">Аксессуары и инструменты</category>
    <category id="46" pid="5">Аудио и видео</category>
    <category id="47" pid="5">Запчасти</category>
    <category id="48" pid="5">Противоугонные устройства</category>
    <category id="49" pid="5">Багажные системы и прицепы</category>
    <category id="50" pid="5">Мотоэкипировка</category>
    <category id="51" pid="5">Автомобили на запчасти</category>
    <category id="52" pid="5">Другое</category>
  </categories>
  <currencies>
    <currency id="2">Рубли</currency>
    <currency id="3">Доллары</currency>
    <currency id="4">Евро</currency>
    <currency id="5">Юань</currency>
  </currencies>
  <cities>
    <city id="3341" region="Новосибирская область">
      <title>Новосибирск</title>
      <metro>
        <station id="126">Ленинская</station>
        <station id="127">Дзержинская</station>
        <station id="421">Заельцовская</station>
        <station id="422">Гагаринская</station>
        <station id="423">Красный проспект</station>
        <station id="424">Площадь Ленина</station>
        <station id="425">Октябрьская</station>
        <station id="426">Речной вокзал</station>
        <station id="427">Студенческая</station>
        <station id="428">Площадь Маркса</station>
        <station id="429">Площадь Гарина-Михайловского</station>
        <station id="430">Сибирская</station>
        <station id="431">Маршала Покрышкина</station>
        <station id="432">Берёзовая роща</station>
        <station id="433">Золотая Нива</station>
      </metro>
      <districts>
        <district id="211">Дзержинский</district>
        <district id="212">Железнодорожный</district>
        <district id="213">Заельцовский</district>
        <district id="214">Калининский</district>
        <district id="215">Кировский</district>
        <district id="216">Ленинский</district>
        <district id="217">Октябрьский</district>
        <district id="218">Первомайский</district>
        <district id="219">Советский</district>
        <district id="220">Центральный</district>
      </districts>
    </city>
  </cities>
  <params>
    <param id="368" title="Вид транспорта" field="2" type="6" parent="0">
      <value id="1">Для автомобилей</value>
      <value id="2">Для мототехники</value>
      <value id="3">Для спецтехники</value>
      <value id="4">Для водного транспорта</value>
    </param>
    <param id="369" title="Тип" field="3" type="6" parent="368">
      <parent value="1" name="Для автомобилей">
        <value id="1">Автосвет, оптика</value>
        <value id="2">Аккумуляторы</value>
        <value id="3">Двигатель, система зажигания</value>
        <value id="4">Выхлопная система</value>
        <value id="5">Топливная система</value>
        <value id="6">Тормозная система</value>
        <value id="7">Кузов, экстерьер</value>
        <value id="8">Рулевое управление</value>
        <value id="9">Салон, интерьер</value>
        <value id="10">Подвеска</value>
        <value id="11">Расходники</value>
        <value id="12">Системы охлаждения, обогрева</value>
        <value id="13">Стекла</value>
        <value id="14">Трансмиссия, привод</value>
        <value id="15">Электрооборудование</value>
      </parent>
    </param>
    <param id="370" title="Артикул запчасти" field="16" type="1" parent="0"/>
    <param id="367" title="Состояние" field="1" type="8" parent="0">
      <value id="1">Б/у</value>
      <value id="2">Новое</value>
    </param>
  </params>
  <items>
    <item id="0" external="0">
      <title>Заголовок объявления</title>
      <description>Подробное описание объявления</description>
      <user id="10" shop="1">user@gmail.com</user>
      <category title="Запчасти" type="offer">47</category>
      <geo delivery="1">
        <city id="3341">Новосибирск</city>
        <station id="423">Красный проспект</station>
        <addr>Красный проспект, 25</addr>
        <lat>55.0296</lat>
        <lon>82.9191</lon>
      </geo>
      <price currency="2" free="0" exchange="0" mod="0" agreed="0">3000.00</price>
      <images>
        <image id="0">http://example.com/files/image_1.jpg</image>
        <image id="0">http://example.com/files/image_2.jpg</image>
        <image id="0">http://example.com/files/image_3.jpg</image>
      </images>
      <contacts>
        <name>Контактное имя</name>
        <phones>
          <phone>+7 000 000 0001</phone>
          <phone>+7 000 000 0002</phone>
          <phone>+7 000 000 0003</phone>
        </phones>
        <whatsapp>+7 000 000 0001</whatsapp>
        <viber>+7 000 000 0001</viber>
        <skype>_Skype1_</skype>
        <icq>1234567890</icq>
      </contacts>
      <video></video>
      <params>
        <param field="2" type="6" value="1" title="Вид транспорта">Для автомобилей</param>
        <param field="3" type="6" value="5" title="Тип">Топливная система</param>
        <param field="16" type="1" value="0" title="Артикул запчасти"/>1234567890</param>
        <param field="1" type="8" value="2" title="Состояние">Новое</param>
      </params>
    </item>
    <!-- # следующее объявление -->
    <item id="0" external="0">...</item>
  </items>
</bbs>

Основной элемент <items> с вложенными <item>.

  • <item> включает в себя следующие атрибуты:

    • id который может быть равен нулю (0), в таком случае будет создано новое объявление, либо больше нуля, в таком случае будет выполнен поиск объявления по id в базе и если такое будет найдено, данные объявления будут обновлены.

    • external, при помощи которого доступна возможность указать ID во внешнем источнике, что позволяет в дальнейшем обновлять существующие объявления по указанному ID не привязываясь к ID в базе данных проекта. Данный атрибут принимает значения 0 или 1, в случае если указано значение 1, значение атрибута id обрабатывается как ID из внешнего источника.

В тег <item> входят следующие вложенные теги:

  • <title> — заголовок объявления (обязательный элемент)

  • <description> — описание объявления

  • <user id="10" shop="1">Email пользователя</user> — пользователь, владелец создаваемого объявления:

    • id — ID пользователя

    • shop — ID магазина привязанного к данному пользователю

Посмотреть id можно в настройках:

xmlfeed_2
xmlfeed_3
  • <category title="Запчасти" type="offer">47</category> — ID категории, в которой будет размещено объявление, в данной категории не должно быть подкатегорий (обязательный элемент).

    • атрибут type определяет тип объявления и принимает следующие значения:

      • offer — предлагаю/продам (по-умолчанию)

      • seek — ищу/куплю

    • данный тег не является обязательным.

  • <geo delivery="1"> — гео. данные (обязательный элемент):

    • <city id="3341">Новосибирск</city> — ID города, название необязательно, главное указать атрибут id

    • <station id="423">Красный проспект</station> — ID станции метро, название необязательно

    • <district>5</district> — ID района города

    • <addr>Красный проспект, 25</addr> — адрес на карте

    • <lat>55.0296</lat> — координата Lat на карте

    • <lon>82.9191</lon> — координата Lon на карте

    • атрибут delivery — возможность доставки в регионы, варианты 1 или 0 (по-умолчанию). В случае если в категории, в которую добавляется объявление, настройка «Доставка в регионы» выключена — данный атрибут игнорируется.

  • <price currency="2" free="0" exchange="0" mod="0" agreed="0">3000.00</price> — цена указываемая в объявлении.

    • атрибут currency — ID валюты, 2 — Рубли, 3 — Доллары, 4 — Евро, 5 — Юань

    • атрибут free — пометка «Даром», 0/1

    • атрибут exchange — пометка «Обмен», 0/1

    • атрибут agreed — пометка «Договорная», 0/1

    • атрибут mod — пометка «Торг возможен», 0/1

    • Значение — стоимость без пробелов

  • <images> — изображения, прикрепляемые к объявлению, максимум 12

    • <image id="0">http://example.com/files/image_1.jpg</image>/code>

    • Атрибут «id» — ID изображение на случай если оно уже было загруженно ранее или 0 для нового

    • Значение — URL изображения для загрузки

  • <contacts> — контакты владельца объявления, указываются в каждом объявлении

    • <name> — имя

    • <phones> — телефоны, максимум 5

    • <whatsapp> — телефонный номер whatsapp

    • <viber> — телефонный номер viber

    • <skype> — skype

    • <icq> — icq

  • <video> — видео-ссылка(url) на ролик с youtube / vimeo

  • <params> — параметры категории объявления, указываются в каждом объявлении, увидеть все параметры можно скачав шаблон интересующей категории

    • <param field="2" type="6" value="1" title="Вид транспорта">Для автомобилей</param>

    • атрибут value — ID свойства параметра

    • атрибут title — Название параметра категории

    • Значение — Название свойства параметра