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 →- 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.
Frequently asked questions
The mechanism, in short: on a cross-border supply to a business customer inside the EU, the tax liability shifts to the buyer, and the invoice carries no tax — but only where the customer holds a VAT ID that is valid at the time of sale. An invalid, expired or mistyped ID means it is not a B2B intra-EU supply at all. Whether a given transaction qualifies is a decision for your Steuerberater, not your shop.
Three questions decide it: where are you established, where does the customer receive the goods, and is the customer a business with a valid VAT ID? Almost every EU outcome falls out of those — your domestic rate, reverse charge, the destination country's rate via the One-Stop-Shop, or a zero-rated export. That is the decision tree, not the answer for your case; the answer for your case comes from your Steuerberater.
Earlier than most shops expect, because the EU-wide threshold is a single total across all EU countries — not one per country. A shop selling modestly into six markets can cross it without any individual market looking significant, which is exactly why it gets missed. From that day you owe destination VAT, so if you kept charging your own domestic rate you have been under-collecting since. Track the combined total and let your Steuerberater confirm your position.
Generally zero-rated — but only if you can prove the goods actually left. That proof is the point people miss: no shipping evidence, no zero rate, and the tax office treats the sale as domestic and bills you for VAT you never collected from anyone. So the export documents are not admin overhead; they are the thing that makes the zero rate lawful. Store them with the order, and have your Steuerberater confirm what evidence your case needs.
We do this for a living — Shopware, Node.js, React, ERP integration and automation for B2B.
Talk to an engineer