Получите сайт "под ключ" за 20 дней: удобный функционал, современный дизайн, более
200 интеграций
для бизнеса Реклама. ООО «Инсейлс Рус»‎ ИНН 771484376 erid: 2Ranynxjx8G
Запустим бизнес на маркетплейсах «под ключ» за 14 дней: настройка аккаунта, заведение товаров, сопровождение эксперта
Реклама. ООО «Инсейлс Рус»‎ ИНН 771484376 erid: 2RanyoG1Dct

Выгрузка товаров на Kaspi.kz

Данный тип выгрузки позволяет выгружать торговые предложения на Kaspi.kz — крупнейший маркетплейс Казахстана.

  1. Начало работы
  2. Подготовка прайс-листа 
  3. Настройка параметров выгрузки
  4. Настройка шаблона выгрузки
  5. Настройка торговых предложений
  6. Работа с переменными в выгрузке
  7. Примеры кода

Начало работы

Для начала работы необходимо иметь активированный и настроенный личный кабинет продавца Kaspi.kz. 

Подготовка прайс-листа 

Kaspi.kz поддерживает автоматическую загрузку торгового каталога — ссылка на настроенную XML-выгрузку указывается в личном кабинете продавца, после чего площадка каждые 30 минут проверяет прайс-лист на наличие обновлений. 

Выгрузка создана на основе произвольной YML-выгрузки, что дает возможность гибкой настройки шаблона и блока Offer с помощью переменных.

Важно: скрытые в inSales товары не добавляются в выгрузку.

Создайте выгрузку в панели администратора в разделе Товары → Товарные выгрузки:

Настройка параметров выгрузки

Задайте название выгрузки. Оно нужно, чтобы в списке выгрузок можно было легко найти нужную.

Выберите категории, товары из которых должны быть в выгрузке.

Укажите ID Партнера. Он используется только для внутренних настроек, для клиентов недоступен.

Укажите название магазина, каким его должны увидеть покупатели на сайте.

В блоке "Параметры" для выгрузки необходимо выбрать необязательные параметры, которые используются в блоке Offer. Kaspi принимает только один такой необязательный параметр — Бренд, но необходимо подключать и параметры, которые используются для формирования самого перечня предложений. 

Следующий блок параметров определяет:

1. Исключать ли из выгрузки товары, которых нет в наличии. Товары рекомендуется не выгружать, так как Kaspi.kz не обрабатывает отсутствующие товары.

2. Выгружать ли товары с вариантами. 

Настройка шаблона выгрузки

В поле "Шаблон выгрузки" содержится описательная часть выгрузки, включающая данные продавца и ссылку на описание структуры XML документа.

Важно: для редактирования шаблона нужно точно понимать принцип его работы.

Настройка торговых предложений

Данный блок позволяет настроить шаблон и правила, по которым будет производиться настройка торговых предложений (блок Offer).

Технические требования по содержимому блока Offer

Требования к элементам формата XML:

  1. В <offers> содержится список товарных предложений магазинов. Каждое товарное предложение описывается отдельным элементом offer.
  2. Атрибут sku offer — идентификатор товарного предложения. Атрибут может содержать только цифры и латинские буквы. Максимальная длина sku — 20 символов. Идентификатор предложения должен быть уникальным среди всех товарных предложений одного прайс-листа. Один из вариантов заполнения sku  артикул товара в системе Партнера.
  3. <model> — Содержит в себе название товара (обязательный элемент).
  4. <brand> — Производитель товара (необязательный).
  5. <availabilities> — Пункты самовывоза товаров.
  6. В атрибуте storeId элемента <availability> указывается уникальный идентификационный номер пункта самовывоза, в атрибуте available элемента <availability> указывается наличие товара: yes в случае наличия товара или его отсутствие no. Атрибуты указываются для каждого пункта отдельно. storeId пункта заполняется партнером, но необходимо отдельно сообщить менеджеру соответствие storeId и адреса пункта самовывоза. storeId - это ID партнера, который выдается при регистрации в Kaspi и указан в личном кабинете.
  7. <cityprice> — Цена, включающая НДС, по которой данный товар можно приобрести в пунктах самовывоза определенного города. В атрибуте cityId элемента cityprice указывается id города в соответствии с таблицей приведенной ниже. Для каждого города атрибуты указываются отдельно. Доступны только те города, которые были указаны при регистрации Партнера и в которых возможна покупка на KaspiShopping; (Элемент cityprice используется если одни и те же товары имеют разные цены в разных городах)
  8. <price> — Цена, включающая НДС, по которой данный товар можно приобрести в пунктах самовывоза любого города. (price используется если товар имеет одинаковую цену во всех городах или товар продается только в одном городе).

Требования к формату цены

  • цена не должна содержать пробелов (разделителей);
  • цена не должна содержать десятичных знаков;
  • цена не должна содержать посторонних символов (например, знак тнг.).

Работа с переменными в выгрузке

Kaspi.kz на данный момент не поддерживает передачу необязательных параметров (кроме параметра Бренд), но имеется возможность использовать подключенные параметры в качестве переменных для гибкой настройки выгрузки.

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

  1. account
  2. marketplace
  3. currencies
  4. product
  5. variant
  6. collection
  7. promo
  8. Примеры кода

account

Настройки аккаунта. В переменной содержатся параметры из настроек аккаунта:

account.phone — телефон из настроек аккаунта

account.title — название интернет-магазина из настроек аккаунта

account.email — e-mail магазина

account.url — URL магазина

marketplace

marketplace.shop_name — значение поля "" в настройках выгрузки

marketplace.company — значение поля "Название компании" в настройках выгрузки

marketplace.shop_name — основной домен вашего магазина

currencies

currency.id — код данной валюты (USD, EUR и т.д.)

currency.rate — курс валюты, указанный в Настройки → Валюты для данной валюты

currency.plus — надбавка к курсу, указанная в Настройки → Валюты для данной валюты

product

Товар из каталога на сайте

product.id — идентификатор товара (уникальный числовой номер)

product.handle — пермалинк товара (название товара в URL)

product.title — название товара

product.available — наличие товара

product.price — цена товара (минимальная цена, если несколько модификаций)

product.price2, product.price3, ..., product.price(n) — вторая и последующая цена товара (при использовании типов цен)

product.old_price — старая цена товара (цена до скидки)

product.cost_price — закупочная цена

product.currency_id — код валюты товара

product.short_description — краткое описание товара

product.description — описание товара

product.raw_description — полное описание товара с HTML-тегами использованием XML-escape символов

product.original_description — полное описание товара с HTML-тегами для CDATA. Пример применения:

<description><![CDATA[{{ product.original_description }}]]></description>

product.image_urls — массив ссылок на изображения

product.images.last.url — последнее изображение товара

Проверка наличия изображений у товара:

{% if product.images.size %} ... {% endif %}

product.sku — артикул первой модификации

product.dimensions — габариты товара. Кроме того отдельно данные можно вывести по product.dimensions.width product.dimensions.depth и product.dimensions.height

product.vat налоговая ставка товара

product.properties — массив параметров товара с единственным или одним из значений (product.properties.vendor — возвращает сразу значение параметра с handle vendor)

Вывод всех параметров выгрузки с единственным или одним из значений:

{% for property in product.properties %}
<param name="{{property[0]}}">{{property[1]}}</param>
{% endfor %}

product.full_properties — массив параметров товара со всеми их значениями

Вывод всех параметров выгрузки со всеми значениями:

{% for property in product.full_properties %}
<param name="{{ property.title }}">{% for item in property.characteristics %}{{ item.title }}{% unless forloop.last %}, {% endunless %}{% endfor %}</param>
{% endfor %}

Вывод конкретного параметра:

{% for item in product.full_properties.handle.characteristics %}{{ item.title }}{% unless forloop.last %}, {% endunless %}{% endfor %}

product.supplementaries — массив сопутствующих товаров

В них работают те же переменные, что и у обычных товаров.

Вывод всех сопутствующих товаров:

{% if product.supplementaries.size > 0 %}
<rec>{{product.supplementaries | map: "id" | join: ","}}</rec>
{% endif %}

product.fields — массив доп. полей товара (product.fields.book - возвращает сразу значение поля с handle book)

product.canonical_collection — объект коллекция

product.variants — массив объектов модификаций

product.market_category — категория из спец. параметра  "Категория Яндекс Маркета"

Вывод всех категорий Яндекс Маркета: 

<categoryId>{% if product.market_category %}{{ product.market_category.id }}{% else %}{{collection.id}}{% endif %}</categoryId>

(market_category - возвращает объект со свойствами id, parent_id и name)

product.properties.kategoriya-tovara-v-google — значение параметра "Категория товара в Google"

product.variants.first — первый вариант товара

product.variants[n] — n-ый вариант товара

Вывод дополнительных полей товара:

<param name="Видео с YouTube">{{ product.fields['youtube'] }}</param>

variant

Модификации товара

variant.id — id модификации

variant.title — название модификации. Например “Красный / 36"

variant.sku — артикул модификации

variant.quantity — остаток модификации

variant.price — цена модификации

variant.price2, variant.price3, ..., variant.price(n) — вторая и последующая цена модификации (при использовании типов цен)

variant.old_price — старая цена модификации

variant.cost_price — закупочная цена модификации

variant['Название свойства'] — Получение значений модификации

Вывод свойства "Размер":

{% if variant['Размер'] %}
<param name="Размер">{{ variant['Размер'] }}</param>
{% endif %}

Вывод всех свойств товара:

{% for option in product.option_name_titles %}
<param name='{{ option }}'>{{ variant[option] }}</param>
{% endfor %}

variant.barcode — штрих-код модификации

variant.image.url — ссылка на изображение модификации

variant.weight — вес модификации

variant.dimensions — габариты модификации

collection

Переменная collection, соответствует категории из каталога товаров.

collection.id — id коллекции

collection.handle — пермалинк коллекции

collection.title — название категории

collection.parent_id — id родительской категории 

promo

promo.id — идентификатор акции

promo.start_date — дата начала акции

promo.end_date — дата окончания акции

promo.description — описание акции

promo.url — ссылка на описание акции

promo.code — купон акции

promo.percent? — является ли скидка по акции процентной

promo.discount — размер скидки по акции

promo.matching_offers_ids — массив товаров подпадающих под акции. 

Вывод массива товаров, попадающих под акции:

{% for offer_id in promo.matching_offers_ids %}
<product offer-id="{{offer_id}}" />
{% endfor %}

Примеры кода

Если в произвольную выгрузку необходимо добавить вывод всех вариантов товаров, то нужно все содержимое блока Offer "обернуть" в цикл:

{% for variant in product.variants %}
[здесь тег <offer> и его содержимое]
{% endfor %}

Тег <offer> при выгрузке всех вариантов товара:

<offer type='vendor.model' available='{% if variant.quantity != 0 %}true{% else %}false{% endif %}' {% if product.variants.size > 1 %}id='{{ variant.id }}' group_id='{{ product.id }}'{% else %}id='{{ variant.id }}'{% endif %}>

Тег <url> при выгрузке всех вариантов товара:

<url>{{ account.url }}/product/{{ product.handle }}{% if product.variants.size > 1 %}?variant_id={{ variant.id }}{% endif %}</url>

Важно: если нужно дописать utm-метку в тег <url>, то амперсант (&) нужно записывать как "&amp;".

Оставить оценку

Оценка успешно отправлена.
Она будет проверена администратором перед публикацией.
Перед публикацией все оценки проходят модерацию

Оценки: 1

Комментарий
Все классно расписано но ничего не понятно, спасибо :)
Остались вопросы?
Отправь тикет в техподдержку!
Еще нет своего магазина?
Создайте интернет-магазин на платформе inSales
Всё для продаж уже внутри!
Нажимая кнопку «Зарегистрироваться», я принимаю Пользовательское соглашение и Политику конфиденциальности
Недавно просмотренные статьи
Продолжая пользоваться сайтом,
вы соглашаетесь с использованием cookie