Skip to main content

Decrypt an Apple Pay bundle

The following is an example of an Apple Pay bundle decryption request. This request is the same whether your bundle or payload contains a standard Apple Pay token, an Apple Pay merchant token (MPAN ), or a multiple token (Multi-token). However, the decryption response for each type contains different fields as indicated in the example responses.

You can decrypt standard Apple Pay bundle, Apple Pay bundle with MPAN or Multi-token by sending a POST request to the /wallet-decryptions endpoint using the following required fields.

Required fields for Apple Pay
Field name Description
encryptedPayloadText Indicates the merchant provided an unreadable encrypted bundle or payload of the wallet provider.
walletProvider

Identifies the type of wallet used as ApplePay. The valid values are

  • APPLE_PAY
  • GOOGLE_PAY
  • PAZE
walletTransactionId Transaction ID of the wallet provided by Apple Pay.
walletApplicationData A Base64-encoded string provided by Apple Pay.
digitalSignature The digital siginature for the payload provided by Apple Pay.
version Version of the Apple Pay wallet.
keyHash Identifies a hash value based only on primary keys for the dataset.
publicKey The associated cipher key for Apple Pay and Google Pay used to encrypt the payload.

HTTP method: POST
Endpoint: /wallet-decryptions

Json
{
    "walletTransactionId": "27ed51c15512070be3058fb6070c2e63ddd69ca2e75b3187e2af6faf92ba2901",
    "walletApplicationData": "27ed51c15512070be3058fb6070c2e63ddd69ca2e75b3187e2af6faf92ba2901",
    "encryptedPayloadText": "JMgSXGBxr8VWmBFcj9NGuRqiPQ89T0iBeQW0tXMXCx1wXc3+CLU+DnLkrLoJi/OTAgUG5kkHvUYVpyh+oahsWPzQ/+axPjjny5Ug+L9xgUXDjHb6mcdXdwCU/WSdZvwiyQnfboIfScblEKl535kGfQGBbV03qerhLA8ey2Q3kFBVdWfvlfHfvhqrLMxnICSetjWlJvkWUm4dMtz5YXDfMM4ytuib+zvevRSYLK0/NagGsCUWqwg59ERYfiuuLC2SgSicwOAwpfA2gCmp7qz21gJFEesk/EWhHAAN5cPAcq9zOVb7pUXxJKm8+WBvLIDkaA==",
    "walletProvider": "APPLE_PAY",
    "digitalSignature": "MIAGCSqGSIb3DQEHAqCAMIACAQExDTALBglghkgBZQMEAgEwgAYJKoZIhvcNAQcBAACggDCCAWIwggEIoAMCAQICBgFdZTj7ATAKBggqhkjOPQQDAzA4MSEwHwYDVQQDDBhQYXltZW50ZWNoIE1vYmlsZSBTREsgQ0ExEzARBgNVBAoMClBheW1lbnRlY2gwHhcNMTcwNzIxMTI1NjU5WhcNMzQwNzIxMTI1NjU5WjA4MSEwHwYDVQQDDBhQYXltZW50ZWNoIE1vYmlsZSBTREsgQ0ExEzARBgNVBAoMClBheW1lbnRlY2gwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARCrlzB/UN22ZXpHk7iJqI8T7h0J8QOIyCohcBd8Dh+p0GPeGrDpiyy8LNyQ/bb9jNj+6aVJfeta9eWsOPBp69lMAoGCCqGSM49BAMDA0gAMEUCIQCL3CzFvN8IHbx9DIYtWSWvdwleW2OkbuRimP9LzW9ReAIgTuGzzqlu2EfBpSesfNt78fgAE04OYKHGBq4/Larj540AADGCAUMwggE/AgEBMEIwODEhMB8GA1UEAwwYUGF5bWVudGVjaCBNb2JpbGUgU0RLIENBMRMwEQYDVQQKDApQYXltZW50ZWNoAgYBXWU4+wEwCwYJYIZIAWUDBAIBoIGTMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTI0MDEzMDIxMTE1MlowKAYJKoZIhvcNAQk0MRswGTALBglghkgBZQMEAgGhCgYIKoZIzj0EAwIwLwYJKoZIhvcNAQkEMSIEIOARCBNLkIUoLjdKJBfTDCiZZNewonocx3uCS+Y9UHEeMAoGCCqGSM49BAMCBEcwRQIgNxWrQ5+RMen93aq+iNPFdTty9+c0EFAeq8aLl1soGw4CIQCBFlPdDUUZGDkVTUJt1x9pLqJxNUyovsziC3BY7PbFbwAAAAAAAA==",
    "version": "EC_v1",
    "keyHash": "6tFxrnf0isurGIfHeTZQ5Oe0e+tuFwALZJkGxh/Xqqo=",
    "publicKey": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDEHeaYB0xdV830jvSaY7nt7IJb4l8LheJL+SZ1WDgxZ3ZfO4N3CCG8VO0QUSsms6cAPiB7/ZnUC61q7QKa0T/A=="
}

Response:

Json
{
    "requestId": "9b0fab1c-0ced-4110-a96c-610c79906ef6",
    "walletTransactionId": "27ed51c15512070be3058fb6070c2e63ddd69ca2e75b3187e2af6faf92ba2901",
    "messages": {
        "responseStatus": "OK",
        "responseCode": "200"
    },
    "accountHolder": {
        "accountNumber": "4761220000000237",
        "expiry": {
            "monthNumber": "06",
            "yearNumber": "2026"
        },
        "transactionAmount": 100,
        "currencyCode": "840"
    },
    "cryptogramDetail": {
        "tokenAuthenticationValue": "AQAAAAAAR9O++icAAABMgxEAAAA=",
        "deviceManufacturerId": "040010030273",
        "paymentDataType": "3DSecure",
        "electronicCommerceIndicator": "7"
    }
}

Decrypt Apple Pay bundle with MPAN

An Apple Pay Merchant Token (MPAN) is a token issued by Apple Pay when a payment transaction is initiated through the Apple Pay wallet. An Apple Pay Merchant Token (MPAN) links a payment card, business, and customer, allowing card management in the Apple Wallet. Apple Pay recommends merchant tokens over device tokens (DPANs) because they:

  • Work across multiple devices
  • Support recurring payments without relying on a single device
  • Keep payment info active on new devices even if removed from the original one

HTTP methodPOST

Endpoint/wallet-decryptions

Json
{
    "encryptedPayloadText": "0gGxh858yAs3cPp9/1qrQnvx5At1o2xFuEkvZyZETWrrVMaUrxKATkeSEUfaimUnso3O9ffoZO1xvCkh4/Jg7Ihrbl8t3qhSz8LuBCFNh4OPKuqUN0ob/+H8BMXYT6NVhIbkBkGhECG16MsUNZAu4qbD44l82UOxdvwwWkr8yUvCmwED9yn0DMhR8tomLRo1CK/xCuqSekW3w8cV3u7Ug4rY9tey8O6Ch7OoB/xVrtHzMp1OmFsYnmGjfC0vIHuJPQuaJUNc/x8h+eamMzDpGbb+/I9VHOJ+YueMiH/lnrG7p2swKvGHlmeG7OPYtgs4qaGlAi7qI530fMugLf6m0F1m/pOy9KNIYQewG6OWxApsDC9Qm+4tKOw55/htln5kvZ/GEPCl3BKYgTGmhf+Zg1Oy15wRraTGx5wXrvSF+InyzWCKAcelXcokMFpV3gaT9sIyc9B+C5Gkrqmkc1mAlrmrhdKSoOPivJ2sNi5gYyFSGk+OmAszVJMbEA8IW15fLekR+I6DRZFH50pksypdMM17tQMUsoq/UJ5KxWkNTAlR1xMn/bAKKzrNNZv8XoRrj6lCtjDeuy79n/24EuueYJag9cD/8nVB4FpBAHkGoH/t9CAZf7Fma7vtRlWE7Rf+AAYQ6BQTCsUP1tONgZyVxc2re1AYXfN5Y9QdyCdYWMS9uGyFGY6ML2yv3F0XAvrlJfSfYSTf1NTVqfS46gPQpjRAqWGxxs9jONpWEgdukGS2XTBUvfUg/0fwIbcP4j+g/YYJQrn3XzpdvOflpF8gVsdKnF6If/dyJ96pDmfH4LJAIQsYa9ikMfh5SpoSekU6aahleveQ5abflDwW+8hE+TmrZc9inq0XRI4zbmUwMbK1WhGUMj33GCh8Ar2Z27cTKgR3+m04Wto7/IVeIGaGIxHE8hNON+BLnIDpq/eyst+Gerlfyqy7pX2CQ8aEWa8m5oCenjJTG2etA+qjUcVCS7Fyo21UE1jSDrfY6GYLBvKGnKOAUNVgkN36ZJXr8mhk0oDzhmGUZmpSNh0wCdgLyE0mAtjHAzVVUfcPDoOEwOMwWG5lW3gUNUm1hQxXma7CELCpQFqb3OMlhqz4HfsyD242Xu2s4xLUvV5M9H0qbrcBE9RlFyV5lsHB7pAS7EfFVAL8up2McsX+ICLOYccZQkrvzskzmXD51XzcDmuR930jvEhqJa5ADSmbFxLXzTCSZJz/FLmsSaPt6uVlLQ==",
    "walletProvider": "APPLE_PAY",
    "walletTransactionId": "27ed51c15512070be3058fb6070c2e63ddd69ca2e75b3187e2af6faf92ba2901",
    "walletApplicationData": "27ed51c15512070be3058fb6070c2e63ddd69ca2e75b3187e2af6faf92ba2901",
    "digitalSignature": "MIAGCSqGSIb3DQEHAqCAMIACAQExDTALBglghkgBZQMEAgEwCwYJKoZIhvcNAQcBoIAwggFiMIIBCKADAgECAgYBXWU4+wEwCgYIKoZIzj0EAwMwODEhMB8GA1UEAwwYUGF5bWVudGVjaCBNb2JpbGUgU0RLIENBMRMwEQYDVQQKDApQYXltZW50ZWNoMB4XDTE3MDcyMTEyNTY1OVoXDTM0MDcyMTEyNTY1OVowODEhMB8GA1UEAwwYUGF5bWVudGVjaCBNb2JpbGUgU0RLIENBMRMwEQYDVQQKDApQYXltZW50ZWNoMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQq5cwf1DdtmV6R5O4iaiPE+4dCfEDiMgqIXAXfA4fqdBj3hqw6YssvCzckP22/YzY/umlSX3rWvXlrDjwaevZTAKBggqhkjOPQQDAwNIADBFAiEAi9wsxbzfCB28fQyGLVklr3cJXltjpG7kYpj/S81vUXgCIE7hs86pbthHwaUnrHzbe/H4ABNODmChxgauPy2q4+eNAAAxggFDMIIBPwIBATBCMDgxITAfBgNVBAMMGFBheW1lbnRlY2ggTW9iaWxlIFNESyBDQTETMBEGA1UECgwKUGF5bWVudGVjaAIGAV1lOPsBMAsGCWCGSAFlAwQCAaCBkzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0yNDA3MDgyMDEyNDJaMCgGCSqGSIb3DQEJNDEbMBkwCwYJYIZIAWUDBAIBoQoGCCqGSM49BAMCMC8GCSqGSIb3DQEJBDEiBCApyS76wnLoE50m8IN9nTK248Tj2K1je76z+IIKEH9OezAKBggqhkjOPQQDAgRHMEUCICX1jTpwsrHaEmjy4gJl+IRLdrIwcTuqJQN+f/qDpoxkAiEA8SdYhqpQXCWZOWWWPMbVu1PprUyQ4RlDcG9bA4wTggkAAAAAAAA=",
    "version": "EC_v1",
    "keyHash": "xVC/RhZQk4eWVtID9DMSnzoRnBoGF7z3jvm4iWztpis=",
    "publicKey": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmwK0foCYZAwrPM4AzSkhemnkqr8ZWdYQKDGUENGwpP3xJyiiwckTP6cqgkzBHI4nXP1iGaFbh2KNIOBQ2nI0jw=="
}

Response:

Json
{
    "requestId": "96d74c8f-9195-432d-bbbe-5f3337052dbc",
    "walletTransactionId": "27ed51c15512070be3058fb6070c2e63ddd69ca2e75b3187e2af6faf92ba2901",
    "messages": {
        "responseStatus": "OK",
        "responseCode": "200"
    },
    "accountHolder": {
        "accountNumber": "4761220000000237",
        "expiry": {
            "monthNumber": "06",
            "yearNumber": "2026"
        },
        "transactionAmount": 100,
        "walletCardData": {
            "cardArtList": [
                {
                    "name": "Bank Visa",
                    "type": "VISA",
                    "url": "https://bank.com/cardart/visa.png"
                },
                {
                    "name": "Bank Visa",
                    "type": "VISA",
                    "url": "https://bank.com/cardart/visa.png"
                }
            ],
            "cardMetadata": {
                "expirationDate": "090932",
                "accountSuffixNumber": "1276"
            },
            "walletMerchantTokenReferenceId": "2e2a77c7-7f4b-41d9-894a-e857a8e07725"
        }
    },
    "cryptogramDetail": {
        "tokenAuthenticationValue": "AAABAIcJIo7DIzAgVAkiAAAAAAA=",
        "deviceManufacturerId": "040010030273",
        "paymentDataType": "3DSecure",
        "electronicCommerceIndicator": "7"
    }
}

Decrypt Apple Pay bundle with Multi-token

Multiple payment tokens refer to a payment system where distinct tokens are used for various transactions within the same context. For instance, when booking a holiday package, separate tokens are utilized for each transaction, such as airline tickets, hotel accommodations, and car rentals.

HTTP methodPOST
Endpoint: /wallet-decryptions

Json
{
    "encryptedPayloadText": "0gGxh858yAs3cPp9/1qrQnvx5At1o2xFuEkvZyZETWrrVMaUrxKATkeSEUfaimUnso3O9ffoZO1xvCkh4/Jg7Ihrbl8t3qhSz8LuBCFNh4OPKuqUN0ob/+H8BMXYT6NVhIbkBkGhECG16MsUNZAu4qbD44l82UOxdvwwWkr8yUvCmwED9yn0DMhR8tomLRo1CK/xCuqSekW3w8cV3u7Ug4rY9tey8O6Ch7OoB/xVrtHzMp1OmFsYnmGjfC0vIHuJPQuaJUNc/x8h+eamMzDpGbb+/I9VHOJ+YueMiH/lnrG7p2swKvGHlmeG7OPYtgs4qaGlAi7qI530fMugLf6m0F1m/pOy9KNIYQewG6OWxApsDC9Qm+4tKOw55/htln5kvZ/GEPCl3BKYgTGmhf+Zg1Oy15wRraTGx5wXrvSF+InyzWCKAcelXcokMFpV3gaT9sIyc9B+C5Gkrqmkc1mAlrmrhdKSoOPivJ2sNi5gYyFSGk+OmAszVJMbEA8IW15fLekR+I6DRZFH50pksypdMM17tQMUsoq/UJ5KxWkNTAlR1xMn/bAKKzrNNZv8XoRrj6lCtjDeuy79n/24EuueYJag9cD/8nVB4FpBAHkGoH/t9CAZf7Fma7vtRlWE7Rf+AAYQ6BQTCsUP1tONgZyVxc2re1AYXfN5Y9QdyCdYWMS9uGyFGY6ML2yv3F0XAvrlJfSfYSTf1NTVqfS46gPQpjRAqWGxxs9jONpWEgdukGS2XTBUvfUg/0fwIbcP4j+g/YYJQrn3XzpdvOflpF8gVsdKnF6If/dyJ96pDmfH4LJAIQsYa9ikMfh5SpoSekU6aahleveQ5abflDwW+8hE+TmrZc9inq0XRI4zbmUwMbK1WhGUMj33GCh8Ar2Z27cTKgR3+m04Wto7/IVeIGaGIxHE8hNON+BLnIDpq/eyst+Gerlfyqy7pX2CQ8aEWa8m5oCenjJTG2etA+qjUcVCS7Fyo21UE1jSDrfY6GYLBvKGnKOAUNVgkN36ZJXr8mhk0oDzhmGUZmpSNh0wCdgLyE0mAtjHAzVVUfcPDoOEwOMwWG5lW3gUNUm1hQxXma7CELCpQFqb3OMlhqz4HfsyD242Xu2s4xLUvV5M9H0qbrcBE9RlFyV5lsHB7pAS7EfFVAL8up2McsX+ICLOYccZQkrvzskzmXD51XzcDmuR930jvEhqJa5ADSmbFxLXzTCSZJz/FLmsSaPt6uVlLQ==",
    "walletProvider": "APPLE_PAY",
    "walletTransactionId": "27ed51c15512070be3058fb6070c2e63ddd69ca2e75b3187e2af6faf92ba2901",
    "walletApplicationData": "27ed51c15512070be3058fb6070c2e63ddd69ca2e75b3187e2af6faf92ba2901",
    "digitalSignature": "MIAGCSqGSIb3DQEHAqCAMIACAQExDTALBglghkgBZQMEAgEwCwYJKoZIhvcNAQcBoIAwggFiMIIBCKADAgECAgYBXWU4+wEwCgYIKoZIzj0EAwMwODEhMB8GA1UEAwwYUGF5bWVudGVjaCBNb2JpbGUgU0RLIENBMRMwEQYDVQQKDApQYXltZW50ZWNoMB4XDTE3MDcyMTEyNTY1OVoXDTM0MDcyMTEyNTY1OVowODEhMB8GA1UEAwwYUGF5bWVudGVjaCBNb2JpbGUgU0RLIENBMRMwEQYDVQQKDApQYXltZW50ZWNoMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQq5cwf1DdtmV6R5O4iaiPE+4dCfEDiMgqIXAXfA4fqdBj3hqw6YssvCzckP22/YzY/umlSX3rWvXlrDjwaevZTAKBggqhkjOPQQDAwNIADBFAiEAi9wsxbzfCB28fQyGLVklr3cJXltjpG7kYpj/S81vUXgCIE7hs86pbthHwaUnrHzbe/H4ABNODmChxgauPy2q4+eNAAAxggFDMIIBPwIBATBCMDgxITAfBgNVBAMMGFBheW1lbnRlY2ggTW9iaWxlIFNESyBDQTETMBEGA1UECgwKUGF5bWVudGVjaAIGAV1lOPsBMAsGCWCGSAFlAwQCAaCBkzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0yNDA3MDgyMDEyNDJaMCgGCSqGSIb3DQEJNDEbMBkwCwYJYIZIAWUDBAIBoQoGCCqGSM49BAMCMC8GCSqGSIb3DQEJBDEiBCApyS76wnLoE50m8IN9nTK248Tj2K1je76z+IIKEH9OezAKBggqhkjOPQQDAgRHMEUCICX1jTpwsrHaEmjy4gJl+IRLdrIwcTuqJQN+f/qDpoxkAiEA8SdYhqpQXCWZOWWWPMbVu1PprUyQ4RlDcG9bA4wTggkAAAAAAAA=",
    "version": "EC_v1",
    "keyHash": "xVC/RhZQk4eWVtID9DMSnzoRnBoGF7z3jvm4iWztpis=",
    "publicKey": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmwK0foCYZAwrPM4AzSkhemnkqr8ZWdYQKDGUENGwpP3xJyiiwckTP6cqgkzBHI4nXP1iGaFbh2KNIOBQ2nI0jw=="
}

Response:

Json
{
    "requestId": "96d74c8f-9195-432d-bbbe-5f3337052dbc",
    "walletTransactionId": "27ed51c15512070be3058fb6070c2e63ddd69ca2e75b3187e2af6faf92ba2901",
    "messages": {
        "responseStatus": "OK",
        "responseCode": "200"
    },
    "accountHolder": {
        "accountNumber": "4761220000000237",
        "expiry": {
            "monthNumber": "06",
            "yearNumber": "2026"
        },
        "transactionAmount": 100,

    "cryptogramDetail": {
        "tokenAuthenticationValue": "AAABAIcJIo7DIzAgVAkiAAAAAAA=",
        "deviceManufacturerId": "040010030273",
        "paymentDataType": "3DSecure",
        "electronicCommerceIndicator": "7"
    },
    "multiTokenAuthenticationResponses": [
        {
            "externalMerchantId": "32de34ec-77df-4f06-a62c-58541a36ea04",
            "walletServiceProviderCryptogram": "AAABAIcJIo7DIzAgVAkiAAAAAAA=",
            "transactionAmount": 40
        },
        {
            "externalMerchantId": "0442c25b-7be8-437b-b1bc-4da66b1d114a",
            "walletServiceProviderCryptogram": "AAABAIcJIo7DIzAgVAkiAAAAAAA=",
            "transactionAmount": 174
        }
    ]
}