AdditionalTransactionProcessingOptions

Contains additional information relevant to processing the payment.

JSON representation
{

  // Union field processing_network_type can be only one of the following:
  "userSelectedProcessingNetworkType": enum (UserSelectedProcessingNetworkType),
  "userSelectedProcessingNetworkTypeNotApplicable": {
    object (Empty)
  }
  // End of list of possible types for union field processing_network_type.

  // Union field electronic_commerce_indicator_option can be only one of the
  // following:
  "electronicCommerceIndicator": string,
  "electronicCommerceIndicatorNotApplicable": {
    object (Empty)
  }
  // End of list of possible types for union field
  // electronic_commerce_indicator_option.

  // Union field authentication_details can be only one of the following:
  "threeDSecureAuthenticationDetails": {
    object (ThreeDSecureAuthenticationData)
  },
  "threeDSecureNotAppplicable": {
    object (Empty)
  }
  // End of list of possible types for union field authentication_details.

  // Union field stored_credentials can be only one of the following:
  "storedCredentialTransactionInformation": {
    object (StoredCredentialTransactionInformation)
  },
  "storedCredentialTransactionInformationNotApplicable": {
    object (Empty)
  }
  // End of list of possible types for union field stored_credentials.

  // Union field sca_exemption_type can be only one of the following:
  "scaExemptionNotApplicable": {
    object (Empty)
  },
  "scaLowValueTransaction": {
    object (Empty)
  }
  // End of list of possible types for union field sca_exemption_type.
}
Fields
Union field processing_network_type. REQUIRED: Indicates the user's preference on which network type the payment should be processed. processing_network_type can be only one of the following:
userSelectedProcessingNetworkType

enum (UserSelectedProcessingNetworkType)

User-provided preference for network type.

userSelectedProcessingNetworkTypeNotApplicable

object (Empty)

User selection not relevant to this card or transaction.

Union field electronic_commerce_indicator_option. REQUIRED: The numeric ECI value to be sent to the network. electronic_commerce_indicator_option can be only one of the following:
electronicCommerceIndicator

string

The Electronic Commerce Indicator representing a numeric value defined by the card network. This should be sent to the network with the transaction.

electronicCommerceIndicatorNotApplicable

object (Empty)

An ECI is not used for this transaction.

Union field authentication_details. REQUIRED: This union contains the authentication details of the payment processed. authentication_details can be only one of the following:
threeDSecureAuthenticationDetails

object (ThreeDSecureAuthenticationData)

Proof of a successful 3DS2 authentication.

threeDSecureNotAppplicable

object (Empty)

3DS2 was not performed for this transaction.

Union field stored_credentials. REQUIRED: Information pertaining to the usage of stored credentials. stored_credentials can be only one of the following:
storedCredentialTransactionInformation

object (StoredCredentialTransactionInformation)

Information pertaining to the usage of stored credentials within the CIT/MIT framework.

storedCredentialTransactionInformationNotApplicable

object (Empty)

Stored credential information is not applicable for this payment.

Union field sca_exemption_type. OPTIONAL: Provides information about the type of SCA exemption that is requested for this transaction from the issuer. sca_exemption_type can be only one of the following:
scaExemptionNotApplicable

object (Empty)

No exemption is requested for this transaction.

scaLowValueTransaction

object (Empty)

A low value exemption is requested for this transaction.

UserSelectedProcessingNetworkType

Used to indicate the desired network type for the transaction to be processed on.

Enums
PROCESSING_NETWORK_TYPE_UNSPECIFIED Do not ever set this default value!
CREDIT The payment should be processed on a credit network.
DEBIT The payment should be processed on a debit network.

ThreeDSecureAuthenticationData

Contains 3-D Secure v2 Authentication details relavent to payment processing.

JSON representation
{
  "directoryServerTransactionId": string,
  "cavv": string,
  "threeDsVersion": string,
  "threeDsServerTransactionId": string,
  "transStatus": string
}
Fields
directoryServerTransactionId

string

REQUIRED: Unique transaction identifier assigned and returned by the directory server as a part of successful authentication result. As per the EMVCo 3-D Secure spec v2, this is a UUID following IETF RFC 4122.

cavv

string

REQUIRED: Cardholder Authentication Verification Value, the proof of authentication, returned by the ACS and is in Base64 format.

threeDsVersion

string

REQUIRED: The version of 3DS v2 used to process the authentication. The field is populated with the value returned by the ACS.

threeDsServerTransactionId

string

OPTIONAL: Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction.

transStatus

string

OPTIONAL: The final status of the 3DS flow which resulted in the cardholder authentication information associated with this request. Refer to EMVCo's 3DS specifications for additional details.