Home Documentation Central Bank Rates Tax Authority Rates Playground Pricing API Status Blog About FAQ Contact Us

HM Revenue & Customs Reference Rate API for Accounting, Invoicing & Compliance

Reviewed by Madhushan, Fintech Developer — August 2026

If your business invoices, imports, or reports in a currency other than the GBP, sooner or later someone will ask which rate you used — and “the one on the internet that day” is not an answer that survives an audit. For that, you want the official number: HM Revenue & Customs’s published monthly customs exchange rates.

What are the HM Revenue & Customs monthly customs exchange rates?

HM Revenue & Customs is the United Kingdom's tax, payments, and customs authority. It publishes one official exchange rate table per calendar month — released ahead of the month it applies to — and that single rate is what UK customs declarations and VAT invoices must use for the whole month, regardless of how the market moves in between.

It is published once a calendar month, currently covering 141 currencies, and the published record runs back to 2021. Crucially it is a published figure, not a live market price — it does not move after it is set, which is exactly the property an accountant or an auditor needs.

HMRC publishes one table per calendar month and UK customs declarations and VAT invoices are required to use it for that whole month, whatever the market does in between.

Why finance teams need the official rate

Book closing and month end

Foreign-currency balances have to be translated at a defensible rate on a specific date. Using a live market rate means the number changes depending on what minute you pulled it, and two people closing the same month can produce two different sets of books. The authority’s published rate for that date is fixed and reproducible forever.

FX gain and loss

Revaluing receivables and payables needs the rate at invoice date and the rate at settlement date. Both have to come from the same series, or the gain and loss you report is partly an artefact of switching data sources mid-stream.

Audits and compliance

An auditor does not want a screenshot. They want a rate that traces back to a named publisher and a publication date they can independently check against HM Revenue & Customs’s own release. That is the entire reason official rates exist.

Management reporting

Group reporting across entities only consolidates cleanly when every entity converts at the same published rate for the same date. Left to their own devices, subsidiaries will each pick a different source.

The problem with collecting the rate by hand

HM Revenue & Customs publishes the data — but publishing and being easy to consume are different things. In practice teams end up copying figures off the bank’s rates page into a spreadsheet every period, which creates four familiar problems:

The HM Revenue & Customs rates as an API

AllRatesToday ingests HM Revenue & Customs’s published table shortly after each release and serves it back in a consistent shape, alongside 37 other central banks and national tax authorities on identical endpoints.

Sample response

A real response for GBP to USD, from HM Revenue & Customs’s publication of 2026-08-01:

{
  "bank": "hmrc",
  "rate_date": "2026-08-01",
  "source": "GBP",
  "target": "USD",
  "rate": 1.3367,
  "rate_type": "monthly",
  "derived": false
}

The rate_date is the authority’s own publication date — the date you cite in the ledger — and derived tells you whether HM Revenue & Customs printed this pair itself.

Who this is for

What it actually saves

Getting started

  1. Create a free account — 300 requests a month, no card.
  2. Call /api/v1/central-bank/hmrc/latest, or download the table as Excel from the HM Revenue & Customs coverage page.
  3. Wire it into your close, your invoicing, or a scheduled spreadsheet refresh.

Developers who want the endpoints, SDK and code samples should read the HM Revenue & Customs API guide instead — this page is the business case; that one is the integration.

FAQ

Where do HM Revenue & Customs exchange rates come from in this API?

Directly from HM Revenue & Customs's own published monthly customs exchange rates. Rates are stored unmodified with the authority's publication date attached, so the figure in your ledger is the figure HM Revenue & Customs printed, going back to 2021.

Can I get the HM Revenue & Customs rate for a past date, like an invoice or shipment date?

Yes. Ask for any past date and you get the rate in force then, back to 2021. If the authority did not publish that day — a weekend or a public holiday — the API returns the most recent published table and flags that it did, so your audit trail stays honest instead of silently guessing.

Do I need a developer to use this?

Not necessarily. Every coverage page offers the latest published table as an Excel or CSV download, and finance teams commonly pull the API straight into Excel, Power BI or their ERP on a schedule. A developer helps if you want it wired into invoicing or your accounting system automatically.

Final thought

Official rates are not a nicer version of market rates — they answer a different question. Market data tells you what a currency is worth right now. HM Revenue & Customs’s published table tells you what rate your books, your customs entries and your auditor are entitled to expect for a given date. Getting that second number automatically, with its publication date attached, removes an entire category of month-end argument.

Official HM Revenue & Customs rates, automated

Free tier: 300 requests a month, no credit card.

Get your free API key

Related Articles