Разработан компонент для интеграции сайта с маркетплейсом Ozon (выгрузка товаров из XML, поддержание цен и остатков в актуальном состоянии, получение заказов). Будет полезно тем, кто работает с данной площадкой или рассматривает начало такой работы. В целом тема довольно интересная.
Внимание: вышла новая версия 2.x !
На основе накопленных наработок запущен и тестируется сервис
tovaroved.net!
Начало работы с Ozon позволит Вам задействовать ещё один канал сбыта и тем самым, соответственно, увеличить свой товарооборот и прибыль. Здесь можно посмотреть подробней про работу с Озоном: business.ozon.ru
Разработанный компонент является расширением для CMS Joomla. Но это можно использовать вообще независимо от CMS Вашего сайта.
И независимо от вида расширения для интернет-магазина (VirtueMart, JoomShopping, HikaShop и т.д.).
В качестве исходных данных компонент принимает обновляемый XML файл. Настроить подготовку такого файла можно, используя любую CMS или вообще без сайта (напрямую из товаро-учётной порграммы, например, 1С). Также можно работать на основании файлов поставщиков, не имея ни сайта, ни товаро-учётной программы, способной к выгрузке данных.
Компонент IR XML2Ozon обрабатывает данные XML файла (или нескольких файлов) и взаимодействует с Озоном.
Внимание: если у Вас нет подходящего обновляемого XML файла - это не
проблема.
Главное - чтобы данные были. А формат - это уже вопрос решаемый. Например,
можно настроить приём данных в форматах: CSV, XLS или XLSX (Excel), JSON. В
таких случаях настраивается промежуточный скрипт, который в автоматическом
режиме преобразует формат для работы компонента.
Основные функции
Текущая версия компонента позволяет:
-
Отправлять новые товары на Озон
(с характеристиками, если сведения о них имеются).
Можно отправлять все товары из файла или только нужные товары; -
Добавлять отсутствующие в XML характеристики,
всем товарам одинаково или в зависимости от категории; - Обновлять данные ранее загруженных товаров на Озон;
- Автоматически обновлять цены товаров на Озон (включая перечёркнутые цены и со скидками);
- Автоматически обновлять остатки товаров на Озон;
- Автоматически импортировать заказы с Ozon.
По поводу цен, кстати, стоит добавить, что их можно для Озона сделать не такими, как у Вас на сайте, а другими. Если это имеет смысл в Вашей ситуации.
Дополнительные функции
- Получить список всех возможных Категорий на Озон;
- Получить список всех возможных Характеристик товаров для определённой Категории Озон;
- Получить список всех возможных Значений для определённой Характеристики на Озон;
- Получить полную информацию о нашем товаре с Озона;
- Быстро отправить Остатки (наличие) для некоторых товаров;
- Получить состояние задачи на импорт номенклатуры;
- Анализ данных в XML файле (структура категорий, варианты для определённой характеристики и прочее).
Также в контексте Дополнительных функций можно добавить, что есть возможность
настроить такой алгоритм, чтобы при выгрузке Ваши товары, имеющие
настраиваемые поля с разной ценой, выгружались на Озон как отдельные товары
(что-то вроде дочерних товаров), но при этом они могут объединяться на Озоне в
одну карточку, и посетитель сайта Озон увидит вроде как один товар с
вариантами выбора характеристик.
Первая версия компонента разработана для версии Joomla 1.5. Планируется сделать адаптацию для Joomla 3.9.
Цена
Базовая цена решения в текущей версии - 10 тыс. руб.
Это значительно дешевле, чем разработка с нуля.
В то же время это значительно надёжней, чем разработка с нуля, т.к. со времени
изначального выпуска внесено большое количество исправлений и улучшений. При
этом развитие и далее продолжается.
Иногда требуются доработки по индивидуальным пожеланиям/особенностям данных, я готов их выполнить за отдельную плату по взаимному согласованию.
Некоторые примеры внедрения этой разработки
- Красиво Красим (Joomla) - товары на Ozon, сайт
- Часовая компания Слава (OpenCart) - товары на Ozon, сайт
- НумизМания (Bitrix) - товары на Ozon, сайт
- RosCase (Laravel) - товары на Ozon, сайт
- Begomen (CS-Cart) - товары на Ozon, сайт
- MyBoardShop (OpenCart) - товары на Ozon, сайт
- VapeZona (Joomla) - товары на Ozon, сайт
- Bixtars (без сайта) - товары на Ozon
- ХудСалон (OpenCart) - товары на Ozon, сайт
- Elm327Club (Joomla) - товары на Ozon, сайт
- Товароград (без сайта) - товары на Ozon
- 33 платка (OpenCart) - товары на Ozon
- BestVinyl (Joomla) - товары на Ozon, сайт
- Kokette - товары на Ozon, сайт
- DSF (без сайта) - товары на Ozon
Демо
Имеется возможность протестировать работу предлагаемого решения применительно
к Вашему проекту перед оплатой. Вы можете обратиться по указанным ниже
контактам.
Часто задаваемые вопросы
Если товаров очень много (сотни тысяч), XML с данными может быть очень большим, что может вызывать ошибки. Есть ли решение?
Экспортировать данные не в один, а в несколько однотипных XML файлов. Начиная со 2 версии компонент может работать с несколькими файлами. Число XML файлов может быть неопределённым (сканирование папки на сервере или по FTP).
Возможна ли работа с другими маркетплейсами, например, WildBerries?
Взаимодействие по API с WB уже в разработке. В перспективе могут быть с другие маркетплейсы.
У нас нет подходящего обновляемого XML файла с данными о товарах. Есть ли варианты применить компонент?
Да, есть. Независимо от Вашей CMS могу помочь с написанием скрипта для
формирования обновляемых XML файлов с нужными данными, за отдельную плату по
взаимному согласованию.
Как быть если у нас есть не все характеристики товаров, которые обязательно нужны для Озона?
Кроме того, (!) начиная с версии 2.1.3 компонент позволяет добавлять отсутствующие в XML характеристики - в зависимости от категории товара (или всем товарам).
Как с Вами связаться?
Контактные данные для связи указаны ниже, под заголовком обратная связь.
Видео
Подготовил видео с демонстрацией компонента
(обратите внимание, тут демо
версии 1.0, актуальная версия гораздо более продвинутая):
История изменений версии 2.x
История изменений версии 1.x
05.11.2020 | v. 1.8.1 |
Добавлена возможность на странице получения возможных значений
характеристик указать увеличенный лимит на каждый запрос к API. Это
актуально для характеристик, имеющих очень много значений, например,
характеристика Бренд. Улучшен алгоритм вывода таблицы с возможными значениями характеристик. Это стало работать намного быстрее и потреблять меньше ресурсов ПК пользователя. |
04.11.2020 | v. 1.8.0 | Для запуска через Cron исправлено чтение параметров запуска (выгружать все данные или только цены, остатки). |
24.10.2020 | v. 1.7.9 | Добавлена дополнительная проверка Названий товаров. Преобразование html сущностей в символы. Очистка от недопустимых для названия символов. |
15.10.2020 | v. 1.7.8 |
Добавлена возможность для сопоставления характеристик указывать не
просто тег (в котором надо искать значение для характеристики), а тег с
определённым значением определённого атрибута. Это можно использовать
для XML файлов по стандарту YML (Яндекс Маркет), где используются такие
записи, как например: <param name="Цвет">Красный</param> Также добавлена возможность указывать несколько значений (коллекцию) для одной характеристики без использования подузлов item (что ранее было единственным вариантом). Теперь можно просто добавлять такой же тег с другим значением. Это опять же приближение к стандарту YML. |
02.10.2020 | v. 1.7.7 | Обновлён алгоритм распознования параметров запуска скрипта выгрузки данных через cron в режиме cli. Новый алгоритм менее требователен к настройкам сервера и подходит большему числу сайтов. |
27.09.2020 | v. 1.7.6 |
Новый удобный интерфейс для получения и поиска допустимых значений
характеристик и их идентификаторов! Для сопоставлений значений характеристик и id этих значений добавлена возможность указать default значения характеристики по-умолчанию. Усовершенствован алгоритм проверки сопоставлений значений характеристик. С учетом фактических особенностей API Ozon поправлена отправка значений характеристик с типом, называемым Boolean. Добавлена возможность ставить нужный лимит получения возможных значений интересующей характеристики. |
26.09.2020 | v. 1.7.5 | В настройки компонента добавлена возможность указать подарочный товар, который будет добавляться к импортируемым в VirtueMart заказам с ценой 0. |
21.09.2020 | v. 1.7.4 | В настройки компонента добавлена опция импорта заказов "Подставлять товарам Закупочную цену". Актуально для тех, кто учитывает цену закупа товаров. |
20.09.2020 | v. 1.7.3 | Добавлена возможность отправлять в значениях характеристик boolean тип данных (true/false). Лимит получения возможных значений интересующей характеристики увеличен до 100'000 (актуально для брендов). |
20.09.2020 | v. 1.7.2 | Для выгрузки, запускаемой вручную, добавлена опция "Выгружать, несмотря на статус processing". В некоторых случаях это полезно. |
11.09.2020 | v. 1.7.1 | Добавлена возможность в настройках компонента указать нужный Статус заказа для импортируемых заказов. |
10.09.2020 | v. 1.7.0 | При импорте заказов с Ozon в VirtueMart комиссия Озона теперь проверяется автоматически для каждого товара отдельно (для товаров из разных категорий - разная комиссия). В заказах VM товар отражается с ценой за вычетом комиссии Озона. |
03.09.2020 | v. 1.6.0 | Добавлена возможность выгружать основные данные и характеристики не для всех товаров из XML файла, а только для таких товаров, которые не показываются на Озоне (не прошли валидацию/модерацию). При этом остатки и цены выгружаются для всех. Это может быть полезно, когда товары редактируются на Озоне вручную (например, заполнение характеристик), а в автоматическом режиме нужно только обновлять цены и остатки (не переписывая основные данные и характеристики). |
01.09.2020 | v. 1.5.2 | Добавлена возможность раздельной выгрузки через cron данных товаров, цен и остатков. Можно выгружать не все данные, а только нужные. |
11.08.2020 | v. 1.5.1 | Добавлены опции для выгрузки остатков (выгружать нужный остаток, если числится 0 или всегда) |
01.08.2020 | v. 1.5 |
Исправлена ошибка определения дефолтной категории в ассоциациях
категорий; Добавлен новый Вид - Статус задачи импорта; Доработан алгоритм обновления, чтобы при обновлениях не перезаписывались файлы ассоциаций. |
30.06.2020 | v. 1.4 | Импорт заказов с Ozon в Joomla компонент VirtueMart |
16.06.2020 | v. 1.1 | Поддержка old_price и цен со скидками |
30.05.2020 | v. 1.0 | Первый стабильный выпуск. Основные возможности |
@todo list (планируется внедрить):
- Сопоставления характеристик сразу для нескольких категорий;
- При отправке остатков предварительно проверять статусы товаров;
- Хранение файлов (логов) вне корня;
- Лог для остатков (только последней выгрузки) - непринятые остатки;
- Лог получения списков от Ozon (ссылка на лог в случае ошибки);
- Расширение описания ошибок;
- Возможность использовать альтернативный файл с ПК (обзор);
- Дублирование заказов в Telegram чат;
- Если для одного товара указано несколько категорий, брать первую или самую глубокую;
- Форсирование цен: old_price и premium_price;
- Анализ XML - теги в офферах (используется в x офферах из n);
- Форсирование цен для всех товаров, а также на уровне категорий (с подкатегориями);
- Новое представление Заказы (с быстрым поиском);
- Логи импорта заказов (все версии);
- Логи дублировать в БД, для быстрого поиска (версия 2.x);
- Местное время в названии файлов логов (все версии);
- Возможность использовать несколько источников;
- Возможность указать источники в директории на FTP;
- Кнопка Остановить для ручных запусков (версия 2.x);
- Возвращать кол-во в наличии при отмененных заказах (когда используется импорт заказов, все версии);
- run.ini сохранять в другой папке (user/tmp);
- Новый вид - Произвольный запрос;
- Форсировать цены уже и при первой выгрузке info.
Обратная связь
Связаться со мной по рабочим вопросам, связанным с разработками, можно по
e-mail: alexey@gnevyshev.ru
или через Telegram: @alexey_gnevyshev
Также с вопросами по данной разработке можете обратиться в комментариях ниже.
Принимаю отзывы, предложения и пожелания.
Добрый день. У меня сайт на opencart, реально что-то придумать?
ОтветитьУдалитьЗдравствуйте. Конечно, реально.
УдалитьСегодня ко мне уже обращались касательно OpenCart. Возможно, это были как раз Вы )
Здравствуйте. Это можно использовать для выгрузки товаров с ценами и остатков из Битрикс?
ОтветитьУдалитьДа. Выше указан даже пример сайта, где это реализовано.
УдалитьДля товаров из Битрикса (или прямо из 1С) можно выгружать также и характеристики! Это есть далеко не во всех конкурентных решениях.
Здравствуйте, а можно как-то протестировать его? Вдруг он не совместим или еще какие-то проблемы
ОтветитьУдалитьЗдравствуйте. Да, можно. Обратитесь по указанным контактам.
УдалитьДобрый день
ОтветитьУдалитьАктиульна еще предложение по интеграции с магазином?
Здравствуйте. Да, всё актуально и развивается.
УдалитьМожете обратиться на e-mail или в Telegram (указаны выше).