Class: VisaAcceptanceMergedSpec::ProcessingInformation7

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

Overview

ProcessingInformation7 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(action_list: SKIP, payment_solution: SKIP, reconciliation_id: SKIP, link_id: SKIP, report_group: SKIP, visa_checkout_id: SKIP, purchase_level: SKIP, recurring_options: SKIP, industry_data_type: SKIP, payment_type: SKIP, refund_options: SKIP, transaction_type_indicator: SKIP, additional_properties: nil) ⇒ ProcessingInformation7

Returns a new instance of ProcessingInformation7.



193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 193

def initialize(action_list: SKIP, payment_solution: SKIP,
               reconciliation_id: SKIP, link_id: SKIP, report_group: SKIP,
               visa_checkout_id: SKIP, purchase_level: SKIP,
               recurring_options: SKIP, industry_data_type: SKIP,
               payment_type: SKIP, refund_options: SKIP,
               transaction_type_indicator: SKIP, additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @action_list = action_list unless action_list == SKIP
  @payment_solution = payment_solution unless payment_solution == SKIP
  @reconciliation_id = reconciliation_id unless reconciliation_id == SKIP
  @link_id = link_id unless link_id == SKIP
  @report_group = report_group unless report_group == SKIP
  @visa_checkout_id = visa_checkout_id unless visa_checkout_id == SKIP
  @purchase_level = purchase_level unless purchase_level == SKIP
  @recurring_options = recurring_options unless recurring_options == SKIP
  @industry_data_type = industry_data_type unless industry_data_type == SKIP
  @payment_type = payment_type unless payment_type == SKIP
  @refund_options = refund_options unless refund_options == SKIP
  unless transaction_type_indicator == SKIP
    @transaction_type_indicator =
      transaction_type_indicator
  end
  @additional_properties = additional_properties
end

Instance Attribute Details

#action_listArray[String]

Array of actions (one or more) to be included in the payment to invoke bundled services along with payment status. Possible values are one or more of follows:

  • AP_REFUND: Use this when Alternative Payment Refund service is requested.

Returns:

  • (Array[String])


18
19
20
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 18

def action_list
  @action_list
end

#industry_data_typeString

Indicates that the transaction includes industry-specific data. Possible Values:

  • airline
  • restaurant
  • lodging
  • auto_rental
  • transit
  • healthcare_medical
  • healthcare_transit
  • transit

Card Present, Airlines and Auto Rental

You must set this field to airline in order for airline data to be sent to the processor. For example, if this field is not set to airline or is not included in the request, no airline data is sent to the processor. You must set this field to restaurant in order for restaurant data to be sent to the processor. When this field is not set to restaurant or is not included in the request, no restaurant data is sent to the processor. You must set this field to auto_rental in order for auto rental data to be sent to the processor. For example, if this field is not set to auto_rental or is not included in the request, no auto rental data is sent to the processor. Restaurant data is supported only on Visa Acceptance through VisaNet.

Returns:

  • (String)


104
105
106
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 104

def industry_data_type
  @industry_data_type
end

Value that links the current authorization request to the original authorization request. Set this value to the ID that was returned in the reply message from the original authorization request. This value is used for:

  • Partial authorizations
  • Split shipments

Returns:

  • (String)


58
59
60
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 58

def link_id
  @link_id
end

#payment_solutionString

Type of digital payment solution for the transaction. Possible Values:

  • visacheckout: Visa Checkout. This value is required for Visa Checkout transactions. For details, see payment_solution field description in [Visa Checkout Using the REST API.](
  • 001: Apple Pay.
  • 004: Visa Acceptance In-App Solution.
  • 005: Masterpass. This value is required for Masterpass transactions on OmniPay Direct.
  • 006: Android Pay.
  • 007: Chase Pay.
  • 008: Samsung Pay.
  • 012: Google Pay.
  • 013: Visa Acceptance P2PE Decryption
  • 014: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.
  • 015: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.
  • 027: Click to Pay.

Returns:

  • (String)


41
42
43
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 41

def payment_solution
  @payment_solution
end

#payment_typeString

Identifier for the payment type

Returns:

  • (String)


108
109
110
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 108

def payment_type
  @payment_type
end

#purchase_levelString

Set this field to 3 to indicate that the request includes Level III data.

Returns:

  • (String)


73
74
75
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 73

def purchase_level
  @purchase_level
end

#reconciliation_idString

Please check with Visa Acceptance customer support to see if your merchant account is configured correctly so you can include this field in your request.

  • For Payouts: max length for FDCCompass is String (22).

Returns:

  • (String)


48
49
50
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 48

def reconciliation_id
  @reconciliation_id
end

#recurring_optionsRecurringOptions1

Set this field to 3 to indicate that the request includes Level III data.

Returns:



77
78
79
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 77

def recurring_options
  @recurring_options
end

#refund_optionsRefundOptions

Identifier for the payment type

Returns:



112
113
114
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 112

def refund_options
  @refund_options
end

#report_groupString

Attribute that lets you define custom grouping for your processor reports. This field is supported only for Worldpay VAP.

Returns:

  • (String)


63
64
65
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 63

def report_group
  @report_group
end

#transaction_type_indicatorString

This field is used identify the type of payment transaction taking place. This field is applicable for MasterCard transactions only. Possible values:

  • 201- Mastercard Rebate
  • 202- rePower Load Value
  • 203- Gaming Re-pay
  • 204- General Person-to-Person
  • 205- General Transfer to Own Account
  • 206- Agent Cash Out
  • 207- Payment of Own Credit Card Bill
  • 208- Business Disbursement
  • 209- Government/Non-Profit Disbursement
  • 210- Rapid Merchant Settlement
  • 211- Cash in at ATM (Usage limited to specific countries)
  • 212- Cash in at Point of Sale (Usage limited to specific countries)
  • 213- General Business to Business Transfer
  • 214- Mastercard Merchant Presented QR
  • 215- Mastercard Merchant Presented QR Refund Payment
  • 216- Utility Payments (for Brazil domestic use only)
  • 217- Government Services (for Brazil domestic use only)
  • 218- Mobile phone top-ups (for Brazil domestic use only)
  • 219- Coupon booklet payments (for Brazil domestic use only)
  • 220- General Person-to-Person Transfer
  • 221- Person-to-Person Transfer to Card Account
  • 222- General Transfer to Own Account
  • 223- Agent Cash Out
  • 224- Payment of Own Credit Card Bill
  • 225- Business Disbursement
  • 226- Transfer to Own Staged Digital Wallet Account
  • 227- Transfer to Own Debit or Prepaid Account
  • 228- General Business-to-Business Transfer
  • 229- Installment-based repayment
  • 230- Mastercard ATM Cash Pick-Up Transaction
  • 231- Cryptocurrency
  • 232- High-risk Securities

Returns:

  • (String)


150
151
152
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 150

def transaction_type_indicator
  @transaction_type_indicator
end

#visa_checkout_idString

Identifier for the Visa Checkout order. Visa Checkout provides a unique order ID for every transaction in the Visa Checkout callID field.

Returns:

  • (String)


69
70
71
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 69

def visa_checkout_id
  @visa_checkout_id
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 221

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  action_list = hash.key?('actionList') ? hash['actionList'] : SKIP
  payment_solution =
    hash.key?('paymentSolution') ? hash['paymentSolution'] : SKIP
  reconciliation_id =
    hash.key?('reconciliationId') ? hash['reconciliationId'] : SKIP
  link_id = hash.key?('linkId') ? hash['linkId'] : SKIP
  report_group = hash.key?('reportGroup') ? hash['reportGroup'] : SKIP
  visa_checkout_id =
    hash.key?('visaCheckoutId') ? hash['visaCheckoutId'] : SKIP
  purchase_level = hash.key?('purchaseLevel') ? hash['purchaseLevel'] : SKIP
  recurring_options = RecurringOptions1.from_hash(hash['recurringOptions']) if
    hash['recurringOptions']
  industry_data_type =
    hash.key?('industryDataType') ? hash['industryDataType'] : SKIP
  payment_type = hash.key?('paymentType') ? hash['paymentType'] : SKIP
  refund_options = RefundOptions.from_hash(hash['refundOptions']) if hash['refundOptions']
  transaction_type_indicator =
    hash.key?('transactionTypeIndicator') ? hash['transactionTypeIndicator'] : 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.
  ProcessingInformation7.new(action_list: action_list,
                             payment_solution: payment_solution,
                             reconciliation_id: reconciliation_id,
                             link_id: link_id,
                             report_group: report_group,
                             visa_checkout_id: visa_checkout_id,
                             purchase_level: purchase_level,
                             recurring_options: recurring_options,
                             industry_data_type: industry_data_type,
                             payment_type: payment_type,
                             refund_options: refund_options,
                             transaction_type_indicator: transaction_type_indicator,
                             additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 153

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['action_list'] = 'actionList'
  @_hash['payment_solution'] = 'paymentSolution'
  @_hash['reconciliation_id'] = 'reconciliationId'
  @_hash['link_id'] = 'linkId'
  @_hash['report_group'] = 'reportGroup'
  @_hash['visa_checkout_id'] = 'visaCheckoutId'
  @_hash['purchase_level'] = 'purchaseLevel'
  @_hash['recurring_options'] = 'recurringOptions'
  @_hash['industry_data_type'] = 'industryDataType'
  @_hash['payment_type'] = 'paymentType'
  @_hash['refund_options'] = 'refundOptions'
  @_hash['transaction_type_indicator'] = 'transactionTypeIndicator'
  @_hash
end

.nullablesObject

An array for nullable fields



189
190
191
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 189

def self.nullables
  []
end

.optionalsObject

An array for optional fields



171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 171

def self.optionals
  %w[
    action_list
    payment_solution
    reconciliation_id
    link_id
    report_group
    visa_checkout_id
    purchase_level
    recurring_options
    industry_data_type
    payment_type
    refund_options
    transaction_type_indicator
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



280
281
282
283
284
285
286
287
288
289
290
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 280

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} action_list: #{@action_list.inspect}, payment_solution:"\
  " #{@payment_solution.inspect}, reconciliation_id: #{@reconciliation_id.inspect}, link_id:"\
  " #{@link_id.inspect}, report_group: #{@report_group.inspect}, visa_checkout_id:"\
  " #{@visa_checkout_id.inspect}, purchase_level: #{@purchase_level.inspect},"\
  " recurring_options: #{@recurring_options.inspect}, industry_data_type:"\
  " #{@industry_data_type.inspect}, payment_type: #{@payment_type.inspect}, refund_options:"\
  " #{@refund_options.inspect}, transaction_type_indicator:"\
  " #{@transaction_type_indicator.inspect}, additional_properties: #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



268
269
270
271
272
273
274
275
276
277
# File 'lib/visa_acceptance_merged_spec/models/processing_information7.rb', line 268

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} action_list: #{@action_list}, payment_solution: #{@payment_solution},"\
  " reconciliation_id: #{@reconciliation_id}, link_id: #{@link_id}, report_group:"\
  " #{@report_group}, visa_checkout_id: #{@visa_checkout_id}, purchase_level:"\
  " #{@purchase_level}, recurring_options: #{@recurring_options}, industry_data_type:"\
  " #{@industry_data_type}, payment_type: #{@payment_type}, refund_options:"\
  " #{@refund_options}, transaction_type_indicator: #{@transaction_type_indicator},"\
  " additional_properties: #{@additional_properties}>"
end