# Retrieve Transaction Payload
source: https://developer.mastercard.com/mastercard-checkout-solutions/tutorial/integrate_apis_scof/step7/index.md

## Step 6: Retrieve Transaction Payload {#step-6-retrieve-transaction-payload}

Warning: For cards issued in **India** , Integrators must use the API URL endpoints applicable for **India region**. Please note that use of incorrect URLs will lead to failure of API calls.

1. Call the [Checkout](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/api-reference/apis/index.md#checkout) API using `srcDigitalCardId` for the token associated with the chosen card to retrieve the transaction credentials from Mastercard Checkout Solutions. The response will be a JWS which in turn includes an encrypted object - `encryptedPayload`.

   Note:   
   * Ensure that the value in `srcCorrelationId` in Checkout API request matches the value received from Authentication UI in [Step 5](https://developer.mastercard.com/mastercard-checkout-solutions/tutorial/integrate_apis_scof/step5/index.md) to receive an authenticated payload, else Mastercard will return `eci` = *06 - Merchant Risk* .   

   * Call the Checkout API within **five** minutes of performing the authentication to receive `eci` = *02 - Authenticated* . Else, the proof of authentication will expire and Mastercard will return `eci` = *06 - Merchant Risk* .   

   * If a region has fraud liability protection for transactions authenticated under the TAF, the **digital transaction data** must be collected from the Integrator to qualify for fraud liability protection.

2. If you opted for transaction authentication, preview the authentication results in `assuranceData` object of `checkoutResponseJWSPayload` in the following table:

   | Authentication method used |                                                                                                                                                                                                                                                   Payload with an example of assuranceData                                                                                                                                                                                                                                                    |
   |----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
   | Passkeys                   | * DSRP cryptogram and cloud Token * verificationMethod = `07 - FIDO2 authentication` ```javascript { "assuranceData": { "verificationData": [ { "verificationType":"CARDHOLDER", "verificationEntity": "02", "verificationEvents": [ "01"], "verificationMethod": "07", "verificationResults": "01", "verificationTimestamp": "1709591301345", "verificationEvents": ["01"], "additionalData": "proof of passkeys authentication" } ] "eci": "02", } } ```                                                                                    |
   | 3DS                        | * **threeDSOutputData** contains `dsTransId` and `authenticationValue` * verificationMethod = `01 - 3D Secure (3DS)` ```javascript { "assuranceData": { "verificationData": [ { "verificationType": "CARDHOLDER", "verificationEntity": "03", "verificationMethod": "01", "verificationResults": "01", "verificationTimestamp": "1709591301345", "verificationEvents": [ "01" ] } ], "threeDsOutputData": { "dsTransID": "d701e51c-45e2-45e1-8bdb-e53a4155c38b", "authenticationValue": "sjduwxiclotcscsvvseqdlitaamg" }, "eci": "02" } } ``` |

3. Extract the `encryptedPayload` value from the `checkoutResponseJWSPayload`. This value contains a JWE in compact serializable form. The JWE content is signed or encrypted using the public Payload Encryption key (which is a part of the public/private payload encryption key pair) provided by you at the time of onboarding.

*Example of an encryptedPayload object:*

```Javascript
"eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAtMjU2In0.MIq_v15_eowvwX8MRgrb_H1EevZKB9CZSMMD8-lcbTjQvPFwAyx1USZbZRDB3RGfA_of6aDggnbmQmgsUStPQEpzYMma5mxlv5-VT6ry94xyttBFuCjBV0hudmcOEHiQeIiwS5xBb1iBPFaXTEmMpgDv8lvAm_ncbJ0V5FFDUYYVhK0-SbaODY5OKMdP2N3Y9bCkqjLCAcmkkN3mkrJ6WbzJURmNdfPyL344Cxc14NLZW3fk_yHkmjXybIXJWnUUsdxwFWS5ImwaZGEhbeLGGdpsPTkTkwD86uZCYJlx_dsZi02Vbm9AIiPpKE4L8GS_ltmOQ3YfgfxS6UuzYzaxKw.Xi3KLm7BvjSQuPMSVwSepg.U6Yp-DXd55F6jqy8-LIbmxmExzLaZNCF9Rcmg0g7ViUN3ydm_G5IqJmCFgXg1aO50HYJvnxi5OWG_rs6uV-1I2rrpu3bkuSjkj03N82yhFJBbhr8W_ahlgAMv2FPu4k7aeGp5rWm5lEdvH2UpSvKG2Ae111iFtL842Pk0pgPLOv4jnxFaCrvAPZ4vTvHS1RU27XGW7qXfAOtqpZ38oUJFamYueCIycDrsvacPT650O_JM_QS0ReXkH49bgAt1Sog9r2PY7fjU22ff1oGno51uVK_D9EXyHWcD4I5LYdVd6NenPDfycuQZ_wA98nqMCTzrqx5yQjUQDNYOoDF8ztoKVpYsTJeIUcFTpGXfoLLPTWjoIUds3mIyrXtBWO46rqN8c2nQ6FKC04-CBK9RGbWr1q1ENgfmsBvfXPCIUZ5ACzM1UaU2LkgEYlyiaxn-I3MfauP1adsA3ZOhrDHwSNgA0aVejT_9OTOaBUmywKGtdD7E8PhP7JqbMTXH2gM_9xU7t7TRvntE5uXeALKv4EDurn0p5bASwsYie7xWbsMHGF8lN0aGqJhNKiHL_NFGnR0wzPWS3UXFP7wZFbLM9qSPw.XFMSREEcssFqUM5kIwChIA",
```

