Unable to set currency for a region

I’m an individual in Serbia, taxed as a freelancer. I want my store to have two regions available — EU and Serbia — each with its own currency, pricing, payment methods, and shipping methods. Right away I ran into a problem: I can’t set RSD as the currency for the Serbia region.

The issue is that Serbia isn’t on the list of countries supported by Shopify Payments, so the only payment methods available there are Cash on Delivery and manual bank transfer — no card processing involved at all.

The problem: when I try to save RSD as the currency for the Serbia region, Shopify won’t let me, because currency validation is hard-tied to having Shopify Payments or Adyen as the primary gateway. Since neither is available for Serbia, the region settings simply won’t save with RSD — the system reverts the currency back to the default (EUR).

What doesn’t make sense to me: this validation applies even when no payment gateway that actually needs currency conversion is in use at all. There’s no card processor calculating exchange rates or taking a cut — it’s Cash on Delivery and bank transfer. I don’t see a technical reason to tie the ability to save RSD as a region’s currency specifically to Shopify Payments in this case, since there’s no real currency conversion happening on Shopify’s end for manual methods anyway.

From the July 2025 changelog, I understand manual payment methods now support multi-currency presentment (“Manual payment methods now support multi-currency checkouts”), but in practice this doesn’t solve my problem — the region settings still won’t save with RSD.

How can I actually solve this? Support hasn’t been able to help. Opening a separate store for Serbia or using an automatic currency-conversion app aren’t options that work for me.

The validation is not about exchange rate maths, which is why it reads as arbitrary from where you are sitting. It is about which gateway can settle the money.

Selling in a local currency is only supported by Shopify Payments and Adyen. Orders placed through other payment providers get processed in your store’s default currency instead. Some apps will even display prices in a chosen currency and then hand the customer back to the default at checkout, which is worse than not offering it at all.

So the market currency field is not really a display setting. It is a promise that something downstream can actually charge in that currency. Cash on delivery and bank transfer involve no processor at all, so there is nothing there to make that promise, and the field falls back to your default. Serbia missing from the Shopify Payments list is the whole cause, and no amount of not needing conversion changes it.

Which means the lever you have is the store default currency, not the market currency. If most of your volume is Serbian and those people are handing over dinars in cash or moving them by bank transfer anyway, a store that defaults to RSD matches what is physically happening better than one defaulting to EUR. Your EU side then becomes a display and manual reconciliation problem rather than the Serbian side being one. It is the same problem either way, you just get to pick which side of the border absorbs it.

What is the split right now, is Serbia the bulk of your orders or is the EU the side you are building toward? That decides which default hurts less.

This appears to be a Shopify Markets limitation: manual payments may support multi-currency checkout, but RSD still requires a supported payment gateway for the region currency. If Shopify Support can’t override it, there’s currently no native way to use RSD for Serbia in the same store.

Thank you for answers!

But you are talking about scenarios where a payment gateway is involved, but I don’t have one and won’t be using one. Because of that, I consider restricting the local currency setting to be a flaw.

“Cash on delivery and bank transfer involve no processor at all, so there is nothing there to make that promise, and the field falls back to your default.” — I don’t understand what needs to be guaranteed in this case. What makes it so difficult to simply display the product prices and total order amount in RSD? The customer will just pay the courier in RSD upon delivery anyway.

Obviously, I want to expand internationally, but maintaining two separate catalogs instead of one just because I need two different currencies is inefficient and costly.

I have a few ideas on how to work around this, but writing custom code was not part of my plan.

Hey @aliya_k, local currency per market is tied to your primary gateway, and since Serbia isn’t a Shopify Payments country there’s nothing for RSD to hang off, so it keeps reverting to your default. The market currency is what the buyer actually gets charged at checkout, so Shopify only lets you set one a gateway can settle in, and COD and bank transfer ride on the store currency. The real decision is which single currency you charge in: stay on EUR and take Serbian orders in EUR by bank transfer, or switch the store currency to RSD under Settings > General and accept the EU market prices in RSD too. A converter app only changes the displayed price, the charge still lands in store currency. Place a test order in the Serbia market and check the currency on the order.

@aliya_k

If you’re not using a payment gateway, this may be a storefront-display question rather than a checkout-currency question. Changing a currency symbol in the theme is only cosmetic; the underlying market, price, taxes, and reporting can still remain in the store currency.

Could you share the store country, primary market, target region, and whether customers ever complete checkout? With those four details, it should be possible to tell whether Shopify Markets can handle the intended currency properly or whether you only need localized price display.

Hey @aliya_k, you’ve diagnosed this exactly right – it’s a real platform limitation, not something you’re missing. Confirmed in Shopify’s own docs: local-currency display/checkout is gated to Shopify Payments/Adyen no matter what payment methods are actually active in that market. Orders through any other provider always process in your store’s default currency, so the validation isn’t “smart” about COD/bank transfer having no conversion need.

The fix: the currency lock only applies to a market override that differs from your store’s default currency. So instead of trying to set RSD as a market-level override, make it your store-wide default currency:

  1. Settings → General → change store currency to RSD.
  2. Leave the Serbia market’s currency as “use store default” (don’t override it) – this skips the Shopify Payments check entirely, since you’re not setting a local currency, just using the default.
  3. COD/bank transfer work fine with the default currency, no gateway needed.
  4. For the EU market, you can still set custom prices per market – you just won’t get the EUR currency symbol unless you get Shopify Payments/Adyen access (e.g. via an EU-eligible business entity).

Basically: flip which currency is “default” vs. “override,” and the restriction disappears for the Serbia side.

If you want true EUR display+checkout for the EU market too, that realistically requires Payments/Adyen eligibility (an EU-based entity) – there’s no way around that part natively. Might also be worth filing this as a specific feature request, since manual-payment-only markets clearly don’t need the gateway-currency dependency at all.