Валюти та курси валют через API
API валют потрібен для інтеграцій, які працюють з мультивалютними документами, платежами, цінами, банківськими рахунками або звітами. Валюти читаються з довідника, а курси валют можна створювати й оновлювати через API.
Курс валюти впливає на документи, платежі, взаєморозрахунки й звіти. Не оновлюйте курси автоматично без узгодженої бізнес-логіки, особливо якщо компанія вже використовує мультивалютний облік у роботі.
Endpoint-и валют
| Метод | Endpoint | Призначення |
|---|---|---|
| GET | /v1/currencies | отримати список валют |
| GET | /v1/currencies/:id | отримати одну валюту |
Створення, оновлення й видалення валют через API V1 не описані.
Поля валюти
| Поле | Що означає |
|---|---|
id | ID валюти. |
code | Код валюти. |
title | Назва валюти. |
short_title | Коротка назва валюти. |
sign | Символ валюти. |
coin | Назва розмінної одиниці. |
created_at | Дата створення. |
updated_at | Дата оновлення. |
Endpoint-и курсів валют
| Метод | Endpoint | Призначення |
|---|---|---|
| GET | /v1/currency_rates | отримати список курсів валют |
| GET | /v1/currency_rates/:id | отримати один курс |
| POST | /v1/currency_rates | створити курс |
| PUT | /v1/currency_rates/:id | оновити курс за ID |
| PUT | /v1/currency_rates/update_by_currency | оновити курс за валютою і датою |
Отримання списку курсів
GET /v1/currency_rates повертає список курсів валют.
Параметри:
| Параметр | Призначення |
|---|---|
currency_id | Фільтр за валютою. |
rate_date | Фільтр за датою курсу. |
Поля курсу валют
| Поле | Що означає |
|---|---|
id | ID курсу валюти. |
currency_id | ID валюти. |
rate | Курс. |
rate_date | Дата курсу. |
currency_code | Код валюти. |
currency_title | Назва валюти. |
created_at | Дата створення. |
updated_at | Дата оновлення. |
Створення курсу
Для створення курсу передається обʼєкт currency_rate.
{
"currency_rate": {
"currency_id": "currency-id",
"rate": 42.5,
"rate_date": "2026-05-17"
}
}
Поля для створення:
| Поле | Призначення |
|---|---|
currency_id | Валюта, для якої встановлюється курс. |
rate | Курс валюти. |
rate_date | Дата курсу. |
Для однієї валюти на одну дату має бути один курс. Якщо курс на цю дату вже існує, створення поверне помилку.
Оновлення курсу за ID
PUT /v1/currency_rates/:id оновлює значення курсу.
{
"currency_rate": {
"rate": 42.8
}
}
Поля для оновлення:
| Поле | Призначення |
|---|---|
rate | Нове значення курсу. |
Оновлення курсу за валютою і датою
PUT /v1/currency_rates/update_by_currency зручно використовувати, коли інтеграція знає валюту й дату, але не зберігає ID конкретного запису курсу.
Потрібно передати currency_id, rate_date і новий rate.
{
"currency_rate": {
"currency_id": "currency-id",
"rate_date": "2026-05-17",
"rate": 42.8
}
}
Поля:
| Поле | Призначення |
|---|---|
currency_id | Валюта, курс якої потрібно оновити. |
rate_date | Дата курсу. |
rate | Нове значення курсу. |
Якщо курс для валюти й дати не знайдено, API поверне помилку.
Як використовувати з документами й платежами
У документах і платежах використовуються:
| Поле | Де використовується |
|---|---|
currency_id | Валюта документа або платежу. |
currency_rate | Курс валюти на момент операції. |
converted_currency_id | Валюта конвертації в платежах. |
converted_amount | Сума після конвертації в платежах. |
Якщо інтеграція створює документи або платежі в іноземній валюті, спочатку отримайте ID валюти, перевірте актуальний курс на дату операції, а вже потім створюйте обліковий документ.
Чеклист
Перед автоматизацією курсів валют перевірте:
- яка валюта є базовою в компанії;
- які валюти реально використовуються в документах, платежах і рахунках;
- хто відповідає за актуальність курсу;
- чи можна інтеграції створювати новий курс на нову дату;
- чи дозволено інтеграції оновлювати вже створений курс;
- як обробляти ситуацію, коли курс на дату вже існує або не знайдений.
Повʼязані матеріали
Підсумок
API валют дає довідник валют, а API курсів дозволяє підтримувати актуальні курси для мультивалютного обліку. Для запису документів і платежів використовуйте реальні currency_id і курс, погоджений із правилами обліку компанії.