Developer guides
VAT validation is the process of verifying that a business's VAT identification number is registered and active with the issuing tax authority. Inside the EU, validation runs against VIES (the VAT Information Exchange System maintained by the European Commission); the United Kingdom uses HMRC, Switzerland uses the BFS UID Register, Norway uses Brønnøysund, and Australia uses the ABR. Each system has different response shapes, rate limits, and downtime characteristics.
For developers building B2B billing, checkout, or compliance flows, getting VAT validation right matters as evidence of VAT registration. It does not determine the tax treatment of a transaction on its own. Keep the validation response and any consultation number with your other customer evidence. The guides below cover integration patterns, country-specific quirks, error handling, and how Avatcado compares to other APIs in the space.
Start integrating
How to Validate VAT Numbers in Python
Validate VAT numbers with the Python SDK. Follow working examples for API keys, company details, error handling, test mode, and async requests.
VAT Number Validation in PHP and Laravel
Validate VAT numbers with PHP cURL and Laravel HTTP clients. Follow examples for API keys, response parsing, company details, and request errors.
Validate EU VAT Numbers via API: Developer Guide
Learn how to validate EU VAT numbers, plus UK, Swiss, Norwegian, and Australian VAT/GST, via REST API. Covers VIES, HMRC, TypeScript, Python, and test mode.
VIES API Guide: REST Endpoint, SOAP & Integration
Use the official VIES REST API from Node.js, handle HTTP 200 faults, preserve consultation evidence, compare SOAP, and plan for member-state downtime.
How to Validate VAT Numbers in TypeScript
Validate EU, UK, Swiss, Norwegian, and Australian VAT/GST numbers in TypeScript with @avatcado/node. Covers error handling, batch validation, and test mode.
Countries and formats
HMRC VAT Check API: OAuth, Examples & Error Handling
Integrate HMRC's Check a UK VAT Number API with OAuth client credentials, Node.js examples, verified lookups, and structured error handling.
VAT Number Formats & Checksums: All 33 Countries
VAT number formats, checksums, and edge cases for all 33 supported countries: EU, UK, Switzerland, Liechtenstein, Norway, and Australia.
Swiss VAT Number Validation API: CHE Format
How to validate Swiss and Liechtenstein VAT numbers using the BFS UID Register. Covers the CHE format, MWST/TVA/IVA suffixes, and the MOD11 checksum.
Norwegian VAT Number Validation API: MVA Format
How to validate Norwegian VAT numbers (MVA) using the Bronnoysund Register Centre API. Covers the number format, MOD11 checksum, and SDK integration.
Australian GST Validation API: ABN and ABR Lookup
How to validate Australian ABNs and GST registration using the ABR Lookup service. Covers the ABN format, checksum algorithm, and checkout integration.
Reliability and scale
Validate VAT Numbers from a CSV with Python
Validate a CSV of VAT numbers with Python. Process batches of 50, keep row order, record errors, and export results using the Avatcado SDK.
VIES Downtime: Why It Happens and How to Handle It
Why VIES goes down, which EU countries are least reliable, and how to keep your VAT validation working during outages with caching and stale fallback.
VIES Down? How the National Registry Fallback Works
Pro and Business: what Avatcado does when VIES reports a member state down, the ten national registers, the fallback order, and how to read meta.source.
Async VAT Validation: Webhooks and Batch Processing
Learn how to validate VAT numbers asynchronously using webhooks and batch processing. Covers checkout latency, bulk revalidation, and VIES downtime resilience.
Billing and tax
How to Handle VAT Validation in Your SaaS Billing Flow
Learn how to integrate real-time VAT validation into your SaaS checkout flow. Covers reverse charge logic, Stripe integration, and storing validation proof.
EU VAT Reverse Charge: What Developers Need to Know
Understand the EU reverse charge mechanism in developer terms. When it applies, how to validate with consultation numbers, and what your code needs to handle.
EU Reverse Charge Invoice Requirements
Required fields on an EU reverse charge invoice: both VAT numbers, the exact 'Reverse charge' wording, and what to do if the buyer's VAT number is invalid.
EU VAT Validation for US SaaS Companies
How US SaaS suppliers collect EU VAT registration evidence and assess ordinary B2B reverse charge, customer status and consumer-sales obligations.
Do OSS and IOSS Numbers Show Up in VIES?
OSS and IOSS registration numbers cannot be checked in VIES. What VIES covers, why IM-prefixed IOSS numbers are not public, and what to validate instead.
Payments and commerce
VAT Validation for Mollie Merchants
Mollie does not validate customer VAT numbers. Learn how to add VAT validation to your Mollie checkout flow for B2B reverse charge compliance using Avatcado.
VAT Validation for Stripe Users: Coverage Gaps
Stripe validates EU, UK, and AU tax IDs but skips Swiss, Norwegian, and 100+ other types. See where Stripe falls short and how Avatcado fills the gaps.
VAT Validation for Adyen Merchants
Adyen does not offer customer VAT validation. Learn how to add VAT number checks to your Adyen checkout, handle errors, and batch-validate at scale.
VAT Validation for Shopify: Coverage Gaps
Shopify validates EU/UK VAT numbers at checkout but skips B2B wholesale, headless storefronts, non-EU coverage, and revalidation. See what Avatcado adds.
CRM and automation
VAT Number Validation with n8n
Validate VAT numbers in n8n with the HTTP Request node. Configure API credentials and route valid, invalid, and failed lookups to separate outputs.
Validate VAT Numbers in Your CRM
How to add real-time VAT number validation to CRM account creation and lead qualification workflows. Covers Salesforce, HubSpot, and no-code automation tools.
Salesforce VAT Validation
How to validate VAT numbers inside Salesforce using Apex HTTP callouts. Covers Named Credentials and writing the validated company name back to Account records.
VAT Validation with Zapier
How to validate VAT numbers in a Zapier workflow using the Webhooks by Zapier action and the Avatcado REST API. No code required.
VAT Validation with Make
How to validate VAT numbers in a Make scenario using the HTTP module and the Avatcado REST API. No code required.
VAT Number Validation for Xero and QuickBooks
Neither Xero nor QuickBooks validates VAT numbers on contacts against a government registry. Learn the gap and how to add validation with Avatcado.
Compare APIs
VAT Validation API Comparison (2026)
VAT validation API comparison: pricing, features, and DX across seven APIs, Avatcado, VATstack, vatlayer, VATsense, vatapi.com, APIStax, and taxid.dev.
VATstack Alternatives Compared (2026)
Compare six VATstack alternatives on free tier, coverage, SDKs and overage. Feature review: September 2026. Pricing snapshot: August 2026.