WooCommerce: установка и настройка различных видов оплаты

Диагностика проблемы: почему платежи не проходят или недоступны нужные способы оплаты

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

  • Неправильно установленные или отключенные платежные шлюзы;
  • Несовместимость версии WooCommerce и плагина оплаты;
  • Ошибки в настройках валюты или региональных ограничений;
  • Конфликты с другими плагинами или темой;
  • Отсутствие SSL-сертификата для безопасных платежей.

Для начала нужно проверить базовые настройки WooCommerce и убедиться, что выбранные способы оплаты активированы и корректно настроены.

Пошаговое решение: установка и настройка популярных способов оплаты в WooCommerce

1. Установка основных плагинов для оплаты

WooCommerce из коробки поддерживает несколько способов оплаты, но для большинства популярных платежных систем нужны отдельные плагины. Рассмотрим установку и настройку двух популярных видов оплаты: Оплата через банковскую карту (Stripe) и Оплата при получении (наличными).

2. Настройка оплаты банковской картой через Stripe

Для приема платежей картами используйте официальный плагин WooCommerce Stripe Payment Gateway. Установка:

wp plugin install woocommerce-gateway-stripe --activate

После установки:

  1. Перейдите в WooCommerce > Настройки > Платежи.
  2. Активируйте «Stripe» и нажмите «Настроить».
  3. Вставьте ключи API (получаете из личного кабинета Stripe).
  4. Настройте валюту, тестовый режим (если нужно), и другие параметры.

Пример подключение Stripe API ключей в настройках:

'publishable_key' => 'pk_test_XXXXXXXXXXXXXXXXXXXX',
'secret_key' => 'sk_test_XXXXXXXXXXXXXXXXXXXX'

3. Включение оплаты при получении

Этот способ оплаты часто нужен в локальных магазинах или для курьерской доставки. В WooCommerce он включен по умолчанию, но проверьте:

  1. Перейдите в WooCommerce > Настройки > Платежи.
  2. Активируйте «Оплата при получении» (Cash on delivery).
  3. Настройте заголовок и описание, если нужно.

Как проверить, что способы оплаты работают

Для проверки:

  • Откройте страницу оформления заказа на сайте в режиме гостя или инкогнито.
  • Выберите товары и перейдите к оформлению.
  • Убедитесь, что нужные способы оплаты отображаются.
  • Пройдите тестовый платеж для Stripe, используя тестовые карты из документации Stripe.
  • Для оплаты при получении просто выберите этот метод и завершите заказ.

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

1. Способ оплаты не отображается на странице оформления заказа

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

2. Ошибка при попытке оплаты через Stripe

  • Проверьте правильность введенных API ключей (тестовые или реальные).
  • Убедитесь, что сайт работает по HTTPS (Stripe требует защищенное соединение).
  • Проверьте консоль браузера на наличие ошибок JavaScript.

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

  • Всегда используйте SSL-сертификат — без HTTPS платежи через Stripe не будут работать.
  • Обновляйте плагины оплаты сразу после выхода новых версий.
  • Избегайте одновременного использования нескольких плагинов для одного способа оплаты, чтобы не создавать конфликтов.
  • Для снижения нагрузки используйте кэширование страниц, исключая страницы оформления заказа и корзины.

Сравнение вариантов реализации оплаты в WooCommerce

Способ оплатыРеализацияПлюсыМинусы
StripeПлагин WooCommerce Stripe GatewayПоддержка карт, Apple Pay, Google Pay, регулярные обновленияТребуется HTTPS, настройка API ключей
Оплата при полученииВстроенный метод WooCommerceПростая настройка, не требует внешних сервисовНет онлайн-оплаты, больше риск отказов
PayPalОфициальный плагин WooCommerce PayPal PaymentsШирокое распространение, быстрый запускКомиссии, возможны проблемы с блокировками

Пример кода: добавление пользовательского условия для отображения способа оплаты

Иногда нужно показывать способ оплаты только для определенных категорий товаров. Добавим условие для оплаты при получении:

add_filter('woocommerce_available_payment_gateways', 'custom_cod_for_category_only');
function custom_cod_for_category_only($gateways) {
    if (is_admin()) return $gateways; // не в админке
    $chosen = false;
    foreach (WC()->cart->get_cart() as $cart_item) {
        $product = $cart_item['data'];
        if (has_term('special-category', 'product_cat', $product->get_id())) {
            $chosen = true;
            break;
        }
    }
    if (!$chosen) {
        unset($gateways['cod']); // скрываем оплату при получении
    }
    return $gateways;
}

Этот код отключит оплату при получении, если в корзине нет товаров из категории special-category.

Наш каталог плагинов WordPress