WordPress plugin intelligence profile

vatnode – EU VAT Validation and Reverse Charge

Validate EU VAT numbers against VIES at checkout, apply the reverse charge, and keep WooCommerce tax rates in step with the European Commission.

WP PlugIndex snapshot

Current directory snapshot

Tested up to WordPress 7.0
Current version1.1.7
WordPress coverageTested up to WordPress 7.0
Minimum stackWP 6.3 · PHP 8.0
Directory statusactive
Last directory update17 Sept 20261mo ago
Active installationsNewAdoption metric — not a quality score
WordPress.org ratingNo WordPress.org ratings yet
Official packageDirect from WordPress.org

Repository metrics are context, not quality scores. Active installations measure adoption and can strongly reflect a plugin’s age and historical popularity. Ratings, recent updates and “Tested up to” metadata also do not guarantee modern code, error-free operation, security, feature completeness or suitability for a particular site. Why active installs don’t tell the whole story →

WP PlugIndex currently records vatnode – EU VAT Validation and Reverse Charge version 1.1.7 as active, updated 1mo ago and tested up to WordPress 7.0.

Overview

About this plugin

WooCommerce collects a VAT number if you add a field for it, but it does not check the number and it does not know when a sale is zero-rated. This plugin does both, and keeps the EU VAT rate table current while it is at it.

Neither job needs any configuration to get started.

1. Your tax table stays correct. The plugin pulls standard VAT rates for every EU member state from the European Commission’s Taxes in Europe Database (TEDB) and writes them into the WooCommerce tax table.

It re-checks daily, so a rate change lands in your store within 24 hours instead of whenever you happen to read about it.

2. Your B2B buyers can pay without VAT. The plugin adds a VAT number field at checkout.

The number is checked against its country format offline, stored on the order, and — once you add a vatnode API key — verified live against the official VIES service. When a buyer’s VAT number is valid and they are in another EU country, VAT is removed and the reverse charge applies.

What is free

  • Daily rate sync from the European Commission TEDB for the EU-27 plus XI
  • Manual “Sync now” whenever you want it
  • VAT number field on both the classic and block checkout
  • Offline format checking against the country pattern
  • VAT number stored on the order and shown in the admin

What needs a vatnode API key

  • Live VIES verification of the VAT number
  • Automatic reverse charge for verified EU business buyers
  • Company name from the official register stored with the order
  • VIES consultation number stored as audit evidence, when your vatnode account has a requester VAT configured

dev/woocommerce — the free plan includes a monthly request quota. Paste it into WooCommerce → EU VAT Rates and save. Nothing else changes.

OSS and the €10,000 threshold

If your store is registered for the One Stop Shop, consumers in other EU countries are charged the rate of their own country. That is the default. If you are not registered, untick the OSS box: every EU buyer is then charged your own country’s rate, which is what applies while cross-border sales stay under the EU-wide €10,000 threshold.

How the reverse charge decision is made

  • Empty field → nothing happens, VAT is charged
  • Wrong format for the country, or a VAT country that does not match the billing country → the shopper is asked to fix it
  • Same country as your store → domestic sale, VAT is charged
  • Another EU country and VIES confirms the number → VAT removed, reverse charge applied
  • VIES says the number does not exist → the shopper is asked to correct it or remove it

If the check cannot be made — no key, quota spent, VIES down — the order still goes through with VAT charged, and the reason is written to the order notes. A checkout is never blocked by an upstream service.

Data source

Rates come from the European Commission TEDB. The dataset is open source and also published on GitHub, npm, PyPI, Packagist and RubyGems. A full copy ships inside the plugin, so nothing has to be downloaded for it to work — the daily refresh exists because rates change by law between plugin releases.

External services

The plugin ships with a full copy of the rate dataset and works without contacting anything. Two external services are used on top of that.

1. eu-vat-rates-data (rate refresh) — keeps the bundled rates current

json, hosted by GitHub. This happens once a day and when you click “Sync now”. Nothing is downloaded during a page load or a checkout, and if the refresh fails the bundled dataset is used, so the store keeps working.

The request sends no personal data: only your site URL as part of the user agent, which GitHub logs as it does for any file download.

com/site-policy/privacy-policies/github-privacy-statement

2. vatnode API (VAT number validation) — only if you add an API key

dev, which queries the EU Commission’s VIES service and returns the result. The request contains the VAT number, your API key and the plugin user agent. It does not contain the customer’s name, email, address or order contents.

The answer is cached in your site for 24 hours, so entering a VAT number costs one request no matter how often the checkout refreshes.

No requests are made to vatnode until you enter an API key.

dev/legal/privacy

WordPress.org metadata

Plugin tags

Topics listed for this plugin in the WordPress.org directory.

  • reverse charge
  • vat validation
  • vies
  • woocommerce
Compatibility & maintenance

Compatibility & maintenance

Tested up to WordPress 7.0

Not yet marked as tested with WordPress 7.1. WordPress.org currently lists Tested up to 7.0.

Current WordPress releaseWordPress 7.1
WordPress.org Tested up to7.0
Minimum requirementsWordPress 6.3 · PHP 8.0
Update activity17 Sept 20261mo ago

“Tested up to” is directory metadata supplied by the plugin author. WP PlugIndex does not turn an older declaration into a claim that the plugin is incompatible.

Changes recorded by WP PlugIndex

Recent tracked changes

Version1.1.61.1.7
Tracking & source

WP PlugIndex tracks public WordPress.org directory metadata and records selected version, compatibility and availability changes as they are detected.

Plugin watchlist

Watch this plugin

Sign in to your WP PlugIndex account or create a free account. Free accounts can watch up to 5 plugins and see what changed.

Watch limit

Watchlist limit reached

You have reached your current active watch limit.