Операции ProcessPARes или Purchase
При выполнении административных операций ProcessPARes или Purchase заполнить параметры, полученные из сообщения GooglePay, следующим образом:
PAN – Токен полученный от GooglePay,
ExpDate – преобразованный из формата YYMMDD в формат YYMM
CVV2 = -1
Для МПС Мастеркард:
ECI = 82
Для МПС Visa:
ECI = 87
Так же при использовании токена GooglePay необходимо использование поля CAVV, но преобразованного нестандартным способом.
GooglePay возвращает значение cavv, но значения xid не возвращает.
Необходимо сгенерировать значение xid: 20 символов преобразованных в Base64.
Пример формирования xid:
Code Block | ||
---|---|---|
| ||
$xid = base64_encode((time()-3600)."0000000000"); |
Для МПС MasterCard механизм формирования поля CAVV не меняется, но для МПС Виза необходимо конвертировать значения xid и cavv в формат hexadecimal.
При использовании примера вычисления CAVV из Приложения 4, то, при операции GooglePay, необходимо использовать другой механизм преобразования CAVV:
Code Block | ||
---|---|---|
| ||
function gatCAVV($pan, $xid, $cavv) { $result = ""; if (substr($pan,0,1)== '4') { // VISA $result = convertCavvToVisa($xid) . convertCavvToVisa($cavv); } |
меняется на
Code Block | ||
---|---|---|
| ||
function gatCAVV($pan, $xid, $cavv) { $result = ""; if (substr($pan,0,1)== '4') { // VISA $result = strtoupper(bin2hex(base64_decode($xid))) .strtoupper(bin2hex(base64_decode($cavv))); } |
Другие параметры запросов необходимо заполнять как обычно, согласно описанных в данном документе требований.
Пример XML-запроса административной операции Purchase для транзакции GooglePay:
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <TKKPG> <Request> <Operation>Purchase</Operation> <Order> <Merchant>TEST_TRADER_SP</Merchant> <OrderID>828</OrderID> </Order> <SessionID>ECDE79578768ECFBF2897A0F44CC0CEF</SessionID> <Amount>1000</Amount> <Currency>980</Currency> <PAN>444444******4444</PAN> <ExpDate>2001</ExpDate> <CVV2>-1</CVV2> <CAVV> 3135343838343236313930303030303030303001E0A986F50006B88F16717710D99F3000010000 </CAVV> <eci>82</eci> </Request> </TKKPG> |
При использовании технологии 3DSecure и Токена GooglePay одновременно - необходимо передать значение TAVV и CAVV (после проверки 3DS).
В этом случае значение CAVV (после проверки 3DS) необходимо передавать в поле CAVV преобразованное стандартным способом, а поле TAVV необходимо передавать в поле
AddParams->TokenCryptogram преобразованное согласно правил описанных выше.
Связанные страницы:
Filter by label (Content by label) | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|