cybersource_rest_client 0.0.30 → 0.0.34

Sign up to get free protection for your applications and to get access to all the features.
Files changed (155) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/authentication/oauth/OAuthToken.rb +15 -0
  3. data/lib/AuthenticationSDK/core/Authorization.rb +4 -1
  4. data/lib/AuthenticationSDK/core/MerchantConfig.rb +93 -19
  5. data/lib/AuthenticationSDK/util/Constants.rb +77 -75
  6. data/lib/cybersource_rest_client/api/o_auth_api.rb +104 -0
  7. data/lib/cybersource_rest_client/api/payments_api.rb +2 -2
  8. data/lib/cybersource_rest_client/api/refund_api.rb +4 -4
  9. data/lib/cybersource_rest_client/api/void_api.rb +4 -4
  10. data/lib/cybersource_rest_client/api_client.rb +31 -8
  11. data/lib/cybersource_rest_client/configuration.rb +2 -2
  12. data/lib/cybersource_rest_client/models/access_token_response.rb +244 -0
  13. data/lib/cybersource_rest_client/models/add_negative_list_request.rb +1 -1
  14. data/lib/cybersource_rest_client/models/bad_request_error.rb +192 -0
  15. data/lib/cybersource_rest_client/models/create_access_token_request.rb +254 -0
  16. data/lib/cybersource_rest_client/models/fraud_marking_action_request.rb +1 -1
  17. data/lib/cybersource_rest_client/models/inline_response_400_2.rb +1 -1
  18. data/lib/cybersource_rest_client/models/invoicing_v2_invoice_settings_get200_response.rb +1 -1
  19. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response.rb +1 -1
  20. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_customer_information.rb +20 -4
  21. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_invoices.rb +1 -1
  22. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get400_response.rb +1 -1
  23. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get404_response.rb +1 -1
  24. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get502_response.rb +1 -1
  25. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_get200_response.rb +2 -2
  26. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response.rb +2 -2
  27. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post202_response.rb +1 -1
  28. data/lib/cybersource_rest_client/models/invoicingv2invoices_customer_information.rb +20 -4
  29. data/lib/cybersource_rest_client/models/kms_v2_keys_asym_deletes_post200_response.rb +1 -1
  30. data/lib/cybersource_rest_client/models/kms_v2_keys_asym_get200_response.rb +1 -1
  31. data/lib/cybersource_rest_client/models/kms_v2_keys_asym_post201_response.rb +1 -1
  32. data/lib/cybersource_rest_client/models/kms_v2_keys_sym_deletes_post200_response.rb +1 -1
  33. data/lib/cybersource_rest_client/models/kms_v2_keys_sym_get200_response.rb +1 -1
  34. data/lib/cybersource_rest_client/models/kms_v2_keys_sym_post201_response.rb +1 -1
  35. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response.rb +1 -1
  36. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get400_response.rb +1 -1
  37. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get500_response.rb +1 -1
  38. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response.rb +3 -3
  39. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response.rb +3 -3
  40. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_error_information.rb +1 -1
  41. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_processor_information.rb +6 -0
  42. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch400_response.rb +1 -1
  43. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response.rb +3 -3
  44. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post400_response.rb +1 -1
  45. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response.rb +13 -4
  46. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information.rb +11 -1
  47. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_error_information.rb +1 -1
  48. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information.rb +13 -4
  49. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information_reward_points_details.rb +270 -0
  50. data/lib/cybersource_rest_client/models/{pts_v2_payments_post201_response_payment_information_card.rb → pts_v2_payments_post201_response_payment_account_information.rb} +8 -9
  51. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_account_information_card.rb +242 -0
  52. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information.rb +1 -1
  53. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +1 -1
  54. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information.rb +1 -1
  55. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +9 -13
  56. data/lib/cybersource_rest_client/models/pts_v2_payments_post400_response.rb +2 -2
  57. data/lib/cybersource_rest_client/models/pts_v2_payments_post502_response.rb +1 -1
  58. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response.rb +3 -3
  59. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post400_response.rb +1 -1
  60. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response.rb +3 -3
  61. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post400_response.rb +1 -1
  62. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response.rb +2 -2
  63. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post400_response.rb +1 -1
  64. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response.rb +1 -1
  65. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_error_information.rb +1 -1
  66. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_merchant_information_merchant_descriptor.rb +6 -0
  67. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_order_information_amount_details.rb +2 -2
  68. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_recipient_information_card.rb +1 -1
  69. data/lib/cybersource_rest_client/models/pts_v2_payouts_post400_response.rb +1 -1
  70. data/lib/cybersource_rest_client/models/ptsv2credits_processing_information.rb +2 -2
  71. data/lib/cybersource_rest_client/models/ptsv2payments_client_reference_information.rb +1 -1
  72. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information.rb +27 -1
  73. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information_merchant_descriptor.rb +6 -0
  74. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +2 -2
  75. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +4 -4
  76. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_fluid_data.rb +3 -3
  77. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_card.rb +1 -1
  78. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information.rb +38 -38
  79. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +16 -6
  80. data/lib/cybersource_rest_client/models/ptsv2payments_risk_information.rb +15 -4
  81. data/lib/cybersource_rest_client/models/ptsv2payments_risk_information_auxiliary_data.rb +207 -0
  82. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_payment_information_card.rb +1 -1
  83. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information.rb +15 -5
  84. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_card.rb +4 -4
  85. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information.rb +1 -1
  86. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_client_reference_information.rb +17 -1
  87. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_processing_information.rb +1 -1
  88. data/lib/cybersource_rest_client/models/ptsv2payouts_merchant_information_merchant_descriptor.rb +6 -0
  89. data/lib/cybersource_rest_client/models/ptsv2payouts_payment_information_card.rb +4 -4
  90. data/lib/cybersource_rest_client/models/resource_not_found_error.rb +192 -0
  91. data/lib/cybersource_rest_client/models/risk_v1_address_verifications_post201_response.rb +3 -3
  92. data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response.rb +3 -3
  93. data/lib/cybersource_rest_client/models/risk_v1_authentication_setups_post201_response.rb +2 -2
  94. data/lib/cybersource_rest_client/models/risk_v1_authentications_post201_response.rb +3 -3
  95. data/lib/cybersource_rest_client/models/risk_v1_authentications_post400_response.rb +1 -1
  96. data/lib/cybersource_rest_client/models/risk_v1_authentications_post400_response_1.rb +1 -1
  97. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response.rb +3 -3
  98. data/lib/cybersource_rest_client/models/risk_v1_decisions_post400_response.rb +1 -1
  99. data/lib/cybersource_rest_client/models/risk_v1_decisions_post400_response_1.rb +1 -1
  100. data/lib/cybersource_rest_client/models/risk_v1_export_compliance_inquiries_post201_response.rb +3 -3
  101. data/lib/cybersource_rest_client/models/risk_v1_update_post201_response.rb +2 -2
  102. data/lib/cybersource_rest_client/models/riskv1authenticationresults_consumer_authentication_information.rb +1 -1
  103. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_card.rb +3 -3
  104. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_tokenized_card.rb +1 -1
  105. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_card.rb +3 -3
  106. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_tokenized_card.rb +1 -1
  107. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_card.rb +3 -3
  108. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_fluid_data.rb +3 -3
  109. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_tokenized_card.rb +1 -1
  110. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_processing_information.rb +1 -1
  111. data/lib/cybersource_rest_client/models/riskv1decisions_client_reference_information.rb +17 -1
  112. data/lib/cybersource_rest_client/models/riskv1decisions_device_information.rb +1 -11
  113. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_card.rb +3 -3
  114. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_tokenized_card.rb +1 -1
  115. data/lib/cybersource_rest_client/models/riskv1decisions_risk_information.rb +15 -4
  116. data/lib/cybersource_rest_client/models/riskv1liststypeentries_client_reference_information.rb +224 -0
  117. data/lib/cybersource_rest_client/models/riskv1liststypeentries_payment_information_card.rb +1 -1
  118. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response.rb +3 -3
  119. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_consumer_authentication_information.rb +13 -4
  120. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_consumer_authentication_information_strong_authentication.rb +254 -0
  121. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_amount_details.rb +2 -2
  122. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_card.rb +5 -5
  123. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +2 -2
  124. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +13 -4
  125. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +8 -12
  126. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information.rb +1 -1
  127. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response.rb +1 -1
  128. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_merchant_information.rb +1 -1
  129. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information_bill_to.rb +17 -1
  130. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_card.rb +3 -3
  131. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +2 -2
  132. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +6 -0
  133. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +2 -2
  134. data/lib/cybersource_rest_client/models/tss_v2_transactions_post400_response.rb +1 -1
  135. data/lib/cybersource_rest_client/models/unauthorized_client_error.rb +192 -0
  136. data/lib/cybersource_rest_client/models/validate_export_compliance_request.rb +1 -1
  137. data/lib/cybersource_rest_client/models/vas_v2_payments_post201_response.rb +2 -2
  138. data/lib/cybersource_rest_client/models/vas_v2_payments_post400_response.rb +1 -1
  139. data/lib/cybersource_rest_client/models/vas_v2_tax_void200_response.rb +2 -2
  140. data/lib/cybersource_rest_client/models/vas_v2_tax_voids_post400_response.rb +1 -1
  141. data/lib/cybersource_rest_client/models/verify_customer_address_request.rb +1 -1
  142. data/lib/cybersource_rest_client.rb +12 -1
  143. metadata +113 -93
  144. data/lib/AuthenticationSDK/resource/TRRReports.json +0 -12
  145. data/lib/AuthenticationSDK/resource/cybs.yml +0 -31
  146. data/lib/AuthenticationSDK/resource/request.json +0 -54
  147. data/lib/AuthenticationSDK/resource/request_capture.json +0 -11
  148. data/lib/AuthenticationSDK/resource/testrest.p12 +0 -0
  149. data/lib/AuthenticationSDK/spec/Authorization_spec.rb +0 -274
  150. data/lib/AuthenticationSDK/spec/MerchantConfigData.rb +0 -59
  151. data/lib/AuthenticationSDK/spec/MerchantConfig_spec.rb +0 -116
  152. data/lib/AuthenticationSDK/spec/PostRequestData.json +0 -54
  153. data/lib/AuthenticationSDK/spec/PutRequestData.json +0 -12
  154. data/lib/AuthenticationSDK/spec/ResponseCodeMessage_spec.rb +0 -60
  155. data/lib/AuthenticationSDK/spec/spec_helper.rb +0 -12
@@ -0,0 +1,224 @@
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 Riskv1liststypeentriesClientReferenceInformation
17
+ # Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction. #### Used by **Authorization** Required field. #### PIN Debit Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being reversed. Required field for all PIN Debit requests (purchase, credit, and reversal). #### FDC Nashville Global Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports.
18
+ attr_accessor :code
19
+
20
+ # Brief description of the order or any comment you wish to add to the order.
21
+ attr_accessor :comments
22
+
23
+ attr_accessor :partner
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+ :'code' => :'code',
29
+ :'comments' => :'comments',
30
+ :'partner' => :'partner'
31
+ }
32
+ end
33
+
34
+ # Attribute type mapping.
35
+ def self.swagger_types
36
+ {
37
+ :'code' => :'String',
38
+ :'comments' => :'String',
39
+ :'partner' => :'Riskv1decisionsClientReferenceInformationPartner'
40
+ }
41
+ end
42
+
43
+ # Initializes the object
44
+ # @param [Hash] attributes Model attributes in the form of hash
45
+ def initialize(attributes = {})
46
+ return unless attributes.is_a?(Hash)
47
+
48
+ # convert string to symbol for hash key
49
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
50
+
51
+ if attributes.has_key?(:'code')
52
+ self.code = attributes[:'code']
53
+ end
54
+
55
+ if attributes.has_key?(:'comments')
56
+ self.comments = attributes[:'comments']
57
+ end
58
+
59
+ if attributes.has_key?(:'partner')
60
+ self.partner = attributes[:'partner']
61
+ end
62
+ end
63
+
64
+ # Show invalid properties with the reasons. Usually used together with valid?
65
+ # @return Array for valid properties with the reasons
66
+ def list_invalid_properties
67
+ invalid_properties = Array.new
68
+ if @code.nil?
69
+ invalid_properties.push('invalid value for "code", code cannot be nil.')
70
+ end
71
+
72
+ invalid_properties
73
+ end
74
+
75
+ # Check to see if the all the properties in the model are valid
76
+ # @return true if the model is valid
77
+ def valid?
78
+ return false if @code.nil?
79
+ true
80
+ end
81
+
82
+ # Custom attribute writer method with validation
83
+ # @param [Object] code Value to be assigned
84
+ def code=(code)
85
+ if code.nil?
86
+ fail ArgumentError, 'code cannot be nil'
87
+ end
88
+
89
+ @code = code
90
+ end
91
+
92
+ # Custom attribute writer method with validation
93
+ # @param [Object] comments Value to be assigned
94
+ def comments=(comments)
95
+ @comments = comments
96
+ end
97
+
98
+ # Checks equality by comparing each attribute.
99
+ # @param [Object] Object to be compared
100
+ def ==(o)
101
+ return true if self.equal?(o)
102
+ self.class == o.class &&
103
+ code == o.code &&
104
+ comments == o.comments &&
105
+ partner == o.partner
106
+ end
107
+
108
+ # @see the `==` method
109
+ # @param [Object] Object to be compared
110
+ def eql?(o)
111
+ self == o
112
+ end
113
+
114
+ # Calculates hash code according to all attributes.
115
+ # @return [Fixnum] Hash code
116
+ def hash
117
+ [code, comments, partner].hash
118
+ end
119
+
120
+ # Builds the object from hash
121
+ # @param [Hash] attributes Model attributes in the form of hash
122
+ # @return [Object] Returns the model itself
123
+ def build_from_hash(attributes)
124
+ return nil unless attributes.is_a?(Hash)
125
+ self.class.swagger_types.each_pair do |key, type|
126
+ if type =~ /\AArray<(.*)>/i
127
+ # check to ensure the input is an array given that the the attribute
128
+ # is documented as an array but the input is not
129
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
130
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
131
+ end
132
+ elsif !attributes[self.class.attribute_map[key]].nil?
133
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
134
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
135
+ end
136
+
137
+ self
138
+ end
139
+
140
+ # Deserializes the data based on type
141
+ # @param string type Data type
142
+ # @param string value Value to be deserialized
143
+ # @return [Object] Deserialized data
144
+ def _deserialize(type, value)
145
+ case type.to_sym
146
+ when :DateTime
147
+ DateTime.parse(value)
148
+ when :Date
149
+ Date.parse(value)
150
+ when :String
151
+ value.to_s
152
+ when :Integer
153
+ value.to_i
154
+ when :Float
155
+ value.to_f
156
+ when :BOOLEAN
157
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
158
+ true
159
+ else
160
+ false
161
+ end
162
+ when :Object
163
+ # generic object (usually a Hash), return directly
164
+ value
165
+ when /\AArray<(?<inner_type>.+)>\z/
166
+ inner_type = Regexp.last_match[:inner_type]
167
+ value.map { |v| _deserialize(inner_type, v) }
168
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
169
+ k_type = Regexp.last_match[:k_type]
170
+ v_type = Regexp.last_match[:v_type]
171
+ {}.tap do |hash|
172
+ value.each do |k, v|
173
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
174
+ end
175
+ end
176
+ else # model
177
+ temp_model = CyberSource.const_get(type).new
178
+ temp_model.build_from_hash(value)
179
+ end
180
+ end
181
+
182
+ # Returns the string representation of the object
183
+ # @return [String] String presentation of the object
184
+ def to_s
185
+ to_hash.to_s
186
+ end
187
+
188
+ # to_body is an alias to to_hash (backward compatibility)
189
+ # @return [Hash] Returns the object in the form of hash
190
+ def to_body
191
+ to_hash
192
+ end
193
+
194
+ # Returns the object in the form of hash
195
+ # @return [Hash] Returns the object in the form of hash
196
+ def to_hash
197
+ hash = {}
198
+ self.class.attribute_map.each_pair do |attr, param|
199
+ value = self.send(attr)
200
+ next if value.nil?
201
+ hash[param] = _to_hash(value)
202
+ end
203
+ hash
204
+ end
205
+
206
+ # Outputs non-array value in the form of hash
207
+ # For object, use to_hash. Otherwise, just return the value
208
+ # @param [Object] value Any valid value
209
+ # @return [Hash] Returns the value in the form of hash
210
+ def _to_hash(value)
211
+ if value.is_a?(Array)
212
+ value.compact.map { |v| _to_hash(v) }
213
+ elsif value.is_a?(Hash)
214
+ {}.tap do |hash|
215
+ value.each { |k, v| hash[k] = _to_hash(v) }
216
+ end
217
+ elsif value.respond_to? :to_hash
218
+ value.to_hash
219
+ else
220
+ value
221
+ end
222
+ end
223
+ end
224
+ end
@@ -17,7 +17,7 @@ module CyberSource
17
17
  # The customer’s payment card number, also known as the Primary Account Number (PAN). You can also use this field for encoded account numbers. #### FDMS Nashville Required. String (19) #### GPX Required if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured for relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### All other processors Required if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured for relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.
18
18
  attr_accessor :number
19
19
 
20
- # Three-digit value that indicates the card type. **IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is optional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type. Possible values: - `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron. - `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard. - `003`: American Express - `004`: Discover - `005`: Diners Club - `006`: Carte Blanche[^1] - `007`: JCB[^1] - `014`: Enroute[^1] - `021`: JAL[^1] - `024`: Maestro (UK Domestic)[^1] - `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types. - `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types. - `034`: Dankort[^1] - `036`: Cartes Bancaires[^1,4] - `037`: Carta Si[^1] - `039`: Encoded account number[^1] - `040`: UATP[^1] - `042`: Maestro (International)[^1] - `050`: Hipercard[^2,3] - `051`: Aura - `054`: Elo[^3] - `062`: China UnionPay [^1]: For this card type, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in your request for an authorization or a stand-alone credit. [^2]: For this card type on Cielo 3.0, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. This card type is not supported on Cielo 1.5. [^3]: For this card type on Getnet and Rede, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. [^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services. #### Used by **Authorization** Required for Carte Blanche and JCB. Optional for all other card types. #### Card Present reply This field is included in the reply message when the client software that is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details. You must contact customer support to have your account enabled to receive these fields in the credit reply message. Returned by the Credit service. This reply field is only supported by the following processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX #### GPX This field only supports transactions from the following card types: - Visa - Mastercard - AMEX - Discover - Diners - JCB - Union Pay International
20
+ # Three-digit value that indicates the card type. **IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is optional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type. Possible values: - `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron. - `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard. - `003`: American Express - `004`: Discover - `005`: Diners Club - `006`: Carte Blanche[^1] - `007`: JCB[^1] - `014`: Enroute[^1] - `021`: JAL[^1] - `024`: Maestro (UK Domestic)[^1] - `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types. - `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types. - `034`: Dankort[^1] - `036`: Cartes Bancaires[^1,4] - `037`: Carta Si[^1] - `039`: Encoded account number[^1] - `040`: UATP[^1] - `042`: Maestro (International)[^1] - `050`: Hipercard[^2,3] - `051`: Aura - `054`: Elo[^3] - `062`: China UnionPay [^1]: For this card type, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in your request for an authorization or a stand-alone credit. [^2]: For this card type on Cielo 3.0, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. This card type is not supported on Cielo 1.5. [^3]: For this card type on Getnet and Rede, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. [^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services. #### Used by **Authorization** Required for Carte Blanche and JCB. Optional for all other card types. #### Card Present reply This field is included in the reply message when the client software that is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details. You must contact customer support to have your account enabled to receive these fields in the credit reply message. Returned by the Credit service. This reply field is only supported by the following processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX #### Google Pay transactions For PAN-based Google Pay transactions, this field is returned in the API response. #### GPX This field only supports transactions from the following card types: - Visa - Mastercard - AMEX - Discover - Diners - JCB - Union Pay International
21
21
  attr_accessor :type
22
22
 
23
23
  # description: The BIN is the first six digits of the card's Primary Account Number (PAN).
@@ -14,13 +14,13 @@ require 'date'
14
14
 
15
15
  module CyberSource
16
16
  class TssV2TransactionsGet200Response
17
- # An unique identification number to identify the submitted request. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. #### PIN debit Returned for all PIN debit services.
17
+ # An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response.
18
18
  attr_accessor :id
19
19
 
20
20
  # Contains the transaction identifier for the first transaction in the series of transactions. For example, you might send an authorization request for a payment, followed by a capture request for that payment, and then a refund request for that captured payment. Each of those requests, if successful, creates a resource that is assigned an identifier, which is returned in the response. The rootId identifies the first ID in the series, which in this case would be the ID of the original authorization.
21
21
  attr_accessor :root_id
22
22
 
23
- # Reference number for the transaction. This value is not returned for all processors. Returned by authorization service. ##### PIN debit Returned by PIN debit credit, PIN debit purchase, and PIN debit reversal. #### Atos Positive string (6) #### All other processors String (60)
23
+ # 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.
24
24
  attr_accessor :reconciliation_id
25
25
 
26
26
  # Your CyberSource merchant ID.
@@ -29,7 +29,7 @@ module CyberSource
29
29
  # The status of the submitted transaction.
30
30
  attr_accessor :status
31
31
 
32
- # Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by authorization service. #### PIN debit Time when the PIN debit credit, PIN debit purchase or PIN debit reversal was requested. Returned by PIN debit credit, PIN debit purchase or PIN debit reversal.
32
+ # Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services.
33
33
  attr_accessor :submit_time_utc
34
34
 
35
35
  attr_accessor :application_information
@@ -26,13 +26,16 @@ module CyberSource
26
26
  # Payer auth Transaction identifier.
27
27
  attr_accessor :transaction_id
28
28
 
29
+ attr_accessor :strong_authentication
30
+
29
31
  # Attribute mapping from ruby-style variable name to JSON key.
30
32
  def self.attribute_map
31
33
  {
32
34
  :'eci_raw' => :'eciRaw',
33
35
  :'cavv' => :'cavv',
34
36
  :'xid' => :'xid',
35
- :'transaction_id' => :'transactionId'
37
+ :'transaction_id' => :'transactionId',
38
+ :'strong_authentication' => :'strongAuthentication'
36
39
  }
37
40
  end
38
41
 
@@ -42,7 +45,8 @@ module CyberSource
42
45
  :'eci_raw' => :'String',
43
46
  :'cavv' => :'String',
44
47
  :'xid' => :'String',
45
- :'transaction_id' => :'String'
48
+ :'transaction_id' => :'String',
49
+ :'strong_authentication' => :'TssV2TransactionsGet200ResponseConsumerAuthenticationInformationStrongAuthentication'
46
50
  }
47
51
  end
48
52
 
@@ -69,6 +73,10 @@ module CyberSource
69
73
  if attributes.has_key?(:'transactionId')
70
74
  self.transaction_id = attributes[:'transactionId']
71
75
  end
76
+
77
+ if attributes.has_key?(:'strongAuthentication')
78
+ self.strong_authentication = attributes[:'strongAuthentication']
79
+ end
72
80
  end
73
81
 
74
82
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -110,7 +118,8 @@ module CyberSource
110
118
  eci_raw == o.eci_raw &&
111
119
  cavv == o.cavv &&
112
120
  xid == o.xid &&
113
- transaction_id == o.transaction_id
121
+ transaction_id == o.transaction_id &&
122
+ strong_authentication == o.strong_authentication
114
123
  end
115
124
 
116
125
  # @see the `==` method
@@ -122,7 +131,7 @@ module CyberSource
122
131
  # Calculates hash code according to all attributes.
123
132
  # @return [Fixnum] Hash code
124
133
  def hash
125
- [eci_raw, cavv, xid, transaction_id].hash
134
+ [eci_raw, cavv, xid, transaction_id, strong_authentication].hash
126
135
  end
127
136
 
128
137
  # Builds the object from hash
@@ -0,0 +1,254 @@
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 TssV2TransactionsGet200ResponseConsumerAuthenticationInformationStrongAuthentication
17
+ # This field will contain the low value exemption indicator with one of the following values: Possible values: - `0` ( low value exemption does not apply to the transaction) - `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be a low value payment)
18
+ attr_accessor :low_value_exemption_indicator
19
+
20
+ # This field will contain the transaction risk analysis exemption indicator with one of the following values: Possible values: - `0` (TRA exemption does not apply to the transaction) - `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be low risk in accordance with the criteria defined by PSD2/RTS)
21
+ attr_accessor :risk_analysis_exemption_indicator
22
+
23
+ # Possible values: - `0` (Trusted merchant exemption does not apply to the transaction) - `1` (Transaction exempt from SCA as it originated at a merchant trusted by the cardholder)
24
+ attr_accessor :trusted_merchant_exemption_indicator
25
+
26
+ # This field will contain the secure corporate payment exemption indicator with one of the following values: Possible values: - `0` (SCA exemption does not apply to the transaction) - `1` (Transaction exempt from SCA as the merchant/acquirer has determined it as a secure corporate payment)
27
+ attr_accessor :secure_corporate_payment_indicator
28
+
29
+ # This field will contain the delegated authentication exemption indicator with one of the following values: Possible values: - `0` (delegated Authentication exemption does not apply to the transaction) - `1` (Transaction exempt from SCA as authentication has been delegated to other provider (PSP,Acquirer))
30
+ attr_accessor :delegated_authentication_exemption_indicator
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ def self.attribute_map
34
+ {
35
+ :'low_value_exemption_indicator' => :'lowValueExemptionIndicator',
36
+ :'risk_analysis_exemption_indicator' => :'riskAnalysisExemptionIndicator',
37
+ :'trusted_merchant_exemption_indicator' => :'trustedMerchantExemptionIndicator',
38
+ :'secure_corporate_payment_indicator' => :'secureCorporatePaymentIndicator',
39
+ :'delegated_authentication_exemption_indicator' => :'delegatedAuthenticationExemptionIndicator'
40
+ }
41
+ end
42
+
43
+ # Attribute type mapping.
44
+ def self.swagger_types
45
+ {
46
+ :'low_value_exemption_indicator' => :'String',
47
+ :'risk_analysis_exemption_indicator' => :'String',
48
+ :'trusted_merchant_exemption_indicator' => :'String',
49
+ :'secure_corporate_payment_indicator' => :'String',
50
+ :'delegated_authentication_exemption_indicator' => :'String'
51
+ }
52
+ end
53
+
54
+ # Initializes the object
55
+ # @param [Hash] attributes Model attributes in the form of hash
56
+ def initialize(attributes = {})
57
+ return unless attributes.is_a?(Hash)
58
+
59
+ # convert string to symbol for hash key
60
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
61
+
62
+ if attributes.has_key?(:'lowValueExemptionIndicator')
63
+ self.low_value_exemption_indicator = attributes[:'lowValueExemptionIndicator']
64
+ end
65
+
66
+ if attributes.has_key?(:'riskAnalysisExemptionIndicator')
67
+ self.risk_analysis_exemption_indicator = attributes[:'riskAnalysisExemptionIndicator']
68
+ end
69
+
70
+ if attributes.has_key?(:'trustedMerchantExemptionIndicator')
71
+ self.trusted_merchant_exemption_indicator = attributes[:'trustedMerchantExemptionIndicator']
72
+ end
73
+
74
+ if attributes.has_key?(:'secureCorporatePaymentIndicator')
75
+ self.secure_corporate_payment_indicator = attributes[:'secureCorporatePaymentIndicator']
76
+ end
77
+
78
+ if attributes.has_key?(:'delegatedAuthenticationExemptionIndicator')
79
+ self.delegated_authentication_exemption_indicator = attributes[:'delegatedAuthenticationExemptionIndicator']
80
+ end
81
+ end
82
+
83
+ # Show invalid properties with the reasons. Usually used together with valid?
84
+ # @return Array for valid properties with the reasons
85
+ def list_invalid_properties
86
+ invalid_properties = Array.new
87
+ invalid_properties
88
+ end
89
+
90
+ # Check to see if the all the properties in the model are valid
91
+ # @return true if the model is valid
92
+ def valid?
93
+ true
94
+ end
95
+
96
+ # Custom attribute writer method with validation
97
+ # @param [Object] low_value_exemption_indicator Value to be assigned
98
+ def low_value_exemption_indicator=(low_value_exemption_indicator)
99
+ @low_value_exemption_indicator = low_value_exemption_indicator
100
+ end
101
+
102
+ # Custom attribute writer method with validation
103
+ # @param [Object] risk_analysis_exemption_indicator Value to be assigned
104
+ def risk_analysis_exemption_indicator=(risk_analysis_exemption_indicator)
105
+ @risk_analysis_exemption_indicator = risk_analysis_exemption_indicator
106
+ end
107
+
108
+ # Custom attribute writer method with validation
109
+ # @param [Object] trusted_merchant_exemption_indicator Value to be assigned
110
+ def trusted_merchant_exemption_indicator=(trusted_merchant_exemption_indicator)
111
+ @trusted_merchant_exemption_indicator = trusted_merchant_exemption_indicator
112
+ end
113
+
114
+ # Custom attribute writer method with validation
115
+ # @param [Object] secure_corporate_payment_indicator Value to be assigned
116
+ def secure_corporate_payment_indicator=(secure_corporate_payment_indicator)
117
+ @secure_corporate_payment_indicator = secure_corporate_payment_indicator
118
+ end
119
+
120
+ # Custom attribute writer method with validation
121
+ # @param [Object] delegated_authentication_exemption_indicator Value to be assigned
122
+ def delegated_authentication_exemption_indicator=(delegated_authentication_exemption_indicator)
123
+ @delegated_authentication_exemption_indicator = delegated_authentication_exemption_indicator
124
+ end
125
+
126
+ # Checks equality by comparing each attribute.
127
+ # @param [Object] Object to be compared
128
+ def ==(o)
129
+ return true if self.equal?(o)
130
+ self.class == o.class &&
131
+ low_value_exemption_indicator == o.low_value_exemption_indicator &&
132
+ risk_analysis_exemption_indicator == o.risk_analysis_exemption_indicator &&
133
+ trusted_merchant_exemption_indicator == o.trusted_merchant_exemption_indicator &&
134
+ secure_corporate_payment_indicator == o.secure_corporate_payment_indicator &&
135
+ delegated_authentication_exemption_indicator == o.delegated_authentication_exemption_indicator
136
+ end
137
+
138
+ # @see the `==` method
139
+ # @param [Object] Object to be compared
140
+ def eql?(o)
141
+ self == o
142
+ end
143
+
144
+ # Calculates hash code according to all attributes.
145
+ # @return [Fixnum] Hash code
146
+ def hash
147
+ [low_value_exemption_indicator, risk_analysis_exemption_indicator, trusted_merchant_exemption_indicator, secure_corporate_payment_indicator, delegated_authentication_exemption_indicator].hash
148
+ end
149
+
150
+ # Builds the object from hash
151
+ # @param [Hash] attributes Model attributes in the form of hash
152
+ # @return [Object] Returns the model itself
153
+ def build_from_hash(attributes)
154
+ return nil unless attributes.is_a?(Hash)
155
+ self.class.swagger_types.each_pair do |key, type|
156
+ if type =~ /\AArray<(.*)>/i
157
+ # check to ensure the input is an array given that the the attribute
158
+ # is documented as an array but the input is not
159
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
160
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
161
+ end
162
+ elsif !attributes[self.class.attribute_map[key]].nil?
163
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
164
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
165
+ end
166
+
167
+ self
168
+ end
169
+
170
+ # Deserializes the data based on type
171
+ # @param string type Data type
172
+ # @param string value Value to be deserialized
173
+ # @return [Object] Deserialized data
174
+ def _deserialize(type, value)
175
+ case type.to_sym
176
+ when :DateTime
177
+ DateTime.parse(value)
178
+ when :Date
179
+ Date.parse(value)
180
+ when :String
181
+ value.to_s
182
+ when :Integer
183
+ value.to_i
184
+ when :Float
185
+ value.to_f
186
+ when :BOOLEAN
187
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
188
+ true
189
+ else
190
+ false
191
+ end
192
+ when :Object
193
+ # generic object (usually a Hash), return directly
194
+ value
195
+ when /\AArray<(?<inner_type>.+)>\z/
196
+ inner_type = Regexp.last_match[:inner_type]
197
+ value.map { |v| _deserialize(inner_type, v) }
198
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
199
+ k_type = Regexp.last_match[:k_type]
200
+ v_type = Regexp.last_match[:v_type]
201
+ {}.tap do |hash|
202
+ value.each do |k, v|
203
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
204
+ end
205
+ end
206
+ else # model
207
+ temp_model = CyberSource.const_get(type).new
208
+ temp_model.build_from_hash(value)
209
+ end
210
+ end
211
+
212
+ # Returns the string representation of the object
213
+ # @return [String] String presentation of the object
214
+ def to_s
215
+ to_hash.to_s
216
+ end
217
+
218
+ # to_body is an alias to to_hash (backward compatibility)
219
+ # @return [Hash] Returns the object in the form of hash
220
+ def to_body
221
+ to_hash
222
+ end
223
+
224
+ # Returns the object in the form of hash
225
+ # @return [Hash] Returns the object in the form of hash
226
+ def to_hash
227
+ hash = {}
228
+ self.class.attribute_map.each_pair do |attr, param|
229
+ value = self.send(attr)
230
+ next if value.nil?
231
+ hash[param] = _to_hash(value)
232
+ end
233
+ hash
234
+ end
235
+
236
+ # Outputs non-array value in the form of hash
237
+ # For object, use to_hash. Otherwise, just return the value
238
+ # @param [Object] value Any valid value
239
+ # @return [Hash] Returns the value in the form of hash
240
+ def _to_hash(value)
241
+ if value.is_a?(Array)
242
+ value.compact.map { |v| _to_hash(v) }
243
+ elsif value.is_a?(Hash)
244
+ {}.tap do |hash|
245
+ value.each { |k, v| hash[k] = _to_hash(v) }
246
+ end
247
+ elsif value.respond_to? :to_hash
248
+ value.to_hash
249
+ else
250
+ value
251
+ end
252
+ end
253
+ end
254
+ end