# EU VIES VAT Batch Validator

> EU VIES VAT Batch Validator is a paid API for AI agents from api.fadeandco.workers.dev, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-30).

Validates up to 5 EU VAT numbers in a single call via the European Commission's VIES service, returning validity status, registered name, and address where available.

## Facts

- Endpoint: GET https://api.fadeandco.workers.dev/api/agent-intel/eu-vies-vat-batch-validator?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/eu-vies-vat-batch-validator-dd495290
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_P9zjQubCcJfxZkocW6tLp

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability eu-vies-vat-batch-validator-dd495290
```

Example prompt: Can you check whether these EU VAT numbers are valid and get me the registered business names if available: DE143208032, FR40303265045, and NL820646660B01?

## When to prefer this

Choose this endpoint when you need to verify EU VAT registration status in real time against the authoritative European Commission VIES database, especially when handling up to 5 numbers per call. Ideal for pre-invoice compliance checks, B2B onboarding flows, or accounts-payable audits. Prefer this over country-specific VAT APIs when you need a single unified endpoint covering all EU member states. Note that name/address availability varies by member state.

## Known failure modes

- Member state temporarily unavailable — userError set to MS_UNAVAILABLE or similar, isValid false
- Too many concurrent requests to a member state — userError MS_MAX_CONCURRENT_REQ
- Invalid format VAT number — userError INVALID, isValid false
- Member state does not release name/address — name and address fields return null even for valid numbers
- Passing more than 5 VAT numbers may result in an error or truncation
- VIES service itself may be down, causing all results to return errors

## How this service works

Checks up to 5 EU VAT numbers (country code + number, e.g. DE143208032) with the European Commission's VIES service and returns valid yes/no, the registered name and address when the member state releases them, and any member-state error. Some member states do not release names or addresses, and VIES can be unavailable for one country at a time.

## Output

Returns a JSON object with a results array, one entry per VAT number. Each entry includes the original VAT string, isValid boolean, status string (e.g. 'valid', 'not_valid'), name and address (null if the member state does not release them or if invalid), a userError field with any VIES error code (e.g. INVALID, MS_MAX_CONCURRENT_REQ), and a requestDate timestamp. Also includes a top-level checkedAt timestamp and the source VIES API URL.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "vat"
     ],
     "properties": {
      "vat": {
       "type": "string",
       "description": "1 to 5 VAT numbers separated by commas, each with a 2-letter EU country code"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "source": "https://ec.europa.eu/taxation_customs/vies/rest-api/ms/",
  "results": [
   {
    "vat": "DE143208032",
    "name": null,
    "status": "not_valid",
    "address": null,
    "isValid": false,
    "userError": "INVALID",
    "requestDate": "2026-10-23T09:35:21.989Z"
   },
   {
    "vat": "FR40303265045",
    "name": null,
    "status": "not_valid",
    "address": null,
    "isValid": false,
    "userError": "MS_MAX_CONCURRENT_REQ",
    "requestDate": "2026-10-23T09:35:21.992Z"
   }
  ],
  "checkedAt": "2026-10-23T09:35:22.325Z"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/eu-vies-vat-batch-validator-dd495290/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.fadeandco.workers.dev](https://www.zero.xyz/host/api.fadeandco.workers.dev/llms.txt)
