Відкрите API

Безкоштовний API для генерації QR IBAN платежів для розробників.

Інтеграція з Opencart 3/4

Модуль для інтегрування QR IBAN

Github

Форма POST запиту

Вбудуйте кнопку оплати на свій сайт: відправте POST‑запит на наш API з реквізитами.

Потрібні поля

code
8 або 10 цифр (ЄДРПОУ або РНОКПП)
iban
формат UA + 27 цифр
amount
сума у гривнях (рядок з двома знаками після коми)
purpose
призначення платежу (рядок)
x-client-key
KUI8gwVJb3OQN1LuTKEsBx8feSYOJK2m
x-client-name
public

HTML приклад

<form action="https://iban.opendatabot.ua/api/invoice" method="post">
  <input name="code" type="text" value="2882618253" hidden />
  <input name="iban" type="text" value="UA063052990000026008050293936" hidden />
  <input name="amount" type="text" value="128.00" hidden />
  <input name="purpose" type="text" value="Тестова оплата" hidden />
  <input name="x-client-key" type="text" value="KUI8gwVJb3OQN1LuTKEsBx8feSYOJK2m" hidden />
  <input name="x-client-name" type="text" value="public" hidden />
  <input name="redirect" type="text" value="true" hidden />
  <button class="btn btn-primary">₴ Сплатити за IBAN</button>
</form>

cURL приклад

curl -X POST \
  https://iban.opendatabot.ua/api/invoice \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'code=2882618253' \
  --data-urlencode 'iban=UA063052990000026008050293936' \
  --data-urlencode 'amount=128.00' \
  --data-urlencode 'purpose=Тестова оплата' \
  --data-urlencode 'x-client-key=KUI8gwVJb3OQN1LuTKEsBx8feSYOJK2m' \
  --data-urlencode 'x-client-name=public'

JSON приклад

Endpoint: https://iban.opendatabot.ua/api/invoice
Method: POST
Content-Type: application/json

Body:

{
  "code": "2882618253",
  "iban": "UA063052990000026008050293936",
  "amount": "128.00",
  "purpose": "Тестова оплата",
  "x-client-key": "KUI8gwVJb3OQN1LuTKEsBx8feSYOJK2m",
  "x-client-name": "public"
}

Відповідь

Якщо redirect=true — користувач буде перенаправлений на сторінку рахунку (/invoice/:id). Інакше API поверне JSON з даними рахунку.

{
  "id": "690b796522fd059a2ee9846b",
  "url": "https://bank.gov.ua/qr/QkNECjAwMgoyClVDVAoK1M7PINXu8PHl4iDA7eTws-kgz-Di6-7i6PcKVUEwNjMwNTI5OTAwMDAwMjYwMDgwNTAyOTM5MzYKVUFIOTkKMjg4MjYxODI1MwoKCtLl8fLu4uAg7u_r4PLgCgo",
  "qrcode": "data:image/png;base64,....",
  "code": "2882618253",
  "iban": "UA063052990000026008050293936",
  "amount": 128,
  "purpose": "Тестова оплата"
}

QR-код зображення

Якщо підставити id з сформованого рахунку, можно отримати пряме посилання на зображення QR-кода:

https://iban.opendatabot.ua/invoice/:id/qrcode.png
QR код
Для сплати скануйте QR-код

Часті запитання

Усе, що потрібно знати про оплату за IBAN від НБУ.

За кожен згенерований рахунок стягується лише 0.42 ₴. Для тестування можна використовувати публічний ключ без реєстрації.

Скопіюйте HTML форму з прикладу вище та додайте на свій сайт. Також можна використовувати cURL або JSON запити до /api/invoice. API повертає QR-код або посилання, які можна розмістити в email, документах або на сайті.

Обов'язкові поля: code (ЄДРПОУ або РНОКПП), iban (формат UA + 27 цифр), amount (сума з двома знаками після коми), purpose (призначення платежу). Для ідентифікації додайте x-client-key та x-client-name.

API повертає JSON з полями: id рахунку, url для оплати через банк, qrcode у форматі data URI, а також дані рахунку. Якщо передати redirect=true — користувач буде перенаправлений на сторінку рахунку.

Після створення рахунку використовуйте пряме посилання /invoice/:id/qrcode.png. Зображення можна вставити в email, PDF або на сайт як звичайний <img> тег.