Class: VisaAcceptanceMergedSpec::ConsumerAuthenticationInformation1

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb

Overview

ConsumerAuthenticationInformation1 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(access_token: SKIP, acs_rendering_type: SKIP, acs_transaction_id: SKIP, acs_url: SKIP, authentication_path: SKIP, authorization_payload: SKIP, authentication_transaction_id: SKIP, cardholder_message: SKIP, cavv: SKIP, cavv_algorithm: SKIP, challenge_cancel_code: SKIP, challenge_required: SKIP, decoupled_authentication_indicator: SKIP, directory_server_error_code: SKIP, directory_server_error_description: SKIP, ecommerce_indicator: SKIP, eci: SKIP, eci_raw: SKIP, effective_authentication_type: SKIP, ivr: SKIP, strong_authentication: SKIP, network_score: SKIP, pareq: SKIP, pares_status: SKIP, proof_xml: SKIP, proxy_pan: SKIP, sdk_transaction_id: SKIP, signed_pares_status_reason: SKIP, specification_version: SKIP, step_up_url: SKIP, three_ds_server_transaction_id: SKIP, ucaf_authentication_data: SKIP, ucaf_collection_indicator: SKIP, veres_enrolled: SKIP, white_list_status_source: SKIP, xid: SKIP, directory_server_transaction_id: SKIP, data_quality_indicator: SKIP, authentication_result: SKIP, authentication_status_msg: SKIP, indicator: SKIP, interaction_counter: SKIP, white_list_status: SKIP, additional_properties: nil) ⇒ ConsumerAuthenticationInformation1

Returns a new instance of ConsumerAuthenticationInformation1.



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
617
618
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
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 551

def initialize(access_token: SKIP, acs_rendering_type: SKIP,
               acs_transaction_id: SKIP, acs_url: SKIP,
               authentication_path: SKIP, authorization_payload: SKIP,
               authentication_transaction_id: SKIP,
               cardholder_message: SKIP, cavv: SKIP, cavv_algorithm: SKIP,
               challenge_cancel_code: SKIP, challenge_required: SKIP,
               decoupled_authentication_indicator: SKIP,
               directory_server_error_code: SKIP,
               directory_server_error_description: SKIP,
               ecommerce_indicator: SKIP, eci: SKIP, eci_raw: SKIP,
               effective_authentication_type: SKIP, ivr: SKIP,
               strong_authentication: SKIP, network_score: SKIP,
               pareq: SKIP, pares_status: SKIP, proof_xml: SKIP,
               proxy_pan: SKIP, sdk_transaction_id: SKIP,
               signed_pares_status_reason: SKIP,
               specification_version: SKIP, step_up_url: SKIP,
               three_ds_server_transaction_id: SKIP,
               ucaf_authentication_data: SKIP,
               ucaf_collection_indicator: SKIP, veres_enrolled: SKIP,
               white_list_status_source: SKIP, xid: SKIP,
               directory_server_transaction_id: SKIP,
               data_quality_indicator: SKIP, authentication_result: SKIP,
               authentication_status_msg: SKIP, indicator: SKIP,
               interaction_counter: SKIP, white_list_status: SKIP,
               additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @access_token = access_token unless access_token == SKIP
  @acs_rendering_type = acs_rendering_type unless acs_rendering_type == SKIP
  @acs_transaction_id = acs_transaction_id unless acs_transaction_id == SKIP
  @acs_url = acs_url unless acs_url == SKIP
  @authentication_path = authentication_path unless authentication_path == SKIP
  @authorization_payload = authorization_payload unless authorization_payload == SKIP
  unless authentication_transaction_id == SKIP
    @authentication_transaction_id =
      authentication_transaction_id
  end
  @cardholder_message = cardholder_message unless cardholder_message == SKIP
  @cavv = cavv unless cavv == SKIP
  @cavv_algorithm = cavv_algorithm unless cavv_algorithm == SKIP
  @challenge_cancel_code = challenge_cancel_code unless challenge_cancel_code == SKIP
  @challenge_required = challenge_required unless challenge_required == SKIP
  unless decoupled_authentication_indicator == SKIP
    @decoupled_authentication_indicator =
      decoupled_authentication_indicator
  end
  unless directory_server_error_code == SKIP
    @directory_server_error_code =
      directory_server_error_code
  end
  unless directory_server_error_description == SKIP
    @directory_server_error_description =
      directory_server_error_description
  end
  @ecommerce_indicator = ecommerce_indicator unless ecommerce_indicator == SKIP
  @eci = eci unless eci == SKIP
  @eci_raw = eci_raw unless eci_raw == SKIP
  unless effective_authentication_type == SKIP
    @effective_authentication_type =
      effective_authentication_type
  end
  @ivr = ivr unless ivr == SKIP
  @strong_authentication = strong_authentication unless strong_authentication == SKIP
  @network_score = network_score unless network_score == SKIP
  @pareq = pareq unless pareq == SKIP
  @pares_status = pares_status unless pares_status == SKIP
  @proof_xml = proof_xml unless proof_xml == SKIP
  @proxy_pan = proxy_pan unless proxy_pan == SKIP
  @sdk_transaction_id = sdk_transaction_id unless sdk_transaction_id == SKIP
  unless signed_pares_status_reason == SKIP
    @signed_pares_status_reason =
      signed_pares_status_reason
  end
  @specification_version = specification_version unless specification_version == SKIP
  @step_up_url = step_up_url unless step_up_url == SKIP
  unless three_ds_server_transaction_id == SKIP
    @three_ds_server_transaction_id =
      three_ds_server_transaction_id
  end
  @ucaf_authentication_data = ucaf_authentication_data unless ucaf_authentication_data == SKIP
  unless ucaf_collection_indicator == SKIP
    @ucaf_collection_indicator =
      ucaf_collection_indicator
  end
  @veres_enrolled = veres_enrolled unless veres_enrolled == SKIP
  @white_list_status_source = white_list_status_source unless white_list_status_source == SKIP
  @xid = xid unless xid == SKIP
  unless directory_server_transaction_id == SKIP
    @directory_server_transaction_id =
      directory_server_transaction_id
  end
  @data_quality_indicator = data_quality_indicator unless data_quality_indicator == SKIP
  @authentication_result = authentication_result unless authentication_result == SKIP
  unless authentication_status_msg == SKIP
    @authentication_status_msg =
      authentication_status_msg
  end
  @indicator = indicator unless indicator == SKIP
  @interaction_counter = interaction_counter unless interaction_counter == SKIP
  @white_list_status = white_list_status unless white_list_status == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#access_tokenString

JSON Web Token (JWT) used to authenticate the consumer with the authentication provider, such as, CardinalCommerce or Rupay. Note - Max Length of this field is 2048 characters.

Returns:

  • (String)


16
17
18
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 16

def access_token
  @access_token
end

#acs_rendering_typeString

Identifies the UI Type the ACS will use to complete the challenge. NOTE: Only available for App transactions using the Cardinal Mobile SDK.

Returns:

  • (String)


22
23
24
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 22

def acs_rendering_type
  @acs_rendering_type
end

#acs_transaction_idString

Unique transaction identifier assigned by the ACS to identify a single transaction.

Returns:

  • (String)


27
28
29
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 27

def acs_transaction_id
  @acs_transaction_id
end

#acs_urlString

URL for the card-issuing bank’s authentication form that you receive when the card is enrolled. The value can be very large.

Returns:

  • (String)


33
34
35
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 33

def acs_url
  @acs_url
end

#authentication_pathString

Indicates what displays to the customer during the authentication process. This field can contain one of these values:

  • ADS: (Card not enrolled) customer prompted to activate the card during the checkout process.
  • ATTEMPTS: (Attempts processing) Processing briefly displays before the checkout process is completed.
  • ENROLLED: (Card enrolled) the card issuer’s authentication window displays.
  • UNKNOWN: Card enrollment status cannot be determined.
  • NOREDIRECT: (Card not enrolled, authentication unavailable, or error occurred) nothing displays to the customer. The following values can be returned if you are using rules-based payer authentication.
  • RIBA: The card-issuing bank supports risk-based authentication, but whether the cardholder is likely to be challenged cannot be determined.
  • RIBA_PASS: The card-issuing bank supports risk-based authentication and it is likely that the cardholder will not be challenged to provide credentials, also known as silent authentication.

Returns:

  • (String)


56
57
58
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 56

def authentication_path
  @authentication_path
end

#authentication_resultString

Raw authentication data that comes from the cardissuing bank. Primary authentication field that indicates if authentication was successful and if liability shift occurred. You should examine first the result of this field. This field contains one of these values:

  • -1: Invalid PARes.
  • 0: Successful validation.
  • 1: Cardholder is not participating, but the attempt to authenticate was recorded.
  • 6: Issuer unable to perform authentication.
  • 9: Cardholder did not complete authentication.

Returns:

  • (String)


386
387
388
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 386

def authentication_result
  @authentication_result
end

#authentication_status_msgString

Message that explains the authenticationResult reply field.

Returns:

  • (String)


390
391
392
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 390

def authentication_status_msg
  @authentication_status_msg
end

#authentication_transaction_idString

Payer authentication transaction identifier is used to link the check enrollment and validate authentication messages. For Rupay, this field should be passed as request only for Resend OTP use case.

Returns:

  • (String)


67
68
69
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 67

def authentication_transaction_id
  @authentication_transaction_id
end

#authorization_payloadString

The Base64 encoded JSON Payload of CB specific Authorization Values returned in the challenge Flow

Returns:

  • (String)


61
62
63
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 61

def authorization_payload
  @authorization_payload
end

#cardholder_messageString

Text provided by the ACS/Issuer to Cardholder during a Frictionless or Decoupled transaction.The Issuer can provide information to Cardholder. For example, “Additional authentication is needed for this transaction, please contact (Issuer Name) at xxx-xxx-xxxx.”. The Issuing Bank can optionally support this value.

Returns:

  • (String)


75
76
77
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 75

def cardholder_message
  @cardholder_message
end

#cavvString

Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and Discover transactions after the customer is authenticated. The value is in base64. When you request the card authorization service, Visa Acceptance automatically converts the value, not the field name, to the format required by your payment processor.

Returns:

  • (String)


85
86
87
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 85

def cavv
  @cavv
end

#cavv_algorithmString

Field that is returned only when the CAVV is generated, which occurs when paresStatus contains the values Y (successful authentication) or A (attempted authentication). If you use the ATOS processor, send the value of this field in the cavv_algorithm request field of the authorization service. This field contains one of these values:

  • 2: Visa, American Express, JCB, Diners Club, and Discover
  • 3: Mastercard

Returns:

  • (String)


97
98
99
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 97

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)


111
112
113
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 111

def challenge_cancel_code
  @challenge_cancel_code
end

#challenge_requiredString

Indicates whether a challenge is required in order to complete authentication. Note Regional mandates might determine that a challenge is required. Possible values:

  • Y: Challenge required
  • N: Challenge not required Note Used by the Hybrid integration.

Returns:

  • (String)


121
122
123
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 121

def challenge_required
  @challenge_required
end

#data_quality_indicatorString

The field is used to indicate that a transaction does not meet the Visa Secure authentication data quality requirements.

Returns:

  • (String)


372
373
374
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 372

def data_quality_indicator
  @data_quality_indicator
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)


132
133
134
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 132

def decoupled_authentication_indicator
  @decoupled_authentication_indicator
end

#directory_server_error_codeString

The directory server error code indicating a problem with this transaction. Note - Max Length of this field is typically 3 characters.

Returns:

  • (String)


137
138
139
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 137

def directory_server_error_code
  @directory_server_error_code
end

#directory_server_error_descriptionString

Directory server text and additional detail about the error for this transaction.

Returns:

  • (String)


142
143
144
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 142

def directory_server_error_description
  @directory_server_error_description
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 Visa Acceptance 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)


367
368
369
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 367

def directory_server_transaction_id
  @directory_server_transaction_id
end

#eciString

Note This field applies only to non-U.S-issued cards. For enroll, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB, Diners Club, and Discover transactions when the card is not enrolled. For more information, see "Interpreting the Reply," page 22. If you are not using the Visa Acceptance payment services, you must send this value to your payment processor in the subsequent request for card authorization. This field contains one of these values:

  • 06: The card can be enrolled. Liability shift.
  • 07: The card cannot be enrolled. No liability shift. For validate, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB, Diners Club, and Discover transactions. The field is absent when authentication fails. You must send this value to your payment processor in the subsequent request for card authorization. This field contains one of these values:
  • 05: Successful authentication
  • 06: Authentication attempted
  • 07: Failed authentication (No response from the merchant because of a problem.)

Returns:

  • (String)


187
188
189
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 187

def eci
  @eci
end

#eci_rawString

ECI value that can be returned for Visa, Mastercard, American Express, JCB, Diners Club, and Discover. The field is absent when authentication fails. If your payment processor is Streamline, you must pass the value of this field instead of the value of eci or ucafCollectionIndicator. This field can contain one of these values:

  • 01: Authentication attempted (Mastercard)
  • 02: Successful authentication (Mastercard)
  • 05: Successful authentication (Visa, American Express, JCB, Diners Club, and Discover)
  • 06: Authentication attempted (Visa, American Express, JCB, Diners Club, and Discover)

Returns:

  • (String)


203
204
205
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 203

def eci_raw
  @eci_raw
end

#ecommerce_indicatorString

Commerce indicator for cards not enrolled. This field contains one of these values:

  • internet: Card not enrolled, or card type not supported by payer authentication. No liability shift.
  • js_attempted: Card not enrolled, but attempt to authenticate is recorded. Liability shift.
  • js_failure: J/Secure directory service is not available. No liability shift.
  • spa: Mastercard card not enrolled in the SecureCode program. No liability shift.
  • vbv_attempted: Card not enrolled, but attempt to authenticate is recorded. Liability shift.
  • vbv_failure: For payment processor Barclays, Streamline, AIBMS, or FDC Germany, you receive this result if Visa’s directory service is not available. No liability shift.

Returns:

  • (String)


161
162
163
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 161

def ecommerce_indicator
  @ecommerce_indicator
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)


212
213
214
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 212

def effective_authentication_type
  @effective_authentication_type
end

#indicatorString

Indicator used to differentiate Internet transactions from other types. The authentication failed if this field is not returned. For Visa, if your payment processor is Streamline, Barclays, AIBMS, or FDC Germany, you receive the value vbv_failure instead of internet when eci is 07. The value of this field is passed automatically to the authorization service if you request the services together. This field contains one of these values:

  • aesk: American Express SafeKey authentication verified successfully.
  • aesk_attempted: Card not enrolled in American Express SafeKey, but the attempt to authenticate was recorded.
  • dipb: Discover ProtectBuy authentication verified successfully.
  • dipb_attempted: Card not enrolled in Discover ProtectBuy, but the attempt to authenticate was recorded.
  • internet: Authentication was not verified successfully.
  • js: J/Secure authentication verified successfully.
  • js_attempted: Card not enrolled in J/Secure, but the attempt to authenticate was recorded.
  • moto: Mail or telephone order.
  • pb_attempted: Card not enrolled in Diners Club ProtectBuy, but the attempt to authenticate was recorded.
  • recurring: Recurring transaction.
  • spa: Mastercard Identity Check authentication verified successfully.
  • spa_failure: Mastercard Identity Check failed authentication.
  • vbv: Visa Secure authentication verified successfully.
  • vbv_attempted: Card not enrolled in Visa Secure, but the attempt to authenticate was recorded.
  • vbv_failure: Visa Secure authentication unavailable.

Returns:

  • (String)


421
422
423
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 421

def indicator
  @indicator
end

#interaction_counterString

Indicates the number of authentication cycles attempted by the cardholder and is tracked by the Issuing Banks ACS.Example: if customer gets the challenge window and enter in their one time password and hit submit then that interaction counter should just be 1. When customer gets the challenge window and the bank asks if they want to have the one time password sent to their phone or their email and they have to choose before going to the next screen to enter in their one time password then this interaction count would be 2. One for the selection of how they want the one time password delivered and another with them actually entering in the one time password and hitting the submit button.

Returns:

  • (String)


435
436
437
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 435

def interaction_counter
  @interaction_counter
end

#ivrIvr

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:



221
222
223
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 221

def ivr
  @ivr
end

#network_scoreString

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

Returns:

  • (String)


235
236
237
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 235

def network_score
  @network_score
end

#pareqString

Payer authentication request (PAReq) message that you need to forward to the ACS. The value can be very large. The value is in base64.

Returns:

  • (String)


241
242
243
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 241

def pareq
  @pareq
end

#pares_statusString

Raw result of the authentication check. If you are configured for Asia, Middle East, and Africa Gateway Processing, you need to send the value of this field in your authorization request. This field can contain one of these values:

  • A: Proof of authentication attempt was generated.
  • N: Customer failed or canceled authentication. Transaction denied.
  • U: Authentication not completed regardless of the reason.
  • Y: Customer was successfully authenticated.

Returns:

  • (String)


253
254
255
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 253

def pares_status
  @pares_status
end

#proof_xmlString

Date and time of the enrollment check combined with the VEReq and VERes elements. If you ever need to show proof of enrollment checking, you may need to parse the string for the information required by the payment card company. The value can be very large. For cards issued in the U.S. or Canada, Visa may require this data for specific merchant category codes.For cards not issued in the U.S. or Canada, your bank may require this data as proof of enrollment checking for any payer authentication transaction that you re-present because of a chargeback.

Returns:

  • (String)


266
267
268
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 266

def proof_xml
  @proof_xml
end

#proxy_panString

Encrypted version of the card number used in the payer authentication request message.

Returns:

  • (String)


271
272
273
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 271

def proxy_pan
  @proxy_pan
end

#sdk_transaction_idString

SDK unique transaction identifier that is generated on each new transaction.

Returns:

  • (String)


276
277
278
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 276

def sdk_transaction_id
  @sdk_transaction_id
end

#signed_pares_status_reasonString

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

Returns:

  • (String)


281
282
283
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 281

def signed_pares_status_reason
  @signed_pares_status_reason
end

#specification_versionString

This field contains the 3D Secure version that was used to process the transaction. For example: 2.2.0

Returns:

  • (String)


286
287
288
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 286

def specification_version
  @specification_version
end

#step_up_urlString

The fully qualified URL that the merchant uses to post a form to the cardholder in order to complete the Consumer Authentication transaction for the Cardinal Cruise API integration.

Returns:

  • (String)


292
293
294
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 292

def step_up_url
  @step_up_url
end

#strong_authenticationStrongAuthentication1

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



230
231
232
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 230

def strong_authentication
  @strong_authentication
end

#three_ds_server_transaction_idString

Unique transaction identifier assigned by the 3DS Server to identify a single transaction.

Returns:

  • (String)


297
298
299
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 297

def three_ds_server_transaction_id
  @three_ds_server_transaction_id
end

#ucaf_authentication_dataString

AAV is a unique identifier generated by the card-issuing bank for Mastercard Identity Check transactions after the customer is authenticated. The value is in base64. Include the data in the card authorization request.

Returns:

  • (String)


304
305
306
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 304

def ucaf_authentication_data
  @ucaf_authentication_data
end

#ucaf_collection_indicatorString

For enroll, Returned only for Mastercard transactions. Indicates that authentication is not required because the customer is not enrolled. Add the value of this field to the authorization field ucaf_collection_indicator. This field can contain these values: 0, 1. For validate, Numeric electronic commerce indicator (ECI) returned only for Mastercard Identity Check transactions. The field is absent when authentication fails. You must send this value to your payment processor in the request for card authorization. This field contain one of these values:

  • 0: Authentication data not collected, and customer authentication was not completed.
  • 1: Authentication data not collected because customer authentication was not completed.
  • 2: Authentication data collected because customer completed authentication.

Returns:

  • (String)


324
325
326
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 324

def ucaf_collection_indicator
  @ucaf_collection_indicator
end

#veres_enrolledString

Result of the enrollment check. This field can contain one of these values:

  • Y: Card enrolled or can be enrolled; you must authenticate. Liability shift.
  • N: Card not enrolled; proceed with authorization. Liability shift.
  • U: Unable to authenticate regardless of the reason. No liability shift. Note This field only applies to the Asia, Middle East, and Africa Gateway. If you are configured for this processor, you must send the value of this field in your authorization request. The following value can be returned if you are using rules-based Payer Authentication:
  • B: Indicates that authentication was bypassed.

Returns:

  • (String)


341
342
343
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 341

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)


443
444
445
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 443

def white_list_status
  @white_list_status
end

#white_list_status_sourceString

This data element will be populated by the system setting Whitelist Status. Possible Values: 01 - 3DS/ Server/ 02 – DS/03 - ACS

Returns:

  • (String)


346
347
348
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 346

def white_list_status_source
  @white_list_status_source
end

#xidString

Transaction identifier generated by Visa Acceptance for successful enrollment or validation checks. Use this value, which is in base64, to match an outgoing PAReq with an incoming PARes. Visa Acceptance forwards the XID with the card authorization service to these payment processors in these cases:

  • Barclays
  • Streamline (when the ecommerceIndicator=spa)

Returns:

  • (String)


357
358
359
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 357

def xid
  @xid
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



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
684
685
686
687
688
689
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
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 656

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  access_token = hash.key?('accessToken') ? hash['accessToken'] : SKIP
  acs_rendering_type =
    hash.key?('acsRenderingType') ? hash['acsRenderingType'] : SKIP
  acs_transaction_id =
    hash.key?('acsTransactionId') ? hash['acsTransactionId'] : SKIP
  acs_url = hash.key?('acsUrl') ? hash['acsUrl'] : SKIP
  authentication_path =
    hash.key?('authenticationPath') ? hash['authenticationPath'] : SKIP
  authorization_payload =
    hash.key?('authorizationPayload') ? hash['authorizationPayload'] : SKIP
  authentication_transaction_id =
    hash.key?('authenticationTransactionId') ? hash['authenticationTransactionId'] : SKIP
  cardholder_message =
    hash.key?('cardholderMessage') ? hash['cardholderMessage'] : SKIP
  cavv = hash.key?('cavv') ? hash['cavv'] : SKIP
  cavv_algorithm = hash.key?('cavvAlgorithm') ? hash['cavvAlgorithm'] : SKIP
  challenge_cancel_code =
    hash.key?('challengeCancelCode') ? hash['challengeCancelCode'] : SKIP
  challenge_required =
    hash.key?('challengeRequired') ? hash['challengeRequired'] : SKIP
  decoupled_authentication_indicator =
    hash.key?('decoupledAuthenticationIndicator') ? hash['decoupledAuthenticationIndicator'] : SKIP
  directory_server_error_code =
    hash.key?('directoryServerErrorCode') ? hash['directoryServerErrorCode'] : SKIP
  directory_server_error_description =
    hash.key?('directoryServerErrorDescription') ? hash['directoryServerErrorDescription'] : SKIP
  ecommerce_indicator =
    hash.key?('ecommerceIndicator') ? hash['ecommerceIndicator'] : SKIP
  eci = hash.key?('eci') ? hash['eci'] : SKIP
  eci_raw = hash.key?('eciRaw') ? hash['eciRaw'] : SKIP
  effective_authentication_type =
    hash.key?('effectiveAuthenticationType') ? hash['effectiveAuthenticationType'] : SKIP
  ivr = Ivr.from_hash(hash['ivr']) if hash['ivr']
  strong_authentication = StrongAuthentication1.from_hash(hash['strongAuthentication']) if
    hash['strongAuthentication']
  network_score = hash.key?('networkScore') ? hash['networkScore'] : SKIP
  pareq = hash.key?('pareq') ? hash['pareq'] : SKIP
  pares_status = hash.key?('paresStatus') ? hash['paresStatus'] : SKIP
  proof_xml = hash.key?('proofXml') ? hash['proofXml'] : SKIP
  proxy_pan = hash.key?('proxyPan') ? hash['proxyPan'] : SKIP
  sdk_transaction_id =
    hash.key?('sdkTransactionId') ? hash['sdkTransactionId'] : SKIP
  signed_pares_status_reason =
    hash.key?('signedParesStatusReason') ? hash['signedParesStatusReason'] : SKIP
  specification_version =
    hash.key?('specificationVersion') ? hash['specificationVersion'] : SKIP
  step_up_url = hash.key?('stepUpUrl') ? hash['stepUpUrl'] : SKIP
  three_ds_server_transaction_id =
    hash.key?('threeDSServerTransactionId') ? hash['threeDSServerTransactionId'] : SKIP
  ucaf_authentication_data =
    hash.key?('ucafAuthenticationData') ? hash['ucafAuthenticationData'] : SKIP
  ucaf_collection_indicator =
    hash.key?('ucafCollectionIndicator') ? hash['ucafCollectionIndicator'] : SKIP
  veres_enrolled = hash.key?('veresEnrolled') ? hash['veresEnrolled'] : SKIP
  white_list_status_source =
    hash.key?('whiteListStatusSource') ? hash['whiteListStatusSource'] : SKIP
  xid = hash.key?('xid') ? hash['xid'] : SKIP
  directory_server_transaction_id =
    hash.key?('directoryServerTransactionId') ? hash['directoryServerTransactionId'] : SKIP
  data_quality_indicator =
    hash.key?('dataQualityIndicator') ? hash['dataQualityIndicator'] : SKIP
  authentication_result =
    hash.key?('authenticationResult') ? hash['authenticationResult'] : SKIP
  authentication_status_msg =
    hash.key?('authenticationStatusMsg') ? hash['authenticationStatusMsg'] : SKIP
  indicator = hash.key?('indicator') ? hash['indicator'] : SKIP
  interaction_counter =
    hash.key?('interactionCounter') ? hash['interactionCounter'] : SKIP
  white_list_status =
    hash.key?('whiteListStatus') ? hash['whiteListStatus'] : 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.
  ConsumerAuthenticationInformation1.new(access_token: access_token,
                                         acs_rendering_type: acs_rendering_type,
                                         acs_transaction_id: acs_transaction_id,
                                         acs_url: acs_url,
                                         authentication_path: authentication_path,
                                         authorization_payload: authorization_payload,
                                         authentication_transaction_id: authentication_transaction_id,
                                         cardholder_message: cardholder_message,
                                         cavv: cavv,
                                         cavv_algorithm: cavv_algorithm,
                                         challenge_cancel_code: challenge_cancel_code,
                                         challenge_required: challenge_required,
                                         decoupled_authentication_indicator: decoupled_authentication_indicator,
                                         directory_server_error_code: directory_server_error_code,
                                         directory_server_error_description: directory_server_error_description,
                                         ecommerce_indicator: ecommerce_indicator,
                                         eci: eci,
                                         eci_raw: eci_raw,
                                         effective_authentication_type: effective_authentication_type,
                                         ivr: ivr,
                                         strong_authentication: strong_authentication,
                                         network_score: network_score,
                                         pareq: pareq,
                                         pares_status: pares_status,
                                         proof_xml: proof_xml,
                                         proxy_pan: proxy_pan,
                                         sdk_transaction_id: sdk_transaction_id,
                                         signed_pares_status_reason: signed_pares_status_reason,
                                         specification_version: specification_version,
                                         step_up_url: step_up_url,
                                         three_ds_server_transaction_id: three_ds_server_transaction_id,
                                         ucaf_authentication_data: ucaf_authentication_data,
                                         ucaf_collection_indicator: ucaf_collection_indicator,
                                         veres_enrolled: veres_enrolled,
                                         white_list_status_source: white_list_status_source,
                                         xid: xid,
                                         directory_server_transaction_id: directory_server_transaction_id,
                                         data_quality_indicator: data_quality_indicator,
                                         authentication_result: authentication_result,
                                         authentication_status_msg: authentication_status_msg,
                                         indicator: indicator,
                                         interaction_counter: interaction_counter,
                                         white_list_status: white_list_status,
                                         additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 446

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['access_token'] = 'accessToken'
  @_hash['acs_rendering_type'] = 'acsRenderingType'
  @_hash['acs_transaction_id'] = 'acsTransactionId'
  @_hash['acs_url'] = 'acsUrl'
  @_hash['authentication_path'] = 'authenticationPath'
  @_hash['authorization_payload'] = 'authorizationPayload'
  @_hash['authentication_transaction_id'] = 'authenticationTransactionId'
  @_hash['cardholder_message'] = 'cardholderMessage'
  @_hash['cavv'] = 'cavv'
  @_hash['cavv_algorithm'] = 'cavvAlgorithm'
  @_hash['challenge_cancel_code'] = 'challengeCancelCode'
  @_hash['challenge_required'] = 'challengeRequired'
  @_hash['decoupled_authentication_indicator'] =
    'decoupledAuthenticationIndicator'
  @_hash['directory_server_error_code'] = 'directoryServerErrorCode'
  @_hash['directory_server_error_description'] =
    'directoryServerErrorDescription'
  @_hash['ecommerce_indicator'] = 'ecommerceIndicator'
  @_hash['eci'] = 'eci'
  @_hash['eci_raw'] = 'eciRaw'
  @_hash['effective_authentication_type'] = 'effectiveAuthenticationType'
  @_hash['ivr'] = 'ivr'
  @_hash['strong_authentication'] = 'strongAuthentication'
  @_hash['network_score'] = 'networkScore'
  @_hash['pareq'] = 'pareq'
  @_hash['pares_status'] = 'paresStatus'
  @_hash['proof_xml'] = 'proofXml'
  @_hash['proxy_pan'] = 'proxyPan'
  @_hash['sdk_transaction_id'] = 'sdkTransactionId'
  @_hash['signed_pares_status_reason'] = 'signedParesStatusReason'
  @_hash['specification_version'] = 'specificationVersion'
  @_hash['step_up_url'] = 'stepUpUrl'
  @_hash['three_ds_server_transaction_id'] = 'threeDSServerTransactionId'
  @_hash['ucaf_authentication_data'] = 'ucafAuthenticationData'
  @_hash['ucaf_collection_indicator'] = 'ucafCollectionIndicator'
  @_hash['veres_enrolled'] = 'veresEnrolled'
  @_hash['white_list_status_source'] = 'whiteListStatusSource'
  @_hash['xid'] = 'xid'
  @_hash['directory_server_transaction_id'] =
    'directoryServerTransactionId'
  @_hash['data_quality_indicator'] = 'dataQualityIndicator'
  @_hash['authentication_result'] = 'authenticationResult'
  @_hash['authentication_status_msg'] = 'authenticationStatusMsg'
  @_hash['indicator'] = 'indicator'
  @_hash['interaction_counter'] = 'interactionCounter'
  @_hash['white_list_status'] = 'whiteListStatus'
  @_hash
end

.nullablesObject

An array for nullable fields



547
548
549
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 547

def self.nullables
  []
end

.optionalsObject

An array for optional fields



498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 498

def self.optionals
  %w[
    access_token
    acs_rendering_type
    acs_transaction_id
    acs_url
    authentication_path
    authorization_payload
    authentication_transaction_id
    cardholder_message
    cavv
    cavv_algorithm
    challenge_cancel_code
    challenge_required
    decoupled_authentication_indicator
    directory_server_error_code
    directory_server_error_description
    ecommerce_indicator
    eci
    eci_raw
    effective_authentication_type
    ivr
    strong_authentication
    network_score
    pareq
    pares_status
    proof_xml
    proxy_pan
    sdk_transaction_id
    signed_pares_status_reason
    specification_version
    step_up_url
    three_ds_server_transaction_id
    ucaf_authentication_data
    ucaf_collection_indicator
    veres_enrolled
    white_list_status_source
    xid
    directory_server_transaction_id
    data_quality_indicator
    authentication_result
    authentication_status_msg
    indicator
    interaction_counter
    white_list_status
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



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
844
845
846
847
848
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 817

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} access_token: #{@access_token.inspect}, acs_rendering_type:"\
  " #{@acs_rendering_type.inspect}, acs_transaction_id: #{@acs_transaction_id.inspect},"\
  " acs_url: #{@acs_url.inspect}, authentication_path: #{@authentication_path.inspect},"\
  " authorization_payload: #{@authorization_payload.inspect}, authentication_transaction_id:"\
  " #{@authentication_transaction_id.inspect}, cardholder_message:"\
  " #{@cardholder_message.inspect}, cavv: #{@cavv.inspect}, cavv_algorithm:"\
  " #{@cavv_algorithm.inspect}, challenge_cancel_code: #{@challenge_cancel_code.inspect},"\
  " challenge_required: #{@challenge_required.inspect}, decoupled_authentication_indicator:"\
  " #{@decoupled_authentication_indicator.inspect}, directory_server_error_code:"\
  " #{@directory_server_error_code.inspect}, directory_server_error_description:"\
  " #{@directory_server_error_description.inspect}, ecommerce_indicator:"\
  " #{@ecommerce_indicator.inspect}, eci: #{@eci.inspect}, eci_raw: #{@eci_raw.inspect},"\
  " effective_authentication_type: #{@effective_authentication_type.inspect}, ivr:"\
  " #{@ivr.inspect}, strong_authentication: #{@strong_authentication.inspect}, network_score:"\
  " #{@network_score.inspect}, pareq: #{@pareq.inspect}, pares_status:"\
  " #{@pares_status.inspect}, proof_xml: #{@proof_xml.inspect}, proxy_pan:"\
  " #{@proxy_pan.inspect}, sdk_transaction_id: #{@sdk_transaction_id.inspect},"\
  " signed_pares_status_reason: #{@signed_pares_status_reason.inspect}, specification_version:"\
  " #{@specification_version.inspect}, step_up_url: #{@step_up_url.inspect},"\
  " three_ds_server_transaction_id: #{@three_ds_server_transaction_id.inspect},"\
  " ucaf_authentication_data: #{@ucaf_authentication_data.inspect}, ucaf_collection_indicator:"\
  " #{@ucaf_collection_indicator.inspect}, veres_enrolled: #{@veres_enrolled.inspect},"\
  " white_list_status_source: #{@white_list_status_source.inspect}, xid: #{@xid.inspect},"\
  " directory_server_transaction_id: #{@directory_server_transaction_id.inspect},"\
  " data_quality_indicator: #{@data_quality_indicator.inspect}, authentication_result:"\
  " #{@authentication_result.inspect}, authentication_status_msg:"\
  " #{@authentication_status_msg.inspect}, indicator: #{@indicator.inspect},"\
  " interaction_counter: #{@interaction_counter.inspect}, white_list_status:"\
  " #{@white_list_status.inspect}, additional_properties: #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



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
# File 'lib/visa_acceptance_merged_spec/models/consumer_authentication_information1.rb', line 786

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} access_token: #{@access_token}, acs_rendering_type: #{@acs_rendering_type},"\
  " acs_transaction_id: #{@acs_transaction_id}, acs_url: #{@acs_url}, authentication_path:"\
  " #{@authentication_path}, authorization_payload: #{@authorization_payload},"\
  " authentication_transaction_id: #{@authentication_transaction_id}, cardholder_message:"\
  " #{@cardholder_message}, cavv: #{@cavv}, cavv_algorithm: #{@cavv_algorithm},"\
  " challenge_cancel_code: #{@challenge_cancel_code}, challenge_required:"\
  " #{@challenge_required}, decoupled_authentication_indicator:"\
  " #{@decoupled_authentication_indicator}, directory_server_error_code:"\
  " #{@directory_server_error_code}, directory_server_error_description:"\
  " #{@directory_server_error_description}, ecommerce_indicator: #{@ecommerce_indicator}, eci:"\
  " #{@eci}, eci_raw: #{@eci_raw}, effective_authentication_type:"\
  " #{@effective_authentication_type}, ivr: #{@ivr}, strong_authentication:"\
  " #{@strong_authentication}, network_score: #{@network_score}, pareq: #{@pareq},"\
  " pares_status: #{@pares_status}, proof_xml: #{@proof_xml}, proxy_pan: #{@proxy_pan},"\
  " sdk_transaction_id: #{@sdk_transaction_id}, signed_pares_status_reason:"\
  " #{@signed_pares_status_reason}, specification_version: #{@specification_version},"\
  " step_up_url: #{@step_up_url}, three_ds_server_transaction_id:"\
  " #{@three_ds_server_transaction_id}, ucaf_authentication_data:"\
  " #{@ucaf_authentication_data}, ucaf_collection_indicator: #{@ucaf_collection_indicator},"\
  " veres_enrolled: #{@veres_enrolled}, white_list_status_source:"\
  " #{@white_list_status_source}, xid: #{@xid}, directory_server_transaction_id:"\
  " #{@directory_server_transaction_id}, data_quality_indicator: #{@data_quality_indicator},"\
  " authentication_result: #{@authentication_result}, authentication_status_msg:"\
  " #{@authentication_status_msg}, indicator: #{@indicator}, interaction_counter:"\
  " #{@interaction_counter}, white_list_status: #{@white_list_status}, additional_properties:"\
  " #{@additional_properties}>"
end