Первое: Какой это тип ошибки?
Проблемы с оплатой в WooCommerce обычно делятся на три категории:
- Платежный шлюз не загружается — форма оплаты не появляется при оформлении заказа
- Платеж не проходит в банке/процессоре — клиент получает ошибку от платежного провайдера
- Платеж успешный, но заказ не обновляется — с клиента списаны средства, заказ остается в статусе "Ожидает"
Каждый случай имеет разные причины.
Случай 1: Платежный шлюз не загружается при оформлении
Просто не отображается вариант оплаты на странице оформления заказа.
Сначала проверьте:
- Перейдите в WooCommerce → Настройки → Платежи — включен ли шлюз?
- Есть ли несоответствие валюты? Большинство шлюзов работают только с определенными валютами.
- Есть ли ошибки JavaScript в консоли браузера? (Правый клик → Исследовать элемент → Консоль)
- Установлена ли для шлюза минимальная сумма заказа?
Типичные причины:
- Конфликт JavaScript с другим плагином
- Плагин кеширования, который отдает кешированную версию страницы оформления без скриптов оплаты
- Несовместимость темы с виджетом оплаты
Тест: отключите ваш плагин кеширования и перезагрузите страницу оформления. Также временно переключитесь на тему Storefront или Twenty Twenty-Three.
Случай 2: Платеж не проходит у процессора
Форма оплаты загружается, но транзакция отклоняется или выдает ошибку.
Что проверить:
| Симптом | Вероятная причина |
|---|---|
| "Недействительный ключ API" | Неправильные ключи API в настройках плагина (рабочие против тестовых) |
| "Карта отклонена" от процессора | Отказ со стороны банка, попробуйте другую карту |
| Ошибка SSL | Ваша страница оформления не загружается через HTTPS |
| "Валюта не поддерживается" | Валюта вашего магазина не входит в список поддерживаемых шлюзом |
| Работает в тестовом режиме, но не работает в рабочем | Рабочие ключи не введены или учетная запись не подтверждена |
Проверьте ваши ключи API:
Перейдите в WooCommerce → Настройки → Платежи → [Ваш шлюз] → Управление
Убедитесь, что вы используете рабочие ключи (не тестовые/песочницы) и что они точно совпадают с теми, что указаны в панели управления шлюзом. Даже один лишний пробел всё сломает.
Случай 3: Платеж проходит, но заказ остается в статусе "Ожидает"
Это самый запутанный случай. Банк клиента списывает деньги, но WooCommerce никогда не обновляет статус заказа.
Это почти всегда сбой вебхука/IPN. Платежные шлюзы отправляют обратный вызов на ваш сервер после завершения платежа. Если этот обратный вызов не удается, WooCommerce никогда не "узнает", что платеж успешен.
Как наладить:
- Проверьте панель управления вашего платежного шлюза на наличие неудачных доставок вебхуков
- Проверьте лог ошибок вашего сервера на наличие ошибок 500 в URL-адресе обратного вызова
- Убедитесь, что ваш сайт доступен из Интернета (не за VPN или брандмауэром промежуточного сервера)
Типичные причины сбоев вебхуков:
- Плагин безопасности блокирует IP-адрес шлюза
- Правила брандмауэра на вашем сервере
- Проблема с сертификатом SSL на URL-адресе обратного вызова
- Проблема с истечением сессии WooCommerce (редко)
Формат URL-адре