Monobank open API for providers (v2303)

API для отримання інформації про стан рахунків клієнтів та виписок по ним, а також загальної інформації про банк для розробників інших сервісів.

API дозволяє ідентифікувати користувача банку та надати токен для отримання інформація по окремому клієнту. Для отримання доступу необхідно створити заявку на авторизацію. Цей процес необхідний для забезпечення безпеки клієнтських даних.

Тільки після надання компанії доступів до API клієнт матиме змогу авторизуватися за допомогою свого токена monobank у сервісі цієї компанії.

Якщо у вас є запитання щодо роботи API, запрошуємо до ком'юніті у Telegram-каналі API недоступне для клієнтів до 16 років, дані за дитячими рахунами доступні з батьківського акаунту.

Публічні дані

Загальна інформація, що надається без авторизації.

Отримання курсів валют

Отримати базовий перелік курсів валют monobank. Інформація кешується та оновлюється не частіше 1 разу на 5 хвилин.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Авторизація та налаштування компанії

Доступ до клієнтських персональних даних надається тільки авторизованим банком компаніям. Для отримання доступу необхідно створити заявку на авторизацію, а також надати інформацію про сервіс.

Створення заявки

Створення заявки на авторизацію компанії банком

header Parameters
X-Time
required
string
Example: 1554466347

Поточний час у секундах (UTC)

X-Sign
required
string
Example: K3cBBrlCJkei0/7zlP0L60zsNZgUFeC36r8ERmGvU/sxXspcy9G5B/Qq79AvzEakRKlNk1WcvkOgBcWf3DOyDQ==

Sign (X-Time | URL)

Request Body schema: application/json
pubkey
required
string

Файл PEM із відкритим ключем secp256k1 у форматі base64

name
required
string

Назва компанії

description
required
string

Опис послуг компанії та мета використання апі

contactPerson
required
string

Контактна особа

phone
required
string

Телефон контактної особи

email
required
string

Email контактної особи

logo
required
string

Файл із зображенням логотипу компанії у форматі base64

Responses

Request samples

Content type
application/json
{
  • "pubkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZZd0VBWUhLb1pJemow...",
  • "name": "ТОВ \"Ворона\"",
  • "description": "Ми робимо найрозумніший PFM з усіх можливих і нам потрібен доступ до виписка користувача, щоб створювати красиву статистику",
  • "contactPerson": "Роман Шевченко",
  • "phone": "380671234567",
  • "email": "etс@example.com",
  • "logo": "iVBORw0KGgoAAAANSUhEUgAAAUAAAACECAYAAADhnvK8AAAapElEQVR42..."
}

Response samples

Content type
application/json
{
  • "status": "New"
}

Статус заявки

Отримання статусу заявки на авторизацію компанії банком

header Parameters
X-Time
required
string
Example: 1554466347

Поточний час у секундах (UTC)

X-Sign
required
string
Example: K3cBBrlCJkei0/7zlP0L60zsNZgUFeC36r8ERmGvU/sxXspcy9G5B/Qq79AvzEakRKlNk1WcvkOgBcWf3DOyDQ==

Sign (X-Time | URL)

Request Body schema: application/json
pubkey
required
string

Файл PEM із відкритим ключом secp256k1 у форматі base64

Responses

Request samples

Content type
application/json
{
  • "pubkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZZd0VBWUhLb1pJemow..."
}

Response samples

Content type
application/json
{
  • "status": "Approved",
  • "keyId": "string"
}

Встановлення вебхуку

Встановлення вебхуку для отримання оновлень щодо платежів клієнтів

header Parameters
X-Key-Id
required
string
Example: 28a75537175a018645e6f8b14be7681791e701e0

ID ключа сервісу

X-Request-Id
required
string
Example: uLkwh3NzFAfEkj7urj5C7AU_

Request id

X-Time
required
string
Example: 1554466347

Поточний час у секундах (UTC)

X-Sign
required
string
Example: K3cBBrlCJkei0/7zlP0L60zsNZgUFeC36r8ERmGvU/sxXspcy9G5B/Qq79AvzEakRKlNk1WcvkOgBcWf3DOyDQ==

Sign (X-Time | URL)

Request Body schema: application/json
webHookUrl
string

Адреса для CallBack (POST) – на цю адресу буде надіслано дані по транзакціям. Під час виклику апі буде виконано тестовий POST-запит за цією адресою. Якщо на нього не буде відповіді 200 ОК, виклик апі завершиться помилкою.

Responses

Request samples

Content type
application/json

Response samples

Content type
application/json
{ }

Інформація про компанію

Дані компанії

header Parameters
X-Key-Id
required
string
Example: 28a75537175a018645e6f8b14be7681791e701e0

ID ключа сервісу

X-Request-Id
required
string
Example: uLkwh3NzFAfEkj7urj5C7AU_

Request id

X-Time
required
string
Example: 1554466347

Поточний час у секундах (UTC)

X-Sign
required
string
Example: K3cBBrlCJkei0/7zlP0L60zsNZgUFeC36r8ERmGvU/sxXspcy9G5B/Qq79AvzEakRKlNk1WcvkOgBcWf3DOyDQ==

Sign (X-Time | URL)

Responses

Response samples

Content type
application/json
{}

Клієнтські персональні дані

Інформація, що надається тільки за згодою клієнта та тільки авторизованим банком компаніям.

Ініціалізія доступу

Створення запиту на доступ к клієнтським данним

header Parameters
X-Key-Id
required
string
Example: 28a75537175a018645e6f8b14be7681791e701e0

ID ключа сервісу

X-Time
required
string
Example: 1554466347

Поточний час у секундах (UTC)

X-Sign
required
string
Example: K3cBBrlCJkei0/7zlP0L60zsNZgUFeC36r8ERmGvU/sxXspcy9G5B/Qq79AvzEakRKlNk1WcvkOgBcWf3DOyDQ==

Sign (X-Time | URL)

X-Callback
string
Example: https://example.com/some_random_data_for_security

URL колбека, який буде запрошено сервісом, коли клієнт підтвердить надання доступу (GET запит з хедером X-Request-Id)

Responses

Response samples

Content type
application/json
{}

Перевірка доступу

Перевірка статусу запиту на доступ к клієнтським данним

header Parameters
X-Key-Id
required
string
Example: 28a75537175a018645e6f8b14be7681791e701e0

ID ключа сервісу

X-Time
required
string
Example: 1554466347

Поточний час у секундах (UTC)

X-Request-Id
required
string
Example: uLkwh3NzFAfEkj7urj5C7AU_

Request id

X-Sign
required
string
Example: K3cBBrlCJkei0/7zlP0L60zsNZgUFeC36r8ERmGvU/sxXspcy9G5B/Qq79AvzEakRKlNk1WcvkOgBcWf3DOyDQ==

Sign (X-Time | X-Request-Id | URL)

Responses

Response samples

Content type
application/json
{ }

Інформація про клієнта

Отримання інформації про клієнта та переліку його рахунків

header Parameters
X-Key-Id
required
string
Example: 28a75537175a018645e6f8b14be7681791e701e0

ID ключа сервісу

X-Time
required
string
Example: 1554466347

Поточний час у секундах (UTC)

X-Request-Id
required
string
Example: uLkwh3NzFAfEkj7urj5C7AU_

Request id

X-Sign
required
string
Example: K3cBBrlCJkei0/7zlP0L60zsNZgUFeC36r8ERmGvU/sxXspcy9G5B/Qq79AvzEakRKlNk1WcvkOgBcWf3DOyDQ==

Sign (X-Time | X-Request-Id | URL)

Responses

Response samples

Content type
application/json
{
  • "clientId": "3MSaMMtczs",
  • "name": "Мазепа Іван",
  • "permissions": "psf",
  • "accounts": [
    ]
}

Виписка

Отримання виписки за час від {from} до {to} часу в секундах в форматі Unix time. Максимальний час, за який можливо отримати виписку — 31 доба + 1 година (2682000 секунд).

Обмеження на використання функції — не частіше ніж 1 раз на 60 секунд.

Повертає 500 транзакцій з кінця, тобто від часу to до from. Якщо кількість транзакцій = 500, потрібно зробити ще один запит, зменшивши час to до часу останнього платежу, з відповіді. Якщо знову кількість транзакцій = 500, то виконуєте запити до того часу, поки кількість транзакцій не буде < 500. Відповідно, якщо кількість транзакцій < 500, то вже отримано всі платежі за вказаний період.

path Parameters
account
required
string
Example: 0

Account id (client card id), 0 - default UAH

from
required
string
Example: 1546304461

Statement start time

to
string
Example: 1546306461

Statement end time (if not exist, will be using current time)

header Parameters
X-Key-Id
required
string
Example: 28a75537175a018645e6f8b14be7681791e701e0

ID ключа сервісу

X-Time
required
string
Example: 1554466347

Поточний час у секундах (UTC)

X-Request-Id
required
string
Example: uLkwh3NzFAfEkj7urj5C7AU_

Request id

X-Sign
required
string
Example: K3cBBrlCJkei0/7zlP0L60zsNZgUFeC36r8ERmGvU/sxXspcy9G5B/Qq79AvzEakRKlNk1WcvkOgBcWf3DOyDQ==

Sign (X-Time | X-Request-Id | URL)

Responses

Response samples

Content type
application/json
[
  • {
    }
]