Class: CyberSourceMergedSpec::ProcessingInformation69

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

Overview

ProcessingInformation69 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(bin_source: SKIP, industry_data_type: SKIP, payment_solution: SKIP, commerce_indicator: SKIP, commerce_indicator_label: SKIP, business_application_id: SKIP, authorization_options: SKIP, bank_transfer_options: SKIP, capture_options: SKIP, reconciliation_id: SKIP, japan_payment_options: SKIP, validation_level: SKIP, additional_properties: nil) ⇒ ProcessingInformation69

Returns a new instance of ProcessingInformation69.



251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 251

def initialize(bin_source: SKIP, industry_data_type: SKIP,
               payment_solution: SKIP, commerce_indicator: SKIP,
               commerce_indicator_label: SKIP,
               business_application_id: SKIP, authorization_options: SKIP,
               bank_transfer_options: SKIP, capture_options: SKIP,
               reconciliation_id: SKIP, japan_payment_options: SKIP,
               validation_level: SKIP, additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @bin_source = bin_source unless bin_source == SKIP
  @industry_data_type = industry_data_type unless industry_data_type == SKIP
  @payment_solution = payment_solution unless payment_solution == SKIP
  @commerce_indicator = commerce_indicator unless commerce_indicator == SKIP
  @commerce_indicator_label = commerce_indicator_label unless commerce_indicator_label == SKIP
  @business_application_id = business_application_id unless business_application_id == SKIP
  @authorization_options = authorization_options unless authorization_options == SKIP
  @bank_transfer_options = bank_transfer_options unless bank_transfer_options == SKIP
  @capture_options = capture_options unless capture_options == SKIP
  @reconciliation_id = reconciliation_id unless reconciliation_id == SKIP
  @japan_payment_options = japan_payment_options unless japan_payment_options == SKIP
  @validation_level = validation_level unless validation_level == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#authorization_optionsAuthorizationOptions5

Required for AFT and OCT transactions. Given below is a list of all the BAI values available. However, the processors may support only few specific BAI values.

  • AA : Account-to-account
  • BB : Supplier Payments
  • BI : Bank-Initiated P2P Money Transfer
  • BP : Non-Card Bill Pay/Bill Pay
  • CD : Cash Deposit
  • CP : Credit card Bill Payment
  • FD : Funds disbursement
  • FT : Funds transfer
  • GD : Government Disbursement
  • GP : Gambling payout (non-online gambling)
  • LO : Loyalty credits and rebates
  • MD : Merchant Settlement
  • OG : Online Gambling Payout
  • PD : Payroll and pension disbursement
  • PP : Person-to-Person or Peer-to-Peer
  • TU : Top up, prepaid load
  • WT : Digital wallet


142
143
144
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 142

def authorization_options
  @authorization_options
end

#bank_transfer_optionsBankTransferOptions23

Required for AFT and OCT transactions. Given below is a list of all the BAI values available. However, the processors may support only few specific BAI values.

  • AA : Account-to-account
  • BB : Supplier Payments
  • BI : Bank-Initiated P2P Money Transfer
  • BP : Non-Card Bill Pay/Bill Pay
  • CD : Cash Deposit
  • CP : Credit card Bill Payment
  • FD : Funds disbursement
  • FT : Funds transfer
  • GD : Government Disbursement
  • GP : Gambling payout (non-online gambling)
  • LO : Loyalty credits and rebates
  • MD : Merchant Settlement
  • OG : Online Gambling Payout
  • PD : Payroll and pension disbursement
  • PP : Person-to-Person or Peer-to-Peer
  • TU : Top up, prepaid load
  • WT : Digital wallet


165
166
167
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 165

def bank_transfer_options
  @bank_transfer_options
end

#bin_sourceString

Bin Source File Identifier. Possible values:

  • itmx
  • rupay

Returns:

  • (String)


17
18
19
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 17

def bin_source
  @bin_source
end

#business_application_idString

Required for AFT and OCT transactions. Given below is a list of all the BAI values available. However, the processors may support only few specific BAI values.

  • AA : Account-to-account
  • BB : Supplier Payments
  • BI : Bank-Initiated P2P Money Transfer
  • BP : Non-Card Bill Pay/Bill Pay
  • CD : Cash Deposit
  • CP : Credit card Bill Payment
  • FD : Funds disbursement
  • FT : Funds transfer
  • GD : Government Disbursement
  • GP : Gambling payout (non-online gambling)
  • LO : Loyalty credits and rebates
  • MD : Merchant Settlement
  • OG : Online Gambling Payout
  • PD : Payroll and pension disbursement
  • PP : Person-to-Person or Peer-to-Peer
  • TU : Top up, prepaid load
  • WT : Digital wallet

Returns:

  • (String)


119
120
121
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 119

def business_application_id
  @business_application_id
end

#capture_optionsCaptureOptions3

Required for AFT and OCT transactions. Given below is a list of all the BAI values available. However, the processors may support only few specific BAI values.

  • AA : Account-to-account
  • BB : Supplier Payments
  • BI : Bank-Initiated P2P Money Transfer
  • BP : Non-Card Bill Pay/Bill Pay
  • CD : Cash Deposit
  • CP : Credit card Bill Payment
  • FD : Funds disbursement
  • FT : Funds transfer
  • GD : Government Disbursement
  • GP : Gambling payout (non-online gambling)
  • LO : Loyalty credits and rebates
  • MD : Merchant Settlement
  • OG : Online Gambling Payout
  • PD : Payroll and pension disbursement
  • PP : Person-to-Person or Peer-to-Peer
  • TU : Top up, prepaid load
  • WT : Digital wallet

Returns:



188
189
190
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 188

def capture_options
  @capture_options
end

#commerce_indicatorString

Type of transaction. Some payment card companies use this information when determining discount rates.

Used by

Authorization Required payer authentication transactions; otherwise, optional. Credit Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor.

Ingenico ePayments

When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value

Card Present

You must set this field to retail. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as “moto"

Returns:

  • (String)


72
73
74
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 72

def commerce_indicator
  @commerce_indicator
end

#commerce_indicator_labelString

Type of transaction. Some payment card companies use this information when determining discount rates.

Used by

Authorization Required payer authentication transactions; otherwise, optional. Credit Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor.

Ingenico ePayments

When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value

Card Present

You must set this field to retail. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as moto

Returns:

  • (String)


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

def commerce_indicator_label
  @commerce_indicator_label
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 CyberSource through VisaNet.

Returns:

  • (String)


44
45
46
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 44

def industry_data_type
  @industry_data_type
end

#japan_payment_optionsJapanPaymentOptions3

Reference number for the transaction. Depending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource. The actual value used in the request to the processor is provided back to you by Cybersource in the response.



204
205
206
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 204

def japan_payment_options
  @japan_payment_options
end

#payment_solutionString

Type of digital payment solution for the transaction.

Returns:

  • (String)


48
49
50
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 48

def payment_solution
  @payment_solution
end

#reconciliation_idString

Reference number for the transaction. Depending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource. The actual value used in the request to the processor is provided back to you by Cybersource in the response.

Returns:

  • (String)


196
197
198
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 196

def reconciliation_id
  @reconciliation_id
end

#validation_levelInteger

Enter 1 for routing and account number validation.

Returns:

  • (Integer)


208
209
210
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 208

def validation_level
  @validation_level
end

Class Method Details

.from_element(root) ⇒ Object



328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 328

def self.from_element(root)
  bin_source = XmlUtilities.from_element(root, 'binSource', String)
  industry_data_type = XmlUtilities.from_element(root, 'industryDataType',
                                                 String)
  payment_solution = XmlUtilities.from_element(root, 'paymentSolution',
                                               String)
  commerce_indicator = XmlUtilities.from_element(root, 'commerceIndicator',
                                                 String)
  commerce_indicator_label = XmlUtilities.from_element(
    root, 'commerceIndicatorLabel', String
  )
  business_application_id = XmlUtilities.from_element(
    root, 'businessApplicationId', String
  )
  authorization_options = XmlUtilities.from_element(root,
                                                    'AuthorizationOptions5',
                                                    AuthorizationOptions5)
  bank_transfer_options = XmlUtilities.from_element(root,
                                                    'BankTransferOptions23',
                                                    BankTransferOptions23)
  capture_options = XmlUtilities.from_element(root, 'CaptureOptions3',
                                              CaptureOptions3)
  reconciliation_id = XmlUtilities.from_element(root, 'reconciliationId',
                                                String)
  japan_payment_options = XmlUtilities.from_element(root,
                                                    'JapanPaymentOptions3',
                                                    JapanPaymentOptions3)
  validation_level = XmlUtilities.from_element(root, 'validationLevel',
                                               Integer)

  new(bin_source: bin_source,
      industry_data_type: industry_data_type,
      payment_solution: payment_solution,
      commerce_indicator: commerce_indicator,
      commerce_indicator_label: commerce_indicator_label,
      business_application_id: business_application_id,
      authorization_options: authorization_options,
      bank_transfer_options: bank_transfer_options,
      capture_options: capture_options,
      reconciliation_id: reconciliation_id,
      japan_payment_options: japan_payment_options,
      validation_level: validation_level,
      additional_properties: additional_properties)
end

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 277

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  bin_source = hash.key?('binSource') ? hash['binSource'] : SKIP
  industry_data_type =
    hash.key?('industryDataType') ? hash['industryDataType'] : SKIP
  payment_solution =
    hash.key?('paymentSolution') ? hash['paymentSolution'] : SKIP
  commerce_indicator =
    hash.key?('commerceIndicator') ? hash['commerceIndicator'] : SKIP
  commerce_indicator_label =
    hash.key?('commerceIndicatorLabel') ? hash['commerceIndicatorLabel'] : SKIP
  business_application_id =
    hash.key?('businessApplicationId') ? hash['businessApplicationId'] : SKIP
  authorization_options = AuthorizationOptions5.from_hash(hash['authorizationOptions']) if
    hash['authorizationOptions']
  bank_transfer_options = BankTransferOptions23.from_hash(hash['bankTransferOptions']) if
    hash['bankTransferOptions']
  capture_options = CaptureOptions3.from_hash(hash['captureOptions']) if
    hash['captureOptions']
  reconciliation_id =
    hash.key?('reconciliationId') ? hash['reconciliationId'] : SKIP
  japan_payment_options = JapanPaymentOptions3.from_hash(hash['japanPaymentOptions']) if
    hash['japanPaymentOptions']
  validation_level =
    hash.key?('validationLevel') ? hash['validationLevel'] : 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.
  ProcessingInformation69.new(bin_source: bin_source,
                              industry_data_type: industry_data_type,
                              payment_solution: payment_solution,
                              commerce_indicator: commerce_indicator,
                              commerce_indicator_label: commerce_indicator_label,
                              business_application_id: business_application_id,
                              authorization_options: authorization_options,
                              bank_transfer_options: bank_transfer_options,
                              capture_options: capture_options,
                              reconciliation_id: reconciliation_id,
                              japan_payment_options: japan_payment_options,
                              validation_level: validation_level,
                              additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 211

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['bin_source'] = 'binSource'
  @_hash['industry_data_type'] = 'industryDataType'
  @_hash['payment_solution'] = 'paymentSolution'
  @_hash['commerce_indicator'] = 'commerceIndicator'
  @_hash['commerce_indicator_label'] = 'commerceIndicatorLabel'
  @_hash['business_application_id'] = 'businessApplicationId'
  @_hash['authorization_options'] = 'authorizationOptions'
  @_hash['bank_transfer_options'] = 'bankTransferOptions'
  @_hash['capture_options'] = 'captureOptions'
  @_hash['reconciliation_id'] = 'reconciliationId'
  @_hash['japan_payment_options'] = 'japanPaymentOptions'
  @_hash['validation_level'] = 'validationLevel'
  @_hash
end

.nullablesObject

An array for nullable fields



247
248
249
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 247

def self.nullables
  []
end

.optionalsObject

An array for optional fields



229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 229

def self.optionals
  %w[
    bin_source
    industry_data_type
    payment_solution
    commerce_indicator
    commerce_indicator_label
    business_application_id
    authorization_options
    bank_transfer_options
    capture_options
    reconciliation_id
    japan_payment_options
    validation_level
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



419
420
421
422
423
424
425
426
427
428
429
430
431
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 419

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} bin_source: #{@bin_source.inspect}, industry_data_type:"\
  " #{@industry_data_type.inspect}, payment_solution: #{@payment_solution.inspect},"\
  " commerce_indicator: #{@commerce_indicator.inspect}, commerce_indicator_label:"\
  " #{@commerce_indicator_label.inspect}, business_application_id:"\
  " #{@business_application_id.inspect}, authorization_options:"\
  " #{@authorization_options.inspect}, bank_transfer_options:"\
  " #{@bank_transfer_options.inspect}, capture_options: #{@capture_options.inspect},"\
  " reconciliation_id: #{@reconciliation_id.inspect}, japan_payment_options:"\
  " #{@japan_payment_options.inspect}, validation_level: #{@validation_level.inspect},"\
  " additional_properties: #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



406
407
408
409
410
411
412
413
414
415
416
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 406

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} bin_source: #{@bin_source}, industry_data_type: #{@industry_data_type},"\
  " payment_solution: #{@payment_solution}, commerce_indicator: #{@commerce_indicator},"\
  " commerce_indicator_label: #{@commerce_indicator_label}, business_application_id:"\
  " #{@business_application_id}, authorization_options: #{@authorization_options},"\
  " bank_transfer_options: #{@bank_transfer_options}, capture_options: #{@capture_options},"\
  " reconciliation_id: #{@reconciliation_id}, japan_payment_options:"\
  " #{@japan_payment_options}, validation_level: #{@validation_level}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_xml_element(doc, root_name) ⇒ Object



373
374
375
376
377
378
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
# File 'lib/cyber_source_merged_spec/models/processing_information69.rb', line 373

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

  XmlUtilities.add_as_subelement(doc, root, 'binSource', bin_source)
  XmlUtilities.add_as_subelement(doc, root, 'industryDataType',
                                 industry_data_type)
  XmlUtilities.add_as_subelement(doc, root, 'paymentSolution',
                                 payment_solution)
  XmlUtilities.add_as_subelement(doc, root, 'commerceIndicator',
                                 commerce_indicator)
  XmlUtilities.add_as_subelement(doc, root, 'commerceIndicatorLabel',
                                 commerce_indicator_label)
  XmlUtilities.add_as_subelement(doc, root, 'businessApplicationId',
                                 business_application_id)
  XmlUtilities.add_as_subelement(doc, root, 'AuthorizationOptions5',
                                 authorization_options)
  XmlUtilities.add_as_subelement(doc, root, 'BankTransferOptions23',
                                 bank_transfer_options)
  XmlUtilities.add_as_subelement(doc, root, 'CaptureOptions3',
                                 capture_options)
  XmlUtilities.add_as_subelement(doc, root, 'reconciliationId',
                                 reconciliation_id)
  XmlUtilities.add_as_subelement(doc, root, 'JapanPaymentOptions3',
                                 japan_payment_options)
  XmlUtilities.add_as_subelement(doc, root, 'validationLevel',
                                 validation_level)
  XmlUtilities.add_as_subelement(doc, root, 'additional_properties',
                                 additional_properties)

  root
end