Class: CyberSourceMergedSpec::ConsumerAuthenticationInformation

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/cyber_source_merged_spec/models/consumer_authentication_information.rb

Overview

ConsumerAuthenticationInformation Model.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(cavv: SKIP, transaction_flow_indicator: SKIP, cavv_algorithm: SKIP, eci_raw: SKIP, pares_status: SKIP, veres_enrolled: SKIP, xid: SKIP, ucaf_collection_indicator: SKIP, ucaf_authentication_data: SKIP, strong_authentication: SKIP, directory_server_transaction_id: SKIP, pa_specification_version: SKIP, authentication_type: SKIP, response_access_token: SKIP, acs_transaction_id: SKIP, acs_window_size: SKIP, alternate_authentication_data: SKIP, alternate_authentication_date: SKIP, alternate_authentication_method: SKIP, authentication_date: SKIP, authentication_transaction_id: SKIP, challenge_cancel_code: SKIP, challenge_code: SKIP, challenge_status: SKIP, customer_card_alias: SKIP, decoupled_authentication_indicator: SKIP, decoupled_authentication_max_time: SKIP, default_card: SKIP, device_channel: SKIP, installment_total_count: SKIP, merchant_fraud_rate: SKIP, marketing_opt_in: SKIP, marketing_source: SKIP, mcc: SKIP, merchant_score: SKIP, message_category: SKIP, network_score: SKIP, npa_code: SKIP, override_payment_method: SKIP, override_country_code: SKIP, prior_authentication_data: SKIP, prior_authentication_method: SKIP, prior_authentication_reference_id: SKIP, prior_authentication_time: SKIP, product_code: SKIP, return_url: SKIP, requestor_id: SKIP, requestor_initiated_authentication_indicator: SKIP, requestor_name: SKIP, reference_id: SKIP, sdk_max_timeout: SKIP, secure_corporate_payment_indicator: SKIP, transaction_mode: SKIP, white_list_status: SKIP, authentication_brand: SKIP, effective_authentication_type: SKIP, signed_pares_status_reason: SKIP, signed_pares: SKIP, acs_reference_number: SKIP, ds_reference_number: SKIP, score_request: SKIP, additional_properties: nil) ⇒ ConsumerAuthenticationInformation

Returns a new instance of ConsumerAuthenticationInformation.



690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 690

def initialize(cavv: SKIP, transaction_flow_indicator: SKIP,
               cavv_algorithm: SKIP, eci_raw: SKIP, pares_status: SKIP,
               veres_enrolled: SKIP, xid: SKIP,
               ucaf_collection_indicator: SKIP,
               ucaf_authentication_data: SKIP, strong_authentication: SKIP,
               directory_server_transaction_id: SKIP,
               pa_specification_version: SKIP, authentication_type: SKIP,
               response_access_token: SKIP, acs_transaction_id: SKIP,
               acs_window_size: SKIP, alternate_authentication_data: SKIP,
               alternate_authentication_date: SKIP,
               alternate_authentication_method: SKIP,
               authentication_date: SKIP,
               authentication_transaction_id: SKIP,
               challenge_cancel_code: SKIP, challenge_code: SKIP,
               challenge_status: SKIP, customer_card_alias: SKIP,
               decoupled_authentication_indicator: SKIP,
               decoupled_authentication_max_time: SKIP, default_card: SKIP,
               device_channel: SKIP, installment_total_count: SKIP,
               merchant_fraud_rate: SKIP, marketing_opt_in: SKIP,
               marketing_source: SKIP, mcc: SKIP, merchant_score: SKIP,
               message_category: SKIP, network_score: SKIP, npa_code: SKIP,
               override_payment_method: SKIP, override_country_code: SKIP,
               prior_authentication_data: SKIP,
               prior_authentication_method: SKIP,
               prior_authentication_reference_id: SKIP,
               prior_authentication_time: SKIP, product_code: SKIP,
               return_url: SKIP, requestor_id: SKIP,
               requestor_initiated_authentication_indicator: SKIP,
               requestor_name: SKIP, reference_id: SKIP,
               sdk_max_timeout: SKIP,
               secure_corporate_payment_indicator: SKIP,
               transaction_mode: SKIP, white_list_status: SKIP,
               authentication_brand: SKIP,
               effective_authentication_type: SKIP,
               signed_pares_status_reason: SKIP, signed_pares: SKIP,
               acs_reference_number: SKIP, ds_reference_number: SKIP,
               score_request: SKIP, additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @cavv = cavv unless cavv == SKIP
  unless transaction_flow_indicator == SKIP
    @transaction_flow_indicator =
      transaction_flow_indicator
  end
  @cavv_algorithm = cavv_algorithm unless cavv_algorithm == SKIP
  @eci_raw = eci_raw unless eci_raw == SKIP
  @pares_status = pares_status unless pares_status == SKIP
  @veres_enrolled = veres_enrolled unless veres_enrolled == SKIP
  @xid = xid unless xid == SKIP
  unless ucaf_collection_indicator == SKIP
    @ucaf_collection_indicator =
      ucaf_collection_indicator
  end
  @ucaf_authentication_data = ucaf_authentication_data unless ucaf_authentication_data == SKIP
  @strong_authentication = strong_authentication unless strong_authentication == SKIP
  unless directory_server_transaction_id == SKIP
    @directory_server_transaction_id =
      directory_server_transaction_id
  end
  @pa_specification_version = pa_specification_version unless pa_specification_version == SKIP
  @authentication_type = authentication_type unless authentication_type == SKIP
  @response_access_token = response_access_token unless response_access_token == SKIP
  @acs_transaction_id = acs_transaction_id unless acs_transaction_id == SKIP
  @acs_window_size = acs_window_size unless acs_window_size == SKIP
  unless alternate_authentication_data == SKIP
    @alternate_authentication_data =
      alternate_authentication_data
  end
  unless alternate_authentication_date == SKIP
    @alternate_authentication_date =
      alternate_authentication_date
  end
  unless alternate_authentication_method == SKIP
    @alternate_authentication_method =
      alternate_authentication_method
  end
  @authentication_date = authentication_date unless authentication_date == SKIP
  unless authentication_transaction_id == SKIP
    @authentication_transaction_id =
      authentication_transaction_id
  end
  @challenge_cancel_code = challenge_cancel_code unless challenge_cancel_code == SKIP
  @challenge_code = challenge_code unless challenge_code == SKIP
  @challenge_status = challenge_status unless challenge_status == SKIP
  @customer_card_alias = customer_card_alias unless customer_card_alias == SKIP
  unless decoupled_authentication_indicator == SKIP
    @decoupled_authentication_indicator =
      decoupled_authentication_indicator
  end
  unless decoupled_authentication_max_time == SKIP
    @decoupled_authentication_max_time =
      decoupled_authentication_max_time
  end
  @default_card = default_card unless default_card == SKIP
  @device_channel = device_channel unless device_channel == SKIP
  @installment_total_count = installment_total_count unless installment_total_count == SKIP
  @merchant_fraud_rate = merchant_fraud_rate unless merchant_fraud_rate == SKIP
  @marketing_opt_in = marketing_opt_in unless marketing_opt_in == SKIP
  @marketing_source = marketing_source unless marketing_source == SKIP
  @mcc = mcc unless mcc == SKIP
  @merchant_score = merchant_score unless merchant_score == SKIP
  @message_category = message_category unless message_category == SKIP
  @network_score = network_score unless network_score == SKIP
  @npa_code = npa_code unless npa_code == SKIP
  @override_payment_method = override_payment_method unless override_payment_method == SKIP
  @override_country_code = override_country_code unless override_country_code == SKIP
  unless prior_authentication_data == SKIP
    @prior_authentication_data =
      prior_authentication_data
  end
  unless prior_authentication_method == SKIP
    @prior_authentication_method =
      prior_authentication_method
  end
  unless prior_authentication_reference_id == SKIP
    @prior_authentication_reference_id =
      prior_authentication_reference_id
  end
  unless prior_authentication_time == SKIP
    @prior_authentication_time =
      prior_authentication_time
  end
  @product_code = product_code unless product_code == SKIP
  @return_url = return_url unless return_url == SKIP
  @requestor_id = requestor_id unless requestor_id == SKIP
  unless requestor_initiated_authentication_indicator == SKIP
    @requestor_initiated_authentication_indicator =
      requestor_initiated_authentication_indicator
  end
  @requestor_name = requestor_name unless requestor_name == SKIP
  @reference_id = reference_id unless reference_id == SKIP
  @sdk_max_timeout = sdk_max_timeout unless sdk_max_timeout == SKIP
  unless secure_corporate_payment_indicator == SKIP
    @secure_corporate_payment_indicator =
      secure_corporate_payment_indicator
  end
  @transaction_mode = transaction_mode unless transaction_mode == SKIP
  @white_list_status = white_list_status unless white_list_status == SKIP
  @authentication_brand = authentication_brand unless authentication_brand == SKIP
  unless effective_authentication_type == SKIP
    @effective_authentication_type =
      effective_authentication_type
  end
  unless signed_pares_status_reason == SKIP
    @signed_pares_status_reason =
      signed_pares_status_reason
  end
  @signed_pares = signed_pares unless signed_pares == SKIP
  @acs_reference_number = acs_reference_number unless acs_reference_number == SKIP
  @ds_reference_number = ds_reference_number unless ds_reference_number == SKIP
  @score_request = score_request unless score_request == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#acs_reference_numberString

Unique identifier assigned by the EMVCo Secretariat upon Testing and Approval.

Returns:

  • (String)


528
529
530
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 528

def acs_reference_number
  @acs_reference_number
end

#acs_transaction_idString

Unique transaction identifier assigned by the ACS to identify a single transaction. This field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.

Returns:

  • (String)


124
125
126
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 124

def acs_transaction_id
  @acs_transaction_id
end

#acs_window_sizeString

An override field that a merchant can pass in to set the challenge window size to display to the end cardholder. The ACS (Active Control Server) will reply with content that is formatted appropriately to this window size to allow for the best user experience. The sizes are width x height in pixels of the window displayed in the cardholder browser window. 01 - 250x400 02 - 390x400 03 - 500x600 04 - 600x400 05 - Full page

Returns:

  • (String)


137
138
139
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 137

def acs_window_size
  @acs_window_size
end

#alternate_authentication_dataString

Data that documents and supports a specific authentication process.

Returns:

  • (String)


141
142
143
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 141

def alternate_authentication_data
  @alternate_authentication_data
end

#alternate_authentication_dateString

Date and time in UTC of the cardholder authentication. Format: YYYYMMDDHHMM

Returns:

  • (String)


146
147
148
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 146

def alternate_authentication_date
  @alternate_authentication_date
end

#alternate_authentication_methodString

Mechanism used by the cardholder to authenticate to the 3D Secure requestor. Possible values:

  • 01: No authentication occurred
  • 02: Login using merchant system credentials
  • 03: Login using Federated ID
  • 04: Login using issuer credentials
  • 05: Login using third-party authenticator
  • 06: Login using FIDO Authenticator

Returns:

  • (String)


158
159
160
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 158

def alternate_authentication_method
  @alternate_authentication_method
end

#authentication_brandString

Indicates which directory server was used while authentication process, this data is useful in case of scenarios when domestic scheme directory server is not present and authentication fallbacks to global scheme directory server. Possible values:

  • VISA - Returned for Mada VISA Co-badged cards, when authentication falls back to VISA Directory Server
  • MASTERCARD - Returned for Mada MasterCard Co-badged cards, when authentication falls back to MasterCard Directory Server

Returns:

  • (String)


497
498
499
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 497

def authentication_brand
  @authentication_brand
end

#authentication_dateString

The date/time of the authentication at the 3DS servers. RISK update authorization service in auth request payload with value returned in consumerAuthenticationInformation.alternateAuthenticationData if merchant calls via CYBS or field can be provided by merchant in authorization request if calling an external 3DS provider. This field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC. Format: YYYYMMDDHHMMSS

Returns:

  • (String)


171
172
173
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 171

def authentication_date
  @authentication_date
end

#authentication_transaction_idString

Payer authentication transaction identifier passed to link the check enrollment and validate authentication messages.For Rupay,this is passed only in Re-Send OTP usecase. Note: Required for Standard integration, Rupay Seamless server to server integration for enroll service. Required for Hybrid integration for validate service.

Returns:

  • (String)


181
182
183
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 181

def authentication_transaction_id
  @authentication_transaction_id
end

#authentication_typeString

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) 04 - Decoupled 20 - OTP hosted at merchant end. (Rupay S2S flow) NOTE: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.

Returns:

  • (String)


110
111
112
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 110

def authentication_type
  @authentication_type
end

#cavvString

Cardholder authentication verification value (CAVV).

Returns:

  • (String)


14
15
16
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 14

def cavv
  @cavv
end

#cavv_algorithmString

Algorithm used to generate the CAVV for Visa Secure or the UCAF authentication data for Mastercard Identity Check.

Returns:

  • (String)


25
26
27
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 25

def cavv_algorithm
  @cavv_algorithm
end

#challenge_cancel_codeString

An indicator as to why the transaction was canceled. Possible Values:

  • 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

Returns:

  • (String)


195
196
197
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 195

def challenge_cancel_code
  @challenge_cancel_code
end

#challenge_codeString

Possible values:

  • 01: No preference
  • 02: No challenge request
  • 03: Challenge requested (3D Secure requestor preference)
  • 04: Challenge requested (mandate)
  • 05: No challenge requested (transactional risk analysis is already performed)
  • 06: No challenge requested (Data share only)
  • 07: No challenge requested (strong consumer authentication is already performed)
  • 08: No challenge requested (utilize whitelist exemption if no challenge required)
  • 09: Challenge requested (whitelist prompt requested if challenge required) Note This field will default to 01 on merchant configuration and can be overridden by the merchant. EMV 3D Secure version 2.1.0 supports values 01-04. Version 2.2.0 supports values 01-09.

Returns:

  • (String)


216
217
218
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 216

def challenge_code
  @challenge_code
end

#challenge_statusString

The consumerAuthenticationInformation.challengeCode indicates the authentication type/level, or challenge, that was presented to the cardholder at checkout by the merchant when calling the Carte Bancaire 3DS servers via CYBS RISK services. It conveys to the issuer the alternative authentication methods that the consumer used.

Returns:

  • (String)


225
226
227
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 225

def challenge_status
  @challenge_status
end

#customer_card_aliasString

An alias that uniquely identifies the customer's account and credit card on file. Note This field is required if Tokenization is enabled in the merchant profile settings.

Returns:

  • (String)


232
233
234
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 232

def customer_card_alias
  @customer_card_alias
end

#decoupled_authentication_indicatorString

Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use. Possible Values: Y - Decoupled Authentication is supported and preferred if challenge is necessary N - Do not use Decoupled Authentication Default Value: N

Returns:

  • (String)


243
244
245
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 243

def decoupled_authentication_indicator
  @decoupled_authentication_indicator
end

#decoupled_authentication_max_timeString

Indicates the maximum amount of time that the 3DS Requestor will wait for an ACS (Active control server) to provide the results of a Decoupled Authentication transaction (in minutes). Possible Values: Numeric values between 1 and 10080 accepted.

Returns:

  • (String)


250
251
252
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 250

def decoupled_authentication_max_time
  @decoupled_authentication_max_time
end

#default_cardTrueClass | FalseClass

Indicates that the card being used is the one designated as the primary payment card for purchase. Recommended for Discover ProtectBuy.

Returns:

  • (TrueClass | FalseClass)


256
257
258
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 256

def default_card
  @default_card
end

#device_channelString

Determines the channel that the transaction came through. Possible Values: SDK/Browser/3RI. 3RI - 3DS request initiated.

Returns:

  • (String)


261
262
263
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 261

def device_channel
  @device_channel
end

#directory_server_transaction_idString

The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results. For Cybersource Through Visanet Gateway: The value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification—Directory Server Transaction ID

Returns:

  • (String)


71
72
73
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 71

def directory_server_transaction_id
  @directory_server_transaction_id
end

#ds_reference_numberString

EMVCo-assigned unique identifier. This field is required in Cardholder Initiated 3DS fully authenticated mada transactions. When you request the payer authentication and authorization services separately, get the value for this field from the payerAuthEnrollReply_dsReferenceNumber or payerAuthValidateReply_dsReferenceNumber response field.

Returns:

  • (String)


537
538
539
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 537

def ds_reference_number
  @ds_reference_number
end

#eci_rawString

Raw electronic commerce indicator (ECI).

Returns:

  • (String)


29
30
31
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 29

def eci_raw
  @eci_raw
end

#effective_authentication_typeString

This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows; CH - Challenge FR - Frictionless FD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).

Returns:

  • (String)


506
507
508
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 506

def effective_authentication_type
  @effective_authentication_type
end

#installment_total_countInteger

An integer value greater than 1 indicating the max number of permitted authorizations for installment payments. Note This is required if the merchant and cardholder have agreed to installment payments.

Returns:

  • (Integer)


268
269
270
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 268

def installment_total_count
  @installment_total_count
end

#marketing_opt_inTrueClass | FalseClass

Indicates whether the customer has opted in for marketing offers. Recommended for Discover ProtectBuy.

Returns:

  • (TrueClass | FalseClass)


287
288
289
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 287

def marketing_opt_in
  @marketing_opt_in
end

#marketing_sourceString

Indicates origin of the marketing offer. Recommended for Discover ProtectBuy.

Returns:

  • (String)


292
293
294
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 292

def marketing_source
  @marketing_source
end

#mccString

Merchant category code. Important Required only for Visa Secure transactions in Brazil. Do not use this request field for any other types of transactions.

Returns:

  • (String)


298
299
300
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 298

def mcc
  @mcc
end

#merchant_fraud_rateString

Calculated by merchants as per PSD2** RTS** (EEA** card fraud divided by all EEA card volumes). Possible Values: 1 = Represents fraud rate <=1 2 = Represents fraud rate >1 and <=6 3 = Represents fraud rate >6 and <=13 4 = Represents fraud rate >13 and <=25 5 = Represents fraud rate >25 EEA** = European Economic Area RTS** = Regulatory Technical Standards PSD2** = Payment Services Directive

Returns:

  • (String)


282
283
284
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 282

def merchant_fraud_rate
  @merchant_fraud_rate
end

#merchant_scoreInteger

Risk Score provided by merchants. This is specific for CB transactions.

Returns:

  • (Integer)


302
303
304
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 302

def merchant_score
  @merchant_score
end

#message_categoryString

Category of the message for a specific use case. Possible values:

  • 01: PA- payment authentication
  • 02: NPA- non-payment authentication
  • 03-79: Reserved for EMVCo future use (values invalid until defined by EMVCo)
  • 80-99: Reserved for DS use

Returns:

  • (String)


311
312
313
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 311

def message_category
  @message_category
end

#network_scoreString

The global score calculated by the CB scoring platform and returned to merchants. Possible values:

  • '00' - '99' When you request the payer authentication and authorization services separately, get the value for this field from the pa_network_score reply field.
    This field is supported only for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.

Returns:

  • (String)


323
324
325
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 323

def network_score
  @network_score
end

#npa_codeString

Non-Payer Authentication Indicator. Possible values:

  • 01: Add card
  • 02: Maintain card information
  • 03: Cardholder verification for EMV token
  • 04-80 Reserved for EMVCo
  • 80-90 Reserved DS

Returns:

  • (String)


333
334
335
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 333

def npa_code
  @npa_code
end

#override_country_codeString

Two-character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickre f/countries_alpha_list.pdf)..

Returns:

  • (String)


354
355
356
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 354

def override_country_code
  @override_country_code
end

#override_payment_methodString

Specifies the Brazilian payment account type used for the transaction. This field overrides other payment types that might be specified in the request. Use one of the following values for this field:

  • NA: Not applicable. Do not override other payment types that are specified in the request.
  • CR: Credit card.
  • DB: Debit card.
  • VSAVR: Visa Vale Refeicao
  • VSAVA: Visa Vale Alimentacao Important Required only for Visa Secure transactions in Brazil. Do not use this request field for any other types of transactions.

Returns:

  • (String)


348
349
350
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 348

def override_payment_method
  @override_payment_method
end

#pa_specification_versionString

This field contains 3DS version that was used for Secured Consumer Authentication (SCA). The value for this field should be in the format major.minor.patch version. Valid Values are:

  • 2.1.0 (EMV 3D Secure Version 2.1)
  • 2.2.0 (EMV 3D Secure Version 2.2)
  • 2.3.0 (EMV 3D Secure Version 2.3)
  • 2.4.0 (EMV 3D Secure Version 2.4)
  • 2.5.0 (EMV 3D Secure Version 2.5)
  • 2.6.0 (EMV 3D Secure Version 2.6)
  • 2.7.0 (EMV 3D Secure Version 2.7)
  • 2.8.0 (EMV 3D Secure Version 2.8)
  • 2.9.0 (EMV 3D Secure Version 2.9) For Visa Platform Connect:
    The value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 113 , Field: MC AVV Verification—Program Protocol It will contain one of the following values:
  • 1 (3D Secure Version 1.x (3DS 1.0))
  • 2 (EMV 3-D Secure (3DS 2.x))

Returns:

  • (String)


96
97
98
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 96

def pa_specification_version
  @pa_specification_version
end

#pares_statusString

Payer authentication response status.

Returns:

  • (String)


33
34
35
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 33

def pares_status
  @pares_status
end

#prior_authentication_dataString

This field carry data that the ACS can use to verify the authentication process.

Returns:

  • (String)


359
360
361
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 359

def prior_authentication_data
  @prior_authentication_data
end

#prior_authentication_methodString

Mechanism used by the Cardholder to previously authenticate to the 3DS Requestor. 01 - Frictionless authentication occurred by ACS 02 - Cardholder challenge occurred by ACS 03 - AVS verified 04 - Other issuer methods 05-79 - Reserved for EMVCo future use (values invalid until defined by EMVCo) 80-99 - Reserved for DS use

Returns:

  • (String)


371
372
373
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 371

def prior_authentication_method
  @prior_authentication_method
end

#prior_authentication_reference_idString

This data element contains a ACS Transaction ID for a prior authenticated transaction. For example, the first recurring transaction that was authenticated with the cardholder

Returns:

  • (String)


378
379
380
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 378

def prior_authentication_reference_id
  @prior_authentication_reference_id
end

#prior_authentication_timeString

Date and time in UTC of the prior cardholder authentication. Format – YYYYMMDDHHMM

Returns:

  • (String)


383
384
385
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 383

def prior_authentication_time
  @prior_authentication_time
end

#product_codeString

Specifies the product code, which designates the type of transaction. Specify one of the following values for this field:

  • AIR: Airline purchase Important Required for American Express SafeKey (U.S.).
  • ACC: Accommodation Rental
  • ACF: Account funding
  • CHA: Check acceptance
  • DIG: Digital Goods
  • DSP: Cash Dispensing
  • GAS: Fuel
  • GEN: General Retail
  • LUX: Luxury Retail
  • PAL: Prepaid activation and load
  • PHY: Goods or services purchase
  • QCT: Quasi-cash transaction
  • REN: Car Rental
  • RES: Restaurant
  • SVC: Services
  • TBD: Other
  • TRA: Travel Important Required for Visa Secure transactions in Brazil. Do not use this request field for any other types of transactions.

Returns:

  • (String)


408
409
410
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 408

def product_code
  @product_code
end

#reference_idString

Reference ID that corresponds to the device fingerprinting data that was collected previously. Note Required for Hybrid integration.

Returns:

  • (String)


450
451
452
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 450

def reference_id
  @reference_id
end

#requestor_idString

Cardinal's directory server assigned 3DS Requestor ID value

Returns:

  • (String)


424
425
426
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 424

def requestor_id
  @requestor_id
end

#requestor_initiated_authentication_indicatorString

Indicates the type of 3RI request. Possible Values: 01 - Recurring transaction 02 - Installment transaction 03 - Add card 04 - Maintain card 05 - Account verification 06 - Split/delayed shipment 07 - Top-up 08 - Mail Order 09 - Telephone Order 10 - Whitelist status check 11 - Other payment

Returns:

  • (String)


440
441
442
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 440

def requestor_initiated_authentication_indicator
  @requestor_initiated_authentication_indicator
end

#requestor_nameString

Cardinal's directory server assigned 3DS Requestor Name value

Returns:

  • (String)


444
445
446
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 444

def requestor_name
  @requestor_name
end

#response_access_tokenString

JWT returned by the 3D Secure provider when the authentication is complete. Required for Hybrid integration if you use the Cybersource-generated access token. Note: Max. length of this field is 2048 characters.

Returns:

  • (String)


117
118
119
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 117

def response_access_token
  @response_access_token
end

#return_urlString

The URL of the merchant’s return page. CyberSource adds this return URL to the step-up JWT and returns it in the response of the Payer Authentication enrollment call. The merchant's return URL page serves as a listening URL. Once the bank session completes, the merchant receives a POST to their URL. This response contains the completed bank session’s transactionId. The merchant’s return page should capture the transaction ID and send it in the Payer Authentication validation call.

Returns:

  • (String)


420
421
422
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 420

def return_url
  @return_url
end

#score_requestInteger

Risk Assessment from Mastercard. This is to be sent by merchant if they would like to request a score

Returns:

  • (Integer)


542
543
544
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 542

def score_request
  @score_request
end

#sdk_max_timeoutString

This field indicates the maximum amount of time for all 3DS 2.0 messages to be communicated between all components (in minutes). Possible Values: Greater than or equal to 05 (05 is the minimum timeout to set) Cardinal Default is set to 15 NOTE: This field is a required 3DS 2.0 field and Cardinal sends in a default of 15 if nothing is passed

Returns:

  • (String)


460
461
462
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 460

def sdk_max_timeout
  @sdk_max_timeout
end

#secure_corporate_payment_indicatorString

Indicates dedicated payment processes and procedures were used, potential secure corporate payment exemption applies. Possible Values : 0/1

Returns:

  • (String)


466
467
468
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 466

def secure_corporate_payment_indicator
  @secure_corporate_payment_indicator
end

#signed_paresString

Payer authentication result (PARes) message returned by the card-issuing bank. If you need to show proof of enrollment checking, you may need to decrypt and parse the string for the information required by the payment card company. For more information, see "Storing Payer Authentication Data," page 160. Important The value is in base64. You must remove all carriage returns and line feeds before adding the PARes to the request.

Returns:

  • (String)


523
524
525
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 523

def signed_pares
  @signed_pares
end

#signed_pares_status_reasonString

Provides additional information as to why the PAResStatus has a specific value.

Returns:

  • (String)


511
512
513
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 511

def signed_pares_status_reason
  @signed_pares_status_reason
end

#strong_authenticationStrongAuthentication

Universal cardholder authentication field (UCAF) data.



60
61
62
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 60

def strong_authentication
  @strong_authentication
end

#transaction_flow_indicatorString

This field details out the type of transaction. Below are the possible values. 08:GC- Guest Checkout.

Returns:

  • (String)


20
21
22
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 20

def transaction_flow_indicator
  @transaction_flow_indicator
end

#transaction_modeString

Transaction mode identifier. Identifies the channel from which the transaction originates. Possible values:

  • M: MOTO (Mail Order Telephone Order)
  • R: Retail
  • S: eCommerce
  • P: Mobile Device
  • T: Tablet

Returns:

  • (String)


477
478
479
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 477

def transaction_mode
  @transaction_mode
end

#ucaf_authentication_dataString

Universal cardholder authentication field (UCAF) data.

Returns:

  • (String)


56
57
58
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 56

def ucaf_authentication_data
  @ucaf_authentication_data
end

#ucaf_collection_indicatorString

Universal cardholder authentication field (UCAF) collection indicator.

CyberSource through VisaNet

The value for this field corresponds to the following data in the TC 33 capture file5:

  • Record: CP01 TCR7
  • Position: 5
  • Field: Mastercard Electronic Commerce Indicators—UCAF Collection Indicator

Returns:

  • (String)


52
53
54
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 52

def ucaf_collection_indicator
  @ucaf_collection_indicator
end

#veres_enrolledString

Verification response enrollment status.

Returns:

  • (String)


37
38
39
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 37

def veres_enrolled
  @veres_enrolled
end

#white_list_statusString

Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor. Possible Values: Y - 3DS Requestor is whitelisted by cardholder N - 3DS Requestor is not whitelisted by cardholder

Returns:

  • (String)


485
486
487
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 485

def white_list_status
  @white_list_status
end

#xidString

Transaction identifier.

Returns:

  • (String)


41
42
43
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 41

def xid
  @xid
end

Class Method Details

.from_element(root) ⇒ Object



1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 1025

def self.from_element(root)
  cavv = XmlUtilities.from_element(root, 'cavv', String)
  transaction_flow_indicator = XmlUtilities.from_element(
    root, 'transactionFlowIndicator', String
  )
  cavv_algorithm = XmlUtilities.from_element(root, 'cavvAlgorithm', String)
  eci_raw = XmlUtilities.from_element(root, 'eciRaw', String)
  pares_status = XmlUtilities.from_element(root, 'paresStatus', String)
  veres_enrolled = XmlUtilities.from_element(root, 'veresEnrolled', String)
  xid = XmlUtilities.from_element(root, 'xid', String)
  ucaf_collection_indicator = XmlUtilities.from_element(
    root, 'ucafCollectionIndicator', String
  )
  ucaf_authentication_data = XmlUtilities.from_element(
    root, 'ucafAuthenticationData', String
  )
  strong_authentication = XmlUtilities.from_element(root,
                                                    'StrongAuthentication',
                                                    StrongAuthentication)
  directory_server_transaction_id = XmlUtilities.from_element(
    root, 'directoryServerTransactionId', String
  )
  pa_specification_version = XmlUtilities.from_element(
    root, 'paSpecificationVersion', String
  )
  authentication_type = XmlUtilities.from_element(root,
                                                  'authenticationType',
                                                  String)
  response_access_token = XmlUtilities.from_element(root,
                                                    'responseAccessToken',
                                                    String)
  acs_transaction_id = XmlUtilities.from_element(root, 'acsTransactionId',
                                                 String)
  acs_window_size = XmlUtilities.from_element(root, 'acsWindowSize', String)
  alternate_authentication_data = XmlUtilities.from_element(
    root, 'alternateAuthenticationData', String
  )
  alternate_authentication_date = XmlUtilities.from_element(
    root, 'alternateAuthenticationDate', String
  )
  alternate_authentication_method = XmlUtilities.from_element(
    root, 'alternateAuthenticationMethod', String
  )
  authentication_date = XmlUtilities.from_element(root,
                                                  'authenticationDate',
                                                  String)
  authentication_transaction_id = XmlUtilities.from_element(
    root, 'authenticationTransactionId', String
  )
  challenge_cancel_code = XmlUtilities.from_element(root,
                                                    'challengeCancelCode',
                                                    String)
  challenge_code = XmlUtilities.from_element(root, 'challengeCode', String)
  challenge_status = XmlUtilities.from_element(root, 'challengeStatus',
                                               String)
  customer_card_alias = XmlUtilities.from_element(root, 'customerCardAlias',
                                                  String)
  decoupled_authentication_indicator = XmlUtilities.from_element(
    root, 'decoupledAuthenticationIndicator', String
  )
  decoupled_authentication_max_time = XmlUtilities.from_element(
    root, 'decoupledAuthenticationMaxTime', String
  )
  default_card = XmlUtilities.from_element(root, 'defaultCard', TrueClass)
  device_channel = XmlUtilities.from_element(root, 'deviceChannel', String)
  installment_total_count = XmlUtilities.from_element(
    root, 'installmentTotalCount', Integer
  )
  merchant_fraud_rate = XmlUtilities.from_element(root, 'merchantFraudRate',
                                                  String)
  marketing_opt_in = XmlUtilities.from_element(root, 'marketingOptIn',
                                               TrueClass)
  marketing_source = XmlUtilities.from_element(root, 'marketingSource',
                                               String)
  mcc = XmlUtilities.from_element(root, 'mcc', String)
  merchant_score = XmlUtilities.from_element(root, 'merchantScore', Integer)
  message_category = XmlUtilities.from_element(root, 'messageCategory',
                                               String)
  network_score = XmlUtilities.from_element(root, 'networkScore', String)
  npa_code = XmlUtilities.from_element(root, 'npaCode', String)
  override_payment_method = XmlUtilities.from_element(
    root, 'overridePaymentMethod', String
  )
  override_country_code = XmlUtilities.from_element(root,
                                                    'overrideCountryCode',
                                                    String)
  prior_authentication_data = XmlUtilities.from_element(
    root, 'priorAuthenticationData', String
  )
  prior_authentication_method = XmlUtilities.from_element(
    root, 'priorAuthenticationMethod', String
  )
  prior_authentication_reference_id = XmlUtilities.from_element(
    root, 'priorAuthenticationReferenceId', String
  )
  prior_authentication_time = XmlUtilities.from_element(
    root, 'priorAuthenticationTime', String
  )
  product_code = XmlUtilities.from_element(root, 'productCode', String)
  return_url = XmlUtilities.from_element(root, 'returnUrl', String)
  requestor_id = XmlUtilities.from_element(root, 'requestorId', String)
  requestor_initiated_authentication_indicator = XmlUtilities.from_element(
    root, 'requestorInitiatedAuthenticationIndicator', String
  )
  requestor_name = XmlUtilities.from_element(root, 'requestorName', String)
  reference_id = XmlUtilities.from_element(root, 'referenceId', String)
  sdk_max_timeout = XmlUtilities.from_element(root, 'sdkMaxTimeout', String)
  secure_corporate_payment_indicator = XmlUtilities.from_element(
    root, 'secureCorporatePaymentIndicator', String
  )
  transaction_mode = XmlUtilities.from_element(root, 'transactionMode',
                                               String)
  white_list_status = XmlUtilities.from_element(root, 'whiteListStatus',
                                                String)
  authentication_brand = XmlUtilities.from_element(root,
                                                   'authenticationBrand',
                                                   String)
  effective_authentication_type = XmlUtilities.from_element(
    root, 'effectiveAuthenticationType', String
  )
  signed_pares_status_reason = XmlUtilities.from_element(
    root, 'signedParesStatusReason', String
  )
  signed_pares = XmlUtilities.from_element(root, 'signedPares', String)
  acs_reference_number = XmlUtilities.from_element(root,
                                                   'acsReferenceNumber',
                                                   String)
  ds_reference_number = XmlUtilities.from_element(root, 'dsReferenceNumber',
                                                  String)
  score_request = XmlUtilities.from_element(root, 'scoreRequest', Integer)

  new(cavv: cavv,
      transaction_flow_indicator: transaction_flow_indicator,
      cavv_algorithm: cavv_algorithm,
      eci_raw: eci_raw,
      pares_status: pares_status,
      veres_enrolled: veres_enrolled,
      xid: xid,
      ucaf_collection_indicator: ucaf_collection_indicator,
      ucaf_authentication_data: ucaf_authentication_data,
      strong_authentication: strong_authentication,
      directory_server_transaction_id: directory_server_transaction_id,
      pa_specification_version: pa_specification_version,
      authentication_type: authentication_type,
      response_access_token: response_access_token,
      acs_transaction_id: acs_transaction_id,
      acs_window_size: acs_window_size,
      alternate_authentication_data: alternate_authentication_data,
      alternate_authentication_date: alternate_authentication_date,
      alternate_authentication_method: alternate_authentication_method,
      authentication_date: authentication_date,
      authentication_transaction_id: authentication_transaction_id,
      challenge_cancel_code: challenge_cancel_code,
      challenge_code: challenge_code,
      challenge_status: challenge_status,
      customer_card_alias: customer_card_alias,
      decoupled_authentication_indicator: decoupled_authentication_indicator,
      decoupled_authentication_max_time: decoupled_authentication_max_time,
      default_card: default_card,
      device_channel: device_channel,
      installment_total_count: installment_total_count,
      merchant_fraud_rate: merchant_fraud_rate,
      marketing_opt_in: marketing_opt_in,
      marketing_source: marketing_source,
      mcc: mcc,
      merchant_score: merchant_score,
      message_category: message_category,
      network_score: network_score,
      npa_code: npa_code,
      override_payment_method: override_payment_method,
      override_country_code: override_country_code,
      prior_authentication_data: prior_authentication_data,
      prior_authentication_method: prior_authentication_method,
      prior_authentication_reference_id: prior_authentication_reference_id,
      prior_authentication_time: prior_authentication_time,
      product_code: product_code,
      return_url: return_url,
      requestor_id: requestor_id,
      requestor_initiated_authentication_indicator: requestor_initiated_authentication_indicator,
      requestor_name: requestor_name,
      reference_id: reference_id,
      sdk_max_timeout: sdk_max_timeout,
      secure_corporate_payment_indicator: secure_corporate_payment_indicator,
      transaction_mode: transaction_mode,
      white_list_status: white_list_status,
      authentication_brand: authentication_brand,
      effective_authentication_type: effective_authentication_type,
      signed_pares_status_reason: signed_pares_status_reason,
      signed_pares: signed_pares,
      acs_reference_number: acs_reference_number,
      ds_reference_number: ds_reference_number,
      score_request: score_request,
      additional_properties: additional_properties)
end

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 846

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  cavv = hash.key?('cavv') ? hash['cavv'] : SKIP
  transaction_flow_indicator =
    hash.key?('transactionFlowIndicator') ? hash['transactionFlowIndicator'] : SKIP
  cavv_algorithm = hash.key?('cavvAlgorithm') ? hash['cavvAlgorithm'] : SKIP
  eci_raw = hash.key?('eciRaw') ? hash['eciRaw'] : SKIP
  pares_status = hash.key?('paresStatus') ? hash['paresStatus'] : SKIP
  veres_enrolled = hash.key?('veresEnrolled') ? hash['veresEnrolled'] : SKIP
  xid = hash.key?('xid') ? hash['xid'] : SKIP
  ucaf_collection_indicator =
    hash.key?('ucafCollectionIndicator') ? hash['ucafCollectionIndicator'] : SKIP
  ucaf_authentication_data =
    hash.key?('ucafAuthenticationData') ? hash['ucafAuthenticationData'] : SKIP
  strong_authentication = StrongAuthentication.from_hash(hash['strongAuthentication']) if
    hash['strongAuthentication']
  directory_server_transaction_id =
    hash.key?('directoryServerTransactionId') ? hash['directoryServerTransactionId'] : SKIP
  pa_specification_version =
    hash.key?('paSpecificationVersion') ? hash['paSpecificationVersion'] : SKIP
  authentication_type =
    hash.key?('authenticationType') ? hash['authenticationType'] : SKIP
  response_access_token =
    hash.key?('responseAccessToken') ? hash['responseAccessToken'] : SKIP
  acs_transaction_id =
    hash.key?('acsTransactionId') ? hash['acsTransactionId'] : SKIP
  acs_window_size =
    hash.key?('acsWindowSize') ? hash['acsWindowSize'] : SKIP
  alternate_authentication_data =
    hash.key?('alternateAuthenticationData') ? hash['alternateAuthenticationData'] : SKIP
  alternate_authentication_date =
    hash.key?('alternateAuthenticationDate') ? hash['alternateAuthenticationDate'] : SKIP
  alternate_authentication_method =
    hash.key?('alternateAuthenticationMethod') ? hash['alternateAuthenticationMethod'] : SKIP
  authentication_date =
    hash.key?('authenticationDate') ? hash['authenticationDate'] : SKIP
  authentication_transaction_id =
    hash.key?('authenticationTransactionId') ? hash['authenticationTransactionId'] : SKIP
  challenge_cancel_code =
    hash.key?('challengeCancelCode') ? hash['challengeCancelCode'] : SKIP
  challenge_code = hash.key?('challengeCode') ? hash['challengeCode'] : SKIP
  challenge_status =
    hash.key?('challengeStatus') ? hash['challengeStatus'] : SKIP
  customer_card_alias =
    hash.key?('customerCardAlias') ? hash['customerCardAlias'] : SKIP
  decoupled_authentication_indicator =
    hash.key?('decoupledAuthenticationIndicator') ? hash['decoupledAuthenticationIndicator'] : SKIP
  decoupled_authentication_max_time =
    hash.key?('decoupledAuthenticationMaxTime') ? hash['decoupledAuthenticationMaxTime'] : SKIP
  default_card = hash.key?('defaultCard') ? hash['defaultCard'] : SKIP
  device_channel = hash.key?('deviceChannel') ? hash['deviceChannel'] : SKIP
  installment_total_count =
    hash.key?('installmentTotalCount') ? hash['installmentTotalCount'] : SKIP
  merchant_fraud_rate =
    hash.key?('merchantFraudRate') ? hash['merchantFraudRate'] : SKIP
  marketing_opt_in =
    hash.key?('marketingOptIn') ? hash['marketingOptIn'] : SKIP
  marketing_source =
    hash.key?('marketingSource') ? hash['marketingSource'] : SKIP
  mcc = hash.key?('mcc') ? hash['mcc'] : SKIP
  merchant_score = hash.key?('merchantScore') ? hash['merchantScore'] : SKIP
  message_category =
    hash.key?('messageCategory') ? hash['messageCategory'] : SKIP
  network_score = hash.key?('networkScore') ? hash['networkScore'] : SKIP
  npa_code = hash.key?('npaCode') ? hash['npaCode'] : SKIP
  override_payment_method =
    hash.key?('overridePaymentMethod') ? hash['overridePaymentMethod'] : SKIP
  override_country_code =
    hash.key?('overrideCountryCode') ? hash['overrideCountryCode'] : SKIP
  prior_authentication_data =
    hash.key?('priorAuthenticationData') ? hash['priorAuthenticationData'] : SKIP
  prior_authentication_method =
    hash.key?('priorAuthenticationMethod') ? hash['priorAuthenticationMethod'] : SKIP
  prior_authentication_reference_id =
    hash.key?('priorAuthenticationReferenceId') ? hash['priorAuthenticationReferenceId'] : SKIP
  prior_authentication_time =
    hash.key?('priorAuthenticationTime') ? hash['priorAuthenticationTime'] : SKIP
  product_code = hash.key?('productCode') ? hash['productCode'] : SKIP
  return_url = hash.key?('returnUrl') ? hash['returnUrl'] : SKIP
  requestor_id = hash.key?('requestorId') ? hash['requestorId'] : SKIP
  requestor_initiated_authentication_indicator =
    hash.key?('requestorInitiatedAuthenticationIndicator') ? hash['requestorInitiatedAuthenticationIndicator'] : SKIP
  requestor_name = hash.key?('requestorName') ? hash['requestorName'] : SKIP
  reference_id = hash.key?('referenceId') ? hash['referenceId'] : SKIP
  sdk_max_timeout =
    hash.key?('sdkMaxTimeout') ? hash['sdkMaxTimeout'] : SKIP
  secure_corporate_payment_indicator =
    hash.key?('secureCorporatePaymentIndicator') ? hash['secureCorporatePaymentIndicator'] : SKIP
  transaction_mode =
    hash.key?('transactionMode') ? hash['transactionMode'] : SKIP
  white_list_status =
    hash.key?('whiteListStatus') ? hash['whiteListStatus'] : SKIP
  authentication_brand =
    hash.key?('authenticationBrand') ? hash['authenticationBrand'] : SKIP
  effective_authentication_type =
    hash.key?('effectiveAuthenticationType') ? hash['effectiveAuthenticationType'] : SKIP
  signed_pares_status_reason =
    hash.key?('signedParesStatusReason') ? hash['signedParesStatusReason'] : SKIP
  signed_pares = hash.key?('signedPares') ? hash['signedPares'] : SKIP
  acs_reference_number =
    hash.key?('acsReferenceNumber') ? hash['acsReferenceNumber'] : SKIP
  ds_reference_number =
    hash.key?('dsReferenceNumber') ? hash['dsReferenceNumber'] : SKIP
  score_request = hash.key?('scoreRequest') ? hash['scoreRequest'] : SKIP

  # Create a new hash for additional properties, removing known properties.
  new_hash = hash.reject { |k, _| names.value?(k) }

  additional_properties = APIHelper.get_additional_properties(
    new_hash, proc { |value| value }
  )

  # Create object from extracted values.
  ConsumerAuthenticationInformation.new(cavv: cavv,
                                        transaction_flow_indicator: transaction_flow_indicator,
                                        cavv_algorithm: cavv_algorithm,
                                        eci_raw: eci_raw,
                                        pares_status: pares_status,
                                        veres_enrolled: veres_enrolled,
                                        xid: xid,
                                        ucaf_collection_indicator: ucaf_collection_indicator,
                                        ucaf_authentication_data: ucaf_authentication_data,
                                        strong_authentication: strong_authentication,
                                        directory_server_transaction_id: directory_server_transaction_id,
                                        pa_specification_version: pa_specification_version,
                                        authentication_type: authentication_type,
                                        response_access_token: response_access_token,
                                        acs_transaction_id: acs_transaction_id,
                                        acs_window_size: acs_window_size,
                                        alternate_authentication_data: alternate_authentication_data,
                                        alternate_authentication_date: alternate_authentication_date,
                                        alternate_authentication_method: alternate_authentication_method,
                                        authentication_date: authentication_date,
                                        authentication_transaction_id: authentication_transaction_id,
                                        challenge_cancel_code: challenge_cancel_code,
                                        challenge_code: challenge_code,
                                        challenge_status: challenge_status,
                                        customer_card_alias: customer_card_alias,
                                        decoupled_authentication_indicator: decoupled_authentication_indicator,
                                        decoupled_authentication_max_time: decoupled_authentication_max_time,
                                        default_card: default_card,
                                        device_channel: device_channel,
                                        installment_total_count: installment_total_count,
                                        merchant_fraud_rate: merchant_fraud_rate,
                                        marketing_opt_in: marketing_opt_in,
                                        marketing_source: marketing_source,
                                        mcc: mcc,
                                        merchant_score: merchant_score,
                                        message_category: message_category,
                                        network_score: network_score,
                                        npa_code: npa_code,
                                        override_payment_method: override_payment_method,
                                        override_country_code: override_country_code,
                                        prior_authentication_data: prior_authentication_data,
                                        prior_authentication_method: prior_authentication_method,
                                        prior_authentication_reference_id: prior_authentication_reference_id,
                                        prior_authentication_time: prior_authentication_time,
                                        product_code: product_code,
                                        return_url: return_url,
                                        requestor_id: requestor_id,
                                        requestor_initiated_authentication_indicator: requestor_initiated_authentication_indicator,
                                        requestor_name: requestor_name,
                                        reference_id: reference_id,
                                        sdk_max_timeout: sdk_max_timeout,
                                        secure_corporate_payment_indicator: secure_corporate_payment_indicator,
                                        transaction_mode: transaction_mode,
                                        white_list_status: white_list_status,
                                        authentication_brand: authentication_brand,
                                        effective_authentication_type: effective_authentication_type,
                                        signed_pares_status_reason: signed_pares_status_reason,
                                        signed_pares: signed_pares,
                                        acs_reference_number: acs_reference_number,
                                        ds_reference_number: ds_reference_number,
                                        score_request: score_request,
                                        additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 545

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['cavv'] = 'cavv'
  @_hash['transaction_flow_indicator'] = 'transactionFlowIndicator'
  @_hash['cavv_algorithm'] = 'cavvAlgorithm'
  @_hash['eci_raw'] = 'eciRaw'
  @_hash['pares_status'] = 'paresStatus'
  @_hash['veres_enrolled'] = 'veresEnrolled'
  @_hash['xid'] = 'xid'
  @_hash['ucaf_collection_indicator'] = 'ucafCollectionIndicator'
  @_hash['ucaf_authentication_data'] = 'ucafAuthenticationData'
  @_hash['strong_authentication'] = 'strongAuthentication'
  @_hash['directory_server_transaction_id'] =
    'directoryServerTransactionId'
  @_hash['pa_specification_version'] = 'paSpecificationVersion'
  @_hash['authentication_type'] = 'authenticationType'
  @_hash['response_access_token'] = 'responseAccessToken'
  @_hash['acs_transaction_id'] = 'acsTransactionId'
  @_hash['acs_window_size'] = 'acsWindowSize'
  @_hash['alternate_authentication_data'] = 'alternateAuthenticationData'
  @_hash['alternate_authentication_date'] = 'alternateAuthenticationDate'
  @_hash['alternate_authentication_method'] =
    'alternateAuthenticationMethod'
  @_hash['authentication_date'] = 'authenticationDate'
  @_hash['authentication_transaction_id'] = 'authenticationTransactionId'
  @_hash['challenge_cancel_code'] = 'challengeCancelCode'
  @_hash['challenge_code'] = 'challengeCode'
  @_hash['challenge_status'] = 'challengeStatus'
  @_hash['customer_card_alias'] = 'customerCardAlias'
  @_hash['decoupled_authentication_indicator'] =
    'decoupledAuthenticationIndicator'
  @_hash['decoupled_authentication_max_time'] =
    'decoupledAuthenticationMaxTime'
  @_hash['default_card'] = 'defaultCard'
  @_hash['device_channel'] = 'deviceChannel'
  @_hash['installment_total_count'] = 'installmentTotalCount'
  @_hash['merchant_fraud_rate'] = 'merchantFraudRate'
  @_hash['marketing_opt_in'] = 'marketingOptIn'
  @_hash['marketing_source'] = 'marketingSource'
  @_hash['mcc'] = 'mcc'
  @_hash['merchant_score'] = 'merchantScore'
  @_hash['message_category'] = 'messageCategory'
  @_hash['network_score'] = 'networkScore'
  @_hash['npa_code'] = 'npaCode'
  @_hash['override_payment_method'] = 'overridePaymentMethod'
  @_hash['override_country_code'] = 'overrideCountryCode'
  @_hash['prior_authentication_data'] = 'priorAuthenticationData'
  @_hash['prior_authentication_method'] = 'priorAuthenticationMethod'
  @_hash['prior_authentication_reference_id'] =
    'priorAuthenticationReferenceId'
  @_hash['prior_authentication_time'] = 'priorAuthenticationTime'
  @_hash['product_code'] = 'productCode'
  @_hash['return_url'] = 'returnUrl'
  @_hash['requestor_id'] = 'requestorId'
  @_hash['requestor_initiated_authentication_indicator'] =
    'requestorInitiatedAuthenticationIndicator'
  @_hash['requestor_name'] = 'requestorName'
  @_hash['reference_id'] = 'referenceId'
  @_hash['sdk_max_timeout'] = 'sdkMaxTimeout'
  @_hash['secure_corporate_payment_indicator'] =
    'secureCorporatePaymentIndicator'
  @_hash['transaction_mode'] = 'transactionMode'
  @_hash['white_list_status'] = 'whiteListStatus'
  @_hash['authentication_brand'] = 'authenticationBrand'
  @_hash['effective_authentication_type'] = 'effectiveAuthenticationType'
  @_hash['signed_pares_status_reason'] = 'signedParesStatusReason'
  @_hash['signed_pares'] = 'signedPares'
  @_hash['acs_reference_number'] = 'acsReferenceNumber'
  @_hash['ds_reference_number'] = 'dsReferenceNumber'
  @_hash['score_request'] = 'scoreRequest'
  @_hash
end

.nullablesObject

An array for nullable fields



686
687
688
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 686

def self.nullables
  []
end

.optionalsObject

An array for optional fields



619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 619

def self.optionals
  %w[
    cavv
    transaction_flow_indicator
    cavv_algorithm
    eci_raw
    pares_status
    veres_enrolled
    xid
    ucaf_collection_indicator
    ucaf_authentication_data
    strong_authentication
    directory_server_transaction_id
    pa_specification_version
    authentication_type
    response_access_token
    acs_transaction_id
    acs_window_size
    alternate_authentication_data
    alternate_authentication_date
    alternate_authentication_method
    authentication_date
    authentication_transaction_id
    challenge_cancel_code
    challenge_code
    challenge_status
    customer_card_alias
    decoupled_authentication_indicator
    decoupled_authentication_max_time
    default_card
    device_channel
    installment_total_count
    merchant_fraud_rate
    marketing_opt_in
    marketing_source
    mcc
    merchant_score
    message_category
    network_score
    npa_code
    override_payment_method
    override_country_code
    prior_authentication_data
    prior_authentication_method
    prior_authentication_reference_id
    prior_authentication_time
    product_code
    return_url
    requestor_id
    requestor_initiated_authentication_indicator
    requestor_name
    reference_id
    sdk_max_timeout
    secure_corporate_payment_indicator
    transaction_mode
    white_list_status
    authentication_brand
    effective_authentication_type
    signed_pares_status_reason
    signed_pares
    acs_reference_number
    ds_reference_number
    score_request
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 1380

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} cavv: #{@cavv.inspect}, transaction_flow_indicator:"\
  " #{@transaction_flow_indicator.inspect}, cavv_algorithm: #{@cavv_algorithm.inspect},"\
  " eci_raw: #{@eci_raw.inspect}, pares_status: #{@pares_status.inspect}, veres_enrolled:"\
  " #{@veres_enrolled.inspect}, xid: #{@xid.inspect}, ucaf_collection_indicator:"\
  " #{@ucaf_collection_indicator.inspect}, ucaf_authentication_data:"\
  " #{@ucaf_authentication_data.inspect}, strong_authentication:"\
  " #{@strong_authentication.inspect}, directory_server_transaction_id:"\
  " #{@directory_server_transaction_id.inspect}, pa_specification_version:"\
  " #{@pa_specification_version.inspect}, authentication_type:"\
  " #{@authentication_type.inspect}, response_access_token: #{@response_access_token.inspect},"\
  " acs_transaction_id: #{@acs_transaction_id.inspect}, acs_window_size:"\
  " #{@acs_window_size.inspect}, alternate_authentication_data:"\
  " #{@alternate_authentication_data.inspect}, alternate_authentication_date:"\
  " #{@alternate_authentication_date.inspect}, alternate_authentication_method:"\
  " #{@alternate_authentication_method.inspect}, authentication_date:"\
  " #{@authentication_date.inspect}, authentication_transaction_id:"\
  " #{@authentication_transaction_id.inspect}, challenge_cancel_code:"\
  " #{@challenge_cancel_code.inspect}, challenge_code: #{@challenge_code.inspect},"\
  " challenge_status: #{@challenge_status.inspect}, customer_card_alias:"\
  " #{@customer_card_alias.inspect}, decoupled_authentication_indicator:"\
  " #{@decoupled_authentication_indicator.inspect}, decoupled_authentication_max_time:"\
  " #{@decoupled_authentication_max_time.inspect}, default_card: #{@default_card.inspect},"\
  " device_channel: #{@device_channel.inspect}, installment_total_count:"\
  " #{@installment_total_count.inspect}, merchant_fraud_rate: #{@merchant_fraud_rate.inspect},"\
  " marketing_opt_in: #{@marketing_opt_in.inspect}, marketing_source:"\
  " #{@marketing_source.inspect}, mcc: #{@mcc.inspect}, merchant_score:"\
  " #{@merchant_score.inspect}, message_category: #{@message_category.inspect}, network_score:"\
  " #{@network_score.inspect}, npa_code: #{@npa_code.inspect}, override_payment_method:"\
  " #{@override_payment_method.inspect}, override_country_code:"\
  " #{@override_country_code.inspect}, prior_authentication_data:"\
  " #{@prior_authentication_data.inspect}, prior_authentication_method:"\
  " #{@prior_authentication_method.inspect}, prior_authentication_reference_id:"\
  " #{@prior_authentication_reference_id.inspect}, prior_authentication_time:"\
  " #{@prior_authentication_time.inspect}, product_code: #{@product_code.inspect}, return_url:"\
  " #{@return_url.inspect}, requestor_id: #{@requestor_id.inspect},"\
  ' requestor_initiated_authentication_indicator:'\
  " #{@requestor_initiated_authentication_indicator.inspect}, requestor_name:"\
  " #{@requestor_name.inspect}, reference_id: #{@reference_id.inspect}, sdk_max_timeout:"\
  " #{@sdk_max_timeout.inspect}, secure_corporate_payment_indicator:"\
  " #{@secure_corporate_payment_indicator.inspect}, transaction_mode:"\
  " #{@transaction_mode.inspect}, white_list_status: #{@white_list_status.inspect},"\
  " authentication_brand: #{@authentication_brand.inspect}, effective_authentication_type:"\
  " #{@effective_authentication_type.inspect}, signed_pares_status_reason:"\
  " #{@signed_pares_status_reason.inspect}, signed_pares: #{@signed_pares.inspect},"\
  " acs_reference_number: #{@acs_reference_number.inspect}, ds_reference_number:"\
  " #{@ds_reference_number.inspect}, score_request: #{@score_request.inspect},"\
  " additional_properties: #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 1338

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} cavv: #{@cavv}, transaction_flow_indicator: #{@transaction_flow_indicator},"\
  " cavv_algorithm: #{@cavv_algorithm}, eci_raw: #{@eci_raw}, pares_status: #{@pares_status},"\
  " veres_enrolled: #{@veres_enrolled}, xid: #{@xid}, ucaf_collection_indicator:"\
  " #{@ucaf_collection_indicator}, ucaf_authentication_data: #{@ucaf_authentication_data},"\
  " strong_authentication: #{@strong_authentication}, directory_server_transaction_id:"\
  " #{@directory_server_transaction_id}, pa_specification_version:"\
  " #{@pa_specification_version}, authentication_type: #{@authentication_type},"\
  " response_access_token: #{@response_access_token}, acs_transaction_id:"\
  " #{@acs_transaction_id}, acs_window_size: #{@acs_window_size},"\
  " alternate_authentication_data: #{@alternate_authentication_data},"\
  " alternate_authentication_date: #{@alternate_authentication_date},"\
  " alternate_authentication_method: #{@alternate_authentication_method}, authentication_date:"\
  " #{@authentication_date}, authentication_transaction_id: #{@authentication_transaction_id},"\
  " challenge_cancel_code: #{@challenge_cancel_code}, challenge_code: #{@challenge_code},"\
  " challenge_status: #{@challenge_status}, customer_card_alias: #{@customer_card_alias},"\
  " decoupled_authentication_indicator: #{@decoupled_authentication_indicator},"\
  " decoupled_authentication_max_time: #{@decoupled_authentication_max_time}, default_card:"\
  " #{@default_card}, device_channel: #{@device_channel}, installment_total_count:"\
  " #{@installment_total_count}, merchant_fraud_rate: #{@merchant_fraud_rate},"\
  " marketing_opt_in: #{@marketing_opt_in}, marketing_source: #{@marketing_source}, mcc:"\
  " #{@mcc}, merchant_score: #{@merchant_score}, message_category: #{@message_category},"\
  " network_score: #{@network_score}, npa_code: #{@npa_code}, override_payment_method:"\
  " #{@override_payment_method}, override_country_code: #{@override_country_code},"\
  " prior_authentication_data: #{@prior_authentication_data}, prior_authentication_method:"\
  " #{@prior_authentication_method}, prior_authentication_reference_id:"\
  " #{@prior_authentication_reference_id}, prior_authentication_time:"\
  " #{@prior_authentication_time}, product_code: #{@product_code}, return_url: #{@return_url},"\
  " requestor_id: #{@requestor_id}, requestor_initiated_authentication_indicator:"\
  " #{@requestor_initiated_authentication_indicator}, requestor_name: #{@requestor_name},"\
  " reference_id: #{@reference_id}, sdk_max_timeout: #{@sdk_max_timeout},"\
  " secure_corporate_payment_indicator: #{@secure_corporate_payment_indicator},"\
  " transaction_mode: #{@transaction_mode}, white_list_status: #{@white_list_status},"\
  " authentication_brand: #{@authentication_brand}, effective_authentication_type:"\
  " #{@effective_authentication_type}, signed_pares_status_reason:"\
  " #{@signed_pares_status_reason}, signed_pares: #{@signed_pares}, acs_reference_number:"\
  " #{@acs_reference_number}, ds_reference_number: #{@ds_reference_number}, score_request:"\
  " #{@score_request}, additional_properties: #{@additional_properties}>"
end

#to_xml_element(doc, root_name) ⇒ Object



1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
# File 'lib/cyber_source_merged_spec/models/consumer_authentication_information.rb', line 1220

def to_xml_element(doc, root_name)
  root = doc.create_element(root_name)

  XmlUtilities.add_as_subelement(doc, root, 'cavv', cavv)
  XmlUtilities.add_as_subelement(doc, root, 'transactionFlowIndicator',
                                 transaction_flow_indicator)
  XmlUtilities.add_as_subelement(doc, root, 'cavvAlgorithm', cavv_algorithm)
  XmlUtilities.add_as_subelement(doc, root, 'eciRaw', eci_raw)
  XmlUtilities.add_as_subelement(doc, root, 'paresStatus', pares_status)
  XmlUtilities.add_as_subelement(doc, root, 'veresEnrolled', veres_enrolled)
  XmlUtilities.add_as_subelement(doc, root, 'xid', xid)
  XmlUtilities.add_as_subelement(doc, root, 'ucafCollectionIndicator',
                                 ucaf_collection_indicator)
  XmlUtilities.add_as_subelement(doc, root, 'ucafAuthenticationData',
                                 ucaf_authentication_data)
  XmlUtilities.add_as_subelement(doc, root, 'StrongAuthentication',
                                 strong_authentication)
  XmlUtilities.add_as_subelement(doc, root, 'directoryServerTransactionId',
                                 directory_server_transaction_id)
  XmlUtilities.add_as_subelement(doc, root, 'paSpecificationVersion',
                                 pa_specification_version)
  XmlUtilities.add_as_subelement(doc, root, 'authenticationType',
                                 authentication_type)
  XmlUtilities.add_as_subelement(doc, root, 'responseAccessToken',
                                 response_access_token)
  XmlUtilities.add_as_subelement(doc, root, 'acsTransactionId',
                                 acs_transaction_id)
  XmlUtilities.add_as_subelement(doc, root, 'acsWindowSize',
                                 acs_window_size)
  XmlUtilities.add_as_subelement(doc, root, 'alternateAuthenticationData',
                                 alternate_authentication_data)
  XmlUtilities.add_as_subelement(doc, root, 'alternateAuthenticationDate',
                                 alternate_authentication_date)
  XmlUtilities.add_as_subelement(doc, root, 'alternateAuthenticationMethod',
                                 alternate_authentication_method)
  XmlUtilities.add_as_subelement(doc, root, 'authenticationDate',
                                 authentication_date)
  XmlUtilities.add_as_subelement(doc, root, 'authenticationTransactionId',
                                 authentication_transaction_id)
  XmlUtilities.add_as_subelement(doc, root, 'challengeCancelCode',
                                 challenge_cancel_code)
  XmlUtilities.add_as_subelement(doc, root, 'challengeCode', challenge_code)
  XmlUtilities.add_as_subelement(doc, root, 'challengeStatus',
                                 challenge_status)
  XmlUtilities.add_as_subelement(doc, root, 'customerCardAlias',
                                 customer_card_alias)
  XmlUtilities.add_as_subelement(doc, root,
                                 'decoupledAuthenticationIndicator',
                                 decoupled_authentication_indicator)
  XmlUtilities.add_as_subelement(doc, root,
                                 'decoupledAuthenticationMaxTime',
                                 decoupled_authentication_max_time)
  XmlUtilities.add_as_subelement(doc, root, 'defaultCard', default_card)
  XmlUtilities.add_as_subelement(doc, root, 'deviceChannel', device_channel)
  XmlUtilities.add_as_subelement(doc, root, 'installmentTotalCount',
                                 installment_total_count)
  XmlUtilities.add_as_subelement(doc, root, 'merchantFraudRate',
                                 merchant_fraud_rate)
  XmlUtilities.add_as_subelement(doc, root, 'marketingOptIn',
                                 marketing_opt_in)
  XmlUtilities.add_as_subelement(doc, root, 'marketingSource',
                                 marketing_source)
  XmlUtilities.add_as_subelement(doc, root, 'mcc', mcc)
  XmlUtilities.add_as_subelement(doc, root, 'merchantScore', merchant_score)
  XmlUtilities.add_as_subelement(doc, root, 'messageCategory',
                                 message_category)
  XmlUtilities.add_as_subelement(doc, root, 'networkScore', network_score)
  XmlUtilities.add_as_subelement(doc, root, 'npaCode', npa_code)
  XmlUtilities.add_as_subelement(doc, root, 'overridePaymentMethod',
                                 override_payment_method)
  XmlUtilities.add_as_subelement(doc, root, 'overrideCountryCode',
                                 override_country_code)
  XmlUtilities.add_as_subelement(doc, root, 'priorAuthenticationData',
                                 prior_authentication_data)
  XmlUtilities.add_as_subelement(doc, root, 'priorAuthenticationMethod',
                                 prior_authentication_method)
  XmlUtilities.add_as_subelement(doc, root,
                                 'priorAuthenticationReferenceId',
                                 prior_authentication_reference_id)
  XmlUtilities.add_as_subelement(doc, root, 'priorAuthenticationTime',
                                 prior_authentication_time)
  XmlUtilities.add_as_subelement(doc, root, 'productCode', product_code)
  XmlUtilities.add_as_subelement(doc, root, 'returnUrl', return_url)
  XmlUtilities.add_as_subelement(doc, root, 'requestorId', requestor_id)
  XmlUtilities.add_as_subelement(
    doc, root, 'requestorInitiatedAuthenticationIndicator',
    requestor_initiated_authentication_indicator
  )
  XmlUtilities.add_as_subelement(doc, root, 'requestorName', requestor_name)
  XmlUtilities.add_as_subelement(doc, root, 'referenceId', reference_id)
  XmlUtilities.add_as_subelement(doc, root, 'sdkMaxTimeout',
                                 sdk_max_timeout)
  XmlUtilities.add_as_subelement(doc, root,
                                 'secureCorporatePaymentIndicator',
                                 secure_corporate_payment_indicator)
  XmlUtilities.add_as_subelement(doc, root, 'transactionMode',
                                 transaction_mode)
  XmlUtilities.add_as_subelement(doc, root, 'whiteListStatus',
                                 white_list_status)
  XmlUtilities.add_as_subelement(doc, root, 'authenticationBrand',
                                 authentication_brand)
  XmlUtilities.add_as_subelement(doc, root, 'effectiveAuthenticationType',
                                 effective_authentication_type)
  XmlUtilities.add_as_subelement(doc, root, 'signedParesStatusReason',
                                 signed_pares_status_reason)
  XmlUtilities.add_as_subelement(doc, root, 'signedPares', signed_pares)
  XmlUtilities.add_as_subelement(doc, root, 'acsReferenceNumber',
                                 acs_reference_number)
  XmlUtilities.add_as_subelement(doc, root, 'dsReferenceNumber',
                                 ds_reference_number)
  XmlUtilities.add_as_subelement(doc, root, 'scoreRequest', score_request)
  XmlUtilities.add_as_subelement(doc, root, 'additional_properties',
                                 additional_properties)

  root
end