What transaction_not_allowed means
The issuer has rules on the card that block this specific charge. Often the card is fully funded and active — it just can't be used for recurring SaaS subscriptions, can't run on non-domestic merchants, or the merchant category code (MCC) is on a blocklist.
Why it matters for SaaS
This is one of the highest-impact declines for B2B SaaS billing. Corporate cards frequently ship with recurring-charge blocks enabled by default; the finance team doesn't realize until a renewal fails. A single transaction_not_allowed on an annual plan can mean five-figure revenue at risk, and no amount of automated retries will recover it.
The recovery play
- Stop retries immediately. This is not a soft decline — it will fail every time until the card's rules change.
- Email a clear, contextual ask. "Your card declined this as a recurring charge. Please ask your bank to enable subscription payments, or update to a different card here."
- Hand to a human within 24 hours. On B2B accounts, loop in the customer success owner — automated email rarely closes a transaction_not_allowed on its own.
Frequently asked questions
›What does transaction_not_allowed mean in Stripe?
The issuer is blocking this specific type of transaction for this card. Common causes: the card doesn't allow recurring/subscription charges, doesn't allow international purchases, or is restricted to specific merchant category codes. The card itself is fine — it just can't be used this way.
›Can transaction_not_allowed be retried?
Not without the cardholder's intervention. Retrying will fail with the same code until the cardholder calls the bank to enable the transaction type or switches to a different card. Send an update-card email instead.
›Why does this hit B2B SaaS specifically?
Many corporate cards are locked down to specific MCCs or block recurring charges by default. Finance teams often don't realize until a renewal fails. This decline is one of the biggest hidden causes of churn on B2B annual plans paid by corporate card.
