Яндекс.Маркет

Модуль продаж через Яндекс.Маркет, включает расширенные параметры выгрузки товарных предложений в файл YML и поддержку моделей работы DBS и FBS.

Чтобы включить модуль, зайдите в панель управления вашего сайта и в верхнем меню выберите пункт Модули → Управление модулями → Яндекс - Яндекс.Маркет - Включить.

1. Настройки параметров размещения в Яндекс.Маркете

Модель ADV

Модель используется для рекламы товарных предложений в Яндекс.Маркете с возможностью перейти на ваш сайт для оформления заказа и доставки.

Настройки в партнерском интерфейсе Яндекса

В поле "Прайс-лист" указать адрес YML файла: https://имя_сайта.ru/yml/

Настройка модуля

  1. В модуле выбрать Модель работы ADV. Нажать кнопку Сохранить

  2. Поле пароль защищает от несанкционированной кражи контента. При использовании пароля ссылка на файл YML примет вид https://имя_сайта.ru/yml/?pas=*******. При использовании пароля требуется так же заменить ссылку в Яндекс.Маркете.

  3. Флаг SSL добавляет к ссылкам на товар протокол HTTPS.

  4. Колонка цен служит для вывода дополнительных цен из карточки товара.

Модель DBS

Модель DBS доступна только для редакции Pro.

Модель используется для продажи товарных предложений в Яндекс.Маркете с доставкой магазина. Все операции по заказу проводятся на стороне Яндекс.Маркет. Заказ может поступать в админпанель магазина.

Настройки в партнерском интерфейсе Яндекса

  1. В личном кабинете Яндекс.Маркет откройте Ассортимент/Автоматическое обновление каталога, укажите адрес YML файла: https://имя_сайта.ru/yml/

  2. В разделе Настройки/Выбор способа подтверждения, выберите Как вы будете подтверждать заказы значение Через API.

  3. В разделе Настройки/Настройка API, укажите в поле URL для запросов API значение https://имя_сайта.ru/phpshop/modules/yandexcart/api.php

  4. В разделе Настройка API заполните SHA1-отпечаток SSL-сертификата, его необходимо взять из информации о SSL сертификате вашего сайта.

  5. В разделе Настройка API выберите Тип авторизации URL.

  6. В разделе Настройка API включите Автоматическое обновление данных об остатках товаров.

  7. В личном кабинете Яндекс.Маркет нажать на название магазина, скопировать значение Кампания № в поле Идентификатор кампании настроек модуля.

  8. Настроить соответствие статусов заказа в Яндекс.Маркет со статусами заказа в интернет-магазине. При изменении статуса заказа на статус, соответствующий статусам "Статус передан в службу доставки", "Заказ доставлен в пункт самовывоза", "Статус доставлен", "Магазин не может выполнить заказ", "Покупатель решил заменить товар другим по собственной инициативе", "Покупатель отменил заказ по собственным причинам" будет изменен статус заказа в Яндекс.Маркете.

  9. Настроить соответствие способов оплаты в Яндекс.Маркет со способами оплаты в интернет-магазине.

Настройка модуля

Для настройки модуля на стороне магазина нужно:

  1. Выбрать Модель работы DBS. Нажать кнопку Сохранить

  2. Поле пароль защищает от несанкционированной кражи контента. При использовании пароля ссылка на файл YML примет вид https://имя_сайта.ru/yml/yandex.php?pas=*******. При использовании пароля требуется так же заменить ссылку в Яндекс.Маркете.

  3. Флаг SSL добавляет к ссылкам на товар протокол HTTPS.

  4. Колонка цен служит для вывода дополнительных цен из карточки товара.

  5. В личном кабинете Яндекс.Маркет открыть Настройки/Настройка API скопировать Авторизационный токен в поле Авторизационный токен API в настройках модуля.

  6. Чтобы использовать протокол OAuth при работе с партнерским API, вам необходимо Зарегистрировать свое приложение. Обязательно необходимо ввести название приложения, оно может быть любым. В разделе Платформы установить галочку Веб-сервисы, под полем Callback URI #1 нажать Подставить URL для разработки. В разделе Доступы выбрать Яндекс.Маркет и установить галочку API Яндекс.Маркета для партнеров. Нажать Создать приложение. После создания приложения, вам будет доступен идентификатор приложения client_id. Необходимо перейти по ссылке https://oauth.yandex.ru/authorize?response_type=token&client_id=ваш client_id заменив в ней ваш client_id на полученный client_id. Полученный client_id вписать в поле D приложения Яндекс.OAuth, а OAuth-токен в поле OAuth-токен настроек модуля.

  7. Настроить соответствие статусов заказа в Яндекс.Маркет со статусами заказа в интернет-магазине согласно инструкции Яндекса.

  8. Настроить соответствие способов оплаты в Яндекс.Маркет со способами оплаты в интернет-магазине.

Модель FBS

Модель FBS доступна только для редакции Pro.

Модель используется для продажи товарных предложений в Яндекс.Маркете с использованием хранения и доставки Яндекс.Маркета. Все операции по заказу проводятся на стороне Яндекс.Маркет, заказ поступает в админпанель магазина.

Настройки в партнерском интерфейсе Яндекса

  1. В личном кабинете Яндекс.Маркет открыть Настройки/Выбор способа подтверждения, выбрать Как вы будете подтверждать заказы значение Через API

  2. В личном кабинете Яндекс.Маркет открыть Настройки/Настройка API, указать в поле URL для запросов API значение https://имя_сайта.ru/phpshop/modules/yandexcart/api.php

  3. В разделе Настройка API заполнить SHA1-отпечаток SSL-сертификата, его необходимо взять из информации о SSL сертификате вашего сайта.

  4. В разделе Настройка API выбрать Тип авторизации URL.

  5. В разделе Настройка API включить Автоматическое обновление данных об остатках товаров.

Настройка модуля

  1. В модуле выбрать Модель работы FBS. Нажать кнопку Сохранить

  2. В личном кабинете Яндекс.Маркет открыть Настройки/Настройка API скопировать Авторизационный токен в поле Авторизационный токен API в настройках модуля.

  3. В личном кабинете Яндекс.Маркет открыть Настройки/Настройка API, указать в поле URL для запросов API значение https://имя_сайта.ru/phpshop/modules/yandexcart/api.php

  4. Чтобы использовать протокол OAuth при работе с партнерским API, вам необходимо Зарегистрировать свое приложение. Обязательно необходимо ввести название приложения, оно может быть любым. В разделе Платформы установить галочку Веб-сервисы, под полем Callback URI #1 нажать Подставить URL для разработки. В разделе Доступы выбрать Яндекс.Маркет и установить галочку API Яндекс.Маркета для партнеров. Нажать Создать приложение. После создания приложения, вам будет доступен идентификатор приложения client_id. Необходимо перейти по ссылке https://oauth.yandex.ru/authorize?response_type=token&client_id=ваш client_id заменив в ней ваш client_id на полученный client_id. Полученный client_id вписать в поле D приложения Яндекс.OAuth, а OAuth-токен в поле OAuth-токен настроек модуля.

  5. В личном кабинете Яндекс.Маркет нажать на название магазина, скопировать значение Кампания № в поле Идентификатор кампании настроек модуля.

  6. Настроить соответствие статусов заказа в Яндекс.Маркет со статусами заказа в интернет-магазине согласно инструкции Яндекса.

  7. Настроить соответствие способов оплаты в Яндекс.Маркет со способами оплаты в интернет-магазине.

  8. Заполнить необходимые данные у товаров (см. раздел Настройка товара).

  9. Экспортировать товары в Яндекс.Маркет кнопкой Экспортировать данные).

2. Настройки в карточке товара

В карточке редактирования товара Товары → Товары, в закладке Яндекс.Заказ , укажите параметры вывода товара для Яндекс.Маркета:

  • Модель - модель товара. У Яндекс.Маркет есть два типа торговых предложений. Упрощенный тип и Произвольный: https://yandex.ru/support/partnermarket/offer-general.html Если заполнены поля "Модель" и "Имя производителя" используется произвольный тип с vendor, typePrefix и model, иначе - упрощенный тип без них. Если вам нужен упрощенный тип - не заполняйте одно из этих двух полей.

  • Опция вывода наличия у товара Гарантии производителя

  • Имя производителя - официальное имя производителя товара.

  • Комментарий – используется для информации о минимальной сумме заказа, минимальной партии товара, необходимости предоплаты (указание элемента обязательно) или вариантах оплаты, описания акций и распродаж. Допустимая длина текста в элементе — 50 символов

  • Опция вывода страны производства

  • Опция принадлежности к товарам для взрослых. Обязателен для обозначения товара, имеющего отношение к удовлетворению сексуальных потребностей, либо иным образом эксплуатирующего интерес к сексу

  • Возможность курьерской доставки товара

  • Возможность самовывоза товара из пунктов выдачи

  • Возможность покупки товара в розничном магазине

  • Для размещения по модели FBS у товаров необходимо заполнить Вес, Длина, Ширина, Высота на вкладке Основное. И параметры Компания производитель, адрес и рег. номер (если есть), Страна производства на вкладке Яндекс.

Пакетная обработка товаров

Для пакетного изменения данных по товарам можно воспользоваться опцией Редактировать выбранные. Также можно воспользоваться меню База - Импорт данных/Экспорт данных.

3. Настройка в меню доставки

В меню Заказы - Доставка нужно открыть нужную доставку и указать:

  1. В карточке редактирования доставки в закладке Яндекс.Заказ настроить дополнительные параметры вывода для Яндекс.Маркета.

  2. Настроить максимальное количество дней доставки.

  3. Настроить опцию вывода доставки для Яндекс.Маркета.

  4. Настроить опцию принадлежности доставки только для локального региона.

  5. Настроить параметр типа доставки (Курьерская, Самовывоз или Почта).

  6. Для режима DBS необходимо включить нужные способы доставки для Яндекс.Маркета. Необходимо нужным способам доставки выбрать значение Яндекс.Заказ Включить.

  7. Для режима DBS можно выбрать, для какого региона будет отображаться способ доставки. Необходимо заполнить поле Регион доставки.

  8. Для режима DBS и Способа доставки Самовывоз обязательно нужно выбрать минимум одну Точку продаж. Точки продаж необходимо создать в личном кабинете Яндекс.Маркет.

4. Настройка характеристики

В меню Товары - Характеристики откройте нужную характеристику и уточните:

  1. В карточке редактирования характеристики в закладке Яндекс.Заказ настроить дополнительные параметры вывода для Яндекс.Маркета.

  2. Настроить опцию вывода характеристики для для Яндекс.Маркета. Выделенная характеристика выводится в YML файле в тегах "Param"

  3. Настроить единицу измерения для числовых параметров (дюйм, Мб, кг и т.д.)

Дополнительные возможности модуля

  1. Выгрузка стоимости доставки для каждого товара в Яндекс.Маркет на основе формулы расчета доставке по весу товара.

  2. Выгрузка тега бренда.

  3. Выгрузка параметров товара из характеристик.

  4. Выгрузка старой цены товара.

  5. Выгрузка веса товара.

Маркетплейсы

Для вывода товаров в дополнительные маркетплейсы используется секция настроек в карточке редактирования товара в закладке Яндекс.

СДЭК МАРКЕТ

Для выгрузки товаров в СДЭК МАРКЕТ следует использовать ссылку https://имя_сайта/yml/?amountи отметить нужный товар галочкой Вывод в СДЭК.МАРКЕТ в закладке Яндекс.

Google Merchant

Для выгрузки товаров в Google Merchant следует использовать ссылку https://имя_сайта/rss/google.xmlи отметить нужный товар галочкой Вывод в Google Merchant в закладке Яндекс.

В Google Merchant могут быть выведены дополнительные характеристики товара из модуля:

  1. Имя производителя - g:brand

  2. Код производителя - g:mbn

  3. Штрихкод - g:gtin

  4. Состояние товара - g:condition

AliExpress

Для выгрузки товаров в AliExpress следует использовать ссылку https://имя_сайта/yml/?aliexpressи отметить нужный товар галочкой Вывод в AliExpress в закладке Яндекс.

СберМаркет

Для выгрузки товаров в СберМаркет следует использовать ссылку https://имя_сайта/yml/?sbermarketи отметить нужный товар галочкой Вывод в СберМаркет в закладке Яндекс.

Дополнительные параметры

  1. /yml/?ssl - ссылки на товары будут с HTTPS.

  2. /yml/?getall - выгрузка всех товаров без учета флага YML. Выгрузка всех изображений. Используется для обмена информации с CRM и другими сервисами.

  3. /yml/?from=yml - метка в ссылки товара from для учета захода с Яндекс.Маркета

  4. /yml/?search - режим Яндекс.Поиска по сайту.

  5. /yml/?utf - вывод в кодировке UTF-8

  6. /yml/?retailcrm - выгрузка для RetailCRM

  7. /yml/?price выгрузка колонок цен (1/2/3/4/5)

  8. /yml/?available - выгрузка только в наличии

Пример учета нескольких параметров в одной ссылке:https://shopname/yml/?pas=123&ssl&getall&fbs

SQL запросы для пакетной обработки

Для использования SQL команд в большинстве случаев помогает штатная возможность панели управления магазином База - SQL запрос к базе.

#

SQL

Описание

1

update phpshop_products set manufacturer_warranty='1';

Включение гарантии в Яндекс.Маркете для всех товаров

2

update phpshop_products set sales_notes="Минимальная партия - 1шт; минимальная сумма заказа - 1000 руб.";

Добавляем комментарий ко всем товарам для Яндекс.Маркета

3

update phpshop_products set country_of_origin="Беларусь";

Добавляем страну производителя ко всем товарам для Яндекс.Маркета

4

update phpshop_products set yml='0' where price<1 or items<1;

Замена статуса участие в Яндекс.Маркете (убрать из выгрузки) при пустом складе или нулевой цене

5

update phpshop_products set yml='1' where price>0 or items>0;

Замена статуса участие в Яндекс.Маркете (добавить в выгрузку) при положительном складе или нулевой цене

6

update phpshop_products set p_enabled='1' where items>0;

Замена статуса участие в Яндекс.Маркете (убрать под заказ) при положительном складе

7

update phpshop_products set yml='0' where pic_big="" or pic_big="0";

Замена статуса участие в Яндекс.Маркете (добавить в выгрузку) при отсутствии изображения

Стандартные ошибки YML

Не загружается прайс-лист на площадку Яндекс.Маркет: Ошибки при разборе файла: Фатальная ошибка: Ошибка парсинга XML: Error parsing XML feed: Start tag expected, '<' not found ( ) (строка 1, столбец 1)

В настройках модуля Яндекс.Маркет включена защита ссылки YML паролем, а новая ссылка с паролем типа http://shopname.ru/yml/yandex.php?pas=******* в Яндекс.Маркете не указана.

Не получается подключиться к Яндекс-Маркету. При проверке файла Яндекс пишет: "Внимание! Прайс-лист содержит ошибки. Определена кодировка: windows-1251 (строка 0, столбец 0) Дата из файла: 2020-06-14 02:06 (строка 3, столбец 38) Ошибка: Обнаружен цикл в дереве категорий: категория 21 ссылается на категорию 21 (строка 8, столбец 7722) Фатальная ошибка: Фид отклонен"

При заполнении каталога была допущена ошибки и каталог А стал ссылаться на самого себя, что приводит к цикличности и ошибки проверки.

Исходя из указанного "зависшего каталога" с ID=21, выполним его удаление через панель управления магазином. Для этого выберете База - SQL запрос к базе - под основным окном в выпадающем меню выбираем Удалить каталог. После знака = ставим ID каталога и жмем клавишу ОК (в нашем случаи указываем 21).

Размещение Вашего магазина было приостановлено за повторяющиеся ошибки в прайс-листе. Фатальная ошибка: Ошибка парсинга XML: Error parsing XML feed: Expected entity name for reference (строка 8817, столбец 320) Формат XML требует соблюдения правил заполнения описания товара.

Открываем свой файл для Яндекс Маркета http://имя сайта/yml/yandex.php любым браузером. Нажимаем в меню браузера опцию "Просмотр исходного кода страницы" и переходит к указанной строке (у нас указано в ошибке строка 8817). В этой строке нарушен синтаксис XML. Пример:

<offer id="1781" type="book" available="true">
<url>http://shop.ru/shop/UID_1781.html?from=yml</url>
<price>850</price>
<currencyId>RUR</currencyId>
<categoryId>25</categoryId>
<picture>http://shop.ru/UserFiles/Image/img1781_16198s.jpg</picture>
<name>Служебник.</name>>
<description>&nbsp;&nbsp;Аналойный, церковнославянский язык, двухцветная печать.</description>
</offer>

Ошибку вызывает тег

<description>
&nbsp;&nbsp; Аналойный, церковнославянский язык, двухцветная печать.
</description>

Нужно узнать номер товара (offer id="1781"), найти его через админ-панель магазина через поиск 1781 и отредактировать описание товара, убрав лишние символы &nbsp;&nbsp;. Если символы не видны в визуально редакторе, то перейти в режим html редактора. Сохранить изменения и отправить Яндексу на анализ снова.

Скачивание большого файла YML

При обнаружение ошибки в YML файла, Яндекс.Маркет показывает справочную информацию в какой строке обнаружена ошибка. Для анализа ошибки в файле yml следует его предваритеьно скачать и открыть любам текстовым редакторов, например Блокнотом.

Если товаров в магазине менее 10 000, то yml файл без проблем скачивается через браузер, иначе могут возникнуть сложности при его загрузке из-за большого объема и нехватки памяти для браузера.

Для скачивание больших YML файлов можно воспользоваться командой:

wget https://имя_сайта/yml/

Если используется Windows, то нужно предварительно установить программу PowerShell и выполнить Пуск - Командная строка.

powershell
wget https://имя_сайта/yml/ -outfile yandex.xml

В результате, через некоторое время (зависит от объема файла) в корне пользовательской папки C:\Users\ИмяПользователя появится файл yandex.xml для дальнейшего анализа по номеру строки. Для быстрого перехода на нужный номер строки используйте вызов меню перехода следующее сочетание клавишCtrl+G.

Модели DBS и FBS доступны для версии PHPShop 6.1.4+ и только для редакции PHPShop Pro.