FEHLGESCHLAGENE ZAHLUNGENSTRIPE

Stripe-Ablehnungscodes erklärt: was bei jedem zu tun ist

Stripe-Ablehnungscodes bei Abo-Verlängerungen: Soft vs. Hard Declines, Advice Codes, Grenzen für Wiederholungen und was Sie dem Kunden bei jedem Code sagen.

Veröffentlicht am 9 Min. Lesezeit

Wenn eine Verlängerung bei Stripe fehlschlägt, kommt die Belastung mit einer kurzen Zeichenkette wie insufficient_funds oder do_not_honor zurück. Diese Zeichenkette ist die nützlichste Information, die Sie über den Fehlschlag bekommen. Sie sagt Ihnen, ob ein erneuter Versuch funktionieren kann, ob der Kunde etwas tun muss und was Sie ihm sagen dürfen.

Dieser Ratgeber geht die Ablehnungscodes durch, die für Abos am wichtigsten sind, gruppiert danach, was Sie dagegen tun sollten. Er hält sich an das, was Stripe in seiner Referenz der Ablehnungscodes und seinem Leitfaden zu Kartenablehnungen dokumentiert (beide abgerufen im November 2026), und sagt es, wenn Stripes eigene Seiten Raum für Interpretation lassen.

Wo die Codes stehen

Eine fehlgeschlagene Kartenzahlung bei Stripe kann mehrere Felder tragen. Sie beantworten unterschiedliche Fragen:

Feld Was es Ihnen sagt Wo Sie es finden
decline_code Stripes vereinheitlichter Grund für die Ablehnung durch die Bank, falls sie einen genannt hat Im Fehler und in last_payment_error des PaymentIntent
advice_code Was als Nächstes zu tun ist: erneut versuchen, nicht erneut versuchen oder die Kartendaten prüfen Im Fehler, neben dem Ablehnungscode
network_decline_code Der Rohcode des Kartennetzwerks Im Ergebnis der Belastung
network_advice_code Die eigene Empfehlung des Netzwerks (bei Mastercard seine Merchant Advice Codes) Im Ergebnis der Belastung

Stripe hat die Felder für Network Advice und Network Decline Code im Dezember 2024 zur API hinzugefügt. Stripes Dokumentation warnt, dass sich die Bedeutung eines network_decline_code zwischen Kartennetzwerken unterscheidet; lesen Sie ihn daher immer zusammen mit der Kartenmarke.

Bei Abos lesen Sie diese meist aus dem Webhook invoice.payment_failed: Holen Sie den PaymentIntent der Rechnung und sehen Sie sich last_payment_error an.

Advice Codes zuerst

Der advice_code ist das einfachste Signal, und Stripes Leitfaden zu Kartenablehnungen dokumentiert drei Werte:

  • try_again_later: Die Bank hat abgelehnt, aber Sie dürfen es erneut versuchen. Scheitern wiederholte Versuche, muss der Kunde seine Bank kontaktieren.
  • do_not_try_again: Verwenden Sie diese Karte für diese Transaktion nicht erneut. Den Grund nennt der Ablehnungscode.
  • confirm_card_data: Die Bank hat abgelehnt, weil Kartendaten falsch waren. Der Kunde muss seine Angaben prüfen.

Ist ein Advice Code vorhanden, hat er Vorrang vor jeder allgemeinen Faustregel. Ein do_not_try_again bei etwas, das wie ein Soft Decline aussieht, heißt: aufhören.

Soft vs. Hard Declines

Stripe kennzeichnet nicht jeden Code als soft oder hard, aber die Unterscheidung ist nützlich, und Stripe verwendet sie in seiner Dokumentation zu Wiederholungen:

  • Soft Declines sind vorübergehend. Die Karte ist gültig; die Bank hat diesmal nein gesagt. Ein späterer Versuch kann funktionieren.
  • Hard Declines bedeuten, dass die Karte so, wie sie ist, nicht belastet werden kann. Stripes Seite zu Smart Retries listet die Codes, bei denen es ohne neue Zahlungsmethode nicht erneut versucht: incorrect_number, lost_card, pickup_card, stolen_card, revocation_of_authorization, revocation_of_all_authorizations, authentication_required, highest_risk_level und transaction_not_allowed.

Bei diesen Hard-Decline-Codes plant Stripe weiterhin Wiederholungen auf der Rechnung, aber eine Belastung läuft erst, wenn eine neue Zahlungsmethode hinterlegt ist. Fragt niemand den Kunden, passiert nichts. Die Seite der Wiederholungen erklären wir ausführlich in So funktionieren Stripe Smart Retries.

Die häufigen Codes und was zu tun ist

Die Tabelle unten behandelt die Codes, die Sie bei Abo-Verlängerungen am häufigsten sehen. „Stripes Beschreibung und nächster Schritt“ gibt die Referenz der Ablehnungscodes sinngemäß wieder; „Bei einem Abo“ ist unsere praktische Lesart.

Code Stripes Beschreibung und nächster Schritt Erneut versuchen? Bei einem Abo
insufficient_funds Nicht genug Deckung; der Kunde sollte eine andere Zahlungsmethode verwenden Ja, später Zu einem besseren Zeitpunkt erneut versuchen (nach einem wahrscheinlichen Zahltag); dem Kunden eine E-Mail mit Link zur Aktualisierung senden
generic_decline Aus unbekanntem Grund abgelehnt oder von Radar blockiert; der Kunde kontaktiert die Bank Ein paar Mal Erneut versuchen; E-Mail; dem Kunden vorschlagen, seine Bank anzurufen oder eine andere Karte zu nutzen
do_not_honor Allgemeine Ablehnung durch die Bank ohne bestimmten Grund Ein paar Mal Wie generic_decline
processing_error Fehler bei der Verarbeitung der Karte; erneut versuchen, dann die Bank kontaktieren Ja Bald erneut versuchen; nur bei anhaltendem Fehlschlag eine E-Mail
card_velocity_exceeded Der Kunde hat Guthaben, Kreditlimit oder Transaktionslimit überschritten; die Bank kontaktieren Ja, später Später erneut versuchen; in der E-Mail ein Ausgabelimit erwähnen
expired_card Die Karte ist abgelaufen; eine andere Karte verwenden Nein Zuerst prüfen, ob es ein automatisches Kartenupdate gibt; sonst um eine neue Karte bitten
incorrect_cvc Die CVC ist falsch; mit der richtigen CVC erneut versuchen Nein Den Kunden bitten, seine Karte auf der Aktualisierungsseite neu einzugeben
incorrect_number Die Kartennummer ist falsch Nein Um eine neue Karte bitten
lost_card, stolen_card Als verloren oder gestohlen gemeldet; als allgemeine Ablehnung darstellen Nein Um eine neue Karte bitten, ohne den Grund zu nennen
pickup_card Die Karte kann für diese Zahlung nicht verwendet werden (möglicherweise als verloren oder gestohlen gemeldet); die Bank kontaktieren Nein Um eine neue Karte bitten
fraudulent Stripe vermutet Betrug; dieselbe Nachricht wie bei einer allgemeinen Ablehnung zeigen Nein Mit Vorsicht behandeln; den Grund nicht offenlegen
authentication_required Die Bank verlangt, dass sich der Kunde authentifiziert Nicht ohne den Kunden Einen Link zum Bestätigen der Zahlung senden; siehe SCA bei Verlängerungen
revocation_of_authorization, stop_payment_order Stripe führt diese mit unbekanntem Grund; der Kunde kontaktiert die Bank Nein Um eine neue Zahlungsmethode bitten; prüfen, ob der Kunde aufhören wollte zu zahlen
transaction_not_allowed Auf dieser Karte nicht zulässig Nein Um eine andere Karte oder Zahlungsmethode bitten

Zwei Punkte übersieht man leicht:

  1. Manche Gründe dürfen dem Kunden nicht gezeigt werden. Bei lost_card, stolen_card und fraudulent sagt Stripes Referenz, dass die Ablehnung als allgemeine Ablehnung dargestellt werden soll. Ihre Mahnmail sollte „Ihre Zahlung wurde abgelehnt“ sagen, nie „Ihre Karte wurde als gestohlen gemeldet“.
  2. „Kontaktieren Sie Ihre Bank“ ist eine echte Anweisung. Bei allgemeinen Ablehnungen löst ein Anruf bei der Bank die Sperre oft. Es ist in Ordnung, das in der E-Mail kurz zu sagen.

Grenzen für Wiederholungen sind real

Erneute Versuche sind nicht kostenlos, auch nicht bei Soft Declines. Kartennetzwerke begrenzen, wie oft ein Händler eine abgelehnte Karte erneut belasten darf, und Banken können übermäßige Wiederholungen als Betrugssignal werten.

Laut Stripes Support-Artikel zu wegen übermäßiger Wiederholungen blockierten Zahlungen (abgerufen im November 2026) verbieten Visas Regeln im Allgemeinen mehr als 15 Wiederholungen einer einzelnen Zahlung innerhalb von 30 Tagen. Bei Visa-Transaktionen mit integrierten Preisen blockiert Stripe Wiederholungen nach dem 15. Versuch, wenn es die Erfolgschance als gering einschätzt. Stripes eigene Standardwerte (8 Versuche bei Smart Retries) liegen deutlich darunter, aber eigene Wiederholungslogik außerhalb von Stripe kann die Grenze überschreiten, wenn Sie nicht aufpassen.

Das entsprechende Signal bei Mastercard ist der Merchant Advice Code, den Stripe als network_advice_code bereitstellt. Dokumentation von Zahlungsabwicklern wie Braintrees Referenz der Merchant Advice Codes beschreibt Codes, die „nicht erneut versuchen“ bedeuten, und einen, der bedeutet, dass der Karteninhaber die wiederkehrende Zahlung gekündigt hat. Wenn Sie diese sehen, hören Sie auf, diese Karte erneut zu belasten.

Praktische Regeln:

  • Zählen Sie jeden Versuch pro Rechnung, auch die, die Ihr eigener Code auslöst.
  • Hören Sie bei einem Hard Decline oder der Empfehlung do_not_try_again sofort auf.
  • Versuchen Sie dieselbe Karte nicht mehrmals am selben Tag „für alle Fälle“.
  • Verteilen Sie Wiederholungen bei Soft Declines und legen Sie sie auf Zeitpunkte, zu denen wahrscheinlich Geld verfügbar ist.

Was Sie dem Kunden sagen, nach Gruppe

Die meisten Teams senden für jeden Fehlschlag dieselbe E-Mail. Ein paar Varianten nach Ablehnungsgruppe funktionieren besser und kosten nicht viel zusätzliche Arbeit.

Gruppe Codes Botschaft der E-Mail
Deckung oder Limits insufficient_funds, card_velocity_exceeded „Wir versuchen es am [Datum] erneut. Wenn Sie lieber eine andere Karte verwenden möchten, aktualisieren Sie sie hier.“
Unklar generic_decline, do_not_honor, processing_error „Ihre Bank hat die Zahlung abgelehnt. Oft ist das eine vorübergehende Sperre; ein kurzer Anruf bei Ihrer Bank oder eine andere Karte löst es meist.“
Karte unbrauchbar expired_card, lost_card, stolen_card, pickup_card, incorrect_number „Wir brauchen eine neue Karte, damit Ihr Abo aktiv bleibt.“ Kein Grund genannt.
Authentifizierung authentication_required „Ihre Bank bittet Sie, diese Zahlung zu bestätigen. Das dauert eine Minute.“
Kartendaten incorrect_cvc, Empfehlung confirm_card_data „Einige Kartendaten stimmten nicht überein. Bitte geben Sie Ihre Karte erneut ein.“

Fertige E-Mails für jeden Schritt finden Sie in unseren Vorlagen für Mahnmails.

Ablehnungscodes richtig protokollieren

Was Sie nicht messen, können Sie nicht verbessern. Speichern Sie für jede fehlgeschlagene Verlängerung:

  • Rechnungs-ID, Kunden-ID, Betrag und Währung.
  • Nummer und Datum des Versuchs.
  • decline_code, advice_code, network_decline_code, network_advice_code.
  • Kartenmarke, Kartentyp (Kredit, Debit, Prepaid) und Land.
  • Ergebnis: zurückgewonnen (und wie: Wiederholung, neue Karte, Authentifizierung) oder verloren.

Mit ein paar Monaten Daten können Sie die Fragen beantworten, die zählen: welche Codes sich durch Wiederholung erholen und welche nur, wenn der Kunde handelt, ob Prepaid-Karten häufiger scheitern (siehe Prepaid- und virtuelle Karten) und ob Ihre E-Mails oder Ihre Wiederholungen den Großteil der Arbeit leisten.

Gruppierung für Berichte

Rohcodes sind für einen Monatsbericht zu feingliedrig. Gruppieren Sie sie:

Berichtsgruppe Codes
Soft: Deckung insufficient_funds, card_velocity_exceeded
Soft: unklar generic_decline, do_not_honor, processing_error, try_again_later
Hard: Karte expired_card, lost_card, stolen_card, pickup_card, incorrect_number, incorrect_cvc
Hard: Autorisierung revocation_of_authorization, revocation_of_all_authorizations, stop_payment_order, transaction_not_allowed
Authentifizierung authentication_required
Risiko fraudulent, highest_risk_level

Behalten Sie den Rohcode in Ihren Daten, damit Sie später neu gruppieren können. Stripe fügt mit der Zeit Codes hinzu und kennzeichnet andere als veraltet; Stripes Referenz markiert inzwischen einige ältere Codes als veraltet zugunsten von Advice Codes.

Die Behandlung von Ablehnungen testen

Stripe stellt Testkartennummern bereit, die bestimmte Ablehnungscodes auslösen. Bevor Sie Rückgewinnungslogik live schalten, spielen Sie jede Gruppe im Testmodus durch:

  • Ein Soft Decline plant eine Wiederholung und sendet die erste E-Mail.
  • Ein Hard Decline sendet eine E-Mail „neue Karte nötig“ und versucht dieselbe Karte nicht erneut.
  • authentication_required sendet einen Bestätigungslink.
  • lost_card und stolen_card erzeugen eine allgemeine Nachricht.
  • Eine erfolgreiche Zahlung (invoice.paid) stoppt alle E-Mails und Wiederholungen.
  • Jeder Versuch wird mit seinen Codes protokolliert.

Häufige Fehler

  • Jede Ablehnung gleich behandeln. Eine gestohlene Karte acht Mal erneut zu belasten gewinnt nichts zurück und kann beim Netzwerk gegen Sie zählen.
  • Dem Kunden den Rohgrund nennen. „Do not honor“ bedeutet Kunden nichts, und manche Gründe dürfen überhaupt nicht offengelegt werden.
  • Advice Codes ignorieren. Sie existieren genau dafür, Ihnen zu sagen, ob Sie es erneut versuchen sollen.
  • Nur den ersten Fehlschlag lesen. Der Code kann sich zwischen Versuchen ändern; eine Karte kann über einen langen Wiederholungszeitraum von insufficient_funds zu expired_card wechseln.
  • Kein Ausweg bei Hard Declines. Wenn der einzige Weg zur Rückgewinnung eine Wiederholung ist, sind Hard Declines von vornherein verloren.

Für das Gesamtbild der Rückgewinnung fehlgeschlagener Zahlungen, von Wiederholungen über E-Mails bis zur Messung, siehe So gewinnen Sie fehlgeschlagene Zahlungen bei Stripe zurück.

Wie NoChurn hilft

NoChurn liest den Ablehnungscode bei jeder fehlgeschlagenen Verlängerung und behandelt jede Gruppe anders. Soft Declines werden zu Zeitpunkten erneut versucht, die sich an wahrscheinlichen Zahltagen und der Ortszeit des Kunden orientieren (oder Sie behalten Stripe Smart Retries). Hard Declines und Authentifizierungsanfragen überspringen sinnlose Wiederholungen und gehen direkt zu einer von der KI geschriebenen Mahnmail, vor dem Versand geprüft, mit einem Link zu einer gehosteten Seite zur Kartenaktualisierung. Sensible Gründe werden dem Kunden nie gezeigt, und jede Entscheidung wird mit ihrem Code protokolliert.

Es verbindet sich mit einem Klick mit Stripe, und der Preis hängt nur vom MRR ab, ohne Anteil am zurückgewonnenen Umsatz. Siehe fehlgeschlagene Zahlungen und Preise.

PROMPT

Read https://www.nochurn.sh/llms.txt,
then follow https://www.nochurn.sh/docs/quickstart/
to add NoChurn to this app. Use a test key
(nc_test_…) until I say we go live.

Hören Sie auf, Umsatz zu verlieren.

  • Kostenlos bis $300 MRR
  • Keine Karte nötig
  • In 10 Minuten live
  • Nie ein Anteil an dem, was wir retten