Central Bank of Myanmar Exchange Rate API: Official MMK Rates as JSON
The Central Bank of Myanmar publishes the official exchange rates that accounting, tax, and customs practice in Myanmar reference — published official rates, not moving market prices. This guide shows how to pull them as JSON: via a REST endpoint or the zero-dependency cbm-exchange-rate npm package.
/api/v1/central-bank/cbm/history?source=EUR&target=MMK).The official rate is the point
Since 2022 the CBM reference rate has been held around 2,100 kyat per dollar while street rates have traded far higher. That gap is not a data problem — it is the reason this feed exists. Customs valuations, tax filings and audited accounts in Myanmar must cite the official reference rate, and the official print is fixed the moment the CBM publishes it.
Why official rates, not market rates
A live mid-market feed answers "what is USD/MMK trading at right now?" — the right tool for checkouts and dashboards. But accountants, auditors, and tax authorities ask a different question: "which rate were you required to use for this date?" That answer comes from the Central Bank of Myanmar’s published rates, and it never changes after publication.
Get the latest rates (REST)
curl "https://allratestoday.com/api/v1/central-bank/cbm/latest" \
-H "Authorization: Bearer YOUR_API_KEY" The response is the bank's most recent published table — every rate and the publication date. The latest rates are available on every plan, including the free tier (300 requests/month, no credit card).
The npm SDK
npm install cbm-exchange-rate import { getRate, getLatestRates } from 'cbm-exchange-rate';
// One pair at the official rate
const pair = await getRate('USD', 'MMK', { apiKey: 'art_live_...' });
console.log(pair.rate, pair.rate_date);
// The bank's full published table
const table = await getLatestRates({ apiKey: 'art_live_...' });
console.log(table.rate_date, table.rates.length); Zero dependencies, TypeScript types included, and it runs anywhere fetch exists — Node 18+, Bun, Deno, and edge runtimes.
Historical rates for an invoice date
import { getRatesForDate, getHistory } from 'cbm-exchange-rate';
const day = await getRatesForDate('2026-08-18', { apiKey: 'art_live_...' });
const series = await getHistory(
{ source: 'USD', target: 'MMK', from: '2026-01-01' },
{ apiKey: 'art_live_...' }
); Historical dates and time series need a paid plan; the latest rates stay free.
Published vs derived pairs
If the Central Bank of Myanmar does not print a pair directly, the API resolves it from the bank's published rates — an inverse, or a cross via MMK — and flags it derived: true with the method used. Official and computed values are never silently mixed, which is exactly the distinction an auditor will ask about.
The archive
The CBM reference series begins with the April 2012 managed float, and we hold every published day since July 2012 — including the kyat’s move from under 900 per dollar to the 2,100 level held since August 2022.
FAQ
Does the Central Bank of Myanmar have an official exchange rate API?
The bank publishes its official rates on its own site, and AllRatesToday serves the same published rates as clean JSON via REST or the cbm-exchange-rate npm package. The latest table is free.
How do I get the official Myanmar exchange rate for a past date?
The rates-for-date endpoint returns the official table for any archived date; non-publication days resolve to the most recent published date and are flagged, so audit trails stay honest. Historical dates require a paid plan; latest rates are free.
Why is the official CBM rate different from the market rate?
The CBM manages its reference rate, and since 2022 it has stood well below street levels. Official filings in Myanmar still require the official rate — which is exactly what this API serves, with the bank’s own publication date.
Official Central Bank of Myanmar rates, as JSON
The latest rates are free — 300 requests/month, no credit card.
Get your free API key