HMRC UK Tax Authority · Schema
HMRC VAT Return
JSON Schema for an HMRC Making Tax Digital VAT return submission. Contains the nine VAT return boxes as defined by HMRC for quarterly/monthly VAT accounting periods.
GovernmentMaking Tax DigitalRegulatoryTaxUK
Properties
| Name | Type | Description |
|---|---|---|
| periodKey | string | The period key identifying the VAT obligation (e.g., '23AA' for a specific quarter) |
| vatDueSales | number | Box 1 – VAT due on sales and other outputs. Must be >= 0. |
| vatDueAcquisitions | number | Box 2 – VAT due on acquisitions of goods and services from EC member states. Must be >= 0. |
| totalVatDue | number | Box 3 – Total VAT due (sum of Box 1 and Box 2). Must equal vatDueSales + vatDueAcquisitions. |
| vatReclaimedCurrPeriod | number | Box 4 – VAT reclaimed in the period on purchases and other inputs (including EC acquisitions). Must be >= 0. |
| netVatDue | number | Box 5 – Net VAT to be paid to HMRC or reclaimed (absolute difference between Box 3 and Box 4). Must be >= 0. |
| totalValueSalesExVAT | number | Box 6 – Total value of sales and all other outputs excluding VAT. Round to nearest pound. |
| totalValuePurchasesExVAT | number | Box 7 – Total value of purchases and all other inputs excluding VAT. Round to nearest pound. |
| totalValueGoodsSuppliedExVAT | number | Box 8 – Total value of all supplies of goods and related costs, excluding VAT, to EC member states. |
| totalAcquisitionsExVAT | number | Box 9 – Total value of all acquisitions of goods and related costs, excluding VAT, from EC member states. |
| finalised | boolean | Declaration that this is the final VAT return for the period. Must be true for accepted submissions. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://api-evangelist.github.io/hmrc/json-schema/hmrc-vat-return-schema.json",
"title": "HMRC VAT Return",
"description": "JSON Schema for an HMRC Making Tax Digital VAT return submission. Contains the nine VAT return boxes as defined by HMRC for quarterly/monthly VAT accounting periods.",
"type": "object",
"properties": {
"periodKey": {
"type": "string",
"pattern": "^\\d{2}[A-Z]{2}$",
"description": "The period key identifying the VAT obligation (e.g., '23AA' for a specific quarter)"
},
"vatDueSales": {
"type": "number",
"description": "Box 1 – VAT due on sales and other outputs. Must be >= 0.",
"minimum": 0
},
"vatDueAcquisitions": {
"type": "number",
"description": "Box 2 – VAT due on acquisitions of goods and services from EC member states. Must be >= 0.",
"minimum": 0
},
"totalVatDue": {
"type": "number",
"description": "Box 3 – Total VAT due (sum of Box 1 and Box 2). Must equal vatDueSales + vatDueAcquisitions.",
"minimum": 0
},
"vatReclaimedCurrPeriod": {
"type": "number",
"description": "Box 4 – VAT reclaimed in the period on purchases and other inputs (including EC acquisitions). Must be >= 0.",
"minimum": 0
},
"netVatDue": {
"type": "number",
"description": "Box 5 – Net VAT to be paid to HMRC or reclaimed (absolute difference between Box 3 and Box 4). Must be >= 0.",
"minimum": 0
},
"totalValueSalesExVAT": {
"type": "number",
"description": "Box 6 – Total value of sales and all other outputs excluding VAT. Round to nearest pound.",
"minimum": 0
},
"totalValuePurchasesExVAT": {
"type": "number",
"description": "Box 7 – Total value of purchases and all other inputs excluding VAT. Round to nearest pound.",
"minimum": 0
},
"totalValueGoodsSuppliedExVAT": {
"type": "number",
"description": "Box 8 – Total value of all supplies of goods and related costs, excluding VAT, to EC member states.",
"minimum": 0
},
"totalAcquisitionsExVAT": {
"type": "number",
"description": "Box 9 – Total value of all acquisitions of goods and related costs, excluding VAT, from EC member states.",
"minimum": 0
},
"finalised": {
"type": "boolean",
"description": "Declaration that this is the final VAT return for the period. Must be true for accepted submissions.",
"const": true
}
},
"required": [
"periodKey",
"vatDueSales",
"vatDueAcquisitions",
"totalVatDue",
"vatReclaimedCurrPeriod",
"netVatDue",
"totalValueSalesExVAT",
"totalValuePurchasesExVAT",
"totalValueGoodsSuppliedExVAT",
"totalAcquisitionsExVAT",
"finalised"
]
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/hmrc-vat-return"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.