cybersource_rest_client 0.0.67 → 0.0.68

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/lib/cybersource_rest_client/models/card_processing_config_common_acquirer.rb +257 -257
  3. data/lib/cybersource_rest_client/models/card_processing_config_common_merchant_descriptor_information.rb +279 -279
  4. data/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations.rb +200 -190
  5. data/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations_vault.rb +251 -0
  6. data/lib/cybersource_rest_client/models/e_check_config_common_internal_only_processors.rb +267 -263
  7. data/lib/cybersource_rest_client/models/e_check_config_common_processors.rb +273 -271
  8. data/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_internal_only_processors.rb +193 -191
  9. data/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_processors.rb +285 -283
  10. data/lib/cybersource_rest_client/models/flexv2sessions_fields.rb +199 -199
  11. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information.rb +209 -209
  12. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_amount_details.rb +199 -199
  13. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_amount_details_total_amount.rb +189 -189
  14. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_bill_to.rb +309 -309
  15. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_ship_to.rb +289 -289
  16. data/lib/cybersource_rest_client/models/flexv2sessions_fields_payment_information.rb +189 -189
  17. data/lib/cybersource_rest_client/models/flexv2sessions_fields_payment_information_card.rb +229 -229
  18. data/lib/cybersource_rest_client/models/generate_capture_context_request.rb +13 -13
  19. data/lib/cybersource_rest_client/models/generate_flex_api_capture_context_request.rb +189 -189
  20. data/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +13 -13
  21. data/lib/cybersource_rest_client/models/inline_response_400_1_details.rb +199 -199
  22. data/lib/cybersource_rest_client/models/inline_response_400_2.rb +235 -235
  23. data/lib/cybersource_rest_client/models/inline_response_400_3.rb +235 -235
  24. data/lib/cybersource_rest_client/models/inline_response_400_4.rb +235 -235
  25. data/lib/cybersource_rest_client/models/inline_response_400_5.rb +258 -258
  26. data/lib/cybersource_rest_client/models/inline_response_400_5_fields.rb +213 -213
  27. data/lib/cybersource_rest_client/models/inline_response_400_6_details.rb +201 -201
  28. data/lib/cybersource_rest_client/models/patch_instrument_identifier_request.rb +313 -313
  29. data/lib/cybersource_rest_client/models/post_instrument_identifier_enrollment_request.rb +313 -313
  30. data/lib/cybersource_rest_client/models/post_instrument_identifier_request.rb +313 -313
  31. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response.rb +305 -305
  32. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +445 -428
  33. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +1 -1
  34. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options.rb +339 -411
  35. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options_bonuses.rb +213 -0
  36. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +383 -383
  37. data/lib/cybersource_rest_client/models/ptsv2payments_recurring_payment_information.rb +363 -363
  38. data/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb +298 -298
  39. data/lib/cybersource_rest_client/models/ptsv2paymentsid_client_reference_information.rb +256 -256
  40. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information.rb +219 -219
  41. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information.rb +219 -219
  42. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_customer.rb +222 -222
  43. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_customer.rb +205 -205
  44. data/lib/cybersource_rest_client/models/riskv1decisions_consumer_authentication_information.rb +795 -795
  45. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_line_items.rb +305 -314
  46. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier.rb +313 -313
  47. data/lib/cybersource_rest_client/models/tms_network_token_services.rb +239 -0
  48. data/lib/cybersource_rest_client/models/tms_network_token_services_american_express_token_service.rb +253 -0
  49. data/lib/cybersource_rest_client/models/tms_network_token_services_mastercard_digital_enablement_service.rb +227 -0
  50. data/lib/cybersource_rest_client/models/tms_network_token_services_notifications.rb +190 -0
  51. data/lib/cybersource_rest_client/models/tms_network_token_services_payment_credentials.rb +190 -0
  52. data/lib/cybersource_rest_client/models/tms_network_token_services_synchronous_provisioning.rb +190 -0
  53. data/lib/cybersource_rest_client/models/tms_network_token_services_visa_token_service.rb +244 -0
  54. data/lib/cybersource_rest_client/models/tms_nullify.rb +212 -0
  55. data/lib/cybersource_rest_client/models/tms_sensitive_privileges.rb +190 -0
  56. data/lib/cybersource_rest_client/models/tms_token_formats.rb +223 -0
  57. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card.rb +321 -321
  58. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_card.rb +225 -225
  59. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata.rb +189 -189
  60. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art.rb +250 -250
  61. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset.rb +200 -200
  62. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset__links.rb +189 -189
  63. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset__links_self.rb +190 -190
  64. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset.rb +200 -200
  65. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links.rb +189 -189
  66. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links_self.rb +190 -190
  67. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset.rb +200 -200
  68. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links.rb +189 -189
  69. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links_self.rb +190 -190
  70. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset.rb +200 -200
  71. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset__links.rb +189 -189
  72. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset__links_self.rb +190 -190
  73. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset.rb +200 -200
  74. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links.rb +189 -189
  75. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links_self.rb +190 -190
  76. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset.rb +200 -200
  77. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links.rb +189 -189
  78. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links_self.rb +190 -190
  79. data/lib/cybersource_rest_client/models/token_permissions.rb +223 -0
  80. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +326 -326
  81. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options.rb +322 -247
  82. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +241 -241
  83. data/lib/cybersource_rest_client.rb +13 -0
  84. metadata +16 -3
@@ -1,383 +1,383 @@
1
- =begin
2
- #CyberSource Merged Spec
3
-
4
- #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
-
6
- OpenAPI spec version: 0.0.1
7
-
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.38
10
- =end
11
-
12
- require 'date'
13
-
14
- module CyberSource
15
- class Ptsv2paymentsRecipientInformation
16
- # Identifier for the recipient's account. **Applicable for Barclays AFT transactions only.** It is mandatory for both Visa and Mastercard AFT. For Visa, the field has a maximum length of 34 character. For Mastercard, the field has a maximum length of 50 character.
17
- attr_accessor :account_id
18
-
19
- # Identifies the recipient's account type. **Applicable for Barclays AFT transactions only.** This field is mandatory for Mastercard and not applicable for Visa AFT. Valid values are: - `00` for Other - `01` for Routing Transit Number (RTN) + Bank Account Number (BAN) - `02` for International Bank Account Number (IBAN) - `03` for Card Account - `06` for Bank Account Number (BAN) + Bank Identification Code (BIC), also known as a SWIFT code
20
- attr_accessor :account_type
21
-
22
- # First name of the recipient. **Applicable for Barclays AFT transactions only.** The field is mandatory for both Visa and Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. For Mastercard, the field has a maximum length of 35 characters. Values exceeding the above limits will be truncated.
23
- attr_accessor :first_name
24
-
25
- # Last name of the recipient. **Applicable for Barclays AFT transactions only.** This field is optional for both Visa and Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. For Mastercard, the field has a maximum length of 35 characters. Values exceeding these limits will be truncated.
26
- attr_accessor :last_name
27
-
28
- # Middle name of the recipient. **Applicable for Barclays AFT transactions only.** This field is optional for both Visa and Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. For Mastercard, the field has a maximum length of 1 character. Values exceeding these limits will be truncated.
29
- attr_accessor :middle_name
30
-
31
- # The street address of the recipient **Applicable for Barclays AFT transactions only.** This field is mandatory for Mastercard and not applicable for Visa AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. The field has a maximum length of 50 characters. Values exceeding these limits will be truncated.
32
- attr_accessor :address1
33
-
34
- # Partial postal code for the recipient's address. For example, if the postal code is **NN5 7SG**, the value for this field should be the first part of the postal code: **NN5**. This field is a _pass-through_, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor.
35
- attr_accessor :postal_code
36
-
37
- # The country associated with the address of the recipient. **Applicable for Barclays AFT transactions only.** This field is mandatory for Mastercard and not applicable for Visa AFT. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)
38
- attr_accessor :country
39
-
40
- # Recipient's date of birth. **Format**: `YYYYMMDD`. This field is a `pass-through`, which means that CyberSource ensures that the value is eight numeric characters but otherwise does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor.
41
- attr_accessor :date_of_birth
42
-
43
- # Only for e-wallets: ID, username, hash or anything uniquely identifying the ultimate beneficiary.
44
- attr_accessor :beneficiary_id
45
-
46
- # Only for e-wallets: The ultimate beneficiary's full name.
47
- attr_accessor :beneficiary_name
48
-
49
- # Only for e-wallets: The ultimate beneficiary's street address (street, zip code, city), excluding the country. Example: \"Main street 1, 12345, Barcelona
50
- attr_accessor :beneficiary_address
51
-
52
- # Attribute mapping from ruby-style variable name to JSON key.
53
- def self.attribute_map
54
- {
55
- :'account_id' => :'accountId',
56
- :'account_type' => :'accountType',
57
- :'first_name' => :'firstName',
58
- :'last_name' => :'lastName',
59
- :'middle_name' => :'middleName',
60
- :'address1' => :'address1',
61
- :'postal_code' => :'postalCode',
62
- :'country' => :'country',
63
- :'date_of_birth' => :'dateOfBirth',
64
- :'beneficiary_id' => :'beneficiaryId',
65
- :'beneficiary_name' => :'beneficiaryName',
66
- :'beneficiary_address' => :'beneficiaryAddress'
67
- }
68
- end
69
-
70
- # Attribute mapping from JSON key to ruby-style variable name.
71
- def self.json_map
72
- {
73
- :'account_id' => :'account_id',
74
- :'account_type' => :'account_type',
75
- :'first_name' => :'first_name',
76
- :'last_name' => :'last_name',
77
- :'middle_name' => :'middle_name',
78
- :'address1' => :'address1',
79
- :'postal_code' => :'postal_code',
80
- :'country' => :'country',
81
- :'date_of_birth' => :'date_of_birth',
82
- :'beneficiary_id' => :'beneficiary_id',
83
- :'beneficiary_name' => :'beneficiary_name',
84
- :'beneficiary_address' => :'beneficiary_address'
85
- }
86
- end
87
-
88
- # Attribute type mapping.
89
- def self.swagger_types
90
- {
91
- :'account_id' => :'String',
92
- :'account_type' => :'String',
93
- :'first_name' => :'String',
94
- :'last_name' => :'String',
95
- :'middle_name' => :'String',
96
- :'address1' => :'String',
97
- :'postal_code' => :'String',
98
- :'country' => :'String',
99
- :'date_of_birth' => :'String',
100
- :'beneficiary_id' => :'String',
101
- :'beneficiary_name' => :'String',
102
- :'beneficiary_address' => :'String'
103
- }
104
- end
105
-
106
- # Initializes the object
107
- # @param [Hash] attributes Model attributes in the form of hash
108
- def initialize(attributes = {})
109
- return unless attributes.is_a?(Hash)
110
-
111
- # convert string to symbol for hash key
112
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
113
-
114
- if attributes.has_key?(:'accountId')
115
- self.account_id = attributes[:'accountId']
116
- end
117
-
118
- if attributes.has_key?(:'accountType')
119
- self.account_type = attributes[:'accountType']
120
- end
121
-
122
- if attributes.has_key?(:'firstName')
123
- self.first_name = attributes[:'firstName']
124
- end
125
-
126
- if attributes.has_key?(:'lastName')
127
- self.last_name = attributes[:'lastName']
128
- end
129
-
130
- if attributes.has_key?(:'middleName')
131
- self.middle_name = attributes[:'middleName']
132
- end
133
-
134
- if attributes.has_key?(:'address1')
135
- self.address1 = attributes[:'address1']
136
- end
137
-
138
- if attributes.has_key?(:'postalCode')
139
- self.postal_code = attributes[:'postalCode']
140
- end
141
-
142
- if attributes.has_key?(:'country')
143
- self.country = attributes[:'country']
144
- end
145
-
146
- if attributes.has_key?(:'dateOfBirth')
147
- self.date_of_birth = attributes[:'dateOfBirth']
148
- end
149
-
150
- if attributes.has_key?(:'beneficiaryId')
151
- self.beneficiary_id = attributes[:'beneficiaryId']
152
- end
153
-
154
- if attributes.has_key?(:'beneficiaryName')
155
- self.beneficiary_name = attributes[:'beneficiaryName']
156
- end
157
-
158
- if attributes.has_key?(:'beneficiaryAddress')
159
- self.beneficiary_address = attributes[:'beneficiaryAddress']
160
- end
161
- end
162
-
163
- # Show invalid properties with the reasons. Usually used together with valid?
164
- # @return Array for valid properties with the reasons
165
- def list_invalid_properties
166
- invalid_properties = Array.new
167
- invalid_properties
168
- end
169
-
170
- # Check to see if the all the properties in the model are valid
171
- # @return true if the model is valid
172
- def valid?
173
- true
174
- end
175
-
176
- # Custom attribute writer method with validation
177
- # @param [Object] account_id Value to be assigned
178
- def account_id=(account_id)
179
- @account_id = account_id
180
- end
181
-
182
- # Custom attribute writer method with validation
183
- # @param [Object] account_type Value to be assigned
184
- def account_type=(account_type)
185
- @account_type = account_type
186
- end
187
-
188
- # Custom attribute writer method with validation
189
- # @param [Object] first_name Value to be assigned
190
- def first_name=(first_name)
191
- @first_name = first_name
192
- end
193
-
194
- # Custom attribute writer method with validation
195
- # @param [Object] last_name Value to be assigned
196
- def last_name=(last_name)
197
- @last_name = last_name
198
- end
199
-
200
- # Custom attribute writer method with validation
201
- # @param [Object] middle_name Value to be assigned
202
- def middle_name=(middle_name)
203
- @middle_name = middle_name
204
- end
205
-
206
- # Custom attribute writer method with validation
207
- # @param [Object] address1 Value to be assigned
208
- def address1=(address1)
209
- @address1 = address1
210
- end
211
-
212
- # Custom attribute writer method with validation
213
- # @param [Object] postal_code Value to be assigned
214
- def postal_code=(postal_code)
215
- @postal_code = postal_code
216
- end
217
-
218
- # Custom attribute writer method with validation
219
- # @param [Object] country Value to be assigned
220
- def country=(country)
221
- @country = country
222
- end
223
-
224
- # Custom attribute writer method with validation
225
- # @param [Object] date_of_birth Value to be assigned
226
- def date_of_birth=(date_of_birth)
227
- @date_of_birth = date_of_birth
228
- end
229
-
230
- # Custom attribute writer method with validation
231
- # @param [Object] beneficiary_id Value to be assigned
232
- def beneficiary_id=(beneficiary_id)
233
- @beneficiary_id = beneficiary_id
234
- end
235
-
236
- # Custom attribute writer method with validation
237
- # @param [Object] beneficiary_name Value to be assigned
238
- def beneficiary_name=(beneficiary_name)
239
- @beneficiary_name = beneficiary_name
240
- end
241
-
242
- # Custom attribute writer method with validation
243
- # @param [Object] beneficiary_address Value to be assigned
244
- def beneficiary_address=(beneficiary_address)
245
- @beneficiary_address = beneficiary_address
246
- end
247
-
248
- # Checks equality by comparing each attribute.
249
- # @param [Object] Object to be compared
250
- def ==(o)
251
- return true if self.equal?(o)
252
- self.class == o.class &&
253
- account_id == o.account_id &&
254
- account_type == o.account_type &&
255
- first_name == o.first_name &&
256
- last_name == o.last_name &&
257
- middle_name == o.middle_name &&
258
- address1 == o.address1 &&
259
- postal_code == o.postal_code &&
260
- country == o.country &&
261
- date_of_birth == o.date_of_birth &&
262
- beneficiary_id == o.beneficiary_id &&
263
- beneficiary_name == o.beneficiary_name &&
264
- beneficiary_address == o.beneficiary_address
265
- end
266
-
267
- # @see the `==` method
268
- # @param [Object] Object to be compared
269
- def eql?(o)
270
- self == o
271
- end
272
-
273
- # Calculates hash code according to all attributes.
274
- # @return [Fixnum] Hash code
275
- def hash
276
- [account_id, account_type, first_name, last_name, middle_name, address1, postal_code, country, date_of_birth, beneficiary_id, beneficiary_name, beneficiary_address].hash
277
- end
278
-
279
- # Builds the object from hash
280
- # @param [Hash] attributes Model attributes in the form of hash
281
- # @return [Object] Returns the model itself
282
- def build_from_hash(attributes)
283
- return nil unless attributes.is_a?(Hash)
284
- self.class.swagger_types.each_pair do |key, type|
285
- if type =~ /\AArray<(.*)>/i
286
- # check to ensure the input is an array given that the the attribute
287
- # is documented as an array but the input is not
288
- if attributes[self.class.attribute_map[key]].is_a?(Array)
289
- self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
290
- end
291
- elsif !attributes[self.class.attribute_map[key]].nil?
292
- self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
293
- end # or else data not found in attributes(hash), not an issue as the data can be optional
294
- end
295
-
296
- self
297
- end
298
-
299
- # Deserializes the data based on type
300
- # @param string type Data type
301
- # @param string value Value to be deserialized
302
- # @return [Object] Deserialized data
303
- def _deserialize(type, value)
304
- case type.to_sym
305
- when :DateTime
306
- DateTime.parse(value)
307
- when :Date
308
- Date.parse(value)
309
- when :String
310
- value.to_s
311
- when :Integer
312
- value.to_i
313
- when :Float
314
- value.to_f
315
- when :BOOLEAN
316
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
317
- true
318
- else
319
- false
320
- end
321
- when :Object
322
- # generic object (usually a Hash), return directly
323
- value
324
- when /\AArray<(?<inner_type>.+)>\z/
325
- inner_type = Regexp.last_match[:inner_type]
326
- value.map { |v| _deserialize(inner_type, v) }
327
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
328
- k_type = Regexp.last_match[:k_type]
329
- v_type = Regexp.last_match[:v_type]
330
- {}.tap do |hash|
331
- value.each do |k, v|
332
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
333
- end
334
- end
335
- else # model
336
- temp_model = CyberSource.const_get(type).new
337
- temp_model.build_from_hash(value)
338
- end
339
- end
340
-
341
- # Returns the string representation of the object
342
- # @return [String] String presentation of the object
343
- def to_s
344
- to_hash.to_s
345
- end
346
-
347
- # to_body is an alias to to_hash (backward compatibility)
348
- # @return [Hash] Returns the object in the form of hash
349
- def to_body
350
- to_hash
351
- end
352
-
353
- # Returns the object in the form of hash
354
- # @return [Hash] Returns the object in the form of hash
355
- def to_hash
356
- hash = {}
357
- self.class.attribute_map.each_pair do |attr, param|
358
- value = self.send(attr)
359
- next if value.nil?
360
- hash[param] = _to_hash(value)
361
- end
362
- hash
363
- end
364
-
365
- # Outputs non-array value in the form of hash
366
- # For object, use to_hash. Otherwise, just return the value
367
- # @param [Object] value Any valid value
368
- # @return [Hash] Returns the value in the form of hash
369
- def _to_hash(value)
370
- if value.is_a?(Array)
371
- value.compact.map { |v| _to_hash(v) }
372
- elsif value.is_a?(Hash)
373
- {}.tap do |hash|
374
- value.each { |k, v| hash[k] = _to_hash(v) }
375
- end
376
- elsif value.respond_to? :to_hash
377
- value.to_hash
378
- else
379
- value
380
- end
381
- end
382
- end
383
- end
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.38
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module CyberSource
15
+ class Ptsv2paymentsRecipientInformation
16
+ # Identifier for the recipient's account. This field is applicable for AFT transactions.
17
+ attr_accessor :account_id
18
+
19
+ # Identifies the recipient's account type. This field is applicable for AFT transactions. Valid values are: - `00` for Other - `01` for Routing Transit Number (RTN) + Bank Account Number (BAN) - `02` for International Bank Account Number (IBAN) - `03` for Card Account - `06` for Bank Account Number (BAN) + Bank Identification Code (BIC), also known as a SWIFT code
20
+ attr_accessor :account_type
21
+
22
+ # First name of the recipient. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.
23
+ attr_accessor :first_name
24
+
25
+ # Middle name of the recipient. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.
26
+ attr_accessor :middle_name
27
+
28
+ # Last name of the recipient. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.
29
+ attr_accessor :last_name
30
+
31
+ # The street address of the recipient This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor.
32
+ attr_accessor :address1
33
+
34
+ # Partial postal code for the recipient's address. For example, if the postal code is **NN5 7SG**, the value for this field should be the first part of the postal code: **NN5**. This field is a _pass-through_, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor.
35
+ attr_accessor :postal_code
36
+
37
+ # The country associated with the address of the recipient. This field is applicable for AFT and OCT transactions. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)
38
+ attr_accessor :country
39
+
40
+ # Recipient's date of birth. **Format**: `YYYYMMDD`. This field is a `pass-through`, which means that CyberSource ensures that the value is eight numeric characters but otherwise does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor.
41
+ attr_accessor :date_of_birth
42
+
43
+ # Only for e-wallets: ID, username, hash or anything uniquely identifying the ultimate beneficiary.
44
+ attr_accessor :beneficiary_id
45
+
46
+ # Only for e-wallets: The ultimate beneficiary's full name.
47
+ attr_accessor :beneficiary_name
48
+
49
+ # Only for e-wallets: The ultimate beneficiary's street address (street, zip code, city), excluding the country. Example: \"Main street 1, 12345, Barcelona
50
+ attr_accessor :beneficiary_address
51
+
52
+ # Attribute mapping from ruby-style variable name to JSON key.
53
+ def self.attribute_map
54
+ {
55
+ :'account_id' => :'accountId',
56
+ :'account_type' => :'accountType',
57
+ :'first_name' => :'firstName',
58
+ :'middle_name' => :'middleName',
59
+ :'last_name' => :'lastName',
60
+ :'address1' => :'address1',
61
+ :'postal_code' => :'postalCode',
62
+ :'country' => :'country',
63
+ :'date_of_birth' => :'dateOfBirth',
64
+ :'beneficiary_id' => :'beneficiaryId',
65
+ :'beneficiary_name' => :'beneficiaryName',
66
+ :'beneficiary_address' => :'beneficiaryAddress'
67
+ }
68
+ end
69
+
70
+ # Attribute mapping from JSON key to ruby-style variable name.
71
+ def self.json_map
72
+ {
73
+ :'account_id' => :'account_id',
74
+ :'account_type' => :'account_type',
75
+ :'first_name' => :'first_name',
76
+ :'middle_name' => :'middle_name',
77
+ :'last_name' => :'last_name',
78
+ :'address1' => :'address1',
79
+ :'postal_code' => :'postal_code',
80
+ :'country' => :'country',
81
+ :'date_of_birth' => :'date_of_birth',
82
+ :'beneficiary_id' => :'beneficiary_id',
83
+ :'beneficiary_name' => :'beneficiary_name',
84
+ :'beneficiary_address' => :'beneficiary_address'
85
+ }
86
+ end
87
+
88
+ # Attribute type mapping.
89
+ def self.swagger_types
90
+ {
91
+ :'account_id' => :'String',
92
+ :'account_type' => :'String',
93
+ :'first_name' => :'String',
94
+ :'middle_name' => :'String',
95
+ :'last_name' => :'String',
96
+ :'address1' => :'String',
97
+ :'postal_code' => :'String',
98
+ :'country' => :'String',
99
+ :'date_of_birth' => :'String',
100
+ :'beneficiary_id' => :'String',
101
+ :'beneficiary_name' => :'String',
102
+ :'beneficiary_address' => :'String'
103
+ }
104
+ end
105
+
106
+ # Initializes the object
107
+ # @param [Hash] attributes Model attributes in the form of hash
108
+ def initialize(attributes = {})
109
+ return unless attributes.is_a?(Hash)
110
+
111
+ # convert string to symbol for hash key
112
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
113
+
114
+ if attributes.has_key?(:'accountId')
115
+ self.account_id = attributes[:'accountId']
116
+ end
117
+
118
+ if attributes.has_key?(:'accountType')
119
+ self.account_type = attributes[:'accountType']
120
+ end
121
+
122
+ if attributes.has_key?(:'firstName')
123
+ self.first_name = attributes[:'firstName']
124
+ end
125
+
126
+ if attributes.has_key?(:'middleName')
127
+ self.middle_name = attributes[:'middleName']
128
+ end
129
+
130
+ if attributes.has_key?(:'lastName')
131
+ self.last_name = attributes[:'lastName']
132
+ end
133
+
134
+ if attributes.has_key?(:'address1')
135
+ self.address1 = attributes[:'address1']
136
+ end
137
+
138
+ if attributes.has_key?(:'postalCode')
139
+ self.postal_code = attributes[:'postalCode']
140
+ end
141
+
142
+ if attributes.has_key?(:'country')
143
+ self.country = attributes[:'country']
144
+ end
145
+
146
+ if attributes.has_key?(:'dateOfBirth')
147
+ self.date_of_birth = attributes[:'dateOfBirth']
148
+ end
149
+
150
+ if attributes.has_key?(:'beneficiaryId')
151
+ self.beneficiary_id = attributes[:'beneficiaryId']
152
+ end
153
+
154
+ if attributes.has_key?(:'beneficiaryName')
155
+ self.beneficiary_name = attributes[:'beneficiaryName']
156
+ end
157
+
158
+ if attributes.has_key?(:'beneficiaryAddress')
159
+ self.beneficiary_address = attributes[:'beneficiaryAddress']
160
+ end
161
+ end
162
+
163
+ # Show invalid properties with the reasons. Usually used together with valid?
164
+ # @return Array for valid properties with the reasons
165
+ def list_invalid_properties
166
+ invalid_properties = Array.new
167
+ invalid_properties
168
+ end
169
+
170
+ # Check to see if the all the properties in the model are valid
171
+ # @return true if the model is valid
172
+ def valid?
173
+ true
174
+ end
175
+
176
+ # Custom attribute writer method with validation
177
+ # @param [Object] account_id Value to be assigned
178
+ def account_id=(account_id)
179
+ @account_id = account_id
180
+ end
181
+
182
+ # Custom attribute writer method with validation
183
+ # @param [Object] account_type Value to be assigned
184
+ def account_type=(account_type)
185
+ @account_type = account_type
186
+ end
187
+
188
+ # Custom attribute writer method with validation
189
+ # @param [Object] first_name Value to be assigned
190
+ def first_name=(first_name)
191
+ @first_name = first_name
192
+ end
193
+
194
+ # Custom attribute writer method with validation
195
+ # @param [Object] middle_name Value to be assigned
196
+ def middle_name=(middle_name)
197
+ @middle_name = middle_name
198
+ end
199
+
200
+ # Custom attribute writer method with validation
201
+ # @param [Object] last_name Value to be assigned
202
+ def last_name=(last_name)
203
+ @last_name = last_name
204
+ end
205
+
206
+ # Custom attribute writer method with validation
207
+ # @param [Object] address1 Value to be assigned
208
+ def address1=(address1)
209
+ @address1 = address1
210
+ end
211
+
212
+ # Custom attribute writer method with validation
213
+ # @param [Object] postal_code Value to be assigned
214
+ def postal_code=(postal_code)
215
+ @postal_code = postal_code
216
+ end
217
+
218
+ # Custom attribute writer method with validation
219
+ # @param [Object] country Value to be assigned
220
+ def country=(country)
221
+ @country = country
222
+ end
223
+
224
+ # Custom attribute writer method with validation
225
+ # @param [Object] date_of_birth Value to be assigned
226
+ def date_of_birth=(date_of_birth)
227
+ @date_of_birth = date_of_birth
228
+ end
229
+
230
+ # Custom attribute writer method with validation
231
+ # @param [Object] beneficiary_id Value to be assigned
232
+ def beneficiary_id=(beneficiary_id)
233
+ @beneficiary_id = beneficiary_id
234
+ end
235
+
236
+ # Custom attribute writer method with validation
237
+ # @param [Object] beneficiary_name Value to be assigned
238
+ def beneficiary_name=(beneficiary_name)
239
+ @beneficiary_name = beneficiary_name
240
+ end
241
+
242
+ # Custom attribute writer method with validation
243
+ # @param [Object] beneficiary_address Value to be assigned
244
+ def beneficiary_address=(beneficiary_address)
245
+ @beneficiary_address = beneficiary_address
246
+ end
247
+
248
+ # Checks equality by comparing each attribute.
249
+ # @param [Object] Object to be compared
250
+ def ==(o)
251
+ return true if self.equal?(o)
252
+ self.class == o.class &&
253
+ account_id == o.account_id &&
254
+ account_type == o.account_type &&
255
+ first_name == o.first_name &&
256
+ middle_name == o.middle_name &&
257
+ last_name == o.last_name &&
258
+ address1 == o.address1 &&
259
+ postal_code == o.postal_code &&
260
+ country == o.country &&
261
+ date_of_birth == o.date_of_birth &&
262
+ beneficiary_id == o.beneficiary_id &&
263
+ beneficiary_name == o.beneficiary_name &&
264
+ beneficiary_address == o.beneficiary_address
265
+ end
266
+
267
+ # @see the `==` method
268
+ # @param [Object] Object to be compared
269
+ def eql?(o)
270
+ self == o
271
+ end
272
+
273
+ # Calculates hash code according to all attributes.
274
+ # @return [Fixnum] Hash code
275
+ def hash
276
+ [account_id, account_type, first_name, middle_name, last_name, address1, postal_code, country, date_of_birth, beneficiary_id, beneficiary_name, beneficiary_address].hash
277
+ end
278
+
279
+ # Builds the object from hash
280
+ # @param [Hash] attributes Model attributes in the form of hash
281
+ # @return [Object] Returns the model itself
282
+ def build_from_hash(attributes)
283
+ return nil unless attributes.is_a?(Hash)
284
+ self.class.swagger_types.each_pair do |key, type|
285
+ if type =~ /\AArray<(.*)>/i
286
+ # check to ensure the input is an array given that the the attribute
287
+ # is documented as an array but the input is not
288
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
289
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
290
+ end
291
+ elsif !attributes[self.class.attribute_map[key]].nil?
292
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
293
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
294
+ end
295
+
296
+ self
297
+ end
298
+
299
+ # Deserializes the data based on type
300
+ # @param string type Data type
301
+ # @param string value Value to be deserialized
302
+ # @return [Object] Deserialized data
303
+ def _deserialize(type, value)
304
+ case type.to_sym
305
+ when :DateTime
306
+ DateTime.parse(value)
307
+ when :Date
308
+ Date.parse(value)
309
+ when :String
310
+ value.to_s
311
+ when :Integer
312
+ value.to_i
313
+ when :Float
314
+ value.to_f
315
+ when :BOOLEAN
316
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
317
+ true
318
+ else
319
+ false
320
+ end
321
+ when :Object
322
+ # generic object (usually a Hash), return directly
323
+ value
324
+ when /\AArray<(?<inner_type>.+)>\z/
325
+ inner_type = Regexp.last_match[:inner_type]
326
+ value.map { |v| _deserialize(inner_type, v) }
327
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
328
+ k_type = Regexp.last_match[:k_type]
329
+ v_type = Regexp.last_match[:v_type]
330
+ {}.tap do |hash|
331
+ value.each do |k, v|
332
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
333
+ end
334
+ end
335
+ else # model
336
+ temp_model = CyberSource.const_get(type).new
337
+ temp_model.build_from_hash(value)
338
+ end
339
+ end
340
+
341
+ # Returns the string representation of the object
342
+ # @return [String] String presentation of the object
343
+ def to_s
344
+ to_hash.to_s
345
+ end
346
+
347
+ # to_body is an alias to to_hash (backward compatibility)
348
+ # @return [Hash] Returns the object in the form of hash
349
+ def to_body
350
+ to_hash
351
+ end
352
+
353
+ # Returns the object in the form of hash
354
+ # @return [Hash] Returns the object in the form of hash
355
+ def to_hash
356
+ hash = {}
357
+ self.class.attribute_map.each_pair do |attr, param|
358
+ value = self.send(attr)
359
+ next if value.nil?
360
+ hash[param] = _to_hash(value)
361
+ end
362
+ hash
363
+ end
364
+
365
+ # Outputs non-array value in the form of hash
366
+ # For object, use to_hash. Otherwise, just return the value
367
+ # @param [Object] value Any valid value
368
+ # @return [Hash] Returns the value in the form of hash
369
+ def _to_hash(value)
370
+ if value.is_a?(Array)
371
+ value.compact.map { |v| _to_hash(v) }
372
+ elsif value.is_a?(Hash)
373
+ {}.tap do |hash|
374
+ value.each { |k, v| hash[k] = _to_hash(v) }
375
+ end
376
+ elsif value.respond_to? :to_hash
377
+ value.to_hash
378
+ else
379
+ value
380
+ end
381
+ end
382
+ end
383
+ end