Why was a customer's charge declined?

A charge can be declined by either the customer’s issuing bank or by one of your block rules, and can happen for a variety of reasons. For both of these types of declines, Stripe will show you the primary reason or risk factor for the decline to help you understand why the payment was not successful.

Issuing Bank

When we submit a charge to your customer’s bank, the issuing bank looks at various different signals including your customer’s spending habits, account balance, and card information such as expiration date and CVC to determine whether or not to accept the charge.

When a charge is declined by your customer’s bank, we show as much information as we receive about the decline in your dashboard. Unfortunately, most decline reasons are generic, so we don’t have much specific information as to why a charge was declined. If all of the card information seems correct, it is best to have your customer contact his or her bank, inquire for more information, and ask that future charges be accepted.

Block rules

At the core of Radar, Stripe’s modern suite of fraud protection tools, is our machine learning system that evaluates all your credit-card based on transactions for fraud. Those transactions we believe are highly likely to be fraudulent are labeled as high risk (highest in our API) and are automatically blocked. These charges are noted as “Payment blocked due to high risk” in the payment detail view and we will also include the primary risk explanation for why the charge was evaluated as high risk.

A charge could also be blocked by one of your custom rules you’ve setup through your rules dashboard. For any of these payments we will note that the payment was blocked by one of your custom rules, and which rule blocked the payment.

Decreasing the likelihood of declines

If you are confident that a high risk payment that was blocked by Stripe is actually legitimate, you can report the charge as safe in the Dashboard. After marking a payment as safe, you (or your customer) can retry the payment–Stripe will react to your feedback accordingly.

Other actions you can take to decrease the likelihood of declines are helping the customer pass through correct credit card number, expiration date and CVC code by adding in validation checks before the customer submits his or her payment. (eg: Did the customer enter in a valid future date when entering an expiration date?). Collecting the CVC can also significantly decrease your decline rates. If you’re not collecting CVC’s and having issues with declines, requiring the value can be a quick & easy fix.

Other additional data you can collect from the customer, such as name, address or billing zip code, can help with decline rates - but impact can vary by credit card brand. If you continue to experience issues with declines, it might be worthwhile to try to collect some of this additional data.

Was this answer helpful? Yes / No