Guide
currency_not_supported on Stripe: the card cannot pay in that currency
Last updated 13 August 2026 · written by Bruce McGinley, who builds RecoverFlow
The card does not support the currency you charged in. Stripe's decline codes reference documents currency_not_supported as the card not supporting the specified currency, and the next step as the customer checking with the issuer whether the card can be used for the type of currency specified.
It is not one of the nine codes that stop retries, so Stripe will reattempt it on your schedule. But notice what the retry does: same card, same currency, same question to the same issuer.
On this page
What the code is telling you
The decline is about capability, not funds. The issuer is not saying the customer cannot afford the charge; it is saying this card does not transact in the currency the charge specified.
That framing points at both ends of the transaction. The card has whatever properties the issuer gave it, and your charge specified a currency. The documented resolution path runs through the customer and their issuer: they need to check whether the card can be used for that type of currency.
What retries can and cannot do here
currency_not_supported is not on the nine code list, so Smart Retries or your custom schedule will keep attempting it. Unlike insufficient_funds, where the blocking condition is a number that moves week to week, nothing in this code's documented description is time-shaped. A card that does not support a currency on Tuesday is unlikely to support it on Friday because a schedule waited.
So let the retries run, they cost nothing, but do not treat them as the recovery plan. The recovery plan is a change: the customer asking their issuer about the card per Stripe's documented next step, or the more practical alternative, the customer switching to a card that supports the currency you charge in.
The dunning email writes itself
This is a code where one clear email early is the right call, because waiting adds nothing. The message: the payment could not be processed on this card, and here is a link to use a different one. Whether to mention currency is your choice; the safest phrasing follows the documentation and suggests they check with their bank if they want to keep using the same card.
If you sell internationally and see this code repeatedly, it is worth knowing how much of your failed volume it represents. Our free backtest reads your last 90 days of failed payments and shows the split by code, and the decline code lookup covers the neighbouring codes you will meet on the same journey.
Questions people actually ask
Is currency_not_supported a hard decline?
It is not on Stripe's list of nine codes that stop retry execution, so Stripe retries it on your schedule. The documented condition, a card that does not support the specified currency, is not one that improves with time though.
What should the customer do about currency_not_supported?
Stripe's documented next step: check with the issuer whether the card can be used for the type of currency specified. The practical alternative is paying with a different card that supports the currency.
Will retrying fix a currency_not_supported decline?
A retry resubmits the same charge in the same currency to the same card, so on its own it changes nothing the documentation describes. Retries only help if something else changed in the meantime, such as the customer resolving it with their issuer.
Should I email the customer about this decline?
Yes, and early. Since the condition is not time-based, waiting through a retry window adds nothing. One plain email offering a card update link, with the option of checking with their bank if they want to keep the same card.
Where this came from
Checked against primary sources on 13 August 2026. If Stripe changes something and this page has not caught up, tell us and it gets fixed.
- Stripe: Decline codes reference — the documented meaning and next steps for every code on this page.
- Stripe: Smart Retries — the source for the nine hard decline codes and what happens to scheduled retries after one.
If you would rather not build this yourself
RecoverFlow watches your Stripe account for failed subscription payments, stops retrying the ones that cannot succeed, and emails the customers whose card simply needs replacing. It charges 25% of what it can attribute to a specific action it took, with a $29 monthly floor and a $299 monthly ceiling, and the floor is waived for the first 30 days.
It is early. It is run by one person. If Stripe's own free retry settings are enough for you, use those instead, and there is a page on this site that says exactly when that is the right call.
See how the pricing works
Recover