# VAT MOD97 Checksum Validator

> VAT MOD97 Checksum Validator is a paid API for AI agents from hcrb.in, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-12).

Validates VAT numbers using the MOD97 checksum algorithm, returning validity, reason, country, and normalized form — offline and deterministic, no ML or external lookups.

## Facts

- Endpoint: POST https://hcrb.in/v1/tools/vat-mod97-check/call?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/vat-mod97-checksum-validator-2ed66df2
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_6sY8bOqvUOOne5tyI4sWg

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 vat-mod97-checksum-validator-2ed66df2 -d '<json body>'
```

Example prompt: Can you check whether the VAT number DE123456789 is valid — specifically run a MOD97 checksum on it and tell me the country and normalized form?

## When to prefer this

Choose this endpoint when you need a fast, offline, deterministic VAT number checksum validation without hitting tax authority APIs or external databases. Ideal for pre-screening vendor or customer VAT IDs during onboarding, invoice generation, or compliance workflows where you want algorithmic certainty (MOD97) rather than a live registry lookup. The 'scope' field tells you whether the result is checksum-verified or format-only, which is critical for risk-aware pipelines. At $0.005/call with the first 3 calls/day free, it's cost-effective for high-volume automated checks.

## Known failure modes

- Malformed or missing VAT number input returns valid=false with a reason explaining the format issue
- Unsupported country prefix returns a scope indicating format-only check or an error reason
- Network or payment failure (x402) prevents the call from completing
- Edge-case VAT numbers that pass checksum but are not actually registered — this endpoint does NOT verify registration with tax authorities

## How this service works

Offline deterministic checks (no ML, no scraping) for business identifiers and rental due-diligence, paid per call via x402 (gasless EIP-3009 USDC on Base). Checksum-verifiable (IBAN, LEI, VAT, ABA, ISBN, SEDOL…) vs format-only (EIN, IFSC, SWIFT/BIC…) — every response returns a scope field. Non-custodial, signed receipts. First 3 calls/day free.

## Output

A JSON object with a 'valid' boolean, a 'reason' string explaining the result (e.g. 'checksum valid' or 'invalid checksum'), the detected 'country', the 'normalized' VAT number string, a 'scope' field indicating whether this was a checksum-verifiable or format-only check, and the 'tool' name used.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "vat_number"
   ],
   "properties": {
    "vat_number": {
     "type": "string",
     "description": "Belgian VAT id in the supported BE mod-97 format (BE prefix optional); not a VIES lookup."
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "schema": {
  "type": "object",
  "required": [
   "valid",
   "reason"
  ],
  "properties": {
   "tool": {
    "type": "string"
   },
   "scope": {
    "type": "string"
   },
   "valid": {
    "type": "boolean"
   },
   "reason": {
    "type": "string"
   },
   "country": {
    "type": "string"
   },
   "normalized": {
    "type": "string"
   }
  }
 },
 "example": {
  "valid": true,
  "reason": "checksum valid"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/vat-mod97-checksum-validator-2ed66df2/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from hcrb.in](https://www.zero.xyz/host/hcrb.in/llms.txt)
