This is an info Alert.
xpay
  • Product
    • Become Agent-Ready
      • Merchants
        Agentic Commerce — list your store across ChatGPT, Gemini, Claude & Perplexity
      • Publishers
        Monetize your content when AI agents read, cite, or train on it
      • SaaS Companies
        Treat AI agents as first-class customers with agent-priced checkout
    • Monetize
      • Monetize MCP Server
        Charge per call on any MCP server in 2 minutes
      • Monetize AI Agents
        Turn n8n, Zapier, Activepieces workflows into revenue
  • Resources
    • xpay Ecosystem
      • xpay✦ Tools
        1,000+ pay-per-use tools for your AI agents
      • Agent-Ready SaaS Index
        25,481 SaaS scored on agent-buyability
      • SaaS Pricing Database
        Pricing pages indexed across 1,000+ categories
      • Shopify Apps Directory
        Every Shopify app, with its full review history
      • WooCommerce Plugins Directory
        Every WooCommerce plugin, scored on how well it is maintained
      • GitHub
        Open source repositories
    • Agent Building
      • Agent Frameworks
        AI frameworks for building multi-agent systems
      • x402 Integration
        AI frameworks with x402 payment integration
      • Networks
        Blockchain networks supporting x402
    • Company
      • About xpay✦
        Our mission, products, and protocols
      • Blog
        Latest insights and updates
      • Docs
        Complete xpay documentation
  • Pricing
  • Blog
  • Docs
Get Started
  1. xpay✦ Commerce

  2. Directory

  3. WooCommerce plugins

  4. VIESAC – Free VAT Validation for WooCommerce

VIESAC – Free VAT Validation for WooCommerce

WooCommerce VAT & GST validation via EU VIES and 20+ national registries (UK, CH, NO, AE, JP, SG, IN, AU, ZA, AR), plus 115 standard tax rates.

20+ active installs
5.0
(1 ratings)
Free on WordPress.org
View on WordPress.orgSupport forum
Will this break my store?

What the WordPress.org registry says about keeping VIESAC – Free VAT Validation for WooCommerce running.

WordPress compatibility
Tested to 7.2
Tested against the WordPress branch in use today.
Last updated
3 days ago
Requires PHP
7.4
Your host must be running at least this version.
Requires WordPress
5.9
Requires other plugins
woocommerce
These must be installed and active first.
Contributors
1
A single maintainer. Worth knowing if the plugin is load-bearing for your store.

20+ active installsWordPress.org reports installs in bands, not exact counts.
Maintenance & trust

Scored on how VIESAC – Free VAT Validation for WooCommerce is looked after — not on how many stores run it.

Well maintained
Not enough public feedback to put a confident number on this one. Little public feedback — score rests mostly on release activity. What we can see is below.

Maintenance
35 / 35
Updated 2 days ago.
WordPress compatibility
20 / 20
Tested to WP 7.2 (current).
Support responsiveness
Not enough data
Only 2 support thread(s) — not enough to judge.
Merchant satisfaction
10 / 15
5.0/5 across 1 rating(s).
Listing transparency
10 / 10
Provides: screenshots, description, homepage
1 of 5 measures had too little evidence to score. They are left out of the total rather than counted as zero — otherwise a plugin would be marked down for being small rather than for being poorly kept.Measured 2026-10-28 from the WordPress.org plugin registry.
Ratings

5.0

1 rating
5★1
4★0
3★0
2★0
1★0
Every rating WordPress.org holds for this plugin, not a sample. Written reviews live in the plugin's WordPress.org reviews forum.

VIESAC helps WooCommerce stores validate VAT and GST numbers and apply B2B reverse-charge and place-of-supply rules at checkout. It combines local format and checksum checks, live registry lookups across 48 VAT/GST jurisdictions, standard VAT/GST rate setup for 115 countries, and a decision engine that chooses tax treatment from cart contents and destination.

Official registries used for live checks:
* European Union (EU-27) & Monaco (MC): Real-time checks via the European Commission’s EU VIES system for all 27 EU member states, plus Monaco (MC) through the French VIES route and DGFiP register.
* United Kingdom (GB & XI): Great Britain VAT validation via the official HMRC VAT API; Northern Ireland (XI) validation via EU VIES.
* Switzerland (CH) & Liechtenstein (LI): Support for 9-digit CHE UID format and Liechtenstein companies (Liechtenstein and Switzerland form a unified VAT territory; Liechtenstein VAT numbers follow the Swiss UID registry).
* Norway (NO): 9-digit MVA format & Modulo 11 checksum verification; live VAT registration check via the Brønnøysund Register Centre (Enhetsregisteret).
* Serbia (RS): 9-digit PIB format & ISO 7064 MOD 11,10 checksum verification; live company check via the Serbian Tax Administration VAT Register.
* Turkey (TR): 10-digit VKN algorithmic format verification; live taxpayer check via the Turkish Revenue Administration (GİB) e-Fatura registry.
* Bosnia and Herzegovina (BA): 12-digit PDV identifier; live check via the Indirect Taxation Authority (UINO). The 13-digit direct-tax JIB is a different identifier.
* North Macedonia (MK): 13-digit EDB tax number with Modulo 11 check digit verification; live check via the Public Revenue Office (UJP).
* Albania (AL): NIPT / NUIS, a letter, eight digits, and a letter; live business registry check via the National Business Center (QKB).
* Iceland (IS): 5–6-digit VSK number or 10-digit kennitala with Modulo 11 checksum; live check via Skatturinn. Kennitala identifies the entity; the registry determines VAT registration.
* Australia (AU): 11-digit ABN with Modulo 89 checksum; live ABN status check via the Australian Business Register (ABR). An active ABN does not itself establish GST registration.
* United Arab Emirates (AE): 15-digit Tax Registration Number (TRN); live VAT registration check via the Federal Tax Authority (FTA) register.
* Armenia (AM): 8-digit Taxpayer Identification Number (TIN / ՀՎՀՀ, including /1 VAT suffix notation); live check via the State Revenue Committee (SRC / Petekamutner).
* Georgia (GE): 9-digit or 11-digit taxpayer identification code; live VAT registration check via the Georgia Revenue Service (rs.ge).
* Egypt (EG): 9-digit Tax Registration Number (TRN); live taxpayer registration check via the Egyptian Tax Authority (ETA).
* Taiwan (TW): 8-digit Unified Business Number (UBN / BAN) with statutory Modulo 5 checksum; live verification via the MOEA GCIS Open Data API and Ministry of Finance (MOF) tax register.
* Japan (JP): Qualified Invoice Issuer Registration Number (T + 13 digits); live check via the National Tax Agency (NTA) Qualified Invoice Issuer Register.
* Singapore (SG): Unique Entity Number (UEN formats A, B, C) or IRAS M GST number; live verification via the ACRA Open Data API and IRAS GST register.
* India (IN): 15-character Goods and Services Tax Identification Number (GSTIN) with statutory base-36 Modulo 36 check character; instant format and checksum verification at checkout, followed by a live GSTN / IRIS IRP portal lookup when the order audit is created.
* South Africa (ZA): 10-digit VAT reference number (starting with 4) with statutory SARS Luhn / Modulo 10 checksum; live verification via the South African Revenue Service (SARS).
* Argentina (AR): 11-digit CUIT (prefixes 20, 23, 24, 27, 30, 33, 34) with statutory Modulo 11 checksum; live taxpayer and IVA status verification via ARCA (formerly AFIP).

Intelligent B2B Reverse-Charge & Place of Supply Engine

VIESAC automatically determines the correct tax treatment during checkout without complex configuration:
* Physical Goods vs. Digital/Virtual Services: Dynamically resolves the place of supply based on cart contents. Physical shipments evaluate the delivery/shipping destination; digital or purely virtual orders evaluate the customer’s billing country.
* Intra-EU B2B Reverse Charge: 0% VAT is applied automatically only when a buyer enters a valid VAT number from a different EU member state.
* Domestic Sales Protection: Domestic orders (destination matching the store’s base country) always retain standard local VAT, even if a valid local VAT number is provided.
* Unified Swiss-Liechtenstein Territory: Sales between Switzerland and Liechtenstein stay domestic within the customs union and keep local tax.
* Monaco & Isle of Man: Monaco uses French VAT numbers (FR); Isle of Man uses UK VAT numbers (GB). Both stay in the same VAT territory as France and the United Kingdom.
* Places outside the EU VAT area: Canary Islands, Ceuta, Melilla, Åland, Jersey, Guernsey, Heligoland, Büsingen, Livigno, Campione d’Italia, and Mount Athos are treated as outside the EU VAT area for place-of-supply, even when the country code looks EU.
* Cross-Border Exports: Verified non-EU businesses (across all supported national registries including GB, CH, NO, RS, TR, BA, MK, AL, IS, AU, AE, AM, GE, EG, TW, JP, SG, IN, ZA, and AR) can receive 0% export VAT. An invalid number for a supported registry keeps shop tax. For countries without live VIESAC validation, an alphanumeric tax number can remove tax as an unverified export with no API call and no VIESAC audit; the merchant confirms that number later.
* Instant Checkout Feedback: Validation runs when the customer leaves the VAT field (blur / focusout), with debounce while typing.
* Official registry unavailable: Checkout still completes if VIES, HMRC, or another official VAT registry does not answer in time. For a qualifying cross-border order, the store can finish checkout without VAT and keep checking in the background. The order shows the result when the registry responds. In WooCommerce → VIESAC you can instead keep the normal tax until the registry confirms the number. A paid virtual order stays on hold by default, so the download is not sent until the registry confirms the number. Physical orders are fulfilled as usual unless you turn that hold on.

1-Click Standard VAT Rate Setup (115 Countries)

Merchants can import and configure the official standard VAT or GST rate for their store base country in WooCommerce with a single click directly from the VIESAC settings page (WooCommerce -> VIESAC). VIESAC covers 115 countries and territories across the EU-27, the UK, Europe, the Caucasus, Central Asia, the Middle East, Asia-Pacific, Africa, and the Americas. Existing rates and custom reduced rates remain completely untouched.

Stored Proof & Audit Certificates

Eligible verified B2B orders can store a timestamped VIESAC audit record, registry evidence, and a downloadable PDF certificate in order details, subject to the stored-proof allowance. This is a VIESAC certificate containing registry evidence; it is not a certificate issued by the tax authority.

Features

  • Automated Reverse-Charge Engine – Dynamic place of supply evaluation for goods vs. virtual services
  • Real-time EU VIES Validation – Live verification for all 27 EU member states, Northern Ireland (XI), and Monaco (MC)
  • UK VAT checks via HMRC – Validate Great Britain (GB) VAT numbers through HMRC’s official API
  • 20 Non-EU National Tax & Business Registries – Live validation for Switzerland & Liechtenstein (UID), Norway (Brønnøysund), Serbia (Tax Administration), Turkey (GİB e-Fatura), Bosnia and Herzegovina (UINO), North Macedonia (UJP), Albania (QKB), Iceland (Skatturinn), Australia (ABR), United Arab Emirates (FTA), Armenia (SRC), Georgia (Revenue Service), Egypt (ETA), Taiwan (MOEA GCIS & MOF), Japan (NTA Qualified Invoice Register), Singapore (ACRA & IRAS), India (GSTN), South Africa (SARS), and Argentina (ARCA)
  • VAT Territory Aliases – Switzerland–Liechtenstein, Monaco–France, and Isle of Man–United Kingdom stay in one tax territory where the rules require it
  • Developer Hooks – Country-aware VAT/company labels, placeholders, visibility and required fields in Classic Checkout; product/destination exemption restrictions in Classic and Blocks; live checks and audits for supported countries stay on the VIESAC path (docs)
  • Instant Checkout Validation – Checks on field blur/focusout with typing debounce
  • 1-Click Standard VAT/GST Rate (115 Countries) – Import the official standard rate for the store country across 115 jurisdictions without touching reduced rates
  • Country-specific Format & Checksum Checks – Client-side syntax, domestic prefix normalization (CHE, ABN, TRN, UBN, BAN, UEN, GST, GSTIN, CUIT, CVR, NIP, OIB, PIB), and statutory checksum validation (NO, RS, TR, AU, IS, DK, MK, TW, IN, ZA, AR) without an API key
  • Audit Records & Certificates – Timestamped registry evidence and downloadable VIESAC PDF certificates on eligible WooCommerce orders
  • Usage Transparency – Separate views for monthly checks, hourly capacity, and stored proof quotas
  • HPOS & Blocks Compatible – Works with WooCommerce Custom Order Tables and Checkout Blocks
  • Multilingual Ready – 28 languages; works with WPML, Polylang, and TranslatePress

VAT number validation by country

VIESAC includes country-specific VAT/GST number format validation for every jurisdiction below. Live validation uses EU VIES for EU member states, Northern Ireland, and Monaco, plus official national registries for 20 non-EU countries:

  • Albania (AL/ALB) – NIPT / NUIS, letter + 8 digits + letter; QKB registry check
  • Argentina (AR/ARG/CUIT) – 11-digit CUIT (20, 23, 24, 27, 30, 33, 34) with Modulo 11 checksum; ARCA registry check
  • Armenia (AM/ARM) – 8-digit TIN (with optional /1 VAT suffix); State Revenue Committee (SRC) registry check
  • Australia (AU/AUS/ABN) – 11-digit ABN with Modulo 89 checksum; ABR status check (active ABN is separate from GST registration)
  • Bosnia and Herzegovina (BA/BIH) – 12-digit PDV; UINO registry check (not 13-digit JIB)
  • Egypt (EG/EGY) – 9-digit TRN; Egyptian Tax Authority (ETA) registry check
  • Georgia (GE/GEO) – 9-digit or 11-digit taxpayer ID; Georgia Revenue Service (rs.ge) check
  • Iceland (IS/ISL) – 5–6-digit VSK or 10-digit kennitala with Modulo 11 checksum; Skatturinn registration check
  • India (IN/IND/GSTIN) – 15-character GSTIN with Modulo 36 check character; format + checksum at checkout and full GSTN portal verification on order audit creation
  • Japan (JP/JPN) – T + 13 digits (or 13-digit corporate number normalized with T); National Tax Agency (NTA) Qualified Invoice Issuer check
  • North Macedonia (MK/MKD) – 13-digit EDB with Modulo 11 checksum; UJP registry check
  • Singapore (SG/SGP/UEN/GST) – 9–10 character UEN (formats A, B, C) or IRAS M GST number; ACRA & IRAS GST registry check
  • South Africa (ZA/ZAF) – 10-digit VAT number starting with 4 with SARS Modulo 10 checksum; SARS registry check
  • Taiwan (TW/TWN/UBN/BAN) – 8-digit Unified Business Number with Modulo 5 checksum; MOEA GCIS & MOF tax register check
  • United Arab Emirates (AE/ARE/UAE/TRN) – 15-digit TRN; Federal Tax Authority (FTA) registry check
  • Austria (AT) – Austrian VAT numbers
  • Belgium (BE) – Belgian VAT numbers
  • Bulgaria (BG) – Bulgarian VAT numbers
  • Croatia (HR/OIB) – Croatian VAT/OIB numbers
  • Cyprus (CY) – Cypriot VAT numbers
  • Czechia (CZ) – Czech VAT numbers
  • Denmark (DK/CVR) – Danish 8-digit CVR/VAT numbers
  • Estonia (EE) – Estonian VAT numbers
  • Finland (FI) – Finnish VAT numbers
  • France (FR) & Monaco (MC) – French and Monegasque VAT numbers
  • Germany (DE) – German VAT numbers
  • Greece (EL/GR) – Greek VAT numbers
  • Hungary (HU) – Hungarian VAT numbers
  • Ireland (IE) – Irish VAT numbers
  • Italy (IT) – Italian VAT numbers
  • Latvia (LV) – Latvian VAT numbers
  • Lithuania (LT) – Lithuanian VAT numbers
  • Luxembourg (LU) – Luxembourg VAT numbers
  • Malta (MT) – Maltese VAT numbers
  • Netherlands (NL/NLD) – Dutch VAT numbers (with suffix normalization)
  • Poland (PL/NIP) – Polish VAT/NIP numbers
  • Portugal (PT) – Portuguese VAT numbers
  • Romania (RO) – Romanian VAT numbers
  • Serbia (RS/SRB/PIB) – 9-digit PIB with checksum; live registration check through the Serbian Tax Administration with an API key
  • Slovakia (SK) – Slovak VAT numbers
  • Slovenia (SI/SL) – Slovenian VAT numbers
  • Spain (ES) – Spanish VAT numbers
  • Sweden (SE) – Swedish VAT numbers (including 10-digit organisation number auto-completion)
  • Switzerland (CH/CHE) & Liechtenstein (LI) – CHE UID format; live UID register check; unified territory with Liechtenstein
  • Turkey (TR/TUR) – 10-digit VKN with checksum; live GİB e-Fatura taxpayer register check with an API key
  • Northern Ireland (XI) – Northern Irish VAT numbers through EU VIES (goods destination rules)
  • Great Britain (GB/UK) – UK VAT numbers through HMRC for England, Scotland, and Wales
  • Norway (NO) – 9-digit MVA with checksum; live VAT registration check through the Brønnøysund Register Centre with an API key

Getting started

  1. Install and activate the plugin.
  2. Go to WooCommerce -> VIESAC.
  3. Get your free API key from https://viesac.eu/app/api.
  4. Enter the API key and save.

Languages

VIESAC is available in 28 languages: English, Norwegian Bokmål, German, French, Spanish, Italian, Polish, Dutch, Romanian, Greek, Czech, Swedish, Hungarian, Portuguese, Bulgarian, Danish, Finnish, Slovak, Croatian, Serbian (Cyrillic), Latvian, Estonian, Lithuanian, Slovenian, Russian, Turkish, Arabic, Ukrainian.

Multilingual compatibility

VIESAC uses standard WordPress gettext for its interface and VAT validation messages, so it works with WordPress language packs and the Gettext translation tools in WPML, Polylang, and TranslatePress.

Custom VAT field label and VAT field placeholder values are supported too:

  • WPML: translate them in WPML -> String Translation after saving the VIESAC settings.
  • Polylang: translate them in Languages -> String translations after saving the VIESAC settings.
  • TranslatePress: translate them as regular strings in its translation editor after visiting checkout in the target language.

External services

This plugin connects to the VIESAC API to validate VAT numbers, retrieve account usage information, and optionally create audit records with certificate storage.

It sends data to https://viesac.eu only when a store administrator enters an API key and the plugin performs one of these actions:

  • Live VAT validation via https://viesac.eu/api/v1/validate
  • VAT audit creation via https://viesac.eu/api/v1/audits
  • Account and usage lookup via https://viesac.eu/api/v1/account

Depending on the action, the plugin may send:

  • VAT country code and VAT number
  • Company name
  • Company address
  • Order number
  • Order audit details in XML format for certificate generation

Service provider documentation:

  • Privacy Policy: https://viesac.eu/privacy-policy
  • Terms of Service: https://viesac.eu/terms-of-service

For developers

English hook reference: https://viesac.eu/extensions/woocommerce/developers

Hooks can wrap validation, change checkout text, or keep tax on. They cannot replace a live VIESAC result for a supported country, and they cannot skip the audit when that result removes tax. Countries without live VIESAC checks never create a VIESAC audit.

Do I need to pay?

Local VAT format validation is unlimited and works without an API key. Live VAT validation and stored audit proof follow your VIESAC plan:

  • Free: 50 live VAT validations per month (10/hour) and 5 stored audits total (audit records are viewable in the VIESAC dashboard; PDF/XML certificate export requires a paid plan)
  • Starter: 500 live VAT validations per month (10/min, 600/hour) and 25 stored audits per month
  • Pro: 3,000 live VAT validations per month (20/min, 1,200/hour) and 100 stored audits per month
  • Business: 10,000 live VAT validations per month (30/min, 1,800/hour) and 500 stored audits per month
  • Enterprise: custom/unlimited validation and audit capacity

How does Indian GSTIN validation work at checkout?

Because the official Indian GST portal uses an interactive captcha, VIESAC validates the 15-character GSTIN format and statutory base-36 Modulo 36 check character immediately at checkout (GET /api/v1/validate), and then performs the full live GSTN portal verification when the WooCommerce order creates an audit (POST /api/v1/audits).

What is an audit?

An audit is a full validation record that stores technical proof and makes the certificate available for the order. Checkout format checks are unlimited; live VAT validation uses monthly and hourly limits, while stored proof uses a separate audit allowance.

What happens when my stored-proof allowance is exhausted?

Checkout still performs live VAT validation while validation capacity is available. The WooCommerce order keeps the VALID or INVALID status, shows “No proof stored,” and displays an upgrade notice. No audit record or certificate is stored for that order.

What happens with LIMITED VALID and PENDING?

These statuses can be returned when a full audit is created and VIES is temporarily unavailable. WooCommerce stores the audit reference and displays LIMITED VALID or PENDING without a certificate; VIESAC retries the saved audit automatically. When the audit allowance is already exhausted, no audit exists to retry, so the plugin records only the available live VALID/INVALID result and clearly marks it as “No proof stored.”

Does it work with WooCommerce Blocks?

Yes. VIESAC is compatible with WooCommerce Blocks checkout. The shared cart exemption filter works with Classic and Blocks. Country-dependent VAT/company field arguments and required-field filters apply to Classic Checkout and saved address forms; Blocks use their own field registration.

Categories
Currency & tax
Plugin details
Version1.2.4
Last updated2026-10-26 8:14am GMT
Added2026-06-05
Requires WordPress5.9
Tested up to7.2
Requires PHP7.4

Tags on WordPress.org
hmrc
UK VAT
vat
vies
woocommerce
Alternatives
Other plugins in the same categories.
Price Based on Country for WooCommerce
20K+ installs
4.8(262)
FOX – Currency Switcher Professional for WooCommerce
50K+ installs
4.4(250)
WebPlanex: GST Invoice India
400+ installs
5.0(36)
Quaderno: Global Tax & Invoicing Automation for WooCommerce
500+ installs
4.7(18)
Saudi Currency
100+ installs
5.0(3)
YayCurrency – WooCommerce Multi-Currency Switcher
8K+ installs
4.8(112)
xpay

The agent-readiness stack for the AI shopping era — helping merchants, publishers and SaaS companies get discovered, cited and transacted with by ChatGPT, Perplexity, Claude, Gemini and the custom shopping agents underneath them.

CompanyAgentically Inc. (d/b/a xpay✦)1875 Mission St, Ste 103San Francisco, CA 94103, United Stateslegal@xpay.sh · privacy@xpay.sh
or ask your AI app
Company
About xpayAgency PartnersGitHubDiscordllms.txt
DevelopersDocumentationAPI ReferenceSDKs & LibrariesQuickstart GuideOpenAPI Spec
Stay Updated
Occasional product updates and agent-readiness playbooks from xpay (Agentically Inc.) — typically a couple of emails a month. Double opt-in: we email you a link to confirm before sending anything, and every email has one-click unsubscribe.
Social
  • For Publishers
    • News
    • Finance
    • Dev / Tech
    • Travel
    • View all verticals
  • Agent-Ready Index
    • SaaS Pricing Database
    • Agent-Ready SaaS Index
    • Verified band
    • AI & ML
    • Sales & CRM
  • Products
    • Pricing Widget
    • Monetize MCP Server
    • Paywall
    • Smart Proxy
    • Monetize AI Agents
    • xpay x402 Facilitator
  • Agentic Economy
    • Timeline
    • Resources
    • Manifesto
    • Stack
  • Agentic Commerce
    • Get listed
    • ChatGPT Ads
    • How ChatGPT Ads work
    • ChatGPT Ads · Apparel
    • ChatGPT Ads · Health & Beauty
    • xpay Listings · Amazon + Google
    • Pricing
    • Free audit
    • Shopify
    • WooCommerce
    • Apparel & Accessories
    • Health & Beauty
    • Overview
  • Commerce Index
    • Shopify apps directory
    • Agentic Commerce Ready Index
    • Methodology
    • Pet brands · WooCommerce
    • Pet brands · Shopify
  • Marketplace
    • 🛍️ xpay.deals — agentic storefront for deals
  • Protocols
    • Overview
    • x402
    • MPP
    • UCP
    • ACP
    • AP2
    • TAP
    • A2A
  • Agent Frameworks
    • Overview
    • LangChain
    • CrewAI
    • Claude MCP
    • AutoGPT
    • LangChain vs Mastra
    • LangGraph vs Pydantic AI
  • Company
    • About xpay
    • Blog
    • Docs
    • GitHub
  • Free prompts
    • Ecommerce prompts
    • Email marketing prompts
    • Product description prompts
    • Facebook ad prompts
    • Skincare prompts
    • Supplement prompts
    • Wine prompts
    • Electronics prompts

© 2025 Agentically Inc. All rights reserved.
Privacy PolicyTerms of UseAcceptable Use Policy