oneapi
Sign in
Utile v1 / Coduri

Currencies

The ISO 4217 currency list, with the code, the name, the number of decimals and the countries using each. The decimals matter when rounding: the yen has none, the dinar has three.

GET
https://oneapi.ro/api/utile/v1/coduri/valute

Query parameters

This route accepts no query parameters.

How it behaves

  • These are the currencies IN CIRCULATION, derived from the territories that use them — not the whole ISO 4217 register, which also holds historical codes and units of account (XAU gold, XDR special drawing rights).
  • zecimale is not always 2. Formatting international amounts with two decimals everywhere gets the yen, the Tunisian dinar and a dozen other currencies wrong.
  • simbol is null where the currency has no symbol distinct from its code. A "symbol" that is the code itself helps nobody format an amount, so we do not present it as one.
  • For the leu exchange rate, see the curs zone in the Financiar module — this route holds only the codes and their metadata.

What it is for

  • Populate a currency picker with names in Romanian.
  • Find how many decimals each currency has, to format and round correctly.
  • See which countries use a given currency.

Response structure

All fields below live inside data.

FieldTypeDescription
inregistrari integer How many records the response holds.
valute[].cod string The three-letter ISO 4217 code.
valute[].nume string The name in Romanian.
valute[].nume_en string The name in English.
valute[].simbol null The currency symbol, or null.
valute[].zecimale integer The currency's number of decimals.
valute[].tari array The territories using it.
observatie string A note on how to read the response: a computation convention or a limit of the data.
sursa.nume string Name of the official source.
sursa.versiune string Version of the dataset or artefact the values come from.
sursa.licenta string The licence under which the source allows reuse.
sursa.observatie string What to know about the source before using the data.

Response examples

GEThttps://oneapi.ro/api/utile/v1/coduri/valute
{
    "data": {
        "inregistrari": 154,
        "valute": [
            {
                "cod": "AED",
                "nume": "dirham din Emiratele Arabe Unite",
                "nume_en": "United Arab Emirates Dirham",
                "simbol": null,
                "zecimale": 2,
                "tari": [
                    "AE"
                ]
            }
        ],
        "observatie": "Sunt valutele în circulație, deduse din teritoriile care le folosesc — nu tot registrul ISO 4217, care conține și coduri istorice și unități de cont (XAU, XDR). `zecimale` NU e mereu 2: yenul are 0, dinarul tunisian are 3.",
        "sursa": {
            "nume": "ICU / CLDR (Unicode Common Locale Data Repository), prin runtime-ul PHP",
            "versiune": "76.1",
            "licenta": "Unicode License.",
            "observatie": "Se actualizează la un upgrade de imagine, nu printr-un import — de aceea versiunea CLDR e în răspuns."
        }
    }
}

Error codes

CodeSlugWhen it occurs
401neautentificatToken missing, invalid, expired or revoked.
403feature_indisponibilThe current plan does not include the feature the route depends on.
422validareThe route takes no parameters apart from lang: any other parameter returns 422 instead of being ignored.
429cota_depasitaThe plan's monthly quota has been exceeded (see Retry-After).

All errors share the same shape. eroare.cod is stable and is the value you should branch on in code — not the text in mesaj, which may change.

{
    "eroare": {
        "cod": "validare",
        "mesaj": "The route takes no parameters apart from lang: any other parameter returns 422 instead of being ignored."
    }
}