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.
}
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.

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
}
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.