Our REST API provides programmatic access to exchange-rate data for Ukraine and international markets, including real-time interbank quotes, the cash market, benchmark fixings, official NBU rates, bank cash-desk rates, online banking rates, card rates and Forex data.
For an extended API package for ERP systems such as SAP, online stores, contract pricing or other business use cases, contact us through the feedback form. Tell us which rate you need and how it will be used, and we will suggest an appropriate data package.
Available data:
All methods are available at:
https://kurs.com.ua/api/{method}
Parameters can be passed either in the query string (?key=...&format=json) or as URL path segments (/key/.../format/json). Both forms are equivalent.
Every request must contain the key parameter with your personal API key. To obtain a key, submit a request through the feedback form.
Responses are returned as XML by default. Add format=json to receive JSON.
Hourly request limits are set separately for each method and depend on the terms of your API key. When a limit is exhausted, the API returns error 401.
When an error occurs, the response contains status: false and an error field describing the problem.
400 |
invalid parameters, such as an unknown currency or city |
401 |
hourly request limit exhausted, API key expired or insufficient access rights |
403 |
invalid API key |
bid |
buy rate — the rate at which the organization buys the currency |
ask |
sell rate — the rate at which the organization sells the currency |
bid_change, ask_change, change |
change compared with the previous day’s value |
value |
official or reference value, such as an NBU or international market rate |
rate |
exchange rate for a Forex currency pair |
updated |
date and time when the value was last updated |
date |
date for which the data is returned |
new / old |
fresh data updated today / older data not updated today |
total, banks_total |
number of organizations in the result set |
avg / best |
average and best rate among the selected organizations |
trusted |
source confidence level |
translit |
transliterated identifier used in request parameters |
nal / beznal |
cash / non-cash fixing |
CURRENT / PREVIOUS |
chart points for the current and previous trading day |
The key and format parameters apply to every method and are not repeated in the tables below.
/api/summary_info
Returns current rates for a selected city or region in one request: average and best bank rates, cash-market data, interbank rates, NBU rates, Visa and Mastercard data, Forex rates and fixings.
| Parameter | Description |
|---|---|
city |
City or region specified by its transliterated identifier. See the cities and regions methods. The default is all for all of Ukraine. |
currencies |
Comma-separated currency identifiers, for example usd,eur. See the currencies method. The default is all available currencies. |
basic_currency |
Base currency used to calculate the rates. The default is uah. |
date |
Date for which data is required, for example 13.07.2026 or 2026-07-13. The default is today. |
type |
Organization type: MAJOR for the largest institutions, BIG for large institutions, BANK for all banks, or POV for currency exchange offices. The default is BANK. |
source |
Comma-separated data sources. The default is all sources. Supported values: organizations for average and best bank rates; commercial for the cash-market benchmark; actual for the current cash-market rate; blackmarket for cash-market data; mezhbank for interbank data; nbu; international; visa; mastercard; and fixing. |
https://kurs.com.ua/api/summary_info?key=YOUR_API_KEY&city=kiev¤cies=usd,eur&format=json
{
"basic_currency": { "id": "491", "iso": "980", "symbol": "UAH", "name": "гривна" },
"date": "Mon, 13 Jul 2026 00:00:00 +0300",
"city": { "id": "908", "name": "Киев", "translit": "kiev" },
"currencies": [
{
"id": "1", "iso": "840", "symbol": "USD", "name": "доллар",
"rates": [
{
"type": "organizations",
"updated": "Mon, 13 Jul 2026 12:48:52 +0300",
"banks_total": 43,
"avg": { "bid": 44.3398, "bid_change": 0.0666, "ask": 44.7893, "ask_change": 0.0673 },
"best": { "bid": 44.6, "bid_change": 0.2, "ask": 44.6, "ask_change": 0.05 }
},
{
"type": "commercial",
"updated": "Mon, 13 Jul 2026 12:30:00 +0300",
"bid": 44.4552, "bid_change": 0.0235,
"ask": 44.6187, "ask_change": 0.0022
},
{
"type": "nbu",
"updated": "Mon, 13 Jul 2026 00:00:00 +0300",
"value": 44.3564, "change": 0.0421
}
]
}
]
}
/api/currencies
Directory of currencies and bank metals, including IDs, symbols, names and transliterated identifiers used in the currencies parameter of other methods.
| Parameter | Description |
|---|---|
type |
Directory type: currency_and_metal (default) for currencies and bank metals; currency for currencies only; metal for metals only; nbu for currencies with NBU rates; cash for cash-market currencies; cash_cards for card-rate currencies; cards for payment-card currencies; mejbank for interbank currencies; commercial for the cash-market benchmark; actual for the current cash-market rate; visa; mastercard; forex for Forex instruments; forex_currency; forex_metal; or bank_metal. |
https://kurs.com.ua/api/currencies?key=YOUR_API_KEY&format=json
{
"total": 172,
"currencies": [
{ "id": "1", "symbol": "USD", "name": "доллар", "translit": "usd" },
{ "id": "2", "symbol": "EUR", "name": "евро", "translit": "eur" },
{ "id": "3", "symbol": "RUB", "name": "рубль", "translit": "rub" }
]
}
/api/regions
List of Ukrainian regions and their transliterated identifiers for the region and city parameters.
| Parameter | Description |
|---|---|
type |
Region filter: commercial for regions with cash-market data. |
https://kurs.com.ua/api/regions?key=YOUR_API_KEY&format=json
{
"total": 24,
"regions": [
{ "id": "2", "name": "Винницкая область", "translit": "vinnickaya_oblast" },
{ "id": "3", "name": "Волынская область", "translit": "volynskaya_oblast" }
]
}
/api/cities
List of Ukrainian cities with geographic coordinates. The translit field is used as the city parameter in other methods.
| Parameter | Description |
|---|---|
type |
City filter: commercial, bank, bank_big or big. |
region |
Region specified by its transliterated identifier. See the regions method. |
https://kurs.com.ua/api/cities?key=YOUR_API_KEY&type=big&format=json
{
"total": 58,
"cities": [
{
"id": "908",
"region_id": "11",
"name": "Киев",
"translit": "kiev",
"size": "5",
"geometry": {
"lat": 50.4501,
"lng": 30.5234,
"bounds": {
"ne": { "lat": 50.590798, "lng": 30.825941 },
"sw": { "lat": 50.213273, "lng": 30.239440 }
}
}
}
]
}
/api/organizations
List of banks and currency exchange offices, including names, types, telephone numbers and icons.
| Parameter | Description |
|---|---|
type |
Organization type: MAJOR, BIG, BANK, POV or BANK_ALL. |
https://kurs.com.ua/api/organizations?key=YOUR_API_KEY&type=MAJOR&format=json
{
"total": 17,
"organizations": [
{
"id": "34",
"name": "Sense bank",
"translit": "sense-bank",
"type": "BANK",
"group": "1",
"phones": "0-800-50-20-50, (044)298-80-00",
"icon": {
"base64": "data:image/png;base64,iVBORw0KGgoAAAANSU...",
"url": "https://old.kurs.com.ua/static/images/banks_icon/34.png"
}
}
]
}
/api/organizations_departments
Branches of a selected organization, including addresses, telephone numbers and geographic coordinates.
| Parameter | Description |
|---|---|
organization |
Organization ID. See the organizations method. |
city |
City specified by its transliterated identifier. See the cities method. |
https://kurs.com.ua/api/organizations_departments?key=YOUR_API_KEY&organization=10&format=json
{
"total": 1698,
"departments": [
{
"id": "154994",
"city": "2327",
"name": "Отделение ПриватБанка",
"address": "г. Чернигов, ул. Ивана Мазепы, 6",
"phones": "3700",
"geo": { "lat": "51.4967", "lng": "31.2872" }
}
]
}
/api/organizations_rates
Cash exchange rates at bank branches and currency exchange offices in a selected city. Results are separated into fresh data (new) and older data (old).
| Parameter | Description |
|---|---|
city |
City or region specified by its transliterated identifier. See the cities and regions methods. |
currencies |
Comma-separated currency identifiers, for example usd,eur. See the currencies method. The default is all available currencies. |
date |
Date for which data is required, for example 13.07.2026 or 2026-07-13. The default is today. |
type |
Organization type: MAJOR, BIG, BANK, POV, BANK_ALL, or a comma-separated list of types. |
wholesale |
Wholesale rates: set to 1 to include wholesale values. |
https://kurs.com.ua/api/organizations_rates?key=YOUR_API_KEY&city=kiev¤cies=usd&type=MAJOR&format=json
{
"date": "Mon, 13 Jul 2026 00:00:00 +0300",
"city": { "id": "908", "name": "Киев", "translit": "kiev" },
"currencies": [
{
"id": "1",
"symbol": "USD",
"updated": "Mon, 13 Jul 2026 00:00:00 +0300",
"total": 15,
"rates": {
"new": [
{
"organization_id": "10",
"organization": "Приватбанк",
"bid": "44.1000", "bid_change": "0.0000",
"ask": "44.7000", "ask_change": "0.0000",
"updated": "Mon, 13 Jul 2026 09:31:32 +0300",
"trusted": "2"
},
{
"organization_id": "98",
"organization": "Райффайзен Банк",
"bid": "44.4500", "bid_change": "0.1500",
"ask": "44.8200", "ask_change": "0.1300",
"updated": "Mon, 13 Jul 2026 11:50:08 +0300",
"trusted": "1"
}
],
"old": [
{
"organization_id": "146",
"organization": "Кредобанк",
"bid": "44.3700", "bid_change": "0.0000",
"ask": "44.6400", "ask_change": "0.0000",
"updated": "Fri, 10 Jul 2026 12:36:16 +0300",
"trusted": "2"
}
]
}
}
]
}
/api/organizations_card_rates
Card conversion rates from Ukrainian banks. The response structure is the same as for organizations_rates.
| Parameter | Description |
|---|---|
currencies |
Comma-separated currency identifiers, for example usd,eur. See the currencies method. The default is all available currencies. |
date |
Date for which data is required, for example 13.07.2026 or 2026-07-13. The default is today. |
https://kurs.com.ua/api/organizations_card_rates?key=YOUR_API_KEY¤cies=usd&format=json
{
"date": "Mon, 13 Jul 2026 00:00:00 +0300",
"currencies": [
{
"id": "1",
"symbol": "USD",
"updated": "Mon, 13 Jul 2026 00:00:00 +0300",
"total": 38,
"rates": {
"new": [
{
"organization_id": "35",
"organization": "Банк Альянс",
"bid": "44.5000", "bid_change": "0.1000",
"ask": "44.6500", "ask_change": "0.1200",
"updated": "Mon, 13 Jul 2026 11:30:07 +0300",
"trusted": "1"
}
],
"old": []
}
}
]
}
/api/organizations_online_rates
Online banking exchange rates from Ukrainian banks. The response structure is the same as for organizations_rates.
| Parameter | Description |
|---|---|
currencies |
Comma-separated currency identifiers, for example usd,eur. See the currencies method. The default is all available currencies. |
date |
Date for which data is required, for example 13.07.2026 or 2026-07-13. The default is today. |
https://kurs.com.ua/api/organizations_online_rates?key=YOUR_API_KEY¤cies=usd&format=json
{
"date": "Mon, 13 Jul 2026 00:00:00 +0300",
"currencies": [
{
"id": "1",
"symbol": "USD",
"updated": "Mon, 13 Jul 2026 00:00:00 +0300",
"total": 29,
"rates": {
"new": [
{
"organization_id": "87",
"organization": "ОТП Банк",
"bid": "44.5540", "bid_change": "0.2080",
"ask": "44.8500", "ask_change": "0.1500",
"updated": "Mon, 13 Jul 2026 12:30:05 +0300",
"trusted": "1"
}
],
"old": [
{
"organization_id": "146",
"organization": "Кредобанк",
"bid": "44.3700", "bid_change": "0.0000",
"ask": "44.6400", "ask_change": "0.0000",
"updated": "Fri, 10 Jul 2026 12:36:16 +0300",
"trusted": "2"
}
]
}
}
]
}
/api/forex
International foreign exchange market rates by currency pair.
| Parameter | Description |
|---|---|
currencies |
Comma-separated currency pairs in from_to format, for example eur_usd,gbp_usd. If omitted, the API returns the main Forex pairs against the US dollar. |
date |
Date for which data is required, for example 13.07.2026 or 2026-07-13. The default is today. |
https://kurs.com.ua/api/forex?key=YOUR_API_KEY&format=json
{
"date": "Mon, 13 Jul 2026 00:00:00 +0300",
"rates": [
{ "currency": "EUR/USD", "rate": "1.142970", "change": "0.001340", "updated": "Mon, 13 Jul 2026 12:49:39 +0300" },
{ "currency": "GBP/USD", "rate": "1.339070", "change": "0.000130", "updated": "Mon, 13 Jul 2026 12:49:39 +0300" }
]
}
/api/fixing
Daily cash (nal) and non-cash (beznal) benchmark fixings. The rate is recorded at the same time each business day, making it suitable as a reference in contracts.
| Parameter | Description |
|---|---|
currencies |
Comma-separated currencies: usd, eur, rub. The default is all available currencies. |
date |
Date for which data is required, for example 13.07.2026 or 2026-07-13. The default is today. |
https://kurs.com.ua/api/fixing?key=YOUR_API_KEY¤cies=usd&format=json
{
"date": "Mon, 13 Jul 2026 00:00:00 +0300",
"currencies": [
{
"id": "1",
"symbol": "USD",
"updated": "Mon, 13 Jul 2026 12:00:00 +0300",
"rates": {
"nal": 44.50, "nal_change": 0.02,
"nal_bid": 44.45, "nal_bid_change": 0.02,
"nal_ask": 44.55, "nal_ask_change": 0.02,
"beznal": 44.40, "beznal_change": 0.01,
"beznal_bid": 44.35, "beznal_bid_change": 0.01,
"beznal_ask": 44.45, "beznal_ask_change": 0.01
}
}
]
}