cyberSource_client 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (268) hide show
  1. checksums.yaml +5 -5
  2. data/AuthenticationSDK/Cybersource.gemspec +23 -23
  3. data/AuthenticationSDK/authentication/http/GetSignatureParameter.rb +62 -62
  4. data/AuthenticationSDK/authentication/http/HttpSignatureHeader.rb +50 -50
  5. data/AuthenticationSDK/authentication/jwt/JwtToken.rb +62 -62
  6. data/AuthenticationSDK/authentication/payloadDigest/digest.rb +10 -10
  7. data/AuthenticationSDK/core/Authorization.rb +24 -24
  8. data/AuthenticationSDK/core/ITokenGeneration.rb +4 -4
  9. data/AuthenticationSDK/core/Logger.rb +26 -26
  10. data/AuthenticationSDK/core/MerchantConfig.rb +181 -181
  11. data/AuthenticationSDK/util/ApiException.rb +18 -18
  12. data/AuthenticationSDK/util/Cache.rb +36 -36
  13. data/AuthenticationSDK/util/Constants.rb +133 -133
  14. data/AuthenticationSDK/util/PropertiesUtil.rb +21 -21
  15. data/AuthenticationSDK/util/Utility.rb +30 -30
  16. data/lib/cyberSource_client.rb +286 -286
  17. data/lib/cyberSource_client/api/capture_api.rb +133 -133
  18. data/lib/cyberSource_client/api/credit_api.rb +127 -127
  19. data/lib/cyberSource_client/api/default_api.rb +75 -75
  20. data/lib/cyberSource_client/api/instrument_identifier_api.rb +393 -393
  21. data/lib/cyberSource_client/api/key_generation_api.rb +75 -75
  22. data/lib/cyberSource_client/api/payment_api.rb +127 -127
  23. data/lib/cyberSource_client/api/payment_instrument_api.rb +312 -312
  24. data/lib/cyberSource_client/api/refund_api.rb +191 -191
  25. data/lib/cyberSource_client/api/reversal_api.rb +133 -133
  26. data/lib/cyberSource_client/api/tokenization_api.rb +71 -71
  27. data/lib/cyberSource_client/api/void_api.rb +307 -307
  28. data/lib/cyberSource_client/api_client.rb +437 -437
  29. data/lib/cyberSource_client/api_error.rb +38 -38
  30. data/lib/cyberSource_client/configuration.rb +202 -202
  31. data/lib/cyberSource_client/models/auth_reversal_request.rb +219 -219
  32. data/lib/cyberSource_client/models/body.rb +295 -295
  33. data/lib/cyberSource_client/models/body_1.rb +183 -183
  34. data/lib/cyberSource_client/models/body_2.rb +331 -331
  35. data/lib/cyberSource_client/models/body_3.rb +331 -331
  36. data/lib/cyberSource_client/models/capture_payment_request.rb +267 -267
  37. data/lib/cyberSource_client/models/card_info.rb +214 -214
  38. data/lib/cyberSource_client/models/create_credit_request.rb +267 -267
  39. data/lib/cyberSource_client/models/create_payment_request.rb +285 -285
  40. data/lib/cyberSource_client/models/der_public_key.rb +205 -205
  41. data/lib/cyberSource_client/models/error.rb +192 -192
  42. data/lib/cyberSource_client/models/error_links.rb +205 -205
  43. data/lib/cyberSource_client/models/error_response.rb +192 -192
  44. data/lib/cyberSource_client/models/generate_public_key_request.rb +184 -184
  45. data/lib/cyberSource_client/models/inline_response_200.rb +202 -202
  46. data/lib/cyberSource_client/models/inline_response_200_1.rb +255 -255
  47. data/lib/cyberSource_client/models/inline_response_200_2.rb +377 -377
  48. data/lib/cyberSource_client/models/inline_response_200_2_buyer_information.rb +270 -270
  49. data/lib/cyberSource_client/models/inline_response_200_2_device_information.rb +219 -219
  50. data/lib/cyberSource_client/models/inline_response_200_2_merchant_information.rb +233 -233
  51. data/lib/cyberSource_client/models/inline_response_200_2_order_information.rb +230 -230
  52. data/lib/cyberSource_client/models/inline_response_200_2_order_information_amount_details.rb +385 -385
  53. data/lib/cyberSource_client/models/inline_response_200_2_order_information_bill_to.rb +459 -459
  54. data/lib/cyberSource_client/models/inline_response_200_2_order_information_invoice_details.rb +315 -315
  55. data/lib/cyberSource_client/models/inline_response_200_2_order_information_line_items.rb +564 -564
  56. data/lib/cyberSource_client/models/inline_response_200_2_order_information_ship_to.rb +429 -429
  57. data/lib/cyberSource_client/models/inline_response_200_2_payment_information.rb +192 -192
  58. data/lib/cyberSource_client/models/inline_response_200_2_payment_information_card.rb +274 -274
  59. data/lib/cyberSource_client/models/inline_response_200_2_payment_information_tokenized_card.rb +299 -299
  60. data/lib/cyberSource_client/models/inline_response_200_2_processing_information.rb +199 -199
  61. data/lib/cyberSource_client/models/inline_response_200_2_processor_information.rb +227 -227
  62. data/lib/cyberSource_client/models/inline_response_200_2_processor_information_avs.rb +199 -199
  63. data/lib/cyberSource_client/models/inline_response_200_2_processor_information_card_verification.rb +199 -199
  64. data/lib/cyberSource_client/models/inline_response_200_3.rb +314 -314
  65. data/lib/cyberSource_client/models/inline_response_200_4.rb +350 -350
  66. data/lib/cyberSource_client/models/inline_response_200_4_device_information.rb +199 -199
  67. data/lib/cyberSource_client/models/inline_response_200_4_order_information.rb +230 -230
  68. data/lib/cyberSource_client/models/inline_response_200_4_order_information_amount_details.rb +360 -360
  69. data/lib/cyberSource_client/models/inline_response_200_4_order_information_invoice_details.rb +305 -305
  70. data/lib/cyberSource_client/models/inline_response_200_4_order_information_ship_to.rb +249 -249
  71. data/lib/cyberSource_client/models/inline_response_200_4_processing_information.rb +208 -208
  72. data/lib/cyberSource_client/models/inline_response_200_4_processing_information_authorization_options.rb +199 -199
  73. data/lib/cyberSource_client/models/inline_response_200_5.rb +305 -305
  74. data/lib/cyberSource_client/models/inline_response_200_6.rb +305 -305
  75. data/lib/cyberSource_client/models/inline_response_200_7.rb +295 -295
  76. data/lib/cyberSource_client/models/inline_response_200_8.rb +277 -277
  77. data/lib/cyberSource_client/models/inline_response_200_8__links.rb +219 -219
  78. data/lib/cyberSource_client/models/inline_response_200_8__links_first.rb +184 -184
  79. data/lib/cyberSource_client/models/inline_response_200_8__links_last.rb +184 -184
  80. data/lib/cyberSource_client/models/inline_response_200_8__links_next.rb +184 -184
  81. data/lib/cyberSource_client/models/inline_response_200_8__links_prev.rb +184 -184
  82. data/lib/cyberSource_client/models/inline_response_200_8__links_self.rb +184 -184
  83. data/lib/cyberSource_client/models/inline_response_200_der.rb +205 -205
  84. data/lib/cyberSource_client/models/inline_response_200_jwk.rb +225 -225
  85. data/lib/cyberSource_client/models/inline_response_201.rb +350 -350
  86. data/lib/cyberSource_client/models/inline_response_201_1.rb +332 -332
  87. data/lib/cyberSource_client/models/inline_response_201_1_authorization_information.rb +224 -224
  88. data/lib/cyberSource_client/models/inline_response_201_1_processor_information.rb +324 -324
  89. data/lib/cyberSource_client/models/inline_response_201_1_reversal_amount_details.rb +249 -249
  90. data/lib/cyberSource_client/models/inline_response_201_2.rb +314 -314
  91. data/lib/cyberSource_client/models/inline_response_201_2__links.rb +201 -201
  92. data/lib/cyberSource_client/models/inline_response_201_2_order_information.rb +192 -192
  93. data/lib/cyberSource_client/models/inline_response_201_2_order_information_amount_details.rb +224 -224
  94. data/lib/cyberSource_client/models/inline_response_201_2_processor_information.rb +199 -199
  95. data/lib/cyberSource_client/models/inline_response_201_3.rb +323 -323
  96. data/lib/cyberSource_client/models/inline_response_201_3__links.rb +192 -192
  97. data/lib/cyberSource_client/models/inline_response_201_3_order_information.rb +183 -183
  98. data/lib/cyberSource_client/models/inline_response_201_3_processor_information.rb +224 -224
  99. data/lib/cyberSource_client/models/inline_response_201_3_refund_amount_details.rb +224 -224
  100. data/lib/cyberSource_client/models/inline_response_201_4.rb +323 -323
  101. data/lib/cyberSource_client/models/inline_response_201_4_credit_amount_details.rb +224 -224
  102. data/lib/cyberSource_client/models/inline_response_201_5.rb +280 -280
  103. data/lib/cyberSource_client/models/inline_response_201_5_void_amount_details.rb +219 -219
  104. data/lib/cyberSource_client/models/inline_response_201_6.rb +331 -331
  105. data/lib/cyberSource_client/models/inline_response_201__embedded.rb +183 -183
  106. data/lib/cyberSource_client/models/inline_response_201__embedded_capture.rb +193 -193
  107. data/lib/cyberSource_client/models/inline_response_201__embedded_capture__links.rb +183 -183
  108. data/lib/cyberSource_client/models/inline_response_201__links.rb +201 -201
  109. data/lib/cyberSource_client/models/inline_response_201__links_self.rb +194 -194
  110. data/lib/cyberSource_client/models/inline_response_201_client_reference_information.rb +199 -199
  111. data/lib/cyberSource_client/models/inline_response_201_error_information.rb +239 -239
  112. data/lib/cyberSource_client/models/inline_response_201_error_information_details.rb +228 -228
  113. data/lib/cyberSource_client/models/inline_response_201_order_information.rb +192 -192
  114. data/lib/cyberSource_client/models/inline_response_201_order_information_amount_details.rb +249 -249
  115. data/lib/cyberSource_client/models/inline_response_201_order_information_invoice_details.rb +184 -184
  116. data/lib/cyberSource_client/models/inline_response_201_payment_information.rb +201 -201
  117. data/lib/cyberSource_client/models/inline_response_201_payment_information_account_features.rb +623 -623
  118. data/lib/cyberSource_client/models/inline_response_201_payment_information_card.rb +199 -199
  119. data/lib/cyberSource_client/models/inline_response_201_payment_information_tokenized_card.rb +349 -349
  120. data/lib/cyberSource_client/models/inline_response_201_point_of_sale_information.rb +208 -208
  121. data/lib/cyberSource_client/models/inline_response_201_point_of_sale_information_emv.rb +199 -199
  122. data/lib/cyberSource_client/models/inline_response_201_processor_information.rb +642 -642
  123. data/lib/cyberSource_client/models/inline_response_201_processor_information_avs.rb +224 -224
  124. data/lib/cyberSource_client/models/inline_response_201_processor_information_card_verification.rb +224 -224
  125. data/lib/cyberSource_client/models/inline_response_201_processor_information_consumer_authentication_response.rb +224 -224
  126. data/lib/cyberSource_client/models/inline_response_201_processor_information_customer.rb +199 -199
  127. data/lib/cyberSource_client/models/inline_response_201_processor_information_electronic_verification_results.rb +474 -474
  128. data/lib/cyberSource_client/models/inline_response_201_processor_information_issuer.rb +224 -224
  129. data/lib/cyberSource_client/models/inline_response_201_processor_information_merchant_advice.rb +224 -224
  130. data/lib/cyberSource_client/models/inline_response_400.rb +271 -271
  131. data/lib/cyberSource_client/models/inline_response_400_1.rb +271 -271
  132. data/lib/cyberSource_client/models/inline_response_400_2.rb +271 -271
  133. data/lib/cyberSource_client/models/inline_response_400_3.rb +271 -271
  134. data/lib/cyberSource_client/models/inline_response_400_4.rb +271 -271
  135. data/lib/cyberSource_client/models/inline_response_400_5.rb +259 -259
  136. data/lib/cyberSource_client/models/inline_response_400_6.rb +202 -202
  137. data/lib/cyberSource_client/models/inline_response_409.rb +183 -183
  138. data/lib/cyberSource_client/models/inline_response_409__links.rb +183 -183
  139. data/lib/cyberSource_client/models/inline_response_409__links_payment_instruments.rb +183 -183
  140. data/lib/cyberSource_client/models/inline_response_502.rb +260 -260
  141. data/lib/cyberSource_client/models/inline_response_default.rb +192 -192
  142. data/lib/cyberSource_client/models/inline_response_default__links.rb +205 -205
  143. data/lib/cyberSource_client/models/inline_response_default__links_next.rb +204 -204
  144. data/lib/cyberSource_client/models/inline_response_default_response_status.rb +225 -225
  145. data/lib/cyberSource_client/models/inline_response_default_response_status_details.rb +194 -194
  146. data/lib/cyberSource_client/models/instrumentidentifiers__links.rb +201 -201
  147. data/lib/cyberSource_client/models/instrumentidentifiers__links_self.rb +183 -183
  148. data/lib/cyberSource_client/models/instrumentidentifiers_authorization_options_merchant_initiated_transaction.rb +184 -184
  149. data/lib/cyberSource_client/models/instrumentidentifiers_bank_account.rb +194 -194
  150. data/lib/cyberSource_client/models/instrumentidentifiers_card.rb +184 -184
  151. data/lib/cyberSource_client/models/instrumentidentifiers_details.rb +194 -194
  152. data/lib/cyberSource_client/models/instrumentidentifiers_metadata.rb +184 -184
  153. data/lib/cyberSource_client/models/instrumentidentifiers_processing_information.rb +183 -183
  154. data/lib/cyberSource_client/models/instrumentidentifiers_processing_information_authorization_options.rb +183 -183
  155. data/lib/cyberSource_client/models/instrumentidentifiers_processing_information_authorization_options_initiator.rb +183 -183
  156. data/lib/cyberSource_client/models/json_web_key.rb +225 -225
  157. data/lib/cyberSource_client/models/key_parameters.rb +184 -184
  158. data/lib/cyberSource_client/models/key_result.rb +202 -202
  159. data/lib/cyberSource_client/models/link.rb +204 -204
  160. data/lib/cyberSource_client/models/links.rb +205 -205
  161. data/lib/cyberSource_client/models/oct_create_payment_request.rb +237 -237
  162. data/lib/cyberSource_client/models/paymentinstruments_bank_account.rb +184 -184
  163. data/lib/cyberSource_client/models/paymentinstruments_bill_to.rb +284 -284
  164. data/lib/cyberSource_client/models/paymentinstruments_buyer_information.rb +215 -215
  165. data/lib/cyberSource_client/models/paymentinstruments_buyer_information_issued_by.rb +184 -184
  166. data/lib/cyberSource_client/models/paymentinstruments_buyer_information_personal_identification.rb +203 -203
  167. data/lib/cyberSource_client/models/paymentinstruments_card.rb +278 -278
  168. data/lib/cyberSource_client/models/paymentinstruments_instrument_identifier.rb +295 -295
  169. data/lib/cyberSource_client/models/paymentinstruments_merchant_information.rb +183 -183
  170. data/lib/cyberSource_client/models/paymentinstruments_merchant_information_merchant_descriptor.rb +184 -184
  171. data/lib/cyberSource_client/models/paymentinstruments_processing_information.rb +193 -193
  172. data/lib/cyberSource_client/models/paymentinstruments_processing_information_bank_transfer_options.rb +184 -184
  173. data/lib/cyberSource_client/models/paymentsflexv1tokens_card_info.rb +214 -214
  174. data/lib/cyberSource_client/models/refund_capture_request.rb +267 -267
  175. data/lib/cyberSource_client/models/refund_payment_request.rb +267 -267
  176. data/lib/cyberSource_client/models/response_status.rb +225 -225
  177. data/lib/cyberSource_client/models/response_status_details.rb +194 -194
  178. data/lib/cyberSource_client/models/tokenize_parameters.rb +193 -193
  179. data/lib/cyberSource_client/models/tokenize_request.rb +193 -193
  180. data/lib/cyberSource_client/models/tokenize_result.rb +255 -255
  181. data/lib/cyberSource_client/models/v2credits_point_of_sale_information.rb +183 -183
  182. data/lib/cyberSource_client/models/v2credits_point_of_sale_information_emv.rb +221 -221
  183. data/lib/cyberSource_client/models/v2credits_processing_information.rb +383 -383
  184. data/lib/cyberSource_client/models/v2payments_aggregator_information.rb +233 -233
  185. data/lib/cyberSource_client/models/v2payments_aggregator_information_sub_merchant.rb +424 -424
  186. data/lib/cyberSource_client/models/v2payments_buyer_information.rb +285 -285
  187. data/lib/cyberSource_client/models/v2payments_buyer_information_personal_identification.rb +252 -252
  188. data/lib/cyberSource_client/models/v2payments_client_reference_information.rb +219 -219
  189. data/lib/cyberSource_client/models/v2payments_consumer_authentication_information.rb +374 -374
  190. data/lib/cyberSource_client/models/v2payments_device_information.rb +249 -249
  191. data/lib/cyberSource_client/models/v2payments_merchant_defined_information.rb +224 -224
  192. data/lib/cyberSource_client/models/v2payments_merchant_information.rb +308 -308
  193. data/lib/cyberSource_client/models/v2payments_merchant_information_merchant_descriptor.rb +374 -374
  194. data/lib/cyberSource_client/models/v2payments_order_information.rb +230 -230
  195. data/lib/cyberSource_client/models/v2payments_order_information_amount_details.rb +605 -605
  196. data/lib/cyberSource_client/models/v2payments_order_information_amount_details_amex_additional_amounts.rb +224 -224
  197. data/lib/cyberSource_client/models/v2payments_order_information_amount_details_surcharge.rb +209 -209
  198. data/lib/cyberSource_client/models/v2payments_order_information_amount_details_tax_details.rb +328 -328
  199. data/lib/cyberSource_client/models/v2payments_order_information_bill_to.rb +618 -618
  200. data/lib/cyberSource_client/models/v2payments_order_information_invoice_details.rb +330 -330
  201. data/lib/cyberSource_client/models/v2payments_order_information_invoice_details_transaction_advice_addendum.rb +199 -199
  202. data/lib/cyberSource_client/models/v2payments_order_information_line_items.rb +649 -649
  203. data/lib/cyberSource_client/models/v2payments_order_information_ship_to.rb +474 -474
  204. data/lib/cyberSource_client/models/v2payments_order_information_shipping_details.rb +234 -234
  205. data/lib/cyberSource_client/models/v2payments_payment_information.rb +210 -210
  206. data/lib/cyberSource_client/models/v2payments_payment_information_card.rb +474 -474
  207. data/lib/cyberSource_client/models/v2payments_payment_information_customer.rb +202 -202
  208. data/lib/cyberSource_client/models/v2payments_payment_information_fluid_data.rb +259 -259
  209. data/lib/cyberSource_client/models/v2payments_payment_information_tokenized_card.rb +424 -424
  210. data/lib/cyberSource_client/models/v2payments_point_of_sale_information.rb +440 -440
  211. data/lib/cyberSource_client/models/v2payments_point_of_sale_information_emv.rb +256 -256
  212. data/lib/cyberSource_client/models/v2payments_processing_information.rb +432 -432
  213. data/lib/cyberSource_client/models/v2payments_processing_information_authorization_options.rb +361 -361
  214. data/lib/cyberSource_client/models/v2payments_processing_information_authorization_options_initiator.rb +247 -247
  215. data/lib/cyberSource_client/models/{v2payments_processing_information_authorization_options_initiator_merchant_initiated_transaction.rb → v2payments_processing_information_authorization_options_merchant_initiated_transaction.rb} +224 -224
  216. data/lib/cyberSource_client/models/v2payments_processing_information_capture_options.rb +267 -267
  217. data/lib/cyberSource_client/models/v2payments_processing_information_issuer.rb +199 -199
  218. data/lib/cyberSource_client/models/v2payments_processing_information_recurring_options.rb +198 -198
  219. data/lib/cyberSource_client/models/v2payments_recipient_information.rb +249 -249
  220. data/lib/cyberSource_client/models/v2paymentsidcaptures_aggregator_information.rb +233 -233
  221. data/lib/cyberSource_client/models/v2paymentsidcaptures_aggregator_information_sub_merchant.rb +374 -374
  222. data/lib/cyberSource_client/models/v2paymentsidcaptures_buyer_information.rb +224 -224
  223. data/lib/cyberSource_client/models/v2paymentsidcaptures_merchant_information.rb +258 -258
  224. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information.rb +230 -230
  225. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information_amount_details.rb +546 -546
  226. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information_bill_to.rb +449 -449
  227. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information_invoice_details.rb +320 -320
  228. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information_ship_to.rb +249 -249
  229. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information_shipping_details.rb +199 -199
  230. data/lib/cyberSource_client/models/v2paymentsidcaptures_payment_information.rb +183 -183
  231. data/lib/cyberSource_client/models/v2paymentsidcaptures_point_of_sale_information.rb +208 -208
  232. data/lib/cyberSource_client/models/v2paymentsidcaptures_point_of_sale_information_emv.rb +211 -211
  233. data/lib/cyberSource_client/models/v2paymentsidcaptures_processing_information.rb +351 -351
  234. data/lib/cyberSource_client/models/v2paymentsidcaptures_processing_information_authorization_options.rb +249 -249
  235. data/lib/cyberSource_client/models/v2paymentsidcaptures_processing_information_capture_options.rb +242 -242
  236. data/lib/cyberSource_client/models/v2paymentsidrefunds_merchant_information.rb +258 -258
  237. data/lib/cyberSource_client/models/v2paymentsidrefunds_order_information.rb +230 -230
  238. data/lib/cyberSource_client/models/v2paymentsidrefunds_order_information_line_items.rb +639 -639
  239. data/lib/cyberSource_client/models/v2paymentsidrefunds_payment_information.rb +183 -183
  240. data/lib/cyberSource_client/models/v2paymentsidrefunds_payment_information_card.rb +374 -374
  241. data/lib/cyberSource_client/models/v2paymentsidrefunds_point_of_sale_information.rb +183 -183
  242. data/lib/cyberSource_client/models/v2paymentsidrefunds_processing_information.rb +333 -333
  243. data/lib/cyberSource_client/models/v2paymentsidrefunds_processing_information_recurring_options.rb +186 -186
  244. data/lib/cyberSource_client/models/v2paymentsidreversals_client_reference_information.rb +209 -209
  245. data/lib/cyberSource_client/models/v2paymentsidreversals_order_information.rb +185 -185
  246. data/lib/cyberSource_client/models/v2paymentsidreversals_order_information_line_items.rb +233 -233
  247. data/lib/cyberSource_client/models/v2paymentsidreversals_point_of_sale_information.rb +183 -183
  248. data/lib/cyberSource_client/models/v2paymentsidreversals_processing_information.rb +308 -308
  249. data/lib/cyberSource_client/models/v2paymentsidreversals_reversal_information.rb +211 -211
  250. data/lib/cyberSource_client/models/v2paymentsidreversals_reversal_information_amount_details.rb +224 -224
  251. data/lib/cyberSource_client/models/v2payouts_merchant_information.rb +258 -258
  252. data/lib/cyberSource_client/models/v2payouts_merchant_information_merchant_descriptor.rb +324 -324
  253. data/lib/cyberSource_client/models/v2payouts_order_information.rb +192 -192
  254. data/lib/cyberSource_client/models/v2payouts_order_information_amount_details.rb +249 -249
  255. data/lib/cyberSource_client/models/v2payouts_order_information_bill_to.rb +443 -443
  256. data/lib/cyberSource_client/models/v2payouts_payment_information.rb +183 -183
  257. data/lib/cyberSource_client/models/v2payouts_payment_information_card.rb +299 -299
  258. data/lib/cyberSource_client/models/v2payouts_processing_information.rb +283 -283
  259. data/lib/cyberSource_client/models/v2payouts_processing_information_payouts_options.rb +274 -274
  260. data/lib/cyberSource_client/models/v2payouts_recipient_information.rb +433 -433
  261. data/lib/cyberSource_client/models/v2payouts_sender_information.rb +517 -517
  262. data/lib/cyberSource_client/models/v2payouts_sender_information_account.rb +233 -233
  263. data/lib/cyberSource_client/models/void_capture_request.rb +183 -183
  264. data/lib/cyberSource_client/models/void_credit_request.rb +183 -183
  265. data/lib/cyberSource_client/models/void_payment_request.rb +183 -183
  266. data/lib/cyberSource_client/models/void_refund_request.rb +183 -183
  267. data/lib/cyberSource_client/version.rb +15 -15
  268. metadata +4 -4
@@ -1,219 +1,219 @@
1
- =begin
2
- #CyberSource Flex API
3
-
4
- #Simple PAN tokenization service
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 InlineResponse2002DeviceInformation
17
- # TBD
18
- attr_accessor :id
19
-
20
- # TBD
21
- attr_accessor :fingerprint_id
22
-
23
- # IP address of the customer.
24
- attr_accessor :ip_address
25
-
26
- # Attribute mapping from ruby-style variable name to JSON key.
27
- def self.attribute_map
28
- {
29
- :'id' => :'id',
30
- :'fingerprint_id' => :'fingerprintId',
31
- :'ip_address' => :'ipAddress'
32
- }
33
- end
34
-
35
- # Attribute type mapping.
36
- def self.swagger_types
37
- {
38
- :'id' => :'String',
39
- :'fingerprint_id' => :'String',
40
- :'ip_address' => :'String'
41
- }
42
- end
43
-
44
- # Initializes the object
45
- # @param [Hash] attributes Model attributes in the form of hash
46
- def initialize(attributes = {})
47
- return unless attributes.is_a?(Hash)
48
-
49
- # convert string to symbol for hash key
50
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
51
-
52
- if attributes.has_key?(:'id')
53
- self.id = attributes[:'id']
54
- end
55
-
56
- if attributes.has_key?(:'fingerprintId')
57
- self.fingerprint_id = attributes[:'fingerprintId']
58
- end
59
-
60
- if attributes.has_key?(:'ipAddress')
61
- self.ip_address = attributes[:'ipAddress']
62
- end
63
- end
64
-
65
- # Show invalid properties with the reasons. Usually used together with valid?
66
- # @return Array for valid properties with the reasons
67
- def list_invalid_properties
68
- invalid_properties = Array.new
69
- if !@ip_address.nil? && @ip_address.to_s.length > 15
70
- invalid_properties.push('invalid value for "ip_address", the character length must be smaller than or equal to 15.')
71
- end
72
-
73
- invalid_properties
74
- end
75
-
76
- # Check to see if the all the properties in the model are valid
77
- # @return true if the model is valid
78
- def valid?
79
- return false if !@ip_address.nil? && @ip_address.to_s.length > 15
80
- true
81
- end
82
-
83
- # Custom attribute writer method with validation
84
- # @param [Object] ip_address Value to be assigned
85
- def ip_address=(ip_address)
86
- if !ip_address.nil? && ip_address.to_s.length > 15
87
- fail ArgumentError, 'invalid value for "ip_address", the character length must be smaller than or equal to 15.'
88
- end
89
-
90
- @ip_address = ip_address
91
- end
92
-
93
- # Checks equality by comparing each attribute.
94
- # @param [Object] Object to be compared
95
- def ==(o)
96
- return true if self.equal?(o)
97
- self.class == o.class &&
98
- id == o.id &&
99
- fingerprint_id == o.fingerprint_id &&
100
- ip_address == o.ip_address
101
- end
102
-
103
- # @see the `==` method
104
- # @param [Object] Object to be compared
105
- def eql?(o)
106
- self == o
107
- end
108
-
109
- # Calculates hash code according to all attributes.
110
- # @return [Fixnum] Hash code
111
- def hash
112
- [id, fingerprint_id, ip_address].hash
113
- end
114
-
115
- # Builds the object from hash
116
- # @param [Hash] attributes Model attributes in the form of hash
117
- # @return [Object] Returns the model itself
118
- def build_from_hash(attributes)
119
- return nil unless attributes.is_a?(Hash)
120
- self.class.swagger_types.each_pair do |key, type|
121
- if type =~ /\AArray<(.*)>/i
122
- # check to ensure the input is an array given that the the attribute
123
- # is documented as an array but the input is not
124
- if attributes[self.class.attribute_map[key]].is_a?(Array)
125
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
126
- end
127
- elsif !attributes[self.class.attribute_map[key]].nil?
128
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
129
- end # or else data not found in attributes(hash), not an issue as the data can be optional
130
- end
131
-
132
- self
133
- end
134
-
135
- # Deserializes the data based on type
136
- # @param string type Data type
137
- # @param string value Value to be deserialized
138
- # @return [Object] Deserialized data
139
- def _deserialize(type, value)
140
- case type.to_sym
141
- when :DateTime
142
- DateTime.parse(value)
143
- when :Date
144
- Date.parse(value)
145
- when :String
146
- value.to_s
147
- when :Integer
148
- value.to_i
149
- when :Float
150
- value.to_f
151
- when :BOOLEAN
152
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
153
- true
154
- else
155
- false
156
- end
157
- when :Object
158
- # generic object (usually a Hash), return directly
159
- value
160
- when /\AArray<(?<inner_type>.+)>\z/
161
- inner_type = Regexp.last_match[:inner_type]
162
- value.map { |v| _deserialize(inner_type, v) }
163
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
164
- k_type = Regexp.last_match[:k_type]
165
- v_type = Regexp.last_match[:v_type]
166
- {}.tap do |hash|
167
- value.each do |k, v|
168
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
169
- end
170
- end
171
- else # model
172
- temp_model = CyberSource.const_get(type).new
173
- temp_model.build_from_hash(value)
174
- end
175
- end
176
-
177
- # Returns the string representation of the object
178
- # @return [String] String presentation of the object
179
- def to_s
180
- to_hash.to_s
181
- end
182
-
183
- # to_body is an alias to to_hash (backward compatibility)
184
- # @return [Hash] Returns the object in the form of hash
185
- def to_body
186
- to_hash
187
- end
188
-
189
- # Returns the object in the form of hash
190
- # @return [Hash] Returns the object in the form of hash
191
- def to_hash
192
- hash = {}
193
- self.class.attribute_map.each_pair do |attr, param|
194
- value = self.send(attr)
195
- next if value.nil?
196
- hash[param] = _to_hash(value)
197
- end
198
- hash
199
- end
200
-
201
- # Outputs non-array value in the form of hash
202
- # For object, use to_hash. Otherwise, just return the value
203
- # @param [Object] value Any valid value
204
- # @return [Hash] Returns the value in the form of hash
205
- def _to_hash(value)
206
- if value.is_a?(Array)
207
- value.compact.map { |v| _to_hash(v) }
208
- elsif value.is_a?(Hash)
209
- {}.tap do |hash|
210
- value.each { |k, v| hash[k] = _to_hash(v) }
211
- end
212
- elsif value.respond_to? :to_hash
213
- value.to_hash
214
- else
215
- value
216
- end
217
- end
218
- end
219
- end
1
+ =begin
2
+ #CyberSource Flex API
3
+
4
+ #Simple PAN tokenization service
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 InlineResponse2002DeviceInformation
17
+ # TBD
18
+ attr_accessor :id
19
+
20
+ # TBD
21
+ attr_accessor :fingerprint_id
22
+
23
+ # IP address of the customer.
24
+ attr_accessor :ip_address
25
+
26
+ # Attribute mapping from ruby-style variable name to JSON key.
27
+ def self.attribute_map
28
+ {
29
+ :'id' => :'id',
30
+ :'fingerprint_id' => :'fingerprintId',
31
+ :'ip_address' => :'ipAddress'
32
+ }
33
+ end
34
+
35
+ # Attribute type mapping.
36
+ def self.swagger_types
37
+ {
38
+ :'id' => :'String',
39
+ :'fingerprint_id' => :'String',
40
+ :'ip_address' => :'String'
41
+ }
42
+ end
43
+
44
+ # Initializes the object
45
+ # @param [Hash] attributes Model attributes in the form of hash
46
+ def initialize(attributes = {})
47
+ return unless attributes.is_a?(Hash)
48
+
49
+ # convert string to symbol for hash key
50
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
51
+
52
+ if attributes.has_key?(:'id')
53
+ self.id = attributes[:'id']
54
+ end
55
+
56
+ if attributes.has_key?(:'fingerprintId')
57
+ self.fingerprint_id = attributes[:'fingerprintId']
58
+ end
59
+
60
+ if attributes.has_key?(:'ipAddress')
61
+ self.ip_address = attributes[:'ipAddress']
62
+ end
63
+ end
64
+
65
+ # Show invalid properties with the reasons. Usually used together with valid?
66
+ # @return Array for valid properties with the reasons
67
+ def list_invalid_properties
68
+ invalid_properties = Array.new
69
+ if !@ip_address.nil? && @ip_address.to_s.length > 15
70
+ invalid_properties.push('invalid value for "ip_address", the character length must be smaller than or equal to 15.')
71
+ end
72
+
73
+ invalid_properties
74
+ end
75
+
76
+ # Check to see if the all the properties in the model are valid
77
+ # @return true if the model is valid
78
+ def valid?
79
+ return false if !@ip_address.nil? && @ip_address.to_s.length > 15
80
+ true
81
+ end
82
+
83
+ # Custom attribute writer method with validation
84
+ # @param [Object] ip_address Value to be assigned
85
+ def ip_address=(ip_address)
86
+ if !ip_address.nil? && ip_address.to_s.length > 15
87
+ fail ArgumentError, 'invalid value for "ip_address", the character length must be smaller than or equal to 15.'
88
+ end
89
+
90
+ @ip_address = ip_address
91
+ end
92
+
93
+ # Checks equality by comparing each attribute.
94
+ # @param [Object] Object to be compared
95
+ def ==(o)
96
+ return true if self.equal?(o)
97
+ self.class == o.class &&
98
+ id == o.id &&
99
+ fingerprint_id == o.fingerprint_id &&
100
+ ip_address == o.ip_address
101
+ end
102
+
103
+ # @see the `==` method
104
+ # @param [Object] Object to be compared
105
+ def eql?(o)
106
+ self == o
107
+ end
108
+
109
+ # Calculates hash code according to all attributes.
110
+ # @return [Fixnum] Hash code
111
+ def hash
112
+ [id, fingerprint_id, ip_address].hash
113
+ end
114
+
115
+ # Builds the object from hash
116
+ # @param [Hash] attributes Model attributes in the form of hash
117
+ # @return [Object] Returns the model itself
118
+ def build_from_hash(attributes)
119
+ return nil unless attributes.is_a?(Hash)
120
+ self.class.swagger_types.each_pair do |key, type|
121
+ if type =~ /\AArray<(.*)>/i
122
+ # check to ensure the input is an array given that the the attribute
123
+ # is documented as an array but the input is not
124
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
125
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
126
+ end
127
+ elsif !attributes[self.class.attribute_map[key]].nil?
128
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
129
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
130
+ end
131
+
132
+ self
133
+ end
134
+
135
+ # Deserializes the data based on type
136
+ # @param string type Data type
137
+ # @param string value Value to be deserialized
138
+ # @return [Object] Deserialized data
139
+ def _deserialize(type, value)
140
+ case type.to_sym
141
+ when :DateTime
142
+ DateTime.parse(value)
143
+ when :Date
144
+ Date.parse(value)
145
+ when :String
146
+ value.to_s
147
+ when :Integer
148
+ value.to_i
149
+ when :Float
150
+ value.to_f
151
+ when :BOOLEAN
152
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
153
+ true
154
+ else
155
+ false
156
+ end
157
+ when :Object
158
+ # generic object (usually a Hash), return directly
159
+ value
160
+ when /\AArray<(?<inner_type>.+)>\z/
161
+ inner_type = Regexp.last_match[:inner_type]
162
+ value.map { |v| _deserialize(inner_type, v) }
163
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
164
+ k_type = Regexp.last_match[:k_type]
165
+ v_type = Regexp.last_match[:v_type]
166
+ {}.tap do |hash|
167
+ value.each do |k, v|
168
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
169
+ end
170
+ end
171
+ else # model
172
+ temp_model = CyberSource.const_get(type).new
173
+ temp_model.build_from_hash(value)
174
+ end
175
+ end
176
+
177
+ # Returns the string representation of the object
178
+ # @return [String] String presentation of the object
179
+ def to_s
180
+ to_hash.to_s
181
+ end
182
+
183
+ # to_body is an alias to to_hash (backward compatibility)
184
+ # @return [Hash] Returns the object in the form of hash
185
+ def to_body
186
+ to_hash
187
+ end
188
+
189
+ # Returns the object in the form of hash
190
+ # @return [Hash] Returns the object in the form of hash
191
+ def to_hash
192
+ hash = {}
193
+ self.class.attribute_map.each_pair do |attr, param|
194
+ value = self.send(attr)
195
+ next if value.nil?
196
+ hash[param] = _to_hash(value)
197
+ end
198
+ hash
199
+ end
200
+
201
+ # Outputs non-array value in the form of hash
202
+ # For object, use to_hash. Otherwise, just return the value
203
+ # @param [Object] value Any valid value
204
+ # @return [Hash] Returns the value in the form of hash
205
+ def _to_hash(value)
206
+ if value.is_a?(Array)
207
+ value.compact.map { |v| _to_hash(v) }
208
+ elsif value.is_a?(Hash)
209
+ {}.tap do |hash|
210
+ value.each { |k, v| hash[k] = _to_hash(v) }
211
+ end
212
+ elsif value.respond_to? :to_hash
213
+ value.to_hash
214
+ else
215
+ value
216
+ end
217
+ end
218
+ end
219
+ end
@@ -1,233 +1,233 @@
1
- =begin
2
- #CyberSource Flex API
3
-
4
- #Simple PAN tokenization service
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 InlineResponse2002MerchantInformation
17
- # Four-digit number that the payment card industry uses to classify merchants into market segments. Visa assigned one or more of these values to your business when you started accepting Visa cards. If you do not include this field in your request, CyberSource uses the value in your CyberSource account. For processor-specific information, see the merchant_category_code field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
18
- attr_accessor :category_code
19
-
20
- # Your government-assigned tax identification number. For CtV processors, the maximum length is 20. For other processor-specific information, see the merchant_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)
21
- attr_accessor :vat_registration_number
22
-
23
- attr_accessor :merchant_descriptor
24
-
25
- # Attribute mapping from ruby-style variable name to JSON key.
26
- def self.attribute_map
27
- {
28
- :'category_code' => :'categoryCode',
29
- :'vat_registration_number' => :'vatRegistrationNumber',
30
- :'merchant_descriptor' => :'merchantDescriptor'
31
- }
32
- end
33
-
34
- # Attribute type mapping.
35
- def self.swagger_types
36
- {
37
- :'category_code' => :'Integer',
38
- :'vat_registration_number' => :'String',
39
- :'merchant_descriptor' => :'V2paymentsMerchantInformationMerchantDescriptor'
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?(:'categoryCode')
52
- self.category_code = attributes[:'categoryCode']
53
- end
54
-
55
- if attributes.has_key?(:'vatRegistrationNumber')
56
- self.vat_registration_number = attributes[:'vatRegistrationNumber']
57
- end
58
-
59
- if attributes.has_key?(:'merchantDescriptor')
60
- self.merchant_descriptor = attributes[:'merchantDescriptor']
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 !@category_code.nil? && @category_code > 9999
69
- invalid_properties.push('invalid value for "category_code", must be smaller than or equal to 9999.')
70
- end
71
-
72
- if !@vat_registration_number.nil? && @vat_registration_number.to_s.length > 21
73
- invalid_properties.push('invalid value for "vat_registration_number", the character length must be smaller than or equal to 21.')
74
- end
75
-
76
- invalid_properties
77
- end
78
-
79
- # Check to see if the all the properties in the model are valid
80
- # @return true if the model is valid
81
- def valid?
82
- return false if !@category_code.nil? && @category_code > 9999
83
- return false if !@vat_registration_number.nil? && @vat_registration_number.to_s.length > 21
84
- true
85
- end
86
-
87
- # Custom attribute writer method with validation
88
- # @param [Object] category_code Value to be assigned
89
- def category_code=(category_code)
90
- if !category_code.nil? && category_code > 9999
91
- fail ArgumentError, 'invalid value for "category_code", must be smaller than or equal to 9999.'
92
- end
93
-
94
- @category_code = category_code
95
- end
96
-
97
- # Custom attribute writer method with validation
98
- # @param [Object] vat_registration_number Value to be assigned
99
- def vat_registration_number=(vat_registration_number)
100
- if !vat_registration_number.nil? && vat_registration_number.to_s.length > 21
101
- fail ArgumentError, 'invalid value for "vat_registration_number", the character length must be smaller than or equal to 21.'
102
- end
103
-
104
- @vat_registration_number = vat_registration_number
105
- end
106
-
107
- # Checks equality by comparing each attribute.
108
- # @param [Object] Object to be compared
109
- def ==(o)
110
- return true if self.equal?(o)
111
- self.class == o.class &&
112
- category_code == o.category_code &&
113
- vat_registration_number == o.vat_registration_number &&
114
- merchant_descriptor == o.merchant_descriptor
115
- end
116
-
117
- # @see the `==` method
118
- # @param [Object] Object to be compared
119
- def eql?(o)
120
- self == o
121
- end
122
-
123
- # Calculates hash code according to all attributes.
124
- # @return [Fixnum] Hash code
125
- def hash
126
- [category_code, vat_registration_number, merchant_descriptor].hash
127
- end
128
-
129
- # Builds the object from hash
130
- # @param [Hash] attributes Model attributes in the form of hash
131
- # @return [Object] Returns the model itself
132
- def build_from_hash(attributes)
133
- return nil unless attributes.is_a?(Hash)
134
- self.class.swagger_types.each_pair do |key, type|
135
- if type =~ /\AArray<(.*)>/i
136
- # check to ensure the input is an array given that the the attribute
137
- # is documented as an array but the input is not
138
- if attributes[self.class.attribute_map[key]].is_a?(Array)
139
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
140
- end
141
- elsif !attributes[self.class.attribute_map[key]].nil?
142
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
143
- end # or else data not found in attributes(hash), not an issue as the data can be optional
144
- end
145
-
146
- self
147
- end
148
-
149
- # Deserializes the data based on type
150
- # @param string type Data type
151
- # @param string value Value to be deserialized
152
- # @return [Object] Deserialized data
153
- def _deserialize(type, value)
154
- case type.to_sym
155
- when :DateTime
156
- DateTime.parse(value)
157
- when :Date
158
- Date.parse(value)
159
- when :String
160
- value.to_s
161
- when :Integer
162
- value.to_i
163
- when :Float
164
- value.to_f
165
- when :BOOLEAN
166
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
167
- true
168
- else
169
- false
170
- end
171
- when :Object
172
- # generic object (usually a Hash), return directly
173
- value
174
- when /\AArray<(?<inner_type>.+)>\z/
175
- inner_type = Regexp.last_match[:inner_type]
176
- value.map { |v| _deserialize(inner_type, v) }
177
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
178
- k_type = Regexp.last_match[:k_type]
179
- v_type = Regexp.last_match[:v_type]
180
- {}.tap do |hash|
181
- value.each do |k, v|
182
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
183
- end
184
- end
185
- else # model
186
- temp_model = CyberSource.const_get(type).new
187
- temp_model.build_from_hash(value)
188
- end
189
- end
190
-
191
- # Returns the string representation of the object
192
- # @return [String] String presentation of the object
193
- def to_s
194
- to_hash.to_s
195
- end
196
-
197
- # to_body is an alias to to_hash (backward compatibility)
198
- # @return [Hash] Returns the object in the form of hash
199
- def to_body
200
- to_hash
201
- end
202
-
203
- # Returns the object in the form of hash
204
- # @return [Hash] Returns the object in the form of hash
205
- def to_hash
206
- hash = {}
207
- self.class.attribute_map.each_pair do |attr, param|
208
- value = self.send(attr)
209
- next if value.nil?
210
- hash[param] = _to_hash(value)
211
- end
212
- hash
213
- end
214
-
215
- # Outputs non-array value in the form of hash
216
- # For object, use to_hash. Otherwise, just return the value
217
- # @param [Object] value Any valid value
218
- # @return [Hash] Returns the value in the form of hash
219
- def _to_hash(value)
220
- if value.is_a?(Array)
221
- value.compact.map { |v| _to_hash(v) }
222
- elsif value.is_a?(Hash)
223
- {}.tap do |hash|
224
- value.each { |k, v| hash[k] = _to_hash(v) }
225
- end
226
- elsif value.respond_to? :to_hash
227
- value.to_hash
228
- else
229
- value
230
- end
231
- end
232
- end
233
- end
1
+ =begin
2
+ #CyberSource Flex API
3
+
4
+ #Simple PAN tokenization service
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 InlineResponse2002MerchantInformation
17
+ # Four-digit number that the payment card industry uses to classify merchants into market segments. Visa assigned one or more of these values to your business when you started accepting Visa cards. If you do not include this field in your request, CyberSource uses the value in your CyberSource account. For processor-specific information, see the merchant_category_code field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
18
+ attr_accessor :category_code
19
+
20
+ # Your government-assigned tax identification number. For CtV processors, the maximum length is 20. For other processor-specific information, see the merchant_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)
21
+ attr_accessor :vat_registration_number
22
+
23
+ attr_accessor :merchant_descriptor
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+ :'category_code' => :'categoryCode',
29
+ :'vat_registration_number' => :'vatRegistrationNumber',
30
+ :'merchant_descriptor' => :'merchantDescriptor'
31
+ }
32
+ end
33
+
34
+ # Attribute type mapping.
35
+ def self.swagger_types
36
+ {
37
+ :'category_code' => :'Integer',
38
+ :'vat_registration_number' => :'String',
39
+ :'merchant_descriptor' => :'V2paymentsMerchantInformationMerchantDescriptor'
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?(:'categoryCode')
52
+ self.category_code = attributes[:'categoryCode']
53
+ end
54
+
55
+ if attributes.has_key?(:'vatRegistrationNumber')
56
+ self.vat_registration_number = attributes[:'vatRegistrationNumber']
57
+ end
58
+
59
+ if attributes.has_key?(:'merchantDescriptor')
60
+ self.merchant_descriptor = attributes[:'merchantDescriptor']
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 !@category_code.nil? && @category_code > 9999
69
+ invalid_properties.push('invalid value for "category_code", must be smaller than or equal to 9999.')
70
+ end
71
+
72
+ if !@vat_registration_number.nil? && @vat_registration_number.to_s.length > 21
73
+ invalid_properties.push('invalid value for "vat_registration_number", the character length must be smaller than or equal to 21.')
74
+ end
75
+
76
+ invalid_properties
77
+ end
78
+
79
+ # Check to see if the all the properties in the model are valid
80
+ # @return true if the model is valid
81
+ def valid?
82
+ return false if !@category_code.nil? && @category_code > 9999
83
+ return false if !@vat_registration_number.nil? && @vat_registration_number.to_s.length > 21
84
+ true
85
+ end
86
+
87
+ # Custom attribute writer method with validation
88
+ # @param [Object] category_code Value to be assigned
89
+ def category_code=(category_code)
90
+ if !category_code.nil? && category_code > 9999
91
+ fail ArgumentError, 'invalid value for "category_code", must be smaller than or equal to 9999.'
92
+ end
93
+
94
+ @category_code = category_code
95
+ end
96
+
97
+ # Custom attribute writer method with validation
98
+ # @param [Object] vat_registration_number Value to be assigned
99
+ def vat_registration_number=(vat_registration_number)
100
+ if !vat_registration_number.nil? && vat_registration_number.to_s.length > 21
101
+ fail ArgumentError, 'invalid value for "vat_registration_number", the character length must be smaller than or equal to 21.'
102
+ end
103
+
104
+ @vat_registration_number = vat_registration_number
105
+ end
106
+
107
+ # Checks equality by comparing each attribute.
108
+ # @param [Object] Object to be compared
109
+ def ==(o)
110
+ return true if self.equal?(o)
111
+ self.class == o.class &&
112
+ category_code == o.category_code &&
113
+ vat_registration_number == o.vat_registration_number &&
114
+ merchant_descriptor == o.merchant_descriptor
115
+ end
116
+
117
+ # @see the `==` method
118
+ # @param [Object] Object to be compared
119
+ def eql?(o)
120
+ self == o
121
+ end
122
+
123
+ # Calculates hash code according to all attributes.
124
+ # @return [Fixnum] Hash code
125
+ def hash
126
+ [category_code, vat_registration_number, merchant_descriptor].hash
127
+ end
128
+
129
+ # Builds the object from hash
130
+ # @param [Hash] attributes Model attributes in the form of hash
131
+ # @return [Object] Returns the model itself
132
+ def build_from_hash(attributes)
133
+ return nil unless attributes.is_a?(Hash)
134
+ self.class.swagger_types.each_pair do |key, type|
135
+ if type =~ /\AArray<(.*)>/i
136
+ # check to ensure the input is an array given that the the attribute
137
+ # is documented as an array but the input is not
138
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
139
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
140
+ end
141
+ elsif !attributes[self.class.attribute_map[key]].nil?
142
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
143
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
144
+ end
145
+
146
+ self
147
+ end
148
+
149
+ # Deserializes the data based on type
150
+ # @param string type Data type
151
+ # @param string value Value to be deserialized
152
+ # @return [Object] Deserialized data
153
+ def _deserialize(type, value)
154
+ case type.to_sym
155
+ when :DateTime
156
+ DateTime.parse(value)
157
+ when :Date
158
+ Date.parse(value)
159
+ when :String
160
+ value.to_s
161
+ when :Integer
162
+ value.to_i
163
+ when :Float
164
+ value.to_f
165
+ when :BOOLEAN
166
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
167
+ true
168
+ else
169
+ false
170
+ end
171
+ when :Object
172
+ # generic object (usually a Hash), return directly
173
+ value
174
+ when /\AArray<(?<inner_type>.+)>\z/
175
+ inner_type = Regexp.last_match[:inner_type]
176
+ value.map { |v| _deserialize(inner_type, v) }
177
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
178
+ k_type = Regexp.last_match[:k_type]
179
+ v_type = Regexp.last_match[:v_type]
180
+ {}.tap do |hash|
181
+ value.each do |k, v|
182
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
183
+ end
184
+ end
185
+ else # model
186
+ temp_model = CyberSource.const_get(type).new
187
+ temp_model.build_from_hash(value)
188
+ end
189
+ end
190
+
191
+ # Returns the string representation of the object
192
+ # @return [String] String presentation of the object
193
+ def to_s
194
+ to_hash.to_s
195
+ end
196
+
197
+ # to_body is an alias to to_hash (backward compatibility)
198
+ # @return [Hash] Returns the object in the form of hash
199
+ def to_body
200
+ to_hash
201
+ end
202
+
203
+ # Returns the object in the form of hash
204
+ # @return [Hash] Returns the object in the form of hash
205
+ def to_hash
206
+ hash = {}
207
+ self.class.attribute_map.each_pair do |attr, param|
208
+ value = self.send(attr)
209
+ next if value.nil?
210
+ hash[param] = _to_hash(value)
211
+ end
212
+ hash
213
+ end
214
+
215
+ # Outputs non-array value in the form of hash
216
+ # For object, use to_hash. Otherwise, just return the value
217
+ # @param [Object] value Any valid value
218
+ # @return [Hash] Returns the value in the form of hash
219
+ def _to_hash(value)
220
+ if value.is_a?(Array)
221
+ value.compact.map { |v| _to_hash(v) }
222
+ elsif value.is_a?(Hash)
223
+ {}.tap do |hash|
224
+ value.each { |k, v| hash[k] = _to_hash(v) }
225
+ end
226
+ elsif value.respond_to? :to_hash
227
+ value.to_hash
228
+ else
229
+ value
230
+ end
231
+ end
232
+ end
233
+ end