Перше: Який це тип помилки?
Проблеми з оплатою в 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-адре