Zahlung abgelehnt oder fehlgeschlagen beim Whizi Checkout

Kurzantwort

Wenn deine Karte tatsächlich beim Whizi Checkout abgelehnt wurde, kam die Ablehnung von deiner Bank über Stripe und nicht von Whizi, also besteht die Lösung in einer anderen Karte oder einem Anruf bei deiner Bank. Whizi hat nirgendwo eine Meldung zu einer abgelehnten Karte, Whizi-Formulierung im Fehler bedeutet also, dass es keine Ablehnung war.

Die kurze Antwort

Wenn deine Karte tatsächlich abgelehnt wurde, kam die Ablehnung von deiner Bank über Stripe, nicht von Whizi, also besteht die Lösung in einer anderen Karte oder einem Anruf bei deiner Bank. Warum Banken KI-Abo-Zahlungen überhaupt blockieren und wie du erkennst, welche der sechs Ursachen bei dir zutrifft, steht in Bezahlen für KI, wenn deine Karte abgelehnt wird. Whizi hat nirgendwo eine Meldung zu einer abgelehnten Karte. Kartendaten werden auf der gehosteten Checkout-Seite von Stripe eingegeben, die außerhalb von Whizis Codebasis liegt, und Whizis Stripe-Webhook-Handler hat keine Meldung zu einer abgelehnten Zahlung, die er dir anzeigen könnte.

Wenn du also einen Fehler mit Whizi-Formulierung gesehen hast, war das keine Ablehnung. Es war eine der unten stehenden Meldungen, und jede hat eine eigene Ursache und eine eigene Lösung.

Die drei, die man am leichtesten mit einer Ablehnung verwechselt:

Was du gesehen hastWas es bedeutetWas zu tun ist
A $1 intro trial has already been used with this payment method.Diese Karte hat das Intro-Trial bereits beanspruchtAbonniere zum normalen Preis oder verwende eine Karte, die es noch nicht beansprucht hat. Ein erneuter Versuch bringt nichts
Pricing is temporarily unavailable.Whizi konnte die Preistabelle nicht von Stripe ladenWarte und versuche es später erneut. Auf deiner Seite gibt es dafür keine Lösung
Failed to create Stripe checkout session.Der Checkout-Aufruf ist fehlgeschlagen, und das Backend hat keine Meldung geliefertVersuche es einmal erneut. Wiederholt sich der Fehler, kontaktiere den Support

Jeder Fehler, den das Whizi-Backend beim Checkout zurückgibt

Diese kommen vom Server und treffen daher mit einem HTTP-Status und einem Fehlercode ein, den der Support in einem Netzwerk-Trace abgleichen kann. Jeder Backend-Fehlertext ist JSON in der Form {"error": {"code": "...", "message": "..."}}, der Code steht also direkt neben der Meldung. Die folgenden Zeilen sind nach HTTP-Status sortiert.

MeldungHTTPCodeAusgelöst, wenn
A plan and billing cycle are required.400invalid_checkout_requestDer Checkout-Body konnte nicht geparst werden
Invalid plan or billing cycle.400invalid_plan_or_cycleDer Plan oder Zyklus lässt sich keinem bekannten Stripe-Preis zuordnen
No subscription item found for the active subscription.400subscription_item_missingEine Plan-Änderung an Ort und Stelle lief gegen ein Abo ohne Posten darauf
The supplied discount must be an active 100% promotion code or coupon ID.400invalid_discountDer angegebene Code ist kein aktiver 100-Prozent-Aktionscode oder keine gültige Coupon-ID
Temporary email addresses are not allowed. Please use a permanent email address.400disposable_email_blockedDie E-Mail des angemeldeten Kontos steht auf der Liste der Wegwerf-Domains
A $1 intro trial has already been used with this payment method.403duplicate_trial_payment_methodDer Karten-Fingerabdruck hat das Intro-Trial bereits beansprucht
User not found.404not_foundDie Checkout-Route konnte deine Nutzerzeile nicht lesen
Pricing is temporarily unavailable.503pricing_unavailableDie lokalisierte Preistabelle konnte nicht von Stripe gelesen werden

Was bei jedem einzelnen zu tun ist: Die Ablehnung des Intro-Trials hat einen eigenen Abschnitt weiter unten. Pricing is temporarily unavailable. ist serverseitig: HTTP 503, das zurückgegeben wird, wenn die lokalisierte Preistabelle nicht von Stripe gelesen werden kann, und es gibt keine Einstellung in deinem Konto, die das ändert. Failed to create Stripe checkout session. ist überhaupt keine Server-Meldung, weshalb sie auch keinen Grund nennt: Es ist der eigene Ausweichtext der Website, gezeigt, wenn der Checkout-Aufruf fehlschlägt und das Backend keine Meldung liefert. Bei beiden gilt: warten und erneut versuchen.

A plan and billing cycle are required. und Invalid plan or billing cycle. bedeuten beide, dass die Anfrage keinen Plan enthielt, den der Server erkennt. Beginne daher erneut auf der Preisseite und wähle dort den Plan sowie den Umschalter für monatlich oder jährlich, statt einen alten oder bearbeiteten Checkout-Link wiederzuverwenden.

User not found. bedeutet, dass deine Sitzung auf eine Nutzerzeile verweist, die der Server nicht lesen kann. Melde dich ab, wieder an und starte den Checkout erneut.

No subscription item found for the active subscription. tritt bei einer Plan-Änderung auf, nicht beim Erstkauf, und lässt sich nicht über die Oberfläche beheben. Kontaktiere den Support.

Fehler, die die Website zeigt, bevor der Checkout überhaupt öffnet

Diese kommen vom Browser, nicht vom Server, und haben deshalb keinen HTTP-Code. Sie bedeuten im Grunde alle dasselbe: Etwas ist fehlgeschlagen, während Whizi dein Konto für die Übergabe an Stripe vorbereitet hat, sodass nie eine Belastung versucht wurde.

MeldungAusgelöst, wenn
Failed to create Stripe checkout session.Der Checkout-Aufruf ist fehlgeschlagen, und das Backend hat keine Meldung geliefert
Could not open checkout. Please try again.Der Checkout-Aufruf des Upgrade-Modals ist mit einer Ausnahme ohne Meldung abgebrochen
Authentication failed. Please sign in again.Der Token-Abruf lieferte vor dem Checkout nichts zurück
Failed to save user before checkout.Der Aufruf zum Speichern des Nutzers vor dem Checkout war nicht erfolgreich
Could not prepare your account for checkout.Die Preisseite konnte den Nutzer vor dem Checkout nicht speichern
Missing user or Stripe customer details.Die Nutzer-ID fehlte zum Zeitpunkt des Checkouts
Checkout response did not include a Stripe URL.Der Checkout war erfolgreich, lieferte aber weder eine URL noch eine Abo-ID zurück
Something went wrong while starting your trial. Please try again.Der allgemeine Fehler der Preisseite beim Starten des Trials

Bei allem auf dieser Liste: melde dich ab, wieder an und starte den Checkout erneut von der Preisseite aus. Das behebt die Fälle, in denen der Token-Abruf vor dem Checkout nichts zurücklieferte, was Authentication failed. Please sign in again. meldet.

Checkout response did not include a Stripe URL. ist die Ausnahme: Sie bedeutet, dass der Aufruf erfolgreich war. Öffne deine Kontoeinstellungen und prüfe, ob dort bereits ein Abo vorhanden ist, bevor du erneut zu zahlen versuchst.

Zwei weitere erscheinen auf den Anmelde- und Registrierungsseiten, wenn du zuerst einen Plan wählst und dich danach anmeldest: Signed in, but checkout could not start. Please choose your plan again. und Your account was created, but checkout could not start. Please sign in and choose your plan again. Beide bedeuten, dass der Konto-Teil funktioniert hat und nur die Übergabe fehlgeschlagen ist. Dein Konto existiert. Geh zur Preisseite und wähle den Plan erneut.

Eine letzte Ursache für einen rätselhaften Fehler: Wiederholtes Auslösen des Checkouts kann den Rate-Limiter auslösen, der HTTP 429 und Too many requests. Please wait and try again. zurückgibt. Jede Anfrage auf dem Konto zählt, egal über welche Route, gegen eine Obergrenze von 30 pro Minute. Warte eine Minute, statt erneut zu klicken.

Die Ablehnung des Intro-Trials, die kein erneuter Versuch behebt

A $1 intro trial has already been used with this payment method. ist HTTP 403 mit dem Code duplicate_trial_payment_method. Es ist der einzige Checkout-Fehler auf dieser Seite, den ein erneuter Versuch niemals behebt.

Die Prüfung ist an die Karte gebunden, nicht an das Konto: Die Ablehnung wird zurückgegeben, wenn der Karten-Fingerabdruck das Intro-Trial bereits beansprucht hat.

Ein Detail, falls du nach diesem Fehler suchst: Die Meldung sagt tatsächlich "$1", obwohl die Intro-Belastung selbst $0.99 in USD beträgt. Gleiche sie am Wortlaut ab, denn die Form "$1" ist genau das, was der Server sendet.

Deine zwei Optionen: Abonniere zum Standardpreis für den gewünschten Plan, oder zahle mit einer Zahlungsmethode, die das Trial noch nicht beansprucht hat.

Planpreise, die Trial-Bedingungen und was bei der Umwandlung passiert, stehen alle in Abrechnung, Trials und wie du kündigst.

Die Zahlung ist durchgegangen, aber das Konto ist weiterhin im kostenlosen Plan

Eine belastete Karte zusammen mit einem Konto, das sich weiterhin wie ein kostenloses verhält, ist ein anderes Symptom als ein fehlgeschlagener Checkout, und dafür gibt es eine eigene Seite.

Lies du hast bezahlt, aber die Plan-Funktionen sind noch gesperrt für die Meldungen, die in diesem Zustand erscheinen, die Prüfung, die dir zeigt, welches Konto das Abo hält, und was du an den Support schicken solltest.

Was Whizi dir nicht sagen kann

Drei Lücken, damit du keine Zeit mit der Suche nach Antworten verschwendest, die es nicht gibt.

Whizi sieht nie, warum deine Bank eine Karte abgelehnt hat, weil dieser Austausch auf der gehosteten Checkout-Seite von Stripe stattfindet, außerhalb von Whizis Codebasis. Eine Durchsuchung beider Whizi-Repos ergab keine einzige Meldung zu einer abgelehnten Karte oder Zahlung, und der Stripe-Webhook-Handler enthält keine Meldung zu einer abgelehnten Zahlung. Es gibt also keinen in deinem Konto gespeicherten Ablehnungsgrund, keinen Wiederholungsbutton und nichts, das Whizi überschreiben könnte. Der Grund liegt bei deiner Bank.

Whizi hat außerdem keine Meldung für eine fehlgeschlagene oder überfällige Verlängerung. In keinem der beiden Repos existiert dafür ein nutzerseitiger Text, sodass du bei einer später fehlschlagenden Verlängerungszahlung keinen Whizi-Fehler bekommst, der sie erklärt. Der einzige verlängerungsnahe Hinweis, den es gibt, ist eine Push-Benachrichtigung mit dem Text "Your subscription is no longer active." unter dem Titel "Whizi subscription updated", die gesendet wird, wenn ein RevenueCat-Webhook ein Konto auf die kostenlose Stufe zurücksynchronisiert. Das ist der RevenueCat-Webhook-Pfad, also keine Meldung über eine fehlgeschlagene Stripe-Verlängerung.

Die Abrechnung von Whizi läuft über Stripe, daher wird dort entschieden, welche Karten überhaupt zahlen können, nicht bei Whizi. Eine russische oder iranische Karte kann die Registrierung nicht abschließen. Ukraine, Kasachstan, Türkei, Indonesien und Indien funktionieren durchgängig.

Checkliste
  • Eine echte Kartenablehnung kommt von deiner Bank über Stripe, nicht von Whizi
  • Whizi hat keine Meldung zu einer abgelehnten Karte und keinen Ablehnungsgrund, den es dir zeigen kann
  • Whizi-Formulierung im Fehler bedeutet, dass es keine Ablehnung war
  • Sitzungsfehler beheben sich durch Ab- und wieder Anmelden und einen erneuten Versuch von der Preisseite aus
  • Pricing is temporarily unavailable ist serverseitig: warten, nicht in einer Schleife erneut versuchen
  • Das Intro-Trial ist an den Karten-Fingerabdruck gebunden, nicht an das Konto
  • Belastet, aber weiterhin im kostenlosen Plan ist ein anderes Symptom, behandelt in subscription-not-active

Häufige Fragen

Warum sagt Whizi, meine Zahlung sei fehlgeschlagen, aber meine Bank zeigt keinen Versuch?

Weil die Meldung, die du gesehen hast, von der Website ausgelöst wurde, bevor Stripe überhaupt erreicht wurde, also wurde nie eine Belastung versucht. Der schnelle Weg, das von einer echten Backend-Ablehnung zu unterscheiden: Eine Backend-Ablehnung kommt als JSON mit einem Fehlercode an, etwa pricing_unavailable oder invalid_plan_or_cycle, und zeigt in einem Netzwerk-Trace einen HTTP-Status. Eine browserseitige Meldung hat beides nicht. Trug das, was du gesehen hast, keinen Code, hat nichts deine Bank erreicht.

Was bedeutet A $1 intro trial has already been used with this payment method.?

Es bedeutet, dass die von dir eingegebene Karte das Intro-Trial bereits beansprucht hat. Es ist keine Ablehnung: Whizi hat überhaupt keine Meldung zu einer abgelehnten Karte, und diese kommt von Whizis eigener Checkout-Route als HTTP 403 mit dem Code duplicate_trial_payment_method, den es sich lohnt zu zitieren, wenn du dich meldest. Abonniere entweder zum Standardpreis oder verwende eine Zahlungsmethode, die das Trial noch nicht beansprucht hat.

Ich habe Pricing is temporarily unavailable. bekommen. Ist meine Karte das Problem?

Nein. Es ist HTTP 503 pricing_unavailable, und es kommt von der Route, die die lokalisierte Preistabelle von Stripe liest, nicht von der Checkout-Route, die eine Karte entgegennehmen würde. Auf deiner Seite gibt es keine Lösung, warte also, statt eine andere Karte zu versuchen. Hast du stattdessen Failed to create Stripe checkout session. gesehen, ist das eine andere Meldung mit einem anderen Ursprung: der Ausweichtext der Website, wenn der Checkout-Aufruf fehlschlägt und das Backend keine Meldung liefert.

Mein Aktionscode wurde abgelehnt. Warum?

Der Checkout gibt The supplied discount must be an active 100% promotion code or coupon ID. als HTTP 400 invalid_discount zurück. Das Rabattfeld beim Checkout akzeptiert nur einen aktiven 100-Prozent-Aktionscode oder eine gültige Coupon-ID, ein abgelaufener Code oder ein teilweiser Rabattcode wird dort also abgelehnt. Entferne ihn und schließe zum normalen Preis ab, wenn du jetzt Zugang brauchst.

Whizi hat meine E-Mail beim Checkout abgelehnt. Was ist passiert?

Du hast Temporary email addresses are not allowed. Please use a permanent email address. gesehen. Die Checkout-Route gibt sie als HTTP 400 disposable_email_blocked zurück, wenn die E-Mail-Domain des angemeldeten Kontos auf der Wegwerf-Liste steht. Dieselbe Meldung wird bei der Registrierung als HTTP 403 verwendet. Verwende eine dauerhafte Adresse für das Konto, dann läuft der Checkout weiter.

Ich wurde zweimal belastet. Was soll ich tun?

Kontaktiere den Support mit beiden Stripe-Belegen, statt blind zu kündigen. Kündigen ist eine eigene Aktion mit eigenem Ergebnis: Für ein aktives Abo antwortet die Kündigungsroute mit Subscription cancellation scheduled for end of billing period., sodass dieses Abo bis zum Ende des bereits bezahlten Zeitraums weiterläuft.