Saudi Central Bank (SAMA) Exchange Rate API

Official Saudi Central Bank (SAMA) rates for 31 Jul 2026: 1 USD = 3.75 SAR, 1 EUR = 4.2976 SAR. All 12 currencies published, history back to 2009. Free JSON API for tax, audits, and compliant invoicing.

Saudi Arabia flagSaudi Central Bank (SAMA) publishes official monthly average exchange rates — 12 currencies against the SAR — and this API serves them as JSON, with history back to 2009. The latest table is on every plan. Get your API key.

About Saudi Central Bank (SAMA)

The Saudi Central Bank (SAMA) publishes riyal exchange rates monthly — period averages and end-of-period values for 12 currencies — with the riyal itself pegged to the US dollar at 3.75 since 1986. SAMA offers no machine-readable feed of its own, so this series is sourced from the KAPSARC open-data mirror of SAMA’s table and typically trails the calendar by about two months.

Quick start

One request for the pair you need — EUR to SAR at the official Saudi Central Bank (SAMA) rate:

curl "https://allratestoday.com/api/v1/central-bank/sama/latest?source=EUR&target=SAR" \
  -H "Authorization: Bearer art_live_your_key"

Or the bank's full published table:

curl "https://allratestoday.com/api/v1/central-bank/sama/latest" \
  -H "Authorization: Bearer art_live_your_key"

On paid plans, any historical date or a time series:

curl "https://allratestoday.com/api/v1/central-bank/sama/history?source=EUR&target=SAR&from=2025-01-01" \
  -H "Authorization: Bearer art_live_your_key"

Latest published rates (2026-07-31)

The most recent table as published by Saudi Central Bank (SAMA) — exactly what the /latest endpoint returns right now. Values are SAR per 1 unit of each currency:

Download this table: Excel (.xlsx) CSV

Download history:
Choose currencies: USD
Excel (.xlsx) CSV

One row per currency per publication date. Up to one year per download. Billed as one API call per currency per month of data.

BaseQuoteTypeRate
AUD SAR close 2.63058047221363
AUD SAR monthly_average 2.61183063501772
BRL SAR close 0.739165577840677
BRL SAR monthly_average 0.734010568058027
CHF SAR close 4.6253693732891
CHF SAR monthly_average 4.62296633968702
CNY SAR close 0.554618414531289
CNY SAR monthly_average 0.553378781072114
EUR SAR close 4.29760140142838
EUR SAR monthly_average 4.28048973052737
GBP SAR close 5.03046195705751
GBP SAR monthly_average 5.01331824526424
INR SAR close 0.0392357079697051
INR SAR monthly_average 0.0391362080096797
JPY SAR close 0.0232939683467162
JPY SAR monthly_average 0.0230591741146819
KRW SAR close 0.0025965805007124
KRW SAR monthly_average 0.00250938390171408
THB SAR close 0.111984058708896
THB SAR monthly_average 0.111920065604215
TRY SAR close 0.0788477353462766
TRY SAR monthly_average 0.0797603736961918
USD SAR close 3.75
USD SAR monthly_average 3.75

Node.js / TypeScript client

A dedicated zero-dependency npm package wraps these endpoints — sama-exchange-rate:

npm install sama-exchange-rate
import { getRate } from 'sama-exchange-rate';

const pair = await getRate('EUR', 'SAR', { apiKey: 'art_live_...' });
console.log(pair.rate, pair.rate_date);

Zero dependencies, TypeScript types included, and it runs anywhere fetch exists — Node 18+, Bun, Deno, and edge runtimes.

Full reference — installation, all four functions, response shapes, error codes: sama-exchange-rate documentation.

Why use the official Saudi Central Bank (SAMA) rate?

Live market rates move continuously, but tax filings, customs declarations, audits, and statutory accounting in Saudi Arabia and beyond typically require the official rate published by Saudi Central Bank (SAMA) for a given date — a fixed, citable number that never changes after publication. This API serves those published tables with the bank's own rate_date on every response; weekends and holidays return the most recent published date, which is the rate compliance rules require you to apply.

Pairs the bank doesn't print directly are resolved from its table (inverse or cross via SAR) and explicitly flagged "derived": true — so what the bank printed and what was computed are never confused.

Endpoints

Full parameter reference in the API documentation. Every request counts toward your plan's monthly quota — rates change once a month, so caching a published table locally makes a small quota go far.

Frequently asked questions

Can I get Saudi Central Bank (SAMA) exchange rates via an API?

Yes — this API serves the bank's official monthly average SAR rates as JSON, and the latest table is on every plan, free included.

When do new rates appear here?

Monthly averages — one averaged rate per calendar month, published once the month has closed, per Saudi Central Bank (SAMA)'s own schedule; ingestion follows within the hour (latest table: 2026-07-31).

Are these the official rates?

Yes — ingested from Saudi Central Bank (SAMA)'s own published data, served unmodified with the bank's publication date. Anything computed rather than published is flagged derived.

Saudi Central Bank (SAMA) rates, one API key

Latest table on every plan. History back to 2009 on paid plans. No credit card to start.

Get Free API Key Read the Docs