Skip to main content

Setting up WooCommerce for VAT Reverse Charge (EU B2B)

In this article, we explain step by step how to configure WooCommerce for VAT reverse charge (intra-community supplies). This applies when selling to business customers within the EU with a valid VAT number.

Updated over a month ago

What is VAT reverse charge?

With VAT reverse charge:

  • You charge 0% VAT

  • The VAT is shifted to the customer

  • The customer must provide a valid VAT number

This only applies to:

  • Sales from the Netherlands to another EU country

  • Business customers with a valid VAT number


Step 1: Enable taxes in WooCommerce

Go to:
WooCommerce → Settings → General

  • Enable: “Enable taxes”

Click Save changes
A new tab “Tax” will appear.


Step 2: Basic tax settings

Go to:
WooCommerce → Settings → Tax

Recommended settings for B2B:

  • Prices entered with tax: No (excluding VAT)

  • Display prices in the shop: Excluding VAT

  • Display prices during checkout: Excluding VAT


Step 3: Configure tax rates

Go to:
Tax → Standard rates

Add the following rules:

Netherlands (default VAT)

  • Country code: NL

  • Rate: 21%

  • Name: NL VAT


EU countries (consumers)

  • Country codes: DE, BE, FR, etc.

  • Set local VAT rates (or use OSS)


EU business (reverse charge)

  • Country code: EU country (e.g. DE)

  • Rate: 0%

  • Name: VAT reverse charge

Important:

  • This rule should only apply when a valid VAT number is provided (see next step)


Step 4: Add VAT number validation

WooCommerce does not support this by default. Use a plugin:

  • EU VAT Number

  • or

  • WooCommerce EU VAT Assistant

These plugins:

  • Validate VAT numbers via VIES (EU database)

  • Automatically apply 0% VAT when valid

  • Prevent incorrect tax exemptions

Recommended settings:

  • Enable VAT number field at checkout

  • Enable validation

  • Apply exemption only for customers outside NL


Step 5: Adjust checkout

Ensure customers can enter their VAT number:

  • Field: VAT number

  • Real-time validation

Optional:

  • Show only for business customers

  • Show only for EU countries ≠ Netherlands


Step 6: Set up invoices correctly

Your invoice must include:

  • Your VAT number

  • Customer’s VAT number

  • The mention: “VAT reverse charged”

Recommended plugin:

  • WooCommerce PDF Invoices & Packing Slips

Add this statement to your invoice:

VAT reverse charged according to Articles 44 and 196 of EU Directive


Step 7: Test your setup

Always test the following scenarios:

  1. NL customer → 21% VAT

  2. EU consumer → local VAT rate

  3. EU business with valid VAT → 0% VAT (reverse charge)

  4. Invalid VAT number → normal VAT applies


Common mistakes

  • No VAT validation → everyone gets 0% VAT

  • Dutch customers incorrectly exempted

  • Missing “VAT reverse charge” on invoice

  • Incorrect tax rule priority


Accounting integration

If you use an integration (e.g. Combidesk):

  • Ensure reverse charge is correctly synced

  • Map to the correct VAT code (intra-community supply)

  • Verify your ledger settings


Summary

To correctly set up VAT reverse charge in WooCommerce, you need:

  1. Proper tax configuration

  2. A 0% VAT rule for EU transactions

  3. VAT number validation via plugin

  4. Correct invoice labeling

Did this answer your question?