WooCommerce: отладка проблем с оплатой через QIWI после обновления

Диагностика проблемы с оплатой через QIWI в WooCommerce

После обновления WooCommerce или плагина для оплаты через QIWI могут возникать ошибки, из-за которых платежи не проходят или заказы остаются в состоянии "ожидание оплаты". Чтобы понять источник проблемы, необходимо проверить несколько ключевых моментов:

  • Логи платежей и ошибок WooCommerce в разделе WooCommerce > Статус > Логи.
  • Консоль браузера при оформлении заказа на предмет JavaScript-ошибок.
  • Совместимость версии плагина QIWI с текущей версией WooCommerce и PHP.
  • Настройки callback URL и секретных ключей в личном кабинете QIWI и в настройках плагина.

Проверка лога ошибок

Для активации логирования платежей перейдите в WooCommerce > Настройки > Платежи > QIWI > Включить логирование. После проведения попытки оплаты перейдите в WooCommerce > Статус > Логи и выберите последний файл с логами QIWI. В логах ищите такие ошибки как:

  • Ошибка авторизации (401 Unauthorized)
  • Неверный callback URL
  • Ошибка проверки подписи запроса

Пошаговое решение проблемы с оплатой через QIWI

Шаг 1. Проверка и обновление плагина QIWI

Убедитесь, что используемый плагин QIWI поддерживает текущую версию WooCommerce и PHP. Если плагин устарел, скачайте актуальную версию с официального репозитория или сайта разработчика. Обновите плагин через админку WordPress или вручную через FTP.

Шаг 2. Настройка параметров API QIWI

Проверьте, что в настройках плагина указаны корректные:

  • Номер кошелька QIWI
  • Токен API (секретный ключ)
  • Callback URL, который должен совпадать с URL, зарегистрированным в кабинете QIWI

Пример правильного callback URL:

https://ваш_домен.ru/?wc-api=qiwi

Замените ваш_домен.ru на домен вашего сайта.

Шаг 3. Проверка и исправление callback URL в личном кабинете QIWI

Войдите в личный кабинет QIWI API, найдите настройку webhook/callback URL и убедитесь, что он совпадает с тем, что указан в настройках плагина. Если URL не совпадает, платежи не будут подтверждаться.

Шаг 4. Обработка webhook и проверка подписи

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

function verify_qiwi_signature($data, $signature, $secret) {
    $calculatedSignature = base64_encode(hash_hmac('sha256', $data, $secret, true));
    return hash_equals($calculatedSignature, $signature);
}

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

Шаг 5. Тестирование оплаты в режиме Sandbox (если доступен)

Используйте тестовый режим QIWI или Sandbox, чтобы проверить прохождение платежей без списания реальных средств.

Проверка результата после внедрения

  • Попробуйте оформить заказ с оплатой через QIWI и убедитесь, что статус заказа меняется на "Оплачен" после успешного платежа.
  • Проверьте лог в WooCommerce — в нем не должно быть ошибок, связанных с QIWI.
  • Убедитесь, что callback от QIWI успешно принимается вашим сайтом (можно отследить по логам или отладчику).

Частые ошибки и как их исправить

  • Неверный callback URL: Плагин и QIWI используют разные URL, исправляется синхронизацией URL в настройках.
  • Ошибки авторизации API: Неверный токен или истекший ключ, обновите токен в личном кабинете QIWI и плагине.
  • Отсутствие SSL: QIWI требует HTTPS для callback, используйте SSL-сертификат на сайте.
  • Проблемы с проверкой подписи: Неправильная реализация проверки подписи, используйте рекомендованный алгоритм HMAC SHA-256.
  • Проблемы с совместимостью PHP: Плагин может использовать устаревшие функции, обновите или замените плагин.

Практические советы по безопасности и производительности

  • Не сохраняйте токены в открытом виде — используйте константы в wp-config.php или защищённые настройки плагина.
  • Ограничьте IP-адреса, с которых принимаются callback от QIWI, если это возможно.
  • Включите логирование только на время отладки, чтобы не нагружать сервер.
  • Регулярно обновляйте WooCommerce, плагин QIWI и WordPress для устранения уязвимостей.
  • Используйте кеширование страниц, исключая страницы оформления заказа, чтобы не мешать работе платежей.

Сравнение вариантов решения проблемы оплаты через QIWI

МетодПлюсыМинусыРекомендации
Обновление официального плагина QIWIГарантированная совместимость, поддержка разработчикаЗависимость от внешнего разработчика, возможны задержки с обновлениямиРекомендуется для большинства пользователей
Кастомная реализация на основе API QIWIПолный контроль над функционаломТребует навыков программирования, риск ошибок в безопасностиДля опытных разработчиков и нестандартных задач
Использование сторонних универсальных платежных плагиновПоддержка нескольких платежных системМожет не поддерживать все фичи QIWI, сложность настройкиПодходит для мультиплатежных сайтов
Как удалить версию WordPress из HTML и REST API для повышения безопасности
11.04.2026
Как создать свой виджет для WordPress
25.11.2025
WooCommerce: отладка проблем с оплатой через QIWI после обновления
09.06.2026
WooCommerce: как использовать хуки для изменения функциональности оформления заказа
20.06.2026
WooCommerce: как убрать обязательное поле адреса доставки при оформлении заказа
23.06.2026