---
title: "VAT rates, registration threshold and legal basis (and the standard rate on a date). Pro and Compliance"
method: GET
path: "/v1/countries/{country}/vat"
tags: ["Tax data"]
---

# VAT rates, registration threshold and legal basis (and the standard rate on a date). Pro and Compliance

`GET /v1/countries/{country}/vat`

## Request

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

With `date`, also `standard_rate_on_date`: the standard rate in force that day, from the dated history. The history starts at its `covered_from` date (usually 2015-01-01); for an earlier date, or a country without a dated history, `standard_rate_on_date` is null and `warning` explains why. A period that began before the documented history carries `from_note`. Dates more than a year ahead return 400.

## Path parameters

- `country` string, required

## Query parameters

- `date` string, date

## Response `200`

VAT

- 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
  - `vat` object, nullable
    - `name` string
    - `standard_rate` number, nullable
    - `other_rates` object[]
    - `registration_threshold` object, nullable
    - `notes` string
  - `date` string, date: Only with ?date
  - `standard_rate_on_date` VatPeriod
    - `rate` number
    - `from` string, date, nullable
    - `to` string, date, nullable
    - `from_note` string: When the period started before the documented history, e.g. 'in force on 2015-01-01 (earlier start not covered)'
    - `legal_basis` string
    - `source_url` string, nullable
    - `confidence` 'high' | 'medium' | 'low'
    - `notes` 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)
