Telegram бот для запроса скидки по готовому решениям Подробнее
База знаний
Bodysite.Help — единая база знаний и хаб поддержки по всем продуктам

Диагностика ошибок при обновлении заказов Ozon

Содержание:

Лог-файлы:

  • ozon/order/syncOrders.log - содержит записи о фактах синхронизации и количестве загруженных заказов
  • ozon/order/syncError.log - записи об ошибках при синхроназации заказов
  • ozon/order/statusChange.log - информация о смене статуса в Ozon и выполнении / не выполнении ранее выбранных действий на сайте

1. Заказы не появляются в админ-панели

Заказы загружаются в админ-панель двумя способами: по нажатию соответствующей кнопки, либо периодически, при запуске команды в автоматическом планировщике CRON. Если заказы не появляются по CRON, проверьте, работает ли ручной запуск. Если ручной работает, значит нужно проверить корректность настройки CRON - верно ли введена команда и из той ли версии PHP она запускается. В этом может помочь поддержка хостинга. Подробнее в инструкции.

Проверьте дату начала синхронизации. Если там текущий день, выберите более ранее число.

Проверьте обновление даты логов, происходит ли оно при нажатии на кнопку "Запустить"

Проверьте последние записи в логе syncError.log. Например, там может быть такая запись об ошибке:

Invalid Api-Key, please contact support

Она говорит о том, что нужно заменить API токен, подробнее об этом в инструкции.

2. Конкретный заказ не передался в админ-панель

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

1) Возможно настроенная команда Cron еще не сработала. 

Например, вы настроили на обновление раз в час, а заказ появился в Ozon 15 минут назад. Частоту обновления заказов их их количество можно проверить в логе syncOrders.log. 

В нем будут примерно такие записи:

2022-02-15 14:45:01 
Получена информация о 6 заказах

3. Заказы дублируются.

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

Пожалуйста, проверьте новые записи в логе wa-log/ozon/order/orderCreateError.log

Например, там может быть такое сообщение: 

2022-11-02 09:15:05 
Заказ в озоне 977445167 не удалось создать: Class 'lpostShippingPickuppointModel' not found

Оно говорит нам о том, что при попытке создания заказа возникла ошибка, связанная с плагином доставки lpost. 

Ошибка syntax error, unexpected '?', expecting function (T_FUNCTION) or const (T_CONST):

Замечено несколько случаев ошибки, связанной с плагином "Прайсы в Excel". Решение: использовать для запуска CRON версию как минимум 7.4.

Пример команды с указанием версии:

/opt/php/7.4/bin/php -q /var/www/u0000000/data/www/site.ru/cli.php ozon syncOrders

Проанализируйте файлы error.log и db.log, чтобы понять, в каком именно плагине происходит ошибка.

4. В заказе не отображается номер заказа Ozon / другие неполадки с заказом.

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

Пример из реальной практики:

Проблема - в заказе не отображается информационный блок, нет номера заказа Ozon. 

Открываем лог wa-log/ozon/order/orderCreateError.log, в нём запись:

2024-03-27 13:30:09 
Заказ в озоне 22985812935 не удалось создать: syntax error, unexpected ')'

2024-03-27 13:30:09 
#0 [internal function]: waAutoload->autoload('shopWblinkPlugi...')
#1 /home/c/xxxx/xxxx/public_html/wa-apps/shop/plugins/wblink/lib/shopWblink.plugin.php(25): spl_autoload_call('shopWblinkPlugi...')
#2 /home/c/xxxx/xxxx/public_html/wa-system/event/waEvent.class.php(247): shopWblinkPlugin->orderActionHandler(Array, 'order_action.cr...')
#3 /home/c/xxxx/xxxx/public_html/wa-system/event/waEvent.class.php(90): waEvent->runPlugins(Array, Array)
#4 /home/c/xxxx/xxxx/public_html/wa-system/waSystem.class.php(1466): waEvent->run(Array)
#5 /home/c/xxxx/xxxx/public_html/wa-apps/shop/lib/workflow/shopWorkflowCreateAction.class.php(550): waSystem->event('order_action.cr...', Array)

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

5. В заказе нет товара

Если в заказе из Ozon нет товара, значит товар с таким offer_id не найден на сайте. Проверьте, какой признак используется при сопоставлении заказов (Id товара/ Id артикула / код артикула), найдите в кабинете Ozon какой артикул у товара в этом заказе и попробуйте найти на вашем сайте этот товар.

6. Раньше всё работало, а сейчас не работает

Убедитесь, что вы используете саму свежую версию приложения.

Проверьте, работает ли у вас Cron на обновление заказов.

Попробуйте запустить обновление вручную по соответствущей кнопке в разделе "Синхронизация заказов".

Посмотрите, записываются ли при этом какие-то логи. Далее исходя из найденных записей уже искать причины. 

Инструкция была полезна?
76% считают ответ полезным
Спасибо за обратную связь!
Чтобы добавить комментарий, войдите в личный кабинет
Что можно делать с помощью приложения?
Как подключиться к API Ozon?
Есть ли тестовый период у приложения?
Можно ли скачать товары из Ozon на сайт?
Я ранее уже выгрузил товары в OZON, будут ли они синхронизироваться?
Как добавить cron команду в "облаке" для приложения Интеграция с Ozon?
Написать в техподдержку
В техническую поддержку входит:
  • Консультации по вопросам приобретения
  • Консультации по функционалу и возможностям
  • Выявление и решение проблем в работе функционала
В техническую поддержку не входит:
  • Настройка решения
  • Доработка под запросы клиента
  • Устранение багов в консультационной форме (без предоставления доступов к сайту)
Платная диагностика:
  • Диагностика сложных и неоднозначных проблем
  • Выявление конфликтов со сторонними решениями
  • Выявление конфликтов в вашей среде сервера
  • Приоритетный срок на обработку тикетов
  • Оплата только банковской картой