# 3D Secure 2

> 3DS is an online transaction authentication protocol launched by international card schemes and issuing banks to enhance the security of cardholder online payments.

 [3DS (3-Domain Secure)](https://en.wikipedia.org/wiki/3-D_Secure)   is an online transaction authentication protocol launched by international card schemes and issuing banks to enhance the security of cardholder online payments. In recent years, with the proliferation of e-commerce and the shift from PCs to diverse mobile devices, credit card transaction security authentication mechanisms have also evolved. Under diversified e-commerce environments, international card organizations submitted the 3DS authentication mechanism to EMVCo to establish an industry standard. EMV officially released the 3DS 2.0 specification in October 2016, which has been adopted by major international card schemes including Visa, MasterCard, UnionPay, JCB, American Express, and Discover.

 ![image.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2025/png/5b766057-1c8d-4162-9ab6-15a378978d34.png)

 We recommend you to implement this protocol to comply with authentication regulations such as   [PSD2 SCA](https://en.wikipedia.org/wiki/Strong_customer_authentication)   (Strong Customer Authentication requirements for online payments in the   [European Economic Area](https://en.wikipedia.org/wiki/European_Economic_Area)  ) and other   [identity verification regulations](https://en.wikipedia.org/wiki/Know_your_customer)  , while also benefiting from liability shift rules. Its advantages include:

 - **Risk transaction protection**    : Effectively reduces fraudulent transaction and chargeback rates through the 3DS authentication mechanism.
- **Liability shift mechanism**    : For potential chargeback transactions, liability can be transferred to the issuing bank.
- **Cross-platform support**    : Supports 3DS authentication processes on both PC and mobile devices.
- **Diverse authentication methods**    : Supports multiple authentication modes such as challenge flow and frictionless flow, significantly improving 3DS authentication success rates.

## Antom 3DS authentication solutions {#cztaF}

 You can purchase Antom's risk control service to automatically determine whether to trigger 3DS authentication, or you can independently decide based on order risk, chargeback rates, and regional compliance requirements. Specific triggering logis is as follows:

 ![](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/60f1d2c3-cf2b-4ac4-b816-13e65e333311.png)

 - If you have purchased the   [Antom Shield](https://docs.antom.com/ac/antomshield/overview.md)   service, no manual parameter configuration is required. Antom will intelligently decide whether to initiate 3DS authentication for each transaction based on real-time risk assessment models, transaction characteristics, and historical data, aiming to strike an optimal balance between security and conversion rates. For more details, refer to   [Antom Shield](https://docs.antom.com/ac/antomshield/overview.md)  .
- If you have robust risk control capabilities, you can manually configure Antom’s 3DS authentication strategy based on transaction risk:

   - For high-risk transactions, set     *is3DSAuthentication*     to   `true`  . Antom will always initiate 3DS transactions, and the value of the     *authenticationUpgrade*     parameter will be ignored.
  - If you set     *is3DSAuthentication*     to   `false`  , Antom will prioritize non-3DS transactions. In this scenario, the value of     *authenticationUpgrade*     determines the subsequent process if the transaction is declined by the issuer:

     - `true`  : Default value. If the transaction is soft-declined due to authentication requirements, Antom will automatically upgrade it to a 3DS transaction and retry. For more information, see   [Antom 3DS-Retry](https://docs.antom.com/ac/pm/3ds_retry.md)  .
    - `false`  : If the transaction fails, Antom will directly return the failure result without retrying.

 - If you use a third-party 3DS service, you must pass the 3DS authentication result to Antom for liability shift. Additionally, set both     *is3DSAuthentication*     and     *authenticationUpgrade*     to   `false`   to disable Antom’s 3DS authentication. Currently, only server-to-server card integration supports the use of third-party 3DS services.

 > **[INFO]** **Common questions**
>
>  **Q: If I do not set the**       ***is3DSAuthentication***       **parameter, will Antom decide whether to initiate a 3DS transaction on my behalf?**
>
>  A: No. If the     *is3DSAuthentication*     parameter is not set, non-3DS transactions will be initiated by default, which may expose you to risks such as card fraud and chargebacks. Only after purchasing the   [Antom Shield](https://docs.antom.com/ac/antomshield/overview.md)   service will Antom’s risk control model automatically determine whether to initiate 3DS authentication. In such cases, you do not need to set the     *is3DSAuthentication*     parameter.

 The following table illustrates the 3DS modes supported by different integration options:

 | **3DS mode/ Integration option** | **Payment Element integration** | **Checkout Page (CKP) integration** | **Hosted card integration** | **Server-to-server card integration** | **SDK integration** |
| --- | --- | --- | --- | --- | --- |
| Antom 3DS service & risk control | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| Antom 3DS service only | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| Third-party 3DS service | ❌ | ❌ | ❌ | ✔️ | ❌ |

## User experience {#ypnMt}

 3DS 2.0 authentication includes two modes: challenge flow and frictionless flow. Antom automatically determines the optimal mode based on risk level and the specific payment scenario. Below is the user experience for each mode:

 > **[INFO]** **Note**    : If you use a third-party 3DS service, no frontend page is involved. You must pass the 3DS authentication results obtained from the third-party provider to Antom though API.

 | **Antom 3DS challenge flow** | **Antom 3DS frictionless flow** |
| --- | --- |
| ![](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2025/png/e89a8c32-fe95-4437-96ad-2ebf65c048e2.png) This mode requires redirecting to a 3DS URL and involves the buyer completing identity verification. | ![](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2025/png/7217ac29-ebfd-4a76-88c1-05d01d4962e5.png) This mode requires redirecting to a 3DS URL only to collect environmental information, with no additional action required from the buyer. |

## How to enable {#W4j1G}

<!-- TabGroup -->

**Tab: Payment Element integration**

You can choose to use Antom's risk control capabilities or make independent decisions regarding 3DS authentication based on your business needs:

### Antom 3DS service & risk control   **[Recommended]** {#EHP82}

 If you have purchased   [Antom Shield](https://docs.antom.com/ac/antomshield/overview.md)  , Antom will provide fraud protection services and decide whether to initiate 3DS authentication:

 - Antom Shield Pro: Configure custom risk control rules on the platform, and Antom will automatically decide whether to trigger 3DS authentication based on your rules.
- Antom Shield Premium: Antom’s risk control expert team makes real-time decisions on whether to initiate 3DS authentication for each transaction.

 This mode ensures compliance with specific market regulations while reducing chargeback rates and improving payment success rates. The following figure illustrates the payment flow under this mode:

 ![Antom 3ds+风控-en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/beabb55e-c1e0-4c94-bae5-b37895ac5df2.png)

### Antom 3DS service only {#Qbjb3}

 If you have robust risk control capabilities or use a third-party risk control service, you can independently decide whether to enable 3DS authentication based on order risk, chargeback rates, and regional compliance requirements. The following figure illustrates the payment flow under this mode:

 ![Antom 3ds-en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/b4ed287f-87b6-471a-b3b8-d68927fd0423.png)

 After the buyer initiates a payment, you determine whether to trigger 3DS authentication based on order risk by configuring the     *availablePaymentMethod.paymentMethodMetaData.is3DSAuthentication*     parameter in the   [**createPaymentSession (One-time Payments)**](https://docs.antom.com/ac/ams/session_cashier.md)   request:

 - For high-risk orders, set     *is3DSAuthentication*     to   `true`  , Antom will initiate 3DS transactions.
- For low-risk orders, set     *is3DSAuthentication*     to   `false`  , Antom will initiate non-3DS transactions by default. Additionally, Antom will decide whether to upgrade non-3DS transactions to 3DS based on the value of     *enableAuthenticationUpgrade*     (default value:   `true`  , which allows non-3DS transactions to be upgraded to 3DS transactions).

 > **[INFO]** **Note**    : Some regions (e.g., Europe, Japan) have specific 3DS compliance rules. Consult Antom Technical Support to confirm the applicable 3DS requirements.

 1. For high-risk transactions, set     *is3DSAuthentication*     to   `true`   in the   [**createPaymentSession (One-time Payments)**](https://docs.antom.com/ac/ams/session_cashier.md)   request to ensure Antom initiates 3DS transactions:

 ```json
{
  ...
    "availablePaymentMethod": {
        "paymentMethodMetaData": {
            "is3DSAuthentication": true
        }
    },  
  ...
}

```

 2. If you set to initiate 3DS authentication, after the buyer completes the 3DS verification and the payment, Antom will send an asynchronous notification to you through the   [**notifyPayment**](https://docs.antom.com/ac/ams/paymentrn_online.md)   API. The     *paymentResultInfo.threeDSResult*     parameter in the asynchronous notification returns the corresponding 3DS information:

 ```json
{
  ...
  "paymentResultInfo": {
    ...
    "threeDSResult": {
      "cavv": "kB**************************",
      "challengeCancel": "",
      "challenged": true,
      "dsTransactionId": "7ab0a8ad-*******-eed10f4b772",
      "eci": "02",
      "threeDSOffered": true,
      "threeDSVersion": "2.2.0",
      "threeDStransactionStatusReason": ""
    },
    "useAccountUpdate": false
  },
  ...
}
```

**Tab: Checkout Page integration**

You can choose to use Antom's risk control capabilities or make independent decisions regarding 3DS authentication based on your business needs:

### Antom 3DS service & risk control   **[Recommended]** {#EHP22}

 If you have purchased   [Antom Shield](https://docs.antom.com/ac/antomshield/overview.md)  , Antom will provide fraud protection services and decide whether to initiate 3DS authentication:

 - Antom Shield Pro: Configure custom risk control rules on the platform, and Antom will automatically decide whether to trigger 3DS authentication based on your rules.
- Antom Shield Premium: Antom’s risk control expert team makes real-time decisions on whether to initiate 3DS authentication for each transaction.

 This mode ensures compliance with specific market regulations while reducing chargeback rates and improving payment success rates. The following figure illustrates the payment flow under this mode:

 ![Antom 3ds+风控-en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/beabb55e-c1e0-4c94-bae5-b37895ac5df2.png)

### Antom 3DS service only {#Qb22jb3}

 If you have robust risk control capabilities or use a third-party risk control service, you can independently decide whether to enable 3DS authentication based on order risk, chargeback rates, and regional compliance requirements. The following figure illustrates the payment flow under this mode:

 ![Antom 3ds-en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/b4ed287f-87b6-471a-b3b8-d68927fd0423.png)

 After the buyer initiates a payment, you determine whether to trigger 3DS authentication based on order risk by configuring the     *availablePaymentMethod.paymentMethodMetaData.is3DSAuthentication*     parameter in the   [**createPaymentSession (One-time Payments)**](https://docs.antom.com/ac/ams/session_cashier.md)   request:

 - For high-risk orders, set     *is3DSAuthentication*     to   `true`  , Antom will initiate 3DS transactions.
- For low-risk orders, set     *is3DSAuthentication*     to   `false`  , Antom will initiate non-3DS transactions by default. Additionally, Antom will decide whether to upgrade non-3DS transactions to 3DS based on the value of     *enableAuthenticationUpgrade*     (default value:   `true`  , which allows non-3DS transactions to be upgraded to 3DS transactions).

 > **[INFO]** **Note**    : Some regions (e.g., Europe, Japan) have specific 3DS compliance rules. Consult Antom Technical Support to confirm the applicable 3DS requirements.

 1. For high-risk transactions, set     *is3DSAuthentication*     to   `true`   in the   [**createPaymentSession (One-time Payments)**](https://docs.antom.com/ac/ams/session_cashier.md)   request to ensure Antom initiates 3DS transactions:

 ```json
{
  ...
    "availablePaymentMethod": {
        "paymentMethodMetaData": {
            "is3DSAuthentication": true
        }
    },  
  ...
}

```

 2. If you set to initiate 3DS authentication, after the buyer completes the 3DS verification and the payment, Antom will send an asynchronous notification to you through the   [**notifyPayment**](https://docs.antom.com/ac/ams/paymentrn_online.md)   API. The     *paymentResultInfo.threeDSResult*     parameter in the asynchronous notification returns the corresponding 3DS information:

 ```json
{
  ...
  "paymentResultInfo": {
    ...
    "threeDSResult": {
      "cavv": "kB**************************",
      "challengeCancel": "",
      "challenged": true,
      "dsTransactionId": "7ab0a8ad-*******-eed10f4b772",
      "eci": "02",
      "threeDSOffered": true,
      "threeDSVersion": "2.2.0",
      "threeDStransactionStatusReason": ""
    },
    "useAccountUpdate": false
  },
  ...
}
```

**Tab: Hosted card integration**

You can choose to use Antom's risk control capabilities or make independent decisions regarding 3DS authentication based on your business needs:

### Antom 3DS service & risk control   **[Recommended]** {#Xzh05}

 If you have purchased   [Antom Shield](https://docs.antom.com/ac/antomshield/overview.md)  , Antom will provide fraud protection services and decide whether to initiate 3DS authentication:

 - Antom Shield Pro: Configure custom risk control rules on the platform, and Antom will automatically decide whether to trigger 3DS authentication based on your rules.
- Antom Shield Premium: Antom’s risk control expert team makes real-time decisions on whether to initiate 3DS authentication for each transaction.

 This mode ensures compliance with specific market regulations while reducing chargeback rates and improving payment success rates. The following figure illustrates the payment flow under this mode:

 ![Antom 3DS+风控en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/22e9ef16-9c67-4f5d-8c33-a37c947304a7.png)

 After the buyer initiates a payment, Antom's risk control model will automatically determine whether to trigger 3DS authentication, without the need for manual configuration of the     *is3DSAuthentication*     parameter. You only need to specify     *paymentMethodType*     as   `CARD`   in the   [**pay (One-time Payments)**](https://docs.antom.com/ac/ams/payment_cashier.md)   request. The following sample code shows the scenario where Antom's risk model decides to initiate a 3DS transaction:

 ```json
"paymentMethod":
{
  "paymentMethodMetaData": {
  },
  "paymentMethodType": "CARD"
}
```

### Antom 3DS service only {#UIj9J}

 If you have robust risk control capabilities or use a third-party risk control service, you can independently decide whether to enable 3DS authentication based on order risk, chargeback rates, and regional compliance requirements. The following figure illustrates the payment flow under this mode:

 ![Antom 3DS-en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/4adcc722-0a97-463e-909c-cdaaa4a41c2f.png)

 After the buyer initiates a payment, you determine whether to trigger 3DS authentication based on order risk by configuring the     *availablePaymentMethod.paymentMethodMetaData.is3DSAuthentication*     parameter in the   [**pay (One-time Payments)**](https://docs.antom.com/ac/ams/payment_cashier.md)   request:

 - For high-risk orders, set     *is3DSAuthentication*     to   `true`  , Antom will initiate 3DS transactions.
- For low-risk orders, set     *is3DSAuthentication*     to   `false`  , Antom will initiate non-3DS transactions by default. Additionally, Antom will decide whether to upgrade non-3DS transactions to 3DS based on the value of     *enableAuthenticationUpgrade*     (default value:   `true`  , which allows non-3DS transactions to be upgraded to 3DS transactions).

 > **[INFO]** **Note**    : Some regions (e.g., Europe, Japan) have specific 3DS compliance rules. Consult Antom Technical Support to confirm the applicable 3DS requirements.

 The following sample code shows how to initiate 3DS transactions through the      [**pay (One-time Payments)**](https://docs.antom.com/ac/ams/payment_cashier.md)      API:

 ```json
"paymentMethod":
{
  "paymentMethodMetaData":
  {
    "is3DSAuthentication": true
  },
  "paymentMethodType": "CARD"
}
```

 If you set to initiate 3DS transactions, after the buyer completes the 3DS verification and the payment, Antom will send an asynchronous notification to you through the   [**notifyPayment**](https://docs.antom.com/ac/ams/paymentrn_online.md)   API. The     *paymentResultInfo.threeDSResult*     parameter in the asynchronous notification returns the corresponding 3DS information:

 ```json
{
  "paymentResultInfo": {
    "cardBrand": "VISA",
    "cardNo": "**********9954",
    "funding": "DEBIT",
    "issuingCountry": "DE",
    "paymentMethodRegion": "DE",
    "threeDSResult": {
      "cavv": "AJkBCVSAkwAAAABkcCCQdAAA****",
      "dsTransactionId": "e39d744b-b3af-4e0f-9141-c74d1979****",
      "eci": "05",
      "threeDSVersion": "2.1.0",
      "threeDSOffered":true
    }
  },
  "notifyType": "PAYMENT_RESULT",
  "paymentAmount": {
    "currency": "EUR",
    "value": "30000"
  },
  "paymentCreateTime": "2023-01-09T22:07:22-08:00",
  "paymentId": "2023011019401080010018892020491****",
  "paymentRequestId": "20230110140713pay_req_APM_evie126396****",
  "paymentTime": "2023-01-09T22:07:34-08:00",
  "result": {
    "resultCode": "SUCCESS",
    "resultMessage": "success.",
    "resultStatus": "S"
  }
}
```

**Tab: Server-to-server card integration**

You can choose whether to use Antom 3DS and Antom's risk control capabilities based on your business needs, including the following three modes:

### Antom 3DS service & risk control   **[Recommended]** {#oy5q3}

 If you have purchased   [Antom Shield](https://docs.antom.com/ac/antomshield/overview.md)  , Antom will provide fraud protection services and decide whether to initiate 3DS authentication:

 - Antom Shield Pro: Configure custom risk control rules on the platform, and Antom will automatically decide whether to trigger 3DS authentication based on your rules.
- Antom Shield Premium: Antom’s risk control expert team makes real-time decisions on whether to initiate 3DS authentication for each transaction.

 This mode ensures compliance with specific market regulations while reducing chargeback rates and improving payment success rates. The following figure illustrates the payment flow under this mode:

 ![Antom 3DS+风控en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/d37305a3-8e13-4bc7-8404-b9c1b0fc7655.png)

 After the buyer initiates a payment, Antom's risk control model will automatically determine whether to trigger 3DS authentication, eliminating the need for manual configuration of the     *is3DSAuthentication*     parameter.

 You only need to pass in card information and specify     *paymentMethodType*     as   `CARD`   in the   [**pay (One-time Payments)**](https://docs.antom.com/ac/ams/payment_cashier.md)   request. The following sample code shows the scenario where Antom's risk model decides to initiate a 3DS transaction:

 ```json
"paymentMethod":
{
  "paymentMethodMetaData":
  {
    "cvv": "682",
    "expiryMonth": "11",
    "expiryYear": "28",
    "cardNo": "411227******9954"
  },
  "paymentMethodType": "CARD"
}
```

 If Antom decides to initiate a 3DS transaction and the buyer successfully completes 3DS authentication and payment, Antom will send an asynchronous notification to you through the   [**notifyPayment**](https://docs.antom.com/ac/ams/paymentrn_online.md)   API. The     *paymentResultInfo.threeDSResult*     parameter in the asynchronous notification returns the corresponding 3DS information:

 > **[INFO]** **Note**    : You can determine whether Antom 3DS service was used for the transaction by checking the value of the     *threeDSOffered*     parameter in the asynchronous notification. If     *threeDSOffered*     is   `true`  , it indicates that this transaction used Antom 3DS service.

 ```json
{
  ...
  "paymentResultInfo": {
    ...
    "threeDSResult": {
      "cavv": "kB**************************",
      "challengeCancel": "",
      "challenged": true,
      "dsTransactionId": "7ab0a8ad-*******-eed10f4b772",
      "eci": "02",
      "threeDSOffered": true,
      "threeDSVersion": "2.2.0",
      "threeDStransactionStatusReason": ""
    },
    "useAccountUpdate": false
  },
  ...
}
```

### Antom 3DS service only {#Zq34U}

 If you have robust risk control capabilities or have integrated a third-party risk control service, you can independently decide whether to enable 3DS authentication based on order risk, chargeback rates, and regional compliance requirements. Antom will then handle the subsequent 3DS and authorization processes while ensuring liability shift eligibility. The figure below illustrates the payment flow under this mode:

 ![Antom 3DS-en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/87bb8e2b-df27-4f22-a218-7392238500d1.png)

 After the buyer initiates a payment, you determine whether to trigger 3DS authentication based on order risk by configuring the     *availablePaymentMethod.paymentMethodMetaData.is3DSAuthentication*     parameter in the   [**pay (One-time Payments)**](https://docs.antom.com/ac/ams/payment_cashier.md)   request:

 - For high-risk orders, set     *is3DSAuthentication*     to   `true`  , Antom will initiate 3DS transactions.
- For low-risk orders, set     *is3DSAuthentication*     to   `false`  , Antom will initiate non-3DS transactions by default. Additionally, Antom will decide whether to upgrade non-3DS transactions to 3DS based on the value of     *enableAuthenticationUpgrade*     (default value:   `true`  , which allows non-3DS transactions to be upgraded to 3DS transactions).

 > **[INFO]** **Note**    : Some regions (e.g., Europe, Japan) have specific 3DS compliance rules. Consult Antom Technical Support to confirm the applicable 3DS requirements.

 The following sample code shows how to initiate 3DS transactions through the      [**pay (One-time Payments)**](https://docs.antom.com/ac/ams/payment_cashier.md)      API:

 ```json
"paymentMethod":
{
  "paymentMethodMetaData":
  {
    "cvv": "682",
    "expiryMonth": "11",
    "expiryYear": "28",
    "cardNo": "411227******9954",
    "is3DSAuthentication": true
  },
  "paymentMethodType": "CARD"
}
```

 If you set to initiate 3DS transactions, after the buyer completes the 3DS verification and the payment, Antom will send an asynchronous notification to you through the   [**notifyPayment**](https://docs.antom.com/ac/ams/paymentrn_online.md)   API. The     *paymentResultInfo.threeDSResult*     parameter in the asynchronous notification returns the corresponding 3DS information:

 > **[INFO]** **Note**    : You can determine whether Antom 3DS service was used for the transaction by checking the value of the     *threeDSOffered*     parameter in the asynchronous notification. If     *threeDSOffered*     is   `true`  , it indicates that this transaction used Antom 3DS service.

 ```json
{
  ...
  "paymentResultInfo": {
    ...
    "threeDSResult": {
      "cavv": "kB**************************",
      "challengeCancel": "",
      "challenged": true,
      "dsTransactionId": "7ab0a8ad-*******-eed10f4b772",
      "eci": "02",
      "threeDSOffered": true,
      "threeDSVersion": "2.2.0",
      "threeDStransactionStatusReason": ""
    },
    "useAccountUpdate": false
  },
  ...
}
```

### Third-party 3DS service {#EbaO2}

 If you use a third-party 3DS service for authentication, Antom will proceed with the authentication process. You need to pass the 3DS authentication results to Antom to qualify for liability shift. The figure below illustrates the payment flow under this mode:

 ![第三方 3DS-en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/b111a890-8fc9-4389-be93-0831d9ad62f7.png)

 After the buyer initiates payment, they complete 3DS authentication through the third-party 3DS provider. You need to pass the 3DS authentication results to Antom and set the following parameters in the   [**pay (One-time Payments)**](https://docs.antom.com/ac/ams/payment_cashier.md)   API:

 - *mpiData*    : When integrating an external 3DS service, use this parameter to specify your plugin (MPI) information. It includes the following parameters:

   - *threeDSVersion*    : The 3D Secure protocol version returned by the third-party 3DS provider.
  - *cavv*    : The Cardholder Authentication Value returned by the third-party 3DS provider.
  - *dsTransactionId*    : A unique ID returned by the third-party 3DS provider.
  - *eci*    : The Electronic Commerce Indicator (ECI) returned by the third-party 3DS provider.

 - *is3DSAuthentication*    : Since the buyer has already completed 3DS authentication, there is no need to initiate it again through Antom. Set this parameter to   `false`   or leave it empty.
- *enableAuthenticationUpgrade*    : Set this parameter to   `false`   to disable the upgrade from non-3DS transactions to 3DS transactions.

 Below is sample code for completing 3DS authentication through the third-party 3DS provider:

 ```json
"paymentMethodMetaData": {
	"enableAuthenticationUpgrade": false,
	"is3DSAuthentication": false,
	"mpiData": {
		"eci": "02",
		"threeDSVersion": "2.2.0",
		"cavv": "cavvSample",
		"dsTransactionId": "sample_dsTranascti****"
	},
	"cvv": "850",
	"cardholderName": {
		"firstName": "Tom",
		"lastName": "Jay"
	},
	"expiryMonth": "12",
	"expiryYear": "29",
	"cardNo": "****0615"
}
```

 If you use a third-party 3DS service or Antom's risk control service decides not to initiate 3DS authentication, after the buyer completes payment, Antom will send an asynchronous notification to you through the   [**notifyPayment**](https://docs.antom.com/ac/ams/paymentrn_online.md)   API. In this case, the asynchronous notification will not include 3DS result information, and the value of     *threeDSOffered*     is   `false`  :

 ```json
{
  ...
  "paymentResultInfo": {
    ...
    "threeDSResult": {
      "cavv": "",
      "challengeCancel": "",
      "challenged": false,
      "eci": "",
      "threeDSOffered": false,
      "threeDStransactionStatusReason": ""
    },
    "useAccountUpdate": false
  },
  ...
}
```

**Tab: SDK integration**

You can choose to use Antom's risk control capabilities or make independent decisions regarding 3DS authentication based on your business needs:

### Antom 3DS service & risk control   **[Recommended]** {#EHP33}

 If you have purchased   [Antom Shield](https://docs.antom.com/ac/antomshield/overview.md)  , Antom will provide fraud protection services and decide whether to initiate 3DS authentication:

 - Antom Shield Pro: Configure custom risk control rules on the platform, and Antom will automatically decide whether to trigger 3DS authentication based on your rules.
- Antom Shield Premium: Antom’s risk control expert team makes real-time decisions on whether to initiate 3DS authentication for each transaction.

 This mode ensures compliance with specific market regulations while reducing chargeback rates and improving payment success rates. The following figure illustrates the payment flow under this mode:

 ![Antom 3ds+风控-en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/beabb55e-c1e0-4c94-bae5-b37895ac5df2.png)

### Antom 3DS service only {#Qb33jb3}

 If you have robust risk control capabilities or use a third-party risk control service, you can independently decide whether to enable 3DS authentication based on order risk, chargeback rates, and regional compliance requirements. The following figure illustrates the payment flow under this mode:

 ![Antom 3ds-en.png](https://idocs-assets.marmot-cloud.com/storage/idocs87c36dc8dac653c1/yuque/idocs/2026/png/b4ed287f-87b6-471a-b3b8-d68927fd0423.png)

 After the buyer initiates a payment, you determine whether to trigger 3DS authentication based on order risk by configuring the     *availablePaymentMethod.paymentMethodMetaData.is3DSAuthentication*     parameter in the   [**createPaymentSession (One-time Payments)**](https://docs.antom.com/ac/ams/session_cashier.md)   request:

 - For high-risk orders, set     *is3DSAuthentication*     to   `true`  , Antom will initiate 3DS transactions.
- For low-risk orders, set     *is3DSAuthentication*     to   `false`  , Antom will initiate non-3DS transactions by default. Additionally, Antom will decide whether to upgrade non-3DS transactions to 3DS based on the value of     *enableAuthenticationUpgrade*     (default value:   `true`  , which allows non-3DS transactions to be upgraded to 3DS transactions).

 > **[INFO]** **Note**    : Some regions (e.g., Europe, Japan) have specific 3DS compliance rules. Consult Antom Technical Support to confirm the applicable 3DS requirements.

 1. For high-risk transactions, set     *is3DSAuthentication*     to   `true`   in the   [**createPaymentSession (One-time Payments)**](https://docs.antom.com/ac/ams/session_cashier.md)   request to ensure Antom initiates 3DS transactions:

 ```json
{
  ...
    "availablePaymentMethod": {
        "paymentMethodMetaData": {
            "is3DSAuthentication": true
        }
    },  
  ...
}

```

 2. If you set to initiate 3DS authentication, after the buyer completes the 3DS verification and the payment, Antom will send an asynchronous notification to you through the   [**notifyPayment**](https://docs.antom.com/ac/ams/paymentrn_online.md)   API. The     *paymentResultInfo.threeDSResult*     parameter in the asynchronous notification returns the corresponding 3DS information:

 ```json
{
  ...
  "paymentResultInfo": {
    ...
    "threeDSResult": {
      "cavv": "kB**************************",
      "challengeCancel": "",
      "challenged": true,
      "dsTransactionId": "7ab0a8ad-*******-eed10f4b772",
      "eci": "02",
      "threeDSOffered": true,
      "threeDSVersion": "2.2.0",
      "threeDStransactionStatusReason": ""
    },
    "useAccountUpdate": false
  },
  ...
}
```

<!-- /TabGroup -->
