API перевірки IBAN: коректність рахунку і банк отримувача
Шлюз перевіряє український IBAN за стандартом ISO 13616: довжину 29 знаків, контрольне число mod-97 і код банку, а потім знаходить банк отримувача у довіднику НБУ за МФО.
Де застосовують: Перевірка реквізитів перед платежем, валідація поля IBAN у формі, імпорт рахунків контрагентів.
Запит
GEThttps://dani.initask.com/v1/iban/{iban}
| Параметр | Де | Опис |
|---|---|---|
iban обовʼязковий | шлях | IBAN, пробіли допускаються (у адресі їх кодують як %20). |
Приклади
curl
curl -H "Authorization: Bearer $INITASK_KEY" "https://dani.initask.com/v1/iban/UA213223130000026007233566001"
JavaScript
const r = await fetch("https://dani.initask.com/v1/iban/UA213223130000026007233566001", {
headers: { Authorization: `Bearer ${process.env.INITASK_KEY}` },
});
const { ok, data, error } = await r.json();
console.log(r.headers.get("X-RateLimit-Remaining"), data);
Python
import os, requests
r = requests.get(
"https://dani.initask.com/v1/iban/UA213223130000026007233566001",
headers={"Authorization": f"Bearer {os.environ['INITASK_KEY']}"},
timeout=10,
)
body = r.json()
print(r.headers["X-RateLimit-Remaining"], body["data"])
Змінна INITASK_KEY містить ваш ключ. Без ключа запит теж пройде в межах 100 запитів на добу.
Відповідь
Справжня відповідь на запит /v1/iban/UA213223130000026007233566001.
{
"ok": true,
"data": {
"valid": true,
"iban": "UA213223130000026007233566001",
"pretty": "UA21 3223 1300 0002 6007 2335 6600 1",
"mfo": "322313",
"account": "26007233566001",
"errors": [],
"bank": {
"name": "АТ \"Укрексімбанк\"",
"full": "акціонерне товариство \"Державний експортно-імпортний банк України\"",
"mfo": "322313",
"edrpou": "00032112",
"status": "Нормальний",
"url": "https://kurs.initask.com/bank/322313"
}
},
"meta": {
"source": "kurs.initask.com",
"cached": false
}
}
valid | true, якщо IBAN коректний |
|---|---|
iban | IBAN без пробілів |
pretty | IBAN групами по 4 знаки |
mfo | код банку МФО |
account | номер рахунку в банку |
errors | перелік помилок українською |
bank | банк з довідника НБУ або null |
Помилки
| HTTP | error | Коли |
|---|---|---|
| 400 | bad_request | рядок довший за 34 знаки або містить сторонні символи |
| 429 | rate_limited | ліміт вичерпано, дивіться Retry-After |
| 502, 504 | upstream_* | джерело даних недоступне, ліміт не витрачається |
Джерело і свіжість
Дані: Довідник банків НБУ, kurs.initask.com. Шлюз тримає відповідь у кеші 24 год, поле meta.cached показує, звідки вона.
Питання і відповіді
Що повертає API для IBAN з помилкою?
Відповідь 200 з valid: false і переліком errors: так форма показує людині конкретну причину.
Чи перевіряє API, що рахунок відкритий?
Перевірка математична: вона ловить помилку в одній цифрі і майже всі перестановки сусідніх цифр. Стан рахунку знає лише банк.
Звідки назва банку?
З довідника банків НБУ за кодом МФО, який стоїть у IBAN з 5 по 10 знак.
Повʼязані ендпоінти
Отримати ключ API
Ключ прийде листом з каси Initask. Безкоштовний ключ дає 100 запитів на добу, платний тариф додається до того самого ключа.