Stripe · Decline codes
What does the Stripe merchant_blacklist decline code mean?
Checked
The Stripe decline code merchant_blacklist means the payment was refused because it matched a value on the business's own Stripe block list, such as a card, email or other blocked detail. The card's bank never saw it. Stripe says not to share the reason with the customer: show it as a normal decline. If the block was a mistake, the store must remove the entry before the customer can pay.
- Type
- Block by the store's own rules
- Who declined
- Stripe, using the store's block list
- Retry
- No, not while the entry is on the list
- Shopper action
- Contact the store if they believe it is a mistake
- Merchant action
- Check the block list; remove the entry only if the customer is genuine
- PlatformDTC renewal
- No retry; held past due with an update-card link
What PlatformDTC does
PlatformDTC treats merchant_blacklist as a fraud stop at checkout: it is never moved to a backup processor and never retried, because the store's own rules refused it, and the shopper sees only the generic hint "Your card was declined. Try another card or contact your bank." On renewals, on the fixed schedule or with Smart retry, it gets no automatic retry; the subscription is held past due and the customer is sent a one-click link to pay with a different card.
Why it happens
Stripe lets a business keep a block list of values it never wants to accept. When a new payment matches one of those values, Stripe declines it before it reaches the card network.
Entries usually get there after an earlier dispute or fraud case, or because someone on the team added them by hand.
What the shopper can do
Another card from the same person may be blocked too if the list holds their email or another detail. The fastest route is to contact the store's support.
What the store can do
Show a plain "Your card was declined" message; Stripe recommends not revealing the block.
If a real customer reaches out, look up which list entry matched and decide whether to remove it. Keep entries that came from confirmed fraud or chargebacks.
For developers
decline_code = merchant_blacklist is set by Stripe, not the issuer, so network_decline_code is normally empty. Present it to the customer as generic_decline and do not schedule retries.
Frequently asked questions
- Did the bank decline a merchant_blacklist payment?
- No. Stripe declined it because it matched the store's own block list. The bank never received the request.
- How do I let a blocked customer pay?
- Remove the matching value from your Stripe block list, then ask the customer to pay again. Only do this if you are confident the customer is genuine.
Sources
- Stripe decline codes — Stripe
Related
- fraudulent — Stripe's fraud checks suspected the payment was fraudulent and blocked it.
- stolen_card — The card has been reported stolen. It can't be used again.
- lost_card — The card has been reported lost. It can't be used; the shopper needs another card.
- generic_decline — Declined for an unknown reason, or blocked by Stripe Radar or Adaptive Acceptance.
- new_account_information_available — The card or its account is invalid; the bank may hold newer details for it.
- no_action_taken — The card was declined for a reason the bank did not share.
- not_permitted — The bank says this payment is not permitted on this card.
- offline_pin_required — In-person only: the card needs to be inserted and a PIN entered.