Дано
- Интернет-магазин, который продаёт иностранную продукцию
P.S.
*Так как продукция иностранная — мы покупаем товар за иностранную валюту.
**Так как мы торгуем в России — цена в магазине указывается в рублях.
Задача
Нам нужно следить за курсом и своевременно обновлять цену в рублях в магазине, чтобы не нести убытки.
Если мы продаём 100 и более разных наименований, мы будем тратить слишком много времени только на то, чтобы поддерживать цены соответствующими курсу. (но это так, лирическое отступление, чтобы читатель проникся актуальностью)
Ниже представлено описание библиотеки с клиентом для подключения к Ozon Seller API на гугл-скриптах, она включает в себя следующие функции
- apiClient() — функция для инициализации клиента, в качестве аргументов принимает объект с полями accountId, apiKey и useTestApi (useTestApi необязательный, если указать “useTestApi: true ” — клиент подключится к “песочнице”). Ссылка на документацию клиента внизу статьи.
2. extractPricesAndName(item) — функция для обработки объектов с данными о товарах из API, в качестве аргумента принимает объект с данными о товаре. Возвращает массив из артикула, имени и цен товара.
3. getDemoItems() — функция для вывода информации об “учебных” товарах из песочницы Озон
4. init() — функция для добавления нового пункта в меню таблицы
Первым делом, копируем вот эту таблицу . В таблице я реализовал небольшую демонстрацию работы инструмента. Можно получить 5 “учебных” товаров из песочницы Озона и попробовать поменять их цены. Выбираем в меню таблицы “Ozon” => “Получить пример данных”
После этого появится окно с запросом на предоставление прав доступа скрипту, необходимо будет согласиться и дать соответствующие разрешения.
Инструкция о том, как это сделать
После того, как необходимые разрешения приложению предоставлены, нажимаем на кнопку “Получить пример данных” еще раз. Будет создан лист с названием “Ozon_demo” и на него загрузятся данные о пяти товарах “учебного магазина”.
Товары в Озоне могут быть идентифицированы по артикулам, это поле называется “offer_id” .
У каждого товара на Озоне можно управлять следующими ценами:
- ценой товара — по ней товар можно купить на сайте Ozon (“price” );
- ценой до скидки — она будет показываться зачеркнутой, и покупатели увидят скидку в процентах (“old_price” );
- ценой с Ozon Premium — по ней смогут купить товар подписчики Ozon Premium (“premium_price” ).
Вот вам ссылка на инструкцию по управлению ценами на Озон
Особое внимание обратите вот на этот пункт
Таким образом, зная артикул товара мы можем поменять любую из этих цен или сразу все. Все эти значения нужно отразить в нашей таблице, названия столбцов могут быть любыми, располагаться они могут в любом порядке, главное чтобы были на одном листе.
Для обновления цен в таблице уже написана функция “updatePrices() ”
В исходном варианте эта функция работает с демо-данными, которые мы загрузили из учебного магазина на прошлом этапе. И сейчас мы можем посмотреть как все это работает. Для этого достаточно изменить цены, которые загрузились вместе с товарами.
Напоминаю про ограничения Озона, применяемые к ценам. Поэтому лучше менять на пару единиц, а не на тысячу.
Для наглядности рекомендую удалить данные с листа, иначе будет незаметно, записались ли это новые цены из магазина или остались те, которые мы изменили самостоятельно.
И нажать на пункт “Обновить цены в Ozon” в меню таблицы. Будут снова загружены данные о товарах с новыми ценами.
Вам остается только заполнить таблицу своими данными, а в функции “updatePrices()” в редакторе скриптов указать ключи для работы с API, изменить название листа и позиции столбцов, в которых у вас находятся соответствующие значения.
Пару слов о том, как это работает
Я написал библиотеку с клиентом для подключения к API. Ключ библиотеки: “MRne8ssDBDdrGwO-vKd-Mjfp6K4dVRFHJ”, он пригодится вам для подключения библиотеки к скриптам таблиц. Для желающих посмотреть код и документацию к библиотеке — я выложил текущую версию вот сюда: api.googlesheets.ru , также она в публичном доступе в моем профиле gitHub .
Если у вас есть какие-то вопросы по работе клиента, API Ozon Seller , предложения по улучшению работы, то буду рад выслушать.
Материал опубликован с письменного разрешения автора by @GoogleSheets_ru. Первоисточник статьи здесь