Shopify Inventory for European Merchants: Comma Decimals, EUR Invoices, and Your Own Language
Here is a real Dutch invoice. Thirty-eight lines, printed subtotal €1.401,93 . Imported into an inventory tool that assumed American number formatting, it came out at €140.193,00 — every single unit cost exactly one hundred times too high.
Start Free Trial — 14-day free trial on Starter plan, no credit card required.
Three Things That Break on a European Invoice
The decimal separator is a comma. 3,45 means three euros forty-five. Strip the comma as though it were an American thousands separator and you get 345. Do it to 1.401,93 and you get 1.40193. Both are wrong in different directions, and neither looks obviously wrong in a spreadsheet cell.
The invoice is often in a different currency than the store. A Dutch retailer selling in EUR who buys from a UK supplier gets a GBP invoice. The costs need converting before they mean anything next to your retail prices — and the conversion has to be recorded, not just done in someone's head.
The software is in English. Not fatal, but it's a real tax on the person doing receiving — often not the owner, often not a confident English speaker, and always working at speed against a paper invoice in their own language.
What Shopify Already Handles (and What It Doesn't)
Worth being precise here, because it's easy to blame Shopify for something it isn't doing wrong. Shopify handles European number formatting well on the way out : currency formatting is configurable per store, so German shoppers see €19,99 and Swiss shoppers see CHF 1'000.00, with the symbol, thousands separator and decimal marker all adjustable. Storefront display is a solved problem.
The gap is on the way in . Formatting how you show a price to a customer is a completely different job from reading a number off a PDF your supplier emailed you. There is no Shopify setting that tells an import "the numbers on this document use comma decimals," because Shopify never reads that document in the first place — as covered in our purchase order workflow guide , native POs improved a lot in 2026 and can import line items from a CSV, but somebody still has to produce that CSV from the supplier's document.
It's also worth separating this from EU invoicing apps like Sufio, which are excellent at what they do — but what they do is outbound: generating VAT-compliant invoices for your customers. Reading inbound supplier invoices is the opposite direction and a different problem entirely.
How the Numbers Actually Get Read
The fix isn't a "European mode" toggle — asking merchants to declare their number format is the kind of setting that gets set wrong once and corrupts costs for a year. Most tokens are unambiguous if you read them properly:
One honest limitation. On a document already identified as comma-decimal, a dot-grouped value like 1.250 with no decimal part is still read as 1.25 rather than 1250. It's a known open issue, deliberately not patched in the same pass because changing dot handling is exactly where American formats would start regressing. If your suppliers print dot-grouped thousands without decimals, check those lines on the review screen before posting.
That review screen matters more than the parsing rules do. Every line is shown with its parsed quantity and cost before anything is written to Shopify, so a misread number is something you catch in ten seconds rather than discover in a quarterly report.
Converting a Foreign-Currency Invoice
When the invoice currency differs from your store currency, you set the rate for that invoice and every line converts together. Two design decisions worth knowing about:
The converted figure is what feeds your weighted-average cost , so a GBP invoice and a EUR invoice for the same SKU blend correctly instead of averaging two different currencies together.
The App in Dutch, German, French, Spanish or Italian
Smart Restock now runs in Dutch, German, French, Spanish and Italian as well as English. If your Shopify admin is already in one of those, it starts there — for a lot of merchants there's nothing to configure at all. Otherwise it's one setting, applied immediately, no reload.
That includes the invoice detail screen, which is where the time actually goes: the line table, the matching and splitting dialogs, the messages when something needs attention. Checking in a delivery no longer switches back to English halfway through.
Two things stay put on purpose. Your prices and dates keep the formatting they already had, and product option names like Size and Color are left alone, because those are saved onto your Shopify products and have to keep matching what's in your admin.
AI product generation follows the same idea. When a line item isn't in your catalogue yet and you generate the product from the invoice, you pick the language it writes in — defaulting to your store's country, so a Dutch store gets Dutch without asking. The description and the SEO title and description come out in that language. The product name and brand are left exactly as the supplier wrote them, since that's what your customers search for. As always, generated products land as drafts for you to review, not live on the storefront.
What a European Receiving Run Looks Like
The point of all of it is that your margin reports mean something. A cost that's 100× out isn't a rounding problem — it makes every downstream decision, from what to reorder to what to discount, quietly wrong.
Test it on an invoice that has broken things before
Upload a real supplier invoice with comma decimals and check the parsed costs on the review screen before anything posts. Plans start at $9.99/month with a 14-day free trial.
Comma decimals read correctly, foreign-currency invoices converted on a rate you control, and the whole app in Dutch, German, French, Spanish or Italian.
Supplier invoices that read right the first time
For Shopify merchants across Europe buying in EUR, GBP and anything else — in a language your team actually works in.