generic_decline HTTP 402 Stripe Declines

Stripe Error: generic_decline –

At the API level, a generic decline is triggered when Stripe Radar blocks a payment or the card issuer declines the transaction for an unknown reason. This does not necessarily mean the card is invalid or that there are insufficient funds.

Official documentation ↗

Root Causes

1.

Stripe Radar

Stripe's machine learning-powered fraud detection system may have blocked the payment.

2.

Card issuer decline

The card issuer declined the transaction for an unknown reason.

Resolution

1.Check Stripe Radar status

Verify if your account is in good standing and has not been flagged for suspicious activity.

2.Contact card issuer

Reach out to the card issuer to confirm their decline reason and provide additional information about the transaction.

Code Examples


            stripe.Charge.create(amount=1000, currency='usd', source='tok_visa')
          

            const charge = await stripe.charges.create({ amount: 1000, currency: 'usd', source: 'tok_visa' });
          

            charge = Stripe::Charge::create(array('amount' => 1000, 'currency' => 'usd', 'source' => 'tok_visa'));
          

            curl -X POST https://api.stripe.com/v1/charges -u YOUR_SECRET_KEY: -d "amount=1000&currency=usd&source=tok_visa"
          

FAQ

What does a generic decline mean?

A generic decline means that Stripe Radar blocked the payment or the card issuer declined the transaction for an unknown reason.

How do I resolve a generic decline?

Check Stripe Radar status and contact the card issuer to confirm their decline reason and provide additional information about the transaction.

Can I retry a generic decline?

Yes, but ensure you address the underlying issue causing the decline.

Independent reference. Always verify against the official Stripe Declines documentation.