cybersource_rest_client 0.0.65 → 0.0.67

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 (255) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/core/MerchantConfig.rb +2 -0
  3. data/lib/cybersource_rest_client/api/batches_api.rb +1 -1
  4. data/lib/cybersource_rest_client/api/billing_agreements_api.rb +3 -3
  5. data/lib/cybersource_rest_client/api/bin_lookup_api.rb +1 -1
  6. data/lib/cybersource_rest_client/api/capture_api.rb +1 -1
  7. data/lib/cybersource_rest_client/api/create_new_webhooks_api.rb +2 -2
  8. data/lib/cybersource_rest_client/api/credit_api.rb +1 -1
  9. data/lib/cybersource_rest_client/api/customer_api.rb +2 -2
  10. data/lib/cybersource_rest_client/api/customer_payment_instrument_api.rb +2 -2
  11. data/lib/cybersource_rest_client/api/customer_shipping_address_api.rb +2 -2
  12. data/lib/cybersource_rest_client/api/decision_manager_api.rb +5 -5
  13. data/lib/cybersource_rest_client/api/emv_tag_details_api.rb +1 -1
  14. data/lib/cybersource_rest_client/api/flex_api_api.rb +92 -0
  15. data/lib/cybersource_rest_client/api/instrument_identifier_api.rb +3 -3
  16. data/lib/cybersource_rest_client/api/invoice_settings_api.rb +1 -1
  17. data/lib/cybersource_rest_client/api/invoices_api.rb +2 -2
  18. data/lib/cybersource_rest_client/api/manage_webhooks_api.rb +2 -2
  19. data/lib/cybersource_rest_client/api/merchant_boarding_api.rb +1 -3
  20. data/lib/cybersource_rest_client/api/microform_integration_api.rb +1 -1
  21. data/lib/cybersource_rest_client/api/orders_api.rb +167 -0
  22. data/lib/cybersource_rest_client/api/payer_authentication_api.rb +3 -3
  23. data/lib/cybersource_rest_client/api/payment_instrument_api.rb +2 -2
  24. data/lib/cybersource_rest_client/api/payments_api.rb +6 -6
  25. data/lib/cybersource_rest_client/api/payouts_api.rb +1 -1
  26. data/lib/cybersource_rest_client/api/plans_api.rb +2 -2
  27. data/lib/cybersource_rest_client/api/push_funds_api.rb +1 -1
  28. data/lib/cybersource_rest_client/api/refund_api.rb +2 -2
  29. data/lib/cybersource_rest_client/api/replay_webhooks_api.rb +1 -1
  30. data/lib/cybersource_rest_client/api/report_subscriptions_api.rb +2 -2
  31. data/lib/cybersource_rest_client/api/reports_api.rb +1 -1
  32. data/lib/cybersource_rest_client/api/reversal_api.rb +2 -2
  33. data/lib/cybersource_rest_client/api/search_transactions_api.rb +1 -1
  34. data/lib/cybersource_rest_client/api/subscriptions_api.rb +2 -2
  35. data/lib/cybersource_rest_client/api/taxes_api.rb +2 -2
  36. data/lib/cybersource_rest_client/api/token_api.rb +1 -1
  37. data/lib/cybersource_rest_client/api/unified_checkout_capture_context_api.rb +1 -1
  38. data/lib/cybersource_rest_client/api/user_management_search_api.rb +1 -1
  39. data/lib/cybersource_rest_client/api/verification_api.rb +2 -2
  40. data/lib/cybersource_rest_client/api/void_api.rb +5 -5
  41. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information.rb +314 -360
  42. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_business_information.rb +437 -483
  43. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc.rb +337 -381
  44. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc_deposit_bank_account.rb +297 -330
  45. data/lib/cybersource_rest_client/models/boardingv1registrations_registration_information.rb +271 -329
  46. data/lib/cybersource_rest_client/models/card_processing_config_common.rb +433 -445
  47. data/lib/cybersource_rest_client/models/card_processing_config_common_acquirer.rb +23 -1
  48. data/lib/cybersource_rest_client/models/card_processing_config_common_merchant_descriptor_information.rb +16 -5
  49. data/lib/cybersource_rest_client/models/card_processing_config_common_processors.rb +719 -720
  50. data/lib/cybersource_rest_client/models/check_payer_auth_enrollment_request.rb +321 -321
  51. data/lib/cybersource_rest_client/models/create_order_request.rb +229 -0
  52. data/lib/cybersource_rest_client/models/create_payment_request.rb +462 -462
  53. data/lib/cybersource_rest_client/models/flexv2sessions_fields.rb +199 -0
  54. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information.rb +209 -0
  55. data/lib/cybersource_rest_client/models/{inline_response_400_5_details.rb → flexv2sessions_fields_order_information_amount_details.rb} +199 -201
  56. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_amount_details_total_amount.rb +189 -0
  57. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_bill_to.rb +309 -0
  58. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_ship_to.rb +289 -0
  59. data/lib/cybersource_rest_client/models/flexv2sessions_fields_payment_information.rb +189 -0
  60. data/lib/cybersource_rest_client/models/flexv2sessions_fields_payment_information_card.rb +229 -0
  61. data/lib/cybersource_rest_client/models/generate_capture_context_request.rb +227 -225
  62. data/lib/cybersource_rest_client/models/generate_flex_api_capture_context_request.rb +189 -0
  63. data/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +293 -290
  64. data/lib/cybersource_rest_client/models/inline_response_200_1.rb +253 -253
  65. data/lib/cybersource_rest_client/models/inline_response_200_1_integration_information.rb +204 -204
  66. data/lib/cybersource_rest_client/models/inline_response_200_1_integration_information_tenant_configurations.rb +1 -34
  67. data/lib/cybersource_rest_client/models/inline_response_200_2.rb +213 -213
  68. data/lib/cybersource_rest_client/models/inline_response_200_3.rb +335 -335
  69. data/lib/cybersource_rest_client/models/inline_response_200_5.rb +251 -251
  70. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded.rb +191 -191
  71. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded__links.rb +191 -191
  72. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded__links_reports.rb +190 -190
  73. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded_batches.rb +295 -295
  74. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded_totals.rb +229 -229
  75. data/lib/cybersource_rest_client/models/inline_response_200_5__links.rb +200 -200
  76. data/lib/cybersource_rest_client/models/inline_response_200_6.rb +290 -290
  77. data/lib/cybersource_rest_client/models/inline_response_200_6__links.rb +201 -201
  78. data/lib/cybersource_rest_client/models/inline_response_200_6__links_report.rb +189 -189
  79. data/lib/cybersource_rest_client/models/inline_response_200_6_billing.rb +219 -219
  80. data/lib/cybersource_rest_client/models/inline_response_200_7.rb +292 -292
  81. data/lib/cybersource_rest_client/models/inline_response_200_7_records.rb +209 -209
  82. data/lib/cybersource_rest_client/models/inline_response_200_7_response_record.rb +307 -307
  83. data/lib/cybersource_rest_client/models/inline_response_200_7_response_record_additional_updates.rb +242 -242
  84. data/lib/cybersource_rest_client/models/inline_response_200_7_source_record.rb +295 -295
  85. data/lib/cybersource_rest_client/models/inline_response_201_2.rb +281 -315
  86. data/lib/cybersource_rest_client/models/inline_response_201_2_integration_information_tenant_configurations.rb +253 -286
  87. data/lib/cybersource_rest_client/models/inline_response_201_2_registration_information.rb +222 -256
  88. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments.rb +359 -359
  89. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_card_processing_configuration_status.rb +255 -299
  90. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_card_processing_subscription_status.rb +234 -278
  91. data/lib/cybersource_rest_client/models/inline_response_400_1.rb +242 -235
  92. data/lib/cybersource_rest_client/models/inline_response_400_1_details.rb +199 -0
  93. data/lib/cybersource_rest_client/models/inline_response_400_2.rb +3 -3
  94. data/lib/cybersource_rest_client/models/inline_response_400_3.rb +1 -1
  95. data/lib/cybersource_rest_client/models/inline_response_400_4.rb +37 -60
  96. data/lib/cybersource_rest_client/models/inline_response_400_5.rb +258 -269
  97. data/lib/cybersource_rest_client/models/{inline_response_400_4_fields.rb → inline_response_400_5_fields.rb} +1 -1
  98. data/lib/cybersource_rest_client/models/inline_response_400_6.rb +35 -75
  99. data/lib/cybersource_rest_client/models/inline_response_400_6_details.rb +201 -199
  100. data/lib/cybersource_rest_client/models/inline_response_404_1.rb +2 -36
  101. data/lib/cybersource_rest_client/models/inline_response_422_1.rb +2 -36
  102. data/lib/cybersource_rest_client/models/inline_response_500_2.rb +1 -35
  103. data/lib/cybersource_rest_client/models/microformv2sessions_checkout_api_initialization.rb +281 -279
  104. data/lib/cybersource_rest_client/models/patch_instrument_identifier_request.rb +1 -1
  105. data/lib/cybersource_rest_client/models/payer_auth_config_card_types_verified_by_visa_currencies.rb +244 -244
  106. data/lib/cybersource_rest_client/models/payer_auth_setup_request.rb +219 -219
  107. data/lib/cybersource_rest_client/models/payments_products.rb +369 -369
  108. data/lib/cybersource_rest_client/models/payments_products_card_present_connect_subscription_information.rb +202 -236
  109. data/lib/cybersource_rest_client/models/payments_products_card_processing_subscription_information.rb +215 -249
  110. data/lib/cybersource_rest_client/models/payments_products_differential_fee_subscription_information.rb +212 -246
  111. data/lib/cybersource_rest_client/models/payments_products_digital_payments_subscription_information.rb +215 -249
  112. data/lib/cybersource_rest_client/models/payments_products_e_check_subscription_information.rb +215 -249
  113. data/lib/cybersource_rest_client/models/payments_products_payer_authentication_subscription_information.rb +202 -236
  114. data/lib/cybersource_rest_client/models/payments_products_service_fee.rb +199 -199
  115. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information.rb +189 -189
  116. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations.rb +266 -266
  117. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_merchant_information.rb +239 -239
  118. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_payment_information.rb +2 -48
  119. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_products.rb +190 -190
  120. data/lib/cybersource_rest_client/models/post_instrument_identifier_enrollment_request.rb +1 -1
  121. data/lib/cybersource_rest_client/models/post_instrument_identifier_request.rb +1 -1
  122. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response.rb +269 -0
  123. data/lib/cybersource_rest_client/models/{tss_v2_transactions_post201_response__embedded_buyer_information.rb → pts_v2_create_order_post201_response_buyer_information.rb} +196 -196
  124. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response_processor_information.rb +224 -0
  125. data/lib/cybersource_rest_client/models/{bin_lookupv400_response.rb → pts_v2_create_order_post400_response.rb} +224 -224
  126. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_1_processor_information.rb +213 -213
  127. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_processor_information.rb +295 -284
  128. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response.rb +305 -295
  129. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_embedded_actions.rb +189 -0
  130. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_embedded_actions_ap_capture.rb +190 -0
  131. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_processor_information.rb +263 -252
  132. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_buyer_information_personal_identification.rb +207 -207
  133. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_payment_information_e_wallet.rb +241 -230
  134. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_embedded_actions_consumer_authentication.rb +212 -212
  135. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +309 -309
  136. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information.rb +227 -217
  137. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_capture_options.rb +196 -0
  138. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +67 -6
  139. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_seller_protection.rb +237 -218
  140. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_processor_information.rb +313 -302
  141. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response.rb +1 -1
  142. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_processor_information.rb +309 -309
  143. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response_processor_information.rb +224 -224
  144. data/lib/cybersource_rest_client/models/pts_v2_update_order_patch201_response.rb +200 -0
  145. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_aggregator_information.rb +240 -0
  146. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_aggregator_information_sub_merchant.rb +196 -0
  147. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_merchant_information.rb +205 -0
  148. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_order_information_amount_details.rb +302 -292
  149. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information.rb +189 -0
  150. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information_emv.rb +196 -0
  151. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information.rb +318 -232
  152. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information_payouts_options.rb +282 -231
  153. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information.rb +446 -378
  154. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_payment_information_card.rb +321 -321
  155. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_personal_identification.rb +256 -239
  156. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information.rb +533 -448
  157. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_account.rb +222 -222
  158. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_payment_information_card.rb +317 -317
  159. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_personal_identification.rb +256 -256
  160. data/lib/cybersource_rest_client/models/ptsv2intents_client_reference_information.rb +196 -0
  161. data/lib/cybersource_rest_client/models/ptsv2intents_merchant_information.rb +223 -0
  162. data/lib/cybersource_rest_client/models/ptsv2intents_merchant_information_merchant_descriptor.rb +207 -0
  163. data/lib/cybersource_rest_client/models/ptsv2intents_order_information.rb +231 -0
  164. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_amount_details.rb +315 -0
  165. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_bill_to.rb +196 -0
  166. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_invoice_details.rb +190 -0
  167. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_line_items.rb +309 -0
  168. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_ship_to.rb +332 -0
  169. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information.rb +189 -0
  170. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_payment_type.rb +200 -0
  171. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_payment_type_method.rb +190 -0
  172. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information.rb +219 -0
  173. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information_authorization_options.rb +196 -0
  174. data/lib/cybersource_rest_client/models/ptsv2intentsid_merchant_information.rb +189 -0
  175. data/lib/cybersource_rest_client/models/ptsv2intentsid_order_information.rb +221 -0
  176. data/lib/cybersource_rest_client/models/ptsv2intentsid_processing_information.rb +192 -0
  177. data/lib/cybersource_rest_client/models/ptsv2payments_agreement_information.rb +207 -190
  178. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +229 -229
  179. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +651 -641
  180. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_octsurcharge.rb +196 -0
  181. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +721 -704
  182. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +1 -1
  183. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_capture_options.rb +264 -247
  184. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +383 -383
  185. data/lib/cybersource_rest_client/models/ptsv2payments_recurring_payment_information.rb +14 -0
  186. data/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb +298 -298
  187. data/lib/cybersource_rest_client/models/ptsv2paymentsid_client_reference_information.rb +22 -5
  188. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_authorization_options.rb +230 -230
  189. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_capture_options.rb +247 -230
  190. data/lib/cybersource_rest_client/models/ptsv2refreshpaymentstatusid_processing_information.rb +192 -192
  191. data/lib/cybersource_rest_client/models/push_funds201_response.rb +337 -317
  192. data/lib/cybersource_rest_client/models/push_funds201_response_error_information.rb +225 -225
  193. data/lib/cybersource_rest_client/models/push_funds201_response_payment_information.rb +189 -0
  194. data/lib/cybersource_rest_client/models/push_funds201_response_payment_information_tokenized_card.rb +205 -0
  195. data/lib/cybersource_rest_client/models/push_funds201_response_processing_information.rb +189 -0
  196. data/lib/cybersource_rest_client/models/push_funds201_response_processing_information_domestic_national_net.rb +197 -0
  197. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information.rb +329 -241
  198. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information_routing.rb +196 -0
  199. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information_settlement.rb +207 -0
  200. data/lib/cybersource_rest_client/models/push_funds201_response_recipient_information.rb +206 -189
  201. data/lib/cybersource_rest_client/models/push_funds502_response.rb +246 -246
  202. data/lib/cybersource_rest_client/models/push_funds_request.rb +264 -239
  203. data/lib/cybersource_rest_client/models/rbsv1subscriptions_processing_information.rb +206 -206
  204. data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response.rb +269 -269
  205. data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response_consumer_authentication_information.rb +622 -622
  206. data/lib/cybersource_rest_client/models/risk_v1_authentications_post201_response.rb +279 -279
  207. data/lib/cybersource_rest_client/models/risk_v1_authentications_post400_response_1.rb +235 -235
  208. data/lib/cybersource_rest_client/models/riskv1authenticationresults_consumer_authentication_information.rb +312 -312
  209. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information.rb +1 -1
  210. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_card.rb +241 -241
  211. data/lib/cybersource_rest_client/models/riskv1authentications_device_information.rb +434 -434
  212. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information.rb +219 -219
  213. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_customer.rb +222 -0
  214. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_client_reference_information.rb +240 -240
  215. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_customer.rb +9 -0
  216. data/lib/cybersource_rest_client/models/riskv1decisions_consumer_authentication_information.rb +795 -812
  217. data/lib/cybersource_rest_client/models/sa_config_payment_methods.rb +191 -213
  218. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier.rb +1 -1
  219. data/lib/cybersource_rest_client/models/{tms_embedded_instrument_identifier_tokenized_card.rb → tmsv2_tokenized_card.rb} +16 -6
  220. data/lib/cybersource_rest_client/models/{tms_embedded_instrument_identifier_tokenized_card_card.rb → tmsv2_tokenized_card_card.rb} +1 -1
  221. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata.rb +189 -0
  222. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art.rb +250 -0
  223. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset.rb +200 -0
  224. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset__links.rb +189 -0
  225. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset__links_self.rb +190 -0
  226. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset.rb +200 -0
  227. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links.rb +189 -0
  228. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links_self.rb +190 -0
  229. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset.rb +200 -0
  230. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links.rb +189 -0
  231. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links_self.rb +190 -0
  232. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset.rb +200 -0
  233. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset__links.rb +189 -0
  234. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset__links_self.rb +190 -0
  235. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset.rb +200 -0
  236. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links.rb +189 -0
  237. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links_self.rb +190 -0
  238. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset.rb +200 -0
  239. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links.rb +189 -0
  240. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links_self.rb +190 -0
  241. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +245 -245
  242. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +383 -383
  243. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_multi_processor_routing.rb +235 -235
  244. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +223 -206
  245. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +392 -392
  246. data/lib/cybersource_rest_client/models/update_order_request.rb +229 -0
  247. data/lib/cybersource_rest_client/models/upv1capturecontexts_capture_mandate.rb +253 -253
  248. data/lib/cybersource_rest_client/models/upv1capturecontexts_checkout_api_initialization.rb +280 -279
  249. data/lib/cybersource_rest_client/models/upv1capturecontexts_order_information_amount_details.rb +201 -199
  250. data/lib/cybersource_rest_client/models/validate_request.rb +249 -249
  251. data/lib/cybersource_rest_client/models/vt_config_card_not_present_global_payment_information_basic_information.rb +273 -317
  252. data/lib/cybersource_rest_client/models/vt_config_card_not_present_global_payment_information_payment_information.rb +315 -337
  253. data/lib/cybersource_rest_client/utilities/tracking/sdk_tracker.rb +5 -1
  254. data/lib/cybersource_rest_client.rb +75 -6
  255. metadata +78 -29
@@ -0,0 +1,196 @@
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 Ptsv2intentsOrderInformationBillTo
16
+ # Email address of the PayPal account holder.
17
+ attr_accessor :email
18
+
19
+ # Attribute mapping from ruby-style variable name to JSON key.
20
+ def self.attribute_map
21
+ {
22
+ :'email' => :'email'
23
+ }
24
+ end
25
+
26
+ # Attribute mapping from JSON key to ruby-style variable name.
27
+ def self.json_map
28
+ {
29
+ :'email' => :'email'
30
+ }
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.swagger_types
35
+ {
36
+ :'email' => :'String'
37
+ }
38
+ end
39
+
40
+ # Initializes the object
41
+ # @param [Hash] attributes Model attributes in the form of hash
42
+ def initialize(attributes = {})
43
+ return unless attributes.is_a?(Hash)
44
+
45
+ # convert string to symbol for hash key
46
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
47
+
48
+ if attributes.has_key?(:'email')
49
+ self.email = attributes[:'email']
50
+ end
51
+ end
52
+
53
+ # Show invalid properties with the reasons. Usually used together with valid?
54
+ # @return Array for valid properties with the reasons
55
+ def list_invalid_properties
56
+ invalid_properties = Array.new
57
+ invalid_properties
58
+ end
59
+
60
+ # Check to see if the all the properties in the model are valid
61
+ # @return true if the model is valid
62
+ def valid?
63
+ true
64
+ end
65
+
66
+ # Custom attribute writer method with validation
67
+ # @param [Object] email Value to be assigned
68
+ def email=(email)
69
+ @email = email
70
+ end
71
+
72
+ # Checks equality by comparing each attribute.
73
+ # @param [Object] Object to be compared
74
+ def ==(o)
75
+ return true if self.equal?(o)
76
+ self.class == o.class &&
77
+ email == o.email
78
+ end
79
+
80
+ # @see the `==` method
81
+ # @param [Object] Object to be compared
82
+ def eql?(o)
83
+ self == o
84
+ end
85
+
86
+ # Calculates hash code according to all attributes.
87
+ # @return [Fixnum] Hash code
88
+ def hash
89
+ [email].hash
90
+ end
91
+
92
+ # Builds the object from hash
93
+ # @param [Hash] attributes Model attributes in the form of hash
94
+ # @return [Object] Returns the model itself
95
+ def build_from_hash(attributes)
96
+ return nil unless attributes.is_a?(Hash)
97
+ self.class.swagger_types.each_pair do |key, type|
98
+ if type =~ /\AArray<(.*)>/i
99
+ # check to ensure the input is an array given that the the attribute
100
+ # is documented as an array but the input is not
101
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
102
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
103
+ end
104
+ elsif !attributes[self.class.attribute_map[key]].nil?
105
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
106
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
107
+ end
108
+
109
+ self
110
+ end
111
+
112
+ # Deserializes the data based on type
113
+ # @param string type Data type
114
+ # @param string value Value to be deserialized
115
+ # @return [Object] Deserialized data
116
+ def _deserialize(type, value)
117
+ case type.to_sym
118
+ when :DateTime
119
+ DateTime.parse(value)
120
+ when :Date
121
+ Date.parse(value)
122
+ when :String
123
+ value.to_s
124
+ when :Integer
125
+ value.to_i
126
+ when :Float
127
+ value.to_f
128
+ when :BOOLEAN
129
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
130
+ true
131
+ else
132
+ false
133
+ end
134
+ when :Object
135
+ # generic object (usually a Hash), return directly
136
+ value
137
+ when /\AArray<(?<inner_type>.+)>\z/
138
+ inner_type = Regexp.last_match[:inner_type]
139
+ value.map { |v| _deserialize(inner_type, v) }
140
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
141
+ k_type = Regexp.last_match[:k_type]
142
+ v_type = Regexp.last_match[:v_type]
143
+ {}.tap do |hash|
144
+ value.each do |k, v|
145
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
146
+ end
147
+ end
148
+ else # model
149
+ temp_model = CyberSource.const_get(type).new
150
+ temp_model.build_from_hash(value)
151
+ end
152
+ end
153
+
154
+ # Returns the string representation of the object
155
+ # @return [String] String presentation of the object
156
+ def to_s
157
+ to_hash.to_s
158
+ end
159
+
160
+ # to_body is an alias to to_hash (backward compatibility)
161
+ # @return [Hash] Returns the object in the form of hash
162
+ def to_body
163
+ to_hash
164
+ end
165
+
166
+ # Returns the object in the form of hash
167
+ # @return [Hash] Returns the object in the form of hash
168
+ def to_hash
169
+ hash = {}
170
+ self.class.attribute_map.each_pair do |attr, param|
171
+ value = self.send(attr)
172
+ next if value.nil?
173
+ hash[param] = _to_hash(value)
174
+ end
175
+ hash
176
+ end
177
+
178
+ # Outputs non-array value in the form of hash
179
+ # For object, use to_hash. Otherwise, just return the value
180
+ # @param [Object] value Any valid value
181
+ # @return [Hash] Returns the value in the form of hash
182
+ def _to_hash(value)
183
+ if value.is_a?(Array)
184
+ value.compact.map { |v| _to_hash(v) }
185
+ elsif value.is_a?(Hash)
186
+ {}.tap do |hash|
187
+ value.each { |k, v| hash[k] = _to_hash(v) }
188
+ end
189
+ elsif value.respond_to? :to_hash
190
+ value.to_hash
191
+ else
192
+ value
193
+ end
194
+ end
195
+ end
196
+ end
@@ -0,0 +1,190 @@
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 Ptsv2intentsOrderInformationInvoiceDetails
16
+ # Brief description of item.
17
+ attr_accessor :product_description
18
+
19
+ # Attribute mapping from ruby-style variable name to JSON key.
20
+ def self.attribute_map
21
+ {
22
+ :'product_description' => :'productDescription'
23
+ }
24
+ end
25
+
26
+ # Attribute mapping from JSON key to ruby-style variable name.
27
+ def self.json_map
28
+ {
29
+ :'product_description' => :'product_description'
30
+ }
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.swagger_types
35
+ {
36
+ :'product_description' => :'String'
37
+ }
38
+ end
39
+
40
+ # Initializes the object
41
+ # @param [Hash] attributes Model attributes in the form of hash
42
+ def initialize(attributes = {})
43
+ return unless attributes.is_a?(Hash)
44
+
45
+ # convert string to symbol for hash key
46
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
47
+
48
+ if attributes.has_key?(:'productDescription')
49
+ self.product_description = attributes[:'productDescription']
50
+ end
51
+ end
52
+
53
+ # Show invalid properties with the reasons. Usually used together with valid?
54
+ # @return Array for valid properties with the reasons
55
+ def list_invalid_properties
56
+ invalid_properties = Array.new
57
+ invalid_properties
58
+ end
59
+
60
+ # Check to see if the all the properties in the model are valid
61
+ # @return true if the model is valid
62
+ def valid?
63
+ true
64
+ end
65
+
66
+ # Checks equality by comparing each attribute.
67
+ # @param [Object] Object to be compared
68
+ def ==(o)
69
+ return true if self.equal?(o)
70
+ self.class == o.class &&
71
+ product_description == o.product_description
72
+ end
73
+
74
+ # @see the `==` method
75
+ # @param [Object] Object to be compared
76
+ def eql?(o)
77
+ self == o
78
+ end
79
+
80
+ # Calculates hash code according to all attributes.
81
+ # @return [Fixnum] Hash code
82
+ def hash
83
+ [product_description].hash
84
+ end
85
+
86
+ # Builds the object from hash
87
+ # @param [Hash] attributes Model attributes in the form of hash
88
+ # @return [Object] Returns the model itself
89
+ def build_from_hash(attributes)
90
+ return nil unless attributes.is_a?(Hash)
91
+ self.class.swagger_types.each_pair do |key, type|
92
+ if type =~ /\AArray<(.*)>/i
93
+ # check to ensure the input is an array given that the the attribute
94
+ # is documented as an array but the input is not
95
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
96
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
97
+ end
98
+ elsif !attributes[self.class.attribute_map[key]].nil?
99
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
100
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
101
+ end
102
+
103
+ self
104
+ end
105
+
106
+ # Deserializes the data based on type
107
+ # @param string type Data type
108
+ # @param string value Value to be deserialized
109
+ # @return [Object] Deserialized data
110
+ def _deserialize(type, value)
111
+ case type.to_sym
112
+ when :DateTime
113
+ DateTime.parse(value)
114
+ when :Date
115
+ Date.parse(value)
116
+ when :String
117
+ value.to_s
118
+ when :Integer
119
+ value.to_i
120
+ when :Float
121
+ value.to_f
122
+ when :BOOLEAN
123
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
124
+ true
125
+ else
126
+ false
127
+ end
128
+ when :Object
129
+ # generic object (usually a Hash), return directly
130
+ value
131
+ when /\AArray<(?<inner_type>.+)>\z/
132
+ inner_type = Regexp.last_match[:inner_type]
133
+ value.map { |v| _deserialize(inner_type, v) }
134
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
135
+ k_type = Regexp.last_match[:k_type]
136
+ v_type = Regexp.last_match[:v_type]
137
+ {}.tap do |hash|
138
+ value.each do |k, v|
139
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
140
+ end
141
+ end
142
+ else # model
143
+ temp_model = CyberSource.const_get(type).new
144
+ temp_model.build_from_hash(value)
145
+ end
146
+ end
147
+
148
+ # Returns the string representation of the object
149
+ # @return [String] String presentation of the object
150
+ def to_s
151
+ to_hash.to_s
152
+ end
153
+
154
+ # to_body is an alias to to_hash (backward compatibility)
155
+ # @return [Hash] Returns the object in the form of hash
156
+ def to_body
157
+ to_hash
158
+ end
159
+
160
+ # Returns the object in the form of hash
161
+ # @return [Hash] Returns the object in the form of hash
162
+ def to_hash
163
+ hash = {}
164
+ self.class.attribute_map.each_pair do |attr, param|
165
+ value = self.send(attr)
166
+ next if value.nil?
167
+ hash[param] = _to_hash(value)
168
+ end
169
+ hash
170
+ end
171
+
172
+ # Outputs non-array value in the form of hash
173
+ # For object, use to_hash. Otherwise, just return the value
174
+ # @param [Object] value Any valid value
175
+ # @return [Hash] Returns the value in the form of hash
176
+ def _to_hash(value)
177
+ if value.is_a?(Array)
178
+ value.compact.map { |v| _to_hash(v) }
179
+ elsif value.is_a?(Hash)
180
+ {}.tap do |hash|
181
+ value.each { |k, v| hash[k] = _to_hash(v) }
182
+ end
183
+ elsif value.respond_to? :to_hash
184
+ value.to_hash
185
+ else
186
+ value
187
+ end
188
+ end
189
+ end
190
+ end
@@ -0,0 +1,309 @@
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 Ptsv2intentsOrderInformationLineItems
16
+ # 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.
17
+ attr_accessor :product_name
18
+
19
+ # Brief description of item.
20
+ attr_accessor :product_description
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
+ # Flag to indicate whether the purchase is categorized as goods or services. Possible values: - 00: goods - 01: services
29
+ attr_accessor :type_of_supply
30
+
31
+ # 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)
32
+ attr_accessor :unit_price
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
+ # Attribute mapping from ruby-style variable name to JSON key.
41
+ def self.attribute_map
42
+ {
43
+ :'product_name' => :'productName',
44
+ :'product_description' => :'productDescription',
45
+ :'product_sku' => :'productSku',
46
+ :'quantity' => :'quantity',
47
+ :'type_of_supply' => :'typeOfSupply',
48
+ :'unit_price' => :'unitPrice',
49
+ :'total_amount' => :'totalAmount',
50
+ :'tax_amount' => :'taxAmount'
51
+ }
52
+ end
53
+
54
+ # Attribute mapping from JSON key to ruby-style variable name.
55
+ def self.json_map
56
+ {
57
+ :'product_name' => :'product_name',
58
+ :'product_description' => :'product_description',
59
+ :'product_sku' => :'product_sku',
60
+ :'quantity' => :'quantity',
61
+ :'type_of_supply' => :'type_of_supply',
62
+ :'unit_price' => :'unit_price',
63
+ :'total_amount' => :'total_amount',
64
+ :'tax_amount' => :'tax_amount'
65
+ }
66
+ end
67
+
68
+ # Attribute type mapping.
69
+ def self.swagger_types
70
+ {
71
+ :'product_name' => :'String',
72
+ :'product_description' => :'String',
73
+ :'product_sku' => :'String',
74
+ :'quantity' => :'Integer',
75
+ :'type_of_supply' => :'String',
76
+ :'unit_price' => :'String',
77
+ :'total_amount' => :'String',
78
+ :'tax_amount' => :'String'
79
+ }
80
+ end
81
+
82
+ # Initializes the object
83
+ # @param [Hash] attributes Model attributes in the form of hash
84
+ def initialize(attributes = {})
85
+ return unless attributes.is_a?(Hash)
86
+
87
+ # convert string to symbol for hash key
88
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
89
+
90
+ if attributes.has_key?(:'productName')
91
+ self.product_name = attributes[:'productName']
92
+ end
93
+
94
+ if attributes.has_key?(:'productDescription')
95
+ self.product_description = attributes[:'productDescription']
96
+ end
97
+
98
+ if attributes.has_key?(:'productSku')
99
+ self.product_sku = attributes[:'productSku']
100
+ end
101
+
102
+ if attributes.has_key?(:'quantity')
103
+ self.quantity = attributes[:'quantity']
104
+ end
105
+
106
+ if attributes.has_key?(:'typeOfSupply')
107
+ self.type_of_supply = attributes[:'typeOfSupply']
108
+ end
109
+
110
+ if attributes.has_key?(:'unitPrice')
111
+ self.unit_price = attributes[:'unitPrice']
112
+ end
113
+
114
+ if attributes.has_key?(:'totalAmount')
115
+ self.total_amount = attributes[:'totalAmount']
116
+ end
117
+
118
+ if attributes.has_key?(:'taxAmount')
119
+ self.tax_amount = attributes[:'taxAmount']
120
+ end
121
+ end
122
+
123
+ # Show invalid properties with the reasons. Usually used together with valid?
124
+ # @return Array for valid properties with the reasons
125
+ def list_invalid_properties
126
+ invalid_properties = Array.new
127
+ invalid_properties
128
+ end
129
+
130
+ # Check to see if the all the properties in the model are valid
131
+ # @return true if the model is valid
132
+ def valid?
133
+ true
134
+ end
135
+
136
+ # Custom attribute writer method with validation
137
+ # @param [Object] product_name Value to be assigned
138
+ def product_name=(product_name)
139
+ @product_name = product_name
140
+ end
141
+
142
+ # Custom attribute writer method with validation
143
+ # @param [Object] product_sku Value to be assigned
144
+ def product_sku=(product_sku)
145
+ @product_sku = product_sku
146
+ end
147
+
148
+ # Custom attribute writer method with validation
149
+ # @param [Object] quantity Value to be assigned
150
+ def quantity=(quantity)
151
+ @quantity = quantity
152
+ end
153
+
154
+ # Custom attribute writer method with validation
155
+ # @param [Object] type_of_supply Value to be assigned
156
+ def type_of_supply=(type_of_supply)
157
+ @type_of_supply = type_of_supply
158
+ end
159
+
160
+ # Custom attribute writer method with validation
161
+ # @param [Object] unit_price Value to be assigned
162
+ def unit_price=(unit_price)
163
+ @unit_price = unit_price
164
+ end
165
+
166
+ # Custom attribute writer method with validation
167
+ # @param [Object] total_amount Value to be assigned
168
+ def total_amount=(total_amount)
169
+ @total_amount = total_amount
170
+ end
171
+
172
+ # Custom attribute writer method with validation
173
+ # @param [Object] tax_amount Value to be assigned
174
+ def tax_amount=(tax_amount)
175
+ @tax_amount = tax_amount
176
+ end
177
+
178
+ # Checks equality by comparing each attribute.
179
+ # @param [Object] Object to be compared
180
+ def ==(o)
181
+ return true if self.equal?(o)
182
+ self.class == o.class &&
183
+ product_name == o.product_name &&
184
+ product_description == o.product_description &&
185
+ product_sku == o.product_sku &&
186
+ quantity == o.quantity &&
187
+ type_of_supply == o.type_of_supply &&
188
+ unit_price == o.unit_price &&
189
+ total_amount == o.total_amount &&
190
+ tax_amount == o.tax_amount
191
+ end
192
+
193
+ # @see the `==` method
194
+ # @param [Object] Object to be compared
195
+ def eql?(o)
196
+ self == o
197
+ end
198
+
199
+ # Calculates hash code according to all attributes.
200
+ # @return [Fixnum] Hash code
201
+ def hash
202
+ [product_name, product_description, product_sku, quantity, type_of_supply, unit_price, total_amount, tax_amount].hash
203
+ end
204
+
205
+ # Builds the object from hash
206
+ # @param [Hash] attributes Model attributes in the form of hash
207
+ # @return [Object] Returns the model itself
208
+ def build_from_hash(attributes)
209
+ return nil unless attributes.is_a?(Hash)
210
+ self.class.swagger_types.each_pair do |key, type|
211
+ if type =~ /\AArray<(.*)>/i
212
+ # check to ensure the input is an array given that the the attribute
213
+ # is documented as an array but the input is not
214
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
215
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
216
+ end
217
+ elsif !attributes[self.class.attribute_map[key]].nil?
218
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
219
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
220
+ end
221
+
222
+ self
223
+ end
224
+
225
+ # Deserializes the data based on type
226
+ # @param string type Data type
227
+ # @param string value Value to be deserialized
228
+ # @return [Object] Deserialized data
229
+ def _deserialize(type, value)
230
+ case type.to_sym
231
+ when :DateTime
232
+ DateTime.parse(value)
233
+ when :Date
234
+ Date.parse(value)
235
+ when :String
236
+ value.to_s
237
+ when :Integer
238
+ value.to_i
239
+ when :Float
240
+ value.to_f
241
+ when :BOOLEAN
242
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
243
+ true
244
+ else
245
+ false
246
+ end
247
+ when :Object
248
+ # generic object (usually a Hash), return directly
249
+ value
250
+ when /\AArray<(?<inner_type>.+)>\z/
251
+ inner_type = Regexp.last_match[:inner_type]
252
+ value.map { |v| _deserialize(inner_type, v) }
253
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
254
+ k_type = Regexp.last_match[:k_type]
255
+ v_type = Regexp.last_match[:v_type]
256
+ {}.tap do |hash|
257
+ value.each do |k, v|
258
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
259
+ end
260
+ end
261
+ else # model
262
+ temp_model = CyberSource.const_get(type).new
263
+ temp_model.build_from_hash(value)
264
+ end
265
+ end
266
+
267
+ # Returns the string representation of the object
268
+ # @return [String] String presentation of the object
269
+ def to_s
270
+ to_hash.to_s
271
+ end
272
+
273
+ # to_body is an alias to to_hash (backward compatibility)
274
+ # @return [Hash] Returns the object in the form of hash
275
+ def to_body
276
+ to_hash
277
+ end
278
+
279
+ # Returns the object in the form of hash
280
+ # @return [Hash] Returns the object in the form of hash
281
+ def to_hash
282
+ hash = {}
283
+ self.class.attribute_map.each_pair do |attr, param|
284
+ value = self.send(attr)
285
+ next if value.nil?
286
+ hash[param] = _to_hash(value)
287
+ end
288
+ hash
289
+ end
290
+
291
+ # Outputs non-array value in the form of hash
292
+ # For object, use to_hash. Otherwise, just return the value
293
+ # @param [Object] value Any valid value
294
+ # @return [Hash] Returns the value in the form of hash
295
+ def _to_hash(value)
296
+ if value.is_a?(Array)
297
+ value.compact.map { |v| _to_hash(v) }
298
+ elsif value.is_a?(Hash)
299
+ {}.tap do |hash|
300
+ value.each { |k, v| hash[k] = _to_hash(v) }
301
+ end
302
+ elsif value.respond_to? :to_hash
303
+ value.to_hash
304
+ else
305
+ value
306
+ end
307
+ end
308
+ end
309
+ end