Simple, transparent pricing

Start free with a production-ready VAT validation API. Validate VAT and GST numbers across 32 countries via VIES, HMRC, and more. Upgrade when you need higher limits, batch processing, or webhooks.

Free

Start here
€0forever

Includes

  • 500 validations/month
  • 20 req/min burst rate
  • 2 API keys
  • EU, UK, CH, LI, NO + AU VAT/GST validation
  • Consultation numbers
  • Test mode
  • VAT rates (unlimited)
  • Cached responses on outages
  • Email support

Pro

When you scale
€29/month€39

Billed annually as €348

Everything in Free, plus

  • 10,000 validations/month
  • 60 req/min burst rate
  • 10 API keys
  • Batch validation
  • Webhook support
  • Async validation (up to 200/batch)
  • Priority email support

Business

High volume + Slack support
€99/month€129

Billed annually as €1,188

Everything in Pro, plus

  • 50,000 validations/month
  • 120 req/min burst rate
  • Unlimited API keys
  • Async validation (up to 1,000/batch)
  • Priority email support + Slack support

Prices exclude VAT. VAT is added at checkout based on your billing location.

How it works

Go from zero to production-ready VAT validation in minutes, not days.

1

Start free

Sign up and get your API key in under a minute. The free tier includes everything you need to integrate VAT validation into your app: all 32 countries, test mode, typed SDKs, cached responses, and 500 validations per month. No credit card required.

2

Ship to production

The free tier is production-ready. Use it for real VAT validation in your billing flow, onboarding, or checkout. 500 validations per month covers most early-stage B2B SaaS products.

3

Upgrade when you grow

When you need more than 500 validations, batch processing, or webhook notifications, upgrade to Pro or Business. No migration needed. Same API, same SDK, higher limits.

Everything included

Every tier includes production-ready VAT validation, company data lookup, typed SDKs, and automatic fallback caching. Here is what you get.

Core features (all tiers)

VAT/GST number validation

Validate VAT and GST numbers against official government databases. Covers EU (VIES), UK (HMRC), Switzerland, Liechtenstein (BFS), Norway (Bronnoysund), and Australia (ABR). Returns validity status, company name, and address.

FreeProBusiness

32 countries supported

Single API endpoint for EU 27 member states, UK, Switzerland, Liechtenstein, Norway, and Australia. No need to integrate with multiple government APIs.

FreeProBusiness

Company data lookup

Get the registered company name and address associated with any valid VAT number. Useful for autofilling billing forms and verifying business customers during onboarding.

FreeProBusiness

Consultation numbers

Receive a unique consultation number from VIES for each EU validation. Serves as proof of validation for tax audits and compliance records.

FreeProBusiness

VAT rates endpoint

Look up current VAT/GST rates for all 32 supported countries. Unlimited requests, no quota usage. Useful for tax calculations, invoicing, and checkout flows.

FreeProBusiness

Cached responses with stale fallback

All validation results are cached for 25 days. When upstream government services (like VIES) go down, Vatly serves the last known result instead of failing. Your integration never breaks due to government API outages.

FreeProBusiness

Test mode

Use test API keys with magic VAT numbers to simulate valid, invalid, and error responses without hitting live government services. Build and test your integration without worrying about rate limits or upstream availability.

FreeProBusiness

Structured error responses

Every error includes a machine-readable error code, human-readable message, and a docs_url linking to the specific error documentation. No guessing what went wrong.

FreeProBusiness

Typed SDKs

Official SDKs for TypeScript (@vatly/node) and Python (vatly) with full type safety, { data, error } return pattern, and typed error classes. Install from npm or PyPI and start validating in minutes.

FreeProBusiness

Per-country format validation

VAT numbers are validated against country-specific format rules before hitting upstream APIs. Malformed numbers are rejected instantly, saving quota and reducing latency.

FreeProBusiness

Scaling features (Pro and Business)

Batch validation

Validate up to 50 VAT numbers in a single API request. Ideal for bulk customer verification, CRM cleanup, or importing partner lists.

FreeProBusiness

Async validation

Submit large batches for background processing. Pro supports up to 200 numbers per async batch, Business supports up to 1,000. Get results via polling or webhooks.

FreeProBusiness

Webhooks

Receive real-time notifications when async validations complete. Webhooks are signed with HMAC-SHA256 so you can verify authenticity. Configure webhook URLs from the dashboard.

FreeProBusiness

Limits by tier

FreeProBusiness
Monthly validations50010,00050,000
Burst rate20 req/min60 req/min120 req/min
API keys210Unlimited
Async batch size-2001,000

Two problems, one API

VAT validation matters at checkout and at account creation. Vatly handles both.

Billing

Validate at checkout, get reverse-charge right

Determine whether to charge VAT or apply the reverse charge before you generate an invoice. A valid cross-border VAT number means zero-rate. An invalid or missing one means you charge VAT.

  • SaaS checkout flows
  • Subscription billing
  • Stripe and Mollie integrations
CRM & Onboarding

Clean account data from the first record

No CRM validates VAT numbers natively. Validate when an account is created and write the registered company name back to the record. Catch bad data before it reaches invoices or ERP syncs.

  • Salesforce account creation
  • HubSpot contact enrichment
  • Partner and vendor onboarding