API дозволяє проводити поповнення карток фізичних осіб з банківського рахунку ТСП. Поповнення можливе будь-яких карток емітованих українськими банками.
В системі передбачено два варіанти обробки поповнень:
- поповнення за номером картки;
- поповнення з використанням токена
Поповнення за номером картки виконується в одну дію. У запиті ТСП може передати номер карти, або раніше отриманий токен. Якщо передані обидва параметри, виникне помилка обробки запиту.
Регламент зарахування коштів на карту - миттєво, можливі випадки коли кошти надходять протягом доби - це залежить від внутрішнього регламенту зарахування коштів Банку емітента, що випустив дану картку.
Для перевірки валідність карти та її стану, рекомендується використовувати тип запиту Verify.
Параметри запиту
Запит c необхідними параметрами формується на стороні продавця та передається методом POST по протоколу HTTP на URL https://api.wayforpay.com/api
З метою підтвердження валідності даних повинно бути згенеровано і передано в запиті HMAC_MD5 контрольний підпис з використанням SecretKey торговця.
Рядок, що підлягає HMAC_MD5, генерується шляхом конкатенації параметрів merchantAccount, orderReference, amount, currency, cardBeneficiary, rec2Token розділених ";" (крапка з комою) в кодуванні UTF-8
Параметр | Опис | Обов'язкове |
transactionType | Тип запиту, приймає значення P2P_CREDIT | так |
merchantAccount | Унікальний ідентифікатор продавця. | так |
merchantAuthType | Тип авторизації: simpleSignature (за замовчуванням) | ні |
orderReference | Унікальний номер замовлення в системі торговця | так |
amount | Сума переказу | так |
currency | Валюта переказу: UAH | так |
cardBeneficiary | Номер картки одержувача | так |
rec2Token | Токен картки одержувача | так |
merchantSignature | Підпис запиту | так |
apiVersion | Версія протоколу. Значення за замовчуванням: 1 | так |
serviceUrl | URL, на який система повинна відправляти відповідь з результатом поповнення безпосереднь мерчанту | ні |
recipientFirstName | Ім'я одержувача | ні |
recipientLastName | Прізвище одержувача | ні |
recipientPhone | Телефон одержувача | ні |
recipientEmail | E-mail отримувача | ні |
Параметри відповіді
З метою підтвердження валідності даних повинно бути згенеровано і передано в запиті HMAC_MD5 контрольний підпис з використанням SecretKey торговця.
Рядок, що підлягає HMAC_MD5, генерується шляхом конкатенації параметрів merchantAccount, orderReference, amount, currency, authCode, transactionStatus, reasonCode розділених ";" (крапка з комою) в кодуванні UTF-8
Параметр | Опис | Приклад |
merchantAccount | ідентифікатор продавця | test_merchant |
orderReference | Унікальний номер замовлення в системі торговця | 1212dd1 |
merchantSignature | hash_hmac | |
amount | Сума замовлення | 100 |
currency | Валюта замовлення | UAH |
authCode | код авторизації - присвоюється банком | 324567 |
cardPan | маскувати номер карти | 42****4242 |
cardType | тип карти: Visa/MasterCard | Visa |
issuerBankName | Ім'я Банку карти | PrivatBank |
createdDate | дата створення запиту в psp (UTC) | 123456789 |
processingDate | дата процесування транзакці (UTC) | 12345678 |
transactionStatus | статус транзакції | Approved |
reason | Причина відмови | Ok |
reasonCode | код відмови | 1100 |
Приклад запиту і відповіді
{
"transactionType":"P2P_CREDIT",
"merchantAccount":"p2p_credit",
"merchantAuthType":"SimpleSignature",
"merchantSignature":"60c5d743b71f79abe48c7183ada4b451",
"apiVersion":1,
"orderReference":"myOrder1",
"amount":10.13,
"currency":"UAH",
"cardBeneficiary":"4111111111111111"
}
{
"merchantAccount": "p2p_credit",
"orderReference": "myOrder1",
"merchantSignature":"b95932786cbe243a76b014846b63fe92",
"amount": 10.13,
"currency": "UAH",
"authCode": "221562",
"createdDate": 1415379863,
"processingDate": 1415379863,
"transactionStatus": "Approved",
"reason": "ok",
"reasonCode": 1100
}