---
title: "Run card transaction"
method: POST
path: "/pay/v3/process"
tags: ["Ecommerce"]
---

# Run card transaction

`POST /pay/v3/process`

Allows you to process a card transaction in any of the following situations: 

- An initial transaction that uses a saved card token.
- An initial transaction that uses the full (raw) card information (where supported).
- A subsequent transaction that uses a saved card token.
- A subsequent transaction that uses the full (raw) card information (where supported).
- A subsequent transaction that uses a saved terminal token.

For more information about how to implement this endpoint, see the recipes (listed below) or the [Creating a card checkout page with your own form](https://docs.nexiopay.com/docs/creating-a-card-checkout-page-with-your-own-form), [Running a card transaction using full card information](https://docs.nexiopay.com/docs/running-a-card-transaction-using-raw-card-information), or [Running a card transaction with the API](https://docs.nexiopay.com/docs/running-a-card-transaction-with-the-api) topic.

Aside from the fields marked required here, the gateway you are using may require additional fields. For information on gateway-specific required fields, see the [Connections](https://docs.nexiopay.com/docs/connections) documentation.

For the 3DS workflow, the system returns a `redirectUrl` instead of the standard response, along with an `asyncTraceId` that you can use with the [View transaction async status](https://docs.nexiopay.com/reference/viewtransactionasyncstatus) endpoint for tracking progress and status. For a tutorial, see [Using 3DS to run transactions](https://docs.nexiopay.com/docs/using-3ds-to-run-transactions).

<!-- theme: warning -->
> 🛑 Important
>
> Parameters passed with a process request override any data points that are saved with the card token.
> 
> For example, if the value for `data.customer.billToAddressOne` is saved with the card token as `729 Jay Road`, but the value for that field is passed with the process request as `2147 West Silverlake Drive`, the system uses the address at `Silverlake Drive`.

<!-- theme: warning -->
> ⚠️ Try It
> 
> To use the Try It feature for this endpoint, you can use the credentials for your [Sandbox API user](https://docs.nexiopay.com/docs/sandbox-environments).<br/><br/>You can also use the following test account. Copy the value and paste it into the appropriate space in the Try It section to the right.
> username: `docs@nexiopay.com`
> password: `JZdzoXpdDeH6VA`
>
> Provide the following as body parameters, depending on which payment flow you are using:
> - **For an initial or subsequent transaction with a saved card token:** Include at least the `data.amount`, `processingOptions.paymentType`, and `tokenex.token`.
> - **For a subsequent transaction with a saved terminal token:** Include at least the `data.amount`, `processingOptions.paymentType`, and `terminal.token`.
> - **With the full card information:** Include at least the `data.amount`, `processingOptions.paymentType`, `card.pan`, `card.expirationYear`, and `card.expirationMonth`.<br/>**Note:** Sending full card information may increase your PCI scope.
> - **For a subsequent transaction with the full card information:** Include at least the `data.amount`, `processingOptions.paymentType`, `card.pan`, `card.expirationYear`, `card.expirationMonth`, and `recurringId`.
>
> For information about test card numbers and values you can use, see the documentation for the specific [gateway/connection integration guide](https://docs.nexiopay.com/docs/connections) you want to use or, if you are testing Account Updater, see the [Test cards for account updater](https://docs.nexiopay.com/docs/checking-a-cards-enrollment-tag#test-cards-for-account-updater) section of the "Checking a card's enrollment tag" topic.


<div style="display:none;">

## Request parameters
- data
- data.amount
- data.surcharge
- data.currency
- data.allowedCardTypes
- data.cart
- data.cart.items
- data.cart.items.item
- data.cart.items.description
- data.cart.items.quantity
- data.cart.items.price
- data.cart.items.type
- data.customer
- data.customer.customerRef
- data.customer.orderNumber
- data.customer.orderDate
- data.customer.invoice
- data.customer.firstName
- data.customer.lastName
- data.customer.birthDate
- data.customer.nationalIdentificationNumber
- data.customer.billToAddressOne
- data.customer.billToAddressTwo
- data.customer.billToCity
- data.customer.billToCountry
- data.customer.billToPhone
- data.customer.billToPostal
- data.customer.billToState
- data.customer.createdAtDate
- data.customer.email
- data.customer.phone
- data.customer.shipToAddressOne
- data.customer.shipToAddressTwo
- data.customer.shipToCity
- data.customer.shipToCountry
- data.customer.shipToPhone
- data.customer.shipToPostal
- data.customer.shipToState
- data.customFields
- data.customFields.exampleKey
- data.description
- data.descriptor
- data.descriptor.name
- data.descriptor.address
- data.descriptor.city
- data.descriptor.state
- data.descriptor.postal
- data.descriptor.country
- data.descriptor.phone
- data.descriptor.url
- data.descriptor.merchantId
- data.descriptor.mcc
- data.lodging
- data.lodging.advanceDeposit
- data.lodging.checkInDate
- data.lodging.checkOutDate
- data.lodging.noShow
- data.lodging.roomNumber
- data.lodging.roomRate
- paymentMethod
- tokenex
- tokenex.token
- tokenex.firstSix
- tokenex.lastFour
- card
- card.cardType
- card.cardHolderName
- card.encryptedNumber
- card.expirationMonth
- card.expirationYear
- card.securityCode
- card.firstSix
- card.lastFour
- card.classification
- card.businessNumber
- card.password
- card.pan
- recurringId
- merchantId
- processingOptions
- processingOptions.merchantId
- processingOptions.check3ds
- processingOptions.paymentType
- processingOptions.customerRedirectUrl
- processingOptions.checkFraud
- processingOptions.paymentOptionTag
- processingOptions.retryOnSoftDecline
- processingOptions.shouldUseFingerprint
- processingOptions.verboseResponse
- clientIp
- isAuthOnly
- installment
- installment.period
- external3ds
- external3ds.eci
- external3ds.cavv
- external3ds.xid
- external3ds.version
- external3ds.enrolled
- external3ds.pAResStatus
- external3ds.commerceIndicator
- external3ds.ucafAuthenticationData
- external3ds.ucafCollectionIndicator
- external3ds.directoryServerTransactionId

## Response parameters
- id
- merchantId
- authCode
- amount
- currency
- transactionDate
- transactionStatus
- transactionType
- shouldUpdateCard
- card
- card.cardHolder
- card.expirationMonth
- card.expirationYear
- card.cardType
- card.cardNumber
- card.firstSix
- card.lastFour
- token
- token.token
- token.firstSix
- token.lastFour
- token.cardType
- data
- data.amount
- data.currency
- data.settlementCurrency
- data.customer
- data.customer.customerRef
- data.customer.orderNumber
- data.customer.orderDate
- data.customer.invoice
- data.customer.firstName
- data.customer.lastName
- data.customer.birthDate
- data.customer.billToAddressOne
- data.customer.billToAddressTwo
- data.customer.billToCity
- data.customer.billToCountry
- data.customer.billToPhone
- data.customer.billToPostal
- data.customer.billToState
- data.customer.email
- data.customer.phone
- data.customer.shipToAddressOne
- data.customer.shipToAddressTwo
- data.customer.shipToCity
- data.customer.shipToCountry
- data.customer.shipToPhone
- data.customer.shipToPostal
- data.customer.shipToState
- data.customer.createdAt
- data.cart
- data.cart.items
- data.cart.items.item
- data.cart.items.description
- data.cart.items.quantity
- data.cart.items.price
- data.cart.items.type
- data.lodging
- data.lodging.advanceDeposit
- data.lodging.checkInDate
- data.lodging.checkOutDate
- data.lodging.noShow
- data.lodging.roomNumber
- data.lodging.roomRate
- data.customFields
- data.customFields.exampleKey
- data.nsu
- kountResponse
- kountResponse.status
- kountResponse.rules
- installment
- installment.period
- gatewayResponse
- gatewayResponse.gatewayName
- gatewayResponse.refNumber
- recurringData
- recurringData.recurringId
- recurringData.recurringIdType
- status
- message
- redirectUrl
- asyncTraceId

</div>

## Request body

- union
  - object — To run a transaction by using a saved card token, include at least an amount, currency (the system assumes USD if you don't specify it), payment type, and tokenex.token (the saved card token) as body parameters.
    - `data` object, required — Transaction and customer data.
      - `amount` Amount, required — unresolved $ref
      - `surcharge` Surcharge — unresolved $ref
      - `currency` Currency — unresolved $ref
      - `allowedCardTypes` AllowedCardTypes — unresolved $ref
      - `customer` Customer — unresolved $ref
      - `cart` Cart — unresolved $ref
      - `customFields` CustomFields — unresolved $ref
      - `description` Description — unresolved $ref
      - `descriptor` Descriptor — unresolved $ref
      - `lodging` Lodging — unresolved $ref
    - `processingOptions` object, required — Processing Options
      - `paymentType` PaymentType, required — unresolved $ref
      - `paymentOptionTag` PaymentOptionTag — unresolved $ref
      - `retryOnSoftDecline` RetryOnSoftDecline — unresolved $ref
      - `checkFraud` CheckFraud — unresolved $ref
      - `shouldUseFingerprint` ShouldUseFingerprint — unresolved $ref
      - `check3ds` Check3ds — unresolved $ref
      - `customerRedirectUrl` CustomerRedirectUrl — unresolved $ref
      - `merchantId` MerchantId — unresolved $ref
      - `verboseResponse` VerboseResponse — unresolved $ref
    - `tokenex` object, required — A previously saved [card token](https://docs.nexiopay.com/reference/savecardtoken). Card tokens can be used to process through any MID on your account. They are not restricted to a specific merchant account or currency.
      - `token` Token, required — unresolved $ref
      - `firstSix` FirstSix — unresolved $ref
      - `lastFour` LastFour — unresolved $ref
    - `card` object — Card information
      - `cardHolderName` CardHolderName — unresolved $ref
      - `expirationMonth` ExpirationMonth — unresolved $ref
      - `expirationYear` ExpirationYear — unresolved $ref
      - `cardType` CardType — unresolved $ref
      - `securityCode` SecurityCode — unresolved $ref
      - `classification` Classification — unresolved $ref
      - `businessNumber` BusinessNumber — unresolved $ref
      - `password` Password — unresolved $ref
    - `clientIp` ClientIp — unresolved $ref
    - `isAuthOnly` IsAuthOnly — unresolved $ref
    - `paymentMethod` 'card' | 'echeck' — Specifies the payment method to use. Set to `card` to run card transactions or `echeck` to run echeck transactions.
    - `installment` Installment — unresolved $ref
    - `external3ds` object — Send this object and parameters when using a third party for 3DS. Note that if you send this object and further 3DS authentication is required, Nexio errors and you will be required to re-authenticate and re-send the transaction.
      - `eci` string — **Required when using third-party 3DS provider.** Electronic Commerce Indicator (ECI) is a value returned by directory servers indicating the outcome of authentication attempted on transactions enforced by 3DS. Send the value for ECI that you got back from your third-party 3DS provider. **Possible values:** - 02 or 05 - Fully Authenticated Transaction - 01 or 06 - Attempted Authentication Transaction - 00 or 07 - Non 3-D Secure Transaction
      - `cavv` string — **Conditionally required.** The Cardholder Authentication Verification Value (CAVV) signifies that the transaction has been successfully authenticated. You must include either this parameter or `xid`, depending on the card brand. You should pass the value returned from the third-party 3DS provider.
      - `xid` string — **Conditionally required.** Transaction identifier resulting from authentication processing. You must include either this parameter or `cavv`, depending on the card brand. You should pass the value returned from the third-party 3DS provider.
      - `version` string — This parameter contains the 3DS version that was used to process the transaction. This parameter is required by some connections or gateways. To maximize the likelihood of transaction approval, always send the value for `version` returned from the third-party 3DS provider, even if it is not required.
      - `enrolled` string — This value indicates the status of the customer for authentication eligibility. This parameter is required by some connections or gateways. To maximize the likelihood of transaction approval, always send the value for `enrolled` returned from the third-party 3DS provider, even if it is not required. For more information about possible values, see the documentation for your third-party 3DS provider.
      - `pAResStatus` string — This value indicates Transaction status result identifier. This parameter is required by some connections or gateways. To maximize the likelihood of transaction approval, always send the value for `pAResStatus` returned from the third-party 3DS provider, even if it is not required. For more information about possible values, see the documentation for your third-party 3DS provider.
      - `commerceIndicator` string — Identifies the type of transaction. When requesting authorization through Nexio, this parameter is required for authentication previously performed with Mastercard Identity Check. Currently supported for: - [Cybersource](https://docs.nexiopay.com/docs/cybersource-integration-guide) See [Cybersource documentation](https://developer.cybersource.com/docs/cybs/en-us/apifields/reference/all/rest/api-fields/processing-info/processing-info-commerce-ind.html) for information about supported values. Send the value for `commerceIndicator` that you got back from your third-party 3DS provider.
      - `ucafAuthenticationData` string — Universal cardholder authentication field (UCAF) data. When requesting authorization through Nexio, this parameter is required for authentication previously performed with Mastercard Identity Check. Currently supported for: - [Cybersource](doc:cybersource-integration-guide] Send the value for `ucafAuthenticationData` that you got back from your third-party 3DS provider.
      - `ucafCollectionIndicator` string — Universal cardholder authentication field (UCAF) collection indicator. When requesting authorization through Nexio, this parameter is required for authentication previously performed with Mastercard Identity Check. Currently supported for: - [Cybersource](doc:cybersource-integration-guide] Represents the last digit of the raw ECI value in the external 3D Secure authentication response. For example, if the raw ECI returned is 02, set this value to 2. **Possible values:** - 0 - 1 - 2 - 5 - 6 - 7 See [Cybersource documentation](https://developer.cybersource.com/docs/cybs/en-us/api-fields/reference/all/so/api-fields/ucaf-collection-indicator.html) for descriptions of possible values. Send the value for `ucafCollectionIndicator` that you got back from your third-party 3DS provider.
      - `directoryServerTransactionId` string — A unique transaction identifier assigned by the Directory Server to identify a transaction. When requesting authorization through Nexio, this parameter is required for authentication previously performed with Mastercard Identity Check. Currently supported for: - [Cybersource](doc:cybersource-integration-guide] Send the value for `directoryServerTransactionId` that you got back from your third-party 3DS provider.
  - object — To run an initial transaction by using a full card number, include at least an amount, currency (the system assumes USD if you don't specify it), payment type, card number, and expiration month and year as body parameters. The following gateways support running the transaction using a full card number: - [Checkout.com](https://docs.nexiopay.com/docs/checkoutcom-integration-guide) - [Cybersource](https://docs.nexiopay.com/docs/cybersource-integration-guide) - [Nexio mock gateway](https://docs.nexiopay.com/docs/nexio-gateway-integration-guide) - [NMI](https://docs.nexiopay.com/docs/nmi-integration-guide) - [PayU Asia Pacific (via PaymentsOS)](https://docs.nexiopay.com/docs/payu-asia-pacific-via-paymentsos-integration-guide) - [USAePay](https://docs.nexiopay.com/docs/usaepay-integration-guide)
    - `data` Data, required — unresolved $ref
    - `card` object, required — Card information
      - `pan` number, required — The full card number. Either this or the `tokenex.token` parameter is required. Some gateways or connections may not support the submission of full cards. Contact [Integrations Support](https://docs.nexiopay.com/page/contact-us) for more information. You can send this value as a number or as a string. For information about test card numbers and values you can use, see the documentation for the specific [gateway/connection integration guide](https://docs.nexiopay.com/docs/connections) or, if you are testing Account Updater, see the [Test cards for account updater](https://docs.nexiopay.com/docs/checking-a-cards-enrollment-tag#test-cards-for-account-updater) section of the "Checking a card's enrollment tag" topic. <!-- theme: warning --> > 🛑 Important > > Sending full card numbers could increase PCI scope.
      - `expirationMonth` ExpirationMonth, required — unresolved $ref
      - `expirationYear` ExpirationYear, required — unresolved $ref
      - `cardHolderName` CardHolderName — unresolved $ref
      - `cardType` CardType — unresolved $ref
      - `securityCode` SecurityCode — unresolved $ref
      - `classification` Classification — unresolved $ref
      - `businessNumber` BusinessNumber — unresolved $ref
      - `password` Password — unresolved $ref
    - `processingOptions` ProcessingOptions, required — unresolved $ref
    - `clientIp` ClientIp — unresolved $ref
    - `isAuthOnly` IsAuthOnly — unresolved $ref
    - `paymentMethod` PaymentMethod — unresolved $ref
    - `installment` Installment — unresolved $ref
    - `external3ds` External3ds — unresolved $ref
  - object — To run a subsequent transaction (after the initial) by using a full card number, include at least the following as body parameters: an amount, currency (the system assumes USD if you don't specify it), payment type, card number, and expiration month and year, and the recurring ID (returned in the response from the initial full card transaction). The following gateways support running a recurring transaction using a full card number: - [Checkout.com](https://docs.nexiopay.com/docs/checkoutcom-integration-guide) - [Cybersource](https://docs.nexiopay.com/docs/cybersource-integration-guide) - [Nexio mock gateway](https://docs.nexiopay.com/docs/nexio-gateway-integration-guide) - [NMI](https://docs.nexiopay.com/docs/nmi-integration-guide) - [PayU Asia Pacific (via PaymentsOS)](https://docs.nexiopay.com/docs/payu-asia-pacific-via-paymentsos-integration-guide) - [USAePay](https://docs.nexiopay.com/docs/usaepay-integration-guide)
    - `data` Data, required — unresolved $ref
    - `card` Card, required — unresolved $ref
    - `recurringId` string, required — The ID that references the previous authorization. Use this when you have a recurring, card-not-present transaction.
    - `processingOptions` object, required — Processing Options
      - `paymentType` PaymentType, required — unresolved $ref
      - `paymentOptionTag` string — A custom value used to route transactions to a specific gateway or merchant account. This value is cached in the one-time-use token. For a subsequent (recurring) transaction, if you have multiple connections/gateways for your merchant account, you may need to also include this parameter in the request so that the transaction get routed to the same gateway where the initial transaction was made. Contact [Integrations Support](https://docs.nexiopay.com/page/contact-us) to designate a `paymentOptionTag` for a given merchant account.
      - `retryOnSoftDecline` RetryOnSoftDecline — unresolved $ref
      - `checkFraud` CheckFraud — unresolved $ref
      - `shouldUseFingerprint` ShouldUseFingerprint — unresolved $ref
      - `check3ds` Check3ds — unresolved $ref
      - `customerRedirectUrl` CustomerRedirectUrl — unresolved $ref
      - `merchantId` MerchantId — unresolved $ref
      - `verboseResponse` VerboseResponse — unresolved $ref
    - `clientIp` ClientIp — unresolved $ref
    - `isAuthOnly` IsAuthOnly — unresolved $ref
    - `paymentMethod` PaymentMethod — unresolved $ref
    - `installment` Installment — unresolved $ref
    - `external3ds` External3ds — unresolved $ref
  - object — To run a subsequent transaction (after the initial) with a saved terminal token, include at least an amount, currency (the system assumes USD if you don't specify it), payment type, and the saved terminal token as body parameters.
    - `data` Data, required — unresolved $ref
    - `processingOptions` object, required — Processing Options
      - `paymentType` 'initialScheduled' | 'initialUnscheduled' | 'scheduled' | 'unscheduledCit' | 'unscheduledMit' | 'initialMoto', required — The type of transaction being processed using stored payment credentials. Use this parameter to properly flag subsequent transactions when using a saved terminal token. For more information about this parameter and when to use each option, see the [Payment type (paymentType) reference table](https://docs.nexiopay.com/docs/constant-transaction-values#payment-type-paymenttype) in Guides.
      - `paymentOptionTag` PaymentOptionTag — unresolved $ref
      - `retryOnSoftDecline` RetryOnSoftDecline — unresolved $ref
      - `merchantId` MerchantId — unresolved $ref
      - `verboseResponse` VerboseResponse — unresolved $ref
    - `terminal` object, required — A previously saved [terminal token](https://docs.nexiopay.com/reference/processtransactionfromterminal).
      - `token` string, required — The terminal token for a card that is saved during the Retail payment process (see the [Process transaction from terminal](https://docs.nexiopay.com/reference/processtransactionfromterminal) endpoint). The token always begins with the following string: `terminal:`
    - `clientIp` ClientIp — unresolved $ref
    - `isAuthOnly` IsAuthOnly — unresolved $ref
    - `paymentMethod` PaymentMethod — unresolved $ref

## Response `200`

Success

- union
  - object — The response from a successful payment.
    - `id` Id — unresolved $ref
    - `merchantId` MerchantId — unresolved $ref
    - `authCode` AuthCode — unresolved $ref
    - `amount` Amount — unresolved $ref
    - `surcharge` number — The surcharge amount. This is part of the total transaction `amount`. The maximum value has 16 digits total, including up to two of those digits after the decimal point. The surcharge feature is only supported with the following gateways or connections: - [NMI](https://docs.nexiopay.com/docs/nmi-integration-guide) - [Nexio mock gateway](https://docs.nexiopay.com/docs/nexio-mock-gateway-integration-guide)
    - `currency` Currency — unresolved $ref
    - `transactionDate` TransactionDate — unresolved $ref
    - `transactionStatus` TransactionStatus — unresolved $ref
    - `transactionType` TransactionType — unresolved $ref
    - `shouldUpdateCard` ShouldUpdateCard — unresolved $ref
    - `card` object — Card information from the transaction.
      - `cardHolder` CardHolderName — unresolved $ref
      - `cardNumber` CardNumber — unresolved $ref
      - `firstSix` FirstSix — unresolved $ref
      - `lastFour` LastFour — unresolved $ref
      - `expirationMonth` ExpirationMonth — unresolved $ref
      - `expirationYear` ExpirationYear — unresolved $ref
    - `token` object — The card token used to process the transaction. This is an empty object when the request was made using a raw card number rather than a saved card token.
      - `firstSix` FirstSix — unresolved $ref
      - `lastFour` LastFour — unresolved $ref
      - `token` Token — unresolved $ref
      - `cardType` CardType — unresolved $ref
    - `terminal` object — The terminal token used to process the transaction. This object is only returned when a terminal token is used to process a transaction.
      - `token` Token — unresolved $ref
    - `recurringData` object — Data to be used in recurring or subsequent transactions when using raw card information when running a card transaction. Save the `recurringId` value to use in those subsequent transactions.
      - `recurringId` RecurringId — unresolved $ref
      - `recurringIdType` RecurringIdType — unresolved $ref
    - `data` object — Transaction and customer data.
      - `amount` Amount — unresolved $ref
      - `currency` Currency — unresolved $ref
      - `settlementCurrency` SettlementCurrency — unresolved $ref
      - `customer` object — Customer information returned when checking fraud or from the processing gateway, when applicable.
        - `orderNumber` OrderNumber — unresolved $ref
        - `customerRef` CustomerRef — unresolved $ref
        - `orderDate` OrderDate — unresolved $ref
        - `invoice` Invoice — unresolved $ref
        - `firstName` FirstName — unresolved $ref
        - `lastName` LastName — unresolved $ref
        - `birthDate` string — The recipient's date of birth, formatted as an [ISO-8601](https://www.iso.org/iso-8601-date-and-time-format.html) date. <!-- INTERNAL NOTE: Payquicker, HyperWallet -->
        - `email` Email — unresolved $ref
        - `phone` Phone — unresolved $ref
        - `billToAddressOne` BillToAddressOne — unresolved $ref
        - `billToAddressTwo` BillToAddressTwo — unresolved $ref
        - `billToCity` BillToCity — unresolved $ref
        - `billToState` BillToState — unresolved $ref
        - `billToPostal` BillToPostal — unresolved $ref
        - `billToCountry` BillToCountry — unresolved $ref
        - `billToPhone` BillToPhone — unresolved $ref
        - `shipToAddressOne` ShipToAddressOne — unresolved $ref
        - `shipToAddressTwo` ShipToAddressTwo — unresolved $ref
        - `shipToCity` ShipToCity — unresolved $ref
        - `shipToState` ShipToState — unresolved $ref
        - `shipToPostal` ShipToPostal — unresolved $ref
        - `shipToCountry` ShipToCountry — unresolved $ref
        - `shipToPhone` ShipToPhone — unresolved $ref
        - `createdAt` DateCreated — unresolved $ref
      - `cart` Cart — unresolved $ref
      - `customFields` CustomFields — unresolved $ref
      - `lodging` Lodging — unresolved $ref
      - `nsu` string — The system only returns this code for a transaction that uses the BRL currency through specific gateways or connections. If the system returns this parameter, you must save the value for compliance purposes.
    - `kountResponse` object — Fraud data and rules.
      - `status` Status — unresolved $ref
      - `rules` Rules — unresolved $ref
    - `installment` object — Details of an installment plan associated with the transaction.
      - `period` Period — unresolved $ref
    - `gatewayResponse` GatewayResponse — unresolved $ref
    - `random-nnnnnnn` RandomNnnn — unresolved $ref
  - object — The initial response when using a 3DS workflow. When the 3DS verification workflow completes, the system returns the regular payment response.
    - `merchantId` MerchantId — unresolved $ref
    - `status` string — The status of the 3DS transaction. This is only returned for transactions where 3DS has been enabled in the request.
    - `message` string — A message describing the status of the request and how to complete the 3DS workflow. This is only returned for transactions where 3DS has been enabled in the request.
    - `redirectUrl` string — The redirect URL to use for the 3DS workflow. This is only returned for transactions where 3DS has been enabled in the request.
    - `asyncTraceId` string — The high-level ID of the unprocessed transaction for tracking progress and status with the [View transaction async status](https://docs.nexiopay.com/reference/viewtransactionasyncstatus) endpoint. This is only returned for transactions where 3DS has been enabled in the request.
    - `random-nnnnnnn` RandomNnnn — unresolved $ref

## Other responses

- `400` — Bad Request
- `401` — Unauthorized. For help with this error and other error codes, see [Common errors](https://docs.nexiopay.com/docs/common-errors) in the Guides area.

---

[API](https://skmtc.dev/nexiopay/apis/payments-api-reference.md) · [All operations](https://skmtc.dev/nexiopay/apis/payments-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/nexiopay/payments-api-reference/revisions/b414b73979e5/schema)
