cybersource_rest_client 0.0.36 → 0.0.37

Sign up to get free protection for your applications and to get access to all the features.
Files changed (23) hide show
  1. checksums.yaml +4 -4
  2. data/lib/cybersource_rest_client/api/invoices_api.rb +6 -6
  3. data/lib/cybersource_rest_client/models/create_search_request.rb +1 -1
  4. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response.rb +10 -1
  5. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_buyer_information.rb +243 -0
  6. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information.rb +10 -1
  7. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information_issuer_information.rb +206 -0
  8. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information_strong_authentication.rb +183 -0
  9. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +20 -4
  10. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +15 -5
  11. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information_strong_authentication.rb +17 -1
  12. data/lib/cybersource_rest_client/models/ptsv2payments_installment_information.rb +24 -4
  13. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information.rb +17 -1
  14. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +17 -1
  15. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +36 -4
  16. data/lib/cybersource_rest_client/models/ptsv2payouts_recipient_information.rb +17 -1
  17. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information.rb +17 -1
  18. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +17 -1
  19. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response.rb +1 -1
  20. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_client_reference_information.rb +13 -4
  21. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_client_reference_information_partner.rb +190 -0
  22. data/lib/cybersource_rest_client.rb +5 -1
  23. metadata +6 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ca22d434092f1deeba1329ddc1f5bed77a11e517a0282a8971966fca8d88dd6d
4
- data.tar.gz: '09c53f361bff05945b0dcf56d583a1aea8c55dd6fcc61969ef69738aa101a8cc'
3
+ metadata.gz: a38c7f8faa170530bb47d8e2d63de7114dc7b14cc9dc55d52bf29a864dffda2e
4
+ data.tar.gz: e95ecbe45b44340de39422f47e232a9582351d802bed44e16732f5471c4ff1d6
5
5
  SHA512:
6
- metadata.gz: 22b1e14a834d1fd9d6de20707db90ba1109114d8f37abb05b53a04ea9c0944d016e1ae20ee8f719a05952e406c671d95331ddb3ffe00eb242a7492b0991da652
7
- data.tar.gz: 7b9f4d1b4bcce4190609ed4e58f11dc507882157f9ecabfa4cb0f0da3f17b52a42fd8c7c2bcdeef291167777a9edb208a3e3eb9a6c8abba8c3b740e1407ae915
6
+ metadata.gz: 70e9ee0cb82e909449bb2eb7a9dd4615bc7fafa0559334e075bc546f15e6b7d444813dd46b9965b987f449ebd412a00292b4265da415776b3cac400ac8a9a3a2
7
+ data.tar.gz: b315d77c25ae81a142355d352d5779e0929d77c1857360177b62a3180c95d55c9a4104c7ec80155192789b2a33da31741eb4da3c595748e897f6bbbc0219f53e
@@ -58,7 +58,7 @@ module CyberSource
58
58
  # header parameters
59
59
  header_params = {}
60
60
  # HTTP header 'Accept' (if needed)
61
- header_params['Accept'] = @api_client.select_header_accept(['application/hal+json;charset=utf-8'])
61
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
62
62
  # HTTP header 'Content-Type'
63
63
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
64
64
 
@@ -134,7 +134,7 @@ module CyberSource
134
134
  # header parameters
135
135
  header_params = {}
136
136
  # HTTP header 'Accept' (if needed)
137
- header_params['Accept'] = @api_client.select_header_accept(['application/hal+json;charset=utf-8'])
137
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
138
138
  # HTTP header 'Content-Type'
139
139
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
140
140
 
@@ -199,7 +199,7 @@ module CyberSource
199
199
  # header parameters
200
200
  header_params = {}
201
201
  # HTTP header 'Accept' (if needed)
202
- header_params['Accept'] = @api_client.select_header_accept(['application/hal+json;charset=utf-8'])
202
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
203
203
  # HTTP header 'Content-Type'
204
204
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
205
205
 
@@ -264,7 +264,7 @@ module CyberSource
264
264
  # header parameters
265
265
  header_params = {}
266
266
  # HTTP header 'Accept' (if needed)
267
- header_params['Accept'] = @api_client.select_header_accept(['application/hal+json;charset=utf-8'])
267
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
268
268
  # HTTP header 'Content-Type'
269
269
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
270
270
 
@@ -329,7 +329,7 @@ module CyberSource
329
329
  # header parameters
330
330
  header_params = {}
331
331
  # HTTP header 'Accept' (if needed)
332
- header_params['Accept'] = @api_client.select_header_accept(['application/hal+json;charset=utf-8'])
332
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
333
333
  # HTTP header 'Content-Type'
334
334
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
335
335
 
@@ -400,7 +400,7 @@ module CyberSource
400
400
  # header parameters
401
401
  header_params = {}
402
402
  # HTTP header 'Accept' (if needed)
403
- header_params['Accept'] = @api_client.select_header_accept(['application/hal+json;charset=utf-8'])
403
+ header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
404
404
  # HTTP header 'Content-Type'
405
405
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
406
406
 
@@ -23,7 +23,7 @@ module CyberSource
23
23
  # Merchant’s time zone in ISO standard, using the TZ database format. For example: `America/Chicago`
24
24
  attr_accessor :timezone
25
25
 
26
- # String that contains the filters and variables for which you want to search. For information about supported field-filters and operators, see the [Query Filters]( https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_search_api/creating_txn_search_request.html) section of the Transaction Search Developer Guide.
26
+ # String that contains the filters and variables for which you want to search. For information about supported field-filters and operators, see the [Query Filters]( https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn-search-intro/txn-filtering.html) section of the Transaction Search Developer Guide.
27
27
  attr_accessor :query
28
28
 
29
29
  # Controls the starting point within the collection of results, which defaults to 0. The first item in the collection is retrieved by setting a zero offset. For example, if you have a collection of 15 items to be retrieved from a resource and you specify limit=5, you can retrieve the entire set of results in 3 successive requests by varying the offset value like this: `offset=0` `offset=5` `offset=10` **Note:** If an offset larger than the number of results is provided, this will result in no embedded object being returned.
@@ -50,6 +50,8 @@ module CyberSource
50
50
 
51
51
  attr_accessor :token_information
52
52
 
53
+ attr_accessor :buyer_information
54
+
53
55
  attr_accessor :risk_information
54
56
 
55
57
  attr_accessor :consumer_authentication_information
@@ -73,6 +75,7 @@ module CyberSource
73
75
  :'point_of_sale_information' => :'pointOfSaleInformation',
74
76
  :'installment_information' => :'installmentInformation',
75
77
  :'token_information' => :'tokenInformation',
78
+ :'buyer_information' => :'buyerInformation',
76
79
  :'risk_information' => :'riskInformation',
77
80
  :'consumer_authentication_information' => :'consumerAuthenticationInformation'
78
81
  }
@@ -97,6 +100,7 @@ module CyberSource
97
100
  :'point_of_sale_information' => :'PtsV2PaymentsPost201ResponsePointOfSaleInformation',
98
101
  :'installment_information' => :'PtsV2PaymentsPost201ResponseInstallmentInformation',
99
102
  :'token_information' => :'PtsV2PaymentsPost201ResponseTokenInformation',
103
+ :'buyer_information' => :'PtsV2PaymentsPost201ResponseBuyerInformation',
100
104
  :'risk_information' => :'PtsV2PaymentsPost201ResponseRiskInformation',
101
105
  :'consumer_authentication_information' => :'PtsV2PaymentsPost201ResponseConsumerAuthenticationInformation'
102
106
  }
@@ -174,6 +178,10 @@ module CyberSource
174
178
  self.token_information = attributes[:'tokenInformation']
175
179
  end
176
180
 
181
+ if attributes.has_key?(:'buyerInformation')
182
+ self.buyer_information = attributes[:'buyerInformation']
183
+ end
184
+
177
185
  if attributes.has_key?(:'riskInformation')
178
186
  self.risk_information = attributes[:'riskInformation']
179
187
  end
@@ -229,6 +237,7 @@ module CyberSource
229
237
  point_of_sale_information == o.point_of_sale_information &&
230
238
  installment_information == o.installment_information &&
231
239
  token_information == o.token_information &&
240
+ buyer_information == o.buyer_information &&
232
241
  risk_information == o.risk_information &&
233
242
  consumer_authentication_information == o.consumer_authentication_information
234
243
  end
@@ -242,7 +251,7 @@ module CyberSource
242
251
  # Calculates hash code according to all attributes.
243
252
  # @return [Fixnum] Hash code
244
253
  def hash
245
- [_links, id, submit_time_utc, status, reconciliation_id, error_information, client_reference_information, processing_information, processor_information, issuer_information, payment_account_information, payment_information, order_information, point_of_sale_information, installment_information, token_information, risk_information, consumer_authentication_information].hash
254
+ [_links, id, submit_time_utc, status, reconciliation_id, error_information, client_reference_information, processing_information, processor_information, issuer_information, payment_account_information, payment_information, order_information, point_of_sale_information, installment_information, token_information, buyer_information, risk_information, consumer_authentication_information].hash
246
255
  end
247
256
 
248
257
  # Builds the object from hash
@@ -0,0 +1,243 @@
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.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CyberSource
16
+ class PtsV2PaymentsPost201ResponseBuyerInformation
17
+ # Your identifier for the customer. When a subscription or customer profile is being created, the maximum length for this field for most processors is 30. Otherwise, the maximum length is 100. #### Comercio Latino For recurring payments in Mexico, the value is the customer’s contract number. Note Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions. #### Worldpay VAP For a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order given, for a customer account ID value and uses the first value it finds: 1. `customer_account_id` value in the follow-on credit request 2. Customer account ID value that was used for the capture that is being credited 3. Customer account ID value that was used for the original authorization If a customer account ID value cannot be found in any of these locations, then no value is used. For processor-specific information, see the `customer_account_id` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
18
+ attr_accessor :merchant_customer_id
19
+
20
+ # 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. For more details, see `recipient_date_of_birth` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)
21
+ attr_accessor :date_of_birth
22
+
23
+ # Customer’s government-assigned tax identification number. #### Tax Calculation Optional for international and value added taxes only. Not applicable to U.S. and Canadian taxes. For processor-specific information, see the purchaser_vat_registration_number field in [Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)
24
+ attr_accessor :vat_registration_number
25
+
26
+ attr_accessor :personal_identification
27
+
28
+ # The description for this field is not available.
29
+ attr_accessor :tax_id
30
+
31
+ # Attribute mapping from ruby-style variable name to JSON key.
32
+ def self.attribute_map
33
+ {
34
+ :'merchant_customer_id' => :'merchantCustomerId',
35
+ :'date_of_birth' => :'dateOfBirth',
36
+ :'vat_registration_number' => :'vatRegistrationNumber',
37
+ :'personal_identification' => :'personalIdentification',
38
+ :'tax_id' => :'taxId'
39
+ }
40
+ end
41
+
42
+ # Attribute type mapping.
43
+ def self.swagger_types
44
+ {
45
+ :'merchant_customer_id' => :'String',
46
+ :'date_of_birth' => :'String',
47
+ :'vat_registration_number' => :'String',
48
+ :'personal_identification' => :'Array<Ptsv2paymentsBuyerInformationPersonalIdentification>',
49
+ :'tax_id' => :'String'
50
+ }
51
+ end
52
+
53
+ # Initializes the object
54
+ # @param [Hash] attributes Model attributes in the form of hash
55
+ def initialize(attributes = {})
56
+ return unless attributes.is_a?(Hash)
57
+
58
+ # convert string to symbol for hash key
59
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
60
+
61
+ if attributes.has_key?(:'merchantCustomerId')
62
+ self.merchant_customer_id = attributes[:'merchantCustomerId']
63
+ end
64
+
65
+ if attributes.has_key?(:'dateOfBirth')
66
+ self.date_of_birth = attributes[:'dateOfBirth']
67
+ end
68
+
69
+ if attributes.has_key?(:'vatRegistrationNumber')
70
+ self.vat_registration_number = attributes[:'vatRegistrationNumber']
71
+ end
72
+
73
+ if attributes.has_key?(:'personalIdentification')
74
+ if (value = attributes[:'personalIdentification']).is_a?(Array)
75
+ self.personal_identification = value
76
+ end
77
+ end
78
+
79
+ if attributes.has_key?(:'taxId')
80
+ self.tax_id = attributes[:'taxId']
81
+ end
82
+ end
83
+
84
+ # Show invalid properties with the reasons. Usually used together with valid?
85
+ # @return Array for valid properties with the reasons
86
+ def list_invalid_properties
87
+ invalid_properties = Array.new
88
+ invalid_properties
89
+ end
90
+
91
+ # Check to see if the all the properties in the model are valid
92
+ # @return true if the model is valid
93
+ def valid?
94
+ true
95
+ end
96
+
97
+ # Custom attribute writer method with validation
98
+ # @param [Object] merchant_customer_id Value to be assigned
99
+ def merchant_customer_id=(merchant_customer_id)
100
+ @merchant_customer_id = merchant_customer_id
101
+ end
102
+
103
+ # Custom attribute writer method with validation
104
+ # @param [Object] date_of_birth Value to be assigned
105
+ def date_of_birth=(date_of_birth)
106
+ @date_of_birth = date_of_birth
107
+ end
108
+
109
+ # Custom attribute writer method with validation
110
+ # @param [Object] vat_registration_number Value to be assigned
111
+ def vat_registration_number=(vat_registration_number)
112
+ @vat_registration_number = vat_registration_number
113
+ end
114
+
115
+ # Checks equality by comparing each attribute.
116
+ # @param [Object] Object to be compared
117
+ def ==(o)
118
+ return true if self.equal?(o)
119
+ self.class == o.class &&
120
+ merchant_customer_id == o.merchant_customer_id &&
121
+ date_of_birth == o.date_of_birth &&
122
+ vat_registration_number == o.vat_registration_number &&
123
+ personal_identification == o.personal_identification &&
124
+ tax_id == o.tax_id
125
+ end
126
+
127
+ # @see the `==` method
128
+ # @param [Object] Object to be compared
129
+ def eql?(o)
130
+ self == o
131
+ end
132
+
133
+ # Calculates hash code according to all attributes.
134
+ # @return [Fixnum] Hash code
135
+ def hash
136
+ [merchant_customer_id, date_of_birth, vat_registration_number, personal_identification, tax_id].hash
137
+ end
138
+
139
+ # Builds the object from hash
140
+ # @param [Hash] attributes Model attributes in the form of hash
141
+ # @return [Object] Returns the model itself
142
+ def build_from_hash(attributes)
143
+ return nil unless attributes.is_a?(Hash)
144
+ self.class.swagger_types.each_pair do |key, type|
145
+ if type =~ /\AArray<(.*)>/i
146
+ # check to ensure the input is an array given that the the attribute
147
+ # is documented as an array but the input is not
148
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
149
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
150
+ end
151
+ elsif !attributes[self.class.attribute_map[key]].nil?
152
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
153
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
154
+ end
155
+
156
+ self
157
+ end
158
+
159
+ # Deserializes the data based on type
160
+ # @param string type Data type
161
+ # @param string value Value to be deserialized
162
+ # @return [Object] Deserialized data
163
+ def _deserialize(type, value)
164
+ case type.to_sym
165
+ when :DateTime
166
+ DateTime.parse(value)
167
+ when :Date
168
+ Date.parse(value)
169
+ when :String
170
+ value.to_s
171
+ when :Integer
172
+ value.to_i
173
+ when :Float
174
+ value.to_f
175
+ when :BOOLEAN
176
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
177
+ true
178
+ else
179
+ false
180
+ end
181
+ when :Object
182
+ # generic object (usually a Hash), return directly
183
+ value
184
+ when /\AArray<(?<inner_type>.+)>\z/
185
+ inner_type = Regexp.last_match[:inner_type]
186
+ value.map { |v| _deserialize(inner_type, v) }
187
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
188
+ k_type = Regexp.last_match[:k_type]
189
+ v_type = Regexp.last_match[:v_type]
190
+ {}.tap do |hash|
191
+ value.each do |k, v|
192
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
193
+ end
194
+ end
195
+ else # model
196
+ temp_model = CyberSource.const_get(type).new
197
+ temp_model.build_from_hash(value)
198
+ end
199
+ end
200
+
201
+ # Returns the string representation of the object
202
+ # @return [String] String presentation of the object
203
+ def to_s
204
+ to_hash.to_s
205
+ end
206
+
207
+ # to_body is an alias to to_hash (backward compatibility)
208
+ # @return [Hash] Returns the object in the form of hash
209
+ def to_body
210
+ to_hash
211
+ end
212
+
213
+ # Returns the object in the form of hash
214
+ # @return [Hash] Returns the object in the form of hash
215
+ def to_hash
216
+ hash = {}
217
+ self.class.attribute_map.each_pair do |attr, param|
218
+ value = self.send(attr)
219
+ next if value.nil?
220
+ hash[param] = _to_hash(value)
221
+ end
222
+ hash
223
+ end
224
+
225
+ # Outputs non-array value in the form of hash
226
+ # For object, use to_hash. Otherwise, just return the value
227
+ # @param [Object] value Any valid value
228
+ # @return [Hash] Returns the value in the form of hash
229
+ def _to_hash(value)
230
+ if value.is_a?(Array)
231
+ value.compact.map { |v| _to_hash(v) }
232
+ elsif value.is_a?(Hash)
233
+ {}.tap do |hash|
234
+ value.each { |k, v| hash[k] = _to_hash(v) }
235
+ end
236
+ elsif value.respond_to? :to_hash
237
+ value.to_hash
238
+ else
239
+ value
240
+ end
241
+ end
242
+ end
243
+ end
@@ -73,6 +73,8 @@ module CyberSource
73
73
 
74
74
  attr_accessor :ivr
75
75
 
76
+ attr_accessor :strong_authentication
77
+
76
78
  # The global score calculated by the CB scoring platform and returned to merchants.
77
79
  attr_accessor :network_score
78
80
 
@@ -159,6 +161,7 @@ module CyberSource
159
161
  :'eci_raw' => :'eciRaw',
160
162
  :'effective_authentication_type' => :'effectiveAuthenticationType',
161
163
  :'ivr' => :'ivr',
164
+ :'strong_authentication' => :'strongAuthentication',
162
165
  :'network_score' => :'networkScore',
163
166
  :'pareq' => :'pareq',
164
167
  :'pares_status' => :'paresStatus',
@@ -206,6 +209,7 @@ module CyberSource
206
209
  :'eci_raw' => :'String',
207
210
  :'effective_authentication_type' => :'String',
208
211
  :'ivr' => :'PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationIvr',
212
+ :'strong_authentication' => :'PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthentication',
209
213
  :'network_score' => :'String',
210
214
  :'pareq' => :'String',
211
215
  :'pares_status' => :'String',
@@ -318,6 +322,10 @@ module CyberSource
318
322
  self.ivr = attributes[:'ivr']
319
323
  end
320
324
 
325
+ if attributes.has_key?(:'strongAuthentication')
326
+ self.strong_authentication = attributes[:'strongAuthentication']
327
+ end
328
+
321
329
  if attributes.has_key?(:'networkScore')
322
330
  self.network_score = attributes[:'networkScore']
323
331
  end
@@ -567,6 +575,7 @@ module CyberSource
567
575
  eci_raw == o.eci_raw &&
568
576
  effective_authentication_type == o.effective_authentication_type &&
569
577
  ivr == o.ivr &&
578
+ strong_authentication == o.strong_authentication &&
570
579
  network_score == o.network_score &&
571
580
  pareq == o.pareq &&
572
581
  pares_status == o.pares_status &&
@@ -599,7 +608,7 @@ module CyberSource
599
608
  # Calculates hash code according to all attributes.
600
609
  # @return [Fixnum] Hash code
601
610
  def hash
602
- [access_token, acs_rendering_type, acs_transaction_id, acs_url, authentication_path, authorization_payload, authentication_transaction_id, cardholder_message, cavv, cavv_algorithm, challenge_cancel_code, challenge_required, decoupled_authentication_indicator, directory_server_error_code, directory_server_error_description, ecommerce_indicator, eci, eci_raw, effective_authentication_type, ivr, network_score, pareq, pares_status, proof_xml, proxy_pan, sdk_transaction_id, signed_pares_status_reason, specification_version, step_up_url, three_ds_server_transaction_id, ucaf_authentication_data, ucaf_collection_indicator, veres_enrolled, white_list_status_source, xid, directory_server_transaction_id, authentication_result, authentication_status_msg, indicator, interaction_counter, white_list_status].hash
611
+ [access_token, acs_rendering_type, acs_transaction_id, acs_url, authentication_path, authorization_payload, authentication_transaction_id, cardholder_message, cavv, cavv_algorithm, challenge_cancel_code, challenge_required, decoupled_authentication_indicator, directory_server_error_code, directory_server_error_description, ecommerce_indicator, eci, eci_raw, effective_authentication_type, ivr, strong_authentication, network_score, pareq, pares_status, proof_xml, proxy_pan, sdk_transaction_id, signed_pares_status_reason, specification_version, step_up_url, three_ds_server_transaction_id, ucaf_authentication_data, ucaf_collection_indicator, veres_enrolled, white_list_status_source, xid, directory_server_transaction_id, authentication_result, authentication_status_msg, indicator, interaction_counter, white_list_status].hash
603
612
  end
604
613
 
605
614
  # Builds the object from hash
@@ -0,0 +1,206 @@
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.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CyberSource
16
+ class PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthenticationIssuerInformation
17
+ # Possible values: Visa Platform Connect - `8401` Merchant not participating in Visa Trusted Listing Program. - `8402` Issuer not participating in Visa Trusted Listing Program. - `8403` Cardholder has not trusted the merchant (supplied by Visa Net). - `8404` Indeterminate or invalid issuer response. - `8473` Cardholder has not trusted the merchant (issuer-supplied). - `8474` Did not meet the exemption criteria (issuer-supplied). Upto 20 Values may be received in a transaction.
18
+ attr_accessor :risk_analysis_exemption_result
19
+
20
+ # Possible values: Visa Platform Connect - `2` Trusted merchant exemption validated/honored. - `3` Trusted merchant exemption failed validation/not honored.
21
+ attr_accessor :trusted_merchant_exemption_result
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+ :'risk_analysis_exemption_result' => :'riskAnalysisExemptionResult',
27
+ :'trusted_merchant_exemption_result' => :'trustedMerchantExemptionResult'
28
+ }
29
+ end
30
+
31
+ # Attribute type mapping.
32
+ def self.swagger_types
33
+ {
34
+ :'risk_analysis_exemption_result' => :'String',
35
+ :'trusted_merchant_exemption_result' => :'String'
36
+ }
37
+ end
38
+
39
+ # Initializes the object
40
+ # @param [Hash] attributes Model attributes in the form of hash
41
+ def initialize(attributes = {})
42
+ return unless attributes.is_a?(Hash)
43
+
44
+ # convert string to symbol for hash key
45
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
46
+
47
+ if attributes.has_key?(:'riskAnalysisExemptionResult')
48
+ self.risk_analysis_exemption_result = attributes[:'riskAnalysisExemptionResult']
49
+ end
50
+
51
+ if attributes.has_key?(:'trustedMerchantExemptionResult')
52
+ self.trusted_merchant_exemption_result = attributes[:'trustedMerchantExemptionResult']
53
+ end
54
+ end
55
+
56
+ # Show invalid properties with the reasons. Usually used together with valid?
57
+ # @return Array for valid properties with the reasons
58
+ def list_invalid_properties
59
+ invalid_properties = Array.new
60
+ invalid_properties
61
+ end
62
+
63
+ # Check to see if the all the properties in the model are valid
64
+ # @return true if the model is valid
65
+ def valid?
66
+ true
67
+ end
68
+
69
+ # Custom attribute writer method with validation
70
+ # @param [Object] risk_analysis_exemption_result Value to be assigned
71
+ def risk_analysis_exemption_result=(risk_analysis_exemption_result)
72
+ @risk_analysis_exemption_result = risk_analysis_exemption_result
73
+ end
74
+
75
+ # Custom attribute writer method with validation
76
+ # @param [Object] trusted_merchant_exemption_result Value to be assigned
77
+ def trusted_merchant_exemption_result=(trusted_merchant_exemption_result)
78
+ @trusted_merchant_exemption_result = trusted_merchant_exemption_result
79
+ end
80
+
81
+ # Checks equality by comparing each attribute.
82
+ # @param [Object] Object to be compared
83
+ def ==(o)
84
+ return true if self.equal?(o)
85
+ self.class == o.class &&
86
+ risk_analysis_exemption_result == o.risk_analysis_exemption_result &&
87
+ trusted_merchant_exemption_result == o.trusted_merchant_exemption_result
88
+ end
89
+
90
+ # @see the `==` method
91
+ # @param [Object] Object to be compared
92
+ def eql?(o)
93
+ self == o
94
+ end
95
+
96
+ # Calculates hash code according to all attributes.
97
+ # @return [Fixnum] Hash code
98
+ def hash
99
+ [risk_analysis_exemption_result, trusted_merchant_exemption_result].hash
100
+ end
101
+
102
+ # Builds the object from hash
103
+ # @param [Hash] attributes Model attributes in the form of hash
104
+ # @return [Object] Returns the model itself
105
+ def build_from_hash(attributes)
106
+ return nil unless attributes.is_a?(Hash)
107
+ self.class.swagger_types.each_pair do |key, type|
108
+ if type =~ /\AArray<(.*)>/i
109
+ # check to ensure the input is an array given that the the attribute
110
+ # is documented as an array but the input is not
111
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
112
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
113
+ end
114
+ elsif !attributes[self.class.attribute_map[key]].nil?
115
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
116
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
117
+ end
118
+
119
+ self
120
+ end
121
+
122
+ # Deserializes the data based on type
123
+ # @param string type Data type
124
+ # @param string value Value to be deserialized
125
+ # @return [Object] Deserialized data
126
+ def _deserialize(type, value)
127
+ case type.to_sym
128
+ when :DateTime
129
+ DateTime.parse(value)
130
+ when :Date
131
+ Date.parse(value)
132
+ when :String
133
+ value.to_s
134
+ when :Integer
135
+ value.to_i
136
+ when :Float
137
+ value.to_f
138
+ when :BOOLEAN
139
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
140
+ true
141
+ else
142
+ false
143
+ end
144
+ when :Object
145
+ # generic object (usually a Hash), return directly
146
+ value
147
+ when /\AArray<(?<inner_type>.+)>\z/
148
+ inner_type = Regexp.last_match[:inner_type]
149
+ value.map { |v| _deserialize(inner_type, v) }
150
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
151
+ k_type = Regexp.last_match[:k_type]
152
+ v_type = Regexp.last_match[:v_type]
153
+ {}.tap do |hash|
154
+ value.each do |k, v|
155
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
156
+ end
157
+ end
158
+ else # model
159
+ temp_model = CyberSource.const_get(type).new
160
+ temp_model.build_from_hash(value)
161
+ end
162
+ end
163
+
164
+ # Returns the string representation of the object
165
+ # @return [String] String presentation of the object
166
+ def to_s
167
+ to_hash.to_s
168
+ end
169
+
170
+ # to_body is an alias to to_hash (backward compatibility)
171
+ # @return [Hash] Returns the object in the form of hash
172
+ def to_body
173
+ to_hash
174
+ end
175
+
176
+ # Returns the object in the form of hash
177
+ # @return [Hash] Returns the object in the form of hash
178
+ def to_hash
179
+ hash = {}
180
+ self.class.attribute_map.each_pair do |attr, param|
181
+ value = self.send(attr)
182
+ next if value.nil?
183
+ hash[param] = _to_hash(value)
184
+ end
185
+ hash
186
+ end
187
+
188
+ # Outputs non-array value in the form of hash
189
+ # For object, use to_hash. Otherwise, just return the value
190
+ # @param [Object] value Any valid value
191
+ # @return [Hash] Returns the value in the form of hash
192
+ def _to_hash(value)
193
+ if value.is_a?(Array)
194
+ value.compact.map { |v| _to_hash(v) }
195
+ elsif value.is_a?(Hash)
196
+ {}.tap do |hash|
197
+ value.each { |k, v| hash[k] = _to_hash(v) }
198
+ end
199
+ elsif value.respond_to? :to_hash
200
+ value.to_hash
201
+ else
202
+ value
203
+ end
204
+ end
205
+ end
206
+ end