cybersource_rest_client 0.0.62 → 0.0.64

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (308) hide show
  1. checksums.yaml +4 -4
  2. data/lib/cybersource_rest_client/api/bin_lookup_api.rb +93 -0
  3. data/lib/cybersource_rest_client/api/create_new_webhooks_api.rb +6 -6
  4. data/lib/cybersource_rest_client/api/manage_webhooks_api.rb +3 -3
  5. data/lib/cybersource_rest_client/api/merchant_boarding_api.rb +3 -3
  6. data/lib/cybersource_rest_client/api/transaction_batches_api.rb +4 -4
  7. data/lib/cybersource_rest_client/api/unified_checkout_capture_context_api.rb +2 -2
  8. data/lib/cybersource_rest_client/api_client.rb +28 -26
  9. data/lib/cybersource_rest_client/models/accountupdaterv1batches_included_tokens.rb +3 -3
  10. data/lib/cybersource_rest_client/models/{tss_v2_transactions_post400_response.rb → bin_lookupv400_response.rb} +224 -224
  11. data/lib/cybersource_rest_client/models/binv1binlookup_client_reference_information.rb +222 -0
  12. data/lib/cybersource_rest_client/models/binv1binlookup_payment_information.rb +219 -0
  13. data/lib/cybersource_rest_client/models/binv1binlookup_payment_information_card.rb +196 -0
  14. data/lib/cybersource_rest_client/models/binv1binlookup_processing_information.rb +200 -0
  15. data/lib/cybersource_rest_client/models/binv1binlookup_processing_information_payout_options.rb +213 -0
  16. data/lib/cybersource_rest_client/models/{ptsv1pushfundstransfer_processing_options_funding_options_initiator.rb → binv1binlookup_token_information.rb} +207 -196
  17. data/lib/cybersource_rest_client/models/boardingv1registrations_integration_information_oauth2.rb +3 -3
  18. data/lib/cybersource_rest_client/models/boardingv1registrations_integration_information_tenant_configurations.rb +3 -3
  19. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_business_information.rb +3 -3
  20. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_business_information_address.rb +9 -9
  21. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_business_information_business_contact.rb +12 -12
  22. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc_deposit_bank_account.rb +9 -9
  23. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_owners.rb +15 -15
  24. data/lib/cybersource_rest_client/models/case_management_comments_request.rb +3 -3
  25. data/lib/cybersource_rest_client/models/create_bin_lookup_request.rb +219 -0
  26. data/lib/cybersource_rest_client/models/create_report_subscription_request.rb +6 -6
  27. data/lib/cybersource_rest_client/models/e_check_config_common.rb +9 -9
  28. data/lib/cybersource_rest_client/models/e_check_config_common_processors.rb +3 -3
  29. data/lib/cybersource_rest_client/models/get_all_plans_response_order_information_amount_details.rb +1 -1
  30. data/lib/cybersource_rest_client/models/inline_response_200_2.rb +253 -253
  31. data/lib/cybersource_rest_client/models/inline_response_201_1.rb +248 -315
  32. data/lib/cybersource_rest_client/models/{ptsv1pushfundstransfer_aggregator_information.rb → inline_response_201_1_issuer_information.rb} +264 -223
  33. data/lib/cybersource_rest_client/models/inline_response_201_1_payment_account_information.rb +209 -0
  34. data/lib/cybersource_rest_client/models/inline_response_201_1_payment_account_information_card.rb +277 -0
  35. data/lib/cybersource_rest_client/models/{ptsv1pushfundstransfer_merchant_defined_information.rb → inline_response_201_1_payment_account_information_card_brands.rb} +213 -213
  36. data/lib/cybersource_rest_client/models/inline_response_201_1_payment_account_information_features.rb +320 -0
  37. data/lib/cybersource_rest_client/models/{ptsv1pushfundstransfer_processing_options_funding_options.rb → inline_response_201_1_payment_account_information_network.rb} +190 -189
  38. data/lib/cybersource_rest_client/models/inline_response_201_1_payout_information.rb +216 -0
  39. data/lib/cybersource_rest_client/models/inline_response_201_1_payout_information_pull_funds.rb +213 -0
  40. data/lib/cybersource_rest_client/models/inline_response_201_1_payout_information_push_funds.rb +417 -0
  41. data/lib/cybersource_rest_client/models/inline_response_201_2.rb +315 -222
  42. data/lib/cybersource_rest_client/models/{inline_response_201_1_integration_information.rb → inline_response_201_2_integration_information.rb} +192 -192
  43. data/lib/cybersource_rest_client/models/{inline_response_201_1_integration_information_tenant_configurations.rb → inline_response_201_2_integration_information_tenant_configurations.rb} +286 -286
  44. data/lib/cybersource_rest_client/models/{inline_response_201_1_organization_information.rb → inline_response_201_2_organization_information.rb} +217 -217
  45. data/lib/cybersource_rest_client/models/{inline_response_201_1_product_information_setups.rb → inline_response_201_2_product_information_setups.rb} +214 -214
  46. data/lib/cybersource_rest_client/models/{inline_response_201_1_registration_information.rb → inline_response_201_2_registration_information.rb} +256 -256
  47. data/lib/cybersource_rest_client/models/{inline_response_201_1_setups.rb → inline_response_201_2_setups.rb} +219 -219
  48. data/lib/cybersource_rest_client/models/{inline_response_201_1_setups_commerce_solutions.rb → inline_response_201_2_setups_commerce_solutions.rb} +209 -209
  49. data/lib/cybersource_rest_client/models/{inline_response_201_1_setups_payments.rb → inline_response_201_2_setups_payments.rb} +349 -349
  50. data/lib/cybersource_rest_client/models/{inline_response_201_1_setups_payments_card_processing.rb → inline_response_201_2_setups_payments_card_processing.rb} +199 -199
  51. data/lib/cybersource_rest_client/models/{inline_response_201_1_setups_payments_card_processing_configuration_status.rb → inline_response_201_2_setups_payments_card_processing_configuration_status.rb} +299 -299
  52. data/lib/cybersource_rest_client/models/{inline_response_201_1_setups_payments_card_processing_subscription_status.rb → inline_response_201_2_setups_payments_card_processing_subscription_status.rb} +278 -278
  53. data/lib/cybersource_rest_client/models/{inline_response_201_1_setups_payments_digital_payments.rb → inline_response_201_2_setups_payments_digital_payments.rb} +189 -189
  54. data/lib/cybersource_rest_client/models/{inline_response_201_1_setups_risk.rb → inline_response_201_2_setups_risk.rb} +199 -199
  55. data/lib/cybersource_rest_client/models/{inline_response_201_1_setups_value_added_services.rb → inline_response_201_2_setups_value_added_services.rb} +199 -199
  56. data/lib/cybersource_rest_client/models/inline_response_201_3.rb +222 -347
  57. data/lib/cybersource_rest_client/models/{inline_response_201_2_key_information.rb → inline_response_201_3_key_information.rb} +300 -300
  58. data/lib/cybersource_rest_client/models/{inline_response_201_2_key_information_error_information.rb → inline_response_201_3_key_information_error_information.rb} +202 -202
  59. data/lib/cybersource_rest_client/models/{inline_response_201_2_key_information_error_information_details.rb → inline_response_201_3_key_information_error_information_details.rb} +201 -201
  60. data/lib/cybersource_rest_client/models/inline_response_201_4.rb +347 -222
  61. data/lib/cybersource_rest_client/models/inline_response_201_5.rb +222 -0
  62. data/lib/cybersource_rest_client/models/invoicing_v2_invoice_settings_get200_response_invoice_settings_information.rb +1 -1
  63. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_customer_information.rb +1 -1
  64. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_invoices.rb +248 -248
  65. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_order_information_amount_details.rb +2 -2
  66. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_get200_response.rb +270 -270
  67. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_get200_response_transaction_details.rb +1 -1
  68. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response.rb +258 -258
  69. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_order_information_amount_details.rb +2 -2
  70. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post202_response.rb +235 -235
  71. data/lib/cybersource_rest_client/models/invoicingv2invoice_settings_invoice_settings_information.rb +1 -1
  72. data/lib/cybersource_rest_client/models/invoicingv2invoices_customer_information.rb +2 -2
  73. data/lib/cybersource_rest_client/models/invoicingv2invoices_customer_information_company.rb +1 -1
  74. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_amount_details.rb +2 -2
  75. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_amount_details_freight.rb +225 -225
  76. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_amount_details_tax_details.rb +225 -225
  77. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_line_items.rb +333 -333
  78. data/lib/cybersource_rest_client/models/kmsv2keyssym_client_reference_information.rb +1 -1
  79. data/lib/cybersource_rest_client/models/merchant_initiated_transaction_object.rb +241 -241
  80. data/lib/cybersource_rest_client/models/patch_instrument_identifier_request.rb +2 -2
  81. data/lib/cybersource_rest_client/models/payments_products_payouts_configuration_information_configurations_processor_account.rb +3 -3
  82. data/lib/cybersource_rest_client/models/payments_products_payouts_configuration_information_configurations_pullfunds.rb +6 -6
  83. data/lib/cybersource_rest_client/models/payments_products_payouts_configuration_information_configurations_pushfunds.rb +3 -3
  84. data/lib/cybersource_rest_client/models/post_instrument_identifier_enrollment_request.rb +2 -2
  85. data/lib/cybersource_rest_client/models/post_instrument_identifier_request.rb +2 -2
  86. data/lib/cybersource_rest_client/models/predefined_subscription_request_bean.rb +3 -3
  87. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_credit_amount_details.rb +1 -1
  88. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_processing_information_bank_transfer_options.rb +1 -1
  89. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_processor_information.rb +284 -284
  90. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information_amount_details.rb +1 -1
  91. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_buyer_information_personal_identification.rb +2 -2
  92. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_order_information_amount_details.rb +1 -1
  93. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_processor_information.rb +233 -233
  94. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_order_information_bill_to.rb +1 -1
  95. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_processor_information.rb +249 -249
  96. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_2_order_information_amount_details.rb +1 -1
  97. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_2_processor_information.rb +264 -264
  98. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_buyer_information.rb +3 -3
  99. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information.rb +765 -765
  100. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_installment_information.rb +609 -609
  101. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_issuer_information.rb +264 -264
  102. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information_amount_details.rb +2 -2
  103. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information.rb +5 -5
  104. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_bank.rb +1 -1
  105. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_bank_account.rb +1 -1
  106. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +309 -309
  107. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_insights_information.rb +199 -189
  108. data/lib/cybersource_rest_client/models/{ptsv1pushfundstransfer_processing_information_recurring_options.rb → pts_v2_payments_post201_response_payment_insights_information_orchestration.rb} +192 -190
  109. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_insights_information_response_insights.rb +230 -230
  110. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_point_of_sale_information.rb +223 -223
  111. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information.rb +217 -217
  112. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_bank_transfer_options.rb +2 -2
  113. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +736 -736
  114. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_ach_verification.rb +2 -2
  115. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_card_verification.rb +1 -1
  116. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_electronic_verification_results.rb +5 -5
  117. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_merchant_advice.rb +230 -230
  118. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_order_information_amount_details.rb +2 -2
  119. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_refund_amount_details.rb +1 -1
  120. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_issuer_information.rb +196 -196
  121. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_reversal_amount_details.rb +1 -1
  122. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response_void_amount_details.rb +1 -1
  123. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_order_information_amount_details.rb +2 -2
  124. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_order_information.rb +5 -32
  125. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_order_information_amount_details.rb +74 -13
  126. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information.rb +232 -310
  127. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information_payouts_options.rb +41 -23
  128. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information.rb +18 -43
  129. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_payment_information_card.rb +28 -1
  130. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_personal_identification.rb +33 -7
  131. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information.rb +27 -26
  132. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_account.rb +10 -1
  133. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_payment_information_card.rb +41 -5
  134. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_personal_identification.rb +33 -7
  135. data/lib/cybersource_rest_client/models/ptsv2billingagreements_aggregator_information.rb +1 -1
  136. data/lib/cybersource_rest_client/models/ptsv2billingagreements_buyer_information.rb +247 -247
  137. data/lib/cybersource_rest_client/models/ptsv2billingagreements_client_reference_information.rb +1 -1
  138. data/lib/cybersource_rest_client/models/ptsv2billingagreements_installment_information.rb +326 -326
  139. data/lib/cybersource_rest_client/models/ptsv2billingagreements_merchant_information.rb +285 -285
  140. data/lib/cybersource_rest_client/models/ptsv2billingagreements_merchant_information_merchant_descriptor.rb +241 -241
  141. data/lib/cybersource_rest_client/models/ptsv2billingagreements_order_information_bill_to.rb +1 -1
  142. data/lib/cybersource_rest_client/models/ptsv2billingagreements_payment_information_tokenized_card.rb +275 -275
  143. data/lib/cybersource_rest_client/models/ptsv2billingagreementsid_buyer_information.rb +1 -1
  144. data/lib/cybersource_rest_client/models/ptsv2credits_installment_information.rb +196 -196
  145. data/lib/cybersource_rest_client/models/ptsv2credits_processing_information.rb +453 -453
  146. data/lib/cybersource_rest_client/models/ptsv2credits_processing_information_bank_transfer_options.rb +3 -3
  147. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_buyer_information.rb +1 -1
  148. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_order_information_amount_details.rb +3 -3
  149. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_order_information_line_items.rb +361 -361
  150. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_order_information_ship_to.rb +485 -485
  151. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_payment_information_bank.rb +1 -1
  152. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_payment_information_bank_account.rb +1 -1
  153. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_payment_information_card.rb +275 -275
  154. data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information.rb +2 -2
  155. data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information_sub_merchant.rb +366 -366
  156. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information.rb +4 -4
  157. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +3 -3
  158. data/lib/cybersource_rest_client/models/ptsv2payments_client_reference_information.rb +1 -1
  159. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information.rb +1075 -1075
  160. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information_strong_authentication.rb +308 -308
  161. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information_strong_authentication_issuer_information.rb +196 -196
  162. data/lib/cybersource_rest_client/models/ptsv2payments_installment_information.rb +416 -416
  163. data/lib/cybersource_rest_client/models/ptsv2payments_issuer_information.rb +196 -196
  164. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_defined_information.rb +2 -2
  165. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information.rb +464 -464
  166. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information_merchant_descriptor.rb +405 -405
  167. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_initiated_transaction.rb +2 -2
  168. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +641 -624
  169. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_amex_additional_amounts.rb +1 -1
  170. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_order.rb +332 -332
  171. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_tax_details.rb +286 -286
  172. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_bill_to.rb +1 -1
  173. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_bill_to_company.rb +1 -1
  174. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_invoice_details.rb +444 -444
  175. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_line_items.rb +699 -699
  176. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_ship_to.rb +496 -496
  177. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information.rb +346 -336
  178. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_bank.rb +3 -3
  179. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_bank_account.rb +2 -2
  180. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +428 -428
  181. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_customer.rb +1 -1
  182. data/lib/cybersource_rest_client/models/{ptsv1pushfundstransfer_order_information_surcharge.rb → ptsv2payments_payment_information_payment_account_reference.rb} +196 -196
  183. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_card.rb +377 -377
  184. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information.rb +633 -633
  185. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information_emv.rb +257 -257
  186. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +704 -704
  187. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +2 -2
  188. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options_initiator.rb +1 -1
  189. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_bank_transfer_options.rb +5 -5
  190. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_loan_options.rb +213 -213
  191. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_recurring_options.rb +205 -205
  192. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +315 -315
  193. data/lib/cybersource_rest_client/models/ptsv2payments_token_information.rb +15 -5
  194. data/lib/cybersource_rest_client/models/{tms_embedded_instrument_identifier_token_provisioning_information.rb → ptsv2payments_token_information_token_provisioning_information.rb} +1 -1
  195. data/lib/cybersource_rest_client/models/ptsv2paymentsid_order_information_amount_details.rb +1 -1
  196. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_aggregator_information.rb +2 -2
  197. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_aggregator_information_sub_merchant.rb +332 -332
  198. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_buyer_information.rb +3 -3
  199. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_buyer_information_personal_identification.rb +1 -1
  200. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_installment_information.rb +604 -604
  201. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_merchant_information.rb +267 -267
  202. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_amount_details.rb +5 -5
  203. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_bill_to.rb +1 -1
  204. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_invoice_details.rb +287 -287
  205. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_point_of_sale_information.rb +206 -206
  206. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information.rb +362 -362
  207. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_authorization_options.rb +2 -2
  208. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_client_reference_information.rb +1 -1
  209. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_merchant_information.rb +257 -257
  210. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_order_information_line_items.rb +502 -502
  211. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information.rb +299 -289
  212. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_bank.rb +3 -3
  213. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_bank_account.rb +1 -1
  214. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_card.rb +377 -377
  215. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information.rb +342 -342
  216. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information_recurring_options.rb +192 -192
  217. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_client_reference_information.rb +1 -1
  218. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_order_information_line_items.rb +213 -213
  219. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_processing_information.rb +287 -287
  220. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information_amount_details.rb +2 -2
  221. data/lib/cybersource_rest_client/models/ptsv2payouts_merchant_information.rb +234 -234
  222. data/lib/cybersource_rest_client/models/ptsv2payouts_merchant_information_merchant_descriptor.rb +286 -286
  223. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details.rb +2 -2
  224. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +301 -301
  225. data/lib/cybersource_rest_client/models/ptsv2payouts_recipient_information.rb +5 -39
  226. data/lib/cybersource_rest_client/models/ptsv2refreshpaymentstatusid_payment_information_customer.rb +1 -1
  227. data/lib/cybersource_rest_client/models/ptsv2voids_processing_information.rb +190 -196
  228. data/lib/cybersource_rest_client/models/push_funds201_response_order_information_amount_details.rb +4 -4
  229. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information.rb +3 -37
  230. data/lib/cybersource_rest_client/models/push_funds400_response.rb +1 -1
  231. data/lib/cybersource_rest_client/models/push_funds_request.rb +5 -60
  232. data/lib/cybersource_rest_client/models/rbsv1plans_order_information_amount_details.rb +7 -7
  233. data/lib/cybersource_rest_client/models/rbsv1plans_plan_information.rb +3 -3
  234. data/lib/cybersource_rest_client/models/rbsv1subscriptions_payment_information_customer.rb +3 -3
  235. data/lib/cybersource_rest_client/models/rbsv1subscriptions_subscription_information.rb +3 -3
  236. data/lib/cybersource_rest_client/models/risk_v1_address_verifications_post201_response_address_verification_information.rb +1 -1
  237. data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response_consumer_authentication_information.rb +543 -543
  238. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_consumer_authentication_information.rb +4 -4
  239. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_order_information_amount_details.rb +1 -1
  240. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_payment_information.rb +5 -5
  241. data/lib/cybersource_rest_client/models/riskv1addressverifications_order_information_bill_to.rb +12 -12
  242. data/lib/cybersource_rest_client/models/riskv1addressverifications_order_information_line_items.rb +290 -290
  243. data/lib/cybersource_rest_client/models/riskv1addressverifications_order_information_ship_to.rb +6 -6
  244. data/lib/cybersource_rest_client/models/riskv1authenticationresults_order_information_amount_details.rb +2 -2
  245. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_tokenized_card.rb +258 -258
  246. data/lib/cybersource_rest_client/models/riskv1authentications_buyer_information.rb +1 -1
  247. data/lib/cybersource_rest_client/models/riskv1authentications_order_information_amount_details.rb +8 -8
  248. data/lib/cybersource_rest_client/models/riskv1authentications_order_information_bill_to.rb +22 -22
  249. data/lib/cybersource_rest_client/models/riskv1authentications_order_information_line_items.rb +497 -497
  250. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_card.rb +9 -9
  251. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_tokenized_card.rb +351 -351
  252. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_card.rb +9 -9
  253. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_fluid_data.rb +3 -3
  254. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_tokenized_card.rb +299 -299
  255. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_processing_information.rb +213 -213
  256. data/lib/cybersource_rest_client/models/riskv1decisions_buyer_information.rb +3 -3
  257. data/lib/cybersource_rest_client/models/riskv1decisions_client_reference_information.rb +3 -3
  258. data/lib/cybersource_rest_client/models/riskv1decisions_consumer_authentication_information.rb +1 -1
  259. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_amount_details.rb +223 -223
  260. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_bill_to.rb +1 -1
  261. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_line_items.rb +416 -416
  262. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_tokenized_card.rb +259 -259
  263. data/lib/cybersource_rest_client/models/riskv1decisions_processor_information_card_verification.rb +1 -1
  264. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_bill_to.rb +16 -16
  265. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_line_items.rb +314 -314
  266. data/lib/cybersource_rest_client/models/riskv1liststypeentries_client_reference_information.rb +3 -3
  267. data/lib/cybersource_rest_client/models/riskv1liststypeentries_order_information_bill_to.rb +1 -1
  268. data/lib/cybersource_rest_client/models/riskv1liststypeentries_order_information_line_items.rb +196 -196
  269. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier.rb +2 -2
  270. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier_bank_account.rb +207 -207
  271. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier_tokenized_card.rb +12 -1
  272. data/lib/cybersource_rest_client/models/tms_payment_instrument_processing_info.rb +200 -200
  273. data/lib/cybersource_rest_client/models/tms_payment_instrument_processing_info_bank_transfer_options.rb +196 -196
  274. data/lib/cybersource_rest_client/models/tmsv2customers__embedded_default_payment_instrument_buyer_information.rb +236 -236
  275. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_buyer_information.rb +2 -2
  276. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_consumer_authentication_information.rb +2 -2
  277. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_amount_details.rb +3 -3
  278. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_bill_to.rb +2 -2
  279. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_line_items.rb +292 -292
  280. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_ship_to.rb +349 -349
  281. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank.rb +5 -5
  282. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank_account.rb +2 -2
  283. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_card.rb +365 -365
  284. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_customer.rb +1 -1
  285. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +3 -3
  286. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +1 -1
  287. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options_initiator.rb +222 -222
  288. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +383 -383
  289. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_electronic_verification_results.rb +4 -4
  290. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_buyer_information.rb +1 -1
  291. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_consumer_authentication_information.rb +2 -2
  292. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information_bill_to.rb +1 -1
  293. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +241 -241
  294. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information_providers_fingerprint.rb +231 -231
  295. data/lib/cybersource_rest_client/models/tssv2transactionsemv_tag_details_emv_details_list.rb +6 -6
  296. data/lib/cybersource_rest_client/models/vas_v2_tax_void200_response_void_amount_details.rb +1 -1
  297. data/lib/cybersource_rest_client/models/vasv2tax_buyer_information.rb +1 -1
  298. data/lib/cybersource_rest_client/models/vasv2tax_client_reference_information.rb +1 -1
  299. data/lib/cybersource_rest_client/models/vasv2tax_merchant_information.rb +196 -196
  300. data/lib/cybersource_rest_client/models/vasv2tax_order_information_line_items.rb +403 -403
  301. data/lib/cybersource_rest_client/models/vasv2taxid_client_reference_information.rb +1 -1
  302. data/lib/cybersource_rest_client.rb +39 -30
  303. metadata +42 -33
  304. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_aggregator_information_sub_merchant.rb +0 -332
  305. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_merchant_information.rb +0 -234
  306. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_merchant_information_merchant_descriptor.rb +0 -298
  307. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information.rb +0 -246
  308. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_options.rb +0 -189
@@ -1,502 +1,502 @@
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.4.38
10
- =end
11
-
12
- require 'date'
13
-
14
- module CyberSource
15
- class Ptsv2paymentsidrefundsOrderInformationLineItems
16
- # Type of product. The value for this field is used to identify the product category (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 one of the values related to shipping and/or handling, then `orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and `orderInformation.lineItems[].productSku` fields are required. Optional field. 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/). #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. The Product Codes for the tax service are located in the Cybersource Tax Codes guide. Contact Customer Support to request the guide. If you don't send a tax service Product Code in your tax request, product-based rules or exemptions will not be applied and the transaction will default to fully taxable in the locations where you've indicated you need to collect tax [by way of nexus, no nexus, or seller registration number fields].
17
- attr_accessor :product_code
18
-
19
- # For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values that are related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes.
20
- attr_accessor :product_name
21
-
22
- # Product identifier code. Also known as the 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. #### Tax Calculation Optional field for U.S. and Canadian taxes. Not applicable to international and value added taxes. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.
23
- attr_accessor :product_sku
24
-
25
- # Number of units for this order. Must be a non-negative integer. 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 `default` or one of the other values related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes.
26
- attr_accessor :quantity
27
-
28
- # Per-item price of the product. This value for this field cannot be negative. You must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request. You can include a decimal point (.), but you cannot include any other special characters. The value is truncated to the correct number of decimal places. #### 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. #### 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/) #### Tax Calculation Required field for U.S., Canadian, international and value added taxes. #### 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. #### Maximum Field Lengths For GPN and JCN Gateway: Decimal (10) All other processors: Decimal (15)
29
- attr_accessor :unit_price
30
-
31
- # Unit of measure, or unit of measure code, for the item.
32
- attr_accessor :unit_of_measure
33
-
34
- # 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
35
- attr_accessor :total_amount
36
-
37
- # 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. Optional field. #### Airlines processing Tax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s). Format: English characters only. Optional request field for a line item. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. Note if you send this field in your tax request, the value in the field will override the tax engine
38
- attr_accessor :tax_amount
39
-
40
- # 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/) **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%).
41
- attr_accessor :tax_rate
42
-
43
- # 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.
44
- attr_accessor :tax_applied_after_discount
45
-
46
- # Flag to indicate whether tax is exempted or not included. - 0: tax not included - 1: tax included - 2: transaction is not subject to tax
47
- attr_accessor :tax_status_indicator
48
-
49
- # 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/): #### 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`
50
- attr_accessor :tax_type_code
51
-
52
- # Flag that indicates whether the tax amount is included in the Line Item Total. Possible values: - **true** - **false**
53
- attr_accessor :amount_includes_tax
54
-
55
- # Flag to indicate whether the purchase is categorized as goods or services. Possible values: - 00: goods - 01: services
56
- attr_accessor :type_of_supply
57
-
58
- # Commodity code or International description code used to classify the item. Contact your acquirer for a list of codes.
59
- attr_accessor :commodity_code
60
-
61
- # Discount applied to the item.
62
- attr_accessor :discount_amount
63
-
64
- # 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**
65
- attr_accessor :discount_applied
66
-
67
- # Rate the item is discounted. Maximum of 2 decimal places. Example 5.25 (=5.25%)
68
- attr_accessor :discount_rate
69
-
70
- # 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.
71
- attr_accessor :invoice_number
72
-
73
- attr_accessor :tax_details
74
-
75
- # Attribute mapping from ruby-style variable name to JSON key.
76
- def self.attribute_map
77
- {
78
- :'product_code' => :'productCode',
79
- :'product_name' => :'productName',
80
- :'product_sku' => :'productSku',
81
- :'quantity' => :'quantity',
82
- :'unit_price' => :'unitPrice',
83
- :'unit_of_measure' => :'unitOfMeasure',
84
- :'total_amount' => :'totalAmount',
85
- :'tax_amount' => :'taxAmount',
86
- :'tax_rate' => :'taxRate',
87
- :'tax_applied_after_discount' => :'taxAppliedAfterDiscount',
88
- :'tax_status_indicator' => :'taxStatusIndicator',
89
- :'tax_type_code' => :'taxTypeCode',
90
- :'amount_includes_tax' => :'amountIncludesTax',
91
- :'type_of_supply' => :'typeOfSupply',
92
- :'commodity_code' => :'commodityCode',
93
- :'discount_amount' => :'discountAmount',
94
- :'discount_applied' => :'discountApplied',
95
- :'discount_rate' => :'discountRate',
96
- :'invoice_number' => :'invoiceNumber',
97
- :'tax_details' => :'taxDetails'
98
- }
99
- end
100
-
101
- # Attribute mapping from JSON key to ruby-style variable name.
102
- def self.json_map
103
- {
104
- :'product_code' => :'product_code',
105
- :'product_name' => :'product_name',
106
- :'product_sku' => :'product_sku',
107
- :'quantity' => :'quantity',
108
- :'unit_price' => :'unit_price',
109
- :'unit_of_measure' => :'unit_of_measure',
110
- :'total_amount' => :'total_amount',
111
- :'tax_amount' => :'tax_amount',
112
- :'tax_rate' => :'tax_rate',
113
- :'tax_applied_after_discount' => :'tax_applied_after_discount',
114
- :'tax_status_indicator' => :'tax_status_indicator',
115
- :'tax_type_code' => :'tax_type_code',
116
- :'amount_includes_tax' => :'amount_includes_tax',
117
- :'type_of_supply' => :'type_of_supply',
118
- :'commodity_code' => :'commodity_code',
119
- :'discount_amount' => :'discount_amount',
120
- :'discount_applied' => :'discount_applied',
121
- :'discount_rate' => :'discount_rate',
122
- :'invoice_number' => :'invoice_number',
123
- :'tax_details' => :'tax_details'
124
- }
125
- end
126
-
127
- # Attribute type mapping.
128
- def self.swagger_types
129
- {
130
- :'product_code' => :'String',
131
- :'product_name' => :'String',
132
- :'product_sku' => :'String',
133
- :'quantity' => :'Integer',
134
- :'unit_price' => :'String',
135
- :'unit_of_measure' => :'String',
136
- :'total_amount' => :'String',
137
- :'tax_amount' => :'String',
138
- :'tax_rate' => :'String',
139
- :'tax_applied_after_discount' => :'String',
140
- :'tax_status_indicator' => :'String',
141
- :'tax_type_code' => :'String',
142
- :'amount_includes_tax' => :'BOOLEAN',
143
- :'type_of_supply' => :'String',
144
- :'commodity_code' => :'String',
145
- :'discount_amount' => :'String',
146
- :'discount_applied' => :'BOOLEAN',
147
- :'discount_rate' => :'String',
148
- :'invoice_number' => :'String',
149
- :'tax_details' => :'Array<Ptsv2paymentsOrderInformationAmountDetailsTaxDetails>'
150
- }
151
- end
152
-
153
- # Initializes the object
154
- # @param [Hash] attributes Model attributes in the form of hash
155
- def initialize(attributes = {})
156
- return unless attributes.is_a?(Hash)
157
-
158
- # convert string to symbol for hash key
159
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
160
-
161
- if attributes.has_key?(:'productCode')
162
- self.product_code = attributes[:'productCode']
163
- end
164
-
165
- if attributes.has_key?(:'productName')
166
- self.product_name = attributes[:'productName']
167
- end
168
-
169
- if attributes.has_key?(:'productSku')
170
- self.product_sku = attributes[:'productSku']
171
- end
172
-
173
- if attributes.has_key?(:'quantity')
174
- self.quantity = attributes[:'quantity']
175
- end
176
-
177
- if attributes.has_key?(:'unitPrice')
178
- self.unit_price = attributes[:'unitPrice']
179
- end
180
-
181
- if attributes.has_key?(:'unitOfMeasure')
182
- self.unit_of_measure = attributes[:'unitOfMeasure']
183
- end
184
-
185
- if attributes.has_key?(:'totalAmount')
186
- self.total_amount = attributes[:'totalAmount']
187
- end
188
-
189
- if attributes.has_key?(:'taxAmount')
190
- self.tax_amount = attributes[:'taxAmount']
191
- end
192
-
193
- if attributes.has_key?(:'taxRate')
194
- self.tax_rate = attributes[:'taxRate']
195
- end
196
-
197
- if attributes.has_key?(:'taxAppliedAfterDiscount')
198
- self.tax_applied_after_discount = attributes[:'taxAppliedAfterDiscount']
199
- end
200
-
201
- if attributes.has_key?(:'taxStatusIndicator')
202
- self.tax_status_indicator = attributes[:'taxStatusIndicator']
203
- end
204
-
205
- if attributes.has_key?(:'taxTypeCode')
206
- self.tax_type_code = attributes[:'taxTypeCode']
207
- end
208
-
209
- if attributes.has_key?(:'amountIncludesTax')
210
- self.amount_includes_tax = attributes[:'amountIncludesTax']
211
- end
212
-
213
- if attributes.has_key?(:'typeOfSupply')
214
- self.type_of_supply = attributes[:'typeOfSupply']
215
- end
216
-
217
- if attributes.has_key?(:'commodityCode')
218
- self.commodity_code = attributes[:'commodityCode']
219
- end
220
-
221
- if attributes.has_key?(:'discountAmount')
222
- self.discount_amount = attributes[:'discountAmount']
223
- end
224
-
225
- if attributes.has_key?(:'discountApplied')
226
- self.discount_applied = attributes[:'discountApplied']
227
- end
228
-
229
- if attributes.has_key?(:'discountRate')
230
- self.discount_rate = attributes[:'discountRate']
231
- end
232
-
233
- if attributes.has_key?(:'invoiceNumber')
234
- self.invoice_number = attributes[:'invoiceNumber']
235
- end
236
-
237
- if attributes.has_key?(:'taxDetails')
238
- if (value = attributes[:'taxDetails']).is_a?(Array)
239
- self.tax_details = value
240
- end
241
- end
242
- end
243
-
244
- # Show invalid properties with the reasons. Usually used together with valid?
245
- # @return Array for valid properties with the reasons
246
- def list_invalid_properties
247
- invalid_properties = Array.new
248
- invalid_properties
249
- end
250
-
251
- # Check to see if the all the properties in the model are valid
252
- # @return true if the model is valid
253
- def valid?
254
- true
255
- end
256
-
257
- # Custom attribute writer method with validation
258
- # @param [Object] product_code Value to be assigned
259
- def product_code=(product_code)
260
- @product_code = product_code
261
- end
262
-
263
- # Custom attribute writer method with validation
264
- # @param [Object] product_name Value to be assigned
265
- def product_name=(product_name)
266
- @product_name = product_name
267
- end
268
-
269
- # Custom attribute writer method with validation
270
- # @param [Object] product_sku Value to be assigned
271
- def product_sku=(product_sku)
272
- @product_sku = product_sku
273
- end
274
-
275
- # Custom attribute writer method with validation
276
- # @param [Object] quantity Value to be assigned
277
- def quantity=(quantity)
278
- @quantity = quantity
279
- end
280
-
281
- # Custom attribute writer method with validation
282
- # @param [Object] unit_price Value to be assigned
283
- def unit_price=(unit_price)
284
- @unit_price = unit_price
285
- end
286
-
287
- # Custom attribute writer method with validation
288
- # @param [Object] unit_of_measure Value to be assigned
289
- def unit_of_measure=(unit_of_measure)
290
- @unit_of_measure = unit_of_measure
291
- end
292
-
293
- # Custom attribute writer method with validation
294
- # @param [Object] total_amount Value to be assigned
295
- def total_amount=(total_amount)
296
- @total_amount = total_amount
297
- end
298
-
299
- # Custom attribute writer method with validation
300
- # @param [Object] tax_amount Value to be assigned
301
- def tax_amount=(tax_amount)
302
- @tax_amount = tax_amount
303
- end
304
-
305
- # Custom attribute writer method with validation
306
- # @param [Object] tax_rate Value to be assigned
307
- def tax_rate=(tax_rate)
308
- @tax_rate = tax_rate
309
- end
310
-
311
- # Custom attribute writer method with validation
312
- # @param [Object] tax_applied_after_discount Value to be assigned
313
- def tax_applied_after_discount=(tax_applied_after_discount)
314
- @tax_applied_after_discount = tax_applied_after_discount
315
- end
316
-
317
- # Custom attribute writer method with validation
318
- # @param [Object] tax_status_indicator Value to be assigned
319
- def tax_status_indicator=(tax_status_indicator)
320
- @tax_status_indicator = tax_status_indicator
321
- end
322
-
323
- # Custom attribute writer method with validation
324
- # @param [Object] tax_type_code Value to be assigned
325
- def tax_type_code=(tax_type_code)
326
- @tax_type_code = tax_type_code
327
- end
328
-
329
- # Custom attribute writer method with validation
330
- # @param [Object] type_of_supply Value to be assigned
331
- def type_of_supply=(type_of_supply)
332
- @type_of_supply = type_of_supply
333
- end
334
-
335
- # Custom attribute writer method with validation
336
- # @param [Object] commodity_code Value to be assigned
337
- def commodity_code=(commodity_code)
338
- @commodity_code = commodity_code
339
- end
340
-
341
- # Custom attribute writer method with validation
342
- # @param [Object] discount_amount Value to be assigned
343
- def discount_amount=(discount_amount)
344
- @discount_amount = discount_amount
345
- end
346
-
347
- # Custom attribute writer method with validation
348
- # @param [Object] discount_rate Value to be assigned
349
- def discount_rate=(discount_rate)
350
- @discount_rate = discount_rate
351
- end
352
-
353
- # Custom attribute writer method with validation
354
- # @param [Object] invoice_number Value to be assigned
355
- def invoice_number=(invoice_number)
356
- @invoice_number = invoice_number
357
- end
358
-
359
- # Checks equality by comparing each attribute.
360
- # @param [Object] Object to be compared
361
- def ==(o)
362
- return true if self.equal?(o)
363
- self.class == o.class &&
364
- product_code == o.product_code &&
365
- product_name == o.product_name &&
366
- product_sku == o.product_sku &&
367
- quantity == o.quantity &&
368
- unit_price == o.unit_price &&
369
- unit_of_measure == o.unit_of_measure &&
370
- total_amount == o.total_amount &&
371
- tax_amount == o.tax_amount &&
372
- tax_rate == o.tax_rate &&
373
- tax_applied_after_discount == o.tax_applied_after_discount &&
374
- tax_status_indicator == o.tax_status_indicator &&
375
- tax_type_code == o.tax_type_code &&
376
- amount_includes_tax == o.amount_includes_tax &&
377
- type_of_supply == o.type_of_supply &&
378
- commodity_code == o.commodity_code &&
379
- discount_amount == o.discount_amount &&
380
- discount_applied == o.discount_applied &&
381
- discount_rate == o.discount_rate &&
382
- invoice_number == o.invoice_number &&
383
- tax_details == o.tax_details
384
- end
385
-
386
- # @see the `==` method
387
- # @param [Object] Object to be compared
388
- def eql?(o)
389
- self == o
390
- end
391
-
392
- # Calculates hash code according to all attributes.
393
- # @return [Fixnum] Hash code
394
- def hash
395
- [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].hash
396
- end
397
-
398
- # Builds the object from hash
399
- # @param [Hash] attributes Model attributes in the form of hash
400
- # @return [Object] Returns the model itself
401
- def build_from_hash(attributes)
402
- return nil unless attributes.is_a?(Hash)
403
- self.class.swagger_types.each_pair do |key, type|
404
- if type =~ /\AArray<(.*)>/i
405
- # check to ensure the input is an array given that the the attribute
406
- # is documented as an array but the input is not
407
- if attributes[self.class.attribute_map[key]].is_a?(Array)
408
- self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
409
- end
410
- elsif !attributes[self.class.attribute_map[key]].nil?
411
- self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
412
- end # or else data not found in attributes(hash), not an issue as the data can be optional
413
- end
414
-
415
- self
416
- end
417
-
418
- # Deserializes the data based on type
419
- # @param string type Data type
420
- # @param string value Value to be deserialized
421
- # @return [Object] Deserialized data
422
- def _deserialize(type, value)
423
- case type.to_sym
424
- when :DateTime
425
- DateTime.parse(value)
426
- when :Date
427
- Date.parse(value)
428
- when :String
429
- value.to_s
430
- when :Integer
431
- value.to_i
432
- when :Float
433
- value.to_f
434
- when :BOOLEAN
435
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
436
- true
437
- else
438
- false
439
- end
440
- when :Object
441
- # generic object (usually a Hash), return directly
442
- value
443
- when /\AArray<(?<inner_type>.+)>\z/
444
- inner_type = Regexp.last_match[:inner_type]
445
- value.map { |v| _deserialize(inner_type, v) }
446
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
447
- k_type = Regexp.last_match[:k_type]
448
- v_type = Regexp.last_match[:v_type]
449
- {}.tap do |hash|
450
- value.each do |k, v|
451
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
452
- end
453
- end
454
- else # model
455
- temp_model = CyberSource.const_get(type).new
456
- temp_model.build_from_hash(value)
457
- end
458
- end
459
-
460
- # Returns the string representation of the object
461
- # @return [String] String presentation of the object
462
- def to_s
463
- to_hash.to_s
464
- end
465
-
466
- # to_body is an alias to to_hash (backward compatibility)
467
- # @return [Hash] Returns the object in the form of hash
468
- def to_body
469
- to_hash
470
- end
471
-
472
- # Returns the object in the form of hash
473
- # @return [Hash] Returns the object in the form of hash
474
- def to_hash
475
- hash = {}
476
- self.class.attribute_map.each_pair do |attr, param|
477
- value = self.send(attr)
478
- next if value.nil?
479
- hash[param] = _to_hash(value)
480
- end
481
- hash
482
- end
483
-
484
- # Outputs non-array value in the form of hash
485
- # For object, use to_hash. Otherwise, just return the value
486
- # @param [Object] value Any valid value
487
- # @return [Hash] Returns the value in the form of hash
488
- def _to_hash(value)
489
- if value.is_a?(Array)
490
- value.compact.map { |v| _to_hash(v) }
491
- elsif value.is_a?(Hash)
492
- {}.tap do |hash|
493
- value.each { |k, v| hash[k] = _to_hash(v) }
494
- end
495
- elsif value.respond_to? :to_hash
496
- value.to_hash
497
- else
498
- value
499
- end
500
- end
501
- end
502
- 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.4.38
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module CyberSource
15
+ class Ptsv2paymentsidrefundsOrderInformationLineItems
16
+ # Type of product. The value for this field is used to identify the product category (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 one of the values related to shipping and/or handling, then `orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and `orderInformation.lineItems[].productSku` fields are required. Optional field. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. The Product Codes for the tax service are located in the Cybersource Tax Codes guide. Contact Customer Support to request the guide. If you don't send a tax service Product Code in your tax request, product-based rules or exemptions will not be applied and the transaction will default to fully taxable in the locations where you've indicated you need to collect tax [by way of nexus, no nexus, or seller registration number fields].
17
+ attr_accessor :product_code
18
+
19
+ # For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values that are related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes.
20
+ attr_accessor :product_name
21
+
22
+ # Product identifier code. Also known as the 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. #### Tax Calculation Optional field for U.S. and Canadian taxes. Not applicable to international and value added taxes. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.
23
+ attr_accessor :product_sku
24
+
25
+ # Number of units for this order. Must be a non-negative integer. 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 `default` or one of the other values related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes.
26
+ attr_accessor :quantity
27
+
28
+ # Per-item price of the product. This value for this field cannot be negative. You must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request. You can include a decimal point (.), but you cannot include any other special characters. The value is truncated to the correct number of decimal places. #### 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. #### Tax Calculation Required field for U.S., Canadian, international and value added taxes. #### 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. #### Maximum Field Lengths For GPN and JCN Gateway: Decimal (10) All other processors: Decimal (15)
29
+ attr_accessor :unit_price
30
+
31
+ # Unit of measure, or unit of measure code, for the item.
32
+ attr_accessor :unit_of_measure
33
+
34
+ # 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
35
+ attr_accessor :total_amount
36
+
37
+ # 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. Optional field. #### Airlines processing Tax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s). Format: English characters only. Optional request field for a line item. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. Note if you send this field in your tax request, the value in the field will override the tax engine
38
+ attr_accessor :tax_amount
39
+
40
+ # Tax rate applied to the item. **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%).
41
+ attr_accessor :tax_rate
42
+
43
+ # 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.
44
+ attr_accessor :tax_applied_after_discount
45
+
46
+ # Flag to indicate whether tax is exempted or not included. - 0: tax not included - 1: tax included - 2: transaction is not subject to tax
47
+ attr_accessor :tax_status_indicator
48
+
49
+ # Type of tax being applied to the item. #### 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`
50
+ attr_accessor :tax_type_code
51
+
52
+ # Flag that indicates whether the tax amount is included in the Line Item Total. Possible values: - **true** - **false**
53
+ attr_accessor :amount_includes_tax
54
+
55
+ # Flag to indicate whether the purchase is categorized as goods or services. Possible values: - 00: goods - 01: services
56
+ attr_accessor :type_of_supply
57
+
58
+ # Commodity code or International description code used to classify the item. Contact your acquirer for a list of codes.
59
+ attr_accessor :commodity_code
60
+
61
+ # Discount applied to the item.
62
+ attr_accessor :discount_amount
63
+
64
+ # 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**
65
+ attr_accessor :discount_applied
66
+
67
+ # Rate the item is discounted. Maximum of 2 decimal places. Example 5.25 (=5.25%)
68
+ attr_accessor :discount_rate
69
+
70
+ # 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.
71
+ attr_accessor :invoice_number
72
+
73
+ attr_accessor :tax_details
74
+
75
+ # Attribute mapping from ruby-style variable name to JSON key.
76
+ def self.attribute_map
77
+ {
78
+ :'product_code' => :'productCode',
79
+ :'product_name' => :'productName',
80
+ :'product_sku' => :'productSku',
81
+ :'quantity' => :'quantity',
82
+ :'unit_price' => :'unitPrice',
83
+ :'unit_of_measure' => :'unitOfMeasure',
84
+ :'total_amount' => :'totalAmount',
85
+ :'tax_amount' => :'taxAmount',
86
+ :'tax_rate' => :'taxRate',
87
+ :'tax_applied_after_discount' => :'taxAppliedAfterDiscount',
88
+ :'tax_status_indicator' => :'taxStatusIndicator',
89
+ :'tax_type_code' => :'taxTypeCode',
90
+ :'amount_includes_tax' => :'amountIncludesTax',
91
+ :'type_of_supply' => :'typeOfSupply',
92
+ :'commodity_code' => :'commodityCode',
93
+ :'discount_amount' => :'discountAmount',
94
+ :'discount_applied' => :'discountApplied',
95
+ :'discount_rate' => :'discountRate',
96
+ :'invoice_number' => :'invoiceNumber',
97
+ :'tax_details' => :'taxDetails'
98
+ }
99
+ end
100
+
101
+ # Attribute mapping from JSON key to ruby-style variable name.
102
+ def self.json_map
103
+ {
104
+ :'product_code' => :'product_code',
105
+ :'product_name' => :'product_name',
106
+ :'product_sku' => :'product_sku',
107
+ :'quantity' => :'quantity',
108
+ :'unit_price' => :'unit_price',
109
+ :'unit_of_measure' => :'unit_of_measure',
110
+ :'total_amount' => :'total_amount',
111
+ :'tax_amount' => :'tax_amount',
112
+ :'tax_rate' => :'tax_rate',
113
+ :'tax_applied_after_discount' => :'tax_applied_after_discount',
114
+ :'tax_status_indicator' => :'tax_status_indicator',
115
+ :'tax_type_code' => :'tax_type_code',
116
+ :'amount_includes_tax' => :'amount_includes_tax',
117
+ :'type_of_supply' => :'type_of_supply',
118
+ :'commodity_code' => :'commodity_code',
119
+ :'discount_amount' => :'discount_amount',
120
+ :'discount_applied' => :'discount_applied',
121
+ :'discount_rate' => :'discount_rate',
122
+ :'invoice_number' => :'invoice_number',
123
+ :'tax_details' => :'tax_details'
124
+ }
125
+ end
126
+
127
+ # Attribute type mapping.
128
+ def self.swagger_types
129
+ {
130
+ :'product_code' => :'String',
131
+ :'product_name' => :'String',
132
+ :'product_sku' => :'String',
133
+ :'quantity' => :'Integer',
134
+ :'unit_price' => :'String',
135
+ :'unit_of_measure' => :'String',
136
+ :'total_amount' => :'String',
137
+ :'tax_amount' => :'String',
138
+ :'tax_rate' => :'String',
139
+ :'tax_applied_after_discount' => :'String',
140
+ :'tax_status_indicator' => :'String',
141
+ :'tax_type_code' => :'String',
142
+ :'amount_includes_tax' => :'BOOLEAN',
143
+ :'type_of_supply' => :'String',
144
+ :'commodity_code' => :'String',
145
+ :'discount_amount' => :'String',
146
+ :'discount_applied' => :'BOOLEAN',
147
+ :'discount_rate' => :'String',
148
+ :'invoice_number' => :'String',
149
+ :'tax_details' => :'Array<Ptsv2paymentsOrderInformationAmountDetailsTaxDetails>'
150
+ }
151
+ end
152
+
153
+ # Initializes the object
154
+ # @param [Hash] attributes Model attributes in the form of hash
155
+ def initialize(attributes = {})
156
+ return unless attributes.is_a?(Hash)
157
+
158
+ # convert string to symbol for hash key
159
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
160
+
161
+ if attributes.has_key?(:'productCode')
162
+ self.product_code = attributes[:'productCode']
163
+ end
164
+
165
+ if attributes.has_key?(:'productName')
166
+ self.product_name = attributes[:'productName']
167
+ end
168
+
169
+ if attributes.has_key?(:'productSku')
170
+ self.product_sku = attributes[:'productSku']
171
+ end
172
+
173
+ if attributes.has_key?(:'quantity')
174
+ self.quantity = attributes[:'quantity']
175
+ end
176
+
177
+ if attributes.has_key?(:'unitPrice')
178
+ self.unit_price = attributes[:'unitPrice']
179
+ end
180
+
181
+ if attributes.has_key?(:'unitOfMeasure')
182
+ self.unit_of_measure = attributes[:'unitOfMeasure']
183
+ end
184
+
185
+ if attributes.has_key?(:'totalAmount')
186
+ self.total_amount = attributes[:'totalAmount']
187
+ end
188
+
189
+ if attributes.has_key?(:'taxAmount')
190
+ self.tax_amount = attributes[:'taxAmount']
191
+ end
192
+
193
+ if attributes.has_key?(:'taxRate')
194
+ self.tax_rate = attributes[:'taxRate']
195
+ end
196
+
197
+ if attributes.has_key?(:'taxAppliedAfterDiscount')
198
+ self.tax_applied_after_discount = attributes[:'taxAppliedAfterDiscount']
199
+ end
200
+
201
+ if attributes.has_key?(:'taxStatusIndicator')
202
+ self.tax_status_indicator = attributes[:'taxStatusIndicator']
203
+ end
204
+
205
+ if attributes.has_key?(:'taxTypeCode')
206
+ self.tax_type_code = attributes[:'taxTypeCode']
207
+ end
208
+
209
+ if attributes.has_key?(:'amountIncludesTax')
210
+ self.amount_includes_tax = attributes[:'amountIncludesTax']
211
+ end
212
+
213
+ if attributes.has_key?(:'typeOfSupply')
214
+ self.type_of_supply = attributes[:'typeOfSupply']
215
+ end
216
+
217
+ if attributes.has_key?(:'commodityCode')
218
+ self.commodity_code = attributes[:'commodityCode']
219
+ end
220
+
221
+ if attributes.has_key?(:'discountAmount')
222
+ self.discount_amount = attributes[:'discountAmount']
223
+ end
224
+
225
+ if attributes.has_key?(:'discountApplied')
226
+ self.discount_applied = attributes[:'discountApplied']
227
+ end
228
+
229
+ if attributes.has_key?(:'discountRate')
230
+ self.discount_rate = attributes[:'discountRate']
231
+ end
232
+
233
+ if attributes.has_key?(:'invoiceNumber')
234
+ self.invoice_number = attributes[:'invoiceNumber']
235
+ end
236
+
237
+ if attributes.has_key?(:'taxDetails')
238
+ if (value = attributes[:'taxDetails']).is_a?(Array)
239
+ self.tax_details = value
240
+ end
241
+ end
242
+ end
243
+
244
+ # Show invalid properties with the reasons. Usually used together with valid?
245
+ # @return Array for valid properties with the reasons
246
+ def list_invalid_properties
247
+ invalid_properties = Array.new
248
+ invalid_properties
249
+ end
250
+
251
+ # Check to see if the all the properties in the model are valid
252
+ # @return true if the model is valid
253
+ def valid?
254
+ true
255
+ end
256
+
257
+ # Custom attribute writer method with validation
258
+ # @param [Object] product_code Value to be assigned
259
+ def product_code=(product_code)
260
+ @product_code = product_code
261
+ end
262
+
263
+ # Custom attribute writer method with validation
264
+ # @param [Object] product_name Value to be assigned
265
+ def product_name=(product_name)
266
+ @product_name = product_name
267
+ end
268
+
269
+ # Custom attribute writer method with validation
270
+ # @param [Object] product_sku Value to be assigned
271
+ def product_sku=(product_sku)
272
+ @product_sku = product_sku
273
+ end
274
+
275
+ # Custom attribute writer method with validation
276
+ # @param [Object] quantity Value to be assigned
277
+ def quantity=(quantity)
278
+ @quantity = quantity
279
+ end
280
+
281
+ # Custom attribute writer method with validation
282
+ # @param [Object] unit_price Value to be assigned
283
+ def unit_price=(unit_price)
284
+ @unit_price = unit_price
285
+ end
286
+
287
+ # Custom attribute writer method with validation
288
+ # @param [Object] unit_of_measure Value to be assigned
289
+ def unit_of_measure=(unit_of_measure)
290
+ @unit_of_measure = unit_of_measure
291
+ end
292
+
293
+ # Custom attribute writer method with validation
294
+ # @param [Object] total_amount Value to be assigned
295
+ def total_amount=(total_amount)
296
+ @total_amount = total_amount
297
+ end
298
+
299
+ # Custom attribute writer method with validation
300
+ # @param [Object] tax_amount Value to be assigned
301
+ def tax_amount=(tax_amount)
302
+ @tax_amount = tax_amount
303
+ end
304
+
305
+ # Custom attribute writer method with validation
306
+ # @param [Object] tax_rate Value to be assigned
307
+ def tax_rate=(tax_rate)
308
+ @tax_rate = tax_rate
309
+ end
310
+
311
+ # Custom attribute writer method with validation
312
+ # @param [Object] tax_applied_after_discount Value to be assigned
313
+ def tax_applied_after_discount=(tax_applied_after_discount)
314
+ @tax_applied_after_discount = tax_applied_after_discount
315
+ end
316
+
317
+ # Custom attribute writer method with validation
318
+ # @param [Object] tax_status_indicator Value to be assigned
319
+ def tax_status_indicator=(tax_status_indicator)
320
+ @tax_status_indicator = tax_status_indicator
321
+ end
322
+
323
+ # Custom attribute writer method with validation
324
+ # @param [Object] tax_type_code Value to be assigned
325
+ def tax_type_code=(tax_type_code)
326
+ @tax_type_code = tax_type_code
327
+ end
328
+
329
+ # Custom attribute writer method with validation
330
+ # @param [Object] type_of_supply Value to be assigned
331
+ def type_of_supply=(type_of_supply)
332
+ @type_of_supply = type_of_supply
333
+ end
334
+
335
+ # Custom attribute writer method with validation
336
+ # @param [Object] commodity_code Value to be assigned
337
+ def commodity_code=(commodity_code)
338
+ @commodity_code = commodity_code
339
+ end
340
+
341
+ # Custom attribute writer method with validation
342
+ # @param [Object] discount_amount Value to be assigned
343
+ def discount_amount=(discount_amount)
344
+ @discount_amount = discount_amount
345
+ end
346
+
347
+ # Custom attribute writer method with validation
348
+ # @param [Object] discount_rate Value to be assigned
349
+ def discount_rate=(discount_rate)
350
+ @discount_rate = discount_rate
351
+ end
352
+
353
+ # Custom attribute writer method with validation
354
+ # @param [Object] invoice_number Value to be assigned
355
+ def invoice_number=(invoice_number)
356
+ @invoice_number = invoice_number
357
+ end
358
+
359
+ # Checks equality by comparing each attribute.
360
+ # @param [Object] Object to be compared
361
+ def ==(o)
362
+ return true if self.equal?(o)
363
+ self.class == o.class &&
364
+ product_code == o.product_code &&
365
+ product_name == o.product_name &&
366
+ product_sku == o.product_sku &&
367
+ quantity == o.quantity &&
368
+ unit_price == o.unit_price &&
369
+ unit_of_measure == o.unit_of_measure &&
370
+ total_amount == o.total_amount &&
371
+ tax_amount == o.tax_amount &&
372
+ tax_rate == o.tax_rate &&
373
+ tax_applied_after_discount == o.tax_applied_after_discount &&
374
+ tax_status_indicator == o.tax_status_indicator &&
375
+ tax_type_code == o.tax_type_code &&
376
+ amount_includes_tax == o.amount_includes_tax &&
377
+ type_of_supply == o.type_of_supply &&
378
+ commodity_code == o.commodity_code &&
379
+ discount_amount == o.discount_amount &&
380
+ discount_applied == o.discount_applied &&
381
+ discount_rate == o.discount_rate &&
382
+ invoice_number == o.invoice_number &&
383
+ tax_details == o.tax_details
384
+ end
385
+
386
+ # @see the `==` method
387
+ # @param [Object] Object to be compared
388
+ def eql?(o)
389
+ self == o
390
+ end
391
+
392
+ # Calculates hash code according to all attributes.
393
+ # @return [Fixnum] Hash code
394
+ def hash
395
+ [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].hash
396
+ end
397
+
398
+ # Builds the object from hash
399
+ # @param [Hash] attributes Model attributes in the form of hash
400
+ # @return [Object] Returns the model itself
401
+ def build_from_hash(attributes)
402
+ return nil unless attributes.is_a?(Hash)
403
+ self.class.swagger_types.each_pair do |key, type|
404
+ if type =~ /\AArray<(.*)>/i
405
+ # check to ensure the input is an array given that the the attribute
406
+ # is documented as an array but the input is not
407
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
408
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
409
+ end
410
+ elsif !attributes[self.class.attribute_map[key]].nil?
411
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
412
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
413
+ end
414
+
415
+ self
416
+ end
417
+
418
+ # Deserializes the data based on type
419
+ # @param string type Data type
420
+ # @param string value Value to be deserialized
421
+ # @return [Object] Deserialized data
422
+ def _deserialize(type, value)
423
+ case type.to_sym
424
+ when :DateTime
425
+ DateTime.parse(value)
426
+ when :Date
427
+ Date.parse(value)
428
+ when :String
429
+ value.to_s
430
+ when :Integer
431
+ value.to_i
432
+ when :Float
433
+ value.to_f
434
+ when :BOOLEAN
435
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
436
+ true
437
+ else
438
+ false
439
+ end
440
+ when :Object
441
+ # generic object (usually a Hash), return directly
442
+ value
443
+ when /\AArray<(?<inner_type>.+)>\z/
444
+ inner_type = Regexp.last_match[:inner_type]
445
+ value.map { |v| _deserialize(inner_type, v) }
446
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
447
+ k_type = Regexp.last_match[:k_type]
448
+ v_type = Regexp.last_match[:v_type]
449
+ {}.tap do |hash|
450
+ value.each do |k, v|
451
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
452
+ end
453
+ end
454
+ else # model
455
+ temp_model = CyberSource.const_get(type).new
456
+ temp_model.build_from_hash(value)
457
+ end
458
+ end
459
+
460
+ # Returns the string representation of the object
461
+ # @return [String] String presentation of the object
462
+ def to_s
463
+ to_hash.to_s
464
+ end
465
+
466
+ # to_body is an alias to to_hash (backward compatibility)
467
+ # @return [Hash] Returns the object in the form of hash
468
+ def to_body
469
+ to_hash
470
+ end
471
+
472
+ # Returns the object in the form of hash
473
+ # @return [Hash] Returns the object in the form of hash
474
+ def to_hash
475
+ hash = {}
476
+ self.class.attribute_map.each_pair do |attr, param|
477
+ value = self.send(attr)
478
+ next if value.nil?
479
+ hash[param] = _to_hash(value)
480
+ end
481
+ hash
482
+ end
483
+
484
+ # Outputs non-array value in the form of hash
485
+ # For object, use to_hash. Otherwise, just return the value
486
+ # @param [Object] value Any valid value
487
+ # @return [Hash] Returns the value in the form of hash
488
+ def _to_hash(value)
489
+ if value.is_a?(Array)
490
+ value.compact.map { |v| _to_hash(v) }
491
+ elsif value.is_a?(Hash)
492
+ {}.tap do |hash|
493
+ value.each { |k, v| hash[k] = _to_hash(v) }
494
+ end
495
+ elsif value.respond_to? :to_hash
496
+ value.to_hash
497
+ else
498
+ value
499
+ end
500
+ end
501
+ end
502
+ end