Class: VisaAcceptanceMergedSpec::ProcessorInformation24

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

Overview

ProcessorInformation24 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(processor: SKIP, multi_processor_routing: SKIP, transaction_id: SKIP, network_transaction_id: SKIP, retrieval_reference_number: SKIP, response_id: SKIP, approval_code: SKIP, response_code: SKIP, avs: SKIP, card_verification: SKIP, ach_verification: SKIP, electronic_verification_results: SKIP, event_status: SKIP, system_trace_audit_number: SKIP, response_code_source: SKIP, payment_account_reference_number: SKIP, routing: SKIP, additional_properties: nil) ⇒ ProcessorInformation24

Returns a new instance of ProcessorInformation24.



379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 379

def initialize(processor: SKIP, multi_processor_routing: SKIP,
               transaction_id: SKIP, network_transaction_id: SKIP,
               retrieval_reference_number: SKIP, response_id: SKIP,
               approval_code: SKIP, response_code: SKIP, avs: SKIP,
               card_verification: SKIP, ach_verification: SKIP,
               electronic_verification_results: SKIP, event_status: SKIP,
               system_trace_audit_number: SKIP, response_code_source: SKIP,
               payment_account_reference_number: SKIP, routing: SKIP,
               additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @processor = processor unless processor == SKIP
  @multi_processor_routing = multi_processor_routing unless multi_processor_routing == SKIP
  @transaction_id = transaction_id unless transaction_id == SKIP
  @network_transaction_id = network_transaction_id unless network_transaction_id == SKIP
  unless retrieval_reference_number == SKIP
    @retrieval_reference_number =
      retrieval_reference_number
  end
  @response_id = response_id unless response_id == SKIP
  @approval_code = approval_code unless approval_code == SKIP
  @response_code = response_code unless response_code == SKIP
  @avs = avs unless avs == SKIP
  @card_verification = card_verification unless card_verification == SKIP
  @ach_verification = ach_verification unless ach_verification == SKIP
  unless electronic_verification_results == SKIP
    @electronic_verification_results =
      electronic_verification_results
  end
  @event_status = event_status unless event_status == SKIP
  unless system_trace_audit_number == SKIP
    @system_trace_audit_number =
      system_trace_audit_number
  end
  @response_code_source = response_code_source unless response_code_source == SKIP
  unless  == SKIP
    @payment_account_reference_number =
      
  end
  @routing = routing unless routing == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#ach_verificationAchVerification

For most processors, this is the error message sent directly from the bank. Returned only when the processor returns this value. Important Do not use this field to evaluate the result of the authorization.

PIN debit

Response value that is returned by the processor or bank. Important Do not use this field to evaluate the results of the transaction request. Returned by PIN debit credit, PIN debit purchase, and PIN debit reversal.

AIBMS

If this value is 08, you can accept the transaction if the customer provides you with identification.

Atos

This value is the response code sent from Atos and it might also include the response code from the bank. Format: aa,bb with the two values separated by a comma and where:

  • aa is the two-digit error message from Atos.
  • bb is the optional two-digit error message from the bank.

Comercio Latino

This value is the status code and the error or response code received from the processor separated by a colon. Format: [status code]:E[error code] or [status code]:R[response code] Example 2:R06

JCN Gateway

Processor-defined detail error code. The associated response category code is in the processorInformation.responseCategoryCode field. String (3)

paypalgateway

Processor generated ID for the itemized detail.

Returns:



220
221
222
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 220

def ach_verification
  @ach_verification
end

#approval_codeString

Authorization code. Returned only when the processor returns this value. The length of this value depends on your processor. Returned by authorization service.

PIN debit

Authorization code that is returned by the processor. Returned by PIN debit credit.

Elavon Encrypted Account Number Program

The returned value is OFFLINE.

TSYS Acquiring Solutions

The returned value for a successful zero amount authorization is 000000.

Returns:

  • (String)


88
89
90
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 88

def approval_code
  @approval_code
end

#avsAvs

For most processors, this is the error message sent directly from the bank. Returned only when the processor returns this value. Important Do not use this field to evaluate the result of the authorization.

PIN debit

Response value that is returned by the processor or bank. Important Do not use this field to evaluate the results of the transaction request. Returned by PIN debit credit, PIN debit purchase, and PIN debit reversal.

AIBMS

If this value is 08, you can accept the transaction if the customer provides you with identification.

Atos

This value is the response code sent from Atos and it might also include the response code from the bank. Format: aa,bb with the two values separated by a comma and where:

  • aa is the two-digit error message from Atos.
  • bb is the optional two-digit error message from the bank.

Comercio Latino

This value is the status code and the error or response code received from the processor separated by a colon. Format: [status code]:E[error code] or [status code]:R[response code] Example 2:R06

JCN Gateway

Processor-defined detail error code. The associated response category code is in the processorInformation.responseCategoryCode field. String (3)

paypalgateway

Processor generated ID for the itemized detail.

Returns:



154
155
156
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 154

def avs
  @avs
end

#card_verificationCardVerification1

For most processors, this is the error message sent directly from the bank. Returned only when the processor returns this value. Important Do not use this field to evaluate the result of the authorization.

PIN debit

Response value that is returned by the processor or bank. Important Do not use this field to evaluate the results of the transaction request. Returned by PIN debit credit, PIN debit purchase, and PIN debit reversal.

AIBMS

If this value is 08, you can accept the transaction if the customer provides you with identification.

Atos

This value is the response code sent from Atos and it might also include the response code from the bank. Format: aa,bb with the two values separated by a comma and where:

  • aa is the two-digit error message from Atos.
  • bb is the optional two-digit error message from the bank.

Comercio Latino

This value is the status code and the error or response code received from the processor separated by a colon. Format: [status code]:E[error code] or [status code]:R[response code] Example 2:R06

JCN Gateway

Processor-defined detail error code. The associated response category code is in the processorInformation.responseCategoryCode field. String (3)

paypalgateway

Processor generated ID for the itemized detail.

Returns:



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

def card_verification
  @card_verification
end

#electronic_verification_resultsElectronicVerificationResults1

For most processors, this is the error message sent directly from the bank. Returned only when the processor returns this value. Important Do not use this field to evaluate the result of the authorization.

PIN debit

Response value that is returned by the processor or bank. Important Do not use this field to evaluate the results of the transaction request. Returned by PIN debit credit, PIN debit purchase, and PIN debit reversal.

AIBMS

If this value is 08, you can accept the transaction if the customer provides you with identification.

Atos

This value is the response code sent from Atos and it might also include the response code from the bank. Format: aa,bb with the two values separated by a comma and where:

  • aa is the two-digit error message from Atos.
  • bb is the optional two-digit error message from the bank.

Comercio Latino

This value is the status code and the error or response code received from the processor separated by a colon. Format: [status code]:E[error code] or [status code]:R[response code] Example 2:R06

JCN Gateway

Processor-defined detail error code. The associated response category code is in the processorInformation.responseCategoryCode field. String (3)

paypalgateway

Processor generated ID for the itemized detail.



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

def electronic_verification_results
  @electronic_verification_results
end

#event_statusString

The event status.

Returns:

  • (String)


257
258
259
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 257

def event_status
  @event_status
end

#multi_processor_routingArray[MultiProcessorRouting]

An array of object that contains the list of acquirer response codes & reasons if a transaction is routed to multiple acquirers.

Returns:



19
20
21
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 19

def multi_processor_routing
  @multi_processor_routing
end

#network_transaction_idString

Same value as processorInformation.transactionId

Returns:

  • (String)


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

def network_transaction_id
  @network_transaction_id
end

#payment_account_reference_numberString

Payment Account Reference (PAR) is a non-financial reference assigned to each unique payment account and used to link a payment account to associated network tokens, i.e. the same PAR is returned for PAN-based and tokenized transactions, such as from digital wallets. PAR can be returned in authorisation responses for requests initiated with both real PANs and tokenized PANs. PAR can be used by merchants for fraud detection and regulatory compliance across different channels and digital wallets. PAR allows all participants in the payments chain to have a single, non-sensitive value assigned to a consumer. This value can be used in place of sensitive card holder identification fields, and transmitted across the payments ecosystem to facilitate card holder identification. Note On Visa Acceptance through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:

  • Record: CP01 TCR8
  • Position: 79-110
  • Field: Payment Account Reference The TC 33 Capture file contains information about the purchases and refunds that a merchant submits to Visa Acceptance. Visa Acceptance through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant’s acquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.

Returns:

  • (String)


299
300
301
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 299

def 
  @payment_account_reference_number
end

#processorProcessor

TODO: Write general description for this method

Returns:



14
15
16
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 14

def processor
  @processor
end

#response_codeString

For most processors, this is the error message sent directly from the bank. Returned only when the processor returns this value. Important Do not use this field to evaluate the result of the authorization.

PIN debit

Response value that is returned by the processor or bank. Important Do not use this field to evaluate the results of the transaction request. Returned by PIN debit credit, PIN debit purchase, and PIN debit reversal.

AIBMS

If this value is 08, you can accept the transaction if the customer provides you with identification.

Atos

This value is the response code sent from Atos and it might also include the response code from the bank. Format: aa,bb with the two values separated by a comma and where:

  • aa is the two-digit error message from Atos.
  • bb is the optional two-digit error message from the bank.

Comercio Latino

This value is the status code and the error or response code received from the processor separated by a colon. Format: [status code]:E[error code] or [status code]:R[response code] Example 2:R06

JCN Gateway

Processor-defined detail error code. The associated response category code is in the processorInformation.responseCategoryCode field. String (3)

paypalgateway

Processor generated ID for the itemized detail.

Returns:

  • (String)


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

def response_code
  @response_code
end

#response_code_sourceString

Used by Visa only and contains the response source/reason code that identifies the source of the response decision.

Returns:

  • (String)


274
275
276
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 274

def response_code_source
  @response_code_source
end

#response_idString

Response ID sent from the processor.

Returns:

  • (String)


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

def response_id
  @response_id
end

#retrieval_reference_numberString

Ingenico ePayments

Unique number that Visa Acceptance generates to identify the transaction. You can use this value to identify transactions in the Ingenico ePayments Collections Report, which provides settlement information. Contact customer support for information about the report.

Visa Acceptance through VisaNet

Retrieval request number.

Returns:

  • (String)


71
72
73
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 71

def retrieval_reference_number
  @retrieval_reference_number
end

#routingRouting

Payment Account Reference (PAR) is a non-financial reference assigned to each unique payment account and used to link a payment account to associated network tokens, i.e. the same PAR is returned for PAN-based and tokenized transactions, such as from digital wallets. PAR can be returned in authorisation responses for requests initiated with both real PANs and tokenized PANs. PAR can be used by merchants for fraud detection and regulatory compliance across different channels and digital wallets. PAR allows all participants in the payments chain to have a single, non-sensitive value assigned to a consumer. This value can be used in place of sensitive card holder identification fields, and transmitted across the payments ecosystem to facilitate card holder identification. Note On Visa Acceptance through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:

  • Record: CP01 TCR8
  • Position: 79-110
  • Field: Payment Account Reference The TC 33 Capture file contains information about the purchases and refunds that a merchant submits to Visa Acceptance. Visa Acceptance through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant’s acquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.

Returns:



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

def routing
  @routing
end

#system_trace_audit_numberString

This field is returned only for American Express Direct and Visa Acceptance through VisaNet. Returned by authorization and incremental authorization services.

American Express Direct

System trace audit number (STAN). This value identifies the transaction and is useful when investigating a chargeback dispute.

Visa Acceptance through VisaNet

System trace number that must be printed on the customer’s receipt.

Returns:

  • (String)


269
270
271
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 269

def system_trace_audit_number
  @system_trace_audit_number
end

#transaction_idString

Network transaction identifier (TID). You can use this value to identify a specific transaction when you are discussing the transaction with your processor. Not all processors provide this value. Returned by the authorization service.

PIN debit

Transaction identifier generated by the processor. Returned by PIN debit credit.

GPX

Processor transaction ID.

Cielo

For Cielo, this value is the non-sequential unit (NSU) and is supported for all transactions. The value is generated by Cielo or the issuing bank.

Comercio Latino

For Comercio Latino, this value is the proof of sale or non-sequential unit (NSU) number generated by the acquirers Cielo and Rede, or the issuing bank.

Visa Acceptance through VisaNet and GPN

For details about this value for Visa Acceptance through VisaNet and GPN, see "processorInformation.networkTransactionId" in [REST API Fields](

Moneris

This value identifies the transaction on a host system. It contains the following information:

  • Terminal used to process the transaction
  • Shift during which the transaction took place
  • Batch number
  • Transaction number within the batch You must store this value. If you give the customer a receipt, display this value on the receipt. Example For the value 66012345001069003:
  • Terminal ID = 66012345
  • Shift number = 001
  • Batch number = 069
  • Transaction number = 003

Returns:

  • (String)


57
58
59
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 57

def transaction_id
  @transaction_id
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
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
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 424

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  processor = Processor.from_hash(hash['processor']) if hash['processor']
  # Parameter is an array, so we need to iterate through it
  multi_processor_routing = nil
  unless hash['multiProcessorRouting'].nil?
    multi_processor_routing = []
    hash['multiProcessorRouting'].each do |structure|
      multi_processor_routing << (MultiProcessorRouting.from_hash(structure) if structure)
    end
  end

  multi_processor_routing = SKIP unless hash.key?('multiProcessorRouting')
  transaction_id = hash.key?('transactionId') ? hash['transactionId'] : SKIP
  network_transaction_id =
    hash.key?('networkTransactionId') ? hash['networkTransactionId'] : SKIP
  retrieval_reference_number =
    hash.key?('retrievalReferenceNumber') ? hash['retrievalReferenceNumber'] : SKIP
  response_id = hash.key?('responseId') ? hash['responseId'] : SKIP
  approval_code = hash.key?('approvalCode') ? hash['approvalCode'] : SKIP
  response_code = hash.key?('responseCode') ? hash['responseCode'] : SKIP
  avs = Avs.from_hash(hash['avs']) if hash['avs']
  card_verification = CardVerification1.from_hash(hash['cardVerification']) if
    hash['cardVerification']
  ach_verification = AchVerification.from_hash(hash['achVerification']) if
    hash['achVerification']
  if hash['electronicVerificationResults']
    electronic_verification_results = ElectronicVerificationResults1.from_hash(hash['electronicVerificationResults'])
  end
  event_status = hash.key?('eventStatus') ? hash['eventStatus'] : SKIP
  system_trace_audit_number =
    hash.key?('systemTraceAuditNumber') ? hash['systemTraceAuditNumber'] : SKIP
  response_code_source =
    hash.key?('responseCodeSource') ? hash['responseCodeSource'] : SKIP
   =
    hash.key?('paymentAccountReferenceNumber') ? hash['paymentAccountReferenceNumber'] : SKIP
  routing = Routing.from_hash(hash['routing']) if hash['routing']

  # 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.
  ProcessorInformation24.new(processor: processor,
                             multi_processor_routing: multi_processor_routing,
                             transaction_id: transaction_id,
                             network_transaction_id: network_transaction_id,
                             retrieval_reference_number: retrieval_reference_number,
                             response_id: response_id,
                             approval_code: approval_code,
                             response_code: response_code,
                             avs: avs,
                             card_verification: card_verification,
                             ach_verification: ach_verification,
                             electronic_verification_results: electronic_verification_results,
                             event_status: event_status,
                             system_trace_audit_number: system_trace_audit_number,
                             response_code_source: response_code_source,
                             payment_account_reference_number: ,
                             routing: routing,
                             additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 327

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['processor'] = 'processor'
  @_hash['multi_processor_routing'] = 'multiProcessorRouting'
  @_hash['transaction_id'] = 'transactionId'
  @_hash['network_transaction_id'] = 'networkTransactionId'
  @_hash['retrieval_reference_number'] = 'retrievalReferenceNumber'
  @_hash['response_id'] = 'responseId'
  @_hash['approval_code'] = 'approvalCode'
  @_hash['response_code'] = 'responseCode'
  @_hash['avs'] = 'avs'
  @_hash['card_verification'] = 'cardVerification'
  @_hash['ach_verification'] = 'achVerification'
  @_hash['electronic_verification_results'] =
    'electronicVerificationResults'
  @_hash['event_status'] = 'eventStatus'
  @_hash['system_trace_audit_number'] = 'systemTraceAuditNumber'
  @_hash['response_code_source'] = 'responseCodeSource'
  @_hash['payment_account_reference_number'] =
    'paymentAccountReferenceNumber'
  @_hash['routing'] = 'routing'
  @_hash
end

.nullablesObject

An array for nullable fields



375
376
377
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 375

def self.nullables
  []
end

.optionalsObject

An array for optional fields



352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 352

def self.optionals
  %w[
    processor
    multi_processor_routing
    transaction_id
    network_transaction_id
    retrieval_reference_number
    response_id
    approval_code
    response_code
    avs
    card_verification
    ach_verification
    electronic_verification_results
    event_status
    system_trace_audit_number
    response_code_source
    payment_account_reference_number
    routing
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 509

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} processor: #{@processor.inspect}, multi_processor_routing:"\
  " #{@multi_processor_routing.inspect}, transaction_id: #{@transaction_id.inspect},"\
  " network_transaction_id: #{@network_transaction_id.inspect}, retrieval_reference_number:"\
  " #{@retrieval_reference_number.inspect}, response_id: #{@response_id.inspect},"\
  " approval_code: #{@approval_code.inspect}, response_code: #{@response_code.inspect}, avs:"\
  " #{@avs.inspect}, card_verification: #{@card_verification.inspect}, ach_verification:"\
  " #{@ach_verification.inspect}, electronic_verification_results:"\
  " #{@electronic_verification_results.inspect}, event_status: #{@event_status.inspect},"\
  " system_trace_audit_number: #{@system_trace_audit_number.inspect}, response_code_source:"\
  " #{@response_code_source.inspect}, payment_account_reference_number:"\
  " #{@payment_account_reference_number.inspect}, routing: #{@routing.inspect},"\
  " additional_properties: #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



493
494
495
496
497
498
499
500
501
502
503
504
505
506
# File 'lib/visa_acceptance_merged_spec/models/processor_information24.rb', line 493

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} processor: #{@processor}, multi_processor_routing:"\
  " #{@multi_processor_routing}, transaction_id: #{@transaction_id}, network_transaction_id:"\
  " #{@network_transaction_id}, retrieval_reference_number: #{@retrieval_reference_number},"\
  " response_id: #{@response_id}, approval_code: #{@approval_code}, response_code:"\
  " #{@response_code}, avs: #{@avs}, card_verification: #{@card_verification},"\
  " ach_verification: #{@ach_verification}, electronic_verification_results:"\
  " #{@electronic_verification_results}, event_status: #{@event_status},"\
  " system_trace_audit_number: #{@system_trace_audit_number}, response_code_source:"\
  " #{@response_code_source}, payment_account_reference_number:"\
  " #{@payment_account_reference_number}, routing: #{@routing}, additional_properties:"\
  " #{@additional_properties}>"
end