---
title: "Check a tax ID against the official format. Pro and Compliance"
method: GET
path: "/v1/countries/{country}/tax-id/validate"
tags: ["Tax data"]
---

# Check a tax ID against the official format. Pro and Compliance

`GET /v1/countries/{country}/tax-id/validate`

## Request

- Base URL: `https://api.africacompliancedata.com`
- URL: `https://api.africacompliancedata.com/v1/countries/{country}/tax-id/validate`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Checks the format (and the check digit where its algorithm is published). Does not confirm registration. The value is not stored or logged; to keep it out of URLs, use the MCP tool validate_tax_id_format, which sends it in the request body.

## Path parameters

- `country` string, required

## Query parameters

- `value` string, required

## Response `200`

Result

- object
  - `country` string, required
  - `country_name` string
  - `coverage` 'ready' | 'partial' | 'gap', required
  - `warning` string: When coverage is partial or gap, the year's holiday list is incomplete, or no value can be given
  - `sources` object, required
  - `dataset_version` string, required
  - `disclaimer` string, required
  - `identifier` string: Absent when the country publishes no format
  - `input_length` integer: Only when no format is published
  - `notes` string: Only when no format is published: what the authority says about the identifier
  - `valid_format` boolean, nullable: null when no official format is published
  - `normalised_length` integer
  - `check_digit_verified` boolean
  - `check_digit_method` string
  - `format_check` 'full' | 'partial'
  - `message` string

## Other responses

- `400`: Missing or invalid parameter
- `401`: Missing or invalid API key
- `403`: Tax data needs the Pro or Compliance plan (or the key is paused for review)
- `404`: Unknown country, path or webhook id
- `429`: Rate limit for the plan exceeded, or key checks busy (many new keys from your network); see Retry-After
- `503`: Key check temporarily unavailable, or webhook storage unavailable (webhook endpoints); retry after Retry-After seconds

---

[API](https://skmtc.dev/africacompliancedata/apis/africa-compliance-data-api.md) · [All operations](https://skmtc.dev/africacompliancedata/apis/africa-compliance-data-api/llms.txt) · [OpenAPI document](https://skmtc.dev/africacompliancedata/apis/africa-compliance-data-api/revisions/cb17c8aafda8?raw)
