Acquiring (v2206)

На кожну зміну статусу рахунку бекенд еквайрингу виконає до 3-х спроб POST запиту, поки у відповідь не отримує http-статус 200 OK. З параметром X-Sign у хідерах. Параметр містить підпис тіла запиту вебхуку по стандарту ECDSA. Верифікація проводиться за наступним алгоритмом VerifyASN1(DecodeEcdsaPemPubKey(decodedPubkeyBytes), sha256(requestBody), decodedXSignBytes)

API може працювати в режимі тестового середовища. Для цього потрібно використовувати токен із https://api.monobank.ua/

Для тестування не потрібно мати термінал або дозвіл для тестування эквайрингу, тестове середовище доступне всім клієнтам банку. В тестовому середовищі для оплати можна використовувати будь-які номер, дату та cvv картки, навіть якщо вони не є дійсними. Єдина умова: номер картки повинен бути валідним за алгоритмом Луна. При використанні даних реальної банківської картки, вона буде прийнята, але фінансова авторизація здійснюватись не буде.

Створення рахунку

Створення рахунку для оплати

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Request Body schema: application/json
amount
required
integer <int64>

Сума оплати у мінімальних одиницях (копійки для гривні)

ccy
integer <int32>

ISO 4217 код валюти, за замовчуванням 980 (гривня)

object
redirectUrl
string

Адреса для повернення (GET) - на цю адресу буде переадресовано користувача після завершення оплати (у разі успіху або помилки)

webHookUrl
string

Адреса для CallBack (POST) – на цю адресу буде надіслано дані про стан платежу при кожній зміні статусу. Зміст тіла запиту ідентичний відповіді запиту “перевірки статусу рахунку”.

validity
integer <int64>

Строк дії в секундах, за замовчуванням рахунок перестає бути дійсним через 24 години

paymentType
string
Default: "debit"
Enum: "debit" "hold"

Тип операції

qrId
string

Ідентифікатор QR-каси для встановлення суми оплати на існуючих QR-кас

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Статус рахунку

Метод перевірки статусу рахунку при розсинхронізації з боку продавця або відсутності webHookUrl при створенні рахунку.

query Parameters
invoiceId
required
string
Example: invoiceId=p2_9ZgpZVsl3

Ідентифікатор рахунку

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Responses

Response samples

Content type
application/json
{
  • "invoiceId": "p2_9ZgpZVsl3",
  • "status": "created",
  • "failureReason": "string",
  • "amount": 4200,
  • "ccy": 980,
  • "finalAmount": 4200,
  • "createdDate": "2019-08-24T14:15:22Z",
  • "modifiedDate": "2019-08-24T14:15:22Z",
  • "reference": "84d0070ee4e44667b31371d8f8813947",
  • "cancelList": [
    ]
}

Скасування оплати

Скасування успішної оплати рахунку

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Request Body schema: application/json
invoiceId
required
string

Ідентифікатор рахунку

extRef
string

Референс операції скасування, який визначається продавцем

amount
integer <int64>

Сума у мінімальних одиницях (при частковому поверненні)

Responses

Request samples

Content type
application/json
{
  • "invoiceId": "p2_9ZgpZVsl3",
  • "extRef": "635ace02599849e981b2cd7a65f417fe",
  • "amount": 5000
}

Response samples

Content type
application/json
{
  • "status": "processing",
  • "createdDate": "2019-08-24T14:15:22Z",
  • "modifiedDate": "2019-08-24T14:15:22Z"
}

Інвалідація рахунку

Інвалідація рахунку, якщо за ним ще не було здіснено оплати

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Request Body schema: application/json
invoiceId
required
string

Ідентифікатор рахунку

Responses

Request samples

Content type
application/json
{
  • "invoiceId": "p2_9ZgpZVsl3"
}

Response samples

Content type
application/json
{ }

Розширена інформація про успішну оплату

Дані про успішну оплату, якщо вона була здійснена

query Parameters
invoiceId
required
string
Example: invoiceId=p2_9ZgpZVsl3

Ідентифікатор рахунку

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Responses

Response samples

Content type
application/json
{
  • "maskedPan": "444403******1902",
  • "approvalCode": "662476",
  • "rrn": "060189181768",
  • "amount": 4200,
  • "ccy": 980,
  • "finalAmount": 4200,
  • "createdDate": "2019-08-24T14:15:22Z",
  • "terminal": "MI001088",
  • "paymentScheme": "full",
  • "paymentMethod": "pan",
  • "fee": 420,
  • "domesticCard": true,
  • "country": "804",
  • "cancelList": [
    ]
}

Відкритий ключ для верифікації підписів

Отримання відкритого ключа для перевірки підпису, який включено у вебхуки

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Responses

Response samples

Content type
application/json
{
  • "key": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFK0UxRnBVZzczYmhGdmp2SzlrMlhJeTZtQkU1MQpib2F0RU1qU053Z1l5ZW55blpZQWh3Z3dyTGhNY0FpT25SYzNXWGNyMGRrY2NvVnFXcVBhWVQ5T3hRPT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCg=="
}

Фіналізація суми холду

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Request Body schema: application/json
invoiceId
required
string

Ідентифікатор рахунку

amount
integer <int64>

Сума у мінімальних одиницях

Responses

Request samples

Content type
application/json
{
  • "invoiceId": "p2_9ZgpZVsl3",
  • "amount": 4200
}

Response samples

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

Інформація про QR-касу

Інформація про QR-касу, лише для активованих QR-кас

query Parameters
qrId
required
string
Example: qrId=OBJE

Ідентифікатор QR-каси

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Responses

Response samples

Content type
application/json
{
  • "shortQrId": "OBJE",
  • "invoiceId": "4EwIUTA12JIZ",
  • "amount": 4200,
  • "ccy": 980
}

Видалення суми оплати

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Request Body schema: application/json
qrId
required
string

Ідентифікатор QR-каси

Responses

Request samples

Content type
application/json
{
  • "qrId": "XJ_DiM4rTd5V"
}

Response samples

Content type
application/json
{ }

Список QR-кас

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Responses

Response samples

Content type
application/json
{}

Дані мерчанта

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Responses

Response samples

Content type
application/json
{
  • "merchantId": "12o4Vv7EWy",
  • "merchantName": "Your Favourite Company"
}

Виписка за період

query Parameters
from
required
integer <int64>
Example: from=1649329978

utc unix timestamp

to
integer <int64>
Example: to=1649329978

utc unix timestamp

header Parameters
X-Token
required
string

Токен з особистого кабінету https://fop.monobank.ua/ або тестовий токен з https://api.monobank.ua/

Responses

Response samples

Content type
application/json
{
  • "list": [
    ]
}