Codewerk.
Get a quote
Home/Blog/Which VAT rate applies? A decision tree for cross-border selling

Which VAT rate applies? A decision tree for cross-border selling

Domestic rate, reverse charge, One-Stop-Shop or zero-rated export — four outcomes, three questions. Plus a free calculator that picks the rule for you.

Photo: free stock photography (Unsplash licence) — see imprint

Three questions, four possible answers

Where are you established? Where does the customer receive the goods? Is the customer a business with a valid VAT ID? Almost every EU outcome falls out of those three answers: your domestic rate, reverse charge at 0%, the destination country's rate through the One-Stop-Shop, or a zero-rated export. If your shop cannot express those three inputs, it cannot get the tax right — no plugin will save it.

The VAT ID is not a formality — it is the whole rule

Reverse charge only applies with a valid VAT ID at the time of sale. If the ID is invalid, expired or simply typed in wrong, you are not making a B2B intra-EU supply — you are making a distance sale to what the tax office treats as a consumer, and you owe the destination country's VAT. Validate against VIES, store the timestamped result with the order, and you have a defence. Skip it and you have a liability that grows quietly for years.

The threshold nobody notices they crossed

The EU-wide distance-selling threshold is a single total across all EU countries, not one per country. A shop selling modestly into six countries can cross it without any single market looking significant. The day you cross it, you owe destination VAT — and if you were still charging your own domestic rate, you have been under-collecting on every order since.

Zero-rated does not mean 'no paperwork'

Exporting outside the EU is generally zero-rated — but only if you can prove the goods left. No shipping evidence, no zero rate: the tax office will treat it as a domestic sale and bill you the VAT you never collected. The export documents are not admin overhead; they are the thing that makes the 0% legal.

Build it so one system owns the answer

In Shopware 6 you can drive tax from the customer group, the VAT ID validation and the shipping destination — or hand the entire cart to a tax provider endpoint that returns the tax per line item. Either is fine. What is not fine is the shop and the ERP each calculating tax independently: they will drift apart, and you will find out in an audit rather than in a test.

Try it on your own numbers

We built a free cross-border VAT calculator that applies exactly this decision tree: pick the two countries, say who is buying, and it tells you the rate, the amount and — more usefully — which rule it applied and why. It runs entirely in your browser and stores nothing.

Free tool — runs in your browser, nothing is stored.

Open the cross-border VAT calculator →
Key takeaways
  • Establishment, destination, VAT ID — those three decide the rate.
  • Validate the VAT ID against VIES and store the timestamped proof.
  • The distance-selling threshold is one EU-wide total, not one per country.

We do this for a living — Shopware, Node.js, React, ERP integration and automation for B2B.

Talk to an engineer

// Keep reading

Related articles