# Call the APIs
source: https://developer.mastercard.com/mastercard-checkout-solutions/tutorial/integrate_apis_sqr/step4/index.md

## Step 4: Call the APIs {#step-4-call-the-apis}

* If you are a Digital Wallet Operator integrating with Mastercard Checkout Solutions, you can follow the [use-cases](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/use-cases/sqr/index.md#use-cases) to call [Enroll Card](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/api-reference/apis/index.md#card) API for card enrollment and tokenization, followed by [POST checkout](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/api-reference/apis/index.md#checkout) API to initiate payment.

* If you are an Acquirer/PSP integrating with Mastercard Checkout Solutions, you must process the payload for authorization and notify the merchant about the transaction status.

* If you need to onboard merchants, you must register your merchants as DPAs using [DPA Registration](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/api-reference/apis/index.md#reigstration) API. Ensure you provide the `programType` as `SQR_DEVICE`.

### General API Execution Flow {#general-api-execution-flow}

1. Digital Wallet Operator calls the [Enroll Card](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/api-reference/apis/index.md#card) API and retrieves the `srcDigitalCardId` associated with the consumer's profile for the consumer's chosen PAN (Primary Account Number). Optionally, call the other card related [APIs](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/api-reference/apis/index.md) such as card notifications.

2. Digital Wallet Operator calls the [POST 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 summary request without the payload.

3. An Acquirer/PSP receives the encrypted payload via Make Payment API -- [POST /transaction/credentials](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/api-reference/index.md#make-payments). Extract the `encryptedPayload` value from the checkoutResponseJWS. 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.

4. Mastercard Checkout Solutions sends transaction notifications to Digital Wallet Operator via [POST /notifications/transactions](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/api-reference/index.md#push-transaction-details) if the transaction is eligible, provided the Issuer of the card used to make payment supports Transaction Detail Service (TDS).

*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",
```

<br />

