5. Ініціювання платіжної операції у форматі JSON

Редакція OpenBanking Ukraine

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

Ендпойнт

POST /v2/payments/{payment-product}

Створює запит на ініціювання платіжної операції в ASPSP.

Path Parameters

АтрибутТипОпис
payment-productStringЗапитуваний платіжний продукт: - instant-credit-transfers — миттєвий кредитовий переказ; - credit-transfers — кредитовий переказ. Яке значення продукту TPP має передати — визначається згідно параметру, обраного PSU, який вказує це миттєвий кредитовий переказ, чи ні.

Query Parameters

Немає.

Request Header

АтрибутТипУмоваОпис
Content-TypeStringMandatoryapplication/json
X-Request-IDUUIDMandatoryІдентифікатор запиту, унікальний для виклику, визначений стороною-ініціатором (TPP).
AuthorizationStringConditionalАтрибут заповнюється, якщо обрано OAuth2 як попередній крок для автентифікації PSU.
PSU-IP-AddressStringMandatoryПоле заголовка IP-адреси, що пересилається, складається з відповідного поля IP-адреси запиту HTTP між PSU і TPP. Якщо воно недоступне, TPP повинен використовувати IP-адресу, яку використовує TPP під час подання цього запиту.
ClientRejectionNoFundsPreferredBooleanOptionalЯкщо значення дорівнює true, то TPP віддає перевагу відхиленню ASPSP ініційованої платіжної операції в разі, якщо недостатньо коштів на рахунку. Якщо значення дорівнює false, то TPP віддає перевагу, щоб ASPSP прийняв до виконання платіжну операцію так само, як у своєму засобі дистанційної комунікації з PSU, можливо, очікуючи певний період часу для надходження коштів для виконання платіжної операції. Цей параметр може бути проігнорований ASPSP.
PSU-IDStringConditionalІдентифікатор PSU-фізичної особи в клієнтському інтерфейсі ASPSP. Якщо використовується Decoupled SCA — цей атрибут передається обов’язково.
PSU-ID-TypeStringConditionalТип PSU-ID фізичної особи, можливі значення визначені у розділі 8.2 Протоколу функцій та заходів безпеки.
PSU-Corporate-IDStringConditionalІдентифікатор PSU-ФОП в клієнтському інтерфейсі ASPSP. Якщо використовується Decoupled SCA — цей атрибут передається обов’язково.
PSU-Corporate-ID-TypeStringConditionalТип PSU-ID ФОП, можливі значення визначені у розділі 8.2 Протоколу функцій та заходів безпеки.

Request Body

Код параметруТип данихОбов’язковістьОпис
instructedAmount--mandatoryСума коштів, що підлягає переказу між платником та отримувачем.
currencystring (pattern: [A-Z]{3})mandatoryКод валюти відповідно до Класифікатора іноземних валют НБУ (ISO 4217 Alpha 3 currency code). На момент написання цієї специфікації можливе значення тільки UAH (через існуючі обмеження по переказах).
amountstringmandatoryСума, наведена як число з дробовою частиною. Десятковий роздільник — крапка. До крапки можливо не більше 14 значущих цифр. Приклад:
1056
5768.2
5877.78
creditorAccount--mandatoryОднозначна ідентифікація рахунку отримувача, на який будуть зараховані кошти.
ibanstring UA[0-9]{27,27}-iban
currencystring (pattern: [A-Z]{3})-Код валюти відповідно до Класифікатора іноземних валют НБУ (ISO 4217 Alpha 3 currency code). На момент написання цієї специфікації можливе значення тільки UAH (через існуючі обмеження по переказах).
creditor--mandatoryОтримувач
namestring (maxLength: 140)-Найменування юридичної особи/ФОП/прізвище, ім’я, по батькові (за наявності) фізичної особи — отримувача коштів.
creditorIdstring-Цей атрибут доданий до оригінальної специфікації Berlin Group і відсутній в yaml файлі. Значення цього атрибуту заповнюється в залежності від обраного creditorIdType відповідно до “Загальні правила реалізації стандарту ISO 20022, спільні для всіх інструментів Частина 2. Ідентифікація”.
creditorIdTypeENUM-Цей атрибут доданий до оригінальної специфікації Berlin Group і відсутній в yaml файлі. Тип ідентифікатора отримувача. Можливі значення даного атрибуту та умови щодо заповнення наведені у “Загальні правила реалізації стандарту ISO 20022, спільні для всіх інструментів Частина 2. Ідентифікація”:
- RNRCT
- PSPT
- OT
- UNK
- USRC
- TRAN
- NA
remittanceInformationUnstructuredarray Max420TextmandatoryПризначення платежу.
debtorAccount--optionalОднозначна ідентифікація рахунку платника. Якщо не переданий — то має бути обраний PSU у платіжному застосунку ASPSP.
ibanstring UA[0-9]{27,27}-iban
currencystring (pattern: [A-Z]{3})-Код валюти відповідно до Класифікатора іноземних валют НБУ (ISO 4217 Alpha 3 currency code). На момент написання цієї специфікації можливе значення тільки UAH (через існуючі обмеження по переказах).

Response Code

HTTP response code дорівнює 201.

Response Header

АтрибутТипУмоваОпис
LocationStringMandatoryРозташування створеного ресурсу (якщо створено).
X-Request-IDUUIDMandatoryІдентифікатор запиту, унікальний для виклику, визначений стороною-ініціатором.

Response Body

АтрибутТипУмоваОпис
transactionStatusTransaction StatusMandatoryСтатус платіжної операції, можливі значення: RCVD, ACTC, PDNG, ACSC, ACCC, RJCT.
paymentIdMax70TextMandatoryІдентифікатор ресурсу створеної платіжної операції.
transactionFeeAmountOptionalМоже використовуватися ASPSP для передачі загальної комісії по платіжній операції.
currencyConversion FeeAmountOptionalНа даний момент не буде використовуватись в Україні. Може використовуватися ASPSP для передачі конкретних комісій за конвертацію валюти, пов’язаних з ініційованим кредитним переказом.
estimatedTotal AmountAmountOptionalСума, яка буде списана з рахунку платника. Примітка: ця сума включає комісії.
estimated Interbank Settlement AmountAmountOptionalСума, що буде перерахована отримувачу.
transactionFeesIndicatorBooleanOptionalЯкщо дорівнює true, операція включатиме комісію ASPSP. Якщо дорівнює false, операція не включатиме додаткових комісій для PSU, якщо сума комісії не вказана конкретно в елементах даних transactionFees та/або currencyConversionFee. Якщо цей елемент даних не використовується, інформація про комісії за операцію відсутня, якщо сума комісії не вказана явно в елементі даних transactionFees та/або currencyConversionFees.
_linksLinksMandatoryГіперлінк для початку авторизації ресурсу платіжної операції:
- startAuthorisation — посилання може бути використане, як перший крок для визначення наступних дій.
- startAuthorisationWithPsuIdentification — посилання для початку процесу авторизації з PSU-ID.
Примітка: Усі посилання можуть бути відносними або повними, на розсуд ASPSP.
psuMessageMax500TextOptionalТекст, який відображатиметься PSU, наприклад, при підході Decoupled SCA. Надсилати для Decoupled SCA обов’язково. За замовчуванням текст повідомлення передається українською мовою.
apiClientMessagesArray of Client Message InformationOptionalПовідомлення для API client щодо операційних питань.

Приклади

У вихідному матеріалі приклади наведені у вигляді зображень (скріншотів) для сценаріїв Redirect SCA та Decoupled SCA без текстового JSON-вмісту, тому на цій сторінці приклади у форматі JSON не відтворені.