Apple Pay платежи с расшифрованным токеном
Система Demo PSP может обрабатывать запросы оплаты или авторизации с уже расшифрованными данными paymentData
из платежного токена, выдаваемого Apple.
Info
Для хранения и расшифровки данных платежного токена необходимо соответствовать требованиям Payment Card Industry Data Security Standard (PCI DSS).
Платеж с расшифрованным токеном
Запрос
Для проведения платежей этим способом отправьте запрос оплаты, авторизации или взимания платы, в котором передайте расшифрованный токен Apple Pay как значение параметра request.credit_card.token
в формате, описанном ниже.
Формат расшифрованного токена Apple Pay при передаче его в качестве токена карты
Передавайте расшифрованный токен Apple Pay в запросах в качестве токена карты в формате $begateway_apple_pay_decrypted_1_0_0$<base64-decoded_paymentData_here>
, где:
$begateway_apple_pay_decrypted_1_0_0$
- обязательный префикс при передаче расшифрованного токена Apple Pay;<base64-decoded_paymentData_here>
- это расшифрованный объектpaymentData
токенаPaymentToken
, преобразованный в формат JSON, а затем конвертированный в формат Base64-strict.
Для рекуррентных платежей или платежей по сохраненной карте, передайте параметр request.additional_data.contract
в запросе оплаты, авторизации или взимания платы, чтобы получить в ответ токен карты, выдаваемый Demo PSP, для последующих операций оплаты без участия пользователя.
Ожидаемый формат JSON расшифрованного объекта paymentData"
{
"applicationPrimaryAccountNumber": "4200000000000000",
"applicationExpirationDate": "230131",
"currencyCode": "643",
"transactionAmount": 10000,
"cardholderName": "JohnDoe", // optional
"deviceManufacturerIdentifier": "050110300273",
"paymentDataType": "3DSecure",
"paymentData": {
"onlinePaymentCryptogram": "AP6MRIToJV3AAbEcMTKNAoABFA==",
"eciIndicator": "07" // optional
}
}
Пример запроса оплаты с расшифрованным токеном Apple Pay
{
"request":{
"amount":10000,
"currency":"RUB",
"description":"Apple Pay test transaction",
"tracking_id":"your_uniq_number",
"credit_card":{
"token": "$begateway_apple_pay_decrypted_1_0_0$eyJhcHBsaWNhdGlvblByaW1hcnlBY2NvdW50TnVtYmVyIjoiNDIwMDAwMDAwMDAwMDAwMCIsImFwcGxpY2F0aW9uRXhwaXJhdGlbvkRhdGUiOiIyMzAxMzEiLCJjdXJyZW5jeUNvZGUiOiI2NDMiLCJ0cmFuc2FjdGlvbkFtb3VudCI6MTAwMDAsImRldmljZU1hbnVmYWN0dXJlcklkZW50aWZpZXIiOiIwNTAxMTAwMzAyNzMiLCJwYXltZW05RGF0YVR5cGUiOiIzRFNlY3VyZSIsInBheW1lbnREYXRhIjp7Im9ubGluZVBheW1lbnRDcnlwdG9ncmFtIjoiQVA2TVJJVG9KVjNiQUFFY01US05Bb0FCRkE9PSJ9fQ=="
}
}
}
Ответ
Ответ на запрос оплаты с расшифрованными данными paymentData
будет возвращен вместе с конечным статусом операции и полностью соответствует ответу по операциям оплаты или авторизации.