Class: CyberSourceMergedSpec::BillTo11

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

Overview

BillTo11 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(title: SKIP, first_name: SKIP, middle_name: SKIP, last_name: SKIP, name_suffix: SKIP, address1: SKIP, address2: SKIP, locality: SKIP, postal_code: SKIP, administrative_area: SKIP, country: SKIP, email: SKIP, phone_number: SKIP, verification_status: SKIP, additional_properties: nil) ⇒ BillTo11

Returns a new instance of BillTo11.



247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 247

def initialize(title: SKIP, first_name: SKIP, middle_name: SKIP,
               last_name: SKIP, name_suffix: SKIP, address1: SKIP,
               address2: SKIP, locality: SKIP, postal_code: SKIP,
               administrative_area: SKIP, country: SKIP, email: SKIP,
               phone_number: SKIP, verification_status: SKIP,
               additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @title = title unless title == SKIP
  @first_name = first_name unless first_name == SKIP
  @middle_name = middle_name unless middle_name == SKIP
  @last_name = last_name unless last_name == SKIP
  @name_suffix = name_suffix unless name_suffix == SKIP
  @address1 = address1 unless address1 == SKIP
  @address2 = address2 unless address2 == SKIP
  @locality = locality unless locality == SKIP
  @postal_code = postal_code unless postal_code == SKIP
  @administrative_area = administrative_area unless administrative_area == SKIP
  @country = country unless country == SKIP
  @email = email unless email == SKIP
  @phone_number = phone_number unless phone_number == SKIP
  @verification_status = verification_status unless verification_status == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#address1String

First line of the billing street address.

Returns:

  • (String)


126
127
128
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 126

def address1
  @address1
end

#address2String

Second line of the billing street address.

Returns:

  • (String)


130
131
132
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 130

def address2
  @address2
end

#administrative_areaString

State or province of the billing address. Use the State, Province, and Territory Codes for the United States and Canada.

Returns:

  • (String)


152
153
154
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 152

def administrative_area
  @administrative_area
end

#countryString

Country of the billing address. Use the two-character ISO Standard Country Codes.

Returns:

  • (String)


157
158
159
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 157

def country
  @country
end

#emailString

Customer's email address.

Returns:

  • (String)


161
162
163
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 161

def email
  @email
end

#first_nameString

Customer’s first name. This name must be the same as the name on the card. Important It is your responsibility to determine whether a field is required for the transaction you are requesting.

SEPA

Required for Create Mandate and Import Mandate

BACS

Required for Import Mandate

CyberSource Latin American Processing

Important For an authorization request, CyberSource Latin American Processing concatenates orderInformation.billTo.firstName and orderInformation.billTo.lastName. If the concatenated value exceeds 30 characters, CyberSource Latin American Processing declines the authorization request.
Note CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.

CyberSource through VisaNet

Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks.

For Payouts:

This field may be sent only for FDC Compass.

Chase Paymentech Solutions

Optional field.

Credit Mutuel-CIC

Optional field.

OmniPay Direct

Optional field.

SIX

Optional field.

TSYS Acquiring Solutions

Required when processingInformation.billPaymentOptions.billPayment=true and pointOfSaleInformation.entryMode=keyed.

Worldpay VAP

Optional field.

All other processors

Not used.

Returns:

  • (String)


63
64
65
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 63

def first_name
  @first_name
end

#last_nameString

Customer’s last name. This name must be the same as the name on the card. Important It is your responsibility to determine whether a field is required for the transaction you are requesting.

SEPA

Required for Create Mandate and Import Mandate

BACS

Required for Import Mandate

Chase Paymentech Solutions

Optional field.

Credit Mutuel-CIC

Optional field.

CyberSource Latin American Processing

Important For an authorization request, CyberSource Latin American Processing concatenates orderInformation.billTo.firstName and orderInformation.billTo.lastName. If the concatenated value exceeds 30 characters, CyberSource Latin American Processing declines the authorization request.
Note CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.

CyberSource through VisaNet

Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks.

For Payouts:

This field may be sent only for FDC Compass.

OmniPay Direct

Optional field.

RBS WorldPay Atlanta

Optional field.

SIX

Optional field.

TSYS Acquiring Solutions

Required when processingInformation.billPaymentOptions.billPayment=true and pointOfSaleInformation.entryMode=keyed.

Worldpay VAP

Optional field.

All other processors

Not used.

Returns:

  • (String)


118
119
120
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 118

def last_name
  @last_name
end

#localityString

City of the billing address.

Returns:

  • (String)


134
135
136
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 134

def locality
  @locality
end

#middle_nameString

Customer’s middle name.

Returns:

  • (String)


67
68
69
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 67

def middle_name
  @middle_name
end

#name_suffixString

Customer’s name suffix.

Returns:

  • (String)


122
123
124
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 122

def name_suffix
  @name_suffix
end

#phone_numberString

Customer’s phone number. It is recommended that you include the country code when the order is from outside the U.S.

Chase Paymentech Solutions

Optional field.

Credit Mutuel-CIC

Optional field.

CyberSource through VisaNet

Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks.

For Payouts:

This field may be sent only for FDC Compass.

OmniPay Direct

Optional field.

SIX

Optional field.

TSYS Acquiring Solutions

Optional field.

Worldpay VAP

Optional field.

All other processors

Not used.

Returns:

  • (String)


192
193
194
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 192

def phone_number
  @phone_number
end

#postal_codeString

Postal code for the billing address. The postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code must follow this format: [5 digits][dash][4 digits] Example: 12345-6789 When the billing country is Canada, the 6-digit postal code must follow this format: [alpha][numeric][alpha][space][numeric][alpha][numeric] Example: A1B 2C3

Returns:

  • (String)


147
148
149
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 147

def postal_code
  @postal_code
end

#titleString

Title.

Returns:

  • (String)


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

def title
  @title
end

#verification_statusString

Whether buyer has verified their identity. Used in case of PayPal transactions. Possible Values:

  • VERIFIED
  • UNVERIFIED

Returns:

  • (String)


200
201
202
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 200

def verification_status
  @verification_status
end

Class Method Details

.from_element(root) ⇒ Object



320
321
322
323
324
325
326
327
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
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 320

def self.from_element(root)
  title = XmlUtilities.from_element(root, 'title', String)
  first_name = XmlUtilities.from_element(root, 'firstName', String)
  middle_name = XmlUtilities.from_element(root, 'middleName', String)
  last_name = XmlUtilities.from_element(root, 'lastName', String)
  name_suffix = XmlUtilities.from_element(root, 'nameSuffix', String)
  address1 = XmlUtilities.from_element(root, 'address1', String)
  address2 = XmlUtilities.from_element(root, 'address2', String)
  locality = XmlUtilities.from_element(root, 'locality', String)
  postal_code = XmlUtilities.from_element(root, 'postalCode', String)
  administrative_area = XmlUtilities.from_element(root,
                                                  'administrativeArea',
                                                  String)
  country = XmlUtilities.from_element(root, 'country', String)
  email = XmlUtilities.from_element(root, 'email', String)
  phone_number = XmlUtilities.from_element(root, 'phoneNumber', String)
  verification_status = XmlUtilities.from_element(root,
                                                  'verificationStatus',
                                                  String)

  new(title: title,
      first_name: first_name,
      middle_name: middle_name,
      last_name: last_name,
      name_suffix: name_suffix,
      address1: address1,
      address2: address2,
      locality: locality,
      postal_code: postal_code,
      administrative_area: administrative_area,
      country: country,
      email: email,
      phone_number: phone_number,
      verification_status: verification_status,
      additional_properties: additional_properties)
end

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



274
275
276
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
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 274

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  title = hash.key?('title') ? hash['title'] : SKIP
  first_name = hash.key?('firstName') ? hash['firstName'] : SKIP
  middle_name = hash.key?('middleName') ? hash['middleName'] : SKIP
  last_name = hash.key?('lastName') ? hash['lastName'] : SKIP
  name_suffix = hash.key?('nameSuffix') ? hash['nameSuffix'] : SKIP
  address1 = hash.key?('address1') ? hash['address1'] : SKIP
  address2 = hash.key?('address2') ? hash['address2'] : SKIP
  locality = hash.key?('locality') ? hash['locality'] : SKIP
  postal_code = hash.key?('postalCode') ? hash['postalCode'] : SKIP
  administrative_area =
    hash.key?('administrativeArea') ? hash['administrativeArea'] : SKIP
  country = hash.key?('country') ? hash['country'] : SKIP
  email = hash.key?('email') ? hash['email'] : SKIP
  phone_number = hash.key?('phoneNumber') ? hash['phoneNumber'] : SKIP
  verification_status =
    hash.key?('verificationStatus') ? hash['verificationStatus'] : 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.
  BillTo11.new(title: title,
               first_name: first_name,
               middle_name: middle_name,
               last_name: last_name,
               name_suffix: name_suffix,
               address1: address1,
               address2: address2,
               locality: locality,
               postal_code: postal_code,
               administrative_area: administrative_area,
               country: country,
               email: email,
               phone_number: phone_number,
               verification_status: verification_status,
               additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 203

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['title'] = 'title'
  @_hash['first_name'] = 'firstName'
  @_hash['middle_name'] = 'middleName'
  @_hash['last_name'] = 'lastName'
  @_hash['name_suffix'] = 'nameSuffix'
  @_hash['address1'] = 'address1'
  @_hash['address2'] = 'address2'
  @_hash['locality'] = 'locality'
  @_hash['postal_code'] = 'postalCode'
  @_hash['administrative_area'] = 'administrativeArea'
  @_hash['country'] = 'country'
  @_hash['email'] = 'email'
  @_hash['phone_number'] = 'phoneNumber'
  @_hash['verification_status'] = 'verificationStatus'
  @_hash
end

.nullablesObject

An array for nullable fields



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

def self.nullables
  []
end

.optionalsObject

An array for optional fields



223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 223

def self.optionals
  %w[
    title
    first_name
    middle_name
    last_name
    name_suffix
    address1
    address2
    locality
    postal_code
    administrative_area
    country
    email
    phone_number
    verification_status
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



394
395
396
397
398
399
400
401
402
403
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 394

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} title: #{@title.inspect}, first_name: #{@first_name.inspect}, middle_name:"\
  " #{@middle_name.inspect}, last_name: #{@last_name.inspect}, name_suffix:"\
  " #{@name_suffix.inspect}, address1: #{@address1.inspect}, address2: #{@address2.inspect},"\
  " locality: #{@locality.inspect}, postal_code: #{@postal_code.inspect}, administrative_area:"\
  " #{@administrative_area.inspect}, country: #{@country.inspect}, email: #{@email.inspect},"\
  " phone_number: #{@phone_number.inspect}, verification_status:"\
  " #{@verification_status.inspect}, additional_properties: #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



383
384
385
386
387
388
389
390
391
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 383

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} title: #{@title}, first_name: #{@first_name}, middle_name: #{@middle_name},"\
  " last_name: #{@last_name}, name_suffix: #{@name_suffix}, address1: #{@address1}, address2:"\
  " #{@address2}, locality: #{@locality}, postal_code: #{@postal_code}, administrative_area:"\
  " #{@administrative_area}, country: #{@country}, email: #{@email}, phone_number:"\
  " #{@phone_number}, verification_status: #{@verification_status}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_xml_element(doc, root_name) ⇒ Object



357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
# File 'lib/cyber_source_merged_spec/models/bill_to11.rb', line 357

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

  XmlUtilities.add_as_subelement(doc, root, 'title', title)
  XmlUtilities.add_as_subelement(doc, root, 'firstName', first_name)
  XmlUtilities.add_as_subelement(doc, root, 'middleName', middle_name)
  XmlUtilities.add_as_subelement(doc, root, 'lastName', last_name)
  XmlUtilities.add_as_subelement(doc, root, 'nameSuffix', name_suffix)
  XmlUtilities.add_as_subelement(doc, root, 'address1', address1)
  XmlUtilities.add_as_subelement(doc, root, 'address2', address2)
  XmlUtilities.add_as_subelement(doc, root, 'locality', locality)
  XmlUtilities.add_as_subelement(doc, root, 'postalCode', postal_code)
  XmlUtilities.add_as_subelement(doc, root, 'administrativeArea',
                                 administrative_area)
  XmlUtilities.add_as_subelement(doc, root, 'country', country)
  XmlUtilities.add_as_subelement(doc, root, 'email', email)
  XmlUtilities.add_as_subelement(doc, root, 'phoneNumber', phone_number)
  XmlUtilities.add_as_subelement(doc, root, 'verificationStatus',
                                 verification_status)
  XmlUtilities.add_as_subelement(doc, root, 'additional_properties',
                                 additional_properties)

  root
end