# Perform Transaction Authentication
source: https://developer.mastercard.com/mastercard-checkout-solutions/tutorial/authentication_c2p/step1/index.md

## Step 1: Mastercard Performs Transaction Authentication {#step-1-mastercard-performs-transaction-authentication}

Following are the detailed steps:

1. Consumer selects or adds a card for checkout.

2. Integrator calls the [checkout()](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/sdk-reference/checkout-method/index.md) method by passing the below parameters for [DpaTransactionOptions](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/sdk-reference/common-objects/index.md#dpa-transaction-options) in a windowRef pop-up (center-aligned) for authentication:

   * **authenticationPreferences.payloadRequested** = `AUTHENTICATED`
   * **paymentOptions.dynamicDataType** = `CARD_APPLICATION_CRYPTOGRAM_SHORT_FORM`
   * **transactionAmount** : Provide the final transaction amount in `transactionAmount`.
   * Additional data fields required for Issuer Authentication : **acquirerMerchantId** , **acquirerBIN** , **merchantCategoryCode** , and **merchantCountryCode**
3. Mastercard initiates the most applicable authentication method.

4. Integrator receives the [checkout()](https://developer.mastercard.com/mastercard-checkout-solutions/documentation/sdk-reference/checkout-method/index.md) response and redirects the consumer back to the shopping website.

Next, Integrator requests the transaction payload from Mastercard. See [step 2](https://developer.mastercard.com/mastercard-checkout-solutions/tutorial/authentication_c2p/step2/index.md) for details.

