YML (фид каталога товаров)
Описание дополнений формата от IMSHOP.IO и примеры
Общая структура фида (пример)
Описание формата
offers -> offer (атрибуты)
available
- обязательный атрибут. Товары сavailable
=false
не будут отображаться в приложении вне зависимости от каких либо других факторов api / остатков.publishedOn
- дата релиза товара для подключения автоматической сортировки по старым/новым товарамid
- атрибут, идентификатор товарного предложения - обязательна уникальность в рамках каталога.itemPreviewUrl
- атрибут, URL-ссылка на страницу с 3D-моделью товара (на страницу с 3D предпросмотром, не на карточку товара).fraction
- кратность товара, с которой можно добавлять его в корзину. Например, если fraction=0.2, то добавлять в корзину можно только 0.2, 0.4, 0.6 и т.д. единиц товара.fraction необходим для включения функционала. По умолчанию кратность всегда 1 к 1.
Цена указывается за 1 (одну) полную единицу товара (не за 0.2, 0.3 и т.д).
group_id
- атрибут, элемент объединяет все предложения, которые являются вариациями одной модели и должен иметь одинаковое значение. Это идентификатор карточки товара в каталоге.uuid
- атрибут, дополнительный идентификатор товара (например, из 1С).sizeGridImage
- атрибут, URL-ссылка на картинку с размерами для примерки.
offers -> offer (дочерные элементы)
barcode
- штрихкод товара от производителя в одном из форматов: EAN-13, EAN-8, UPC-A, UPC-E. Элемент offer может содержать несколько элементов barcode, в этом случае каждый из штрихкодов передается в отдельном теге.name
- полное название предложения, в которое входит: тип товара, производитель, модель и название товара, важные характеристики. Составляйте по схеме: что (тип товара) + кто (производитель) + товар (модель, название) + важные характеристики.url
- URL страницы товара на сайте магазинаsort
- порядок сортировки по популярностиguid
- параметр необходимый при прямой интеграции mindbox чтобы определять какой товар смотрел юзер. Значение должно быть то же которое настроено в mindboxvendor
- производитель.vendorCode
- код производителя для данного товара.model
- модель и название товара.typePrefix
- тип / категория товара (например, «мобильный телефон», «стиральная машина», «угловой диван»).categoryId
- идентификатор категории товара, присвоенный магазином. Элемент offer может содержать несколько элементов categoryId, в этом случае каждая из категорий передается в отдельном теге.googleProductCategory
- google product category (GPC) taxonomy для товара.param
- все важные характеристики товара — цвет, размер, объем, материал, вес, возраст, пол, и т. д. Элемент offer может содержать несколько элементов param (один элементparam
— одна характеристика), в этом случае каждая характеристика передается в отдельном теге. (при использовании перелинковки цвета отдавать в hex формате или указывать URL изображения в атрибутеitemImage
).picture
- URL-ссылка на картинку товара. Элемент offer может содержать несколько элементов picture, в этом случае каждая из картинок передается в отдельном теге.currencyId
- валюта, в которой указана цена товара: RUR, USD, EUR, UAH, KZT, BYN.price
- актуальная цена товара.priceByCard
- цена товара по скидочной карте (в разработке), должна быть ниже обычной цены. Несовместимо сoldrice
.priceUnits
- единица измерения.oldprice
- старая цена товара, должна быть выше текущей.saleEndsDateIso
- Дата время до окончания акции по аналогии с датой фида у яндекса.retailPrice
- РРЦ товара (цена товара в оффлайне в случае если отличается от price).deferPrice
- цена на случай отсрочки получения, должна быть нижеprice
.listPrice
- необязательно, справочные цены, если нужно показать несколько цен, только для отображения, в расчетах не используются.title
- атрибут, текстовое описание цены.
priceLabel
- текст вместо цены товара для кейса когда товара нет в наличии но есть возможность подписаться на него только для клиентов с elassticSearch
description
- описание предложения.collapsibleDescription
- описание со сворачивающимися блокамиcollapsibleDescription -> section (дочерние элементы)
section (атрибуты)
lang
– локализация (необязательно)expanded
– укажите expanded="true", чтобы секция была развернута по умолчанию. Опционально.
title
– заголовокtext
– описание (поддерживается markdown)
rec
- идентификаторы товаров для блока рекомендаций через запятую. Возможно передавать несколько блоков с подборками товаров, например "Похожие товары", "С этим покупают", "Дополни образ" итд. Для этого следует передать несколько теговrec
с атрибутомtitle
(см пример).
Для товаров из списка рекомендаций, объединённых в группы (см. атрибутgroup_id
), необходимо указывать их идентификатор группы вместо товарного предложения, т.е. значение из group_id="***", а не offer id="***".
maxPromocodeDiscountPercent
- максимальный процент скидки на данный товар, например, по купону. Используется для ограничения размера скидки, например, для товаров с низкой маржинальностью.vat
- значение ставки НДС для товара. Для всех ставок НДС предусмотрены специальные значения.НДС не облагается -
6
илиNO_VAT
0% -
5
илиVAT_0
10% -
2
илиVAT_10
20% -
7
илиVAT_20
useBonuses
- возможность частичной или полной оплаты данного товара с бонусного счета при наличии программы лояльности.overSized
- крупногабаритный товар.preorder
-параметр для товаров по предзаказу.badge
- бейджик на картинке товара. Элемент offer может содержать несколько элементов badge, в этом случае каждый из бейджик передается в отдельном теге. В одном бейдже может быть либо только текстовый вариант, либо только с картинкой. И текст и картинка в одной бейдже быть не могут.textColor
, атрибут, необязательно - цвет текста в формате#rrggbb
bgColor
, атрибут, необязательно - цвет фона для текстового бейджа в формате#rrggbb
link
, атрибут, необязательно - ссылка при нажатии на бейджикposition
атрибут, необязательно - задает позицию бейджа на карточке товара. Возможные значения: top-right, top-left, bottom-left, bottom-righttype
, атрибут, необязательно – позволяет задать дополнительный тип бейджа:wideImage
– бейдж с бóльшим ограничением по ширине (для широких картинок)
video
- видео товара (можно передать несколько). Видео должны быть в формате H.264.main
- еслиtrue
, то видео будет отображаться в слайдере с фотографиями товараtitle
- опциональный заголовок видеоimage
- URL на картинку, которая отображается, пока грузится видео
file
- релевантные документы.title
- названиеsize
(опционально) - вес файла для отображения на кнопке в приложенииicon
(опционально) - иконка для отображения на кнопке в приложенииurl
- ссылка на скачивание
rating
- рейтинг товара для отображения на карточке товара сверху (не путать с хуком отзывов на товары).reviews_count
- количество отзывов для отображения в ячейке и на карточке товара сверху (не путать с хуком отзывов на товары).sizeGridPageUrl
- URL-ссылка на HTML с таблицей размеров (отобразится, если не задан в атрибутах sizeGridImage и нет sizeGridImgUrl в settings)othercolors
- блок товаров "еще в другом цвете", перечислить group Id товаров с альтернативными цветами. Не используется вместе с parentVendorCode.parentVendorCode
- по данному параметру объединяем товары для перелинковки (позволяет добавлять переключаемые параметры на карточку товара) не должен пересекаться с group id, не используется вместе с othercolorsshowMultipleFractionsCounter
- показывать для этого товара двойной пикер: один по единице измерения, который переданpriceUnits
, а второй пикер по упаковкам.fraction
отвечает за количество единиц в упаковке, купить товар можно будет только по упаковкам (в разработке)
categories -> category (атрибуты)
id
- идентификатор категорииparentId
- идентификатор родительской категорииpicture
- URL картинки категорииtextColor
- цвет текста (опционально)backgroundColor
- цвет фона (опционально)universalLink
- URL страницы категории на сайте магазина (опционально)name
- имя категории (обязательно при использовании сегментов в категории, только на тарифах с ElasticSearch)
Размеры с дополнительными юнитами
В случае, если у вас товар имеет размерную сетку с несколькими значениями (US, RU, UK, EUR), можно добавить эти значения в фид, чтобы юзер мог использовать размерную сетку, удобную для себя. Поле не является обязательным.
Вывод таба "Бренды" в приложении
В фиде создается категория бренды, в нее вкладываются подкатегории-бренды. Если какие-то бренды не вложены в основную категорию-они не отобразятся во вкладке.
Если во вкладке с брендами необходимо сделать разделение на сегменты (например: мужчинам, женщинам, детям).
Для вывода "Топ брендов" нужно передать бренды в том порядке, в котором они должны быть отображены:
В чем отличие group_id
и id
?
group_id
- это идентификатор модели товара. Например "Белые Nike Air Max 95". Модель товара представлена в каталоге одной карточкой товара.
id
- идентификатор товарного предложения (конкретного размера / варианта товара). Например "Белые Nike Air Max 95, размер 43" будут иметь свой уникальный id
id
обязательно уникален на весь каталог. "Белые Nike Air Max 95, размер 43" и "Белые Nike Air Max 95, размер 44" будут иметь разные id.
group_id
объединяет (группирует) товарные предложения в одну карточку товара, и является ее идентификатором. "Белые Nike Air Max 95, размер 43" и "Белые Nike Air Max 95, размер 44" будут иметь одинаковый group_id
.
-----
id используется, например, в API пересчета корзины и оформления заказа, так как в этом случае необходимо передавать идентификатор конкретного размера товара, который добавлен в корзину
group_id используется, в API рекомендаций похожих товаров, поиска и подсказок, а также при перелинковке между товарами ("еще в другом цвете"), так как в этом случае мы ссылаемся не на конкретный размер, а на идентификатор модели товара (карточки товара)
Если у товара отсутствуют товарные предложения (всегда доступен в одном варианте), то group_id можно пропустить. В этом случае group_id
будет совпадать с id
.
Если вы все-таки передаете group_id
в фиде, то он не должен совпадать с id
товара
Last updated