Верифікація на платіжній строрінці

Запит Verify використовується для виклику сторінки wayforpay і проведення верифікації карти клієнта.

 

Параметри запиту

Запит c необхідними параметрами формується на стороні продавця та передається методом POST по протоколу HTTP на URL https://secure.wayforpay.com/verify

З метою підтвердження валідності даних повинно бути згенеровано і передано в запиті HMAC_MD5 контрольний підпис з використанням SecretKey торговця.

Рядок, що підлягає HMAC_MD5, генерується шляхом конкатенації парамаетров merchantAccount, merchantDomainName, orderReference, amount, currency розділених ";" (крапка з комою) в кодуванні UTF-8

 

Параметр

Опис

Обов'язкове

merchantAccount

Ідентифікатор продавця. Присвоюється Вам з боку WayForPay

так

merchantAuthType

Тип авторизації. Може приймати одне з наступних значень:

- simpleSignature (за замовчуванням)

ні

merchantDomainName

Доменне ім'я веб-сайту торговця

так

merchantSignature

Підпис запиту

так

apiVersion

Версія протокола.Значення за замовчуванням: 1

так

returnUrl

URL, на який система повинна перенаправляти клієнта з результатом платежу. 

* У разі відсутності параметра переадресація відбувається на сторінку результату оплати checkout psp

так

serviceUrl

URL, на який система повинна відправляти відповідь з результатом платежу безпосередньо Мерчанту

ні

orderReference

Унікальний номер замовлення в системі торговця

так

amount

Сума verify

0 - для генерації вільної суми на стороні wayforpay, в межах 1-5грн.

так

currency

Валюта verify: UAH

так

clientEmail

Email клієнта

ні

clientPhone

Номер телефону клієнта

ні

clientCountry

Країна клієнта

ні

clientAddress

Адреса клієнта

ні

clientCity

Місто клієнта

ні

clientState

Штат / Область клієнта

ні

clientZipCode

Поштовий індекс клієнта

ні

 

Параметри відповіді

Параметр

Опис

Приклад

merchantAccount

Ідентифікатор продавця

test_merchant

orderReference

Унікальний номер замовлення в системі торговця

1212dd1

merchantSignature

hash_hmac

 

amount

Сума замовлення

100

currency

Валюта замовлення

UAH

email

email платника

email@mail.com

phone

Номер телефону платника

+38063-333-33-33

createdDate

Дата створення запиту в psp (UTC)

123456789

processingDate

Дата процесування транзакції (UTC)

12345678

cardPan

Маскований номер карти (44****4444)

42****4242

cardType

Тип картки: Visa/MasterCard

Visa

issuerBankCountry

Країна карти

Ukraine

issuerBankName

Ім'я Банку карти

PrivatBank

recToken

Токен карти для рекаррінгових списань

121213321-3213213-3213213-321-3

transactionStatus

статус транзакції

Approved

reason

Причина відмови

Ok

reasonCode

код відмови

1100

fee

Комісія psp

0.00

paymentSystem

Платіжна система, через котру було створено платіж.

card

Аутентифікація запитів

З метою підтвердження валідності даних повинно бути згенеровано і передано в запиті HMAC_MD5 контрольний підпис з використанням SecretKey торговця.

Рядок, що підлягає HMAC_MD5, генерується шляхом конкатенації параметрів merchantAccount, orderReference, amount, currency розділених ";" (крапка з комою) в кодуванні UTF-8

 

Приклад HTTP POST запиту:

 

{
"merchantAccount": "test_merch_n1",
"merchantDomainName": "merchant.com.ua",
"merchantAuthType": "SimpleSignature",
"merchantSignature": "9a9b6f197eea8319ee87c4b7079c4c28",
"orderReference": "VRF-PP-1445852171",
"amount": "0",
"currency": "UAH",
"clientEmail": "some@mail.com",
"clientPhone": "+38(066)0000000",
"returnUrl": "http://local.com/service",
"serviceUrl": "http://local.com/service",
"language": "RU"
}

 

Повідомлення мерчанта про статус транзакції

Для авторизованих і перевірених замовлень (а також при зміні статусу замовлення) серевер WayForPay направляє на serviceUrl запит (HTTP_POST) включає в себе дані замовлення.
Дана інформація доповнюється контрольним підписом HMAC_MD5.
У разі, якщо WayForPay НЕ отримає коректну відповідь від сервера торговця, то система буде направляти запити на протязі 4-х діб або до отримання правильної відповіді.

 

Приклад запиту на serviceUrl
{
"merchantAccount":"test_merchan_n1",
"orderReference":"DH783023",
"merchantSignature":"",
"amount":3.36,
"currency":"UAH",
"authCode":"541963",
"email":"client@mail.ua",
"phone":"380501234567",
"createdDate":12345678,
"processingDate":12345678,
"cardPan":"41****8217",
"cardType":"visa",
"issuerBankCountry":"980",
"issuerBankName":"Privatbank",
"recToken":"",
"transactionStatus":"WaitingAmountConfirm",
"reason":5105,
"reasonCode":"",
"fee":0,
"paymentSystem":"card"
}

 

Система WayForPay очікує отримати від сервера торговця таку відповідь:

З метою підтвердження валідності даних повинно бути згенеровано і передано в запиті HMAC_MD5 контрольний підпис з використанням SecretKey торговця.

Рядок, що підлягає HMAC_MD5, генерується шляхом конкатенації параметрів orderReference, status, time розділених ";" (крапка з комою) в кодуванні UTF-8

Приклад коректної відповіді від мерчанту
{
"orderReference":"DH783023",
"status":"accept",
"time":1415379863,
"signature":""
}