Перейти к содержанию

Visa Token Service

Visa Token Service, технология Visa, разработанная для повышения безопасности платежей и защиты информации о карте. Она подменяет чувствительные данные на уникальный токен.

Торговцы, поставщики платежных услуг и банки-эквайеры могут больше не хранить карточные данные покупателей, а использовать для приема платежа глобальный токен от Visa. Номера карт покупателей будут храниться только в Visa и банке-эмитенте. Такая мера значительно снижает риск перехвата карточных данных злоумышленниками и компрометации карточных данных в целом.

При токенизации карты в Visa Token Service, покупатель получит SMS-уведомление при условии, что опция SMS-оповещения была активирована для его карты.

Пример данных c TAVV криптограммой, полученных от Visa Token Service
{
"vPaymentDataID": "54df012448e3a441b3f714bd56d8eb02",
"paymentInstrument": {
    "last4": "0044",
    "paymentType": {
    "cardBrand": "VISA"
    },
    "paymentAccountReference": "V0010013020315513942420893974"
},
"tokenInfo": {
    "encTokenInfo": "eyJhbGciOiJBMjU2RNN0S1ciLCJpdiI6ImpqU2tyZVhhVmNwckJiX2kiLCJ0YWciOiJoMVAyZUhyQ18zWWZieHRRMlNQakF3IiwiZW5jIjoiQTI1NkdDTSIsInR5cCI6IkpPU0UiLCJraWQiOiI3UE80T1hQVEhJS1czQjNJMUdTTzEzMWU5MGVZcC1sUExtZXRmSXBPbVltVndfTDVJIiwiY2hhbm5lbFNlY3VyaXR5Q29udGV4dCI6IlNIQVJFRF9TRUNSRVQiLCJpYXQiOiIxNjMwMDY2NDQ2In0.FY-AA_658fhzqk5w6jolQcPM_9JUfZa2V-nd3coZl7Q.zwrsFTOjYFMzCq81.iIgOnxfCY55n2eG6wpo6j9UPYoXJLa3H4Z92ug.FNG_yuGFnz_WiD3JhLSWSQ",
    "last4": "0887",
    "expirationDate": {
    "month": "12",
    "year": "2025"
    }
},
"cryptogramInfo": {
    "cryptogram": "AgAAABB6qqnJd0oAmbuXgu8AAAA=",
    "eci": "07",
    "atc": "31402"
}
}
Пример данных c CTAVV криптограммой, полученных от Visa Token Service
{
"vPaymentDataID": "54df012448e3a441b3f714bd56d8eb02",
"paymentInstrument": {
    "last4": "0044",
    "paymentType": {
    "cardBrand": "VISA"
    },
    "paymentAccountReference": "V0010013020315513942420893974"
},
"tokenInfo": {
    "encTokenInfo": "eyJhbGciOiJBMjU2RNN0S1ciLCJpdiI6ImpqU2tyZVhhVmNwckJiX2kiLCJ0YWciOiJoMVAyZUhyQ18zWWZieHRRMlNQakF3IiwiZW5jIjoiQTI1NkdDTSIsInR5cCI6IkpPU0UiLCJraWQiOiI3UE80T1hQVEhJS1czQjNJMUdTTzEzMWU5MGVZcC1sUExtZXRmSXBPbVltVndfTDVJIiwiY2hhbm5lbFNlY3VyaXR5Q29udGV4dCI6IlNIQVJFRF9TRUNSRVQiLCJpYXQiOiIxNjMwMDY2NDQ2In0.FY-AA_658fhzqk5w6jolQcPM_9JUfZa2V-nd3coZl7Q.zwrsFTOjYFMzCq81.iIgOnxfCY55n2eG6wpo6j9UPYoXJLa3H4Z92ug.FNG_yuGFnz_WiD3JhLSWSQ",
    "last4": "0887",
    "expirationDate": {
    "month": "12",
    "year": "2025"
    }
},
"cryptogramInfo": {
    "ctavvCryptogram": "AgAAAAHHHZ/09IEAmbuXgh4AAAA=",
    "eci": "05",
    "cryptogramExpirationDate": "2077-09-27T17:06:09.000Z"
}
}

Оплата с данными, полученными от Visa Token Service

Запрос

Система bePaid позволяет использовать данные, полученные от Visa Token Service, для проведения транзакций типа оплата и авторизация.

Для того, чтобы совершить платеж и получить результат операции, выполните следующие шаги:

  1. Расшифруйте значение encTokenInfo и добавьте его в JSON как значение ключа token параметра decTokenInfo объекта tokenInfo.

  2. Отправьте полученный результат как значение параметра request.credit_card.token в формате $begateway_vts_decrypted_1_0_0$<base64_Visa Token Service Data_here>, где <base64_Visa Token Service Data_here> - это JSON, полученный на шаге 1, в Base64-strict формате.

Пример JSON с расшифрованным токеном
{
"vPaymentDataID": "54df012448e3a411b3f714bd56d8eb02",
"paymentInstrument": {
    "last4": "0044",
    "paymentType": {
    "cardBrand": "VISA"
    },
    "paymentAccountReference": "V0010013020315513942420883974"
},
"tokenInfo": {
    "encTokenInfo": "eyJhbGciOiJBMjU2R0NNS1ciLCJpdiI6ImpqU2tyZVhhVmNwckJiX2kiLCJ0YWciOiJoMVAyZUhyQ18zWWZieHRRMlNQakF3IiwiZW5jIjoiQTI1NkdDTSIsInR5cCI6IkpPU0UiLCJraWQiOiI3UE80T1hQVEhJS1czQjNJMUdTTzEzMWU5MGVZcC1sUExtZXRmSXBPbVltVndfTDVJIiwiY2hhbm5lbFNlY3VyaXR5Q29udGV4dCI6IlNIQVJFRF9TRUNSRVQiLCJpYXQiOiIxNjMwMDY2NDQ2In0.FY-AA_658fhzqk5w6jolQcPM_9JUfZa2V-nd3coZl7Q.zwrsFTOjYFMzCq81.iIgOnxfCY55n2eG6wpo6j9UPYoXJLa3H4Z92ug.FNG_yuGFnz_WiD3JhLSWSQ",
    "last4": "0887",
    "expirationDate": {
    "month": "12",
    "year": "2025"
    },
    "decTokenInfo": {
    "token": "4417329760000887"
    }
},
"cryptogramInfo": {
    "cryptogram": "AgAAAAB6qqnJd0oAmbuXgu8AAAA=",
    "eci": "07",
    "atc": "31402"
}
}
Пример запроса
{
"request":{
    "amount":100,
    "currency":"USD",
    "description":"VTS test transaction",
    "tracking_id":"your_uniq_number",
    "credit_card":{
    "token": "$begateway_vts_decrypted_1_0_0$fn5anNvbgp7CiAgInZQYXltZW50RGF0YUlEIjogIjU0ZGYwMTI0NDhlM2E0MTFiM2Y3MTRiZDU2ZDhlYjAyIiwKICAiY3J5cHRvZ3JhbUluZm8iOiB7CiAgICAiY3J5cHRvZ3JhbSI6ICJbRklMVEVSRURdIiwKICAgICJlY2kiOiAiMDciLAogICAgImF0YyI6ICIzMTQwMiIKICB9LAogICJwYXltZW50SW5zdHJ1bWVudCI6IHsKICAgICJsYXN0NCI6ICIwMDQ0IiwKICAgICJwYXltZW50VHlwZSI6IHsKICAgICAgImNhcmRCcmFuZCI6ICJWSVNBIgogICAgfSwKICAgICJwYXltZW50QWNjb3VudFJlZmVyZW5jZSI6ICJWMDAxMDAxMzAyMDMxNTUxMzk0MjQyMDg4Mzk3NCIKICB9LAogICJ0b2tlbkluZm8iOiB7CiAgICAiZW5jVG9rZW5JbmZvIjogImV5SmhiR2NpT2lKQk1qVTJSME5OUzFjaUxDSnBkaUk2SW1wcVUydHlaVmhoVm1Od2NrSmlYMmtpTENKMFlXY2lPaUpvTVZBeVpVaHlRMTh6V1daaWVIUlJNbE5RYWtGM0lpd2laVzVqSWpvaVFUSTFOa2REVFNJc0luUjVjQ0k2SWtwUFUwVWlMQ0pyYVdRaU9pSTNVRTgwVDFoUVZFaEpTMWN6UWpOSk1VZFRUekV6TVdVNU1HVlpjQzFzVUV4dFpYUm1TWEJQYlZsdFZuZGZURFZKSWl3aVkyaGhibTVsYkZObFkzVnlhWFI1UTI5dWRHVjRkQ0k2SWxOSVFWSkZSRjlUUlVOU1JWUWlMQ0pwWVhRaU9pSXhOak13TURZMk5EUTJJbjAuRlktQUFfNjU4Zmh6cWs1dzZqb2xRY1BNXzlKVWZaYTJWLW5kM2NvWmw3US56d3JzRlRPallGTXpDcTgxLmlJZ09ueGZDWTU1bjJlRzZ3cG82ajlVUFlvWEpMYTNINFo5MnVnLkZOR195dUdGbnpfV2lEM0poTFNXU1EiLAogICAgImxhc3Q0IjogIjA4ODciLAogICAgImV4cGlyYXRpb25EYXRlIjogewogICAgICAibW9udGgiOiAiMTIiLAogICAgICAieWVhciI6ICIyMDIyIgogICAgfSwKICAgICJkZWNUb2tlbkluZm8iOiB7CiAgICAgICJ0b2tlbiI6ICI0eHh4eDA4ODciCiAgICB9CiAgfQp9Cn5+fg=="
    }
}
}

Ответ

Ответ на запрос оплаты с данными Visa Token Service будет возвращен синхронно с его статусом и будет полностью соответствовать ответам операций оплаты или авторизации.

Список возможных ошибок

Ошибка Описание
{"response"=>{"message"=>"Not allowed"}} Для магазина не разрешено проводить транзакции с использованием данных от Visa Token Service. Обратитесь к аккаунт менеджеру.
{"response"=>{"message"=>"Invalid token"}} Ошибка парсинга переданного значения токена. Проверьте параметры и значения в запросе.