La réponse courte
Si votre carte a réellement été refusée, le refus vient de votre banque via Stripe, pas de Whizi, donc la solution est une autre carte ou un appel à votre banque. Pourquoi les banques bloquent les paiements d'abonnements IA en premier lieu, et comment identifier laquelle des six causes vous concerne, se trouve dans paying for AI when your card is declined. Whizi n'affiche aucun message de carte refusée au paiement. Les détails de carte sont saisis sur la page de paiement hébergée par Stripe, qui se trouve hors du code de Whizi, donc la réponse de la banque va à Stripe et n'atteint jamais Whizi.
Donc si vous avez vu une erreur avec un libellé Whizi, ce n'était pas un refus. C'était l'une des chaînes ci-dessous, et chacune a une cause et une solution différentes.
Les trois les plus faciles à confondre avec un refus :
| Ce que vous avez vu | Ce que cela signifie | Que faire |
|---|---|---|
This card has already used its intro trials, so this starts at the full price of suivi d'un prix | Cette carte a pris l'essai découverte de 7 jours quatre fois, la limite par carte | Rien ne cloche avec la carte. Payez le prix plein affiché, ou utilisez une carte qui a encore des essais disponibles |
Pricing is temporarily unavailable. | Whizi n'a pas pu lire la grille tarifaire depuis Stripe | Attendez et réessayez plus tard. Rien de votre côté ne corrige cela |
Failed to create Stripe checkout session. | L'appel de paiement a échoué et le serveur n'a fourni aucun message | Réessayez une fois. Si cela se répète, contactez le support |
Chaque erreur renvoyée par le serveur Whizi au paiement
Celles-ci viennent du serveur, donc elles arrivent avec un statut HTTP et un code d'erreur que le support peut faire correspondre dans une trace réseau. Chaque corps d'erreur backend est du JSON de la forme {"error": {"code": "...", "message": "..."}}, donc le code se trouve juste à côté du message. Les lignes ci-dessous sont classées par statut HTTP.
| Message | HTTP | Code | Déclenché quand |
|---|---|---|---|
A plan and billing cycle are required. | 400 | invalid_checkout_request | Le corps de la requête de paiement n'a pas pu être analysé |
Invalid plan or billing cycle. | 400 | invalid_plan_or_cycle | Le plan ou le cycle ne correspond à aucun prix Stripe connu |
No subscription item found for the active subscription. | 400 | subscription_item_missing | Un changement de plan en place a été lancé sur un abonnement sans élément associé |
The supplied discount must be an active 100% promotion code or coupon ID. | 400 | invalid_discount | Le code fourni n'est pas un code promotionnel actif à 100 pour cent ni un identifiant de coupon |
Temporary email addresses are not allowed. Please use a permanent email address. | 400 | disposable_email_blocked | L'e-mail du compte connecté figure sur la liste des domaines jetables |
User not found. | 404 | not_found | La route de paiement n'a pas pu lire votre ligne utilisateur |
Pricing is temporarily unavailable. | 503 | pricing_unavailable | La grille tarifaire localisée n'a pas pu être lue depuis Stripe |
Que faire pour chacune. Une carte qui a épuisé ses essais découverte n'est pas refusée du tout, et a sa propre section plus bas. Pricing is temporarily unavailable. est côté serveur : HTTP 503, renvoyé quand la grille tarifaire localisée ne peut pas être lue depuis Stripe, et aucun réglage de votre compte ne change cela. Failed to create Stripe checkout session. n'est pas du tout un message serveur, ce qui explique qu'il ne nomme aucune raison : c'est le texte de repli du site lui-même, affiché quand l'appel de paiement échoue et que le serveur n'a fourni aucun message. Les deux appellent à attendre et réessayer.
A plan and billing cycle are required. et Invalid plan or billing cycle. signifient toutes deux que la requête ne portait pas de plan reconnu par le serveur, donc recommencez depuis la page de tarifs et choisissez-y le plan ainsi que le bascule mensuel ou annuel, plutôt que de réutiliser un lien de paiement ancien ou modifié.
User not found. signifie que votre session pointe vers une ligne utilisateur que le serveur ne peut pas lire. Déconnectez-vous, reconnectez-vous, puis relancez le paiement.
No subscription item found for the active subscription. se déclenche lors d'un changement de plan plutôt qu'à un premier achat, et ce n'est pas corrigeable depuis l'interface. Contactez le support.
Erreurs affichées par le site avant même l'ouverture du paiement
Celles-ci viennent du navigateur, pas du serveur, donc elles n'ont pas de code HTTP. Elles signifient toutes la même chose au fond : quelque chose a échoué pendant que Whizi préparait votre compte pour le transfert vers Stripe, donc aucune charge n'a jamais été tentée.
| Message | Déclenché quand |
|---|---|
Failed to create Stripe checkout session. | L'appel de paiement a échoué et le serveur n'a fourni aucun message |
Could not open checkout. Please try again. | L'appel de paiement de la fenêtre de mise à niveau a échoué sans message |
Authentication failed. Please sign in again. | La récupération du jeton n'a rien renvoyé avant le paiement |
Failed to save user before checkout. | L'appel de sauvegarde de l'utilisateur avant le paiement n'était pas OK |
Could not prepare your account for checkout. | La page de tarifs n'a pas pu sauvegarder l'utilisateur avant le paiement |
Missing user or Stripe customer details. | L'identifiant utilisateur était absent au moment du paiement |
Checkout response did not include a Stripe URL. | Le paiement a réussi mais n'a renvoyé ni URL ni identifiant d'abonnement |
Something went wrong while starting your trial. Please try again. | L'échec générique de démarrage d'essai de la page de tarifs |
Pour tout élément de cette liste, déconnectez-vous, reconnectez-vous, et relancez le paiement depuis la page de tarifs. Cela résout les cas où la récupération du jeton n'a rien renvoyé avant le paiement, ce que rapporte Authentication failed. Please sign in again.
Checkout response did not include a Stripe URL. fait exception : cela signifie que l'appel a réussi. Avant d'essayer de payer à nouveau, ouvrez les paramètres de votre compte et vérifiez si un abonnement y figure déjà.
Deux autres apparaissent sur les pages de connexion et d'inscription quand vous choisissez d'abord un plan puis vous authentifiez ensuite : Signed in, but checkout could not start. Please choose your plan again. et Your account was created, but checkout could not start. Please sign in and choose your plan again. Les deux signifient que la partie compte a fonctionné et que seul le transfert a échoué. Votre compte existe. Allez sur la page de tarifs et choisissez à nouveau le plan.
Une dernière cause d'échec mystérieux : relancer le paiement plusieurs fois de suite peut déclencher le limiteur de débit, qui renvoie HTTP 429 et Too many requests. Please wait and try again. Chaque requête sur le compte, quelle que soit la route, compte contre un plafond de 30 par minute. Attendez une minute plutôt que de cliquer à nouveau.
Quand une carte a épuisé ses essais découverte
Chaque carte peut prendre l'essai découverte de 7 jours jusqu'à quatre fois. Le compte suit l'empreinte de la carte plutôt que le compte utilisateur, donc ouvrir un nouveau compte avec la même carte ne le réinitialise pas.
Une fois cette limite atteinte, le paiement n'est pas refusé. Il s'ouvre au tarif plein du plan choisi, et la page de Stripe l'indique au-dessus du bouton de paiement : This card has already used its intro trials, so this starts at the full price of suivi du prix du plan. Payer à cet endroit démarre le plan immédiatement, sans semaine d'essai.
Ce n'est pas un refus, et aucune nouvelle tentative n'y changera rien, car le compte est déjà enregistré contre la carte. Pour une carte qui a encore des essais disponibles, l'essai coûte $0.99 sur Starter, $1.99 sur Pro et $4.99 sur Powerhouse en USD.
Vos deux options : payer le prix plein affiché, ou payer avec une carte qui n'a pas encore utilisé ses essais.
Les prix des plans, les conditions de l'essai et ce qui se passe à la conversion se trouvent tous dans billing, trials and how to cancel.
Le paiement est passé mais le compte est encore en formule gratuite
Une carte débitée plus un compte qui se comporte encore comme gratuit est un symptôme différent d'un échec de paiement, et il a sa propre page.
Lisez you paid but the plan features are still locked pour les chaînes qui apparaissent dans cet état, la vérification qui indique quel compte détient l'abonnement, et ce qu'il faut envoyer au support.
Ce que Whizi ne peut pas vous dire
Trois lacunes, pour que vous ne passiez pas de temps à chercher des réponses qui n'existent pas.
Whizi ne voit jamais pourquoi votre banque a refusé une carte, car cet échange se déroule sur la page de paiement hébergée par Stripe, hors du code de Whizi. Donc un refus au paiement ne laisse aucune raison stockée dans votre compte, aucun bouton de nouvelle tentative, et rien que Whizi puisse outrepasser. La raison reste du côté de votre banque.
Un renouvellement échoué est différent, et Whizi vous en informe. Vous recevez un e-mail nommant le plan, le montant et, quand Stripe en a conservé une, la raison donnée par la banque, et une bannière rouge en haut du chat propose de mettre à jour la carte ou de continuer sur un plan moins cher à son tarif. Les abonnements achetés dans l'application iOS ou Android se renouvellent via Apple ou Google, qui gèrent leurs propres échecs de paiement.
La facturation de Whizi passe par Stripe, donc quelles cartes peuvent payer du tout se décide là-bas plutôt que chez Whizi. Une carte russe ou iranienne ne peut pas terminer l'inscription. L'Ukraine, le Kazakhstan, la Turquie, l'Indonésie et l'Inde fonctionnent de bout en bout.
- Un vrai refus de carte vient de votre banque via Stripe, pas de Whizi
- Au paiement, Whizi n'a aucun message de carte refusée et aucune raison de refus à vous montrer
- Un libellé Whizi sur l'erreur signifie qu'il ne s'agit pas d'un refus
- Les erreurs de session se règlent en se déconnectant puis reconnectant, puis en réessayant depuis la page de tarifs
- Pricing is temporarily unavailable est côté serveur : attendez, ne réessayez pas en boucle
- Une carte peut prendre jusqu'à quatre essais découverte, puis le paiement facture le tarif plein au lieu de refuser
- Être débité mais rester en formule gratuite est un symptôme différent, couvert dans subscription-not-active
Questions fréquentes
Pourquoi Whizi dit que mon paiement a échoué alors que ma banque ne montre aucune tentative ?
Parce que la chaîne que vous avez vue a été déclenchée par le site avant même que Stripe soit contacté, donc aucune charge n'a été tentée. Le moyen rapide de distinguer cela d'un vrai refus backend : un refus backend arrive en JSON portant un code d'erreur, comme pricing_unavailable ou invalid_plan_or_cycle, et montre un statut HTTP dans une trace réseau. Une chaîne côté navigateur n'a ni l'un ni l'autre. Si ce que vous avez vu ne portait aucun code, rien n'a atteint votre banque.
Que signifie This card has already used its intro trials au paiement ?
This card has already used its intro trials au paiement ?Cela signifie que la carte a pris l'essai découverte de 7 jours quatre fois, la limite par carte, donc ce paiement démarre le plan à son tarif plein sans semaine d'essai. Ce n'est ni un refus ni une erreur, et le compte suit la carte vers n'importe quel compte. Payez le prix plein affiché, ou utilisez une carte qui a encore des essais disponibles.
J'ai vu Pricing is temporarily unavailable. Ma carte est-elle en cause ?
Pricing is temporarily unavailable. Ma carte est-elle en cause ?Non. C'est un HTTP 503 pricing_unavailable, et cela vient de la route qui lit la grille tarifaire localisée depuis Stripe, pas de la route de paiement qui prendrait une carte. Il n'y a aucune solution de votre côté, donc attendez plutôt que d'essayer une autre carte. Si vous avez vu Failed to create Stripe checkout session. à la place, c'est une chaîne distincte avec une origine distincte : le texte de repli du site quand l'appel de paiement échoue et que le serveur n'a fourni aucun message.
Mon code promo a été rejeté. Pourquoi ?
Le paiement renvoie The supplied discount must be an active 100% promotion code or coupon ID. en HTTP 400 invalid_discount. Le champ de réduction au paiement n'accepte qu'un code promotionnel actif à 100 pour cent ou un identifiant de coupon, donc un code expiré ou une réduction partielle y sera refusé. Retirez-le et payez au prix normal si vous avez besoin d'accéder tout de suite.
Whizi a rejeté mon e-mail au paiement. Que s'est-il passé ?
Vous avez vu Temporary email addresses are not allowed. Please use a permanent email address. La route de paiement le renvoie en HTTP 400 disposable_email_blocked quand le domaine de l'e-mail du compte connecté figure sur la liste des domaines jetables. La même chaîne est utilisée à l'inscription en HTTP 403. Utilisez une adresse permanente sur le compte et le paiement pourra se poursuivre.
J'ai été débité deux fois. Que dois-je faire ?
Contactez le support avec les deux reçus Stripe plutôt que d'annuler à l'aveugle. Annuler est une action distincte avec son propre résultat : pour un abonnement actif, la route d'annulation répond Subscription cancellation scheduled for end of billing period., donc cet abonnement va jusqu'à la fin de la période déjà payée.