Интеграция интернет-магазина с Google Merchant

в 14:34, , рубрики: Веб-разработка, интеграция, интернет-магазин, метки: ,

Здравствуйте,

Хочу поделиться опытом и рассказать о некоторых нюансах.
Для начала немного информации о самой Google Merchant (далее GM). Это сервис от Гугл, в некотором роде — каталог продуктов всяких разных категорий, который позволяет покупателям искать товары, а продавцам, соответственно — выставлять их на показ.
Продукты (информация о них), загруженные в сервис, могут быть использованы в поиске товаров (Google Product Search) рекламе (Google Product Ads, т.е. можно связывать рекламные сообщения сразу с товаром) и при прокладке инфраструктуры (Google Commerce Search).

Процесс

У меня стояла цель загрузить данные о товарах в систему GM, чтобы люди могли их найти в Google Product Search. Для других целей процесс и конечные результаты могут отличаться.

Как это обычно бывает, сервис доступен только для нескольких стран. Загрузка данных может быть с любого места, и продажа с любого, но имеется ввиду, что покупатели территориально должны быть в следующих странах: США, Великобритания, Австралия, Германия, Франция, Япония, Китай, Италия, Нидерланды, Испания.
Такое ограничение накладывается системой Google Checkout, через которую продажа/покупка и происходит.

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

Итак, вся интеграция заключается в регулярных загрузках структурированного файла с расширением xml или txt.
В txt файлах данные должны отделяться через знак табуляции, мне это не понравилось, поэтому использовал XML.

Рассмотрим процесс создания фида (источника данных) и самого xml-файла.
При первом входе в GM система предложит создать свой первый фид и настроить сам “магазин”. Можете настроить сразу, можете оставить на потом — эти данные ни на что не влияют, но их видят все потенциальные покупатели.

Небольшое отступление

В одном “магазине” фидов может быть несколько, каждый ориентирован на определённую страну. Например, можно создать фид для США с определённым набором продуктов, а для Австралии с другим. Соответственно, для покупателей из США будут показаны одни товары, для других — другие.

Для каждой страны фид создаётся отдельно ещё по одной причине — каждому фиду устанавливаются свои настройки цен доставки и налогов.

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

Продолжаем

После созданий фида, мы можем в него загружать данные с помощью xml-файла как вручную (обычная загрузка файла), либо указав URL, откуда его грузить. При втором варианте есть возможность настроить регулярные загрузки, например, раз в неделю, и указать данные авторизации (если есть необходимость).

Сам файл XML должен иметь следующую структуру:

<_?xml version="1.0"?>
<_rss version="2.0" xmlns:g="http://base.google.com/ns/1.0">
<_channel>
<_title>The name of your data feed<_/title>
<_link>http://www.example.com<_/link>
<_description>A description of your content<_/description>
<_item>
<_g:id>1a<_/g:id>
<_title>Some title<_/title>
<_link> example.com/item1-info-page.html<_/link>
<_description>Some text about this product<_/description>
<_g:image_link>http://www.example.com/image1.jpg<_/g:image_link>
<_g:price>25<_/g:price>
<_g:condition>new<_/g:condition>
<_/item>
<_item>
...
<_/item>
<_item>
...
<_/item>
<_/channel>
<_/rss>

(Все теги без подчёркивания. Парсер не даёт вставить нормально, либо я не умею...)
Вся информация по товарам расположена в тегах <_item>....

Как видим, некоторые параметры начинаются с < g:...> — эти параметры обязательные, либо настоятельно рекомендуемые. Например, продукты без < g:id> (идентификационный номер товара в вашем магазине) или < g:price> (стоимость) система даже не примет.
Полный список атрибутов можно посмотреть на этой и этой страницах.

После загрузки и обработки файла система выдаст предупреждения или рекомендации по каждой позиции, по каждому продукту. Например, что у товара недопустимые символы в описании, или не указано изображение, или нет обязательного параметра.

И тут довольно интересный нюанс — каждому продукту можно установить категорию в соответствии с каталогом. И в зависимости от категории, GM после обработки фида может выдать совершенно разные рекомендации для товаров из разных категорий.
Например, для товаров с категорией “одежда” будет предложено дополнить xml-файл полями “размер”, “цвет”, и т.п.
Некоторые поля (бренд, категория, ...) рекомендуются ко всем товарам.

В самой систем GM присутствуют также возможности анализа качества предоставленной информации, просмотр агрегированных отчётов по товарам, и некоторые настройки.
Есть интересная возможность настроить выгрузку файла для фида по FTP, используя сервер uploads.google.com/, или связав акканту с Google Cloud Storage.
Соответственно, можно связать учётную запись с AdWords / Checkout

И последняя интересная деталь — как и во многих других сервисах от Google, доступ к “магазину” можно предоставить другим пользователям с учётной записью Google, разделяя права на просмотр и администрирование.

Подводя итоги, кратко процесс таков:

  • Настраиваем сам магазин.
  • Создаём фид для определённой страны.
  • Генерируем xml-файл с данными от товарах.
  • Загружаем его вручную, либо указываем, откуда его загружать.
  • Исправляем ошибки, загружаем снова.

Если всё в порядке, то вскоре товары будут доступны для поиска и связки с рекламой.

Спасибо за внимание.

P.S. Премного благодарен НЛО за инвайт.

Автор: neTpyceB

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js