Проверка карты¶
Мерчант для проверки реквизитов карты, чтобы убедиться, что карта является действующей и доступна для покупок. На этапе проверки средства с карты не списываются. Списание возможно только при выполнении одного из условий:
- клиент соглашается на рекуррентные платежи;
- клиент совершает покупку на полную сумму.
Проверка карты может быть выполнена только при оплате с формы партнёра. Если проверка пройдена успешно, для карты может быть выпущен платёжный токен.
Сервис проверки карт по умолчанию отключен. Чтобы подключить его, обратитесь к вашему курирующему менеджеру.
Сценарий использования¶
-
Отправьте запрос проверки карты. В запросе укажите:
- Уникальный в рамках вашего сайта идентификатор проверки (
requestUid
в URL запроса). - Данные карты (
cardData
в теле запроса). Обязательные параметры — PAN, срок действия и CVV2.
Для генерации платежного токена в запросе должен быть указан параметр
tokenizationData.account
— уникальный идентификатор покупателя в системе мерчанта. - Уникальный в рамках вашего сайта идентификатор проверки (
-
Обработайте ответ сервера:
- информация о доступности карты содержится в атрибуте
isValidCard
(true
— карта доступна); - платёжный токен возвращается в объекте
createdToken
, еслиisValidCard=true
и в запросе был переданtokenizationData.account
- информация о доступности карты содержится в атрибуте
Чтобы убедиться, что номер карты введён её держателем, используется 3D-Secure (3DS). Включение или отключение 3DS производится на стороне банка, выпустившего карту. Если 3DS включен, в ответе на запрос проверки карты возвращаются:
- объект
requirements
с адресом для перенаправления покупателя (ACS URL); - значение
WAITING_3DS
в полеstatus
.
Процесс 3DS при проверке карты аналогичен процессу 3DS при покупке:
- Перенаправьте покупателя на страницу аутентификации.
- Завершите проверку 3DS запросом завершения аутентификации при проверке карты. В запросе укажите тот же идентификатор проверки, что и в исходном запросе проверки карты.
- Если проверка 3DS завершилась успешно, в ответе в атрибуте
isValidCard
содержится информация о доступности карты для списаний (true
— карта доступна). ЕслиisValidCard=true
и запрошен выпуск платежного токена, платежный токен возвращается в объектеcreatedToken
.
После завершения проверки результат будет отправлен в уведомлении с типом CHECK_CARD
. При необходимости текущий статус можно запросить отдельно.
Примеры
PUT /partner/payin/v1/sites/site-01/validation/card/requests/acd7bf20-22e2-4cbf-a218-38d90e9f29b9 HTTP/1.1
Accept: application/json
Authorization: Bearer 5c4b25xx93aa435d9cb8cd17480356f9
Content-type: application/json
Host: b2b-api.qiwi.com
{
"cardData": {
"pan": "1111222233334444",
"expiryDate": "12/34",
"cvv2": "123",
"holderName": "Super Man"
},
"tokenizationData": {
"account": "cat_girl"
}
}
{
"requestUid": "acd7bf20-22e2-4cbf-a218-38d90e9f29b9",
"status": "SUCCESS",
"isValidCard": true,
"threeDsStatus": "WITHOUT",
"checkOperationDate": "2025-03-25T12:55:12+03:00",
"cardInfo": {
"issuingCountry": "643",
"issuingBank": "Gazprombank",
"paymentSystem": "MIR",
"fundingSource": "DEBIT",
"paymentSystemProduct": "details"
},
"createdToken": {
"token": "1a77343a-dd8a-11eb-ba80-0242ac130004",
"name": "111122******4444",
"expiredDate": "2034-12-31T00:00:00+03:00",
"account": "cat_girl"
}
}
{
"requestUid": "acd7bf20-22e2-4cbf-a218-38d90e9f29b9",
"status": "SUCCESS",
"isValidCard": true,
"threeDsStatus": "PASSED",
"checkOperationDate": "2025-03-25T12:55:12+03:00",
"cardInfo": {
"issuingCountry": "643",
"issuingBank": "Gazprombank",
"paymentSystem": "MIR",
"fundingSource": "DEBIT",
"paymentSystemProduct": "details"
},
"createdToken": {
"token": "1a77343a-dd8a-11eb-ba80-0242ac130004",
"name": "111122******4444",
"expiredDate": "2034-12-31T00:00:00+03:00",
"account": "cat_girl"
}
}
Запрос и ответ приведены в качестве примера: актуальные формат, список и описание параметров см. в документации API приёма платежей.