Ukrcard
  1. Платіжні операції з використанням токенів
Ukrcard
  • Вступ
  • Початок роботи
  • Рецепти
  • Загальні концепції
  • Особистий кабінет торговця
  • Довідка
    • Потоки обробки транзакцій
    • Коди відповідей
    • Тестові дані
  • Наші методи
    • E-Commerce еквайринг
      • /Payment
      • /Preauthorization
      • /CancelPreauthorization
      • /Completion
      • /ConfirmExt
      • /Reverse
      • /Refund
      • /Verify
    • Грошові перекази
      • /р2рTransfer
      • /Confirm
      • /ConfirmExt
      • /Reverse
      • /Refund
      • /Verify
    • Платежі з цифрового гаманця
    • Картки та рахунки (UAPI)
      • 3. PUT changeCardLimit-baseparam/limits/
    • Перекази SEPA
    • Платіжні операції з використанням токенів
      • /Payment
        POST
      • /Preauthorization
        POST
      • /p2pTransfer
        POST
      • /Confirm
        POST
      • /ConfirmExt
        POST
      • /Panbytoken
        POST
    • Apple Pay
      • /PaymentAppleD
      • /PaymentAppleE
    • Google Pay
      • /PaymentGoogleD
      • /PaymentGoogleE
  1. Платіжні операції з використанням токенів

/p2pTransfer

Developing
Cloud Mock
https://mock.apidog.com/m1/483896-0-default
Cloud Mock
https://mock.apidog.com/m1/483896-0-default
POST
/p2pTransfer
Maintainer:Not configured
Ініціація виконання операції «переказ» зовнішньою системою, що використовує власний веб-інтерфейс з можливістю замовлення та отримання токену при успішній платіжній операції або виконання платіжної операції «переказ» по отриманому/им токену/ам.

Request

Header Params
ExtSystemid
string 
required
Ідентифікатор зовнішньої системи (ЗС), яка сформувала запит. Ідентифікатор погоджується з УКРКАРТ під час реєстрації ЗС
Example:
ECOM_GOLD_BANK
login
string 
required
Логін ЗС у системі, отриманий від УКРКАРТ при підключенні
Example:
SECURE_LOGIN
password
string 
required
Пароль ЗС у системі, отриманий від УКРКАРТ при підключенні
Example:
SECURE_PASSWORD
orderNumber
string 
required
Номер (ідентифікатор) операції у зовнішній системі. Значення має бути унікальним для кожної системи в її межах.
Example:
1234
orderId
string 
optional
Унікальний ідентифікатор операції в системі. Призначається системою при обробці платіжного запиту.
Example:
dbafea6c-3394-4f6a-a0d2-21d3d8e93e42
RegDate
string 
required
Дата/час запиту у форматі yyyy-MM-dd HH:mm:ss
Example:
2023-09-12 12:16:00
x-uws-clientdn
string 
required
Зазначене значення має дорівнювати значенню, указаному в полі Common Name (CN) для сертифіката SSL клієнта
Example:
GOLDENBANK
Content-Type
string 
optional
application/json;charset=UTF-8
Example:
application/json
charset
string 
optional
UTF-8
Example:
UTF-8
accept
string 
required
application/json
Example:
application/json
Body Params application/json
orderData
object 
required
Реєстраційні дані транзакції
amount
number 
150000
required
Сума операції в мінімальних одиницях валюти. Можна використовувати операцію перевірки, як-от Debit Verify (відповідність перевірці рахунку Visa та запиту стану рахунку Mastercard) для нульової суми за допомогою автентифікації 3DS. Для цих операцій ви повинні використовувати звичайний метод /Payment з нульовою сумою. Аутентифікація 3DS буде присутня для карт MPS Visa та Mastercard. Для карт NPS Prostir це буде звичайна операція перевірки облікового запису.
<= 10000000000000000000
currency
string 
optional
Код валюти транзакції ISO 4217. Якщо не вказано, вважається рівним коду валюти за умовчанням (980 - UAH)
>= 3 characters<= 3 characters
externalFee
string 
optional
Сумма комісій в мінімальних одиницях валюти. Може бути використано тільки для методу p2pTransfer
<= 9 characters
description
string 
required
Опис платежу
<= 512 characters
sender
object 
optional
Реквізити відправника/платника
pan
string 
optional
Номер картки відправника/платника (карта з якої здійснюється переклад/купівля). Не використовується для A2C
<= 20 characters
expiry
string 
optional
Дата закінчення терміну дії картки відправника/платника (карти з якої провадиться переказ/купівля). Формат дати YYMM. Не використовується для A2C
<= 4 characters
Example:
2412
Match pattern:
YYMM
cvc
string 
optional
CVV2/CVC2 картки відправника/платника. Не використовується для A2C
>= 3 characters<= 3 characters
Example:
123
Match pattern:
^\d+$
senderCardName
string 
optional
Ім'я відправника/платника (передані значення необхідно вказувати окремо 'FirstName [MidName,] LastName', з розділенням ' ' пробілом.). Необхідно виключити використання як роздільників всередині значень, що передаються в поточному тегу/параметрі, символи: кома ‘,’ та двокрапка ‘:’. Не використовується для A2C.
<= 28 characters
senderAddress
string 
optional
Адреса відправника. Необхідно виключити використання як роздільників всередині значень, що передаються в поточному тегу/параметрі, символи: кома ',' і двокрапка ':'. Не використовується для A2C, Payment
<= 35 characters
senderCity
string 
optional
Місто відправника. Необхідно виключити використання як роздільників всередині значень, що передаються в поточному тегу/параметрі, символи: кома ',' і двокрапка ':'. Не використовується для A2C, Payment.
<= 25 characters
Example:
Kyiv
senderCountry
string 
optional
Країна відправника. Не використовується для A2C, Payment.
>= 3 characters<= 3 characters
Example:
804
senderPostalCode
string 
optional
Поштовий код відправника. Не використовується для A2C, Payment.
<= 8 characters
Example:
M79019
sendercardalias
string 
optional
Поле заповнюється значенням назви користувача карти, має сенс заповнення значенням при створенні токена.
Match pattern:
200
sendertoken
string 
optional
При замовленні отримання нового платіжного jwt-токена поле заповнюється значенням 'publish'.
При вимозі виконання платіжної операції з використанням платіжного токену тег заповнюється значенням платіжного jwt-токена.
<= 1000 characters
receiver
object 
optional
Дані одержувача
receiverPAN
string 
optional
Номер картки отримувача. Обов'язковий для заповнення під час виконання кредитової частини переказу transfer та a2c. Не використовується для C2A, Payment.
<= 20 characters
receiverName
string 
optional
Ім'я одержувача. Значення, що передаються, необхідно вказувати окремо 'FirstName [MidName,] LastName' з розділенням ' ' пробілом. Необхідно виключити використання як роздільників всередині значень, що передаються в поточному тегу/параметрі, символи: кома ',' і двокрапка ':'.
<= 35 characters
receivertoken
string 
optional
При виконанні платіжної операції p2pTransfer transfer, a2c за платіжним токеном заповнюється значенням платіжного jwt-токена.
<= 1000 characters
pageData
object 
required
Дані сторінки зовнішньої системи
language
string 
required
Мова поточної сесії сторінки
>= 2 characters<= 2 characters
Example:
uk
returnUrl
string 
required
Адреса, на яку треба перенаправити користувача за успішної оплати. Адреса повинна бути вказана повністю, включаючи протокол, що використовується (наприклад, "https://test.ua" замість test.ua). В іншому випадку, користувач буде перенаправлений за адресою за умовчанням
<= 512 characters
failUrl
string 
required
Адреса, на яку потрібно перенаправити користувача у разі неуспішної оплати. Адреса повинна бути вказана повністю, включаючи протокол, що використовується (наприклад, https://test.ua замість test.ua). В іншому випадку користувач буде перенаправлений за замовчуванням
<= 512 characters
param
object 
optional
Додаткові параметри операції. Використовується, якщо ЗС необхідно передавати специфічні параметри в ПЦ
paramName
string 
optional
Example:
paramValue
browserParams
object 
required
Властивості браузера користувача
javascriptEnabled
string 
required
Параметр, який вказує, чи активовано підтримку Javascript для браузера власника картки
Example:
true
userAgent
string 
required
Рядок агента браузера користувача
Example:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.3
colorDepth
string 
required
Глибина кольору екрана пристрою користувача
<= 3 characters
Example:
24
screenHeight
string 
required
Висота екрану пристрою власника картки
screenWidth
string 
required
Ширина екрану пристрою власника картки
javaEnabled
boolean 
required
Параметр, який вказує, чи активовано підтримку Java для браузера власника картки
Default:
true
browserLanguage
string 
required
Мова браузера користувача
Example:
uk-UA
browserTimeZone
string 
required
Часовий пояс браузера користувача
Example:
Europe/Kiev
browserAcceptHeader
string 
required
Параметр, що інформує сервер, на який браузер відправляє запит, ті формати файлів (MIME-типи) які прийнятні для браузера як відповідь
Example:
*/*
browserIpAddress
string 
required
IP-адреса браузера власника картки
>= 3 characters<= 5 characters
Example:
192.139.102.100
browserTimeZoneOffset
string 
required
Зсув часового поясу браузера користувача
>= 3 characters<= 5 characters
Example:
-120
fingerprint
string 
optional
Інформація, що збирається з браузера пристрою для подальшої ідентифікації
os
string 
optional
Операционная система, используемая устройством держателя карти
osversion
string 
optional
Версія операційної системи, яка використовується на пристрої держателя карти
mobile
string 
optional
Параметр, який визначає пристрій власника карти мобільного
screenPrint
string 
optional
Інформація про роздільну здатність екрана пристрою власника картки
plugins
string 
optional
Список модулів, що підключаються, встановлених у браузері пристрою власника картки.
deviceType
string 
optional
Тип пристрою, на якому запущено браузер (мобільний телефон, комп'ютер, планшет тощо).
device
string 
optional
Інформація про пристрій утримувача картки (модель, версія тощо).
paramsp2p
object 
optional
Id терміналу
payerName
string 
optional
payerAddress
string 
optional
payerCity
string 
optional
payerCountry
string 
optional
payerPostalCode
string 
optional
payerState
string 
optional
payerDateOfBirth
string 
optional
payerPhone
string 
optional
payerIdType
string 
optional
payerIdNumber
string 
optional
payerIdExpiration
string 
optional
payerIdCountry
string 
optional
recipientAddress
string 
optional
recipientCity
string 
optional
recipientCountry
string 
optional
recipientPostalCode
string 
optional
recipientState
string 
optional
recipientDateOfBirth
string 
optional
recipientPhone
string 
optional
recipientIdType
string 
optional
recipientIdNumber
string 
optional
recipientIdExpiration
string 
optional
recipientIdCountry
string 
optional
payerAccountNumber
string 
optional
businessApplicationIdentifier
string 
optional
fundingOrPaymentTransactionTypeIndicator
string 
optional
fundingSource
string 
optional
recipientName
string 
optional
recipientAccountNumber
string 
optional
recipientAccountType
string 
optional
payerAccountType
string 
optional
Example
{
  "orderData": {
    "amount": 100,
    "currency": 980,
    "description": "Auth description"
  },
  "sender": {
    "pan": "5248723336511397",
    "expiry": "2606",
    "cvc": "576",
    "senderCardName": "sender name",
    "sendercardalias": "My card for ZP",
    "sendertoken": "publish"
  },
  "receiver": {
    "receiverPAN": "5248723339655340"
  },
  "param": {
    "paramName": "tran_type",
    "paramValue": "transfer"
  },
  "pageData": {
    "language": "uk",
    "returnUrl": "https://secure-stg.secure3d.net/m3uc/action/8e43c4b5-5b1d-4d25-906f-a2f5b03fb49c/complete_3ds",
    "failUrl": "https://secure-stg.secure3d.net/m3uc/action/8e43c4b5-5b1d-4d25-906f-a2f5b03fb49c/complete_3ds"
  },
  "browserParams": {
    "browserTimeZone": "Europe/Kiev",
    "browserTimeZoneOffset": "-120",
    "browserLanguage": "uk-UA",
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36",
    "browserAcceptHeader": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
    "browserIpAddress": "8.8.8.8",
    "screenWidth": "1920",
    "screenHeight": "1080",
    "javaEnabled": "false",
    "colorDepth": "24"
  },
  "paramsp2p": {
    "payerName": "sender name"
  }
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://mock.apidog.com/m1/483896-0-default/p2pTransfer' \
--header 'ExtSystemid: ECOM_GOLD_BANK' \
--header 'login: SECURE_LOGIN' \
--header 'password: SECURE_PASSWORD' \
--header 'orderNumber: 1234' \
--header 'orderId: dbafea6c-3394-4f6a-a0d2-21d3d8e93e42' \
--header 'RegDate: 2023-09-12 12:16:00	' \
--header 'x-uws-clientdn: GOLDENBANK' \
--header 'charset: UTF-8' \
--header 'accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
  "orderData": {
    "amount": 100,
    "currency": 980,
    "description": "Auth description"
  },
  "sender": {
    "pan": "5248723336511397",
    "expiry": "2606",
    "cvc": "576",
    "senderCardName": "sender name",
    "sendercardalias": "My card for ZP",
    "sendertoken": "publish"
     },
  "receiver": {
    "receiverPAN": "5248723339655340"
  },
  "param": {
    "paramName": "tran_type",
    "paramValue": "transfer"
  },
  "pageData": {
    "language": "uk",
    "returnUrl": "https://secure-stg.secure3d.net/m3uc/action/8e43c4b5-5b1d-4d25-906f-a2f5b03fb49c/complete_3ds",
    "failUrl": "https://secure-stg.secure3d.net/m3uc/action/8e43c4b5-5b1d-4d25-906f-a2f5b03fb49c/complete_3ds"
  },
  "browserParams": {
    "browserTimeZone": "Europe/Kiev",
    "browserTimeZoneOffset": "-120",
    "browserLanguage": "uk-UA",
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36",
    "browserAcceptHeader": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
    "browserIpAddress": "8.8.8.8",
    "screenWidth": "1920",
    "screenHeight": "1080",
    "javaEnabled": "false",
    "colorDepth": "24"
  },
  "paramsp2p": {
    "payerName": "sender name"
  }
}'

Responses

🟢200Success
application/json
Body
orderParam
object 
required
Реєстраційні дані операції
orderStatus
integer 
required
Стан операції
orderId
string 
required
Унікальний ідентифікатор операції у системі. Автоматично надається системою при обробці запиту на реєстрацію замовлення
orderVerifyFlag
integer 
required
Ознака способу автентифікації операції
0 - 3Ds автентифікація;
1 - Аутентифікація через otp пароль тільки для НПС «ПРОСТІР»
null або параметр відсутній - відсутня 3D аутентифікація
orderAuthParam
object 
required
Авторизаційні параметри
fee
object  | null 
optional
Дані про комісію. Може бути відсутнім,
feeAmount
string 
optional
Сумма комісії.
Example:
"feeAmount": "7880"
feeCurrency
string 
optional
Валюта комісії.
Example:
"feeCurrency": "980"
auth3DData
object 
required
Дані, необхідні для виконання процедури 3-D Secure аутентифікації емітентом.
Може бути відсутнім, якщо orderVerifyFlag = 1
acsurl
string 
required
Адреса ACS емітента, на який необхідно виконати переадресацію браузера клієнта для проходження процедури 3-D Secure аутентифікації.
paReq
null 
required
PaReq - повідомлення, згенероване EPG. Дане повідомлення має бути надіслано ACS url для проходження процедури 3-D Secure аутентифікації емітентом.
creq
string 
required
Challenge Request message (cReq).
Повідомлення EMV 3-D Secure, що надсилається 3DS SDK або сервером 3DS, в якому від власника картки в ACS надсилається додаткова інформація для підтримки процесу аутентифікації. Він повинен бути присутнім для 3-D Secure 2, якщо потрібна перевірка власника картки.
tokenifo
object 
required
Інформація по операції за участю токена
tokenid
integer 
required
Внутрішній ідентифікатор
JWT платіжного токену
tokenexpiry
string 
required
ISO-8601 timestamp (yyyy-mm-ddThh:mm:ss). Строк дії JWTтокену. Приклад: 2099-12-31T00:00:00.
Match pattern:
yyyy-mm-ddThh:mm:ss
token
string 
optional
JWT платіжний токен
<= 800 characters
Examples
{
  "orderParam": {
    "orderStatus": 2,
    "orderId": "28730d8f-7d8f-42fc-876d-98ec89215703",
    "orderAuthParam": {
      "approvalCode": "156032",
      "authCode": 2
    }
  },
  "fee": {
    "feeAmount": "220",
    "feeCurrency": "980"
  },
  "auth3DData": {
    "acsurl": null,
    "paReq": null,
    "creq": null
  },
  "tokeninfo": {
    "tokenid": "294685",
    "tokenexpiry": "2024-10-19T16:07:06",
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnQiOiJwYW5DbGllbnQiLCJpZCI6IjY3MGUzMGJhNzMyYjc0YmVmMmZkNjM3OCIsInBhbl9tYXNrIjoiNTEyNzQzKioqKioqMjg5MCIsImV4cGRhdGUiOiIyOTA3IiwiY29uZl9kYXRhIjoiMWViMDUwYjJhNDE5OTI2YTRjZDk1MzdjM2M4NTczODc1ODE2YTgwYmY3ZjIzMWU2OTQ1OWEzNDliZjI2MTU4YzBlMDM4ODVhMjE5YzYyNWViNThiYzVkNmMyZjIxOTFkYTkzMWJlMDE5NmNlMTIzY2IzOWU5ODgzYzZhYTFiNjgxZDhhZWZkY2I4YTk2YzRiNDA5MzI1Y2JlYTFjNzYyNDUzNDgzZTViZDJmOTdiMjk1YjViY2ZmMDUxZGQxODM3OTRmNWYwNDdmYWEyZDU4MmJiOGViMWU2ZTNlNTk2ZjVjYjQ5MzMwZDJkN2E0NGJhMTQ0MDdmODYyYjJhYjZkOSIsInN1YiI6IjI5NDY4NSNNeSBjYXJkIGZvciBaUCM1MTI3IyMjIyMjMjg5MCMiLCJleHAiOjE3MjkzNDMyMjZ9.GhQVizQxLRy-0rB-CN5ePOtTF8-6zN6rqDoKgpDnskI"
  }
}
Previous
/Preauthorization
Next
/Confirm
Built with