Skip to content
Japanese Yen · JPY

Japanese yen (JPY) exchange rate API

Japanese yen rates against 190+ currencies – live, historical back to 1999 and averaged. The yen has no minor unit in use, so amounts are whole numbers and per-yen rates are small.

CodeJPY
Symbol¥
Decimals0
HistorySince 1999
GET /v1/latest · base JPY
curl -G "https://api.fxapi.com/v1/latest" \
  -d base_currency=JPY \
  -d currencies=USD,EUR,GBP,CNY \
  -H "apikey: $FXAPI_KEY"
# JPY on a past date
curl -G "https://api.fxapi.com/v1/historical" \
  -d date=2011-03-18 -d base_currency=JPY \
  -d currencies=USD \
  -H "apikey: $FXAPI_KEY"
ISO 4217 codeJPY
Symbol¥
Minor unit0 decimals
IssuerBank of Japan

The yen is one of the most traded currencies in the world, and USD/JPY is one of the major pairs. It is also often described as a funding and safe-haven currency, which is why it can move sharply when global markets are stressed. For developers the yen has a quirk that breaks naive code: amounts have no decimal places, while rates expressed per 1 yen are tiny. The fxapi JPY exchange rate API returns full-precision rates either way – you decide where to round.

JPY facts for developers

  • Where it’s used: Japan.
  • Symbol and formatting: ¥ before the amount, comma thousands separator, no decimals: ¥12,800. In Japanese text the kanji 円 usually follows the number (12,800円). Because ¥ is shared with the Chinese yuan, use JP¥ or JPY in multi-currency UIs.
  • Minor unit: 0 decimals. The sen is not used in everyday transactions.
  • Central bank: the Bank of Japan. Currency interventions are decided by Japan’s Ministry of Finance and executed by the Bank of Japan.
  • Regime: free float, with occasional intervention.
  • Events in the historical data: after the Tōhoku earthquake in March 2011 the yen surged to a then-record high against the dollar, and the G7 intervened jointly on 18 March 2011 – the sample date on this page. The yen weakened substantially from late 2012 under “Abenomics”. The Bank of Japan kept a negative policy rate from 2016 until March 2024, and Japan intervened to support the yen in 2022 and 2024.

Get JPY rates with the fxapi API

/v1/latest and /v1/historical are available on every plan. This Go program fetches rates with base_currency=JPY and converts a whole-yen price, also printing the “per 100 yen” view many finance teams prefer:

package main

import (
	"encoding/json"
	"fmt"
	"log"
	"net/http"
	"os"
)

type latestResponse struct {
	Data map[string]struct {
		Code  string  `json:"code"`
		Value float64 `json:"value"`
	} `json:"data"`
}

func main() {
	req, err := http.NewRequest("GET",
		"https://api.fxapi.com/v1/latest?base_currency=JPY&currencies=USD,EUR,GBP", nil)
	if err != nil {
		log.Fatal(err)
	}
	req.Header.Set("apikey", os.Getenv("FXAPI_KEY"))

	resp, err := http.DefaultClient.Do(req)
	if err != nil {
		log.Fatal(err)
	}
	defer resp.Body.Close()
	if resp.StatusCode != http.StatusOK {
		log.Fatalf("fxapi returned %s", resp.Status)
	}

	var out latestResponse
	if err := json.NewDecoder(resp.Body).Decode(&out); err != nil {
		log.Fatal(err)
	}

	const priceJPY = 12800 // yen amounts are whole numbers
	for code, r := range out.Data {
		fmt.Printf("¥%d = %.2f %s   (100 JPY = %.4f %s)\n",
			priceJPY, priceJPY*r.Value, code, 100*r.Value, code)
	}
}

See the Go guide for caching and error handling, and the historical exchange rates API for back-dated values such as the 2011 intervention. The South Korean won and the Chinese yuan pages cover the other major East Asian currencies.

Things to watch

  • Never store yen with two decimals in a column that also feeds payment providers – many reject fractional JPY amounts.
  • Precision on inverse rates. Rounding USD-per-yen to 4 decimals destroys most of the information; store the full value. See currency rounding and precision.
  • Intervention days can produce large daily moves; validate against a tolerance rather than a fixed band.

Popular JPY pairs

Request any of these pairs – or any other combination of the 190+ supported currencies – with base_currency=JPY:

PairLatest rate request
JPY/USD/v1/latest?base_currency=JPY&currencies=USD
JPY/EUR/v1/latest?base_currency=JPY&currencies=EUR
JPY/GBP/v1/latest?base_currency=JPY&currencies=GBP
JPY/CNY/v1/latest?base_currency=JPY&currencies=CNY
JPY/AUD/v1/latest?base_currency=JPY&currencies=AUD
JPY/KRW/v1/latest?base_currency=JPY&currencies=KRW
JPY/CHF/v1/latest?base_currency=JPY&currencies=CHF

Monthly averages and fluctuation for JPY

# Monthly average JPY rates for 2025 (IAS 21 / ASC 830)
curl -G "https://api.fxapi.com/v1/average" \
  -d date_from=2025-01-01 -d date_to=2025-12-31 -d period=month \
  -d base_currency=JPY -d currencies=USD,EUR,GBP \
  -H "apikey: $FXAPI_KEY"

# How did JPY move over the last year?
curl -G "https://api.fxapi.com/v1/fluctuation" \
  -d date_from=2025-10-01 -d date_to=2026-10-01 \
  -d base_currency=JPY -d currencies=USD,EUR,GBP \
  -H "apikey: $FXAPI_KEY"

See the historical exchange rates API, average rates API and documentation for every parameter.

JPY is one of 190+ currencies in fxapi, the foreign exchange rates API for developers – live rates, daily history since 1999 and monthly averages with one API key.

Frequently asked questions

How do I get the USD to JPY exchange rate via API?
Request /v1/latest?currencies=JPY – USD is the default base, so the value is yen per 1 US dollar. For the inverse, set base_currency=JPY&currencies=USD.
How many decimals should I use for JPY amounts?
Zero. ISO 4217 defines no minor unit in use for the yen, so round converted JPY amounts to whole yen. Keep full precision on the rate itself.
Why are rates with base JPY so small?
One yen is worth a fraction of a US cent, so values like USD per 1 JPY have many leading zeros. Many apps display rates per 100 JPY or use USD as the base instead.
Does fxapi have historical yen rates before 1999?
No. fxapi’s daily data starts on 1999-01-01.
Can the symbol ¥ be confused with the Chinese yuan?
Yes – ¥ is used for both JPY and CNY. Show JP¥ or the ISO code in multi-currency interfaces.
Free plan · no credit card

Get your free exchange rate API key

300 requests a month, latest and historical rates, fluctuation and averages – free forever. Upgrade when you need faster updates or more requests.