В настоящее время я работаю над интеграцией Apple Pay в нашем магазине с поддержкой Cybersource, но у меня проблемы с аутентификацией платежей с использованием их REST API.
Допустим, у меня есть следующий токен от Apple :
{
"version": "EC_v1",
"data": "GA6LvLUk4hK0ts3N01vG...",
"signature": "MIAGCSqGSIb3DQEHAqC...",
"header": {
"ephemeralPublicKey": "MFkwEwYHKoZIzj0CAQYIKo...",
"publicKeyHash": "saJIzbUmWiHInzN91n5LHf3BOHfywXMnxlZLsEpMv+0=",
"transactionId": "46eb21a120d9eca1a7a24030dc525bf5634b83084453cdb2594333661ef72166"
}
}
И следующий скелет запроса:
{
"clientReferenceInformation": {
"code": "JLEDRLkiXM3a"
},
"processingInformation": {
"capture": false,
"commerceIndicator": "internet",
"paymentSolution": "001"
},
"paymentInformation": {
"card": {
"type": "004"
},
"fluidData": {
"keySerialNumber": "???"
"value": "???",
"descriptor": "???",
"encoding": "Base64"
}
},
"orderInformation": {
"amountDetails": {
"totalAmount": 3900,
"currency": "EUR"
},
"billTo": {
"firstName": "John",
"lastName": "Doe",
"address1": "Test123",
"locality": "Test"
"country": "de",
"email": "t@st.com"
}
}
}
Мои вопросы:
- Какие части токена необходимо отправить в кибер-источник? Все это или только поле «data»?
- Каким свойствам «FluidData» (помеченным как ???) какое значение нужно установить?
У меня уже есть безуспешно пытался выполнить следующее:
- Установить
value
на кодированный токен base64. Это приводит к ошибке, поскольку содержит слишком много символов - Установите
keySerialNumber
в кодированный токен base64. Это приводит к ошибке, так как в запросе отсутствует номер кредитной карты (?) - Я пробовал оба с дескриптором, установленным в "RklEPUNPTU1PTi5BUFBMRS5JTkFQUC5QQVlNRU5U" (который можно найти в некоторых документах Cybersource онлайн, не спрашивайте меня что это значит)
- Установите
value
в свойство data
токена. Это приводит к ошибке, поскольку она не может быть расшифрована. (Оплата Apple включена в моей учетной записи Cybersource, и я использовал их CSR для создания сертификата обработки платежей)
Я понятия не имею, почему это не работает, поэтому любая помощь будет принята с благодарностью !