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.
Root Causes
Stripe Radar
Stripe's machine learning-powered fraud detection system may have blocked the payment.
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¤cy=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.