cybersource_rest_client 0.0.36 → 0.0.39

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/authentication/http/GetSignatureParameter.rb +13 -6
  3. data/lib/AuthenticationSDK/authentication/http/HttpSignatureHeader.rb +13 -5
  4. data/lib/AuthenticationSDK/authentication/jwt/JwtToken.rb +26 -11
  5. data/lib/AuthenticationSDK/authentication/oauth/OAuthToken.rb +11 -5
  6. data/lib/AuthenticationSDK/authentication/payloadDigest/digest.rb +2 -2
  7. data/lib/AuthenticationSDK/core/Authorization.rb +28 -20
  8. data/lib/AuthenticationSDK/core/MerchantConfig.rb +72 -78
  9. data/lib/AuthenticationSDK/logging/log_configuration.rb +71 -0
  10. data/lib/AuthenticationSDK/logging/log_factory.rb +65 -0
  11. data/lib/AuthenticationSDK/logging/sensitive_logging.rb +101 -0
  12. data/lib/AuthenticationSDK/util/Cache.rb +1 -1
  13. data/lib/AuthenticationSDK/util/Constants.rb +25 -17
  14. data/lib/AuthenticationSDK/util/ExceptionHandler.rb +26 -0
  15. data/lib/AuthenticationSDK/util/PropertiesUtil.rb +2 -2
  16. data/lib/cybersource_rest_client/api/asymmetric_key_management_api.rb +46 -46
  17. data/lib/cybersource_rest_client/api/capture_api.rb +16 -16
  18. data/lib/cybersource_rest_client/api/chargeback_details_api.rb +16 -16
  19. data/lib/cybersource_rest_client/api/chargeback_summaries_api.rb +16 -16
  20. data/lib/cybersource_rest_client/api/conversion_details_api.rb +16 -16
  21. data/lib/cybersource_rest_client/api/credit_api.rb +16 -16
  22. data/lib/cybersource_rest_client/api/customer_api.rb +61 -61
  23. data/lib/cybersource_rest_client/api/customer_payment_instrument_api.rb +76 -76
  24. data/lib/cybersource_rest_client/api/customer_shipping_address_api.rb +76 -76
  25. data/lib/cybersource_rest_client/api/decision_manager_api.rb +46 -46
  26. data/lib/cybersource_rest_client/api/download_dtd_api.rb +16 -16
  27. data/lib/cybersource_rest_client/api/download_xsd_api.rb +16 -16
  28. data/lib/cybersource_rest_client/api/instrument_identifier_api.rb +91 -91
  29. data/lib/cybersource_rest_client/api/interchange_clearing_level_details_api.rb +16 -16
  30. data/lib/cybersource_rest_client/api/invoice_settings_api.rb +31 -31
  31. data/lib/cybersource_rest_client/api/invoices_api.rb +97 -97
  32. data/lib/cybersource_rest_client/api/key_generation_api.rb +16 -16
  33. data/lib/cybersource_rest_client/api/net_fundings_api.rb +16 -16
  34. data/lib/cybersource_rest_client/api/notification_of_changes_api.rb +16 -16
  35. data/lib/cybersource_rest_client/api/payer_authentication_api.rb +46 -46
  36. data/lib/cybersource_rest_client/api/payment_batch_summaries_api.rb +16 -16
  37. data/lib/cybersource_rest_client/api/payment_instrument_api.rb +61 -61
  38. data/lib/cybersource_rest_client/api/payments_api.rb +33 -33
  39. data/lib/cybersource_rest_client/api/payouts_api.rb +16 -16
  40. data/lib/cybersource_rest_client/api/purchase_and_refund_details_api.rb +16 -16
  41. data/lib/cybersource_rest_client/api/refund_api.rb +31 -31
  42. data/lib/cybersource_rest_client/api/report_definitions_api.rb +31 -31
  43. data/lib/cybersource_rest_client/api/report_downloads_api.rb +16 -16
  44. data/lib/cybersource_rest_client/api/report_subscriptions_api.rb +76 -76
  45. data/lib/cybersource_rest_client/api/reports_api.rb +46 -46
  46. data/lib/cybersource_rest_client/api/retrieval_details_api.rb +16 -16
  47. data/lib/cybersource_rest_client/api/retrieval_summaries_api.rb +16 -16
  48. data/lib/cybersource_rest_client/api/reversal_api.rb +31 -31
  49. data/lib/cybersource_rest_client/api/search_transactions_api.rb +31 -31
  50. data/lib/cybersource_rest_client/api/secure_file_share_api.rb +31 -31
  51. data/lib/cybersource_rest_client/api/symmetric_key_management_api.rb +46 -46
  52. data/lib/cybersource_rest_client/api/taxes_api.rb +31 -31
  53. data/lib/cybersource_rest_client/api/tokenization_api.rb +16 -16
  54. data/lib/cybersource_rest_client/api/transaction_batches_api.rb +46 -46
  55. data/lib/cybersource_rest_client/api/transaction_details_api.rb +16 -16
  56. data/lib/cybersource_rest_client/api/user_management_api.rb +16 -16
  57. data/lib/cybersource_rest_client/api/user_management_search_api.rb +16 -16
  58. data/lib/cybersource_rest_client/api/verification_api.rb +31 -31
  59. data/lib/cybersource_rest_client/api/void_api.rb +76 -76
  60. data/lib/cybersource_rest_client/api_client.rb +7 -8
  61. data/lib/cybersource_rest_client/models/create_adhoc_report_request.rb +2 -5
  62. data/lib/cybersource_rest_client/models/create_payment_request.rb +19 -1
  63. data/lib/cybersource_rest_client/models/create_search_request.rb +1 -1
  64. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information_amount_details.rb +20 -4
  65. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response.rb +10 -1
  66. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_buyer_information.rb +243 -0
  67. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information.rb +10 -1
  68. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information_issuer_information.rb +206 -0
  69. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information_strong_authentication.rb +183 -0
  70. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +52 -4
  71. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_processor_information.rb +17 -1
  72. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information.rb +33 -1
  73. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +15 -5
  74. data/lib/cybersource_rest_client/models/ptsv2payments_client_reference_information.rb +17 -1
  75. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information_strong_authentication.rb +17 -1
  76. data/lib/cybersource_rest_client/models/ptsv2payments_device_information.rb +17 -1
  77. data/lib/cybersource_rest_client/models/ptsv2payments_installment_information.rb +24 -4
  78. data/lib/cybersource_rest_client/models/ptsv2payments_invoice_details.rb +191 -0
  79. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information.rb +65 -1
  80. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information_merchant_descriptor.rb +1 -1
  81. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +17 -1
  82. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_invoice_details.rb +20 -4
  83. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_ship_to.rb +33 -1
  84. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information.rb +13 -4
  85. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_bank.rb +14 -4
  86. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_e_wallet.rb +190 -0
  87. data/lib/cybersource_rest_client/models/ptsv2payments_processor_information.rb +191 -0
  88. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +17 -1
  89. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information.rb +14 -5
  90. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_bank.rb +215 -0
  91. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +36 -4
  92. data/lib/cybersource_rest_client/models/ptsv2payouts_recipient_information.rb +17 -1
  93. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information.rb +17 -1
  94. data/lib/cybersource_rest_client/models/reportingv3reports_report_filters.rb +218 -0
  95. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_tokenized_card.rb +17 -1
  96. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_tokenized_card.rb +17 -1
  97. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_tokenized_card.rb +17 -1
  98. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response.rb +10 -11
  99. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_client_reference_information.rb +10 -1
  100. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_client_reference_information_partner.rb +190 -0
  101. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_installment_information.rb +14 -4
  102. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_amount_details.rb +13 -4
  103. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information.rb +32 -5
  104. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_customer.rb +206 -0
  105. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_instrument_identifier.rb +190 -0
  106. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +36 -4
  107. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_token_information.rb +210 -0
  108. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response.rb +1 -1
  109. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_client_reference_information.rb +13 -4
  110. data/lib/cybersource_rest_client/utilities/flex/token_verification.rb +4 -4
  111. data/lib/cybersource_rest_client.rb +17 -3
  112. metadata +18 -4
  113. data/lib/AuthenticationSDK/core/Logger.rb +0 -26
  114. data/lib/AuthenticationSDK/util/ApiException.rb +0 -19
@@ -0,0 +1,218 @@
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 Reportingv3reportsReportFilters
17
+ attr_accessor :application_name
18
+
19
+ attr_accessor :first_name
20
+
21
+ attr_accessor :last_name
22
+
23
+ attr_accessor :email
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+ :'application_name' => :'Application.Name',
29
+ :'first_name' => :'firstName',
30
+ :'last_name' => :'lastName',
31
+ :'email' => :'email'
32
+ }
33
+ end
34
+
35
+ # Attribute type mapping.
36
+ def self.swagger_types
37
+ {
38
+ :'application_name' => :'Array<String>',
39
+ :'first_name' => :'Array<String>',
40
+ :'last_name' => :'Array<String>',
41
+ :'email' => :'Array<String>'
42
+ }
43
+ end
44
+
45
+ # Initializes the object
46
+ # @param [Hash] attributes Model attributes in the form of hash
47
+ def initialize(attributes = {})
48
+ return unless attributes.is_a?(Hash)
49
+
50
+ # convert string to symbol for hash key
51
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
52
+
53
+ if attributes.has_key?(:'Application.Name')
54
+ if (value = attributes[:'Application.Name']).is_a?(Array)
55
+ self.application_name = value
56
+ end
57
+ end
58
+
59
+ if attributes.has_key?(:'firstName')
60
+ if (value = attributes[:'firstName']).is_a?(Array)
61
+ self.first_name = value
62
+ end
63
+ end
64
+
65
+ if attributes.has_key?(:'lastName')
66
+ if (value = attributes[:'lastName']).is_a?(Array)
67
+ self.last_name = value
68
+ end
69
+ end
70
+
71
+ if attributes.has_key?(:'email')
72
+ if (value = attributes[:'email']).is_a?(Array)
73
+ self.email = value
74
+ end
75
+ end
76
+ end
77
+
78
+ # Show invalid properties with the reasons. Usually used together with valid?
79
+ # @return Array for valid properties with the reasons
80
+ def list_invalid_properties
81
+ invalid_properties = Array.new
82
+ invalid_properties
83
+ end
84
+
85
+ # Check to see if the all the properties in the model are valid
86
+ # @return true if the model is valid
87
+ def valid?
88
+ true
89
+ end
90
+
91
+ # Checks equality by comparing each attribute.
92
+ # @param [Object] Object to be compared
93
+ def ==(o)
94
+ return true if self.equal?(o)
95
+ self.class == o.class &&
96
+ application_name == o.application_name &&
97
+ first_name == o.first_name &&
98
+ last_name == o.last_name &&
99
+ email == o.email
100
+ end
101
+
102
+ # @see the `==` method
103
+ # @param [Object] Object to be compared
104
+ def eql?(o)
105
+ self == o
106
+ end
107
+
108
+ # Calculates hash code according to all attributes.
109
+ # @return [Fixnum] Hash code
110
+ def hash
111
+ [application_name, first_name, last_name, email].hash
112
+ end
113
+
114
+ # Builds the object from hash
115
+ # @param [Hash] attributes Model attributes in the form of hash
116
+ # @return [Object] Returns the model itself
117
+ def build_from_hash(attributes)
118
+ return nil unless attributes.is_a?(Hash)
119
+ self.class.swagger_types.each_pair do |key, type|
120
+ if type =~ /\AArray<(.*)>/i
121
+ # check to ensure the input is an array given that the the attribute
122
+ # is documented as an array but the input is not
123
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
124
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
125
+ end
126
+ elsif !attributes[self.class.attribute_map[key]].nil?
127
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
128
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
129
+ end
130
+
131
+ self
132
+ end
133
+
134
+ # Deserializes the data based on type
135
+ # @param string type Data type
136
+ # @param string value Value to be deserialized
137
+ # @return [Object] Deserialized data
138
+ def _deserialize(type, value)
139
+ case type.to_sym
140
+ when :DateTime
141
+ DateTime.parse(value)
142
+ when :Date
143
+ Date.parse(value)
144
+ when :String
145
+ value.to_s
146
+ when :Integer
147
+ value.to_i
148
+ when :Float
149
+ value.to_f
150
+ when :BOOLEAN
151
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
152
+ true
153
+ else
154
+ false
155
+ end
156
+ when :Object
157
+ # generic object (usually a Hash), return directly
158
+ value
159
+ when /\AArray<(?<inner_type>.+)>\z/
160
+ inner_type = Regexp.last_match[:inner_type]
161
+ value.map { |v| _deserialize(inner_type, v) }
162
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
163
+ k_type = Regexp.last_match[:k_type]
164
+ v_type = Regexp.last_match[:v_type]
165
+ {}.tap do |hash|
166
+ value.each do |k, v|
167
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
168
+ end
169
+ end
170
+ else # model
171
+ temp_model = CyberSource.const_get(type).new
172
+ temp_model.build_from_hash(value)
173
+ end
174
+ end
175
+
176
+ # Returns the string representation of the object
177
+ # @return [String] String presentation of the object
178
+ def to_s
179
+ to_hash.to_s
180
+ end
181
+
182
+ # to_body is an alias to to_hash (backward compatibility)
183
+ # @return [Hash] Returns the object in the form of hash
184
+ def to_body
185
+ to_hash
186
+ end
187
+
188
+ # Returns the object in the form of hash
189
+ # @return [Hash] Returns the object in the form of hash
190
+ def to_hash
191
+ hash = {}
192
+ self.class.attribute_map.each_pair do |attr, param|
193
+ value = self.send(attr)
194
+ next if value.nil?
195
+ hash[param] = _to_hash(value)
196
+ end
197
+ hash
198
+ end
199
+
200
+ # Outputs non-array value in the form of hash
201
+ # For object, use to_hash. Otherwise, just return the value
202
+ # @param [Object] value Any valid value
203
+ # @return [Hash] Returns the value in the form of hash
204
+ def _to_hash(value)
205
+ if value.is_a?(Array)
206
+ value.compact.map { |v| _to_hash(v) }
207
+ elsif value.is_a?(Hash)
208
+ {}.tap do |hash|
209
+ value.each { |k, v| hash[k] = _to_hash(v) }
210
+ end
211
+ elsif value.respond_to? :to_hash
212
+ value.to_hash
213
+ else
214
+ value
215
+ end
216
+ end
217
+ end
218
+ end
@@ -14,6 +14,9 @@ require 'date'
14
14
 
15
15
  module CyberSource
16
16
  class Riskv1authenticationresultsPaymentInformationTokenizedCard
17
+ # Type of transaction that provided the token data. This value does not specify the token service provider; it specifies the entity that provided you with information about the token. Possible value: - `2`: Near-field communication (NFC) transaction. The customer’s mobile device provided the token data for a contactless EMV transaction. For recurring transactions, use this value if the original transaction was a contactless EMV transaction. **NOTE** No CyberSource through VisaNet acquirers support EMV at this time. Required field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.
18
+ attr_accessor :transaction_type
19
+
17
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
18
21
  attr_accessor :type
19
22
 
@@ -29,6 +32,7 @@ module CyberSource
29
32
  # Attribute mapping from ruby-style variable name to JSON key.
30
33
  def self.attribute_map
31
34
  {
35
+ :'transaction_type' => :'transactionType',
32
36
  :'type' => :'type',
33
37
  :'expiration_month' => :'expirationMonth',
34
38
  :'expiration_year' => :'expirationYear',
@@ -39,6 +43,7 @@ module CyberSource
39
43
  # Attribute type mapping.
40
44
  def self.swagger_types
41
45
  {
46
+ :'transaction_type' => :'String',
42
47
  :'type' => :'String',
43
48
  :'expiration_month' => :'String',
44
49
  :'expiration_year' => :'String',
@@ -54,6 +59,10 @@ module CyberSource
54
59
  # convert string to symbol for hash key
55
60
  attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
56
61
 
62
+ if attributes.has_key?(:'transactionType')
63
+ self.transaction_type = attributes[:'transactionType']
64
+ end
65
+
57
66
  if attributes.has_key?(:'type')
58
67
  self.type = attributes[:'type']
59
68
  end
@@ -84,6 +93,12 @@ module CyberSource
84
93
  true
85
94
  end
86
95
 
96
+ # Custom attribute writer method with validation
97
+ # @param [Object] transaction_type Value to be assigned
98
+ def transaction_type=(transaction_type)
99
+ @transaction_type = transaction_type
100
+ end
101
+
87
102
  # Custom attribute writer method with validation
88
103
  # @param [Object] expiration_month Value to be assigned
89
104
  def expiration_month=(expiration_month)
@@ -107,6 +122,7 @@ module CyberSource
107
122
  def ==(o)
108
123
  return true if self.equal?(o)
109
124
  self.class == o.class &&
125
+ transaction_type == o.transaction_type &&
110
126
  type == o.type &&
111
127
  expiration_month == o.expiration_month &&
112
128
  expiration_year == o.expiration_year &&
@@ -122,7 +138,7 @@ module CyberSource
122
138
  # Calculates hash code according to all attributes.
123
139
  # @return [Fixnum] Hash code
124
140
  def hash
125
- [type, expiration_month, expiration_year, number].hash
141
+ [transaction_type, type, expiration_month, expiration_year, number].hash
126
142
  end
127
143
 
128
144
  # Builds the object from hash
@@ -14,6 +14,9 @@ require 'date'
14
14
 
15
15
  module CyberSource
16
16
  class Riskv1authenticationsPaymentInformationTokenizedCard
17
+ # Type of transaction that provided the token data. This value does not specify the token service provider; it specifies the entity that provided you with information about the token. Possible value: - `2`: Near-field communication (NFC) transaction. The customer’s mobile device provided the token data for a contactless EMV transaction. For recurring transactions, use this value if the original transaction was a contactless EMV transaction. **NOTE** No CyberSource through VisaNet acquirers support EMV at this time. Required field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.
18
+ attr_accessor :transaction_type
19
+
17
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
18
21
  attr_accessor :type
19
22
 
@@ -29,6 +32,7 @@ module CyberSource
29
32
  # Attribute mapping from ruby-style variable name to JSON key.
30
33
  def self.attribute_map
31
34
  {
35
+ :'transaction_type' => :'transactionType',
32
36
  :'type' => :'type',
33
37
  :'expiration_month' => :'expirationMonth',
34
38
  :'expiration_year' => :'expirationYear',
@@ -39,6 +43,7 @@ module CyberSource
39
43
  # Attribute type mapping.
40
44
  def self.swagger_types
41
45
  {
46
+ :'transaction_type' => :'String',
42
47
  :'type' => :'String',
43
48
  :'expiration_month' => :'String',
44
49
  :'expiration_year' => :'String',
@@ -54,6 +59,10 @@ module CyberSource
54
59
  # convert string to symbol for hash key
55
60
  attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
56
61
 
62
+ if attributes.has_key?(:'transactionType')
63
+ self.transaction_type = attributes[:'transactionType']
64
+ end
65
+
57
66
  if attributes.has_key?(:'type')
58
67
  self.type = attributes[:'type']
59
68
  end
@@ -104,6 +113,12 @@ module CyberSource
104
113
  true
105
114
  end
106
115
 
116
+ # Custom attribute writer method with validation
117
+ # @param [Object] transaction_type Value to be assigned
118
+ def transaction_type=(transaction_type)
119
+ @transaction_type = transaction_type
120
+ end
121
+
107
122
  # Custom attribute writer method with validation
108
123
  # @param [Object] expiration_month Value to be assigned
109
124
  def expiration_month=(expiration_month)
@@ -139,6 +154,7 @@ module CyberSource
139
154
  def ==(o)
140
155
  return true if self.equal?(o)
141
156
  self.class == o.class &&
157
+ transaction_type == o.transaction_type &&
142
158
  type == o.type &&
143
159
  expiration_month == o.expiration_month &&
144
160
  expiration_year == o.expiration_year &&
@@ -154,7 +170,7 @@ module CyberSource
154
170
  # Calculates hash code according to all attributes.
155
171
  # @return [Fixnum] Hash code
156
172
  def hash
157
- [type, expiration_month, expiration_year, number].hash
173
+ [transaction_type, type, expiration_month, expiration_year, number].hash
158
174
  end
159
175
 
160
176
  # Builds the object from hash
@@ -15,6 +15,9 @@ require 'date'
15
15
  module CyberSource
16
16
  # Use this object to submit a payment network token instead of card-based values.
17
17
  class Riskv1decisionsPaymentInformationTokenizedCard
18
+ # Type of transaction that provided the token data. This value does not specify the token service provider; it specifies the entity that provided you with information about the token. Possible value: - `2`: Near-field communication (NFC) transaction. The customer’s mobile device provided the token data for a contactless EMV transaction. For recurring transactions, use this value if the original transaction was a contactless EMV transaction. **NOTE** No CyberSource through VisaNet acquirers support EMV at this time. Required field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.
19
+ attr_accessor :transaction_type
20
+
18
21
  # 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
19
22
  attr_accessor :type
20
23
 
@@ -30,6 +33,7 @@ module CyberSource
30
33
  # Attribute mapping from ruby-style variable name to JSON key.
31
34
  def self.attribute_map
32
35
  {
36
+ :'transaction_type' => :'transactionType',
33
37
  :'type' => :'type',
34
38
  :'number' => :'number',
35
39
  :'expiration_month' => :'expirationMonth',
@@ -40,6 +44,7 @@ module CyberSource
40
44
  # Attribute type mapping.
41
45
  def self.swagger_types
42
46
  {
47
+ :'transaction_type' => :'String',
43
48
  :'type' => :'String',
44
49
  :'number' => :'String',
45
50
  :'expiration_month' => :'String',
@@ -55,6 +60,10 @@ module CyberSource
55
60
  # convert string to symbol for hash key
56
61
  attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
57
62
 
63
+ if attributes.has_key?(:'transactionType')
64
+ self.transaction_type = attributes[:'transactionType']
65
+ end
66
+
58
67
  if attributes.has_key?(:'type')
59
68
  self.type = attributes[:'type']
60
69
  end
@@ -85,6 +94,12 @@ module CyberSource
85
94
  true
86
95
  end
87
96
 
97
+ # Custom attribute writer method with validation
98
+ # @param [Object] transaction_type Value to be assigned
99
+ def transaction_type=(transaction_type)
100
+ @transaction_type = transaction_type
101
+ end
102
+
88
103
  # Custom attribute writer method with validation
89
104
  # @param [Object] number Value to be assigned
90
105
  def number=(number)
@@ -108,6 +123,7 @@ module CyberSource
108
123
  def ==(o)
109
124
  return true if self.equal?(o)
110
125
  self.class == o.class &&
126
+ transaction_type == o.transaction_type &&
111
127
  type == o.type &&
112
128
  number == o.number &&
113
129
  expiration_month == o.expiration_month &&
@@ -123,7 +139,7 @@ module CyberSource
123
139
  # Calculates hash code according to all attributes.
124
140
  # @return [Fixnum] Hash code
125
141
  def hash
126
- [type, number, expiration_month, expiration_year].hash
142
+ [transaction_type, type, number, expiration_month, expiration_year].hash
127
143
  end
128
144
 
129
145
  # Builds the object from hash
@@ -26,9 +26,6 @@ module CyberSource
26
26
  # Your CyberSource merchant ID.
27
27
  attr_accessor :merchant_id
28
28
 
29
- # The status of the submitted transaction.
30
- attr_accessor :status
31
-
32
29
  # 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
30
  attr_accessor :submit_time_utc
34
31
 
@@ -69,6 +66,8 @@ module CyberSource
69
66
 
70
67
  attr_accessor :sender_information
71
68
 
69
+ attr_accessor :token_information
70
+
72
71
  attr_accessor :_links
73
72
 
74
73
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -78,7 +77,6 @@ module CyberSource
78
77
  :'root_id' => :'rootId',
79
78
  :'reconciliation_id' => :'reconciliationId',
80
79
  :'merchant_id' => :'merchantId',
81
- :'status' => :'status',
82
80
  :'submit_time_utc' => :'submitTimeUTC',
83
81
  :'application_information' => :'applicationInformation',
84
82
  :'buyer_information' => :'buyerInformation',
@@ -98,6 +96,7 @@ module CyberSource
98
96
  :'point_of_sale_information' => :'pointOfSaleInformation',
99
97
  :'risk_information' => :'riskInformation',
100
98
  :'sender_information' => :'senderInformation',
99
+ :'token_information' => :'tokenInformation',
101
100
  :'_links' => :'_links'
102
101
  }
103
102
  end
@@ -109,7 +108,6 @@ module CyberSource
109
108
  :'root_id' => :'String',
110
109
  :'reconciliation_id' => :'String',
111
110
  :'merchant_id' => :'String',
112
- :'status' => :'String',
113
111
  :'submit_time_utc' => :'String',
114
112
  :'application_information' => :'TssV2TransactionsGet200ResponseApplicationInformation',
115
113
  :'buyer_information' => :'TssV2TransactionsGet200ResponseBuyerInformation',
@@ -129,6 +127,7 @@ module CyberSource
129
127
  :'point_of_sale_information' => :'TssV2TransactionsGet200ResponsePointOfSaleInformation',
130
128
  :'risk_information' => :'TssV2TransactionsGet200ResponseRiskInformation',
131
129
  :'sender_information' => :'TssV2TransactionsGet200ResponseSenderInformation',
130
+ :'token_information' => :'TssV2TransactionsGet200ResponseTokenInformation',
132
131
  :'_links' => :'TssV2TransactionsGet200ResponseLinks'
133
132
  }
134
133
  end
@@ -157,10 +156,6 @@ module CyberSource
157
156
  self.merchant_id = attributes[:'merchantId']
158
157
  end
159
158
 
160
- if attributes.has_key?(:'status')
161
- self.status = attributes[:'status']
162
- end
163
-
164
159
  if attributes.has_key?(:'submitTimeUTC')
165
160
  self.submit_time_utc = attributes[:'submitTimeUTC']
166
161
  end
@@ -239,6 +234,10 @@ module CyberSource
239
234
  self.sender_information = attributes[:'senderInformation']
240
235
  end
241
236
 
237
+ if attributes.has_key?(:'tokenInformation')
238
+ self.token_information = attributes[:'tokenInformation']
239
+ end
240
+
242
241
  if attributes.has_key?(:'_links')
243
242
  self._links = attributes[:'_links']
244
243
  end
@@ -284,7 +283,6 @@ module CyberSource
284
283
  root_id == o.root_id &&
285
284
  reconciliation_id == o.reconciliation_id &&
286
285
  merchant_id == o.merchant_id &&
287
- status == o.status &&
288
286
  submit_time_utc == o.submit_time_utc &&
289
287
  application_information == o.application_information &&
290
288
  buyer_information == o.buyer_information &&
@@ -304,6 +302,7 @@ module CyberSource
304
302
  point_of_sale_information == o.point_of_sale_information &&
305
303
  risk_information == o.risk_information &&
306
304
  sender_information == o.sender_information &&
305
+ token_information == o.token_information &&
307
306
  _links == o._links
308
307
  end
309
308
 
@@ -316,7 +315,7 @@ module CyberSource
316
315
  # Calculates hash code according to all attributes.
317
316
  # @return [Fixnum] Hash code
318
317
  def hash
319
- [id, root_id, reconciliation_id, merchant_id, status, submit_time_utc, application_information, buyer_information, client_reference_information, consumer_authentication_information, device_information, error_information, installment_information, fraud_marking_information, health_care_information, merchant_defined_information, merchant_information, order_information, payment_information, processing_information, processor_information, point_of_sale_information, risk_information, sender_information, _links].hash
318
+ [id, root_id, reconciliation_id, merchant_id, submit_time_utc, application_information, buyer_information, client_reference_information, consumer_authentication_information, device_information, error_information, installment_information, fraud_marking_information, health_care_information, merchant_defined_information, merchant_information, order_information, payment_information, processing_information, processor_information, point_of_sale_information, risk_information, sender_information, token_information, _links].hash
320
319
  end
321
320
 
322
321
  # Builds the object from hash
@@ -26,6 +26,8 @@ module CyberSource
26
26
  # The entity that is responsible for running the transaction and submitting the processing request to CyberSource. This could be a person, a system, or a connection method.
27
27
  attr_accessor :application_user
28
28
 
29
+ attr_accessor :partner
30
+
29
31
  # Brief description of the order or any comment you wish to add to the order.
30
32
  attr_accessor :comments
31
33
 
@@ -36,6 +38,7 @@ module CyberSource
36
38
  :'application_version' => :'applicationVersion',
37
39
  :'application_name' => :'applicationName',
38
40
  :'application_user' => :'applicationUser',
41
+ :'partner' => :'partner',
39
42
  :'comments' => :'comments'
40
43
  }
41
44
  end
@@ -47,6 +50,7 @@ module CyberSource
47
50
  :'application_version' => :'String',
48
51
  :'application_name' => :'String',
49
52
  :'application_user' => :'String',
53
+ :'partner' => :'TssV2TransactionsGet200ResponseClientReferenceInformationPartner',
50
54
  :'comments' => :'String'
51
55
  }
52
56
  end
@@ -75,6 +79,10 @@ module CyberSource
75
79
  self.application_user = attributes[:'applicationUser']
76
80
  end
77
81
 
82
+ if attributes.has_key?(:'partner')
83
+ self.partner = attributes[:'partner']
84
+ end
85
+
78
86
  if attributes.has_key?(:'comments')
79
87
  self.comments = attributes[:'comments']
80
88
  end
@@ -114,6 +122,7 @@ module CyberSource
114
122
  application_version == o.application_version &&
115
123
  application_name == o.application_name &&
116
124
  application_user == o.application_user &&
125
+ partner == o.partner &&
117
126
  comments == o.comments
118
127
  end
119
128
 
@@ -126,7 +135,7 @@ module CyberSource
126
135
  # Calculates hash code according to all attributes.
127
136
  # @return [Fixnum] Hash code
128
137
  def hash
129
- [code, application_version, application_name, application_user, comments].hash
138
+ [code, application_version, application_name, application_user, partner, comments].hash
130
139
  end
131
140
 
132
141
  # Builds the object from hash