National Bank of Tajikistan Exchange Rate API: Official TJS Rates as JSON
The National Bank of Tajikistan publishes the official exchange rates that accounting, tax, and customs rules in Tajikistan 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 national-bank-of-tajikistan-exchange-rate npm package.
/api/v1/central-bank/nbt/history?source=USD&target=TJS).What the NBT publishes
- The official somoni rate for 36 currencies in TJS per unit — around 9.26 per US dollar, 10.76 per euro and 0.107 per Russian ruble on the table dated 5 September 2026.
- The currencies that matter for Tajik trade and remittances — USD, EUR, CNY and RUB, the Central Asian and Caucasus units (KZT, UZS, KGS, TMT, AZN, AMD, GEL) and the majors and Gulf currencies.
- Set the evening before — the NBT fixes each day's table the previous evening, Tuesday to Saturday, and every response carries the bank's own rate date.
- History back to 2010 in our API, queryable by exact date or as a series — sixteen years of the official series, including the 2015–2016 slide from 5 to 8 somoni per dollar.
Tajikistan runs an official rate and a market one, and only the NBT figure has legal standing: it is the rate customs, the tax committee and the banks use for statutory conversion, and the one a Tajik invoice or a remittance operator cites — the API serves that number, dated.
Why official rates, not market rates
A live mid-market feed answers "what is USD/TJS 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 National Bank of Tajikistan's published rates, and it never changes after publication.
Get the latest rates (REST)
curl "https://allratestoday.com/api/v1/central-bank/nbt/latest" \
-H "Authorization: Bearer YOUR_API_KEY" The response is the bank's most recent published data — 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 national-bank-of-tajikistan-exchange-rate import { getRate, getLatestRates } from 'national-bank-of-tajikistan-exchange-rate';
// One pair at the official NBT rate
const pair = await getRate('USD', 'TJS', { 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 'national-bank-of-tajikistan-exchange-rate';
// The official rates for an invoice date — non-publication days return
// the most recent published date, flagged via published_on_requested_date.
const day = await getRatesForDate('2026-06-30', { apiKey: 'art_live_...' });
// Time series for one pair
const series = await getHistory(
{ source: 'USD', target: 'TJS', 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 NBT does not print a pair directly, the API resolves it from the bank's published rates — an inverse, or a cross rate via TJS — 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.
Sixteen years of the official somoni rate
Our archive starts in January 2010, when the dollar was 4.37 somoni, and runs through the 2015–2016 devaluation and on to today's 9.2 — every table the bank set, stored with its own date. Sundays, Mondays and holidays are not separate publications: the API resolves them to the last table set and flags it.
FAQ
Does the National Bank of Tajikistan have an official exchange rate API?
The NBT publishes its official rates on its own site, and AllRatesToday serves the same published rates as clean JSON via REST or the national-bank-of-tajikistan-exchange-rate npm package. The latest rates are free (300 requests/month); historical dates need a paid plan.
How often do National Bank of Tajikistan rates update?
Once per business day, set the previous evening (Dushanbe time) — so Tuesday to Saturday carry new tables and Sunday and Monday resolve to Saturday's. Each table covers 36 currencies in somoni per unit; every API response carries the bank's own rate date.
Can I get the NBT rate for a past date, like an invoice date?
Yes. The /central-bank/nbt/rates-for-date endpoint returns the official rates for any archived date. Non-publication days resolve to the most recent published date and are flagged via published_on_requested_date.
Official National Bank of Tajikistan rates, as JSON
The latest rates are free — 300 requests/month, no credit card.
Get your free API key