WooCommerce EU VAT Setup: OSS, Reverse Charge, and Country Rates Explained for Store Owners
I’m Jasper Frumau, a WordPress and WooCommerce developer with 15+ years building EU stores. WooCommerce VAT is the part of running a European shop that quietly trips up the most owners — especially anyone migrating from Shopify, where tax often felt like a setting you switched on once and forgot. In the EU, the rate you charge can depend on where your customer lives, whether they’re a business or a consumer, and how much you sell across borders in a year. Get it wrong and you either overcharge customers or end up owing tax you never collected.
This guide explains the three things every EU WooCommerce store owner needs to understand — the €10,000 OSS threshold, B2B reverse charge, and country-specific VAT rates — and how to configure them in WooCommerce without guessing. It’s written for shop owners, not accountants. Last updated: June 24, 2026.
Quick Summary: If your total cross-border B2C sales to other EU countries stay under €10,000 a year, charge your home country’s VAT rate on everything. Cross that threshold and you must charge the customer’s country rate — then report it all through a single quarterly OSS (One Stop Shop) return instead of registering for VAT in each country. For B2B sales to VAT-registered businesses in other EU states, apply 0% reverse charge after validating their VAT number. In WooCommerce, a dedicated EU VAT plugin handles destination rates, VIES validation, and OSS reporting far better than the built-in manual tax tables.
In This Guide
- Do You Even Need to Worry About EU VAT? The €10,000 Threshold
- How the OSS (One Stop Shop) Scheme Works
- B2B Sales and Reverse Charge
- EU VAT Rates by Country
- Setting Up VAT in WooCommerce
- Frequently Asked Questions
Do You Even Need to Worry About EU VAT? The €10,000 Threshold
If your combined cross-border B2C sales of goods and digital services to other EU countries stay below €10,000 per calendar year, you simply charge your own country’s VAT rate on every order. Only once you pass that EU-wide threshold are you required to charge VAT at the rate of each customer’s country. Domestic sales always use your home rate regardless.
This €10,000 threshold was introduced on 1 July 2021 to give small stores a break: a Dutch shop selling a few hundred euros a year to German and Belgian customers shouldn’t have to juggle three VAT systems. The threshold is a single combined figure for all your cross-border EU sales — not €10,000 per country — and it covers both physical goods and digital products. The moment your running total for the year crosses it, the destination-rate rules kick in for the rest of that year and the next.
One important exception: this threshold only helps businesses established in the EU. If you sell digital services and you’re based outside the EU, or you hold stock in multiple EU countries (for example via Amazon FBA), different rules apply and you may need to register for VAT from your very first sale.
How the OSS (One Stop Shop) Scheme Works
Once you pass €10,000 in cross-border EU sales, OSS lets you charge each customer their own country’s VAT rate and then report and pay all of it through a single quarterly return filed in your home country — instead of registering for VAT separately in every country you sell to. You register once for OSS through your national tax authority’s portal, and it distributes the VAT to the right countries for you.
Before OSS, a store selling across the EU could in theory have to register for VAT in a dozen member states. The One Stop Shop replaced that with one registration and one return covering all of them. Practically, this means your WooCommerce store needs to do two things correctly: apply the right destination VAT rate at checkout, and produce a report you can use to file your OSS return. The first is a store configuration job; the second is mostly an export from your tax plugin or accounting tool.
- Under €10,000/year cross-border: charge home-country VAT on everything; OSS is optional.
- Over €10,000/year cross-border: charge the customer’s country rate on cross-border B2C sales and report via OSS.
- Domestic sales: always your home-country rate, reported on your normal domestic VAT return — not OSS.
B2B Sales and Reverse Charge
When you sell to a VAT-registered business in another EU country, you charge 0% VAT and the buyer accounts for the tax themselves under the reverse-charge mechanism. The catch: you must validate the customer’s VAT number against the EU’s VIES database first, and keep a record of it. If you skip validation and the number turns out to be invalid, the tax authority can hold you liable for the VAT you didn’t charge.
In practice this means your checkout needs an optional VAT-number field for business customers that checks the number against VIES in real time. When a valid number is entered for a different EU country, the store zero-rates the order and notes “VAT reverse-charged” on the invoice. For domestic B2B sales (a Dutch store selling to a Dutch business), normal home-country VAT still applies — reverse charge is only for cross-border intra-EU B2B. Most dedicated EU VAT plugins for WooCommerce handle the VIES lookup and the zero-rating automatically.
EU VAT Rates by Country
Every EU country sets its own standard VAT rate, and they range from 17% in Luxembourg to 27% in Hungary. Once you’re charging destination rates under OSS, your store has to apply the correct rate for each customer’s country automatically — which is exactly why manual tax tables become unmanageable and an automated plugin earns its keep. Here are the standard rates for the main markets EU stores sell into:
| Country | Standard VAT rate |
|---|---|
| Luxembourg | 17% |
| Germany | 19% |
| France | 20% |
| Austria | 20% |
| Netherlands | 21% |
| Belgium | 21% |
| Spain | 21% |
| Italy | 22% |
| Sweden | 25% |
| Hungary | 27% |
Standard rates above are from the European Commission’s published VAT rate tables and current as of June 2026 — always confirm against the official EU VAT rates page before relying on them, since member states do adjust rates. Note that most countries also apply reduced rates to specific categories — books, food, children’s clothing, and similar — so if you sell those goods, the rate isn’t simply the standard one. A good tax plugin maintains these rate tables for you and updates them when governments change them, which is the main reason not to hand-key VAT rates into WooCommerce.
Setting Up VAT in WooCommerce
WooCommerce has built-in tax settings, but for EU compliance most stores need a dedicated EU VAT plugin on top of them. The core settings handle “charge tax, prices include/exclude tax, round at subtotal.” A dedicated plugin adds the parts the EU actually requires: live destination rates, the €10,000 threshold logic, VIES validation for B2B, and an OSS-ready report. Here’s the order to set it up:
- Enable taxes — in WooCommerce → Settings → General, tick “Enable taxes,” then set whether your displayed prices include or exclude tax (B2C stores usually show tax-inclusive prices; B2B often shows ex-VAT).
- Set your store’s home country and base rate — under the Tax tab, configure your domestic rate (e.g. 21% for a Dutch store). This is what you charge below the threshold and on all domestic sales.
- Install a dedicated EU VAT plugin — options include the free/freemium EU/UK VAT Compliance plugins, Quaderno, or Avalara AvaTax for larger stores. These maintain per-country rates and add the VIES B2B field. Avoid hand-maintaining rate tables for every EU country.
- Turn on destination rates and VIES validation — once you’re over the €10,000 threshold, switch the plugin to charge the customer’s country rate for cross-border B2C and to zero-rate validated B2B orders.
- Place test orders and check the report — run a domestic order, a cross-border B2C order, and a cross-border B2B order with a valid VAT number. Confirm each shows the right VAT, then check the plugin produces a per-country breakdown you can hand to your accountant for the OSS return.
VAT setup pairs closely with payment configuration — both decide what your customer sees and is charged at checkout. If you haven’t sorted payments yet, see our companion guide on WooCommerce payment methods for EU stores. And if you’re moving from another platform, tax setup should be part of the migration plan from day one — our Shopify to WooCommerce migration guide for European stores covers it alongside data and payments. Getting VAT and checkout right together is also a conversion lever, which we dig into in the WooCommerce conversion optimization guide for EU stores.
Note: This article explains how EU VAT works in WooCommerce; it isn’t tax or legal advice. VAT rules vary by situation and change over time — confirm your obligations with a qualified accountant or your national tax authority before relying on any setup, especially around OSS registration and thresholds.
Frequently Asked Questions
- When do I have to start charging other EU countries’ VAT rates? Once your combined cross-border B2C sales of goods and digital services to other EU countries pass €10,000 in a calendar year. Below that threshold you charge your own country’s VAT rate on everything; above it you charge the customer’s country rate and report through OSS.
- What is the OSS scheme in WooCommerce terms? OSS (One Stop Shop) lets you charge each EU customer their country’s VAT rate and report all cross-border EU VAT through one quarterly return in your home country, instead of registering for VAT in every country. Your WooCommerce store applies the destination rate at checkout and produces a per-country report for the return.
- Do I charge VAT to a business in another EU country? No — for cross-border B2B sales to a VAT-registered business, you charge 0% under the reverse-charge mechanism, provided you validate their VAT number against the EU VIES database first. The buyer accounts for the VAT in their own country. Domestic B2B sales still use your normal home-country rate.
- Can WooCommerce handle EU VAT without a plugin? Partially. WooCommerce’s built-in tax settings can store manual rate tables, but they don’t maintain current per-country rates, apply the €10,000 threshold automatically, validate VAT numbers via VIES, or produce an OSS report. For an EU store selling cross-border, a dedicated EU VAT plugin is the practical choice.
- What’s the highest and lowest VAT rate in the EU? Among standard rates, Luxembourg is the lowest at 17% and Hungary is the highest at 27%. Most EU countries sit between 19% and 25%, and many also apply reduced rates to specific goods like books, food, and children’s clothing.
Need a WooCommerce Developer for Your Store?
We build and optimize WooCommerce stores for SMEs — from VAT and tax configuration to custom checkout flows, payment integrations, and performance tuning. Fixed-price quotes available.
- EU VAT, OSS, and B2B reverse-charge setup
- Payment gateway integration (Stripe, Mollie, PayPal)
- Custom checkout and cart optimization
- Managed WooCommerce hosting and ongoing support