cybersource_rest_client 0.0.72 → 0.0.73

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/cybersource_rest_client/api/batches_api.rb +9 -9
  3. data/lib/cybersource_rest_client/api/device_de_association_v3_api.rb +96 -0
  4. data/lib/cybersource_rest_client/api/device_search_api.rb +96 -0
  5. data/lib/cybersource_rest_client/api/transaction_batches_api.rb +7 -2
  6. data/lib/cybersource_rest_client/models/commerce_solutions_products_account_updater.rb +1 -1
  7. data/lib/cybersource_rest_client/models/commerce_solutions_products_bin_lookup.rb +1 -1
  8. data/lib/cybersource_rest_client/models/commerce_solutions_products_token_management.rb +1 -1
  9. data/lib/cybersource_rest_client/models/create_invoice_request.rb +239 -239
  10. data/lib/cybersource_rest_client/models/create_payment_link_request.rb +234 -234
  11. data/lib/cybersource_rest_client/models/create_subscription_request_1.rb +229 -229
  12. data/lib/cybersource_rest_client/models/create_webhook.rb +267 -267
  13. data/lib/cybersource_rest_client/models/device_de_associate_v3_request.rb +222 -0
  14. data/lib/cybersource_rest_client/models/dmsv3devicesdeassociate_devices.rb +209 -0
  15. data/lib/cybersource_rest_client/models/generate_capture_context_request.rb +240 -240
  16. data/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +303 -303
  17. data/lib/cybersource_rest_client/models/get_subscription_response_1.rb +219 -219
  18. data/lib/cybersource_rest_client/models/get_subscription_response_1__links.rb +199 -199
  19. data/lib/cybersource_rest_client/models/get_subscription_response_1_buyer_information.rb +214 -214
  20. data/lib/cybersource_rest_client/models/get_subscription_response_1_payment_instrument.rb +237 -237
  21. data/lib/cybersource_rest_client/models/get_subscription_response_1_payment_instrument_bank_account.rb +224 -224
  22. data/lib/cybersource_rest_client/models/get_subscription_response_1_payment_instrument_buyer_information.rb +236 -236
  23. data/lib/cybersource_rest_client/models/get_subscription_response_1_payment_instrument_card.rb +242 -242
  24. data/lib/cybersource_rest_client/models/get_subscription_response_1_shipping_address.rb +207 -207
  25. data/lib/cybersource_rest_client/models/inline_response_200.rb +226 -226
  26. data/lib/cybersource_rest_client/models/inline_response_200_1.rb +228 -228
  27. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded.rb +200 -200
  28. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_capture.rb +201 -201
  29. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_capture__links.rb +190 -190
  30. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_capture__links_self.rb +202 -202
  31. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_reversal.rb +201 -201
  32. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_reversal__links.rb +190 -190
  33. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_reversal__links_self.rb +202 -202
  34. data/lib/cybersource_rest_client/models/inline_response_200_2.rb +253 -253
  35. data/lib/cybersource_rest_client/models/inline_response_200_2_integration_information.rb +204 -204
  36. data/lib/cybersource_rest_client/models/inline_response_200_2_integration_information_tenant_configurations.rb +263 -263
  37. data/lib/cybersource_rest_client/models/inline_response_200_3.rb +213 -213
  38. data/lib/cybersource_rest_client/models/inline_response_200_4.rb +312 -312
  39. data/lib/cybersource_rest_client/models/inline_response_200_5.rb +202 -251
  40. data/lib/cybersource_rest_client/models/inline_response_200_6.rb +247 -290
  41. data/lib/cybersource_rest_client/models/inline_response_200_6_devices.rb +371 -0
  42. data/lib/cybersource_rest_client/models/inline_response_200_6_payment_processor_to_terminal_map.rb +200 -0
  43. data/lib/cybersource_rest_client/models/inline_response_200_7.rb +251 -292
  44. data/lib/cybersource_rest_client/models/{inline_response_200_5__embedded.rb → inline_response_200_7__embedded.rb} +191 -191
  45. data/lib/cybersource_rest_client/models/{inline_response_200_5__embedded__links.rb → inline_response_200_7__embedded__links.rb} +191 -191
  46. data/lib/cybersource_rest_client/models/{inline_response_200_6__links_report.rb → inline_response_200_7__embedded__links_reports.rb} +190 -189
  47. data/lib/cybersource_rest_client/models/{inline_response_200_5__embedded_batches.rb → inline_response_200_7__embedded_batches.rb} +295 -295
  48. data/lib/cybersource_rest_client/models/{inline_response_200_5__embedded_totals.rb → inline_response_200_7__embedded_totals.rb} +229 -229
  49. data/lib/cybersource_rest_client/models/{inline_response_200_5__links.rb → inline_response_200_7__links.rb} +200 -200
  50. data/lib/cybersource_rest_client/models/inline_response_200_8.rb +290 -0
  51. data/lib/cybersource_rest_client/models/{inline_response_200_6__links.rb → inline_response_200_8__links.rb} +201 -201
  52. data/lib/cybersource_rest_client/models/{inline_response_200_5__embedded__links_reports.rb → inline_response_200_8__links_report.rb} +189 -190
  53. data/lib/cybersource_rest_client/models/{inline_response_200_6_billing.rb → inline_response_200_8_billing.rb} +219 -219
  54. data/lib/cybersource_rest_client/models/inline_response_200_9.rb +292 -0
  55. data/lib/cybersource_rest_client/models/{inline_response_200_7_records.rb → inline_response_200_9_records.rb} +209 -209
  56. data/lib/cybersource_rest_client/models/{inline_response_200_7_response_record.rb → inline_response_200_9_response_record.rb} +307 -307
  57. data/lib/cybersource_rest_client/models/{inline_response_200_7_response_record_additional_updates.rb → inline_response_200_9_response_record_additional_updates.rb} +242 -242
  58. data/lib/cybersource_rest_client/models/{inline_response_200_7_source_record.rb → inline_response_200_9_source_record.rb} +295 -295
  59. data/lib/cybersource_rest_client/models/inline_response_200_content.rb +223 -223
  60. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments.rb +11 -1
  61. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_alternative_payment_methods.rb +221 -0
  62. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_alternative_payment_methods_configuration_status.rb +200 -0
  63. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_value_added_services.rb +15 -5
  64. data/lib/cybersource_rest_client/models/inline_response_201_4.rb +312 -312
  65. data/lib/cybersource_rest_client/models/inline_response_201_5.rb +277 -277
  66. data/lib/cybersource_rest_client/models/inline_response_201_5_payloads.rb +189 -189
  67. data/lib/cybersource_rest_client/models/inline_response_201_5_payloads_test_payload.rb +190 -190
  68. data/lib/cybersource_rest_client/models/inline_response_201_6.rb +202 -202
  69. data/lib/cybersource_rest_client/models/inline_response_202__links.rb +1 -1
  70. data/lib/cybersource_rest_client/models/inline_response_206.rb +202 -0
  71. data/lib/cybersource_rest_client/models/inline_response_400_5.rb +235 -235
  72. data/lib/cybersource_rest_client/models/inline_response_400_6.rb +258 -258
  73. data/lib/cybersource_rest_client/models/inline_response_400_6_fields.rb +213 -213
  74. data/lib/cybersource_rest_client/models/inline_response_400_7.rb +235 -235
  75. data/lib/cybersource_rest_client/models/inline_response_400_7_details.rb +201 -201
  76. data/lib/cybersource_rest_client/models/inline_response_400_8.rb +236 -0
  77. data/lib/cybersource_rest_client/models/inline_response_400_8_details.rb +212 -0
  78. data/lib/cybersource_rest_client/models/inline_response_401.rb +29 -59
  79. data/lib/cybersource_rest_client/models/inline_response_401_1.rb +253 -0
  80. data/lib/cybersource_rest_client/models/{inline_response_401__links.rb → inline_response_401_1__links.rb} +2 -2
  81. data/lib/cybersource_rest_client/models/{inline_response_401__links_self.rb → inline_response_401_1__links_self.rb} +1 -1
  82. data/lib/cybersource_rest_client/models/{inline_response_401_fields.rb → inline_response_401_1_fields.rb} +1 -1
  83. data/lib/cybersource_rest_client/models/inline_response_403_2.rb +223 -0
  84. data/lib/cybersource_rest_client/models/inline_response_404_1.rb +235 -235
  85. data/lib/cybersource_rest_client/models/inline_response_404_2.rb +211 -211
  86. data/lib/cybersource_rest_client/models/inline_response_404_2_details.rb +199 -199
  87. data/lib/cybersource_rest_client/models/inline_response_404_3.rb +223 -0
  88. data/lib/cybersource_rest_client/models/inline_response_422_1.rb +235 -235
  89. data/lib/cybersource_rest_client/models/inline_response_500_3.rb +223 -0
  90. data/lib/cybersource_rest_client/models/invoicing_v2_invoice_settings_get200_response_invoice_settings_information.rb +380 -380
  91. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response.rb +222 -222
  92. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_invoice_information.rb +201 -201
  93. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_invoices.rb +259 -259
  94. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_order_information.rb +190 -190
  95. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_order_information_amount_details.rb +214 -214
  96. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get400_response.rb +235 -235
  97. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get404_response.rb +235 -235
  98. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_cancel200_response.rb +268 -268
  99. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_get200_response.rb +280 -280
  100. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_get200_response_invoice_history.rb +211 -211
  101. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_get200_response_transaction_details.rb +208 -208
  102. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response.rb +268 -268
  103. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_invoice_information.rb +265 -265
  104. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_order_information.rb +203 -203
  105. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_order_information_amount_details.rb +313 -313
  106. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_put200_response.rb +268 -268
  107. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_send200_response.rb +268 -268
  108. data/lib/cybersource_rest_client/models/invoicingv2invoice_settings_invoice_settings_information.rb +384 -384
  109. data/lib/cybersource_rest_client/models/invoicingv2invoices_client_reference_information.rb +189 -189
  110. data/lib/cybersource_rest_client/models/invoicingv2invoices_client_reference_information_partner.rb +213 -213
  111. data/lib/cybersource_rest_client/models/invoicingv2invoices_invoice_information.rb +281 -281
  112. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information.rb +208 -208
  113. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_amount_details.rb +314 -314
  114. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_amount_details_freight.rb +225 -225
  115. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_amount_details_tax_details.rb +225 -225
  116. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_line_items.rb +333 -333
  117. data/lib/cybersource_rest_client/models/invoicingv2invoices_processing_information.rb +206 -206
  118. data/lib/cybersource_rest_client/models/invoicingv2invoicesid_invoice_information.rb +270 -270
  119. data/lib/cybersource_rest_client/models/iplv2paymentlinks_order_information.rb +213 -213
  120. data/lib/cybersource_rest_client/models/iplv2paymentlinks_order_information_amount_details.rb +245 -245
  121. data/lib/cybersource_rest_client/models/iplv2paymentlinks_order_information_line_items.rb +274 -274
  122. data/lib/cybersource_rest_client/models/iplv2paymentlinks_processing_information.rb +222 -222
  123. data/lib/cybersource_rest_client/models/iplv2paymentlinks_purchase_information.rb +206 -206
  124. data/lib/cybersource_rest_client/models/iplv2paymentlinksid_order_information.rb +208 -208
  125. data/lib/cybersource_rest_client/models/iplv2paymentlinksid_processing_information.rb +217 -217
  126. data/lib/cybersource_rest_client/models/iplv2paymentlinksid_purchase_information.rb +197 -197
  127. data/lib/cybersource_rest_client/models/model_400_upload_batch_file_response.rb +199 -199
  128. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2productsorganization_id_event_types.rb +233 -233
  129. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_products.rb +202 -202
  130. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_products_1.rb +202 -202
  131. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_retry_policy.rb +270 -270
  132. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy.rb +201 -201
  133. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy_1.rb +201 -201
  134. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy_1_config.rb +223 -223
  135. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy_1_config_additional_config.rb +220 -220
  136. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy_config.rb +213 -213
  137. data/lib/cybersource_rest_client/models/payments_products.rb +11 -1
  138. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods.rb +199 -0
  139. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods_additional_configurations.rb +202 -0
  140. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods_configuration_information.rb +189 -0
  141. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods_configuration_information_configurations.rb +203 -0
  142. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods_configuration_information_configurations_processors.rb +193 -0
  143. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods_configuration_payment_methods.rb +248 -0
  144. data/lib/cybersource_rest_client/models/{payments_products_payer_authentication_subscription_information.rb → payments_products_alternative_payment_methods_subscription_information.rb} +1 -1
  145. data/lib/cybersource_rest_client/models/payments_products_currency_conversion.rb +1 -1
  146. data/lib/cybersource_rest_client/models/payments_products_payer_authentication.rb +1 -1
  147. data/lib/cybersource_rest_client/models/payments_products_payouts.rb +1 -1
  148. data/lib/cybersource_rest_client/models/payments_products_secure_acceptance.rb +1 -1
  149. data/lib/cybersource_rest_client/models/payments_products_service_fee.rb +1 -1
  150. data/lib/cybersource_rest_client/models/payments_products_tax.rb +1 -1
  151. data/lib/cybersource_rest_client/models/payments_products_virtual_terminal.rb +1 -1
  152. data/lib/cybersource_rest_client/models/payments_strong_auth_issuer_information.rb +281 -281
  153. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response.rb +222 -222
  154. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_links.rb +259 -259
  155. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_order_information.rb +203 -203
  156. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_order_information_amount_details.rb +236 -236
  157. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_order_information_line_items.rb +231 -231
  158. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_processing_information.rb +191 -191
  159. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_purchase_information.rb +208 -208
  160. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get400_response.rb +235 -235
  161. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get404_response.rb +235 -235
  162. data/lib/cybersource_rest_client/models/pbl_payment_links_get200_response.rb +258 -258
  163. data/lib/cybersource_rest_client/models/pbl_payment_links_post201_response.rb +258 -258
  164. data/lib/cybersource_rest_client/models/pbl_payment_links_post201_response__links.rb +199 -199
  165. data/lib/cybersource_rest_client/models/pbl_payment_links_post201_response_order_information.rb +203 -203
  166. data/lib/cybersource_rest_client/models/pbl_payment_links_post201_response_purchase_information.rb +219 -219
  167. data/lib/cybersource_rest_client/models/post_device_search_request_v3.rb +223 -0
  168. data/lib/cybersource_rest_client/models/post_payment_credentials_request.rb +201 -201
  169. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_error_information.rb +213 -213
  170. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_order_information_amount_details.rb +213 -213
  171. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1.rb +295 -295
  172. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_error_information.rb +213 -213
  173. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_error_information_details.rb +190 -190
  174. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_issuer_information.rb +213 -213
  175. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_order_information.rb +209 -209
  176. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_order_information_amount_details.rb +196 -196
  177. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_payment_information.rb +219 -219
  178. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_payment_information_e_wallet.rb +213 -213
  179. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_processor_information.rb +289 -289
  180. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_2_order_information_amount_details.rb +196 -196
  181. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_error_information.rb +213 -213
  182. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_account_information_card.rb +1 -1
  183. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +1 -1
  184. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +1 -1
  185. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response.rb +305 -305
  186. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_error_information.rb +213 -213
  187. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_order_information_amount_details.rb +247 -247
  188. data/lib/cybersource_rest_client/models/ptsv2billingagreements_payment_information_card.rb +1 -1
  189. data/lib/cybersource_rest_client/models/ptsv2billingagreements_payment_information_tokenized_card.rb +1 -1
  190. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_buyer_information.rb +1 -1
  191. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_order_information_amount_details.rb +400 -400
  192. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_payment_information_card.rb +1 -1
  193. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information.rb +1 -1
  194. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +651 -651
  195. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +1 -1
  196. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_payment_account_reference.rb +1 -1
  197. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_card.rb +1 -1
  198. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information.rb +1 -1
  199. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +789 -789
  200. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_buyer_information.rb +1 -1
  201. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_amount_details.rb +509 -509
  202. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_card.rb +1 -1
  203. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information_amount_details.rb +213 -213
  204. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details.rb +223 -223
  205. data/lib/cybersource_rest_client/models/ptsv2payouts_payment_information_card.rb +1 -1
  206. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +328 -328
  207. data/lib/cybersource_rest_client/models/ptsv2payouts_recipient_information.rb +417 -417
  208. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information.rb +495 -495
  209. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information_account.rb +213 -213
  210. data/lib/cybersource_rest_client/models/rbsv1subscriptions_client_reference_information.rb +6 -6
  211. data/lib/cybersource_rest_client/models/rbsv1subscriptions_client_reference_information_partner.rb +213 -0
  212. data/lib/cybersource_rest_client/models/rbsv1subscriptions_processing_information.rb +206 -206
  213. data/lib/cybersource_rest_client/models/rbsv1subscriptions_processing_information_authorization_options_initiator.rb +1 -1
  214. data/lib/cybersource_rest_client/models/rbsv1subscriptions_subscription_information.rb +39 -5
  215. data/lib/cybersource_rest_client/models/risk_products.rb +15 -5
  216. data/lib/cybersource_rest_client/models/risk_products_decision_manager.rb +1 -1
  217. data/lib/cybersource_rest_client/models/risk_products_fraud_management_essentials.rb +1 -1
  218. data/lib/cybersource_rest_client/models/risk_products_portfolio_risk_controls.rb +199 -0
  219. data/lib/cybersource_rest_client/models/risk_products_portfolio_risk_controls_configuration_information.rb +189 -0
  220. data/lib/cybersource_rest_client/models/risk_products_portfolio_risk_controls_configuration_information_configurations.rb +189 -0
  221. data/lib/cybersource_rest_client/models/riskv1authenticationresults_order_information_amount_details.rb +214 -214
  222. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_card.rb +1 -1
  223. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_tokenized_card.rb +1 -1
  224. data/lib/cybersource_rest_client/models/riskv1authentications_order_information_amount_details.rb +232 -232
  225. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_tokenized_card.rb +1 -1
  226. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_card.rb +1 -1
  227. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_tokenized_card.rb +1 -1
  228. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_card.rb +1 -1
  229. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_tokenized_card.rb +1 -1
  230. data/lib/cybersource_rest_client/models/riskv1liststypeentries_payment_information_card.rb +1 -1
  231. data/lib/cybersource_rest_client/models/save_asym_egress_key.rb +210 -210
  232. data/lib/cybersource_rest_client/models/save_sym_egress_key.rb +210 -210
  233. data/lib/cybersource_rest_client/models/tms_bin_lookup_payment_account_information_card.rb +277 -277
  234. data/lib/cybersource_rest_client/models/tms_bin_lookup_payment_account_information_card_brands.rb +213 -213
  235. data/lib/cybersource_rest_client/models/tms_bin_lookup_payment_account_information_features.rb +430 -430
  236. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card.rb +440 -440
  237. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_card.rb +253 -253
  238. data/lib/cybersource_rest_client/models/tokenizedcard_request.rb +440 -440
  239. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_amount_details.rb +291 -291
  240. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_brands.rb +1 -1
  241. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_card.rb +1 -1
  242. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_issuer_information.rb +264 -264
  243. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +1 -1
  244. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_card.rb +1 -1
  245. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +234 -234
  246. data/lib/cybersource_rest_client/models/update_invoice_request.rb +229 -229
  247. data/lib/cybersource_rest_client/models/update_payment_link_request.rb +230 -230
  248. data/lib/cybersource_rest_client/models/update_status.rb +192 -192
  249. data/lib/cybersource_rest_client/models/update_webhook.rb +269 -269
  250. data/lib/cybersource_rest_client/models/upv1capturecontexts_capture_mandate.rb +286 -286
  251. data/lib/cybersource_rest_client/models/upv1capturecontexts_complete_mandate.rb +208 -208
  252. data/lib/cybersource_rest_client/models/value_added_services_products.rb +15 -5
  253. data/lib/cybersource_rest_client/utilities/multipart/multipart_helper.rb +22 -0
  254. data/lib/cybersource_rest_client.rb +45 -17
  255. metadata +48 -19
@@ -1,509 +1,509 @@
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 Ptsv2paymentsidcapturesOrderInformationAmountDetails
16
- # Grand total for the order. This value cannot be negative. You can include a decimal point (.), but no other special characters. CyberSource truncates the amount to the correct number of decimal places. **Note** For CTV, FDCCompass, Paymentech processors, the maximum length for this field is 12. **Important** Some processors have specific requirements and limitations, such as maximum amounts and maximum field lengths. 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. #### Card Present Required to include either this field or `orderInformation.lineItems[].unitPrice` for the order. #### Invoicing / Pay By Link Required for creating a new invoice or payment link. #### PIN Debit Amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit; however, for all other processors, these fields are required. #### DCC with a Third-Party Provider Set this field to the converted amount that was returned by the DCC provider. You must include either this field or the 1st line item in the order and the specific line-order amount in your request. #### DCC for First Data Not used.
17
- attr_accessor :total_amount
18
-
19
- # Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) #### Used by **Authorization** Required field. **Authorization Reversal** For an authorization reversal (`reversalInformation`) or a capture (`processingOptions.capture` is set to `true`), you must use the same currency that you used in your payment authorization request. #### PIN Debit Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit. #### DCC for First Data Your local currency. #### Tax Calculation Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency.
20
- attr_accessor :currency
21
-
22
- # Total discount amount applied to the order.
23
- attr_accessor :discount_amount
24
-
25
- # Total charges for any import or export duties included in the order.
26
- attr_accessor :duty_amount
27
-
28
- # Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant. When your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not submit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the issuer has chargeback rights for the excess amount. Used by **Capture** Optional field. #### CyberSource through VisaNet Restaurant data is supported only on CyberSource through VisaNet when card is present.
29
- attr_accessor :gratuity_amount
30
-
31
- # Total tax amount for all the items in the order.
32
- attr_accessor :tax_amount
33
-
34
- # Flag that indicates whether a national tax is included in the order total. Possible values: - **0**: national tax not included - **1**: national tax included
35
- attr_accessor :national_tax_included
36
-
37
- # Flag that indicates how the merchant manages discounts. Possible values: - **0**: no invoice level discount included - **1**: tax calculated on the postdiscount invoice total - **2**: tax calculated on the prediscount invoice total
38
- attr_accessor :tax_applied_after_discount
39
-
40
- # Flag that indicates how you calculate tax. Possible values: - **0**: net prices with tax calculated at line item level - **1**: net prices with tax calculated at invoice level - **2**: gross prices with tax provided at line item level - **3**: gross prices with tax provided at invoice level - **4**: no tax applies on the invoice for the transaction
41
- attr_accessor :tax_applied_level
42
-
43
- # For tax amounts that can be categorized as one tax type. This field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field. Possible values: - **056**: sales tax (U.S only) - **TX~**: all taxes (Canada only) Note ~ = space.
44
- attr_accessor :tax_type_code
45
-
46
- # Total freight or shipping and handling charges for the order. When you include this field in your request, you must also include the **totalAmount** field.
47
- attr_accessor :freight_amount
48
-
49
- # Set this field to the converted amount that was returned by the DCC provider.
50
- attr_accessor :foreign_amount
51
-
52
- # Set this field to the converted amount that was returned by the DCC provider.
53
- attr_accessor :foreign_currency
54
-
55
- # Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.
56
- attr_accessor :exchange_rate
57
-
58
- # Time stamp for the exchange rate. This value is returned by the DCC service. Format: `YYYYMMDD~HH:MM` where ~ denotes a space.
59
- attr_accessor :exchange_rate_time_stamp
60
-
61
- attr_accessor :amex_additional_amounts
62
-
63
- attr_accessor :tax_details
64
-
65
- # Service fee. Required for service fee transactions.
66
- attr_accessor :service_fee_amount
67
-
68
- # Your local pricing currency code. For the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)
69
- attr_accessor :original_currency
70
-
71
- # Cashback amount in the acquirer's currency. If a cashback amount is included in the request, it must be included in the `orderInformation.amountDetails.totalAmount` value. This field is supported only on CyberSource through VisaNet. #### Used by **Authorization** Optional. **Authorization Reversal** Optional. #### PIN debit Optional field for PIN debit purchase, PIN debit credit or PIN debit reversal.
72
- attr_accessor :cashback_amount
73
-
74
- # Attribute mapping from ruby-style variable name to JSON key.
75
- def self.attribute_map
76
- {
77
- :'total_amount' => :'totalAmount',
78
- :'currency' => :'currency',
79
- :'discount_amount' => :'discountAmount',
80
- :'duty_amount' => :'dutyAmount',
81
- :'gratuity_amount' => :'gratuityAmount',
82
- :'tax_amount' => :'taxAmount',
83
- :'national_tax_included' => :'nationalTaxIncluded',
84
- :'tax_applied_after_discount' => :'taxAppliedAfterDiscount',
85
- :'tax_applied_level' => :'taxAppliedLevel',
86
- :'tax_type_code' => :'taxTypeCode',
87
- :'freight_amount' => :'freightAmount',
88
- :'foreign_amount' => :'foreignAmount',
89
- :'foreign_currency' => :'foreignCurrency',
90
- :'exchange_rate' => :'exchangeRate',
91
- :'exchange_rate_time_stamp' => :'exchangeRateTimeStamp',
92
- :'amex_additional_amounts' => :'amexAdditionalAmounts',
93
- :'tax_details' => :'taxDetails',
94
- :'service_fee_amount' => :'serviceFeeAmount',
95
- :'original_currency' => :'originalCurrency',
96
- :'cashback_amount' => :'cashbackAmount'
97
- }
98
- end
99
-
100
- # Attribute mapping from JSON key to ruby-style variable name.
101
- def self.json_map
102
- {
103
- :'total_amount' => :'total_amount',
104
- :'currency' => :'currency',
105
- :'discount_amount' => :'discount_amount',
106
- :'duty_amount' => :'duty_amount',
107
- :'gratuity_amount' => :'gratuity_amount',
108
- :'tax_amount' => :'tax_amount',
109
- :'national_tax_included' => :'national_tax_included',
110
- :'tax_applied_after_discount' => :'tax_applied_after_discount',
111
- :'tax_applied_level' => :'tax_applied_level',
112
- :'tax_type_code' => :'tax_type_code',
113
- :'freight_amount' => :'freight_amount',
114
- :'foreign_amount' => :'foreign_amount',
115
- :'foreign_currency' => :'foreign_currency',
116
- :'exchange_rate' => :'exchange_rate',
117
- :'exchange_rate_time_stamp' => :'exchange_rate_time_stamp',
118
- :'amex_additional_amounts' => :'amex_additional_amounts',
119
- :'tax_details' => :'tax_details',
120
- :'service_fee_amount' => :'service_fee_amount',
121
- :'original_currency' => :'original_currency',
122
- :'cashback_amount' => :'cashback_amount'
123
- }
124
- end
125
-
126
- # Attribute type mapping.
127
- def self.swagger_types
128
- {
129
- :'total_amount' => :'String',
130
- :'currency' => :'String',
131
- :'discount_amount' => :'String',
132
- :'duty_amount' => :'String',
133
- :'gratuity_amount' => :'String',
134
- :'tax_amount' => :'String',
135
- :'national_tax_included' => :'String',
136
- :'tax_applied_after_discount' => :'String',
137
- :'tax_applied_level' => :'String',
138
- :'tax_type_code' => :'String',
139
- :'freight_amount' => :'String',
140
- :'foreign_amount' => :'String',
141
- :'foreign_currency' => :'String',
142
- :'exchange_rate' => :'String',
143
- :'exchange_rate_time_stamp' => :'String',
144
- :'amex_additional_amounts' => :'Array<Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts>',
145
- :'tax_details' => :'Array<Ptsv2paymentsOrderInformationAmountDetailsTaxDetails>',
146
- :'service_fee_amount' => :'String',
147
- :'original_currency' => :'String',
148
- :'cashback_amount' => :'String'
149
- }
150
- end
151
-
152
- # Initializes the object
153
- # @param [Hash] attributes Model attributes in the form of hash
154
- def initialize(attributes = {})
155
- return unless attributes.is_a?(Hash)
156
-
157
- # convert string to symbol for hash key
158
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
159
-
160
- if attributes.has_key?(:'totalAmount')
161
- self.total_amount = attributes[:'totalAmount']
162
- end
163
-
164
- if attributes.has_key?(:'currency')
165
- self.currency = attributes[:'currency']
166
- end
167
-
168
- if attributes.has_key?(:'discountAmount')
169
- self.discount_amount = attributes[:'discountAmount']
170
- end
171
-
172
- if attributes.has_key?(:'dutyAmount')
173
- self.duty_amount = attributes[:'dutyAmount']
174
- end
175
-
176
- if attributes.has_key?(:'gratuityAmount')
177
- self.gratuity_amount = attributes[:'gratuityAmount']
178
- end
179
-
180
- if attributes.has_key?(:'taxAmount')
181
- self.tax_amount = attributes[:'taxAmount']
182
- end
183
-
184
- if attributes.has_key?(:'nationalTaxIncluded')
185
- self.national_tax_included = attributes[:'nationalTaxIncluded']
186
- end
187
-
188
- if attributes.has_key?(:'taxAppliedAfterDiscount')
189
- self.tax_applied_after_discount = attributes[:'taxAppliedAfterDiscount']
190
- end
191
-
192
- if attributes.has_key?(:'taxAppliedLevel')
193
- self.tax_applied_level = attributes[:'taxAppliedLevel']
194
- end
195
-
196
- if attributes.has_key?(:'taxTypeCode')
197
- self.tax_type_code = attributes[:'taxTypeCode']
198
- end
199
-
200
- if attributes.has_key?(:'freightAmount')
201
- self.freight_amount = attributes[:'freightAmount']
202
- end
203
-
204
- if attributes.has_key?(:'foreignAmount')
205
- self.foreign_amount = attributes[:'foreignAmount']
206
- end
207
-
208
- if attributes.has_key?(:'foreignCurrency')
209
- self.foreign_currency = attributes[:'foreignCurrency']
210
- end
211
-
212
- if attributes.has_key?(:'exchangeRate')
213
- self.exchange_rate = attributes[:'exchangeRate']
214
- end
215
-
216
- if attributes.has_key?(:'exchangeRateTimeStamp')
217
- self.exchange_rate_time_stamp = attributes[:'exchangeRateTimeStamp']
218
- end
219
-
220
- if attributes.has_key?(:'amexAdditionalAmounts')
221
- if (value = attributes[:'amexAdditionalAmounts']).is_a?(Array)
222
- self.amex_additional_amounts = value
223
- end
224
- end
225
-
226
- if attributes.has_key?(:'taxDetails')
227
- if (value = attributes[:'taxDetails']).is_a?(Array)
228
- self.tax_details = value
229
- end
230
- end
231
-
232
- if attributes.has_key?(:'serviceFeeAmount')
233
- self.service_fee_amount = attributes[:'serviceFeeAmount']
234
- end
235
-
236
- if attributes.has_key?(:'originalCurrency')
237
- self.original_currency = attributes[:'originalCurrency']
238
- end
239
-
240
- if attributes.has_key?(:'cashbackAmount')
241
- self.cashback_amount = attributes[:'cashbackAmount']
242
- end
243
- end
244
-
245
- # Show invalid properties with the reasons. Usually used together with valid?
246
- # @return Array for valid properties with the reasons
247
- def list_invalid_properties
248
- invalid_properties = Array.new
249
- invalid_properties
250
- end
251
-
252
- # Check to see if the all the properties in the model are valid
253
- # @return true if the model is valid
254
- def valid?
255
- true
256
- end
257
-
258
- # Custom attribute writer method with validation
259
- # @param [Object] total_amount Value to be assigned
260
- def total_amount=(total_amount)
261
- @total_amount = total_amount
262
- end
263
-
264
- # Custom attribute writer method with validation
265
- # @param [Object] currency Value to be assigned
266
- def currency=(currency)
267
- @currency = currency
268
- end
269
-
270
- # Custom attribute writer method with validation
271
- # @param [Object] discount_amount Value to be assigned
272
- def discount_amount=(discount_amount)
273
- @discount_amount = discount_amount
274
- end
275
-
276
- # Custom attribute writer method with validation
277
- # @param [Object] duty_amount Value to be assigned
278
- def duty_amount=(duty_amount)
279
- @duty_amount = duty_amount
280
- end
281
-
282
- # Custom attribute writer method with validation
283
- # @param [Object] gratuity_amount Value to be assigned
284
- def gratuity_amount=(gratuity_amount)
285
- @gratuity_amount = gratuity_amount
286
- end
287
-
288
- # Custom attribute writer method with validation
289
- # @param [Object] tax_amount Value to be assigned
290
- def tax_amount=(tax_amount)
291
- @tax_amount = tax_amount
292
- end
293
-
294
- # Custom attribute writer method with validation
295
- # @param [Object] national_tax_included Value to be assigned
296
- def national_tax_included=(national_tax_included)
297
- @national_tax_included = national_tax_included
298
- end
299
-
300
- # Custom attribute writer method with validation
301
- # @param [Object] tax_applied_after_discount Value to be assigned
302
- def tax_applied_after_discount=(tax_applied_after_discount)
303
- @tax_applied_after_discount = tax_applied_after_discount
304
- end
305
-
306
- # Custom attribute writer method with validation
307
- # @param [Object] tax_applied_level Value to be assigned
308
- def tax_applied_level=(tax_applied_level)
309
- @tax_applied_level = tax_applied_level
310
- end
311
-
312
- # Custom attribute writer method with validation
313
- # @param [Object] tax_type_code Value to be assigned
314
- def tax_type_code=(tax_type_code)
315
- @tax_type_code = tax_type_code
316
- end
317
-
318
- # Custom attribute writer method with validation
319
- # @param [Object] freight_amount Value to be assigned
320
- def freight_amount=(freight_amount)
321
- @freight_amount = freight_amount
322
- end
323
-
324
- # Custom attribute writer method with validation
325
- # @param [Object] foreign_amount Value to be assigned
326
- def foreign_amount=(foreign_amount)
327
- @foreign_amount = foreign_amount
328
- end
329
-
330
- # Custom attribute writer method with validation
331
- # @param [Object] foreign_currency Value to be assigned
332
- def foreign_currency=(foreign_currency)
333
- @foreign_currency = foreign_currency
334
- end
335
-
336
- # Custom attribute writer method with validation
337
- # @param [Object] exchange_rate Value to be assigned
338
- def exchange_rate=(exchange_rate)
339
- @exchange_rate = exchange_rate
340
- end
341
-
342
- # Custom attribute writer method with validation
343
- # @param [Object] exchange_rate_time_stamp Value to be assigned
344
- def exchange_rate_time_stamp=(exchange_rate_time_stamp)
345
- @exchange_rate_time_stamp = exchange_rate_time_stamp
346
- end
347
-
348
- # Custom attribute writer method with validation
349
- # @param [Object] service_fee_amount Value to be assigned
350
- def service_fee_amount=(service_fee_amount)
351
- @service_fee_amount = service_fee_amount
352
- end
353
-
354
- # Custom attribute writer method with validation
355
- # @param [Object] original_currency Value to be assigned
356
- def original_currency=(original_currency)
357
- @original_currency = original_currency
358
- end
359
-
360
- # Custom attribute writer method with validation
361
- # @param [Object] cashback_amount Value to be assigned
362
- def cashback_amount=(cashback_amount)
363
- @cashback_amount = cashback_amount
364
- end
365
-
366
- # Checks equality by comparing each attribute.
367
- # @param [Object] Object to be compared
368
- def ==(o)
369
- return true if self.equal?(o)
370
- self.class == o.class &&
371
- total_amount == o.total_amount &&
372
- currency == o.currency &&
373
- discount_amount == o.discount_amount &&
374
- duty_amount == o.duty_amount &&
375
- gratuity_amount == o.gratuity_amount &&
376
- tax_amount == o.tax_amount &&
377
- national_tax_included == o.national_tax_included &&
378
- tax_applied_after_discount == o.tax_applied_after_discount &&
379
- tax_applied_level == o.tax_applied_level &&
380
- tax_type_code == o.tax_type_code &&
381
- freight_amount == o.freight_amount &&
382
- foreign_amount == o.foreign_amount &&
383
- foreign_currency == o.foreign_currency &&
384
- exchange_rate == o.exchange_rate &&
385
- exchange_rate_time_stamp == o.exchange_rate_time_stamp &&
386
- amex_additional_amounts == o.amex_additional_amounts &&
387
- tax_details == o.tax_details &&
388
- service_fee_amount == o.service_fee_amount &&
389
- original_currency == o.original_currency &&
390
- cashback_amount == o.cashback_amount
391
- end
392
-
393
- # @see the `==` method
394
- # @param [Object] Object to be compared
395
- def eql?(o)
396
- self == o
397
- end
398
-
399
- # Calculates hash code according to all attributes.
400
- # @return [Fixnum] Hash code
401
- def hash
402
- [total_amount, currency, discount_amount, duty_amount, gratuity_amount, tax_amount, national_tax_included, tax_applied_after_discount, tax_applied_level, tax_type_code, freight_amount, foreign_amount, foreign_currency, exchange_rate, exchange_rate_time_stamp, amex_additional_amounts, tax_details, service_fee_amount, original_currency, cashback_amount].hash
403
- end
404
-
405
- # Builds the object from hash
406
- # @param [Hash] attributes Model attributes in the form of hash
407
- # @return [Object] Returns the model itself
408
- def build_from_hash(attributes)
409
- return nil unless attributes.is_a?(Hash)
410
- self.class.swagger_types.each_pair do |key, type|
411
- if type =~ /\AArray<(.*)>/i
412
- # check to ensure the input is an array given that the the attribute
413
- # is documented as an array but the input is not
414
- if attributes[self.class.attribute_map[key]].is_a?(Array)
415
- self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
416
- end
417
- elsif !attributes[self.class.attribute_map[key]].nil?
418
- self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
419
- end # or else data not found in attributes(hash), not an issue as the data can be optional
420
- end
421
-
422
- self
423
- end
424
-
425
- # Deserializes the data based on type
426
- # @param string type Data type
427
- # @param string value Value to be deserialized
428
- # @return [Object] Deserialized data
429
- def _deserialize(type, value)
430
- case type.to_sym
431
- when :DateTime
432
- DateTime.parse(value)
433
- when :Date
434
- Date.parse(value)
435
- when :String
436
- value.to_s
437
- when :Integer
438
- value.to_i
439
- when :Float
440
- value.to_f
441
- when :BOOLEAN
442
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
443
- true
444
- else
445
- false
446
- end
447
- when :Object
448
- # generic object (usually a Hash), return directly
449
- value
450
- when /\AArray<(?<inner_type>.+)>\z/
451
- inner_type = Regexp.last_match[:inner_type]
452
- value.map { |v| _deserialize(inner_type, v) }
453
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
454
- k_type = Regexp.last_match[:k_type]
455
- v_type = Regexp.last_match[:v_type]
456
- {}.tap do |hash|
457
- value.each do |k, v|
458
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
459
- end
460
- end
461
- else # model
462
- temp_model = CyberSource.const_get(type).new
463
- temp_model.build_from_hash(value)
464
- end
465
- end
466
-
467
- # Returns the string representation of the object
468
- # @return [String] String presentation of the object
469
- def to_s
470
- to_hash.to_s
471
- end
472
-
473
- # to_body is an alias to to_hash (backward compatibility)
474
- # @return [Hash] Returns the object in the form of hash
475
- def to_body
476
- to_hash
477
- end
478
-
479
- # Returns the object in the form of hash
480
- # @return [Hash] Returns the object in the form of hash
481
- def to_hash
482
- hash = {}
483
- self.class.attribute_map.each_pair do |attr, param|
484
- value = self.send(attr)
485
- next if value.nil?
486
- hash[param] = _to_hash(value)
487
- end
488
- hash
489
- end
490
-
491
- # Outputs non-array value in the form of hash
492
- # For object, use to_hash. Otherwise, just return the value
493
- # @param [Object] value Any valid value
494
- # @return [Hash] Returns the value in the form of hash
495
- def _to_hash(value)
496
- if value.is_a?(Array)
497
- value.compact.map { |v| _to_hash(v) }
498
- elsif value.is_a?(Hash)
499
- {}.tap do |hash|
500
- value.each { |k, v| hash[k] = _to_hash(v) }
501
- end
502
- elsif value.respond_to? :to_hash
503
- value.to_hash
504
- else
505
- value
506
- end
507
- end
508
- end
509
- 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 Ptsv2paymentsidcapturesOrderInformationAmountDetails
16
+ # Grand total for the order. This value cannot be negative. You can include a decimal point (.), but no other special characters. CyberSource truncates the amount to the correct number of decimal places. **Note** For CTV, FDCCompass, Paymentech processors, the maximum length for this field is 12. **Important** Some processors have specific requirements and limitations, such as maximum amounts and maximum field lengths. 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. #### Card Present Required to include either this field or `orderInformation.lineItems[].unitPrice` for the order. #### Invoicing / Pay By Link Required for creating a new invoice or payment link. #### PIN Debit Amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit; however, for all other processors, these fields are required. #### DCC with a Third-Party Provider Set this field to the converted amount that was returned by the DCC provider. You must include either this field or the 1st line item in the order and the specific line-order amount in your request. #### DCC for First Data Not used.
17
+ attr_accessor :total_amount
18
+
19
+ # Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) #### Used by **Authorization** Required field. **Authorization Reversal** For an authorization reversal (`reversalInformation`) or a capture (`processingOptions.capture` is set to `true`), you must use the same currency that you used in your payment authorization request. #### PIN Debit Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit. #### DCC for First Data Your local currency. #### Tax Calculation Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency.
20
+ attr_accessor :currency
21
+
22
+ # Total discount amount applied to the order.
23
+ attr_accessor :discount_amount
24
+
25
+ # Total charges for any import or export duties included in the order.
26
+ attr_accessor :duty_amount
27
+
28
+ # Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant. When your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not submit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the issuer has chargeback rights for the excess amount. Used by **Capture** Optional field. #### CyberSource through VisaNet Restaurant data is supported only on CyberSource through VisaNet when card is present.
29
+ attr_accessor :gratuity_amount
30
+
31
+ # Total tax amount for all the items in the order.
32
+ attr_accessor :tax_amount
33
+
34
+ # Flag that indicates whether a national tax is included in the order total. Possible values: - **0**: national tax not included - **1**: national tax included
35
+ attr_accessor :national_tax_included
36
+
37
+ # Flag that indicates how the merchant manages discounts. Possible values: - **0**: no invoice level discount included - **1**: tax calculated on the postdiscount invoice total - **2**: tax calculated on the prediscount invoice total
38
+ attr_accessor :tax_applied_after_discount
39
+
40
+ # Flag that indicates how you calculate tax. Possible values: - **0**: net prices with tax calculated at line item level - **1**: net prices with tax calculated at invoice level - **2**: gross prices with tax provided at line item level - **3**: gross prices with tax provided at invoice level - **4**: no tax applies on the invoice for the transaction
41
+ attr_accessor :tax_applied_level
42
+
43
+ # For tax amounts that can be categorized as one tax type. This field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field. Possible values: - **056**: sales tax (U.S only) - **TX~**: all taxes (Canada only) Note ~ = space.
44
+ attr_accessor :tax_type_code
45
+
46
+ # Total freight or shipping and handling charges for the order. When you include this field in your request, you must also include the **totalAmount** field.
47
+ attr_accessor :freight_amount
48
+
49
+ # Set this field to the converted amount that was returned by the DCC provider.
50
+ attr_accessor :foreign_amount
51
+
52
+ # Set this field to the converted amount that was returned by the DCC provider.
53
+ attr_accessor :foreign_currency
54
+
55
+ # Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.
56
+ attr_accessor :exchange_rate
57
+
58
+ # Time stamp for the exchange rate. This value is returned by the DCC service. Format: `YYYYMMDD~HH:MM` where ~ denotes a space.
59
+ attr_accessor :exchange_rate_time_stamp
60
+
61
+ attr_accessor :amex_additional_amounts
62
+
63
+ attr_accessor :tax_details
64
+
65
+ # Service fee. Required for service fee transactions.
66
+ attr_accessor :service_fee_amount
67
+
68
+ # Your local pricing currency code. For the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)
69
+ attr_accessor :original_currency
70
+
71
+ # Cashback amount in the acquirer's currency. If a cashback amount is included in the request, it must be included in the `orderInformation.amountDetails.totalAmount` value. This field is supported only on CyberSource through VisaNet. #### Used by **Authorization** Optional. **Authorization Reversal** Optional. #### PIN debit Optional field for PIN debit purchase, PIN debit credit or PIN debit reversal.
72
+ attr_accessor :cashback_amount
73
+
74
+ # Attribute mapping from ruby-style variable name to JSON key.
75
+ def self.attribute_map
76
+ {
77
+ :'total_amount' => :'totalAmount',
78
+ :'currency' => :'currency',
79
+ :'discount_amount' => :'discountAmount',
80
+ :'duty_amount' => :'dutyAmount',
81
+ :'gratuity_amount' => :'gratuityAmount',
82
+ :'tax_amount' => :'taxAmount',
83
+ :'national_tax_included' => :'nationalTaxIncluded',
84
+ :'tax_applied_after_discount' => :'taxAppliedAfterDiscount',
85
+ :'tax_applied_level' => :'taxAppliedLevel',
86
+ :'tax_type_code' => :'taxTypeCode',
87
+ :'freight_amount' => :'freightAmount',
88
+ :'foreign_amount' => :'foreignAmount',
89
+ :'foreign_currency' => :'foreignCurrency',
90
+ :'exchange_rate' => :'exchangeRate',
91
+ :'exchange_rate_time_stamp' => :'exchangeRateTimeStamp',
92
+ :'amex_additional_amounts' => :'amexAdditionalAmounts',
93
+ :'tax_details' => :'taxDetails',
94
+ :'service_fee_amount' => :'serviceFeeAmount',
95
+ :'original_currency' => :'originalCurrency',
96
+ :'cashback_amount' => :'cashbackAmount'
97
+ }
98
+ end
99
+
100
+ # Attribute mapping from JSON key to ruby-style variable name.
101
+ def self.json_map
102
+ {
103
+ :'total_amount' => :'total_amount',
104
+ :'currency' => :'currency',
105
+ :'discount_amount' => :'discount_amount',
106
+ :'duty_amount' => :'duty_amount',
107
+ :'gratuity_amount' => :'gratuity_amount',
108
+ :'tax_amount' => :'tax_amount',
109
+ :'national_tax_included' => :'national_tax_included',
110
+ :'tax_applied_after_discount' => :'tax_applied_after_discount',
111
+ :'tax_applied_level' => :'tax_applied_level',
112
+ :'tax_type_code' => :'tax_type_code',
113
+ :'freight_amount' => :'freight_amount',
114
+ :'foreign_amount' => :'foreign_amount',
115
+ :'foreign_currency' => :'foreign_currency',
116
+ :'exchange_rate' => :'exchange_rate',
117
+ :'exchange_rate_time_stamp' => :'exchange_rate_time_stamp',
118
+ :'amex_additional_amounts' => :'amex_additional_amounts',
119
+ :'tax_details' => :'tax_details',
120
+ :'service_fee_amount' => :'service_fee_amount',
121
+ :'original_currency' => :'original_currency',
122
+ :'cashback_amount' => :'cashback_amount'
123
+ }
124
+ end
125
+
126
+ # Attribute type mapping.
127
+ def self.swagger_types
128
+ {
129
+ :'total_amount' => :'String',
130
+ :'currency' => :'String',
131
+ :'discount_amount' => :'String',
132
+ :'duty_amount' => :'String',
133
+ :'gratuity_amount' => :'String',
134
+ :'tax_amount' => :'String',
135
+ :'national_tax_included' => :'String',
136
+ :'tax_applied_after_discount' => :'String',
137
+ :'tax_applied_level' => :'String',
138
+ :'tax_type_code' => :'String',
139
+ :'freight_amount' => :'String',
140
+ :'foreign_amount' => :'String',
141
+ :'foreign_currency' => :'String',
142
+ :'exchange_rate' => :'String',
143
+ :'exchange_rate_time_stamp' => :'String',
144
+ :'amex_additional_amounts' => :'Array<Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts>',
145
+ :'tax_details' => :'Array<Ptsv2paymentsOrderInformationAmountDetailsTaxDetails>',
146
+ :'service_fee_amount' => :'String',
147
+ :'original_currency' => :'String',
148
+ :'cashback_amount' => :'String'
149
+ }
150
+ end
151
+
152
+ # Initializes the object
153
+ # @param [Hash] attributes Model attributes in the form of hash
154
+ def initialize(attributes = {})
155
+ return unless attributes.is_a?(Hash)
156
+
157
+ # convert string to symbol for hash key
158
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
159
+
160
+ if attributes.has_key?(:'totalAmount')
161
+ self.total_amount = attributes[:'totalAmount']
162
+ end
163
+
164
+ if attributes.has_key?(:'currency')
165
+ self.currency = attributes[:'currency']
166
+ end
167
+
168
+ if attributes.has_key?(:'discountAmount')
169
+ self.discount_amount = attributes[:'discountAmount']
170
+ end
171
+
172
+ if attributes.has_key?(:'dutyAmount')
173
+ self.duty_amount = attributes[:'dutyAmount']
174
+ end
175
+
176
+ if attributes.has_key?(:'gratuityAmount')
177
+ self.gratuity_amount = attributes[:'gratuityAmount']
178
+ end
179
+
180
+ if attributes.has_key?(:'taxAmount')
181
+ self.tax_amount = attributes[:'taxAmount']
182
+ end
183
+
184
+ if attributes.has_key?(:'nationalTaxIncluded')
185
+ self.national_tax_included = attributes[:'nationalTaxIncluded']
186
+ end
187
+
188
+ if attributes.has_key?(:'taxAppliedAfterDiscount')
189
+ self.tax_applied_after_discount = attributes[:'taxAppliedAfterDiscount']
190
+ end
191
+
192
+ if attributes.has_key?(:'taxAppliedLevel')
193
+ self.tax_applied_level = attributes[:'taxAppliedLevel']
194
+ end
195
+
196
+ if attributes.has_key?(:'taxTypeCode')
197
+ self.tax_type_code = attributes[:'taxTypeCode']
198
+ end
199
+
200
+ if attributes.has_key?(:'freightAmount')
201
+ self.freight_amount = attributes[:'freightAmount']
202
+ end
203
+
204
+ if attributes.has_key?(:'foreignAmount')
205
+ self.foreign_amount = attributes[:'foreignAmount']
206
+ end
207
+
208
+ if attributes.has_key?(:'foreignCurrency')
209
+ self.foreign_currency = attributes[:'foreignCurrency']
210
+ end
211
+
212
+ if attributes.has_key?(:'exchangeRate')
213
+ self.exchange_rate = attributes[:'exchangeRate']
214
+ end
215
+
216
+ if attributes.has_key?(:'exchangeRateTimeStamp')
217
+ self.exchange_rate_time_stamp = attributes[:'exchangeRateTimeStamp']
218
+ end
219
+
220
+ if attributes.has_key?(:'amexAdditionalAmounts')
221
+ if (value = attributes[:'amexAdditionalAmounts']).is_a?(Array)
222
+ self.amex_additional_amounts = value
223
+ end
224
+ end
225
+
226
+ if attributes.has_key?(:'taxDetails')
227
+ if (value = attributes[:'taxDetails']).is_a?(Array)
228
+ self.tax_details = value
229
+ end
230
+ end
231
+
232
+ if attributes.has_key?(:'serviceFeeAmount')
233
+ self.service_fee_amount = attributes[:'serviceFeeAmount']
234
+ end
235
+
236
+ if attributes.has_key?(:'originalCurrency')
237
+ self.original_currency = attributes[:'originalCurrency']
238
+ end
239
+
240
+ if attributes.has_key?(:'cashbackAmount')
241
+ self.cashback_amount = attributes[:'cashbackAmount']
242
+ end
243
+ end
244
+
245
+ # Show invalid properties with the reasons. Usually used together with valid?
246
+ # @return Array for valid properties with the reasons
247
+ def list_invalid_properties
248
+ invalid_properties = Array.new
249
+ invalid_properties
250
+ end
251
+
252
+ # Check to see if the all the properties in the model are valid
253
+ # @return true if the model is valid
254
+ def valid?
255
+ true
256
+ end
257
+
258
+ # Custom attribute writer method with validation
259
+ # @param [Object] total_amount Value to be assigned
260
+ def total_amount=(total_amount)
261
+ @total_amount = total_amount
262
+ end
263
+
264
+ # Custom attribute writer method with validation
265
+ # @param [Object] currency Value to be assigned
266
+ def currency=(currency)
267
+ @currency = currency
268
+ end
269
+
270
+ # Custom attribute writer method with validation
271
+ # @param [Object] discount_amount Value to be assigned
272
+ def discount_amount=(discount_amount)
273
+ @discount_amount = discount_amount
274
+ end
275
+
276
+ # Custom attribute writer method with validation
277
+ # @param [Object] duty_amount Value to be assigned
278
+ def duty_amount=(duty_amount)
279
+ @duty_amount = duty_amount
280
+ end
281
+
282
+ # Custom attribute writer method with validation
283
+ # @param [Object] gratuity_amount Value to be assigned
284
+ def gratuity_amount=(gratuity_amount)
285
+ @gratuity_amount = gratuity_amount
286
+ end
287
+
288
+ # Custom attribute writer method with validation
289
+ # @param [Object] tax_amount Value to be assigned
290
+ def tax_amount=(tax_amount)
291
+ @tax_amount = tax_amount
292
+ end
293
+
294
+ # Custom attribute writer method with validation
295
+ # @param [Object] national_tax_included Value to be assigned
296
+ def national_tax_included=(national_tax_included)
297
+ @national_tax_included = national_tax_included
298
+ end
299
+
300
+ # Custom attribute writer method with validation
301
+ # @param [Object] tax_applied_after_discount Value to be assigned
302
+ def tax_applied_after_discount=(tax_applied_after_discount)
303
+ @tax_applied_after_discount = tax_applied_after_discount
304
+ end
305
+
306
+ # Custom attribute writer method with validation
307
+ # @param [Object] tax_applied_level Value to be assigned
308
+ def tax_applied_level=(tax_applied_level)
309
+ @tax_applied_level = tax_applied_level
310
+ end
311
+
312
+ # Custom attribute writer method with validation
313
+ # @param [Object] tax_type_code Value to be assigned
314
+ def tax_type_code=(tax_type_code)
315
+ @tax_type_code = tax_type_code
316
+ end
317
+
318
+ # Custom attribute writer method with validation
319
+ # @param [Object] freight_amount Value to be assigned
320
+ def freight_amount=(freight_amount)
321
+ @freight_amount = freight_amount
322
+ end
323
+
324
+ # Custom attribute writer method with validation
325
+ # @param [Object] foreign_amount Value to be assigned
326
+ def foreign_amount=(foreign_amount)
327
+ @foreign_amount = foreign_amount
328
+ end
329
+
330
+ # Custom attribute writer method with validation
331
+ # @param [Object] foreign_currency Value to be assigned
332
+ def foreign_currency=(foreign_currency)
333
+ @foreign_currency = foreign_currency
334
+ end
335
+
336
+ # Custom attribute writer method with validation
337
+ # @param [Object] exchange_rate Value to be assigned
338
+ def exchange_rate=(exchange_rate)
339
+ @exchange_rate = exchange_rate
340
+ end
341
+
342
+ # Custom attribute writer method with validation
343
+ # @param [Object] exchange_rate_time_stamp Value to be assigned
344
+ def exchange_rate_time_stamp=(exchange_rate_time_stamp)
345
+ @exchange_rate_time_stamp = exchange_rate_time_stamp
346
+ end
347
+
348
+ # Custom attribute writer method with validation
349
+ # @param [Object] service_fee_amount Value to be assigned
350
+ def service_fee_amount=(service_fee_amount)
351
+ @service_fee_amount = service_fee_amount
352
+ end
353
+
354
+ # Custom attribute writer method with validation
355
+ # @param [Object] original_currency Value to be assigned
356
+ def original_currency=(original_currency)
357
+ @original_currency = original_currency
358
+ end
359
+
360
+ # Custom attribute writer method with validation
361
+ # @param [Object] cashback_amount Value to be assigned
362
+ def cashback_amount=(cashback_amount)
363
+ @cashback_amount = cashback_amount
364
+ end
365
+
366
+ # Checks equality by comparing each attribute.
367
+ # @param [Object] Object to be compared
368
+ def ==(o)
369
+ return true if self.equal?(o)
370
+ self.class == o.class &&
371
+ total_amount == o.total_amount &&
372
+ currency == o.currency &&
373
+ discount_amount == o.discount_amount &&
374
+ duty_amount == o.duty_amount &&
375
+ gratuity_amount == o.gratuity_amount &&
376
+ tax_amount == o.tax_amount &&
377
+ national_tax_included == o.national_tax_included &&
378
+ tax_applied_after_discount == o.tax_applied_after_discount &&
379
+ tax_applied_level == o.tax_applied_level &&
380
+ tax_type_code == o.tax_type_code &&
381
+ freight_amount == o.freight_amount &&
382
+ foreign_amount == o.foreign_amount &&
383
+ foreign_currency == o.foreign_currency &&
384
+ exchange_rate == o.exchange_rate &&
385
+ exchange_rate_time_stamp == o.exchange_rate_time_stamp &&
386
+ amex_additional_amounts == o.amex_additional_amounts &&
387
+ tax_details == o.tax_details &&
388
+ service_fee_amount == o.service_fee_amount &&
389
+ original_currency == o.original_currency &&
390
+ cashback_amount == o.cashback_amount
391
+ end
392
+
393
+ # @see the `==` method
394
+ # @param [Object] Object to be compared
395
+ def eql?(o)
396
+ self == o
397
+ end
398
+
399
+ # Calculates hash code according to all attributes.
400
+ # @return [Fixnum] Hash code
401
+ def hash
402
+ [total_amount, currency, discount_amount, duty_amount, gratuity_amount, tax_amount, national_tax_included, tax_applied_after_discount, tax_applied_level, tax_type_code, freight_amount, foreign_amount, foreign_currency, exchange_rate, exchange_rate_time_stamp, amex_additional_amounts, tax_details, service_fee_amount, original_currency, cashback_amount].hash
403
+ end
404
+
405
+ # Builds the object from hash
406
+ # @param [Hash] attributes Model attributes in the form of hash
407
+ # @return [Object] Returns the model itself
408
+ def build_from_hash(attributes)
409
+ return nil unless attributes.is_a?(Hash)
410
+ self.class.swagger_types.each_pair do |key, type|
411
+ if type =~ /\AArray<(.*)>/i
412
+ # check to ensure the input is an array given that the the attribute
413
+ # is documented as an array but the input is not
414
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
415
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
416
+ end
417
+ elsif !attributes[self.class.attribute_map[key]].nil?
418
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
419
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
420
+ end
421
+
422
+ self
423
+ end
424
+
425
+ # Deserializes the data based on type
426
+ # @param string type Data type
427
+ # @param string value Value to be deserialized
428
+ # @return [Object] Deserialized data
429
+ def _deserialize(type, value)
430
+ case type.to_sym
431
+ when :DateTime
432
+ DateTime.parse(value)
433
+ when :Date
434
+ Date.parse(value)
435
+ when :String
436
+ value.to_s
437
+ when :Integer
438
+ value.to_i
439
+ when :Float
440
+ value.to_f
441
+ when :BOOLEAN
442
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
443
+ true
444
+ else
445
+ false
446
+ end
447
+ when :Object
448
+ # generic object (usually a Hash), return directly
449
+ value
450
+ when /\AArray<(?<inner_type>.+)>\z/
451
+ inner_type = Regexp.last_match[:inner_type]
452
+ value.map { |v| _deserialize(inner_type, v) }
453
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
454
+ k_type = Regexp.last_match[:k_type]
455
+ v_type = Regexp.last_match[:v_type]
456
+ {}.tap do |hash|
457
+ value.each do |k, v|
458
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
459
+ end
460
+ end
461
+ else # model
462
+ temp_model = CyberSource.const_get(type).new
463
+ temp_model.build_from_hash(value)
464
+ end
465
+ end
466
+
467
+ # Returns the string representation of the object
468
+ # @return [String] String presentation of the object
469
+ def to_s
470
+ to_hash.to_s
471
+ end
472
+
473
+ # to_body is an alias to to_hash (backward compatibility)
474
+ # @return [Hash] Returns the object in the form of hash
475
+ def to_body
476
+ to_hash
477
+ end
478
+
479
+ # Returns the object in the form of hash
480
+ # @return [Hash] Returns the object in the form of hash
481
+ def to_hash
482
+ hash = {}
483
+ self.class.attribute_map.each_pair do |attr, param|
484
+ value = self.send(attr)
485
+ next if value.nil?
486
+ hash[param] = _to_hash(value)
487
+ end
488
+ hash
489
+ end
490
+
491
+ # Outputs non-array value in the form of hash
492
+ # For object, use to_hash. Otherwise, just return the value
493
+ # @param [Object] value Any valid value
494
+ # @return [Hash] Returns the value in the form of hash
495
+ def _to_hash(value)
496
+ if value.is_a?(Array)
497
+ value.compact.map { |v| _to_hash(v) }
498
+ elsif value.is_a?(Hash)
499
+ {}.tap do |hash|
500
+ value.each { |k, v| hash[k] = _to_hash(v) }
501
+ end
502
+ elsif value.respond_to? :to_hash
503
+ value.to_hash
504
+ else
505
+ value
506
+ end
507
+ end
508
+ end
509
+ end