deniz.in

Markets

Weather

Loading weather

· via dev.to (home feed)

TaxID wraps the EU's VIES VAT validation service in a JSON REST API

A new API called TaxID exposes the European Commission's VIES VAT number validation service as a JSON REST endpoint, adding retries, caching and clearer error states.

TaxID wraps the EU's VIES VAT validation service in a JSON REST API

What launched

A service called TaxID has been announced on dev.to as a REST API for validating European Union VAT numbers in real time. Rather than asking developers to talk to the European Commission's VIES service directly, TaxID acts as a wrapper: it exposes VIES checks through a JSON endpoint and takes care of the plumbing that usually comes with the government system, including its SOAP protocol, XML payloads and patchy availability.

The reliability problem

According to the dev.to announcement, the main motivation is reliability rather than validation logic itself. VIES is the authoritative registry for VAT numbers across EU member states, but it is an ageing SOAP endpoint whose availability fluctuates, and individual member states can drop out independently. Teams that integrate with it directly end up maintaining XML parsing code, untangling inconsistent error responses and building retry and caching layers of their own.

TaxID moves that burden behind a single JSON call. Responses are typed and include an explicit service_unavailable state, so a checkout flow can tell the difference between a genuinely invalid VAT number and a member state registry that simply cannot be reached at that moment, and respond accordingly instead of failing the transaction.

What the API covers

The announcement lists several capabilities:

  • Real-time VAT number validation against VIES for all EU member states.
  • Company name and address details for a validated number, where the member state in question supplies that data.
  • A lookup of EU VAT rates by country and category.
  • Structured error handling that separates an invalid number from a temporarily unreachable member state.
  • A public status page showing VIES availability per country.

Integration and target users

Integration is deliberately thin: authenticate with an API key, submit a VAT number, receive a structured JSON response. There is no SDK to install and no SOAP client to configure. Documentation with ready-to-use request examples is published at taxid.dev.

The intended audience is engineering teams handling B2B transactions in the EU, where the VAT amount charged depends on whether the customer's VAT number is genuinely registered. The announcement calls out Stripe as a natural companion, since reverse-charge rules generally require a validated VAT ID before tax can be exempted, and it also points to custom billing systems, ERP integrations and internal compliance tooling as likely uses.

Why it matters

VAT validation is a compliance requirement, not a convenience, for anyone selling B2B into the EU. Exempting VAT on the strength of an unverified number is a compliance risk, yet the only authoritative way to verify it, VIES, is a SOAP service with a reputation for flakiness. A wrapper that adds retries, caching and, crucially, an honest distinction between "this number is invalid" and "the registry is down" lets teams keep checkout and invoicing running even when a member state's endpoint misbehaves.

Two caveats are worth noting. The announcement does not cover pricing, so the cost at scale is unclear. And because TaxID is a third-party layer over a government service, teams adopting it add a dependency between their billing flow and a private intermediary; the value of that trade depends on the intermediary staying more reliable than the system it wraps.

  • #api
  • #vat
  • #rest-api
  • #developer-tools
  • #eu

Related posts