Skip to content

Platform_

Live FX rates

Sourced directly from central banks — no reseller markup.

Rates come straight from the ECB, the US Federal Reserve, the State Bank of Pakistan, the Bank of England and the Bank of Canada. Public data, no licence, and a stronger claim than any competitor: sourced from central banks, with staleness reported rather than hidden.

Why it works_

Convert money at a rate you can name

01

Central-bank provenance

Each currency is served by the bank that is the authority for it; every rate carries its source and as-of date.

02

Arbitrary precision

Conversions run in bcmath at scale 12 — amounts are strings, never floats, because a float cannot hold money.

03

Staleness, not silence

A source past its window is marked stale; an unpublished currency is absent, never guessed.

The data behind it

One call, these response blocks.

This page maps to these blocks of the same response every other page reads:

  • Live FX
fx-rates.sh
curl "https://api.localesense.com/v1/fx/convert?from=USD&to=PKR&amount=100" \
  -H "Authorization: Bearer ls_live_..."
In practice

What your code sees, per request.

The sample on the right is the shape of the real response for a visitor in Karachi — every value attributable, nothing guessed. Point the same call at any of the 197 markets.

Try it live in the docs
GET /v1/self 200 OK · sample
  • FX vs USD 278.02 · SBP · today

Keep exploring_

Related platform

FAQs

Live FX rates — frequently asked

Where do your exchange rates come from?

Straight from central banks — the European Central Bank, the US Federal Reserve, the Bank of England, the Bank of Canada and the State Bank of Pakistan. Each currency is served by the authority for it, and every rate carries its source and as-of date so you can attribute it.

How often are the FX rates updated?

On each source's own publishing schedule — most central banks publish once per business day. A rate past its expected window is marked stale rather than silently served, and an unpublished currency is absent instead of guessed.

How do you avoid floating-point errors in currency conversion?

All conversion runs in bcmath at scale 12, with amounts passed as strings end to end. A float cannot hold money precisely, so we never use one in the money path — a design rule the test suite enforces.

Get started

Try it free

10,000 requests a month, no card. Every tier includes live FX and the full formatting engine.

Get your API key