VAT Number Validations

Highly-secured, real-time EU VAT number validation that allows you to check the VAT number for a business. It's helpful when you sell to business customer and do not need to add VAT.

VatZen is Deprecated since January 2022 and API server will be shut down soon!

We obtain company's informations directly from different official sources, such as EU commissions DB and local countries databases. All subscription plans are allowed to perform real-time VAT ID validations and company information lookups through the validate and validations API endpoints.

Hot and Cold Validations

At VatZen we have a concept of 2 validations types: Hot and Cold.

  • Cold validation works in fire and forget way. Meaning that you simply call our endpoint and we return you the data, which is never stored afterwards.

  • Hot validation is different from the cold one in the way that all the requests you make has id's assigned and stored in our DB. And you can always fetch this validations (fetch them all of fetch by id).

Cold validations are performed via validate endpoint, end hot validation use validations CRUD endpoint. You can get more details below.

Using Requester Data

When validating VAT number, EU commission database can return you reference id, which you can then use in your reports or during the audit process. In order to obtain this reference number, you have to provide requested VAT number, meaning the number of your company.

In order to do that, simply go to VatZen's dashboard and fill the VAT Number option on the settings page: https://dashboard.vatzen.com/settings

Consultation number is used if you want to be able to prove to a Tax Administration of a Member State that you have checked a given VAT number at a given time, and obtained a given validation reply.

Validation Entity

Base of the validations endpoints is the Validation entity, which is returned from all validations-related endpoint. You can find the description of the Validation entity below:

Validate VAT Number

GET https://api.vatzen.com/v1/validate/:number

Path Parameters

{
  "success": true,
  "consultation_number": "WAPIAAAAXQ6S",
  "valid": true,
  "requested": "2020-08-29+02:00",
  "query": "LU26375245",
  "country": {
    "code": "LU",
    "name": "Luxembourg",
    "local_name": "Luxembourg",
    "member_state": true
  },
  "company": {
    "name": "AMAZON EUROPE CORE S.A R.L.",
    "address": "38, AVENUE JOHN F. KENNEDY, L-1855  LUXEMBOURG"
  },
  "pending": false,
  "valid_format": true,
  "requester": {
    "country_code": "LU",
    "vat_number": "26375245"
  }
}

Response

Validation Entity or API Error will be returned.

Create Validation

POST https://api.vatzen.com/v1/validations

Creates a new hot validation and stores it in our db. ID is assigned to every validation.

Query Parameters

{
  "success": true,
  "id": "string",
  "consultation_number": "string",
  "requested": "string",
  "created": "string",
  "valid": true,
  "query": "string",
  "country": {
    "code": "DE",
    "name": "Germany",
    "local_name": "Deutschland",
    "member_state": true
  },
  "company": {},
  "pending": true,
  "valid_format": true,
  "requester": {}
}

Get All Validations

GET https://api.vatzen.com/v1/validations

Returns all the validation you performed with your token, paginated. Can be useful for exporting your activity.

Query Parameters

{
  "success": true,
  "pagination": {
    "has_more": false,
    "total_count": 3
  },
  "validations": [
    {
      "id": "5f45015c04725a4f76e07d",
      "valid": true,
      "requested": "2020-08-25+02:00",
      "created": "2020-08-25T12:17:32.370Z",
      "query": "NL852071589B01",
      "country": {
        "code": "NL",
        "name": "Netherlands",
        "local_name": "Netherlands",
        "member_state": true
      },
      "company": {
        "name": "UBER B.V.",
        "address": ", MR. TREUBLAAN 00007, 1097DP AMSTERDAM, "
      },
      "pending": false,
      "valid_format": true,
      "requester": null
    }
    //....
  ]
}

Get Validation By ID

GET https://api.vatzen.com/v1/validations/:id

Returns the single validation by id. You can use it to retrieve information about pending validation, of for the validation for the specific transaction.

Path Parameters

{
  "success": true,
  "id": "5f45015c04725a4f76e07",
  "valid": true,
  "requested": "2020-08-25+02:00",
  "created": "2020-08-25T12:17:32.370Z",
  "query": "NL852071589B01",
  "country": {
    "code": "NL",
    "name": "Netherlands",
    "local_name": "Netherlands",
    "member_state": true
  },
  "company": {
    "name": "UBER B.V.",
    "address": ", MR. TREUBLAAN 00007, 1097DP AMSTERDAM, "
  },
  "pending": false,
  "valid_format": true,
  "requester": null
}

Last updated