Verifone 3DS Authentication API

Operations for listing and retrieving 3DS authentication records. Use these endpoints to query historical authentication results filtered by amount, currency, card, status, and more.

OpenAPI Specification

verifone-3ds-authentication-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: 3D Secure 3DS Authentication API
  version: 3.43.0
  description: Operations for listing and retrieving 3DS authentication records. Use these endpoints to query historical authentication results filtered by amount, currency, card, status, and more.
servers:
- url: https://emea.gsc.verifone.cloud/oidc/3ds-service
  description: EMEA Production
- url: https://us.gsc.verifone.cloud/oidc/3ds-service
  description: Americas Production
- url: https://nz.gsc.verifone.cloud/oidc/3ds-service
  description: New Zealand Production
- url: https://cst.test-gsc.vfims.com/oidc/3ds-service
  description: Global Sandbox
- url: https://uscst-gb.gsc.vficloud.net/oidc/3ds-service
  description: Americas Sandbox
security:
- BearerAuth: []
- BasicAuth: []
tags:
- name: 3DS Authentication
  description: Operations for listing and retrieving 3DS authentication records. Use these endpoints to query historical authentication results filtered by amount, currency, card, status, and more.
paths:
  /v2/3d:
    get:
      tags:
      - 3DS Authentication
      summary: List ThreeDSAuthentications
      description: "The API enumerates the ThreeDS Authentication objects, offering\nfiltration criteria to obtain filtered data based on specified parameters. \n\n## Filtering and Searching\n\nFilters can be used to interact with any object. Objects can be queried by appending parameters to\nthe query string of the URL.\n\nSo to get a list of all pares_status = Y in threeds authentication with EUR currency, having an amount equal to or greater than 20,\nwe would use the following URL:\n\n    /v2/3d?_limit=10&amount>=212&currency_code=EUR&authentication.pares_status=Y\n\nParameters with multiple values are also supported. So for example, to query pares_status = Y and pares_status = U,\nyou would use the following URL:\n\n    /v2/3d?authentication.pares_status=Y&authentication.pares_status=U\n\nUse the following syntax to query objects based on parameters and values - in this example querying threeds authentication by the amount.\n\nQuery on one value:\n\n    /v2/3d?amount=7500\n\nQuery on everything but one value:\n\n    /v2/3d?amount!=7500\n\nLess than and equal to:\n\n    /v2/3d?amount<=7500\n\nGreater than and equal to:\n\n    /v2/3d?amount>=7500\n\nRange of values within/outside specified bounds:\n\n    /v2/3d?amount<=7600&amount>=7500\n\nMultiple parameters:\n\n    /v2/3d?amount=7600&currency_code=EUR\n\nLimit the number of results:\n\n    /v2/3d?_limit=50\n\nSort results in descending order:\n\n    /v2/3d?_sort=-amount\n\nSort results in ascending order:\n\n    /v2/3d?_sort=amount\n\n**Query operators:**\n\n| Operator | Description |\n|---|---|\n| `=` | equal |\n| `!` | not equal |\n| `<` | less than or equal to |\n| `>` | greater than or equal to |\n| `~` | pattern matching |\n| `>&<` | multiple-argument (range) search |"
      operationId: getV23d
      parameters:
      - name: _limit
        in: query
        description: 'The maximum number of values that can be sent in the response ( maximum: 10000 )'
        schema:
          maximum: 10000
          minimum: 1
          type: integer
          default: 2000
      - name: _skip
        in: query
        description: _skip query params
        schema:
          minimum: 0
          type: integer
          default: 0
      - name: _sort
        in: query
        description: _sort query params
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - _id
            - amount
            - card
            - created_at
            - currency_code
            - entity_id
            - entity_name
            - threeds_contract_id
            - transaction_id
            - authentication.acs_rendering_type
            - authentication.acs_transaction_id
            - authentication.acs_url
            - authentication.authentication_type
            - authentication.authorization_payload
            - authentication.card_brand
            - authentication.cardholder_info
            - authentication.cavv_algorithm
            - authentication.cavv
            - authentication.challenge_cancel
            - authentication.challenge_required
            - authentication.ds_transaction_id
            - authentication.eci_flag
            - authentication.enrolled
            - authentication.error_desc
            - authentication.error_no
            - authentication.network_score
            - authentication.order_id
            - authentication.pares_status
            - authentication.payload
            - authentication.reason_code
            - authentication.reason_desc
            - authentication.signature_verification
            - authentication.status_reason
            - authentication.threeds_version
            - authentication.xid
            - authentication.white_list_status
            - authentication.white_list_status_source
            - -_id
            - -amount
            - -card
            - -created_at
            - -currency_code
            - -entity_id
            - -threeds_contract_id
            - -transaction_id
            - -authentication.acs_rendering_type
            - -authentication.acs_transaction_id
            - -authentication.acs_url
            - -authentication.authentication_type
            - -authentication.authorization_payload
            - -authentication.card_brand
            - -authentication.cardholder_info
            - -authentication.cavv_algorithm
            - -authentication.cavv
            - -authentication.challenge_cancel
            - -authentication.challenge_required
            - -authentication.ds_transaction_id
            - -authentication.eci_flag
            - -authentication.enrolled
            - -authentication.error_desc
            - -authentication.error_no
            - -authentication.network_score
            - -authentication.order_id
            - -authentication.pares_status
            - -authentication.payload
            - -authentication.reason_code
            - -authentication.reason_desc
            - -authentication.signature_verification
            - -authentication.status_reason
            - -authentication.threeds_version
            - -authentication.xid
            - -authentication.white_list_status
            - -authentication.white_list_status_source
      - name: _id
        in: query
        description: ThreeDSAuthentication id
        schema:
          type: string
      - name: amount
        in: query
        description: The amount of the transaction.
        schema:
          maximum: 9007199254740991
          type: number
      - name: card
        in: query
        description: The ID of the card that is checked for enrollment.
        schema:
          type: string
      - name: created_at
        in: query
        description: The time at which the authentication was created.
        schema:
          type: string
          format: date
      - name: currency_code
        in: query
        description: Alphabetical ISO 4217 currency code for the sale amount.
        schema:
          maxLength: 3
          minLength: 3
          type: string
      - name: entity_id
        in: query
        description: The ID of the entity, which this authentication belongs to.
        schema:
          type: string
      - name: threeds_contract_id
        in: query
        description: The ID of the threeDSContractId used.
        schema:
          type: string
      - name: transaction_id
        in: query
        description: To complete the transaction, the value is required to be passed on the Cardinal.Continue().
        schema:
          type: string
      - name: authentication.acs_rendering_type
        in: query
        description: 'Identifies the UI Type the ACS will use to complete the challenge. NOTE: Only available for App transactions using the Cardinal Mobile SDK and is optional for an Issuer to return.'
        schema:
          type: string
      - name: authentication.acs_transaction_id
        in: query
        description: Unique transaction identifier assigned by the ACS to identify a single transaction.
        schema:
          type: string
      - name: authentication.acs_url
        in: query
        description: 'The fully qualified URL to redirect the Consumer to complete the Consumer Authentication transaction. NOTE: Available if Enrolled = Y'
        schema:
          type: string
      - name: authentication.authentication_type
        in: query
        description: 'Indicates the type of authentication that will be used to challenge the card holder. Possible Values: 01 - Static 02 - Dynamic 03 - OOB (Out of Band)'
        schema:
          type: string
      - name: authentication.authorization_payload
        in: query
        description: The Base64 encoded JSON Payload of CB specific Authorization Values returned in the Frictionless Flow.
        schema:
          pattern: ^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$
          type: string
      - name: authentication.card_brand
        in: query
        description: Card Brand
        schema:
          type: string
      - name: authentication.cardholder_info
        in: query
        description: Additional text provided by the Issuing Bank to the Cardholder during a Frictionless transaction and was not authenticated by the ACS.  The Issuing Bank can optionally support this value.
        schema:
          type: string
      - name: authentication.cavv_algorithm
        in: query
        description: "Indicates the algorithm used to generate the CAVV value. Possible Values: \n 2 - CVV with ATN 3 - Mastercard SPA algorithm"
        schema:
          type: string
      - name: authentication.cavv
        in: query
        description: Cardholder Authentication Verification Value (CAVV). This value should be appended to the authorization message signifying that the transaction has been successfully authenticated. It will be encoded according to the Merchant's configuration in either Base64 encoding or Hex encoding. A Base64 encoding Merchant configuration will produce values of 28 or 32 characters. A Hex encoding Merchant configuration will produce values of 40 or 48 characters. The value when decoded will either be 20 bytes for CAVV.
        schema:
          type: string
      - name: authentication.challenge_cancel
        in: query
        description: "An indicator as to why the transaction was canceled. Possible Values: \n 01 - Cardholder selected Cancel 02 - Reserved for future EMVCo use (values invalid until defined by EMVCo). 03 - Transaction Timed Out—Decoupled Authentication 04 - Transaction timed out at ACS—other timeouts 05 - Transaction Timed out at ACS - First CReq not received by ACS 06 - Transaction Error 07 - Unknown 08 = Transaction Timed Out at SDK NOTE: Only present when the Consumer cancels the challenge. Decoupled authentication is not supported at this time."
        schema:
          type: string
          enum:
          - '01'
          - '02'
          - '03'
          - '04'
          - '05'
          - '06'
          - '07'
          - '8.0'
      - name: authentication.challenge_required
        in: query
        description: 'Indicates whether a challenge is required to complete authentication. For example, regional mandates. Possible Values: Y - Challenge Required N - Challenge Not Required'
        schema:
          type: string
      - name: authentication.ds_transaction_id
        in: query
        description: 'Unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction. NOTE: Required for Mastercard Identity Check transaction in Authorization -  Only available in EMV 3DS (3DS 2.0) transactions'
        schema:
          type: string
      - name: authentication.eci_flag
        in: query
        description: 'Electronic Commerce Indicator (ECI). The ECI value is part of the 2 data elements that indicate the transaction was processed electronically. This should be passed on the authorization transaction to the Gateway/Processor. Possible Values: 02 or 05 - Fully Authenticated Transaction 01 or 06 - Attempted Authentication Transaction 00 or 07 - Non 3D Secure Transaction Mastercard - 02, 01, 00 VISA - 05, 06, 07 AMEX - 05, 06, 07 JCB - 05, 06, 07 DINERS CLUB - 05, 06, 07 NOTE: 3DS 2.0 field'
        schema:
          type: string
      - name: authentication.enrolled
        in: query
        description: "Status of Authentication eligibility. \n Possible Values: \n Y - Yes, Bank is participating in 3D Secure protocol and will return the ACSUrl \n N - No, Bank is not participating in 3D Secure protocol \n U - Unavailable, The DS or ACS is not available for authentication at the time of the request \n B - Bypass, Merchant authentication rule is triggered to bypass authentication in this use case \n NOTE: If the Enrolled value is NOT Y, then the Consumer is NOT eligible for Authentication."
        schema:
          type: string
      - name: authentication.error_desc
        in: query
        description: 'Application error description for the associated error number(s). NOTE: Multiple error descriptions are separated by a comma.'
        schema:
          type: string
      - name: authentication.error_no
        in: query
        description: 'Application error number(s). A non-zero value represents the error encountered while attempting to process the message request. NOTE: Multiple error numbers are separated by a comma.'
        schema:
          type: string
      - name: authentication.network_score
        in: query
        description: The global score calculated by the CB Scoring platform.
        schema:
          maxLength: 2
          type: string
      - name: authentication.order_id
        in: query
        description: 3DS server generated order identifier. Used to link multiple actions on a single order to a single identifier. Mod-10 compliant and unique BIN range to 3DS services.
        schema:
          type: string
      - name: authentication.pares_status
        in: query
        description: 'Transactions status result identifier. Possible Values: Y - Successful Authentication N - Failed Authentication U - Unable to Complete Authentication A - Successful Attempts Transaction C - Challenge Required for Authentication R - Authentication Rejected (Merchant must not submit for authorization) NOTE: Statuses of C and R only apply to Consumer Authentication 2.0.,'
        schema:
          type: string
      - name: authentication.payload
        in: query
        description: 'The encoded payment request generated by Centinel. NOTE: Available if Enrolled = Y'
        schema:
          type: string
      - name: authentication.reason_code
        in: query
        description: The error code indicating a problem with this transaction.
        schema:
          type: string
      - name: authentication.reason_desc
        in: query
        description: 'Text and additional detail about the error for this transaction. NOTE: This field concatenates the errorDescription and errorDetail from the authentication response message'
        schema:
          type: string
      - name: authentication.signature_verification
        in: query
        description: 'Transaction Signature status identifier. Possible Values: Y - Indicates that the signature of the PARes has been validated successfully and the message contents can be trusted. N - Indicates that the PARes could not be validated. This result could be for a variety of reasons; tampering, certificate expiration, etc., and the result should not be trusted.'
        schema:
          type: string
      - name: authentication.status_reason
        in: query
        description: 'Provides additional information as to why the PAResStatus has the specific value. NOTE: Required for Payment (e.g. Authentication Indicator equals 01 on Lookup Request) transactions when PAResStatus is equal to N, U, or R in the Lookup Response.'
        schema:
          type: string
      - name: authentication.threeds_version
        in: query
        description: "This field contains the 3DS version that was used to process the transaction. \n Possible Values: \n 1.0.2 \n 2.1.0 \n NOTE: Required for Mastercard Identity Check transactions in Authorization"
        schema:
          type: string
      - name: authentication.xid
        in: query
        description: 'Third Party Token that is returned from the token provider after a card number is specified on the request. NOTE: This field is returned if Tokenization is enabled in the Merchant profile setting AND the Merchant is using a third party token provider.'
        schema:
          type: string
      - name: encrypted_card
        in: query
        description: "Client encrypted cardholder data.  The cardholder data encrypted using the Verifone provided public key.   This needs to be provided in base64 encoded format.  The data to encrypt is a JSON with possible tags being cardNumber, sequenceNumber, cardholderName,  startMonth, startYear, expiryMonth, expiryYear, cvv.  Additionally a tag called captureTime must be presenting indicating the time the card was captured in UTC  in format RFC 3339, section 5.6. eg. 2019-08-24T14:15:22Z.  Sample JSON to encrypt: \n \n        {\n            \"captureTime\": '2019-08-24T14:15:22Z',\n            \"cardNumber\": '5555555555554444',\n            \"expiryMonth\": 1,\n            \"expiryYear\": 2025,\n            \"cvv\": '123',\n        } \n Note: encrypted_card is required if card or reuse_token is not provided."
        schema:
          type: string
      - name: public_key_alias
        in: query
        description: "The alias for the public key used to encrypt this card. \n Note: public_key_alias is required if card or reuse_token is not provided."
        schema:
          type: string
      - name: _id!
        in: query
        description: ThreeDSAuthentication id
        schema:
          type: string
      - name: amount!
        in: query
        description: The amount of the transaction.
        schema:
          maximum: 9007199254740991
          type: number
      - name: card!
        in: query
        description: The ID of the card that is checked for enrollment.
        schema:
          type: string
      - name: created_at!
        in: query
        description: The time at which the authentication was created.
        schema:
          type: string
          format: date
      - name: currency_code!
        in: query
        description: Alphabetical ISO 4217 currency code for the sale amount.
        schema:
          maxLength: 3
          minLength: 3
          type: string
      - name: entity_id!
        in: query
        description: The ID of the entity, which this authentication belongs to.
        schema:
          type: string
      - name: threeds_contract_id!
        in: query
        description: The ID of the threeDSContractId used.
        schema:
          type: string
      - name: transaction_id!
        in: query
        description: To complete the transaction, the value is required to be passed on the Cardinal.Continue().
        schema:
          type: string
      - name: authentication.acs_rendering_type!
        in: query
        description: 'Identifies the UI Type the ACS will use to complete the challenge. NOTE: Only available for App transactions using the Cardinal Mobile SDK and is optional for an Issuer to return.'
        schema:
          type: string
      - name: authentication.acs_transaction_id!
        in: query
        description: Unique transaction identifier assigned by the ACS to identify a single transaction.
        schema:
          type: string
      - name: authentication.acs_url!
        in: query
        description: 'The fully qualified URL to redirect the Consumer to complete the Consumer Authentication transaction. NOTE: Available if Enrolled = Y'
        schema:
          type: string
      - name: authentication.authentication_type!
        in: query
        description: 'Indicates the type of authentication that will be used to challenge the card holder. Possible Values: 01 - Static 02 - Dynamic 03 - OOB (Out of Band)'
        schema:
          type: string
      - name: authentication.authorization_payload!
        in: query
        description: The Base64 encoded JSON Payload of CB specific Authorization Values returned in the Frictionless Flow.
        schema:
          pattern: ^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$
          type: string
      - name: authentication.card_brand!
        in: query
        description: Card Brand
        schema:
          type: string
      - name: authentication.cardholder_info!
        in: query
        description: Additional text provided by the Issuing Bank to the Cardholder during a Frictionless transaction and was not authenticated by the ACS.  The Issuing Bank can optionally support this value.
        schema:
          type: string
      - name: authentication.cavv_algorithm!
        in: query
        description: "Indicates the algorithm used to generate the CAVV value. Possible Values: \n 2 - CVV with ATN 3 - Mastercard SPA algorithm"
        schema:
          type: string
      - name: authentication.cavv!
        in: query
        description: Cardholder Authentication Verification Value (CAVV). This value should be appended to the authorization message signifying that the transaction has been successfully authenticated. It will be encoded according to the Merchant's configuration in either Base64 encoding or Hex encoding. A Base64 encoding Merchant configuration will produce values of 28 or 32 characters. A Hex encoding Merchant configuration will produce values of 40 or 48 characters. The value when decoded will either be 20 bytes for CAVV.
        schema:
          type: string
      - name: authentication.challenge_cancel!
        in: query
        description: "An indicator as to why the transaction was canceled. Possible Values: \n 01 - Cardholder selected Cancel 02 - Reserved for future EMVCo use (values invalid until defined by EMVCo). 03 - Transaction Timed Out—Decoupled Authentication 04 - Transaction timed out at ACS—other timeouts 05 - Transaction Timed out at ACS - First CReq not received by ACS 06 - Transaction Error 07 - Unknown 08 = Transaction Timed Out at SDK NOTE: Only present when the Consumer cancels the challenge. Decoupled authentication is not supported at this time."
        schema:
          type: string
          enum:
          - '01'
          - '02'
          - '03'
          - '04'
          - '05'
          - '06'
          - '07'
          - '8.0'
      - name: authentication.challenge_required!
        in: query
        description: 'Indicates whether a challenge is required to complete authentication. For example, regional mandates. Possible Values: Y - Challenge Required N - Challenge Not Required'
        schema:
          type: string
      - name: authentication.ds_transaction_id!
        in: query
        description: 'Unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction. NOTE: Required for Mastercard Identity Check transaction in Authorization -  Only available in EMV 3DS (3DS 2.0) transactions'
        schema:
          type: string
      - name: authentication.eci_flag!
        in: query
        description: 'Electronic Commerce Indicator (ECI). The ECI value is part of the 2 data elements that indicate the transaction was processed electronically. This should be passed on the authorization transaction to the Gateway/Processor. Possible Values: 02 or 05 - Fully Authenticated Transaction 01 or 06 - Attempted Authentication Transaction 00 or 07 - Non 3D Secure Transaction Mastercard - 02, 01, 00 VISA - 05, 06, 07 AMEX - 05, 06, 07 JCB - 05, 06, 07 DINERS CLUB - 05, 06, 07 NOTE: 3DS 2.0 field'
        schema:
          type: string
      - name: authentication.enrolled!
        in: query
        description: "Status of Authentication eligibility. \n Possible Values: \n Y - Yes, Bank is participating in 3D Secure protocol and will return the ACSUrl \n N - No, Bank is not participating in 3D Secure protocol \n U - Unavailable, The DS or ACS is not available for authentication at the time of the request \n B - Bypass, Merchant authentication rule is triggered to bypass authentication in this use case \n NOTE: If the Enrolled value is NOT Y, then the Consumer is NOT eligible for Authentication."
        schema:
          type: string
      - name: authentication.error_desc!
        in: query
        description: 'Application error description for the associated error number(s). NOTE: Multiple error descriptions are separated by a comma.'
        schema:
          type: string
      - name: authentication.error_no!
        in: query
        description: 'Application error number(s). A non-zero value represents the error encountered while attempting to process the message request. NOTE: Multiple error numbers are separated by a comma.'
        schema:
          type: string
      - name: authentication.network_score!
        in: query
        description: The global score calculated by the CB Scoring platform.
        schema:
          maxLength: 2
          type: string
      - name: authentication.order_id!
        in: query
        description: 3DS server generated order identifier. Used to link multiple actions on a single order to a single identifier. Mod-10 compliant and unique BIN range to 3DS services.
        schema:
          type: string
      - name: authentication.pares_status!
        in: query
        description: 'Transactions status result identifier. Possible Values: Y - Successful Authentication N - Failed Authentication U - Unable to Complete Authentication A - Successful Attempts Transaction C - Challenge Required for Authentication R - Authentication Rejected (Merchant must not submit for authorization) NOTE: Statuses of C and R only apply to Consumer Authentication 2.0.,'
        schema:
          type: string
      - name: authentication.payload!
        in: query
        description: 'The encoded payment request generated by Centinel. NOTE: Available if Enrolled = Y'
        schema:
          type: string
      - name: authentication.reason_code!
        in: query
        description: The error code indicating a problem with this transaction.
        schema:
          type: string
      - name: authentication.reason_desc!
        in: query
        description: 'Text and additional detail about the error for this transaction. NOTE: This field concatenates the errorDescription and errorDetail from the authentication response message'
        schema:
          type: string
      - name: authentication.signature_verification!
        in: query
        description: 'Transaction Signature status identifier. Possible Values: Y - Indicates that the signature of the PARes has been validated successfully and the message contents can be trusted. N - Indicates that the PARes could not be validated. This result could be for a variety of reasons; tampering, certificate expiration, etc., and the result should not be trusted.'
        schema:
          type: string
      - name: authentication.status_reason!
        in: query
        description: 'Provides additional information as to why the PAResStatus has the specific value. NOTE: Required for Payment (e.g. Authentication Indicator equals 01 on Lookup Request) transactions when PAResStatus is equal to N, U, or R in the Lookup Response.'
        schema:
          type: string
      - name: authentication.threeds_version!
        in: query
        description: "This field contains the 3DS version that was used to process the transaction. \n Possible Values: \n 1.0.2 \n 2.1.0 \n NOTE: Required for Mastercard Identity Check transactions in Authorization"
        schema:
          type: string
      - name: authentication.xid!
        in: query
        description: 'Third Party Token that is returned from the token provider after a card number is specified on the request. NOTE: This field is returned if Tokenization is enabled in the Merchant profile setting AND the Merchant is using a third party token provider.'
        schema:
          type: string
      - name: encrypted_card!
        in: query
        description: "Client encrypted cardholder data.  The cardholder data encrypted using the Verifone provided public key.   This needs to be provided in base64 encoded format.  The data to encrypt is a JSON with possible tags being cardNumber, sequenceNumber, cardholderName,  startMonth, startYear, expiryMonth, expiryYear, cvv.  Additionally a tag called captureTime must be presenting indicating the time the card was captured in UTC  in format RFC 3339, section 5.6. eg. 2019-08-24T14:15:22Z.  Sample JSON to encrypt: \n \n        {\n            \"captureTime\": '2019-08-24T14:15:22Z',\n            \"cardNumber\": '5555555555554444',\n            \"expiryMonth\": 1,\n            \"expiryYear\": 2025,\n            \"cvv\": '123',\n        } \n Note: encrypted_card is required if card or reuse_token is not provided."
        schema:
          type: string
      - name: public_key_alias!
        in: query
        description: "The alias for the public key used to encrypt this card. \n Note: public_key_alias is required if card or reuse_token is not provided."
        schema:
          type: string
      - name: _id~
        in: query
        description: ThreeDSAuthentication id
        schema:
          type: string
      - name: card~
        in: query
        description: The ID of the card that is checked for enrollment.
        schema:
          type: string
      - name: currency_code~
        in: query
        description: Alphabetical ISO 4217 currency code for the sale amount.
        schema:
          maxLength: 3
          minLength: 3
          type: string
      - name: entity_id~
        in: query
        description: The ID of the entity, which this authentication belongs to.
        schema:
          type: string
      - name: threeds_contract_id~
        in: query
        description: The ID of the threeDSContractId used.
        schema:
          type: string
      - name: transaction_id~
        in: query
        description: To complete the transaction, the value is required to be passed on the Cardinal.Continue().
        schema:
          type: string
      - name: authentication.acs_rendering_type~
        in: query
        description: 'Identifies the UI Type the ACS will use to complete the challenge. NOTE: Only available for App transactions using the Cardinal Mobile SDK and is optional for an Issuer to return.'
        schema:
          type: string
      - name: authentication.acs_transaction_id~
        in: query
        description: Unique transaction identifier assigned by the ACS to identify a single transaction.
        schema:
          type: string
      - name: authentication.acs_url~
        in: query
        description: 'The fully qualified URL to redirect the Consumer to complete the Consumer Authentication transaction. NOTE: Available if Enrolled = Y'
        schema:
          type: string
      - name: authentication.authentication_type~
        in: query
        description: 'Indicates the type of authentication that will be used to challenge the card holder. Possible Values: 01 - Static 02 - Dynamic 03 - OOB (Out of Band)'
        schema:
          type: string
      - name: authentication.authorization_payload~
        in: query
        description: The Base64 encoded JSON Payload of CB specific Authorization Values returned in the Frictionless Flow.
        schema:
          pattern: ^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$
          type: string
      - name: authentication.card_brand~
        in: query
        description: Card Brand
        schema:
          type: string
      - name: authentication.cardholder_info~
        in: query
        description: Additional text provided by the Issuing Bank to the Cardholder during a Frictionless transaction and was not authenticated by the ACS.  The Issuing Bank can optionally support this value.
        schema:
          type: string
      - name: authentication.cavv_algorithm~
        in: query
        description: "Indicates the algorithm used to generate the CAVV value. Possible Values: \n 2 - CVV with ATN 3 - Mastercard SPA algorithm"
        schema:
          type: string
      - name: authenticati

# --- truncated at 32 KB (51 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/verifone/refs/heads/main/openapi/verifone-3ds-authentication-api-openapi.yml