Как исправить ошибку «Payment Gateway not available» в WooCommerce

Диагностика ошибки «Payment Gateway not available» в WooCommerce

Ошибка «Payment Gateway not available» появляется при попытке оформить заказ через определённый способ оплаты в WooCommerce. Это значит, что выбранный платежный шлюз не активен, неправильно сконфигурирован или конфликтует с другими плагинами или настройками.

Основные симптомы проблемы:

  • При оформлении заказа в блоке оплаты отсутствует нужный способ оплаты.
  • Появляется сообщение об ошибке вместо кнопки оформления.
  • В админке WooCommerce в разделе Настройки > Оплата выбранный шлюз неактивен или не работает.

Почему возникает ошибка и как её проверить

Для начала нужно проверить следующие пункты:

  • Активирован ли нужный способ оплаты? Перейдите в WooCommerce > Настройки > Оплата и убедитесь, что нужный шлюз включён.
  • Корректно ли настроены ключи и параметры API? Например, для PayPal или Stripe должны быть введены правильные ключи и секреты. Неправильные данные приведут к недоступности шлюза.
  • Совместим ли плагин платежного шлюза с версией WooCommerce и WordPress? Обновите WooCommerce и плагины до последних версий.
  • Нет ли конфликтов с другими плагинами? Отключите временно другие плагины, чтобы проверить, исчезнет ли ошибка.
  • Активна ли валюта, поддерживаемая шлюзом? Некоторые шлюзы работают только с определёнными валютами. Проверьте валюту сайта в WooCommerce > Настройки > Общие.

Пошаговое решение проблемы

  1. Проверьте статус способа оплаты в админке WooCommerce:
    function check_payment_gateway_status() {
        $gateways = WC()->payment_gateways()->get_available_payment_gateways();
        foreach ($gateways as $gateway) {
            error_log('Gateway: ' . $gateway->id . ' Status: ' . ($gateway->is_enabled() ? 'Enabled' : 'Disabled'));
        }
    }
    add_action('init', 'check_payment_gateway_status');
    
    Это выведет в лог активные платежные шлюзы.
  2. Проверьте настройки API в платежном шлюзе: Перейдите в настройки нужного шлюза и перепроверьте ключи API. Для Stripe ключи можно проверить в панели Stripe. Для PayPal — в разделе разработчика PayPal.
  3. Отключите другие плагины для проверки конфликтов: Временно выключите все плагины кроме WooCommerce и платежного шлюза, затем проверьте, появляется ли способ оплаты.
  4. Проверьте валюту магазина: Если валюта не поддерживается шлюзом, он не будет отображаться. Изменить валюту можно здесь:
    // Установка валюты в USD для проверки
    add_filter('woocommerce_currency', function() {
        return 'USD';
    });
    
  5. Обновите WooCommerce и плагины: Устаревшие версии могут некорректно работать с API платёжных систем.
  6. Очистите кэш: Если используете кэширование (плагины или серверное), очистите кэш и браузер.

Проверка результата после реализации

После внесения изменений:

  • Перейдите на страницу оформления заказа и убедитесь, что нужный способ оплаты отображается.
  • Сделайте тестовый заказ, выбрав этот способ оплаты, и проверьте, что процесс оплаты запускается без ошибок.
  • Включите логирование WooCommerce (в WooCommerce > Статус > Логи), чтобы просмотреть ошибки, если они появятся.

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

  • Неправильные ключи API — ошибка в символе или пробел в начале/конце. Решение: скопируйте ключи заново, без лишних символов.
  • Плагин платежного шлюза неактуальной версии — несовместимость с WooCommerce. Решение: обновите плагин или замените на поддерживаемый.
  • Конфликт с другим плагином — отключите плагины поочерёдно, чтобы найти виновника.
  • Неподдерживаемая валюта — смените валюту магазина или используйте другой шлюз.
  • Кэширование страниц оформления заказа — исключите страницу оформления из кэширования.

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

  • Используйте HTTPS для всех платежей, чтобы обеспечить безопасность данных клиентов.
  • Не храните ключи API в открытом виде в коде, используйте wp-config.php или безопасные переменные окружения.
  • Включите логирование ошибок платежей, чтобы быстро реагировать на сбои.
  • Минимизируйте количество активных плагинов, чтобы снизить вероятность конфликтов.
  • Регулярно обновляйте WooCommerce, платежные шлюзы и WordPress для безопасности и стабильности.

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

МетодПлюсыМинусы
Использование стандартных настроек WooCommerceБыстро, не требует кодаНе всегда решает проблему при конфликтах или ошибках API
Ручная проверка ключей и параметровТочно устраняет ошибки конфигурацииТребует доступа к API и понимания настроек
Отключение конфликтующих плагиновВыявляет причину проблемыЗанимает время, влияет на функционал сайта
Использование кастомного кода для отладкиГибко, позволяет получать подробные логиНужно знание PHP и WooCommerce API
Автоматическое удаление старых ревизий постов в WordPress для оптимизации базы данных
23.12.2025
Как избежать конфликтов между плагинами в WordPress
18.01.2026
Как использовать REST API в WordPress для создания кастомных решений
22.11.2025
Как удалить все метаданные WordPress из базы данных
15.12.2025
Как удалить неиспользуемые атрибуты и метаданные из WooCommerce
13.05.2026