Afwijzingscodes
Stripe weigeringscodes: wat elke code betekent en hoe je het oplost
Gecontroleerd op
Stripe weigeringscodes vertellen je waarom een kaartbetaling mislukte bij Stripe. Sommige komen van de bank van de kaart, zoals `insufficient_funds` of `expired_card`; een paar komen van Stripe zelf, zoals `fraudulent` of `merchant_blacklist`. Stripe retourneert ze als de `decline_code` bij een `card_declined` fout. Elke pagina hieronder legt één code uit, zegt of een nieuwe poging kan werken volgens de regels van het kaartnetwerk, en toont wat PlatformDTC checkout en abonnementsverlengingen ermee doen.
| Code | Betekenis |
|---|---|
| authentication_required | De bank wil dat de kaarthouder de betaling verifieert, meestal met 3D Secure. |
| authentication_not_handled | Verificatie was vereist, de klant heeft deze overgeslagen, en de bank heeft opnieuw afgewezen. |
| approve_with_id | De bank kon de betaling zoals verzonden niet autoriseren; nog één poging kan werken. |
| call_issuer | De bank weigerde zonder reden en wil dat de kaarthouder contact opneemt. |
| card_not_supported | De kaart kan niet worden gebruikt voor dit soort aankoop. |
| card_velocity_exceeded | Het saldo, de kredietlimiet of de bedraglimiet van de kaart is bereikt. |
| currency_not_supported | De kaart kan niet worden belast in de valuta van de betaling. |
| do_not_honor | De bank weigerde de kaart zonder opgave van reden. |
| do_not_try_again | Verouderde code: geweigerd om een onbekende reden; breng deze kaart niet opnieuw in rekening. |
| duplicate_transaction | Een identieke betaling met dezelfde kaart werd zojuist ingediend. |
| expired_card | De kaart is over de vervaldatum heen. |
| fraudulent | Stripe's fraudebestrijding vermoedde dat de betaling frauduleus was en blokkeerde deze. |
| generic_decline | Afgewezen om een onbekende reden, of geblokkeerd door Stripe Radar of Adaptive Acceptance. |
| incorrect_address | Het ingevoerde factuuradres komt niet overeen met de gegevens van de bank. |
| incorrect_cvc | De beveiligingscode (CVC) van de kaart is verkeerd. |
| incorrect_number | Het ingevoerde kaartnummer is verkeerd. |
| incorrect_pin | De ingevoerde pincode op een kaartlezer is verkeerd. |
| incorrect_zip | De factureringspostcode komt niet overeen met de gegevens van de bank. |
| insufficient_funds | De kaart heeft niet genoeg geld of krediet voor deze betaling. |
| invalid_account | De kaart of de rekening erachter is niet langer geldig. |
| invalid_amount | Het betalingsbedrag is ongeldig of hoger dan wat de kaart toestaat. |
| invalid_cvc | De beveiligingscode (CVC) van de kaart is onjuist. |
| invalid_expiry_month | De vervalmaand van de kaart is ongeldig. |
| invalid_expiry_year | Het vervaljaar van de kaart is ongeldig. |
| invalid_number | Het kaartnummer is onjuist. |
| invalid_pin | De ingevoerde pincode is onjuist. |
| issuer_not_available | De bank van de kaart kon niet worden bereikt, dus de betaling is nooit geautoriseerd. |
| lost_card | De kaart is als verloren gemeld. Deze kan niet worden gebruikt; de klant heeft een andere kaart nodig. |
| merchant_blacklist | De betaling kwam overeen met een vermelding op de eigen Stripe blokkeerlijst van de winkel. |
| new_account_information_available | De kaart of het bijbehorende account is ongeldig; de bank heeft er mogelijk nieuwere gegevens voor. |
| no_action_taken | De kaart werd geweigerd om een reden die de bank niet heeft gedeeld. |
| not_permitted | De bank zegt dat deze betaling niet is toegestaan met deze kaart. |
| offline_pin_required | Alleen persoonlijk: de kaart moet worden ingevoerd en een pincode moet worden ingetoetst. |
| online_or_offline_pin_required | Alleen persoonlijk: de kaart heeft een pincode nodig, via Online PIN of chip en pincode. |
| pickup_card | De kaart kan niet worden gebruikt voor deze betaling; deze kan als verloren of gestolen zijn opgegeven. |
| pin_try_exceeded | Te veel verkeerde pincode pogingen; de klant moet een andere kaart of methode gebruiken. |
| processing_error | Er is een fout opgetreden bij het verwerken van de kaart. Meestal tijdelijk. |
| reenter_transaction | De bank kon de betaling om een onbekende reden niet verwerken; probeer het opnieuw. |
| restricted_card | De kaart kan niet worden gebruikt voor deze betaling; deze is mogelijk als verloren of gestolen gemeld. |
| revocation_of_all_authorizations | De bank heeft geweigerd; doorgaans heeft de kaarthouder alle toekomstige betalingen stopgezet. |
| revocation_of_authorization | De bank heeft geweigerd; doorgaans heeft de kaarthouder betalingen aan deze winkel ingetrokken. |
| security_violation | De bank heeft geweigerd om een reden die niet werd gedeeld; vaak een veiligheidsregel. |
| service_not_allowed | De kaart is geweigerd om een reden die de bank niet heeft opgegeven. |
| stolen_card | De kaart is als gestolen gemeld. Deze kan niet opnieuw worden gebruikt. |
| stop_payment_order | De bank heeft geweigerd; de naam van de code verwijst naar een stopbetalingsopdracht voor de kaart. |
| testmode_decline | Een Stripe testkaartnummer werd gebruikt bij een echte betaling. |
| transaction_not_allowed | De bank heeft geweigerd; de kaart staat dit type transactie niet toe. |
| try_again_later | Verouderde code: de bank weigerde om een onbekende reden; probeer het later opnieuw. |
| withdrawal_count_limit_exceeded | De klant heeft het beschikbare saldo of de kredietlimiet op de kaart overschreden. |
| mobile_device_authentication_required | De betaling vereist authenticatie; de klant moet zijn telefoon opnieuw tikken. |
| card_declined | Stripe's foutcode voor elke geweigerde kaart; de decline_code zegt waarom. |
| payment_intent_authentication_failure | De kaart heeft de authenticatiecontrole van de bank niet doorstaan (zoals 3-D Secure). |
Welke Stripe weigeringscodes opnieuw kunnen worden geprobeerd
Stripe categoriseert veel weigeringen als algemeen, dus de exacte reden is vaak onduidelijk. Als vuistregel kunnen codes voor onvoldoende saldo, limiet en tijdelijke problemen later worden opgelost; verkeerde kaartgegevens vereisen dat de klant ze opnieuw invoert; verloren, gestolen, gesloten, beperkte en verlopen kaarten vereisen een andere kaart.
Stripe retourneert ook een adviescode bij sommige weigeringen: `do_not_try_again` betekent de kaart niet opnieuw gebruiken voor die betaling, `try_again_later` betekent dat een nieuwe poging is toegestaan, en `confirm_card_data` betekent dat sommige kaartgegevens onjuist zijn. Stripe adviseert maximaal acht nieuwe pogingen voor een betaling die nieuwe pogingen toestaat.
Volgens het standaard vaste schema (nieuwe pogingen met 1, 3, 5 en 7 dagen ertussen) stoppen weigeringen in de laatste twee groepen ook bij de eerste mislukking: de kaart wordt niet opnieuw geprobeerd, het abonnement wordt als achterstallig gemarkeerd en de klant ontvangt de e-mail om de kaart bij te werken of de betaling te bevestigen. Alleen de andere groepen worden volgens dat schema opnieuw geprobeerd.
| Groep | Voorbeeldcodes | Wat er gebeurt |
|---|---|---|
| Onvoldoende saldo | `insufficient_funds` | Opnieuw geprobeerd op de waarschijnlijke betaaldag van de klant, of 2, 5, 8, 13 en 18 dagen na de eerste weigering: tot 6 pogingen (7 bij PayPal, 2 bij een prepaidkaart) |
| Tijdelijk | `processing_error`, `issuer_not_available`, `try_again_later`, `card_velocity_exceeded`, `card_decline_rate_limit_exceeded` | Opnieuw geprobeerd 2, 5 en 8 dagen na de eerste weigering: tot 4 pogingen |
| Geen reden opgegeven | `do_not_honor`, `generic_decline`, `call_issuer`, `approve_with_id`, `no_action_taken`, `duplicate_transaction` | Eén nieuwe poging 48 tot 72 uur later, daarna wordt de klant om een nieuwe kaart gevraagd |
| Bankbevestiging nodig | `authentication_required`, `authentication_not_handled`, `mobile_device_authentication_required` | Geen blinde nieuwe poging; de klant wordt gevraagd de betaling bij hun bank te bevestigen |
| Kaart kan niet worden gebruikt | `lost_card`, `stolen_card`, `expired_card`, `incorrect_number`, `incorrect_zip`, `restricted_card`, `pin_try_exceeded`, `do_not_try_again` | Nooit opnieuw geprobeerd; de klant krijgt een één-klik link om de kaart bij te werken |
Wat PlatformDTC doet bij het afrekenen
De klant ziet de weigeringsmelding van Stripe, plus een duidelijke hint voor de veelvoorkomende codes, zoals "Uw kaart heeft onvoldoende saldo. Probeer een andere kaart." en een optie om direct een andere kaart te proberen. Voor `lost_card`, `stolen_card`, `pickup_card`, `fraudulent` en `merchant_blacklist` is de hint altijd de algemene "Uw kaart is geweigerd. Probeer een andere kaart of neem contact op met uw bank.", zodat de klant nooit wordt verteld dat een kaart als verloren of gestolen is gemeld of is gemarkeerd.
Als de winkel PayPal kaartbetalingen als back-up heeft gekozen, kan een bankweigering zonder blijvende reden, zoals `do_not_honor` of `processing_error`, opnieuw worden geprobeerd via PayPal, waar de klant de kaart opnieuw invoert. Weigeringen wegens onvoldoende saldo, 3-D Secure, verkeerde gegevens, ongeldige kaart en fraude worden nooit naar de back-up verplaatst.
Veelgestelde vragen
- Waar vind ik de weigeringscode voor een Stripe betaling?
- In het Stripe Dashboard, open de mislukte betaling: de weigeringsreden wordt getoond met een korte voorgestelde oplossing. In de API is het de `decline_code` op de `last_payment_error` van de `PaymentIntent`, en de `outcome` van de `charge` bevat ook de reden, een adviescode en, wanneer het netwerk er een stuurde, de ruwe netwerkweigeringscode.
- Wat is de meest voorkomende Stripe weigeringscode?
- Stripe zegt dat kaartbanken de meeste weigeringen categoriseren als algemeen (`generic_decline`), wat de exacte reden onduidelijk laat. Als de kaartinformatie correct is, adviseert Stripe de klant te vragen contact op te nemen met hun kaartbank om te achterhalen waarom de betaling is geweigerd.
- Hoe vaak kan ik een geweigerde Stripe betaling opnieuw proberen?
- Stripe adviseert een maximum van acht nieuwe pogingen voor betalingen die nieuwe pogingen toelaten, en waarschuwt dat extra pogingen eruit kunnen zien als fraude voor kaartbanken. Visa staat tot 20 pogingen in 30 dagen toe bij weigeringen die opnieuw kunnen worden geprobeerd en helemaal geen na een Categorie 1 weigering zoals een verloren of gestolen kaart.
- Moet ik de klant de exacte weigeringsreden vertellen?
- Voor de meeste codes, ja: een duidelijke reden zoals een verlopen kaart of een verkeerde beveiligingscode helpt hen het op te lossen. Voor `fraudulent`, `lost_card`, `stolen_card` en `merchant_blacklist` zegt Stripe geen details te geven en de weigering op dezelfde manier te tonen als `generic_decline`.
Bronnen
- Stripe weigeringscodes — Stripe
- Kaartweigeringen — Stripe
- Foutcodes — Stripe
- Visa Core Rules en Visa Product and Service Rules (24 oktober 2026), Tabel 7-2 — Visa