Коротка відповідь
Якщо картку справді відхилено, відмова надійшла від вашого банку через Stripe, а не від Whizi, тож виправлення це інша картка або дзвінок до банку. Чому банки блокують платежі за підписки на ШІ і як зрозуміти, яку саме з шести причин ви зустріли, розказано в статті оплата за ШІ, коли картку відхилено. У Whizi немає повідомлення про відхилену картку. Дані картки вводяться на розміщеній Stripe сторінці оформлення, яка перебуває поза кодовою базою Whizi, і обробник вебхука Stripe у Whizi не має повідомлення про відхилений платіж, яке міг би вам показати.
Тож якщо ви побачили помилку з формулюванням Whizi, це була не відмова банку. Це одна з наведених нижче фраз, і кожна має свою причину і своє рішення.
Три з них найлегше сплутати з відмовою банку:
| Що ви побачили | Що це означає | Що робити |
|---|---|---|
A $1 intro trial has already been used with this payment method. | Ця картка вже використала пробний період | Оформіть підписку за звичайною ціною або скористайтеся карткою, яка ще не використовувала пробний період. Повторна спроба не допоможе |
Pricing is temporarily unavailable. | Whizi не зміг отримати таблицю цін від Stripe | Зачекайте і спробуйте пізніше. З вашого боку це виправити не можна |
Failed to create Stripe checkout session. | Запит на оформлення не вдався, а бекенд не надав повідомлення | Спробуйте ще раз. Якщо повториться, зверніться в підтримку |
Кожна помилка, яку повертає бекенд Whizi під час оформлення
Ці помилки надходять із сервера, тож вони супроводжуються HTTP статусом і кодом помилки, які підтримка може зіставити в мережевому трасуванні. Кожне тіло помилки бекенда це JSON у форматі {"error": {"code": "...", "message": "..."}}, тож код стоїть поруч із повідомленням. Рядки нижче впорядковано за HTTP статусом.
| Повідомлення | HTTP | Код | Коли виникає |
|---|---|---|---|
A plan and billing cycle are required. | 400 | invalid_checkout_request | Тіло запиту на оформлення не вдалося розібрати |
Invalid plan or billing cycle. | 400 | invalid_plan_or_cycle | План або цикл не відповідають жодній відомій ціні Stripe |
No subscription item found for the active subscription. | 400 | subscription_item_missing | Зміну плану на місці виконано для підписки, яка не має жодного елемента |
The supplied discount must be an active 100% promotion code or coupon ID. | 400 | invalid_discount | Наданий код не є активним промокодом або купоном на знижку 100 відсотків |
Temporary email addresses are not allowed. Please use a permanent email address. | 400 | disposable_email_blocked | Пошта увійденого акаунта перебуває у списку тимчасових доменів |
A $1 intro trial has already been used with this payment method. | 403 | duplicate_trial_payment_method | Відбиток картки вже використав пробний період |
User not found. | 404 | not_found | Маршрут оформлення не зміг прочитати ваш рядок користувача |
Pricing is temporarily unavailable. | 503 | pricing_unavailable | Не вдалося отримати локалізовану таблицю цін від Stripe |
Що робити з кожною з них. Відмова через пробний період має власний розділ нижче. Pricing is temporarily unavailable. це помилка на боці сервера: HTTP 503, вона з'являється, коли не вдається прочитати локалізовану таблицю цін від Stripe, і жодне налаштування вашого акаунта на це не впливає. Failed to create Stripe checkout session. це взагалі не серверне повідомлення, тому воно й не називає причину: це власний резервний текст сайту, який показується, коли запит на оформлення не вдається, а бекенд не надає повідомлення. В обох випадках варто зачекати і спробувати ще раз.
A plan and billing cycle are required. і Invalid plan or billing cycle. обидва означають, що запит не містив плану, який розпізнає сервер, тож почніть заново зі сторінки цін і оберіть там план і перемикач місячної або річної оплати, а не використовуйте старе чи змінене посилання на оформлення.
User not found. означає, що ваша сесія вказує на рядок користувача, який сервер не може прочитати. Вийдіть з акаунта, увійдіть знову і почніть оформлення заново.
No subscription item found for the active subscription. виникає під час зміни плану, а не першої покупки, і виправити це через інтерфейс неможливо. Зверніться в підтримку.
Помилки, які сайт показує ще до відкриття оформлення
Ці помилки надходять із браузера, а не з сервера, тож вони не мають HTTP коду. Загалом усі вони означають одне: щось не спрацювало, поки Whizi готував ваш акаунт до передачі даних у Stripe, тож жодного списання коштів так і не намагалися провести.
| Повідомлення | Коли виникає |
|---|---|
Failed to create Stripe checkout session. | Запит на оформлення не вдався, а бекенд не надав повідомлення |
Could not open checkout. Please try again. | Запит на оформлення у вікні підвищення плану викинув помилку без повідомлення |
Authentication failed. Please sign in again. | Запит токена перед оформленням не повернув нічого |
Failed to save user before checkout. | Запит на збереження користувача перед оформленням завершився невдало |
Could not prepare your account for checkout. | Сторінка цін не змогла зберегти користувача перед оформленням |
Missing user or Stripe customer details. | Під час оформлення був відсутній ідентифікатор користувача |
Checkout response did not include a Stripe URL. | Оформлення пройшло успішно, але не повернуло ні URL, ні ідентифікатор підписки |
Something went wrong while starting your trial. Please try again. | Загальна помилка запуску пробного періоду на сторінці цін |
Для будь-якого пункту з цього списку вийдіть з акаунта, увійдіть знову і почніть оформлення заново зі сторінки цін. Це усуває випадки, коли запит токена перед оформленням не повернув нічого, саме про це повідомляє Authentication failed. Please sign in again.
Checkout response did not include a Stripe URL. є винятком: вона означає, що запит пройшов успішно. Перш ніж намагатися оплатити знову, відкрийте налаштування акаунта і перевірте, чи підписка вже там є.
Ще дві помилки з'являються на сторінках входу і реєстрації, коли ви спершу обираєте план, а потім проходите автентифікацію: Signed in, but checkout could not start. Please choose your plan again. та Your account was created, but checkout could not start. Please sign in and choose your plan again. Обидві означають, що частина з акаунтом спрацювала і не вдалася лише передача в оформлення. Ваш акаунт існує. Перейдіть на сторінку цін і оберіть план знову.
Ще одна причина незрозумілого збою: якщо повторювати оформлення багато разів поспіль, можна активувати обмежувач частоти запитів, який повертає HTTP 429 і Too many requests. Please wait and try again. Кожен запит на акаунт, незалежно від маршруту, зараховується у стелю 30 запитів на хвилину. Зачекайте хвилину, а не натискайте знову.
Відмова через пробний період, яку жодна повторна спроба не усуне
A $1 intro trial has already been used with this payment method. це HTTP 403 з кодом duplicate_trial_payment_method. Це єдина помилка оформлення на цій сторінці, яку повторна спроба ніколи не усуне.
Перевірка прив'язана до картки, а не до акаунта: відмову повертають, коли відбиток картки вже використав пробний період.
Одна деталь для тих, хто шукає цю помилку: у рядку справді написано "$1", хоча саме пробне списання становить $0.99 у доларах США. Орієнтуйтеся на точне формулювання, бо форма "$1" це саме те, що надсилає сервер.
У вас є два варіанти: оформити підписку за стандартною ціною на потрібний план або оплатити способом, який ще не використовував пробний період.
Ціни планів, умови пробного періоду і те, що відбувається після його завершення, описано в статті оплата, пробні періоди та як скасувати підписку.
Оплата пройшла, але акаунт досі на безкоштовному плані
Списана оплата разом з акаунтом, який досі поводиться як безкоштовний, це інший симптом, ніж збій оформлення, і в нього є власна сторінка.
Прочитайте статтю ви оплатили, але функції плану досі заблоковані, щоб дізнатися, які повідомлення з'являються в такому стані, як перевірити, який акаунт утримує підписку, і що надіслати в підтримку.
Чого Whizi не може вам сказати
Три прогалини, щоб ви не витрачали час на пошук відповідей, яких там немає.
Whizi ніколи не бачить, чому банк відхилив картку, бо цей обмін відбувається на розміщеній Stripe сторінці оформлення, поза кодовою базою Whizi. Перевірка обох репозиторіїв Whizi не знайшла жодного рядка про відхилену картку чи відхилений платіж, а обробник вебхука Stripe не містить повідомлення про відхилений платіж. Тож у вашому акаунті не зберігається причина відмови, немає кнопки повторної спроби, і Whizi нема що скасовувати. Причина залишається на боці вашого банку.
У Whizi також немає повідомлення про невдале чи прострочене продовження підписки. Жодного рядка для користувача про це не існує в жодному з репозиторіїв, тож якщо пізніше не пройде списання за продовження, ви не отримаєте від Whizi помилки з поясненням. Єдине сповіщення, дотичне до продовження, яке справді існує, це пуш повідомлення "Your subscription is no longer active." під заголовком "Whizi subscription updated", яке надсилається, коли вебхук RevenueCat синхронізує акаунт назад до безкоштовного тарифу. Це шлях вебхука RevenueCat, тож це не звіт про невдале продовження в Stripe.
Виставлення рахунків у Whizi відбувається через Stripe, тож те, які картки взагалі можуть платити, вирішується там, а не в Whizi. Російська або іранська картка не може завершити реєстрацію. Україна, Казахстан, Туреччина, Індонезія та Індія працюють без обмежень.
- Справжня відмова картки надходить від вашого банку через Stripe, а не від Whizi
- У Whizi немає повідомлення про відхилену картку і немає причини відмови, яку можна показати
- Формулювання Whizi в помилці означає, що це не відмова банку
- Помилки сесії усуваються виходом і повторним входом з подальшою спробою зі сторінки цін
- Pricing is temporarily unavailable це помилка на боці сервера: зачекайте, не повторюйте спроби в циклі
- Пробний період прив'язаний до відбитка картки, а не до акаунта
- Списання відбулося, але план досі безкоштовний, це інший симптом, описаний у subscription-not-active
Поширені запитання
Чому Whizi повідомляє, що оплата не пройшла, а в банку немає жодної спроби списання?
Тому що повідомлення, яке ви побачили, згенерував сайт ще до того, як запит дійшов до Stripe, тож жодного списання так і не намагалися провести. Швидкий спосіб відрізнити таку помилку від справжньої відмови бекенда: відмова бекенда надходить як JSON з кодом помилки, наприклад pricing_unavailable або invalid_plan_or_cycle, і показує HTTP статус у мережевому трасуванні. Рядок з боку браузера не має ні того, ні іншого. Якщо те, що ви побачили, не містило коду, до вашого банку взагалі нічого не дійшло.
Що означає A $1 intro trial has already been used with this payment method.?
A $1 intro trial has already been used with this payment method.?Це означає, що введена картка вже використала пробний період. Це не відмова банку: у Whizi взагалі немає рядка про відхилену картку, і ця помилка надходить із власного маршруту оформлення Whizi як HTTP 403 з кодом duplicate_trial_payment_method, який варто навести, якщо звертаєтеся в підтримку. Оформіть підписку за стандартною ціною або скористайтеся способом оплати, який ще не використовував пробний період.
Я побачив Pricing is temporarily unavailable. Це проблема з моєю карткою?
Pricing is temporarily unavailable. Це проблема з моєю карткою?Ні. Це HTTP 503 pricing_unavailable, і вона надходить із маршруту, що зчитує локалізовану таблицю цін від Stripe, а не з маршруту оформлення, який приймав би картку. З вашого боку виправити нічого не можна, тож краще зачекати, ніж пробувати іншу картку. Якщо натомість ви побачили Failed to create Stripe checkout session., це окремий рядок з іншим походженням: резервний текст сайту, який показується, коли запит на оформлення не вдався, а бекенд не надав повідомлення.
Мій промокод відхилили. Чому?
Оформлення повертає The supplied discount must be an active 100% promotion code or coupon ID. як HTTP 400 invalid_discount. Поле знижки при оформленні приймає лише активний промокод або купон на знижку 100 відсотків, тож прострочений код або код з частковою знижкою там буде відхилено. Приберіть його і оформіть підписку за звичайною ціною, якщо доступ потрібен зараз.
Whizi відхилив мою електронну пошту при оформленні. Що сталося?
Ви побачили Temporary email addresses are not allowed. Please use a permanent email address. Маршрут оформлення повертає це як HTTP 400 disposable_email_blocked, коли домен пошти увійденого акаунта перебуває у списку тимчасових. Той самий рядок використовується під час реєстрації як HTTP 403. Вкажіть на акаунті постійну адресу, і оформлення продовжиться.
З мене двічі списали кошти. Що робити?
Зверніться в підтримку з обома квитанціями Stripe, а не скасовуйте підписку наосліп. Скасування це окрема дія з власним результатом: для активної підписки маршрут скасування відповідає Subscription cancellation scheduled for end of billing period., тож ця підписка діятиме до кінця вже оплаченого періоду.