Supply
Supplies are transactions of telecommunications, broadcasting and electronic (TBE) services. To document pieces of evidence for the place of supply, you can attach [evidence objects](https://vatstack.com/docs/evidences) to a supply object. Supplies are also used to automatically generate a quarterly tax report with currency conversion at official exchange rates.
VATTaxValidationEUEuropeComplianceFinanceBusiness
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://raw.githubusercontent.com/api-evangelist/vatstack/main/json-schema/supply.json",
"title": "Supply",
"type": "object",
"description": "Supplies are transactions of telecommunications, broadcasting and electronic (TBE) services. To document pieces of evidence for the place of supply, you can attach [evidence objects](https://vatstack.com/docs/evidences) to a supply object. Supplies are also used to automatically generate a quarterly tax report with currency conversion at official exchange rates.",
"properties": {
"amount": {
"type": "integer",
"format": "int32"
},
"amount_refunded": {
"type": "integer",
"format": "int32"
},
"amount_total": {
"type": "integer",
"format": "int32"
},
"country_code": {
"type": "string",
"description": "2-letter ISO country code of the place of supply that is relevant for the `vat.rate`.",
"maxLength": 2,
"minLength": 2
},
"created": {
"type": "string",
"description": "ISO date at which the object was created.",
"format": "date-time"
},
"currency": {
"type": "string",
"description": "3-letter ISO 4217 currency code used to charge the `amount`.",
"maxLength": 3,
"minLength": 3
},
"description": {
"type": "string",
"description": "An arbitrary string to describe the supplied item. Often useful for displaying to users."
},
"evidence": {
"type": "object",
"description": "Populated evidence object if an ID is attached. You can attach an evidence object with the `evidence` body parameter in the POST request. Defaults to `null`. See [evidence object](https://vatstack.com/docs/evidences) for reference.",
"$ref": "#/components/schemas/evidence"
},
"evidence_status": {
"type": "string",
"description": "Status of whether the attached evidence object sufficiently proves the place of supply established in `country_code`. Will be either `sufficient` or `insufficient`."
},
"id": {
"type": "string",
"description": "Unique identifier for the object.",
"format": "uuid"
},
"invoice_number": {
"type": "string",
"description": "A custom string for the invoice number issued to the customer. It\u2019s advisable to follow sequential numbering."
},
"issued": {
"type": "string",
"description": "ISO date at which `invoice_number` was issued.",
"format": "date-time"
},
"name": {
"type": "string",
"description": "A custom string for the name of the customer."
},
"notes": {
"type": "string",
"description": "A custom string for additional notes."
},
"updated": {
"type": "string",
"description": "ISO date at which the object was updated.",
"format": "date-time"
},
"validation": {
"type": "object",
"description": "Populated validation object if an ID is attached. You can attach a validation object with the `validation` body parameter in the POST request. Defaults to `null`. See [validation object](https://vatstack.com/docs/validations) for reference.",
"$ref": "#/components/schemas/validation"
},
"vat": {
"type": "object",
"properties": {
"amount": {
"type": "integer",
"description": "VAT amount in cents.",
"format": "int32"
},
"inclusive": {
"type": "string",
"description": "Specifies if the `amount_total` is inclusive (common for EU consumers) or exclusive of VAT. This affects how the `vat.amount` is calculated.",
"default": false
},
"rate": {
"type": "number",
"description": "VAT rate applicable for the place of supply established in `country_code`.",
"format": "double"
},
"rate_type": {
"type": "string",
"description": "Automatically determined type of VAT rate based on inputs. Can be `null`, `exempt`, `reduced`, `reverse_charge`, `standard` or `zero`."
}
}
}
},
"required": [
"amount",
"country_code",
"currency",
"invoice_number",
"issued"
]
}
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.
All 92 tools
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/supply"
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 email required.
A second provider on the same verified email joins the account you already have.