HMRC UK Tax Authority website screenshot

HMRC UK Tax Authority

HM Revenue and Customs (HMRC) provides over 115 APIs through the HMRC Developer Hub for UK tax compliance including Making Tax Digital for VAT and Income Tax, PAYE, customs declarations, corporation tax, and construction industry scheme. APIs use OAuth 2.0 and support both REST and XML protocols with a sandbox testing environment.

5 APIs 0 Features
GovernmentMaking Tax DigitalRegulatoryTaxUK

APIs

HMRC VAT (Making Tax Digital) API

The HMRC VAT (Making Tax Digital) API enables software to submit VAT returns, retrieve VAT obligations, liabilities, payments, penalties, and customer details in compliance with...

HMRC Self Assessment API

The HMRC Self Assessment APIs enable software to submit and manage self assessment tax returns, income sources, and tax calculations for individuals and sole traders under Makin...

HMRC PAYE (Pay As You Earn) API

The HMRC PAYE APIs enable payroll software to submit employer payroll data, retrieve tax codes and employee records, and manage PAYE submissions for Real Time Information (RTI) ...

HMRC Customs Declarations API

The HMRC Customs Declarations APIs enable customs software to submit import and export declarations, manage authorizations, and integrate with the UK Customs Declaration Service...

HMRC Corporation Tax API

The HMRC Corporation Tax APIs enable accounting software to submit corporation tax returns, retrieve liabilities, manage payments, and access tax calculation data for UK busines...

Collections

Pricing Plans

Hmrc Plans Pricing

2 plans

PLANS

Rate Limits

Hmrc Rate Limits

3 limits

RATE LIMITS

FinOps

Hmrc Finops

FINOPS

Semantic Vocabularies

Hmrc Context

4 classes · 21 properties

JSON-LD

JSON Structure

Hmrc Structure

0 properties

JSON STRUCTURE

Resources

👥
GitHubOrganization
GitHubOrganization
🔗
LinkedIn
LinkedIn
🌐
Portal
Portal
🔗
Documentation
Documentation
🔑
Authentication
Authentication
🚀
GettingStarted
GettingStarted
📜
TermsOfService
TermsOfService
🟢
StatusPage
StatusPage
💬
Support
Support
🔗
Website
Website
🔗
OpenAPI
OpenAPI
🔗
JSONSchema
JSONSchema
🔗
JSONLDContext
JSONLDContext

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: HMRC VAT (Making Tax Digital) API
  version: 1.0.0
request:
  auth:
    type: oauth2
    flow: authorization_code
    authorizationUrl: https://api.service.hmrc.gov.uk/oauth/authorize
    accessTokenUrl: https://api.service.hmrc.gov.uk/oauth/token
    credentials:
      clientId: '{{clientId}}'
      clientSecret: '{{clientSecret}}'
items:
- info:
    name: Obligations
    type: folder
  items:
  - info:
      name: Retrieve VAT obligations
      type: http
    http:
      method: GET
      url: https://api.service.hmrc.gov.uk/organisations/vat/:vrn/obligations
      headers:
      - name: Authorization
        value: ''
      - name: Gov-Client-Connection-Method
        value: ''
      - name: Gov-Vendor-Version
        value: ''
      params:
      - name: vrn
        value: ''
        type: path
        description: VAT Registration Number (9 digits)
      - name: from
        value: ''
        type: query
        description: Obligation period start date (YYYY-MM-DD), minimum 2017-01-01
      - name: to
        value: ''
        type: query
        description: Obligation period end date (must be within 366 days of 'from')
      - name: status
        value: ''
        type: query
    docs: Retrieves VAT return filing obligations for the specified VAT Registration Number (VRN). Returns periods for which
      returns must be filed, due dates, and status (Open, Fulfilled) within the requested date range.
- info:
    name: Returns
    type: folder
  items:
  - info:
      name: Submit a VAT return
      type: http
    http:
      method: POST
      url: https://api.service.hmrc.gov.uk/organisations/vat/:vrn/returns
      headers:
      - name: Authorization
        value: ''
      - name: Gov-Client-Connection-Method
        value: ''
      - name: Gov-Vendor-Version
        value: ''
      params:
      - name: vrn
        value: ''
        type: path
      body:
        type: json
        data: '{}'
    docs: Submits a VAT return for the specified VRN and period key. The return must be for an open obligation. Duplicate
      submissions are rejected. Finalisation is indicated by the 'finalised' field being true.
  - info:
      name: View a submitted VAT return
      type: http
    http:
      method: GET
      url: https://api.service.hmrc.gov.uk/organisations/vat/:vrn/returns/:periodKey
      headers:
      - name: Authorization
        value: ''
      params:
      - name: vrn
        value: ''
        type: path
      - name: periodKey
        value: ''
        type: path
        description: Period key from the obligation (e.g., "23AA")
    docs: Retrieves a previously submitted VAT return for the specified period key.
- info:
    name: Payments
    type: folder
  items:
  - info:
      name: Retrieve VAT payments
      type: http
    http:
      method: GET
      url: https://api.service.hmrc.gov.uk/organisations/vat/:vrn/payments
      headers:
      - name: Authorization
        value: ''
      params:
      - name: vrn
        value: ''
        type: path
      - name: from
        value: ''
        type: query
      - name: to
        value: ''
        type: query
    docs: Retrieves a list of VAT payments made by the business to HMRC within the specified date range.
- info:
    name: Liabilities
    type: folder
  items:
  - info:
      name: Retrieve VAT liabilities
      type: http
    http:
      method: GET
      url: https://api.service.hmrc.gov.uk/organisations/vat/:vrn/liabilities
      headers:
      - name: Authorization
        value: ''
      params:
      - name: vrn
        value: ''
        type: path
      - name: from
        value: ''
        type: query
      - name: to
        value: ''
        type: query
    docs: Retrieves VAT financial liabilities owed by the business to HMRC including amounts due, outstanding balances, and
      due dates.
bundled: true