cybersource_rest_client 0.0.15 → 0.0.16

Sign up to get free protection for your applications and to get access to all the features.
Files changed (477) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/authentication/http/GetSignatureParameter.rb +63 -63
  3. data/lib/AuthenticationSDK/authentication/http/HttpSignatureHeader.rb +52 -52
  4. data/lib/AuthenticationSDK/authentication/jwt/JwtToken.rb +61 -61
  5. data/lib/AuthenticationSDK/authentication/payloadDigest/digest.rb +9 -9
  6. data/lib/AuthenticationSDK/core/Authorization.rb +24 -24
  7. data/lib/AuthenticationSDK/core/ITokenGeneration.rb +3 -3
  8. data/lib/AuthenticationSDK/core/Logger.rb +25 -25
  9. data/lib/AuthenticationSDK/core/MerchantConfig.rb +180 -180
  10. data/lib/AuthenticationSDK/resource/TRRReports.json +11 -11
  11. data/lib/AuthenticationSDK/resource/cybs.yml +30 -30
  12. data/lib/AuthenticationSDK/resource/request.json +53 -53
  13. data/lib/AuthenticationSDK/resource/request_capture.json +10 -10
  14. data/lib/AuthenticationSDK/spec/Authorization_spec.rb +273 -273
  15. data/lib/AuthenticationSDK/spec/MerchantConfigData.rb +58 -58
  16. data/lib/AuthenticationSDK/spec/MerchantConfig_spec.rb +115 -115
  17. data/lib/AuthenticationSDK/spec/PostRequestData.json +53 -53
  18. data/lib/AuthenticationSDK/spec/PutRequestData.json +11 -11
  19. data/lib/AuthenticationSDK/spec/ResponseCodeMessage_spec.rb +59 -59
  20. data/lib/AuthenticationSDK/spec/spec_helper.rb +12 -12
  21. data/lib/AuthenticationSDK/util/ApiException.rb +18 -18
  22. data/lib/AuthenticationSDK/util/Cache.rb +35 -35
  23. data/lib/AuthenticationSDK/util/Constants.rb +137 -137
  24. data/lib/AuthenticationSDK/util/PropertiesUtil.rb +18 -18
  25. data/lib/AuthenticationSDK/util/Utility.rb +31 -31
  26. data/lib/cybersource_rest_client.rb +8 -2
  27. data/lib/cybersource_rest_client/api/conversion_details_api.rb +1 -1
  28. data/lib/cybersource_rest_client/api/download_dtd_api.rb +88 -0
  29. data/lib/cybersource_rest_client/api/download_xsd_api.rb +88 -0
  30. data/lib/cybersource_rest_client/api/net_fundings_api.rb +1 -1
  31. data/lib/cybersource_rest_client/api/payment_batch_summaries_api.rb +129 -0
  32. data/lib/cybersource_rest_client/api/transaction_batches_api.rb +70 -0
  33. data/lib/cybersource_rest_client/api_client.rb +459 -459
  34. data/lib/cybersource_rest_client/api_error.rb +38 -38
  35. data/lib/cybersource_rest_client/configuration.rb +202 -202
  36. data/lib/cybersource_rest_client/models/auth_reversal_request.rb +219 -219
  37. data/lib/cybersource_rest_client/models/authorization_options.rb +183 -183
  38. data/lib/cybersource_rest_client/models/bill_to.rb +467 -467
  39. data/lib/cybersource_rest_client/models/buyer_information.rb +278 -278
  40. data/lib/cybersource_rest_client/models/capture_payment_request.rb +276 -276
  41. data/lib/cybersource_rest_client/models/card_info.rb +224 -224
  42. data/lib/cybersource_rest_client/models/create_credit_request.rb +267 -267
  43. data/lib/cybersource_rest_client/models/create_decision_manager_case_request.rb +266 -266
  44. data/lib/cybersource_rest_client/models/create_instrument_identifier_request.rb +211 -202
  45. data/lib/cybersource_rest_client/models/create_payment_instrument_request.rb +285 -285
  46. data/lib/cybersource_rest_client/models/create_payment_request.rb +303 -303
  47. data/lib/cybersource_rest_client/models/create_search_request.rb +244 -244
  48. data/lib/cybersource_rest_client/models/der_public_key.rb +205 -205
  49. data/lib/cybersource_rest_client/models/detail.rb +194 -194
  50. data/lib/cybersource_rest_client/models/embedded_instrument_identifier.rb +273 -273
  51. data/lib/cybersource_rest_client/models/error.rb +192 -202
  52. data/lib/cybersource_rest_client/models/error_bean.rb +247 -247
  53. data/lib/cybersource_rest_client/models/error_field_bean.rb +205 -205
  54. data/lib/cybersource_rest_client/models/error_links.rb +205 -205
  55. data/lib/cybersource_rest_client/models/error_response.rb +192 -174
  56. data/lib/cybersource_rest_client/models/error_response_with_hal.rb +174 -174
  57. data/lib/cybersource_rest_client/models/existing_instrument_identifier_id.rb +175 -175
  58. data/lib/cybersource_rest_client/models/file_bean.rb +202 -202
  59. data/lib/cybersource_rest_client/models/file_detail.rb +244 -244
  60. data/lib/cybersource_rest_client/models/file_details_response.rb +194 -194
  61. data/lib/cybersource_rest_client/models/flex_v1_keys_post200_response.rb +202 -202
  62. data/lib/cybersource_rest_client/models/flex_v1_keys_post200_response_der.rb +205 -205
  63. data/lib/cybersource_rest_client/models/flex_v1_keys_post200_response_jwk.rb +225 -225
  64. data/lib/cybersource_rest_client/models/flex_v1_tokens_post200_response.rb +255 -255
  65. data/lib/cybersource_rest_client/models/flexv1tokens_card_info.rb +224 -224
  66. data/lib/cybersource_rest_client/models/generate_public_key_request.rb +189 -189
  67. data/lib/cybersource_rest_client/models/initiator.rb +183 -183
  68. data/lib/cybersource_rest_client/models/inline_response_400.rb +202 -247
  69. data/lib/cybersource_rest_client/models/inline_response_400_1.rb +247 -202
  70. data/lib/cybersource_rest_client/models/{inline_response_400_fields.rb → inline_response_400_1_fields.rb} +205 -205
  71. data/lib/cybersource_rest_client/models/inline_response_default.rb +192 -192
  72. data/lib/cybersource_rest_client/models/inline_response_default__links.rb +205 -205
  73. data/lib/cybersource_rest_client/models/inline_response_default__links_next.rb +204 -204
  74. data/lib/cybersource_rest_client/models/inline_response_default_response_status.rb +225 -225
  75. data/lib/cybersource_rest_client/models/inline_response_default_response_status_details.rb +194 -194
  76. data/lib/cybersource_rest_client/models/instrument_identifier.rb +249 -249
  77. data/lib/cybersource_rest_client/models/instrument_identifier_bank_account.rb +242 -242
  78. data/lib/cybersource_rest_client/models/instrument_identifier_card.rb +208 -208
  79. data/lib/cybersource_rest_client/models/instrument_identifier_enrollable_card.rb +211 -202
  80. data/lib/cybersource_rest_client/models/instrument_identifier_processing_information.rb +183 -183
  81. data/lib/cybersource_rest_client/models/instrument_identifier_update.rb +183 -183
  82. data/lib/cybersource_rest_client/models/json_web_key.rb +225 -225
  83. data/lib/cybersource_rest_client/models/key_parameters.rb +189 -189
  84. data/lib/cybersource_rest_client/models/key_result.rb +202 -202
  85. data/lib/cybersource_rest_client/models/link.rb +204 -183
  86. data/lib/cybersource_rest_client/models/links.rb +205 -201
  87. data/lib/cybersource_rest_client/models/merchant_information.rb +183 -183
  88. data/lib/cybersource_rest_client/models/merchant_initiated_transaction.rb +199 -199
  89. data/lib/cybersource_rest_client/models/metadata.rb +184 -184
  90. data/lib/cybersource_rest_client/models/model_409_link.rb +183 -183
  91. data/lib/cybersource_rest_client/models/model_409_links.rb +183 -183
  92. data/lib/cybersource_rest_client/models/oct_create_payment_request.rb +237 -237
  93. data/lib/cybersource_rest_client/models/payment_instrument.rb +285 -285
  94. data/lib/cybersource_rest_client/models/payment_instrument_bank_account.rb +184 -184
  95. data/lib/cybersource_rest_client/models/payment_instrument_card.rb +369 -369
  96. data/lib/cybersource_rest_client/models/payment_instrument_for_instrument_identifier_links.rb +219 -219
  97. data/lib/cybersource_rest_client/models/payment_instruments_array.rb +175 -175
  98. data/lib/cybersource_rest_client/models/payment_instruments_for_instrument_identifier.rb +242 -242
  99. data/lib/cybersource_rest_client/models/personal_identification.rb +203 -203
  100. data/lib/cybersource_rest_client/models/personal_identification_array.rb +174 -174
  101. data/lib/cybersource_rest_client/models/pi_for_ii_link_first.rb +184 -184
  102. data/lib/cybersource_rest_client/models/pi_for_ii_link_last.rb +184 -184
  103. data/lib/cybersource_rest_client/models/pi_for_ii_link_next.rb +184 -184
  104. data/lib/cybersource_rest_client/models/pi_for_ii_link_prev.rb +184 -184
  105. data/lib/cybersource_rest_client/models/pi_for_ii_link_self.rb +184 -184
  106. data/lib/cybersource_rest_client/models/processing_information.rb +195 -195
  107. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response.rb +204 -204
  108. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response__links.rb +183 -183
  109. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response__links_self.rb +192 -192
  110. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response_transaction_batches.rb +277 -277
  111. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get400_response.rb +193 -193
  112. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get400_response_error_information.rb +203 -203
  113. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get400_response_error_information_details.rb +194 -194
  114. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get500_response.rb +193 -193
  115. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get500_response_error_information.rb +194 -194
  116. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_id_get200_response.rb +286 -286
  117. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_id_get200_response__links.rb +185 -185
  118. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_id_get200_response__links_transactions.rb +193 -193
  119. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response.rb +307 -307
  120. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_credit_amount_details.rb +224 -224
  121. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_payment_information.rb +183 -183
  122. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_processing_information.rb +183 -183
  123. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_processing_information_bank_transfer_options.rb +199 -199
  124. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response.rb +280 -280
  125. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response__links.rb +201 -201
  126. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information.rb +192 -192
  127. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information_amount_details.rb +224 -224
  128. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_processor_information.rb +199 -199
  129. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post400_response.rb +225 -225
  130. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response.rb +334 -334
  131. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response__links.rb +201 -201
  132. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response__links_self.rb +194 -194
  133. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_client_reference_information.rb +234 -234
  134. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_error_information.rb +205 -205
  135. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_error_information_details.rb +194 -194
  136. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_installment_information.rb +324 -324
  137. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_issuer_information.rb +249 -249
  138. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information.rb +192 -192
  139. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information_amount_details.rb +249 -249
  140. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information_invoice_details.rb +184 -184
  141. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information.rb +210 -210
  142. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb +599 -599
  143. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_bank.rb +208 -208
  144. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_bank_account.rb +199 -199
  145. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_card.rb +184 -184
  146. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +334 -334
  147. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_point_of_sale_information.rb +208 -208
  148. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_point_of_sale_information_emv.rb +249 -199
  149. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information.rb +183 -183
  150. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_bank_transfer_options.rb +224 -224
  151. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +701 -701
  152. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_ach_verification.rb +224 -224
  153. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_avs.rb +224 -224
  154. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_card_verification.rb +224 -224
  155. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_consumer_authentication_response.rb +224 -224
  156. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_customer.rb +199 -199
  157. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_electronic_verification_results.rb +474 -474
  158. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_merchant_advice.rb +224 -224
  159. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_routing.rb +249 -249
  160. data/lib/cybersource_rest_client/models/pts_v2_payments_post400_response.rb +225 -225
  161. data/lib/cybersource_rest_client/models/pts_v2_payments_post502_response.rb +214 -214
  162. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response.rb +289 -289
  163. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response__links.rb +192 -192
  164. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_order_information.rb +183 -183
  165. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_processor_information.rb +283 -283
  166. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_refund_amount_details.rb +224 -224
  167. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post400_response.rb +225 -225
  168. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response.rb +307 -307
  169. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response__links.rb +183 -183
  170. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_authorization_information.rb +249 -249
  171. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_issuer_information.rb +199 -199
  172. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_processor_information.rb +324 -324
  173. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_reversal_amount_details.rb +249 -249
  174. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post400_response.rb +225 -225
  175. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response.rb +246 -246
  176. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response_void_amount_details.rb +219 -219
  177. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post400_response.rb +225 -225
  178. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response.rb +307 -307
  179. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_error_information.rb +205 -205
  180. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_merchant_information.rb +183 -183
  181. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_merchant_information_merchant_descriptor.rb +234 -234
  182. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_order_information.rb +183 -183
  183. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_order_information_amount_details.rb +274 -274
  184. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_processor_information.rb +299 -299
  185. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_recipient_information.rb +183 -183
  186. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_recipient_information_card.rb +224 -224
  187. data/lib/cybersource_rest_client/models/pts_v2_payouts_post400_response.rb +225 -225
  188. data/lib/cybersource_rest_client/models/ptsv2credits_point_of_sale_information.rb +365 -365
  189. data/lib/cybersource_rest_client/models/ptsv2credits_point_of_sale_information_emv.rb +221 -221
  190. data/lib/cybersource_rest_client/models/ptsv2credits_processing_information.rb +417 -392
  191. data/lib/cybersource_rest_client/models/ptsv2credits_processing_information_bank_transfer_options.rb +349 -349
  192. data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information.rb +233 -233
  193. data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information_sub_merchant.rb +424 -424
  194. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information.rb +310 -310
  195. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +219 -219
  196. data/lib/cybersource_rest_client/models/ptsv2payments_client_reference_information.rb +228 -228
  197. data/lib/cybersource_rest_client/models/ptsv2payments_client_reference_information_partner.rb +249 -249
  198. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information.rb +374 -374
  199. data/lib/cybersource_rest_client/models/ptsv2payments_device_information.rb +249 -249
  200. data/lib/cybersource_rest_client/models/ptsv2payments_installment_information.rb +364 -364
  201. data/lib/cybersource_rest_client/models/ptsv2payments_issuer_information.rb +199 -199
  202. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_defined_information.rb +224 -224
  203. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information.rb +367 -367
  204. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information_merchant_descriptor.rb +359 -359
  205. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information_service_fee_descriptor.rb +249 -249
  206. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_initiated_transaction.rb +249 -224
  207. data/lib/cybersource_rest_client/models/ptsv2payments_order_information.rb +230 -230
  208. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +705 -680
  209. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_amex_additional_amounts.rb +224 -224
  210. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_surcharge.rb +209 -209
  211. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_tax_details.rb +319 -319
  212. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_bill_to.rb +634 -634
  213. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_invoice_details.rb +410 -410
  214. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_invoice_details_transaction_advice_addendum.rb +199 -199
  215. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_line_items.rb +774 -774
  216. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_ship_to.rb +474 -474
  217. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_shipping_details.rb +235 -235
  218. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information.rb +219 -219
  219. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_bank.rb +208 -208
  220. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_bank_account.rb +299 -299
  221. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +484 -484
  222. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_customer.rb +184 -184
  223. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_fluid_data.rb +259 -259
  224. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_card.rb +409 -409
  225. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information.rb +677 -677
  226. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information_emv.rb +256 -256
  227. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +457 -432
  228. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +359 -359
  229. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options_initiator.rb +213 -213
  230. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_bank_transfer_options.rb +424 -424
  231. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_capture_options.rb +267 -267
  232. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_recurring_options.rb +198 -198
  233. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +249 -249
  234. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_aggregator_information.rb +233 -233
  235. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_aggregator_information_sub_merchant.rb +374 -374
  236. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_buyer_information.rb +224 -224
  237. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_installment_information.rb +354 -354
  238. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_merchant_information.rb +292 -292
  239. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information.rb +230 -230
  240. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_amount_details.rb +621 -596
  241. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_bill_to.rb +449 -449
  242. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_invoice_details.rb +320 -320
  243. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_ship_to.rb +249 -249
  244. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_shipping_details.rb +199 -199
  245. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_payment_information.rb +183 -183
  246. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_point_of_sale_information.rb +208 -208
  247. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_point_of_sale_information_emv.rb +211 -211
  248. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information.rb +376 -351
  249. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_authorization_options.rb +249 -249
  250. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_capture_options.rb +242 -242
  251. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_merchant_information.rb +283 -283
  252. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_order_information.rb +230 -230
  253. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_order_information_line_items.rb +639 -639
  254. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information.rb +201 -201
  255. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_card.rb +359 -359
  256. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_point_of_sale_information.rb +183 -183
  257. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information.rb +333 -333
  258. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information_recurring_options.rb +186 -186
  259. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_client_reference_information.rb +218 -218
  260. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_client_reference_information_partner.rb +224 -224
  261. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_order_information.rb +194 -194
  262. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_order_information_amount_details.rb +199 -199
  263. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_order_information_line_items.rb +233 -233
  264. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_point_of_sale_information.rb +183 -183
  265. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_point_of_sale_information_emv.rb +199 -0
  266. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_processing_information.rb +308 -308
  267. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information.rb +193 -193
  268. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information_amount_details.rb +224 -224
  269. data/lib/cybersource_rest_client/models/ptsv2payouts_client_reference_information.rb +199 -199
  270. data/lib/cybersource_rest_client/models/ptsv2payouts_merchant_information.rb +243 -243
  271. data/lib/cybersource_rest_client/models/ptsv2payouts_merchant_information_merchant_descriptor.rb +309 -309
  272. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information.rb +192 -192
  273. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details.rb +233 -233
  274. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details_surcharge.rb +199 -199
  275. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_bill_to.rb +409 -409
  276. data/lib/cybersource_rest_client/models/ptsv2payouts_payment_information.rb +192 -192
  277. data/lib/cybersource_rest_client/models/ptsv2payouts_payment_information_card.rb +284 -284
  278. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +283 -283
  279. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information_payouts_options.rb +274 -274
  280. data/lib/cybersource_rest_client/models/ptsv2payouts_recipient_information.rb +433 -433
  281. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information.rb +517 -517
  282. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information_account.rb +233 -233
  283. data/lib/cybersource_rest_client/models/refund_capture_request.rb +267 -267
  284. data/lib/cybersource_rest_client/models/refund_payment_request.rb +267 -267
  285. data/lib/cybersource_rest_client/models/reporting_v3_conversion_details_get200_response.rb +213 -213
  286. data/lib/cybersource_rest_client/models/reporting_v3_conversion_details_get200_response_conversion_details.rb +275 -275
  287. data/lib/cybersource_rest_client/models/reporting_v3_conversion_details_get200_response_notes.rb +204 -204
  288. data/lib/cybersource_rest_client/models/reporting_v3_net_fundings_get200_response.rb +266 -266
  289. data/lib/cybersource_rest_client/models/reporting_v3_net_fundings_get200_response_net_funding_summaries.rb +248 -248
  290. data/lib/cybersource_rest_client/models/reporting_v3_net_fundings_get200_response_total_purchases.rb +203 -203
  291. data/lib/cybersource_rest_client/models/reporting_v3_notificationof_changes_get200_response.rb +186 -186
  292. data/lib/cybersource_rest_client/models/reporting_v3_notificationof_changes_get200_response_notification_of_changes.rb +255 -255
  293. data/lib/cybersource_rest_client/models/reporting_v3_payment_batch_summaries_get200_response.rb +203 -0
  294. data/lib/cybersource_rest_client/models/reporting_v3_payment_batch_summaries_get200_response_payment_batch_summaries.rb +282 -0
  295. data/lib/cybersource_rest_client/models/reporting_v3_purchase_refund_details_get200_response.rb +273 -273
  296. data/lib/cybersource_rest_client/models/reporting_v3_purchase_refund_details_get200_response_authorizations.rb +255 -255
  297. data/lib/cybersource_rest_client/models/reporting_v3_purchase_refund_details_get200_response_fee_and_funding_details.rb +320 -290
  298. data/lib/cybersource_rest_client/models/reporting_v3_purchase_refund_details_get200_response_others.rb +260 -260
  299. data/lib/cybersource_rest_client/models/reporting_v3_purchase_refund_details_get200_response_request_details.rb +235 -235
  300. data/lib/cybersource_rest_client/models/reporting_v3_purchase_refund_details_get200_response_settlement_statuses.rb +240 -240
  301. data/lib/cybersource_rest_client/models/reporting_v3_purchase_refund_details_get200_response_settlements.rb +304 -304
  302. data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_get200_response.rb +185 -185
  303. data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_get200_response_report_definitions.rb +222 -222
  304. data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_name_get200_response.rb +232 -232
  305. data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_name_get200_response_attributes.rb +239 -239
  306. data/lib/cybersource_rest_client/models/reporting_v3_report_subscriptions_get200_response.rb +185 -185
  307. data/lib/cybersource_rest_client/models/reporting_v3_report_subscriptions_get200_response_subscriptions.rb +308 -308
  308. data/lib/cybersource_rest_client/models/reporting_v3_reports_get200_response.rb +185 -185
  309. data/lib/cybersource_rest_client/models/reporting_v3_reports_get200_response_report_search_results.rb +325 -325
  310. data/lib/cybersource_rest_client/models/reporting_v3_reports_id_get200_response.rb +318 -318
  311. data/lib/cybersource_rest_client/models/reportingv3_report_downloads_get400_response.rb +237 -237
  312. data/lib/cybersource_rest_client/models/reportingv3_report_downloads_get400_response_details.rb +195 -195
  313. data/lib/cybersource_rest_client/models/reportingv3reports_report_preferences.rb +195 -195
  314. data/lib/cybersource_rest_client/models/request_body.rb +382 -382
  315. data/lib/cybersource_rest_client/models/request_body_1.rb +457 -457
  316. data/lib/cybersource_rest_client/models/response_status.rb +225 -225
  317. data/lib/cybersource_rest_client/models/response_status_details.rb +194 -194
  318. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response.rb +265 -265
  319. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_payment_information.rb +300 -300
  320. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information.rb +284 -284
  321. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_info_codes.rb +270 -270
  322. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_ip_address.rb +300 -300
  323. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_profile.rb +249 -249
  324. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_providers.rb +185 -185
  325. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_providers_provider_name.rb +197 -197
  326. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_rules.rb +224 -224
  327. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_score.rb +235 -235
  328. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_travel.rb +210 -210
  329. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_travel_actual_final_destination.rb +274 -274
  330. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_travel_first_departure.rb +274 -274
  331. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_travel_first_destination.rb +274 -274
  332. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_travel_last_destination.rb +274 -274
  333. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_velocity.rb +197 -197
  334. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_velocity_morphing.rb +234 -234
  335. data/lib/cybersource_rest_client/models/risk_v1_decisions_post400_response.rb +225 -225
  336. data/lib/cybersource_rest_client/models/riskv1decisions_buyer_information.rb +261 -261
  337. data/lib/cybersource_rest_client/models/riskv1decisions_card_verification.rb +199 -199
  338. data/lib/cybersource_rest_client/models/riskv1decisions_client_reference_information.rb +224 -224
  339. data/lib/cybersource_rest_client/models/riskv1decisions_device_information.rb +279 -279
  340. data/lib/cybersource_rest_client/models/riskv1decisions_merchant_defined_information.rb +225 -225
  341. data/lib/cybersource_rest_client/models/riskv1decisions_order_information.rb +233 -233
  342. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_amount_details.rb +234 -234
  343. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_bill_to.rb +424 -424
  344. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_line_items.rb +377 -377
  345. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_passenger.rb +375 -375
  346. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_ship_to.rb +400 -400
  347. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_shipping_details.rb +210 -210
  348. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information.rb +193 -193
  349. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_card.rb +285 -285
  350. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_tokenized_card.rb +260 -260
  351. data/lib/cybersource_rest_client/models/riskv1decisions_processor_information.rb +184 -184
  352. data/lib/cybersource_rest_client/models/riskv1decisions_processor_information_avs.rb +200 -200
  353. data/lib/cybersource_rest_client/models/riskv1decisions_risk_information.rb +208 -208
  354. data/lib/cybersource_rest_client/models/riskv1decisions_risk_information_profile.rb +200 -200
  355. data/lib/cybersource_rest_client/models/riskv1decisions_travel_information.rb +285 -285
  356. data/lib/cybersource_rest_client/models/riskv1decisions_travel_information_legs.rb +249 -249
  357. data/lib/cybersource_rest_client/models/self_link_bean.rb +192 -192
  358. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_delete409_response.rb +183 -183
  359. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_delete409_response__links.rb +183 -183
  360. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_delete409_response__links_payment_instruments.rb +183 -183
  361. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response.rb +242 -242
  362. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__embedded.rb +186 -186
  363. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__embedded_bank_account.rb +184 -184
  364. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__embedded_bill_to.rb +467 -467
  365. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__embedded_buyer_information.rb +278 -278
  366. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__embedded_card.rb +369 -369
  367. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__links.rb +219 -219
  368. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__links_first.rb +184 -184
  369. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__links_last.rb +184 -184
  370. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__links_next.rb +184 -184
  371. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__links_prev.rb +184 -184
  372. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response__links_self.rb +184 -184
  373. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response_bank_transfer_options.rb +184 -184
  374. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response_buyer_information_issued_by.rb +184 -184
  375. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response_instrument_identifier.rb +273 -273
  376. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response_merchant_descriptor.rb +184 -184
  377. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response_merchant_information.rb +183 -183
  378. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response_payment_instruments.rb +285 -285
  379. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response_personal_identification.rb +203 -203
  380. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_get200_response_processing_information.rb +195 -195
  381. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response.rb +249 -249
  382. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response__links.rb +201 -201
  383. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response__links_self.rb +183 -183
  384. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response_authorization_options_initiator.rb +183 -183
  385. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response_card.rb +208 -208
  386. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response_merchant_initiated_transaction.rb +199 -199
  387. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response_metadata.rb +184 -184
  388. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response_processing_information.rb +183 -183
  389. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response_processing_information_authorization_options.rb +183 -183
  390. data/lib/cybersource_rest_client/models/{tms_v1_instrument_identifiers_post200_response_bank_account.rb → tmsv1instrumentidentifiers_bank_account.rb} +242 -242
  391. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_bill_to.rb +234 -234
  392. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_card.rb +310 -310
  393. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_details.rb +194 -194
  394. data/lib/cybersource_rest_client/models/tokenize_parameters.rb +198 -198
  395. data/lib/cybersource_rest_client/models/tokenize_request.rb +198 -198
  396. data/lib/cybersource_rest_client/models/tokenize_result.rb +255 -255
  397. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response.rb +444 -444
  398. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response__links.rb +194 -194
  399. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_application_information.rb +225 -225
  400. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_application_information_applications.rb +254 -254
  401. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_buyer_information.rb +224 -224
  402. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_client_reference_information.rb +254 -254
  403. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_consumer_authentication_information.rb +259 -259
  404. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_device_information.rb +234 -234
  405. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_error_information.rb +205 -205
  406. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_fraud_marking_information.rb +184 -184
  407. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_installment_information.rb +184 -184
  408. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_merchant_information.rb +183 -183
  409. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_merchant_information_merchant_descriptor.rb +184 -184
  410. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information.rb +222 -222
  411. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_amount_details.rb +324 -324
  412. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_bill_to.rb +524 -524
  413. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_line_items.rb +343 -343
  414. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_ship_to.rb +424 -424
  415. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_shipping_details.rb +209 -209
  416. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information.rb +228 -228
  417. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_account_features.rb +249 -249
  418. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank.rb +242 -242
  419. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank_account.rb +289 -289
  420. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank_mandate.rb +204 -204
  421. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_card.rb +394 -394
  422. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_invoice.rb +204 -204
  423. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_payment_type.rb +223 -223
  424. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_payment_type_funding_source.rb +224 -224
  425. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_point_of_sale_information.rb +233 -233
  426. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +252 -252
  427. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +199 -199
  428. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_bank_transfer_options.rb +184 -184
  429. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +359 -359
  430. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_electronic_verification_results.rb +424 -424
  431. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_processor.rb +199 -199
  432. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information.rb +233 -233
  433. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information_profile.rb +194 -194
  434. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information_rules.rb +225 -225
  435. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information_score.rb +196 -196
  436. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_sender_information.rb +199 -199
  437. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response.rb +327 -327
  438. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded.rb +186 -186
  439. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded__links.rb +183 -183
  440. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_buyer_information.rb +199 -199
  441. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_client_reference_information.rb +219 -219
  442. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_consumer_authentication_information.rb +209 -209
  443. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_device_information.rb +199 -199
  444. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_merchant_information.rb +199 -199
  445. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information.rb +201 -201
  446. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information_bill_to.rb +299 -299
  447. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information_ship_to.rb +299 -299
  448. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information.rb +201 -201
  449. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_card.rb +219 -219
  450. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_payment_type.rb +194 -194
  451. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_point_of_sale_information.rb +243 -243
  452. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_point_of_sale_information_partner.rb +199 -199
  453. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +209 -209
  454. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +183 -183
  455. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information.rb +183 -183
  456. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information_providers.rb +183 -183
  457. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information_providers_fingerprint.rb +249 -249
  458. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +357 -357
  459. data/lib/cybersource_rest_client/models/tss_v2_transactions_post400_response.rb +215 -215
  460. data/lib/cybersource_rest_client/models/ums_v1_users_get200_response.rb +185 -185
  461. data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_account_information.rb +249 -249
  462. data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_contact_information.rb +210 -210
  463. data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_organization_information.rb +183 -183
  464. data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_users.rb +201 -201
  465. data/lib/cybersource_rest_client/models/update_instrument_identifier_request.rb +183 -183
  466. data/lib/cybersource_rest_client/models/update_payment_instrument_request.rb +285 -285
  467. data/lib/cybersource_rest_client/models/v1_file_details_get200_response.rb +194 -194
  468. data/lib/cybersource_rest_client/models/v1_file_details_get200_response__links.rb +194 -194
  469. data/lib/cybersource_rest_client/models/v1_file_details_get200_response__links_files.rb +202 -202
  470. data/lib/cybersource_rest_client/models/v1_file_details_get200_response__links_self.rb +192 -192
  471. data/lib/cybersource_rest_client/models/v1_file_details_get200_response_file_details.rb +244 -244
  472. data/lib/cybersource_rest_client/models/void_capture_request.rb +183 -183
  473. data/lib/cybersource_rest_client/models/void_credit_request.rb +183 -183
  474. data/lib/cybersource_rest_client/models/void_payment_request.rb +183 -183
  475. data/lib/cybersource_rest_client/models/void_refund_request.rb +183 -183
  476. data/lib/cybersource_rest_client/version.rb +15 -15
  477. metadata +29 -24
@@ -1,199 +1,199 @@
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 Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum
17
- # Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information about a transaction on the customer’s American Express card statement. When you send TAA fields, start with amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be ignored. To use these fields, contact CyberSource Customer Support to have your account enabled for this feature.
18
- attr_accessor :data
19
-
20
- # Attribute mapping from ruby-style variable name to JSON key.
21
- def self.attribute_map
22
- {
23
- :'data' => :'data'
24
- }
25
- end
26
-
27
- # Attribute type mapping.
28
- def self.swagger_types
29
- {
30
- :'data' => :'String'
31
- }
32
- end
33
-
34
- # Initializes the object
35
- # @param [Hash] attributes Model attributes in the form of hash
36
- def initialize(attributes = {})
37
- return unless attributes.is_a?(Hash)
38
-
39
- # convert string to symbol for hash key
40
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
41
-
42
- if attributes.has_key?(:'data')
43
- self.data = attributes[:'data']
44
- end
45
- end
46
-
47
- # Show invalid properties with the reasons. Usually used together with valid?
48
- # @return Array for valid properties with the reasons
49
- def list_invalid_properties
50
- invalid_properties = Array.new
51
- if !@data.nil? && @data.to_s.length > 40
52
- invalid_properties.push('invalid value for "data", the character length must be smaller than or equal to 40.')
53
- end
54
-
55
- invalid_properties
56
- end
57
-
58
- # Check to see if the all the properties in the model are valid
59
- # @return true if the model is valid
60
- def valid?
61
- return false if !@data.nil? && @data.to_s.length > 40
62
- true
63
- end
64
-
65
- # Custom attribute writer method with validation
66
- # @param [Object] data Value to be assigned
67
- def data=(data)
68
- if !data.nil? && data.to_s.length > 40
69
- fail ArgumentError, 'invalid value for "data", the character length must be smaller than or equal to 40.'
70
- end
71
-
72
- @data = data
73
- end
74
-
75
- # Checks equality by comparing each attribute.
76
- # @param [Object] Object to be compared
77
- def ==(o)
78
- return true if self.equal?(o)
79
- self.class == o.class &&
80
- data == o.data
81
- end
82
-
83
- # @see the `==` method
84
- # @param [Object] Object to be compared
85
- def eql?(o)
86
- self == o
87
- end
88
-
89
- # Calculates hash code according to all attributes.
90
- # @return [Fixnum] Hash code
91
- def hash
92
- [data].hash
93
- end
94
-
95
- # Builds the object from hash
96
- # @param [Hash] attributes Model attributes in the form of hash
97
- # @return [Object] Returns the model itself
98
- def build_from_hash(attributes)
99
- return nil unless attributes.is_a?(Hash)
100
- self.class.swagger_types.each_pair do |key, type|
101
- if type =~ /\AArray<(.*)>/i
102
- # check to ensure the input is an array given that the the attribute
103
- # is documented as an array but the input is not
104
- if attributes[self.class.attribute_map[key]].is_a?(Array)
105
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
106
- end
107
- elsif !attributes[self.class.attribute_map[key]].nil?
108
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
109
- end # or else data not found in attributes(hash), not an issue as the data can be optional
110
- end
111
-
112
- self
113
- end
114
-
115
- # Deserializes the data based on type
116
- # @param string type Data type
117
- # @param string value Value to be deserialized
118
- # @return [Object] Deserialized data
119
- def _deserialize(type, value)
120
- case type.to_sym
121
- when :DateTime
122
- DateTime.parse(value)
123
- when :Date
124
- Date.parse(value)
125
- when :String
126
- value.to_s
127
- when :Integer
128
- value.to_i
129
- when :Float
130
- value.to_f
131
- when :BOOLEAN
132
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
133
- true
134
- else
135
- false
136
- end
137
- when :Object
138
- # generic object (usually a Hash), return directly
139
- value
140
- when /\AArray<(?<inner_type>.+)>\z/
141
- inner_type = Regexp.last_match[:inner_type]
142
- value.map { |v| _deserialize(inner_type, v) }
143
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
144
- k_type = Regexp.last_match[:k_type]
145
- v_type = Regexp.last_match[:v_type]
146
- {}.tap do |hash|
147
- value.each do |k, v|
148
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
149
- end
150
- end
151
- else # model
152
- temp_model = CyberSource.const_get(type).new
153
- temp_model.build_from_hash(value)
154
- end
155
- end
156
-
157
- # Returns the string representation of the object
158
- # @return [String] String presentation of the object
159
- def to_s
160
- to_hash.to_s
161
- end
162
-
163
- # to_body is an alias to to_hash (backward compatibility)
164
- # @return [Hash] Returns the object in the form of hash
165
- def to_body
166
- to_hash
167
- end
168
-
169
- # Returns the object in the form of hash
170
- # @return [Hash] Returns the object in the form of hash
171
- def to_hash
172
- hash = {}
173
- self.class.attribute_map.each_pair do |attr, param|
174
- value = self.send(attr)
175
- next if value.nil?
176
- hash[param] = _to_hash(value)
177
- end
178
- hash
179
- end
180
-
181
- # Outputs non-array value in the form of hash
182
- # For object, use to_hash. Otherwise, just return the value
183
- # @param [Object] value Any valid value
184
- # @return [Hash] Returns the value in the form of hash
185
- def _to_hash(value)
186
- if value.is_a?(Array)
187
- value.compact.map { |v| _to_hash(v) }
188
- elsif value.is_a?(Hash)
189
- {}.tap do |hash|
190
- value.each { |k, v| hash[k] = _to_hash(v) }
191
- end
192
- elsif value.respond_to? :to_hash
193
- value.to_hash
194
- else
195
- value
196
- end
197
- end
198
- end
199
- end
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CyberSource
16
+ class Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum
17
+ # Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information about a transaction on the customer’s American Express card statement. When you send TAA fields, start with amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be ignored. To use these fields, contact CyberSource Customer Support to have your account enabled for this feature.
18
+ attr_accessor :data
19
+
20
+ # Attribute mapping from ruby-style variable name to JSON key.
21
+ def self.attribute_map
22
+ {
23
+ :'data' => :'data'
24
+ }
25
+ end
26
+
27
+ # Attribute type mapping.
28
+ def self.swagger_types
29
+ {
30
+ :'data' => :'String'
31
+ }
32
+ end
33
+
34
+ # Initializes the object
35
+ # @param [Hash] attributes Model attributes in the form of hash
36
+ def initialize(attributes = {})
37
+ return unless attributes.is_a?(Hash)
38
+
39
+ # convert string to symbol for hash key
40
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
41
+
42
+ if attributes.has_key?(:'data')
43
+ self.data = attributes[:'data']
44
+ end
45
+ end
46
+
47
+ # Show invalid properties with the reasons. Usually used together with valid?
48
+ # @return Array for valid properties with the reasons
49
+ def list_invalid_properties
50
+ invalid_properties = Array.new
51
+ if !@data.nil? && @data.to_s.length > 40
52
+ invalid_properties.push('invalid value for "data", the character length must be smaller than or equal to 40.')
53
+ end
54
+
55
+ invalid_properties
56
+ end
57
+
58
+ # Check to see if the all the properties in the model are valid
59
+ # @return true if the model is valid
60
+ def valid?
61
+ return false if !@data.nil? && @data.to_s.length > 40
62
+ true
63
+ end
64
+
65
+ # Custom attribute writer method with validation
66
+ # @param [Object] data Value to be assigned
67
+ def data=(data)
68
+ if !data.nil? && data.to_s.length > 40
69
+ fail ArgumentError, 'invalid value for "data", the character length must be smaller than or equal to 40.'
70
+ end
71
+
72
+ @data = data
73
+ end
74
+
75
+ # Checks equality by comparing each attribute.
76
+ # @param [Object] Object to be compared
77
+ def ==(o)
78
+ return true if self.equal?(o)
79
+ self.class == o.class &&
80
+ data == o.data
81
+ end
82
+
83
+ # @see the `==` method
84
+ # @param [Object] Object to be compared
85
+ def eql?(o)
86
+ self == o
87
+ end
88
+
89
+ # Calculates hash code according to all attributes.
90
+ # @return [Fixnum] Hash code
91
+ def hash
92
+ [data].hash
93
+ end
94
+
95
+ # Builds the object from hash
96
+ # @param [Hash] attributes Model attributes in the form of hash
97
+ # @return [Object] Returns the model itself
98
+ def build_from_hash(attributes)
99
+ return nil unless attributes.is_a?(Hash)
100
+ self.class.swagger_types.each_pair do |key, type|
101
+ if type =~ /\AArray<(.*)>/i
102
+ # check to ensure the input is an array given that the the attribute
103
+ # is documented as an array but the input is not
104
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
105
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
106
+ end
107
+ elsif !attributes[self.class.attribute_map[key]].nil?
108
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
109
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
110
+ end
111
+
112
+ self
113
+ end
114
+
115
+ # Deserializes the data based on type
116
+ # @param string type Data type
117
+ # @param string value Value to be deserialized
118
+ # @return [Object] Deserialized data
119
+ def _deserialize(type, value)
120
+ case type.to_sym
121
+ when :DateTime
122
+ DateTime.parse(value)
123
+ when :Date
124
+ Date.parse(value)
125
+ when :String
126
+ value.to_s
127
+ when :Integer
128
+ value.to_i
129
+ when :Float
130
+ value.to_f
131
+ when :BOOLEAN
132
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
133
+ true
134
+ else
135
+ false
136
+ end
137
+ when :Object
138
+ # generic object (usually a Hash), return directly
139
+ value
140
+ when /\AArray<(?<inner_type>.+)>\z/
141
+ inner_type = Regexp.last_match[:inner_type]
142
+ value.map { |v| _deserialize(inner_type, v) }
143
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
144
+ k_type = Regexp.last_match[:k_type]
145
+ v_type = Regexp.last_match[:v_type]
146
+ {}.tap do |hash|
147
+ value.each do |k, v|
148
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
149
+ end
150
+ end
151
+ else # model
152
+ temp_model = CyberSource.const_get(type).new
153
+ temp_model.build_from_hash(value)
154
+ end
155
+ end
156
+
157
+ # Returns the string representation of the object
158
+ # @return [String] String presentation of the object
159
+ def to_s
160
+ to_hash.to_s
161
+ end
162
+
163
+ # to_body is an alias to to_hash (backward compatibility)
164
+ # @return [Hash] Returns the object in the form of hash
165
+ def to_body
166
+ to_hash
167
+ end
168
+
169
+ # Returns the object in the form of hash
170
+ # @return [Hash] Returns the object in the form of hash
171
+ def to_hash
172
+ hash = {}
173
+ self.class.attribute_map.each_pair do |attr, param|
174
+ value = self.send(attr)
175
+ next if value.nil?
176
+ hash[param] = _to_hash(value)
177
+ end
178
+ hash
179
+ end
180
+
181
+ # Outputs non-array value in the form of hash
182
+ # For object, use to_hash. Otherwise, just return the value
183
+ # @param [Object] value Any valid value
184
+ # @return [Hash] Returns the value in the form of hash
185
+ def _to_hash(value)
186
+ if value.is_a?(Array)
187
+ value.compact.map { |v| _to_hash(v) }
188
+ elsif value.is_a?(Hash)
189
+ {}.tap do |hash|
190
+ value.each { |k, v| hash[k] = _to_hash(v) }
191
+ end
192
+ elsif value.respond_to? :to_hash
193
+ value.to_hash
194
+ else
195
+ value
196
+ end
197
+ end
198
+ end
199
+ end
@@ -1,774 +1,774 @@
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 Ptsv2paymentsOrderInformationLineItems
17
- # Type of product. This value is used to determine the category that the product is in: electronic, handling, physical, service, or shipping. The default value is **default**. If you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to shipping and handling, then the fields `quantity`, `productName`, and `productSku` are required. It can also have a value of \"gift_card\". For details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
18
- attr_accessor :product_code
19
-
20
- # For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of the other values that are related to shipping and/or handling.
21
- attr_accessor :product_name
22
-
23
- # Stock Keeping Unit (SKU) code for the product. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.
24
- attr_accessor :product_sku
25
-
26
- # Number of units for this order. The default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling. When orderInformation.lineItems[].productCode is \"gift_card\", this is the total count of individual prepaid gift cards purchased.
27
- attr_accessor :quantity
28
-
29
- # Per-item price of the product. This value cannot be negative. You can include a decimal point (.), but you cannot include any other special characters. CyberSource truncates the amount to the correct number of decimal places. For processor-specific information, see the `amount` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html) **Important** Some processors have specific requirements and limitations, such as maximum amounts and maximum field lengths. See these guides for details: - [Merchant Descriptors Using the SCMP API Guide] (https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) - \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) #### DCC with a Third-Party Provider Set this field to the converted amount that was returned by the DCC provider. You must include either the 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request. For details, see \"Dynamic Currency Conversion with a Third Party Provider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) #### FDMS South If you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.] (https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) #### Zero Amount Authorizations If your processor supports zero amount authorizations, you can set this field to 0 for the authorization to check if the card is lost or stolen. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
30
- attr_accessor :unit_price
31
-
32
- # Unit of measure, or unit of measure code, for the item.
33
- attr_accessor :unit_of_measure
34
-
35
- # Total amount for the item. Normally calculated as the unit price times quantity. When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total for prepaid gift cards in major units. Example: 123.45 USD = 123
36
- attr_accessor :total_amount
37
-
38
- # Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must be in the same currency. The tax amount field is additive. The following example uses a two-exponent currency such as USD: 1. You include each line item in your request. ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80 ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included. If you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API. This field is frequently used for Level II and Level III transactions. For details, see `tax_amount` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
39
- attr_accessor :tax_amount
40
-
41
- # Tax rate applied to the item. For details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) **Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional decimal places will be truncated). **Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).
42
- attr_accessor :tax_rate
43
-
44
- # Flag to indicate how you handle discount at the line item level. - 0: no line level discount provided - 1: tax was calculated on the post-discount line item total - 2: tax was calculated on the pre-discount line item total `Note` Visa will inset 0 (zero) if an invalid value is included in this field. This field relates to the value in the _lineItems[].discountAmount_ field.
45
- attr_accessor :tax_applied_after_discount
46
-
47
- # Flag to indicate whether tax is exempted or not included. - 0: tax not included - 1: tax included - 2: transaction is not subject to tax
48
- attr_accessor :tax_status_indicator
49
-
50
- # Type of tax being applied to the item. For possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm): #### FDC Nashville Global - `alternate_tax_type_applied` - `alternate_tax_type_identifier` #### Worldpay VAP - `alternate_tax_type_identifier` #### RBS WorldPay Atlanta - `tax_type_applied` #### TSYS Acquiring Solutions - `tax_type_applied` - `local_tax_indicator` #### Chase Paymentech Solutions - `tax_type_applied` #### Elavon Americas - `local_tax_indicator` #### FDC Compass - `tax_type_applied` #### OmniPay Direct - `local_tax_indicator`
51
- attr_accessor :tax_type_code
52
-
53
- # Flag that indicates whether the tax amount is included in the Line Item Total. Possible values: - **true** - **false**
54
- attr_accessor :amount_includes_tax
55
-
56
- # Flag to indicate whether the purchase is categorized as goods or services. Possible values: - 00: goods - 01: services
57
- attr_accessor :type_of_supply
58
-
59
- # Commodity code or International description code used to classify the item. Contact your acquirer for a list of codes.
60
- attr_accessor :commodity_code
61
-
62
- # Discount applied to the item.
63
- attr_accessor :discount_amount
64
-
65
- # Flag that indicates whether the amount is discounted. If you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets this field to **true**. Possible values: - **true** - **false**
66
- attr_accessor :discount_applied
67
-
68
- # Rate the item is discounted. Maximum of 2 decimal places. Example 5.25 (=5.25%)
69
- attr_accessor :discount_rate
70
-
71
- # Field to support an invoice number for a transaction. You must specify the number of line items that will include an invoice number. By default, the first line item will include an invoice number field. The invoice number field can be included for up to 10 line items.
72
- attr_accessor :invoice_number
73
-
74
- attr_accessor :tax_details
75
-
76
- # Information about the product code used for the line item. Possible values: - `E`: The product code is `electronic_software`. - `P`: The product code is not `electronic_software`. For details, see the `fulfillmentType` field description in [Business Center Reporting User Guide.] (https://apps.cybersource.com/library/documentation/dev_guides/reporting_and_reconciliation/Reporting_User/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
77
- attr_accessor :fulfillment_type
78
-
79
- # Weight of the item. See Numbered Elements.
80
- attr_accessor :weight
81
-
82
- # Type of weight. See Numbered Elements. Possible values: - B: Billed weight - N: Actual net weight
83
- attr_accessor :weight_identifier
84
-
85
- # Code that specifies the unit of measurement for the weight amount. For example, OZ specifies ounce and LB specifies pound. The possible values are defined by the ANSI Accredited Standards Committee (ASC). See Numbered Elements.
86
- attr_accessor :weight_unit
87
-
88
- # Code that identifies the value of the corresponding item_#_referenceData_#_number field. See Numbered Elements. Possible values: - AN: Client-defined asset code - MG: Manufacturer's part number - PO: Purchase order number - SK: Supplier stock keeping unit number - UP: Universal product code - VC: Supplier catalog number - VP: Vendor part number This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor.
89
- attr_accessor :reference_data_code
90
-
91
- # Reference number. The meaning of this value is identified by the value of the corresponding `referenceDataCode` field. See Numbered Elements. The maximum length for this field depends on the value of the corresponding `referenceDataCode` field: - When the code is `PO`, the maximum length for the reference number is 22. - When the code is `VC`, the maximum length for the reference number is 20. - For all other codes, the maximum length for the reference number is 30. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor.
92
- attr_accessor :reference_data_number
93
-
94
- # Attribute mapping from ruby-style variable name to JSON key.
95
- def self.attribute_map
96
- {
97
- :'product_code' => :'productCode',
98
- :'product_name' => :'productName',
99
- :'product_sku' => :'productSku',
100
- :'quantity' => :'quantity',
101
- :'unit_price' => :'unitPrice',
102
- :'unit_of_measure' => :'unitOfMeasure',
103
- :'total_amount' => :'totalAmount',
104
- :'tax_amount' => :'taxAmount',
105
- :'tax_rate' => :'taxRate',
106
- :'tax_applied_after_discount' => :'taxAppliedAfterDiscount',
107
- :'tax_status_indicator' => :'taxStatusIndicator',
108
- :'tax_type_code' => :'taxTypeCode',
109
- :'amount_includes_tax' => :'amountIncludesTax',
110
- :'type_of_supply' => :'typeOfSupply',
111
- :'commodity_code' => :'commodityCode',
112
- :'discount_amount' => :'discountAmount',
113
- :'discount_applied' => :'discountApplied',
114
- :'discount_rate' => :'discountRate',
115
- :'invoice_number' => :'invoiceNumber',
116
- :'tax_details' => :'taxDetails',
117
- :'fulfillment_type' => :'fulfillmentType',
118
- :'weight' => :'weight',
119
- :'weight_identifier' => :'weightIdentifier',
120
- :'weight_unit' => :'weightUnit',
121
- :'reference_data_code' => :'referenceDataCode',
122
- :'reference_data_number' => :'referenceDataNumber'
123
- }
124
- end
125
-
126
- # Attribute type mapping.
127
- def self.swagger_types
128
- {
129
- :'product_code' => :'String',
130
- :'product_name' => :'String',
131
- :'product_sku' => :'String',
132
- :'quantity' => :'Float',
133
- :'unit_price' => :'String',
134
- :'unit_of_measure' => :'String',
135
- :'total_amount' => :'String',
136
- :'tax_amount' => :'String',
137
- :'tax_rate' => :'String',
138
- :'tax_applied_after_discount' => :'String',
139
- :'tax_status_indicator' => :'String',
140
- :'tax_type_code' => :'String',
141
- :'amount_includes_tax' => :'BOOLEAN',
142
- :'type_of_supply' => :'String',
143
- :'commodity_code' => :'String',
144
- :'discount_amount' => :'String',
145
- :'discount_applied' => :'BOOLEAN',
146
- :'discount_rate' => :'String',
147
- :'invoice_number' => :'String',
148
- :'tax_details' => :'Array<Ptsv2paymentsOrderInformationAmountDetailsTaxDetails>',
149
- :'fulfillment_type' => :'String',
150
- :'weight' => :'String',
151
- :'weight_identifier' => :'String',
152
- :'weight_unit' => :'String',
153
- :'reference_data_code' => :'String',
154
- :'reference_data_number' => :'String'
155
- }
156
- end
157
-
158
- # Initializes the object
159
- # @param [Hash] attributes Model attributes in the form of hash
160
- def initialize(attributes = {})
161
- return unless attributes.is_a?(Hash)
162
-
163
- # convert string to symbol for hash key
164
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
165
-
166
- if attributes.has_key?(:'productCode')
167
- self.product_code = attributes[:'productCode']
168
- end
169
-
170
- if attributes.has_key?(:'productName')
171
- self.product_name = attributes[:'productName']
172
- end
173
-
174
- if attributes.has_key?(:'productSku')
175
- self.product_sku = attributes[:'productSku']
176
- end
177
-
178
- if attributes.has_key?(:'quantity')
179
- self.quantity = attributes[:'quantity']
180
- end
181
-
182
- if attributes.has_key?(:'unitPrice')
183
- self.unit_price = attributes[:'unitPrice']
184
- end
185
-
186
- if attributes.has_key?(:'unitOfMeasure')
187
- self.unit_of_measure = attributes[:'unitOfMeasure']
188
- end
189
-
190
- if attributes.has_key?(:'totalAmount')
191
- self.total_amount = attributes[:'totalAmount']
192
- end
193
-
194
- if attributes.has_key?(:'taxAmount')
195
- self.tax_amount = attributes[:'taxAmount']
196
- end
197
-
198
- if attributes.has_key?(:'taxRate')
199
- self.tax_rate = attributes[:'taxRate']
200
- end
201
-
202
- if attributes.has_key?(:'taxAppliedAfterDiscount')
203
- self.tax_applied_after_discount = attributes[:'taxAppliedAfterDiscount']
204
- end
205
-
206
- if attributes.has_key?(:'taxStatusIndicator')
207
- self.tax_status_indicator = attributes[:'taxStatusIndicator']
208
- end
209
-
210
- if attributes.has_key?(:'taxTypeCode')
211
- self.tax_type_code = attributes[:'taxTypeCode']
212
- end
213
-
214
- if attributes.has_key?(:'amountIncludesTax')
215
- self.amount_includes_tax = attributes[:'amountIncludesTax']
216
- end
217
-
218
- if attributes.has_key?(:'typeOfSupply')
219
- self.type_of_supply = attributes[:'typeOfSupply']
220
- end
221
-
222
- if attributes.has_key?(:'commodityCode')
223
- self.commodity_code = attributes[:'commodityCode']
224
- end
225
-
226
- if attributes.has_key?(:'discountAmount')
227
- self.discount_amount = attributes[:'discountAmount']
228
- end
229
-
230
- if attributes.has_key?(:'discountApplied')
231
- self.discount_applied = attributes[:'discountApplied']
232
- end
233
-
234
- if attributes.has_key?(:'discountRate')
235
- self.discount_rate = attributes[:'discountRate']
236
- end
237
-
238
- if attributes.has_key?(:'invoiceNumber')
239
- self.invoice_number = attributes[:'invoiceNumber']
240
- end
241
-
242
- if attributes.has_key?(:'taxDetails')
243
- if (value = attributes[:'taxDetails']).is_a?(Array)
244
- self.tax_details = value
245
- end
246
- end
247
-
248
- if attributes.has_key?(:'fulfillmentType')
249
- self.fulfillment_type = attributes[:'fulfillmentType']
250
- end
251
-
252
- if attributes.has_key?(:'weight')
253
- self.weight = attributes[:'weight']
254
- end
255
-
256
- if attributes.has_key?(:'weightIdentifier')
257
- self.weight_identifier = attributes[:'weightIdentifier']
258
- end
259
-
260
- if attributes.has_key?(:'weightUnit')
261
- self.weight_unit = attributes[:'weightUnit']
262
- end
263
-
264
- if attributes.has_key?(:'referenceDataCode')
265
- self.reference_data_code = attributes[:'referenceDataCode']
266
- end
267
-
268
- if attributes.has_key?(:'referenceDataNumber')
269
- self.reference_data_number = attributes[:'referenceDataNumber']
270
- end
271
- end
272
-
273
- # Show invalid properties with the reasons. Usually used together with valid?
274
- # @return Array for valid properties with the reasons
275
- def list_invalid_properties
276
- invalid_properties = Array.new
277
- if !@product_code.nil? && @product_code.to_s.length > 255
278
- invalid_properties.push('invalid value for "product_code", the character length must be smaller than or equal to 255.')
279
- end
280
-
281
- if !@product_name.nil? && @product_name.to_s.length > 255
282
- invalid_properties.push('invalid value for "product_name", the character length must be smaller than or equal to 255.')
283
- end
284
-
285
- if !@product_sku.nil? && @product_sku.to_s.length > 255
286
- invalid_properties.push('invalid value for "product_sku", the character length must be smaller than or equal to 255.')
287
- end
288
-
289
- if !@quantity.nil? && @quantity > 9999999999
290
- invalid_properties.push('invalid value for "quantity", must be smaller than or equal to 9999999999.')
291
- end
292
-
293
- if !@quantity.nil? && @quantity < 1
294
- invalid_properties.push('invalid value for "quantity", must be greater than or equal to 1.')
295
- end
296
-
297
- if !@unit_price.nil? && @unit_price.to_s.length > 15
298
- invalid_properties.push('invalid value for "unit_price", the character length must be smaller than or equal to 15.')
299
- end
300
-
301
- if !@unit_of_measure.nil? && @unit_of_measure.to_s.length > 12
302
- invalid_properties.push('invalid value for "unit_of_measure", the character length must be smaller than or equal to 12.')
303
- end
304
-
305
- if !@total_amount.nil? && @total_amount.to_s.length > 13
306
- invalid_properties.push('invalid value for "total_amount", the character length must be smaller than or equal to 13.')
307
- end
308
-
309
- if !@tax_amount.nil? && @tax_amount.to_s.length > 15
310
- invalid_properties.push('invalid value for "tax_amount", the character length must be smaller than or equal to 15.')
311
- end
312
-
313
- if !@tax_rate.nil? && @tax_rate.to_s.length > 7
314
- invalid_properties.push('invalid value for "tax_rate", the character length must be smaller than or equal to 7.')
315
- end
316
-
317
- if !@tax_applied_after_discount.nil? && @tax_applied_after_discount.to_s.length > 1
318
- invalid_properties.push('invalid value for "tax_applied_after_discount", the character length must be smaller than or equal to 1.')
319
- end
320
-
321
- if !@tax_status_indicator.nil? && @tax_status_indicator.to_s.length > 1
322
- invalid_properties.push('invalid value for "tax_status_indicator", the character length must be smaller than or equal to 1.')
323
- end
324
-
325
- if !@tax_type_code.nil? && @tax_type_code.to_s.length > 4
326
- invalid_properties.push('invalid value for "tax_type_code", the character length must be smaller than or equal to 4.')
327
- end
328
-
329
- if !@type_of_supply.nil? && @type_of_supply.to_s.length > 2
330
- invalid_properties.push('invalid value for "type_of_supply", the character length must be smaller than or equal to 2.')
331
- end
332
-
333
- if !@commodity_code.nil? && @commodity_code.to_s.length > 15
334
- invalid_properties.push('invalid value for "commodity_code", the character length must be smaller than or equal to 15.')
335
- end
336
-
337
- if !@discount_amount.nil? && @discount_amount.to_s.length > 13
338
- invalid_properties.push('invalid value for "discount_amount", the character length must be smaller than or equal to 13.')
339
- end
340
-
341
- if !@discount_rate.nil? && @discount_rate.to_s.length > 6
342
- invalid_properties.push('invalid value for "discount_rate", the character length must be smaller than or equal to 6.')
343
- end
344
-
345
- if !@invoice_number.nil? && @invoice_number.to_s.length > 23
346
- invalid_properties.push('invalid value for "invoice_number", the character length must be smaller than or equal to 23.')
347
- end
348
-
349
- if !@weight.nil? && @weight.to_s.length > 9
350
- invalid_properties.push('invalid value for "weight", the character length must be smaller than or equal to 9.')
351
- end
352
-
353
- if !@weight_identifier.nil? && @weight_identifier.to_s.length > 1
354
- invalid_properties.push('invalid value for "weight_identifier", the character length must be smaller than or equal to 1.')
355
- end
356
-
357
- if !@weight_unit.nil? && @weight_unit.to_s.length > 2
358
- invalid_properties.push('invalid value for "weight_unit", the character length must be smaller than or equal to 2.')
359
- end
360
-
361
- if !@reference_data_code.nil? && @reference_data_code.to_s.length > 2
362
- invalid_properties.push('invalid value for "reference_data_code", the character length must be smaller than or equal to 2.')
363
- end
364
-
365
- if !@reference_data_number.nil? && @reference_data_number.to_s.length > 30
366
- invalid_properties.push('invalid value for "reference_data_number", the character length must be smaller than or equal to 30.')
367
- end
368
-
369
- invalid_properties
370
- end
371
-
372
- # Check to see if the all the properties in the model are valid
373
- # @return true if the model is valid
374
- def valid?
375
- return false if !@product_code.nil? && @product_code.to_s.length > 255
376
- return false if !@product_name.nil? && @product_name.to_s.length > 255
377
- return false if !@product_sku.nil? && @product_sku.to_s.length > 255
378
- return false if !@quantity.nil? && @quantity > 9999999999
379
- return false if !@quantity.nil? && @quantity < 1
380
- return false if !@unit_price.nil? && @unit_price.to_s.length > 15
381
- return false if !@unit_of_measure.nil? && @unit_of_measure.to_s.length > 12
382
- return false if !@total_amount.nil? && @total_amount.to_s.length > 13
383
- return false if !@tax_amount.nil? && @tax_amount.to_s.length > 15
384
- return false if !@tax_rate.nil? && @tax_rate.to_s.length > 7
385
- return false if !@tax_applied_after_discount.nil? && @tax_applied_after_discount.to_s.length > 1
386
- return false if !@tax_status_indicator.nil? && @tax_status_indicator.to_s.length > 1
387
- return false if !@tax_type_code.nil? && @tax_type_code.to_s.length > 4
388
- return false if !@type_of_supply.nil? && @type_of_supply.to_s.length > 2
389
- return false if !@commodity_code.nil? && @commodity_code.to_s.length > 15
390
- return false if !@discount_amount.nil? && @discount_amount.to_s.length > 13
391
- return false if !@discount_rate.nil? && @discount_rate.to_s.length > 6
392
- return false if !@invoice_number.nil? && @invoice_number.to_s.length > 23
393
- return false if !@weight.nil? && @weight.to_s.length > 9
394
- return false if !@weight_identifier.nil? && @weight_identifier.to_s.length > 1
395
- return false if !@weight_unit.nil? && @weight_unit.to_s.length > 2
396
- return false if !@reference_data_code.nil? && @reference_data_code.to_s.length > 2
397
- return false if !@reference_data_number.nil? && @reference_data_number.to_s.length > 30
398
- true
399
- end
400
-
401
- # Custom attribute writer method with validation
402
- # @param [Object] product_code Value to be assigned
403
- def product_code=(product_code)
404
- if !product_code.nil? && product_code.to_s.length > 255
405
- fail ArgumentError, 'invalid value for "product_code", the character length must be smaller than or equal to 255.'
406
- end
407
-
408
- @product_code = product_code
409
- end
410
-
411
- # Custom attribute writer method with validation
412
- # @param [Object] product_name Value to be assigned
413
- def product_name=(product_name)
414
- if !product_name.nil? && product_name.to_s.length > 255
415
- fail ArgumentError, 'invalid value for "product_name", the character length must be smaller than or equal to 255.'
416
- end
417
-
418
- @product_name = product_name
419
- end
420
-
421
- # Custom attribute writer method with validation
422
- # @param [Object] product_sku Value to be assigned
423
- def product_sku=(product_sku)
424
- if !product_sku.nil? && product_sku.to_s.length > 255
425
- fail ArgumentError, 'invalid value for "product_sku", the character length must be smaller than or equal to 255.'
426
- end
427
-
428
- @product_sku = product_sku
429
- end
430
-
431
- # Custom attribute writer method with validation
432
- # @param [Object] quantity Value to be assigned
433
- def quantity=(quantity)
434
- if !quantity.nil? && quantity > 9999999999
435
- fail ArgumentError, 'invalid value for "quantity", must be smaller than or equal to 9999999999.'
436
- end
437
-
438
- if !quantity.nil? && quantity < 1
439
- fail ArgumentError, 'invalid value for "quantity", must be greater than or equal to 1.'
440
- end
441
-
442
- @quantity = quantity
443
- end
444
-
445
- # Custom attribute writer method with validation
446
- # @param [Object] unit_price Value to be assigned
447
- def unit_price=(unit_price)
448
- if !unit_price.nil? && unit_price.to_s.length > 15
449
- fail ArgumentError, 'invalid value for "unit_price", the character length must be smaller than or equal to 15.'
450
- end
451
-
452
- @unit_price = unit_price
453
- end
454
-
455
- # Custom attribute writer method with validation
456
- # @param [Object] unit_of_measure Value to be assigned
457
- def unit_of_measure=(unit_of_measure)
458
- if !unit_of_measure.nil? && unit_of_measure.to_s.length > 12
459
- fail ArgumentError, 'invalid value for "unit_of_measure", the character length must be smaller than or equal to 12.'
460
- end
461
-
462
- @unit_of_measure = unit_of_measure
463
- end
464
-
465
- # Custom attribute writer method with validation
466
- # @param [Object] total_amount Value to be assigned
467
- def total_amount=(total_amount)
468
- if !total_amount.nil? && total_amount.to_s.length > 13
469
- fail ArgumentError, 'invalid value for "total_amount", the character length must be smaller than or equal to 13.'
470
- end
471
-
472
- @total_amount = total_amount
473
- end
474
-
475
- # Custom attribute writer method with validation
476
- # @param [Object] tax_amount Value to be assigned
477
- def tax_amount=(tax_amount)
478
- if !tax_amount.nil? && tax_amount.to_s.length > 15
479
- fail ArgumentError, 'invalid value for "tax_amount", the character length must be smaller than or equal to 15.'
480
- end
481
-
482
- @tax_amount = tax_amount
483
- end
484
-
485
- # Custom attribute writer method with validation
486
- # @param [Object] tax_rate Value to be assigned
487
- def tax_rate=(tax_rate)
488
- if !tax_rate.nil? && tax_rate.to_s.length > 7
489
- fail ArgumentError, 'invalid value for "tax_rate", the character length must be smaller than or equal to 7.'
490
- end
491
-
492
- @tax_rate = tax_rate
493
- end
494
-
495
- # Custom attribute writer method with validation
496
- # @param [Object] tax_applied_after_discount Value to be assigned
497
- def tax_applied_after_discount=(tax_applied_after_discount)
498
- if !tax_applied_after_discount.nil? && tax_applied_after_discount.to_s.length > 1
499
- fail ArgumentError, 'invalid value for "tax_applied_after_discount", the character length must be smaller than or equal to 1.'
500
- end
501
-
502
- @tax_applied_after_discount = tax_applied_after_discount
503
- end
504
-
505
- # Custom attribute writer method with validation
506
- # @param [Object] tax_status_indicator Value to be assigned
507
- def tax_status_indicator=(tax_status_indicator)
508
- if !tax_status_indicator.nil? && tax_status_indicator.to_s.length > 1
509
- fail ArgumentError, 'invalid value for "tax_status_indicator", the character length must be smaller than or equal to 1.'
510
- end
511
-
512
- @tax_status_indicator = tax_status_indicator
513
- end
514
-
515
- # Custom attribute writer method with validation
516
- # @param [Object] tax_type_code Value to be assigned
517
- def tax_type_code=(tax_type_code)
518
- if !tax_type_code.nil? && tax_type_code.to_s.length > 4
519
- fail ArgumentError, 'invalid value for "tax_type_code", the character length must be smaller than or equal to 4.'
520
- end
521
-
522
- @tax_type_code = tax_type_code
523
- end
524
-
525
- # Custom attribute writer method with validation
526
- # @param [Object] type_of_supply Value to be assigned
527
- def type_of_supply=(type_of_supply)
528
- if !type_of_supply.nil? && type_of_supply.to_s.length > 2
529
- fail ArgumentError, 'invalid value for "type_of_supply", the character length must be smaller than or equal to 2.'
530
- end
531
-
532
- @type_of_supply = type_of_supply
533
- end
534
-
535
- # Custom attribute writer method with validation
536
- # @param [Object] commodity_code Value to be assigned
537
- def commodity_code=(commodity_code)
538
- if !commodity_code.nil? && commodity_code.to_s.length > 15
539
- fail ArgumentError, 'invalid value for "commodity_code", the character length must be smaller than or equal to 15.'
540
- end
541
-
542
- @commodity_code = commodity_code
543
- end
544
-
545
- # Custom attribute writer method with validation
546
- # @param [Object] discount_amount Value to be assigned
547
- def discount_amount=(discount_amount)
548
- if !discount_amount.nil? && discount_amount.to_s.length > 13
549
- fail ArgumentError, 'invalid value for "discount_amount", the character length must be smaller than or equal to 13.'
550
- end
551
-
552
- @discount_amount = discount_amount
553
- end
554
-
555
- # Custom attribute writer method with validation
556
- # @param [Object] discount_rate Value to be assigned
557
- def discount_rate=(discount_rate)
558
- if !discount_rate.nil? && discount_rate.to_s.length > 6
559
- fail ArgumentError, 'invalid value for "discount_rate", the character length must be smaller than or equal to 6.'
560
- end
561
-
562
- @discount_rate = discount_rate
563
- end
564
-
565
- # Custom attribute writer method with validation
566
- # @param [Object] invoice_number Value to be assigned
567
- def invoice_number=(invoice_number)
568
- if !invoice_number.nil? && invoice_number.to_s.length > 23
569
- fail ArgumentError, 'invalid value for "invoice_number", the character length must be smaller than or equal to 23.'
570
- end
571
-
572
- @invoice_number = invoice_number
573
- end
574
-
575
- # Custom attribute writer method with validation
576
- # @param [Object] weight Value to be assigned
577
- def weight=(weight)
578
- if !weight.nil? && weight.to_s.length > 9
579
- fail ArgumentError, 'invalid value for "weight", the character length must be smaller than or equal to 9.'
580
- end
581
-
582
- @weight = weight
583
- end
584
-
585
- # Custom attribute writer method with validation
586
- # @param [Object] weight_identifier Value to be assigned
587
- def weight_identifier=(weight_identifier)
588
- if !weight_identifier.nil? && weight_identifier.to_s.length > 1
589
- fail ArgumentError, 'invalid value for "weight_identifier", the character length must be smaller than or equal to 1.'
590
- end
591
-
592
- @weight_identifier = weight_identifier
593
- end
594
-
595
- # Custom attribute writer method with validation
596
- # @param [Object] weight_unit Value to be assigned
597
- def weight_unit=(weight_unit)
598
- if !weight_unit.nil? && weight_unit.to_s.length > 2
599
- fail ArgumentError, 'invalid value for "weight_unit", the character length must be smaller than or equal to 2.'
600
- end
601
-
602
- @weight_unit = weight_unit
603
- end
604
-
605
- # Custom attribute writer method with validation
606
- # @param [Object] reference_data_code Value to be assigned
607
- def reference_data_code=(reference_data_code)
608
- if !reference_data_code.nil? && reference_data_code.to_s.length > 2
609
- fail ArgumentError, 'invalid value for "reference_data_code", the character length must be smaller than or equal to 2.'
610
- end
611
-
612
- @reference_data_code = reference_data_code
613
- end
614
-
615
- # Custom attribute writer method with validation
616
- # @param [Object] reference_data_number Value to be assigned
617
- def reference_data_number=(reference_data_number)
618
- if !reference_data_number.nil? && reference_data_number.to_s.length > 30
619
- fail ArgumentError, 'invalid value for "reference_data_number", the character length must be smaller than or equal to 30.'
620
- end
621
-
622
- @reference_data_number = reference_data_number
623
- end
624
-
625
- # Checks equality by comparing each attribute.
626
- # @param [Object] Object to be compared
627
- def ==(o)
628
- return true if self.equal?(o)
629
- self.class == o.class &&
630
- product_code == o.product_code &&
631
- product_name == o.product_name &&
632
- product_sku == o.product_sku &&
633
- quantity == o.quantity &&
634
- unit_price == o.unit_price &&
635
- unit_of_measure == o.unit_of_measure &&
636
- total_amount == o.total_amount &&
637
- tax_amount == o.tax_amount &&
638
- tax_rate == o.tax_rate &&
639
- tax_applied_after_discount == o.tax_applied_after_discount &&
640
- tax_status_indicator == o.tax_status_indicator &&
641
- tax_type_code == o.tax_type_code &&
642
- amount_includes_tax == o.amount_includes_tax &&
643
- type_of_supply == o.type_of_supply &&
644
- commodity_code == o.commodity_code &&
645
- discount_amount == o.discount_amount &&
646
- discount_applied == o.discount_applied &&
647
- discount_rate == o.discount_rate &&
648
- invoice_number == o.invoice_number &&
649
- tax_details == o.tax_details &&
650
- fulfillment_type == o.fulfillment_type &&
651
- weight == o.weight &&
652
- weight_identifier == o.weight_identifier &&
653
- weight_unit == o.weight_unit &&
654
- reference_data_code == o.reference_data_code &&
655
- reference_data_number == o.reference_data_number
656
- end
657
-
658
- # @see the `==` method
659
- # @param [Object] Object to be compared
660
- def eql?(o)
661
- self == o
662
- end
663
-
664
- # Calculates hash code according to all attributes.
665
- # @return [Fixnum] Hash code
666
- def hash
667
- [product_code, product_name, product_sku, quantity, unit_price, unit_of_measure, total_amount, tax_amount, tax_rate, tax_applied_after_discount, tax_status_indicator, tax_type_code, amount_includes_tax, type_of_supply, commodity_code, discount_amount, discount_applied, discount_rate, invoice_number, tax_details, fulfillment_type, weight, weight_identifier, weight_unit, reference_data_code, reference_data_number].hash
668
- end
669
-
670
- # Builds the object from hash
671
- # @param [Hash] attributes Model attributes in the form of hash
672
- # @return [Object] Returns the model itself
673
- def build_from_hash(attributes)
674
- return nil unless attributes.is_a?(Hash)
675
- self.class.swagger_types.each_pair do |key, type|
676
- if type =~ /\AArray<(.*)>/i
677
- # check to ensure the input is an array given that the the attribute
678
- # is documented as an array but the input is not
679
- if attributes[self.class.attribute_map[key]].is_a?(Array)
680
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
681
- end
682
- elsif !attributes[self.class.attribute_map[key]].nil?
683
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
684
- end # or else data not found in attributes(hash), not an issue as the data can be optional
685
- end
686
-
687
- self
688
- end
689
-
690
- # Deserializes the data based on type
691
- # @param string type Data type
692
- # @param string value Value to be deserialized
693
- # @return [Object] Deserialized data
694
- def _deserialize(type, value)
695
- case type.to_sym
696
- when :DateTime
697
- DateTime.parse(value)
698
- when :Date
699
- Date.parse(value)
700
- when :String
701
- value.to_s
702
- when :Integer
703
- value.to_i
704
- when :Float
705
- value.to_f
706
- when :BOOLEAN
707
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
708
- true
709
- else
710
- false
711
- end
712
- when :Object
713
- # generic object (usually a Hash), return directly
714
- value
715
- when /\AArray<(?<inner_type>.+)>\z/
716
- inner_type = Regexp.last_match[:inner_type]
717
- value.map { |v| _deserialize(inner_type, v) }
718
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
719
- k_type = Regexp.last_match[:k_type]
720
- v_type = Regexp.last_match[:v_type]
721
- {}.tap do |hash|
722
- value.each do |k, v|
723
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
724
- end
725
- end
726
- else # model
727
- temp_model = CyberSource.const_get(type).new
728
- temp_model.build_from_hash(value)
729
- end
730
- end
731
-
732
- # Returns the string representation of the object
733
- # @return [String] String presentation of the object
734
- def to_s
735
- to_hash.to_s
736
- end
737
-
738
- # to_body is an alias to to_hash (backward compatibility)
739
- # @return [Hash] Returns the object in the form of hash
740
- def to_body
741
- to_hash
742
- end
743
-
744
- # Returns the object in the form of hash
745
- # @return [Hash] Returns the object in the form of hash
746
- def to_hash
747
- hash = {}
748
- self.class.attribute_map.each_pair do |attr, param|
749
- value = self.send(attr)
750
- next if value.nil?
751
- hash[param] = _to_hash(value)
752
- end
753
- hash
754
- end
755
-
756
- # Outputs non-array value in the form of hash
757
- # For object, use to_hash. Otherwise, just return the value
758
- # @param [Object] value Any valid value
759
- # @return [Hash] Returns the value in the form of hash
760
- def _to_hash(value)
761
- if value.is_a?(Array)
762
- value.compact.map { |v| _to_hash(v) }
763
- elsif value.is_a?(Hash)
764
- {}.tap do |hash|
765
- value.each { |k, v| hash[k] = _to_hash(v) }
766
- end
767
- elsif value.respond_to? :to_hash
768
- value.to_hash
769
- else
770
- value
771
- end
772
- end
773
- end
774
- end
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CyberSource
16
+ class Ptsv2paymentsOrderInformationLineItems
17
+ # Type of product. This value is used to determine the category that the product is in: electronic, handling, physical, service, or shipping. The default value is **default**. If you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to shipping and handling, then the fields `quantity`, `productName`, and `productSku` are required. It can also have a value of \"gift_card\". For details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
18
+ attr_accessor :product_code
19
+
20
+ # For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of the other values that are related to shipping and/or handling.
21
+ attr_accessor :product_name
22
+
23
+ # Stock Keeping Unit (SKU) code for the product. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.
24
+ attr_accessor :product_sku
25
+
26
+ # Number of units for this order. The default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling. When orderInformation.lineItems[].productCode is \"gift_card\", this is the total count of individual prepaid gift cards purchased.
27
+ attr_accessor :quantity
28
+
29
+ # Per-item price of the product. This value cannot be negative. You can include a decimal point (.), but you cannot include any other special characters. CyberSource truncates the amount to the correct number of decimal places. For processor-specific information, see the `amount` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html) **Important** Some processors have specific requirements and limitations, such as maximum amounts and maximum field lengths. See these guides for details: - [Merchant Descriptors Using the SCMP API Guide] (https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) - \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) #### DCC with a Third-Party Provider Set this field to the converted amount that was returned by the DCC provider. You must include either the 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request. For details, see \"Dynamic Currency Conversion with a Third Party Provider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) #### FDMS South If you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.] (https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) #### Zero Amount Authorizations If your processor supports zero amount authorizations, you can set this field to 0 for the authorization to check if the card is lost or stolen. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
30
+ attr_accessor :unit_price
31
+
32
+ # Unit of measure, or unit of measure code, for the item.
33
+ attr_accessor :unit_of_measure
34
+
35
+ # Total amount for the item. Normally calculated as the unit price times quantity. When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total for prepaid gift cards in major units. Example: 123.45 USD = 123
36
+ attr_accessor :total_amount
37
+
38
+ # Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must be in the same currency. The tax amount field is additive. The following example uses a two-exponent currency such as USD: 1. You include each line item in your request. ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80 ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included. If you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API. This field is frequently used for Level II and Level III transactions. For details, see `tax_amount` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
39
+ attr_accessor :tax_amount
40
+
41
+ # Tax rate applied to the item. For details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) **Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional decimal places will be truncated). **Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).
42
+ attr_accessor :tax_rate
43
+
44
+ # Flag to indicate how you handle discount at the line item level. - 0: no line level discount provided - 1: tax was calculated on the post-discount line item total - 2: tax was calculated on the pre-discount line item total `Note` Visa will inset 0 (zero) if an invalid value is included in this field. This field relates to the value in the _lineItems[].discountAmount_ field.
45
+ attr_accessor :tax_applied_after_discount
46
+
47
+ # Flag to indicate whether tax is exempted or not included. - 0: tax not included - 1: tax included - 2: transaction is not subject to tax
48
+ attr_accessor :tax_status_indicator
49
+
50
+ # Type of tax being applied to the item. For possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm): #### FDC Nashville Global - `alternate_tax_type_applied` - `alternate_tax_type_identifier` #### Worldpay VAP - `alternate_tax_type_identifier` #### RBS WorldPay Atlanta - `tax_type_applied` #### TSYS Acquiring Solutions - `tax_type_applied` - `local_tax_indicator` #### Chase Paymentech Solutions - `tax_type_applied` #### Elavon Americas - `local_tax_indicator` #### FDC Compass - `tax_type_applied` #### OmniPay Direct - `local_tax_indicator`
51
+ attr_accessor :tax_type_code
52
+
53
+ # Flag that indicates whether the tax amount is included in the Line Item Total. Possible values: - **true** - **false**
54
+ attr_accessor :amount_includes_tax
55
+
56
+ # Flag to indicate whether the purchase is categorized as goods or services. Possible values: - 00: goods - 01: services
57
+ attr_accessor :type_of_supply
58
+
59
+ # Commodity code or International description code used to classify the item. Contact your acquirer for a list of codes.
60
+ attr_accessor :commodity_code
61
+
62
+ # Discount applied to the item.
63
+ attr_accessor :discount_amount
64
+
65
+ # Flag that indicates whether the amount is discounted. If you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets this field to **true**. Possible values: - **true** - **false**
66
+ attr_accessor :discount_applied
67
+
68
+ # Rate the item is discounted. Maximum of 2 decimal places. Example 5.25 (=5.25%)
69
+ attr_accessor :discount_rate
70
+
71
+ # Field to support an invoice number for a transaction. You must specify the number of line items that will include an invoice number. By default, the first line item will include an invoice number field. The invoice number field can be included for up to 10 line items.
72
+ attr_accessor :invoice_number
73
+
74
+ attr_accessor :tax_details
75
+
76
+ # Information about the product code used for the line item. Possible values: - `E`: The product code is `electronic_software`. - `P`: The product code is not `electronic_software`. For details, see the `fulfillmentType` field description in [Business Center Reporting User Guide.] (https://apps.cybersource.com/library/documentation/dev_guides/reporting_and_reconciliation/Reporting_User/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
77
+ attr_accessor :fulfillment_type
78
+
79
+ # Weight of the item. See Numbered Elements.
80
+ attr_accessor :weight
81
+
82
+ # Type of weight. See Numbered Elements. Possible values: - B: Billed weight - N: Actual net weight
83
+ attr_accessor :weight_identifier
84
+
85
+ # Code that specifies the unit of measurement for the weight amount. For example, OZ specifies ounce and LB specifies pound. The possible values are defined by the ANSI Accredited Standards Committee (ASC). See Numbered Elements.
86
+ attr_accessor :weight_unit
87
+
88
+ # Code that identifies the value of the corresponding item_#_referenceData_#_number field. See Numbered Elements. Possible values: - AN: Client-defined asset code - MG: Manufacturer's part number - PO: Purchase order number - SK: Supplier stock keeping unit number - UP: Universal product code - VC: Supplier catalog number - VP: Vendor part number This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor.
89
+ attr_accessor :reference_data_code
90
+
91
+ # Reference number. The meaning of this value is identified by the value of the corresponding `referenceDataCode` field. See Numbered Elements. The maximum length for this field depends on the value of the corresponding `referenceDataCode` field: - When the code is `PO`, the maximum length for the reference number is 22. - When the code is `VC`, the maximum length for the reference number is 20. - For all other codes, the maximum length for the reference number is 30. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor.
92
+ attr_accessor :reference_data_number
93
+
94
+ # Attribute mapping from ruby-style variable name to JSON key.
95
+ def self.attribute_map
96
+ {
97
+ :'product_code' => :'productCode',
98
+ :'product_name' => :'productName',
99
+ :'product_sku' => :'productSku',
100
+ :'quantity' => :'quantity',
101
+ :'unit_price' => :'unitPrice',
102
+ :'unit_of_measure' => :'unitOfMeasure',
103
+ :'total_amount' => :'totalAmount',
104
+ :'tax_amount' => :'taxAmount',
105
+ :'tax_rate' => :'taxRate',
106
+ :'tax_applied_after_discount' => :'taxAppliedAfterDiscount',
107
+ :'tax_status_indicator' => :'taxStatusIndicator',
108
+ :'tax_type_code' => :'taxTypeCode',
109
+ :'amount_includes_tax' => :'amountIncludesTax',
110
+ :'type_of_supply' => :'typeOfSupply',
111
+ :'commodity_code' => :'commodityCode',
112
+ :'discount_amount' => :'discountAmount',
113
+ :'discount_applied' => :'discountApplied',
114
+ :'discount_rate' => :'discountRate',
115
+ :'invoice_number' => :'invoiceNumber',
116
+ :'tax_details' => :'taxDetails',
117
+ :'fulfillment_type' => :'fulfillmentType',
118
+ :'weight' => :'weight',
119
+ :'weight_identifier' => :'weightIdentifier',
120
+ :'weight_unit' => :'weightUnit',
121
+ :'reference_data_code' => :'referenceDataCode',
122
+ :'reference_data_number' => :'referenceDataNumber'
123
+ }
124
+ end
125
+
126
+ # Attribute type mapping.
127
+ def self.swagger_types
128
+ {
129
+ :'product_code' => :'String',
130
+ :'product_name' => :'String',
131
+ :'product_sku' => :'String',
132
+ :'quantity' => :'Float',
133
+ :'unit_price' => :'String',
134
+ :'unit_of_measure' => :'String',
135
+ :'total_amount' => :'String',
136
+ :'tax_amount' => :'String',
137
+ :'tax_rate' => :'String',
138
+ :'tax_applied_after_discount' => :'String',
139
+ :'tax_status_indicator' => :'String',
140
+ :'tax_type_code' => :'String',
141
+ :'amount_includes_tax' => :'BOOLEAN',
142
+ :'type_of_supply' => :'String',
143
+ :'commodity_code' => :'String',
144
+ :'discount_amount' => :'String',
145
+ :'discount_applied' => :'BOOLEAN',
146
+ :'discount_rate' => :'String',
147
+ :'invoice_number' => :'String',
148
+ :'tax_details' => :'Array<Ptsv2paymentsOrderInformationAmountDetailsTaxDetails>',
149
+ :'fulfillment_type' => :'String',
150
+ :'weight' => :'String',
151
+ :'weight_identifier' => :'String',
152
+ :'weight_unit' => :'String',
153
+ :'reference_data_code' => :'String',
154
+ :'reference_data_number' => :'String'
155
+ }
156
+ end
157
+
158
+ # Initializes the object
159
+ # @param [Hash] attributes Model attributes in the form of hash
160
+ def initialize(attributes = {})
161
+ return unless attributes.is_a?(Hash)
162
+
163
+ # convert string to symbol for hash key
164
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
165
+
166
+ if attributes.has_key?(:'productCode')
167
+ self.product_code = attributes[:'productCode']
168
+ end
169
+
170
+ if attributes.has_key?(:'productName')
171
+ self.product_name = attributes[:'productName']
172
+ end
173
+
174
+ if attributes.has_key?(:'productSku')
175
+ self.product_sku = attributes[:'productSku']
176
+ end
177
+
178
+ if attributes.has_key?(:'quantity')
179
+ self.quantity = attributes[:'quantity']
180
+ end
181
+
182
+ if attributes.has_key?(:'unitPrice')
183
+ self.unit_price = attributes[:'unitPrice']
184
+ end
185
+
186
+ if attributes.has_key?(:'unitOfMeasure')
187
+ self.unit_of_measure = attributes[:'unitOfMeasure']
188
+ end
189
+
190
+ if attributes.has_key?(:'totalAmount')
191
+ self.total_amount = attributes[:'totalAmount']
192
+ end
193
+
194
+ if attributes.has_key?(:'taxAmount')
195
+ self.tax_amount = attributes[:'taxAmount']
196
+ end
197
+
198
+ if attributes.has_key?(:'taxRate')
199
+ self.tax_rate = attributes[:'taxRate']
200
+ end
201
+
202
+ if attributes.has_key?(:'taxAppliedAfterDiscount')
203
+ self.tax_applied_after_discount = attributes[:'taxAppliedAfterDiscount']
204
+ end
205
+
206
+ if attributes.has_key?(:'taxStatusIndicator')
207
+ self.tax_status_indicator = attributes[:'taxStatusIndicator']
208
+ end
209
+
210
+ if attributes.has_key?(:'taxTypeCode')
211
+ self.tax_type_code = attributes[:'taxTypeCode']
212
+ end
213
+
214
+ if attributes.has_key?(:'amountIncludesTax')
215
+ self.amount_includes_tax = attributes[:'amountIncludesTax']
216
+ end
217
+
218
+ if attributes.has_key?(:'typeOfSupply')
219
+ self.type_of_supply = attributes[:'typeOfSupply']
220
+ end
221
+
222
+ if attributes.has_key?(:'commodityCode')
223
+ self.commodity_code = attributes[:'commodityCode']
224
+ end
225
+
226
+ if attributes.has_key?(:'discountAmount')
227
+ self.discount_amount = attributes[:'discountAmount']
228
+ end
229
+
230
+ if attributes.has_key?(:'discountApplied')
231
+ self.discount_applied = attributes[:'discountApplied']
232
+ end
233
+
234
+ if attributes.has_key?(:'discountRate')
235
+ self.discount_rate = attributes[:'discountRate']
236
+ end
237
+
238
+ if attributes.has_key?(:'invoiceNumber')
239
+ self.invoice_number = attributes[:'invoiceNumber']
240
+ end
241
+
242
+ if attributes.has_key?(:'taxDetails')
243
+ if (value = attributes[:'taxDetails']).is_a?(Array)
244
+ self.tax_details = value
245
+ end
246
+ end
247
+
248
+ if attributes.has_key?(:'fulfillmentType')
249
+ self.fulfillment_type = attributes[:'fulfillmentType']
250
+ end
251
+
252
+ if attributes.has_key?(:'weight')
253
+ self.weight = attributes[:'weight']
254
+ end
255
+
256
+ if attributes.has_key?(:'weightIdentifier')
257
+ self.weight_identifier = attributes[:'weightIdentifier']
258
+ end
259
+
260
+ if attributes.has_key?(:'weightUnit')
261
+ self.weight_unit = attributes[:'weightUnit']
262
+ end
263
+
264
+ if attributes.has_key?(:'referenceDataCode')
265
+ self.reference_data_code = attributes[:'referenceDataCode']
266
+ end
267
+
268
+ if attributes.has_key?(:'referenceDataNumber')
269
+ self.reference_data_number = attributes[:'referenceDataNumber']
270
+ end
271
+ end
272
+
273
+ # Show invalid properties with the reasons. Usually used together with valid?
274
+ # @return Array for valid properties with the reasons
275
+ def list_invalid_properties
276
+ invalid_properties = Array.new
277
+ if !@product_code.nil? && @product_code.to_s.length > 255
278
+ invalid_properties.push('invalid value for "product_code", the character length must be smaller than or equal to 255.')
279
+ end
280
+
281
+ if !@product_name.nil? && @product_name.to_s.length > 255
282
+ invalid_properties.push('invalid value for "product_name", the character length must be smaller than or equal to 255.')
283
+ end
284
+
285
+ if !@product_sku.nil? && @product_sku.to_s.length > 255
286
+ invalid_properties.push('invalid value for "product_sku", the character length must be smaller than or equal to 255.')
287
+ end
288
+
289
+ if !@quantity.nil? && @quantity > 9999999999
290
+ invalid_properties.push('invalid value for "quantity", must be smaller than or equal to 9999999999.')
291
+ end
292
+
293
+ if !@quantity.nil? && @quantity < 1
294
+ invalid_properties.push('invalid value for "quantity", must be greater than or equal to 1.')
295
+ end
296
+
297
+ if !@unit_price.nil? && @unit_price.to_s.length > 15
298
+ invalid_properties.push('invalid value for "unit_price", the character length must be smaller than or equal to 15.')
299
+ end
300
+
301
+ if !@unit_of_measure.nil? && @unit_of_measure.to_s.length > 12
302
+ invalid_properties.push('invalid value for "unit_of_measure", the character length must be smaller than or equal to 12.')
303
+ end
304
+
305
+ if !@total_amount.nil? && @total_amount.to_s.length > 13
306
+ invalid_properties.push('invalid value for "total_amount", the character length must be smaller than or equal to 13.')
307
+ end
308
+
309
+ if !@tax_amount.nil? && @tax_amount.to_s.length > 15
310
+ invalid_properties.push('invalid value for "tax_amount", the character length must be smaller than or equal to 15.')
311
+ end
312
+
313
+ if !@tax_rate.nil? && @tax_rate.to_s.length > 7
314
+ invalid_properties.push('invalid value for "tax_rate", the character length must be smaller than or equal to 7.')
315
+ end
316
+
317
+ if !@tax_applied_after_discount.nil? && @tax_applied_after_discount.to_s.length > 1
318
+ invalid_properties.push('invalid value for "tax_applied_after_discount", the character length must be smaller than or equal to 1.')
319
+ end
320
+
321
+ if !@tax_status_indicator.nil? && @tax_status_indicator.to_s.length > 1
322
+ invalid_properties.push('invalid value for "tax_status_indicator", the character length must be smaller than or equal to 1.')
323
+ end
324
+
325
+ if !@tax_type_code.nil? && @tax_type_code.to_s.length > 4
326
+ invalid_properties.push('invalid value for "tax_type_code", the character length must be smaller than or equal to 4.')
327
+ end
328
+
329
+ if !@type_of_supply.nil? && @type_of_supply.to_s.length > 2
330
+ invalid_properties.push('invalid value for "type_of_supply", the character length must be smaller than or equal to 2.')
331
+ end
332
+
333
+ if !@commodity_code.nil? && @commodity_code.to_s.length > 15
334
+ invalid_properties.push('invalid value for "commodity_code", the character length must be smaller than or equal to 15.')
335
+ end
336
+
337
+ if !@discount_amount.nil? && @discount_amount.to_s.length > 13
338
+ invalid_properties.push('invalid value for "discount_amount", the character length must be smaller than or equal to 13.')
339
+ end
340
+
341
+ if !@discount_rate.nil? && @discount_rate.to_s.length > 6
342
+ invalid_properties.push('invalid value for "discount_rate", the character length must be smaller than or equal to 6.')
343
+ end
344
+
345
+ if !@invoice_number.nil? && @invoice_number.to_s.length > 23
346
+ invalid_properties.push('invalid value for "invoice_number", the character length must be smaller than or equal to 23.')
347
+ end
348
+
349
+ if !@weight.nil? && @weight.to_s.length > 9
350
+ invalid_properties.push('invalid value for "weight", the character length must be smaller than or equal to 9.')
351
+ end
352
+
353
+ if !@weight_identifier.nil? && @weight_identifier.to_s.length > 1
354
+ invalid_properties.push('invalid value for "weight_identifier", the character length must be smaller than or equal to 1.')
355
+ end
356
+
357
+ if !@weight_unit.nil? && @weight_unit.to_s.length > 2
358
+ invalid_properties.push('invalid value for "weight_unit", the character length must be smaller than or equal to 2.')
359
+ end
360
+
361
+ if !@reference_data_code.nil? && @reference_data_code.to_s.length > 2
362
+ invalid_properties.push('invalid value for "reference_data_code", the character length must be smaller than or equal to 2.')
363
+ end
364
+
365
+ if !@reference_data_number.nil? && @reference_data_number.to_s.length > 30
366
+ invalid_properties.push('invalid value for "reference_data_number", the character length must be smaller than or equal to 30.')
367
+ end
368
+
369
+ invalid_properties
370
+ end
371
+
372
+ # Check to see if the all the properties in the model are valid
373
+ # @return true if the model is valid
374
+ def valid?
375
+ return false if !@product_code.nil? && @product_code.to_s.length > 255
376
+ return false if !@product_name.nil? && @product_name.to_s.length > 255
377
+ return false if !@product_sku.nil? && @product_sku.to_s.length > 255
378
+ return false if !@quantity.nil? && @quantity > 9999999999
379
+ return false if !@quantity.nil? && @quantity < 1
380
+ return false if !@unit_price.nil? && @unit_price.to_s.length > 15
381
+ return false if !@unit_of_measure.nil? && @unit_of_measure.to_s.length > 12
382
+ return false if !@total_amount.nil? && @total_amount.to_s.length > 13
383
+ return false if !@tax_amount.nil? && @tax_amount.to_s.length > 15
384
+ return false if !@tax_rate.nil? && @tax_rate.to_s.length > 7
385
+ return false if !@tax_applied_after_discount.nil? && @tax_applied_after_discount.to_s.length > 1
386
+ return false if !@tax_status_indicator.nil? && @tax_status_indicator.to_s.length > 1
387
+ return false if !@tax_type_code.nil? && @tax_type_code.to_s.length > 4
388
+ return false if !@type_of_supply.nil? && @type_of_supply.to_s.length > 2
389
+ return false if !@commodity_code.nil? && @commodity_code.to_s.length > 15
390
+ return false if !@discount_amount.nil? && @discount_amount.to_s.length > 13
391
+ return false if !@discount_rate.nil? && @discount_rate.to_s.length > 6
392
+ return false if !@invoice_number.nil? && @invoice_number.to_s.length > 23
393
+ return false if !@weight.nil? && @weight.to_s.length > 9
394
+ return false if !@weight_identifier.nil? && @weight_identifier.to_s.length > 1
395
+ return false if !@weight_unit.nil? && @weight_unit.to_s.length > 2
396
+ return false if !@reference_data_code.nil? && @reference_data_code.to_s.length > 2
397
+ return false if !@reference_data_number.nil? && @reference_data_number.to_s.length > 30
398
+ true
399
+ end
400
+
401
+ # Custom attribute writer method with validation
402
+ # @param [Object] product_code Value to be assigned
403
+ def product_code=(product_code)
404
+ if !product_code.nil? && product_code.to_s.length > 255
405
+ fail ArgumentError, 'invalid value for "product_code", the character length must be smaller than or equal to 255.'
406
+ end
407
+
408
+ @product_code = product_code
409
+ end
410
+
411
+ # Custom attribute writer method with validation
412
+ # @param [Object] product_name Value to be assigned
413
+ def product_name=(product_name)
414
+ if !product_name.nil? && product_name.to_s.length > 255
415
+ fail ArgumentError, 'invalid value for "product_name", the character length must be smaller than or equal to 255.'
416
+ end
417
+
418
+ @product_name = product_name
419
+ end
420
+
421
+ # Custom attribute writer method with validation
422
+ # @param [Object] product_sku Value to be assigned
423
+ def product_sku=(product_sku)
424
+ if !product_sku.nil? && product_sku.to_s.length > 255
425
+ fail ArgumentError, 'invalid value for "product_sku", the character length must be smaller than or equal to 255.'
426
+ end
427
+
428
+ @product_sku = product_sku
429
+ end
430
+
431
+ # Custom attribute writer method with validation
432
+ # @param [Object] quantity Value to be assigned
433
+ def quantity=(quantity)
434
+ if !quantity.nil? && quantity > 9999999999
435
+ fail ArgumentError, 'invalid value for "quantity", must be smaller than or equal to 9999999999.'
436
+ end
437
+
438
+ if !quantity.nil? && quantity < 1
439
+ fail ArgumentError, 'invalid value for "quantity", must be greater than or equal to 1.'
440
+ end
441
+
442
+ @quantity = quantity
443
+ end
444
+
445
+ # Custom attribute writer method with validation
446
+ # @param [Object] unit_price Value to be assigned
447
+ def unit_price=(unit_price)
448
+ if !unit_price.nil? && unit_price.to_s.length > 15
449
+ fail ArgumentError, 'invalid value for "unit_price", the character length must be smaller than or equal to 15.'
450
+ end
451
+
452
+ @unit_price = unit_price
453
+ end
454
+
455
+ # Custom attribute writer method with validation
456
+ # @param [Object] unit_of_measure Value to be assigned
457
+ def unit_of_measure=(unit_of_measure)
458
+ if !unit_of_measure.nil? && unit_of_measure.to_s.length > 12
459
+ fail ArgumentError, 'invalid value for "unit_of_measure", the character length must be smaller than or equal to 12.'
460
+ end
461
+
462
+ @unit_of_measure = unit_of_measure
463
+ end
464
+
465
+ # Custom attribute writer method with validation
466
+ # @param [Object] total_amount Value to be assigned
467
+ def total_amount=(total_amount)
468
+ if !total_amount.nil? && total_amount.to_s.length > 13
469
+ fail ArgumentError, 'invalid value for "total_amount", the character length must be smaller than or equal to 13.'
470
+ end
471
+
472
+ @total_amount = total_amount
473
+ end
474
+
475
+ # Custom attribute writer method with validation
476
+ # @param [Object] tax_amount Value to be assigned
477
+ def tax_amount=(tax_amount)
478
+ if !tax_amount.nil? && tax_amount.to_s.length > 15
479
+ fail ArgumentError, 'invalid value for "tax_amount", the character length must be smaller than or equal to 15.'
480
+ end
481
+
482
+ @tax_amount = tax_amount
483
+ end
484
+
485
+ # Custom attribute writer method with validation
486
+ # @param [Object] tax_rate Value to be assigned
487
+ def tax_rate=(tax_rate)
488
+ if !tax_rate.nil? && tax_rate.to_s.length > 7
489
+ fail ArgumentError, 'invalid value for "tax_rate", the character length must be smaller than or equal to 7.'
490
+ end
491
+
492
+ @tax_rate = tax_rate
493
+ end
494
+
495
+ # Custom attribute writer method with validation
496
+ # @param [Object] tax_applied_after_discount Value to be assigned
497
+ def tax_applied_after_discount=(tax_applied_after_discount)
498
+ if !tax_applied_after_discount.nil? && tax_applied_after_discount.to_s.length > 1
499
+ fail ArgumentError, 'invalid value for "tax_applied_after_discount", the character length must be smaller than or equal to 1.'
500
+ end
501
+
502
+ @tax_applied_after_discount = tax_applied_after_discount
503
+ end
504
+
505
+ # Custom attribute writer method with validation
506
+ # @param [Object] tax_status_indicator Value to be assigned
507
+ def tax_status_indicator=(tax_status_indicator)
508
+ if !tax_status_indicator.nil? && tax_status_indicator.to_s.length > 1
509
+ fail ArgumentError, 'invalid value for "tax_status_indicator", the character length must be smaller than or equal to 1.'
510
+ end
511
+
512
+ @tax_status_indicator = tax_status_indicator
513
+ end
514
+
515
+ # Custom attribute writer method with validation
516
+ # @param [Object] tax_type_code Value to be assigned
517
+ def tax_type_code=(tax_type_code)
518
+ if !tax_type_code.nil? && tax_type_code.to_s.length > 4
519
+ fail ArgumentError, 'invalid value for "tax_type_code", the character length must be smaller than or equal to 4.'
520
+ end
521
+
522
+ @tax_type_code = tax_type_code
523
+ end
524
+
525
+ # Custom attribute writer method with validation
526
+ # @param [Object] type_of_supply Value to be assigned
527
+ def type_of_supply=(type_of_supply)
528
+ if !type_of_supply.nil? && type_of_supply.to_s.length > 2
529
+ fail ArgumentError, 'invalid value for "type_of_supply", the character length must be smaller than or equal to 2.'
530
+ end
531
+
532
+ @type_of_supply = type_of_supply
533
+ end
534
+
535
+ # Custom attribute writer method with validation
536
+ # @param [Object] commodity_code Value to be assigned
537
+ def commodity_code=(commodity_code)
538
+ if !commodity_code.nil? && commodity_code.to_s.length > 15
539
+ fail ArgumentError, 'invalid value for "commodity_code", the character length must be smaller than or equal to 15.'
540
+ end
541
+
542
+ @commodity_code = commodity_code
543
+ end
544
+
545
+ # Custom attribute writer method with validation
546
+ # @param [Object] discount_amount Value to be assigned
547
+ def discount_amount=(discount_amount)
548
+ if !discount_amount.nil? && discount_amount.to_s.length > 13
549
+ fail ArgumentError, 'invalid value for "discount_amount", the character length must be smaller than or equal to 13.'
550
+ end
551
+
552
+ @discount_amount = discount_amount
553
+ end
554
+
555
+ # Custom attribute writer method with validation
556
+ # @param [Object] discount_rate Value to be assigned
557
+ def discount_rate=(discount_rate)
558
+ if !discount_rate.nil? && discount_rate.to_s.length > 6
559
+ fail ArgumentError, 'invalid value for "discount_rate", the character length must be smaller than or equal to 6.'
560
+ end
561
+
562
+ @discount_rate = discount_rate
563
+ end
564
+
565
+ # Custom attribute writer method with validation
566
+ # @param [Object] invoice_number Value to be assigned
567
+ def invoice_number=(invoice_number)
568
+ if !invoice_number.nil? && invoice_number.to_s.length > 23
569
+ fail ArgumentError, 'invalid value for "invoice_number", the character length must be smaller than or equal to 23.'
570
+ end
571
+
572
+ @invoice_number = invoice_number
573
+ end
574
+
575
+ # Custom attribute writer method with validation
576
+ # @param [Object] weight Value to be assigned
577
+ def weight=(weight)
578
+ if !weight.nil? && weight.to_s.length > 9
579
+ fail ArgumentError, 'invalid value for "weight", the character length must be smaller than or equal to 9.'
580
+ end
581
+
582
+ @weight = weight
583
+ end
584
+
585
+ # Custom attribute writer method with validation
586
+ # @param [Object] weight_identifier Value to be assigned
587
+ def weight_identifier=(weight_identifier)
588
+ if !weight_identifier.nil? && weight_identifier.to_s.length > 1
589
+ fail ArgumentError, 'invalid value for "weight_identifier", the character length must be smaller than or equal to 1.'
590
+ end
591
+
592
+ @weight_identifier = weight_identifier
593
+ end
594
+
595
+ # Custom attribute writer method with validation
596
+ # @param [Object] weight_unit Value to be assigned
597
+ def weight_unit=(weight_unit)
598
+ if !weight_unit.nil? && weight_unit.to_s.length > 2
599
+ fail ArgumentError, 'invalid value for "weight_unit", the character length must be smaller than or equal to 2.'
600
+ end
601
+
602
+ @weight_unit = weight_unit
603
+ end
604
+
605
+ # Custom attribute writer method with validation
606
+ # @param [Object] reference_data_code Value to be assigned
607
+ def reference_data_code=(reference_data_code)
608
+ if !reference_data_code.nil? && reference_data_code.to_s.length > 2
609
+ fail ArgumentError, 'invalid value for "reference_data_code", the character length must be smaller than or equal to 2.'
610
+ end
611
+
612
+ @reference_data_code = reference_data_code
613
+ end
614
+
615
+ # Custom attribute writer method with validation
616
+ # @param [Object] reference_data_number Value to be assigned
617
+ def reference_data_number=(reference_data_number)
618
+ if !reference_data_number.nil? && reference_data_number.to_s.length > 30
619
+ fail ArgumentError, 'invalid value for "reference_data_number", the character length must be smaller than or equal to 30.'
620
+ end
621
+
622
+ @reference_data_number = reference_data_number
623
+ end
624
+
625
+ # Checks equality by comparing each attribute.
626
+ # @param [Object] Object to be compared
627
+ def ==(o)
628
+ return true if self.equal?(o)
629
+ self.class == o.class &&
630
+ product_code == o.product_code &&
631
+ product_name == o.product_name &&
632
+ product_sku == o.product_sku &&
633
+ quantity == o.quantity &&
634
+ unit_price == o.unit_price &&
635
+ unit_of_measure == o.unit_of_measure &&
636
+ total_amount == o.total_amount &&
637
+ tax_amount == o.tax_amount &&
638
+ tax_rate == o.tax_rate &&
639
+ tax_applied_after_discount == o.tax_applied_after_discount &&
640
+ tax_status_indicator == o.tax_status_indicator &&
641
+ tax_type_code == o.tax_type_code &&
642
+ amount_includes_tax == o.amount_includes_tax &&
643
+ type_of_supply == o.type_of_supply &&
644
+ commodity_code == o.commodity_code &&
645
+ discount_amount == o.discount_amount &&
646
+ discount_applied == o.discount_applied &&
647
+ discount_rate == o.discount_rate &&
648
+ invoice_number == o.invoice_number &&
649
+ tax_details == o.tax_details &&
650
+ fulfillment_type == o.fulfillment_type &&
651
+ weight == o.weight &&
652
+ weight_identifier == o.weight_identifier &&
653
+ weight_unit == o.weight_unit &&
654
+ reference_data_code == o.reference_data_code &&
655
+ reference_data_number == o.reference_data_number
656
+ end
657
+
658
+ # @see the `==` method
659
+ # @param [Object] Object to be compared
660
+ def eql?(o)
661
+ self == o
662
+ end
663
+
664
+ # Calculates hash code according to all attributes.
665
+ # @return [Fixnum] Hash code
666
+ def hash
667
+ [product_code, product_name, product_sku, quantity, unit_price, unit_of_measure, total_amount, tax_amount, tax_rate, tax_applied_after_discount, tax_status_indicator, tax_type_code, amount_includes_tax, type_of_supply, commodity_code, discount_amount, discount_applied, discount_rate, invoice_number, tax_details, fulfillment_type, weight, weight_identifier, weight_unit, reference_data_code, reference_data_number].hash
668
+ end
669
+
670
+ # Builds the object from hash
671
+ # @param [Hash] attributes Model attributes in the form of hash
672
+ # @return [Object] Returns the model itself
673
+ def build_from_hash(attributes)
674
+ return nil unless attributes.is_a?(Hash)
675
+ self.class.swagger_types.each_pair do |key, type|
676
+ if type =~ /\AArray<(.*)>/i
677
+ # check to ensure the input is an array given that the the attribute
678
+ # is documented as an array but the input is not
679
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
680
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
681
+ end
682
+ elsif !attributes[self.class.attribute_map[key]].nil?
683
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
684
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
685
+ end
686
+
687
+ self
688
+ end
689
+
690
+ # Deserializes the data based on type
691
+ # @param string type Data type
692
+ # @param string value Value to be deserialized
693
+ # @return [Object] Deserialized data
694
+ def _deserialize(type, value)
695
+ case type.to_sym
696
+ when :DateTime
697
+ DateTime.parse(value)
698
+ when :Date
699
+ Date.parse(value)
700
+ when :String
701
+ value.to_s
702
+ when :Integer
703
+ value.to_i
704
+ when :Float
705
+ value.to_f
706
+ when :BOOLEAN
707
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
708
+ true
709
+ else
710
+ false
711
+ end
712
+ when :Object
713
+ # generic object (usually a Hash), return directly
714
+ value
715
+ when /\AArray<(?<inner_type>.+)>\z/
716
+ inner_type = Regexp.last_match[:inner_type]
717
+ value.map { |v| _deserialize(inner_type, v) }
718
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
719
+ k_type = Regexp.last_match[:k_type]
720
+ v_type = Regexp.last_match[:v_type]
721
+ {}.tap do |hash|
722
+ value.each do |k, v|
723
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
724
+ end
725
+ end
726
+ else # model
727
+ temp_model = CyberSource.const_get(type).new
728
+ temp_model.build_from_hash(value)
729
+ end
730
+ end
731
+
732
+ # Returns the string representation of the object
733
+ # @return [String] String presentation of the object
734
+ def to_s
735
+ to_hash.to_s
736
+ end
737
+
738
+ # to_body is an alias to to_hash (backward compatibility)
739
+ # @return [Hash] Returns the object in the form of hash
740
+ def to_body
741
+ to_hash
742
+ end
743
+
744
+ # Returns the object in the form of hash
745
+ # @return [Hash] Returns the object in the form of hash
746
+ def to_hash
747
+ hash = {}
748
+ self.class.attribute_map.each_pair do |attr, param|
749
+ value = self.send(attr)
750
+ next if value.nil?
751
+ hash[param] = _to_hash(value)
752
+ end
753
+ hash
754
+ end
755
+
756
+ # Outputs non-array value in the form of hash
757
+ # For object, use to_hash. Otherwise, just return the value
758
+ # @param [Object] value Any valid value
759
+ # @return [Hash] Returns the value in the form of hash
760
+ def _to_hash(value)
761
+ if value.is_a?(Array)
762
+ value.compact.map { |v| _to_hash(v) }
763
+ elsif value.is_a?(Hash)
764
+ {}.tap do |hash|
765
+ value.each { |k, v| hash[k] = _to_hash(v) }
766
+ end
767
+ elsif value.respond_to? :to_hash
768
+ value.to_hash
769
+ else
770
+ value
771
+ end
772
+ end
773
+ end
774
+ end