cybersource_rest_client 0.0.72 → 0.0.74

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 (271) 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_api.rb +168 -0
  4. data/lib/cybersource_rest_client/api/device_search_api.rb +169 -0
  5. data/lib/cybersource_rest_client/api/subscriptions_api.rb +5 -2
  6. data/lib/cybersource_rest_client/api/transaction_batches_api.rb +7 -2
  7. data/lib/cybersource_rest_client/models/commerce_solutions_products_account_updater.rb +1 -1
  8. data/lib/cybersource_rest_client/models/commerce_solutions_products_bin_lookup.rb +1 -1
  9. data/lib/cybersource_rest_client/models/commerce_solutions_products_token_management.rb +1 -1
  10. data/lib/cybersource_rest_client/models/create_invoice_request.rb +239 -239
  11. data/lib/cybersource_rest_client/models/create_payment_link_request.rb +234 -234
  12. data/lib/cybersource_rest_client/models/create_subscription_request_1.rb +229 -229
  13. data/lib/cybersource_rest_client/models/create_webhook.rb +267 -267
  14. data/lib/cybersource_rest_client/models/de_association_request_body.rb +190 -0
  15. data/lib/cybersource_rest_client/models/device_de_associate_v3_request.rb +222 -0
  16. data/lib/cybersource_rest_client/models/dmsv3devicesdeassociate_devices.rb +209 -0
  17. data/lib/cybersource_rest_client/models/generate_capture_context_request.rb +1 -1
  18. data/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +2 -2
  19. data/lib/cybersource_rest_client/models/get_subscription_response.rb +267 -257
  20. data/lib/cybersource_rest_client/models/get_subscription_response_1.rb +219 -219
  21. data/lib/cybersource_rest_client/models/get_subscription_response_1__links.rb +199 -199
  22. data/lib/cybersource_rest_client/models/get_subscription_response_1_buyer_information.rb +214 -214
  23. data/lib/cybersource_rest_client/models/get_subscription_response_1_payment_instrument.rb +237 -237
  24. data/lib/cybersource_rest_client/models/get_subscription_response_1_payment_instrument_bank_account.rb +224 -224
  25. data/lib/cybersource_rest_client/models/get_subscription_response_1_payment_instrument_buyer_information.rb +236 -236
  26. data/lib/cybersource_rest_client/models/get_subscription_response_1_payment_instrument_card.rb +242 -242
  27. data/lib/cybersource_rest_client/models/get_subscription_response_1_shipping_address.rb +207 -207
  28. data/lib/cybersource_rest_client/models/get_subscription_response_reactivation_information.rb +213 -0
  29. data/lib/cybersource_rest_client/models/inline_response_200.rb +226 -226
  30. data/lib/cybersource_rest_client/models/inline_response_200_1.rb +228 -228
  31. data/lib/cybersource_rest_client/models/inline_response_200_10.rb +292 -0
  32. data/lib/cybersource_rest_client/models/{inline_response_200_7_records.rb → inline_response_200_10_records.rb} +3 -3
  33. data/lib/cybersource_rest_client/models/{inline_response_200_7_response_record.rb → inline_response_200_10_response_record.rb} +2 -2
  34. data/lib/cybersource_rest_client/models/{inline_response_200_7_response_record_additional_updates.rb → inline_response_200_10_response_record_additional_updates.rb} +1 -1
  35. data/lib/cybersource_rest_client/models/{inline_response_200_7_source_record.rb → inline_response_200_10_source_record.rb} +1 -1
  36. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded.rb +200 -200
  37. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_capture.rb +201 -201
  38. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_capture__links.rb +190 -190
  39. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_capture__links_self.rb +202 -202
  40. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_reversal.rb +201 -201
  41. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_reversal__links.rb +190 -190
  42. data/lib/cybersource_rest_client/models/inline_response_200_1__embedded_reversal__links_self.rb +202 -202
  43. data/lib/cybersource_rest_client/models/inline_response_200_2.rb +253 -253
  44. data/lib/cybersource_rest_client/models/inline_response_200_2_integration_information.rb +204 -204
  45. data/lib/cybersource_rest_client/models/inline_response_200_2_integration_information_tenant_configurations.rb +263 -263
  46. data/lib/cybersource_rest_client/models/inline_response_200_3.rb +213 -213
  47. data/lib/cybersource_rest_client/models/inline_response_200_4.rb +312 -312
  48. data/lib/cybersource_rest_client/models/inline_response_200_5.rb +33 -37
  49. data/lib/cybersource_rest_client/models/inline_response_200_5_devices.rb +357 -0
  50. data/lib/cybersource_rest_client/models/inline_response_200_6.rb +11 -99
  51. data/lib/cybersource_rest_client/models/inline_response_200_7.rb +50 -95
  52. data/lib/cybersource_rest_client/models/inline_response_200_7_devices.rb +371 -0
  53. data/lib/cybersource_rest_client/models/inline_response_200_7_payment_processor_to_terminal_map.rb +200 -0
  54. data/lib/cybersource_rest_client/models/inline_response_200_8.rb +251 -0
  55. data/lib/cybersource_rest_client/models/{inline_response_200_5__embedded.rb → inline_response_200_8__embedded.rb} +2 -2
  56. data/lib/cybersource_rest_client/models/{inline_response_200_5__embedded__links.rb → inline_response_200_8__embedded__links.rb} +2 -2
  57. data/lib/cybersource_rest_client/models/{inline_response_200_5__embedded__links_reports.rb → inline_response_200_8__embedded__links_reports.rb} +1 -1
  58. data/lib/cybersource_rest_client/models/{inline_response_200_5__embedded_batches.rb → inline_response_200_8__embedded_batches.rb} +3 -3
  59. data/lib/cybersource_rest_client/models/{inline_response_200_5__embedded_totals.rb → inline_response_200_8__embedded_totals.rb} +1 -1
  60. data/lib/cybersource_rest_client/models/{inline_response_200_5__links.rb → inline_response_200_8__links.rb} +1 -1
  61. data/lib/cybersource_rest_client/models/inline_response_200_9.rb +290 -0
  62. data/lib/cybersource_rest_client/models/{inline_response_200_6__links.rb → inline_response_200_9__links.rb} +2 -2
  63. data/lib/cybersource_rest_client/models/{inline_response_200_6__links_report.rb → inline_response_200_9__links_report.rb} +1 -1
  64. data/lib/cybersource_rest_client/models/{inline_response_200_6_billing.rb → inline_response_200_9_billing.rb} +1 -1
  65. data/lib/cybersource_rest_client/models/inline_response_200_content.rb +223 -223
  66. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments.rb +11 -1
  67. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_alternative_payment_methods.rb +221 -0
  68. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_alternative_payment_methods_configuration_status.rb +200 -0
  69. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_value_added_services.rb +15 -5
  70. data/lib/cybersource_rest_client/models/inline_response_201_4.rb +312 -312
  71. data/lib/cybersource_rest_client/models/inline_response_201_5.rb +277 -277
  72. data/lib/cybersource_rest_client/models/inline_response_201_5_payloads.rb +189 -189
  73. data/lib/cybersource_rest_client/models/inline_response_201_5_payloads_test_payload.rb +190 -190
  74. data/lib/cybersource_rest_client/models/inline_response_201_6.rb +202 -202
  75. data/lib/cybersource_rest_client/models/inline_response_202__links.rb +1 -1
  76. data/lib/cybersource_rest_client/models/inline_response_206.rb +202 -0
  77. data/lib/cybersource_rest_client/models/inline_response_400_5.rb +235 -235
  78. data/lib/cybersource_rest_client/models/inline_response_400_6.rb +258 -258
  79. data/lib/cybersource_rest_client/models/inline_response_400_6_fields.rb +213 -213
  80. data/lib/cybersource_rest_client/models/inline_response_400_7.rb +235 -235
  81. data/lib/cybersource_rest_client/models/inline_response_400_7_details.rb +201 -201
  82. data/lib/cybersource_rest_client/models/inline_response_400_8.rb +236 -0
  83. data/lib/cybersource_rest_client/models/inline_response_400_8_details.rb +212 -0
  84. data/lib/cybersource_rest_client/models/inline_response_401.rb +29 -59
  85. data/lib/cybersource_rest_client/models/inline_response_401_1.rb +253 -0
  86. data/lib/cybersource_rest_client/models/{inline_response_401__links.rb → inline_response_401_1__links.rb} +2 -2
  87. data/lib/cybersource_rest_client/models/{inline_response_401__links_self.rb → inline_response_401_1__links_self.rb} +1 -1
  88. data/lib/cybersource_rest_client/models/{inline_response_401_fields.rb → inline_response_401_1_fields.rb} +1 -1
  89. data/lib/cybersource_rest_client/models/inline_response_403_2.rb +223 -0
  90. data/lib/cybersource_rest_client/models/inline_response_404_1.rb +235 -235
  91. data/lib/cybersource_rest_client/models/inline_response_404_2.rb +211 -211
  92. data/lib/cybersource_rest_client/models/inline_response_404_2_details.rb +199 -199
  93. data/lib/cybersource_rest_client/models/inline_response_404_3.rb +223 -0
  94. data/lib/cybersource_rest_client/models/inline_response_422_1.rb +235 -235
  95. data/lib/cybersource_rest_client/models/inline_response_500_3.rb +223 -0
  96. data/lib/cybersource_rest_client/models/invoicing_v2_invoice_settings_get200_response_invoice_settings_information.rb +380 -380
  97. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response.rb +222 -222
  98. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_invoice_information.rb +201 -201
  99. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_invoices.rb +259 -259
  100. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_order_information.rb +190 -190
  101. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response_order_information_amount_details.rb +214 -214
  102. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get400_response.rb +235 -235
  103. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get404_response.rb +235 -235
  104. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_cancel200_response.rb +268 -268
  105. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_get200_response.rb +280 -280
  106. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_get200_response_invoice_history.rb +211 -211
  107. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_get200_response_transaction_details.rb +208 -208
  108. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response.rb +268 -268
  109. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_invoice_information.rb +265 -265
  110. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_order_information.rb +203 -203
  111. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_order_information_amount_details.rb +313 -313
  112. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_put200_response.rb +268 -268
  113. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_send200_response.rb +268 -268
  114. data/lib/cybersource_rest_client/models/invoicingv2invoice_settings_invoice_settings_information.rb +384 -384
  115. data/lib/cybersource_rest_client/models/invoicingv2invoices_client_reference_information.rb +189 -189
  116. data/lib/cybersource_rest_client/models/invoicingv2invoices_client_reference_information_partner.rb +213 -213
  117. data/lib/cybersource_rest_client/models/invoicingv2invoices_invoice_information.rb +281 -281
  118. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information.rb +208 -208
  119. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_amount_details.rb +314 -314
  120. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_amount_details_freight.rb +225 -225
  121. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_amount_details_tax_details.rb +225 -225
  122. data/lib/cybersource_rest_client/models/invoicingv2invoices_order_information_line_items.rb +333 -333
  123. data/lib/cybersource_rest_client/models/invoicingv2invoices_processing_information.rb +206 -206
  124. data/lib/cybersource_rest_client/models/invoicingv2invoicesid_invoice_information.rb +270 -270
  125. data/lib/cybersource_rest_client/models/iplv2paymentlinks_order_information.rb +213 -213
  126. data/lib/cybersource_rest_client/models/iplv2paymentlinks_order_information_amount_details.rb +245 -245
  127. data/lib/cybersource_rest_client/models/iplv2paymentlinks_order_information_line_items.rb +274 -274
  128. data/lib/cybersource_rest_client/models/iplv2paymentlinks_processing_information.rb +222 -222
  129. data/lib/cybersource_rest_client/models/iplv2paymentlinks_purchase_information.rb +206 -206
  130. data/lib/cybersource_rest_client/models/iplv2paymentlinksid_order_information.rb +208 -208
  131. data/lib/cybersource_rest_client/models/iplv2paymentlinksid_processing_information.rb +217 -217
  132. data/lib/cybersource_rest_client/models/iplv2paymentlinksid_purchase_information.rb +197 -197
  133. data/lib/cybersource_rest_client/models/model_400_upload_batch_file_response.rb +199 -199
  134. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2productsorganization_id_event_types.rb +233 -233
  135. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_products.rb +202 -202
  136. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_products_1.rb +202 -202
  137. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_retry_policy.rb +270 -270
  138. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy.rb +201 -201
  139. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy_1.rb +201 -201
  140. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy_1_config.rb +223 -223
  141. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy_1_config_additional_config.rb +220 -220
  142. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy_config.rb +213 -213
  143. data/lib/cybersource_rest_client/models/payments_products.rb +379 -369
  144. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods.rb +199 -0
  145. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods_additional_configurations.rb +202 -0
  146. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods_configuration_information.rb +189 -0
  147. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods_configuration_information_configurations.rb +203 -0
  148. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods_configuration_information_configurations_processors.rb +193 -0
  149. data/lib/cybersource_rest_client/models/payments_products_alternative_payment_methods_configuration_payment_methods.rb +248 -0
  150. data/lib/cybersource_rest_client/models/{payments_products_payer_authentication_subscription_information.rb → payments_products_alternative_payment_methods_subscription_information.rb} +1 -1
  151. data/lib/cybersource_rest_client/models/payments_products_currency_conversion.rb +1 -1
  152. data/lib/cybersource_rest_client/models/payments_products_payer_authentication.rb +1 -1
  153. data/lib/cybersource_rest_client/models/payments_products_payouts.rb +1 -1
  154. data/lib/cybersource_rest_client/models/payments_products_secure_acceptance.rb +1 -1
  155. data/lib/cybersource_rest_client/models/payments_products_service_fee.rb +1 -1
  156. data/lib/cybersource_rest_client/models/payments_products_tax.rb +1 -1
  157. data/lib/cybersource_rest_client/models/payments_products_unified_checkout.rb +199 -0
  158. data/lib/cybersource_rest_client/models/payments_products_unified_checkout_configuration_information.rb +189 -0
  159. data/lib/cybersource_rest_client/models/payments_products_unified_checkout_configuration_information_configurations.rb +189 -0
  160. data/lib/cybersource_rest_client/models/payments_products_unified_checkout_configuration_information_configurations_features.rb +189 -0
  161. data/lib/cybersource_rest_client/models/payments_products_unified_checkout_configuration_information_configurations_features_paze.rb +213 -0
  162. data/lib/cybersource_rest_client/models/payments_products_unified_checkout_subscription_information.rb +225 -0
  163. data/lib/cybersource_rest_client/models/payments_products_unified_checkout_subscription_information_features.rb +189 -0
  164. data/lib/cybersource_rest_client/models/payments_products_unified_checkout_subscription_information_features_paze_for_unified_checkout.rb +190 -0
  165. data/lib/cybersource_rest_client/models/payments_products_virtual_terminal.rb +1 -1
  166. data/lib/cybersource_rest_client/models/payments_strong_auth_issuer_information.rb +281 -281
  167. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response.rb +222 -222
  168. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_links.rb +259 -259
  169. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_order_information.rb +203 -203
  170. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_order_information_amount_details.rb +236 -236
  171. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_order_information_line_items.rb +231 -231
  172. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_processing_information.rb +191 -191
  173. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get200_response_purchase_information.rb +208 -208
  174. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get400_response.rb +235 -235
  175. data/lib/cybersource_rest_client/models/pbl_payment_links_all_get404_response.rb +235 -235
  176. data/lib/cybersource_rest_client/models/pbl_payment_links_get200_response.rb +258 -258
  177. data/lib/cybersource_rest_client/models/pbl_payment_links_post201_response.rb +258 -258
  178. data/lib/cybersource_rest_client/models/pbl_payment_links_post201_response__links.rb +199 -199
  179. data/lib/cybersource_rest_client/models/pbl_payment_links_post201_response_order_information.rb +203 -203
  180. data/lib/cybersource_rest_client/models/pbl_payment_links_post201_response_purchase_information.rb +219 -219
  181. data/lib/cybersource_rest_client/models/post_device_search_request.rb +223 -0
  182. data/lib/cybersource_rest_client/models/post_device_search_request_v3.rb +223 -0
  183. data/lib/cybersource_rest_client/models/post_payment_credentials_request.rb +201 -201
  184. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_error_information.rb +213 -213
  185. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_order_information_amount_details.rb +213 -213
  186. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1.rb +295 -295
  187. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_error_information.rb +213 -213
  188. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_error_information_details.rb +190 -190
  189. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_issuer_information.rb +213 -213
  190. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_order_information.rb +209 -209
  191. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_order_information_amount_details.rb +196 -196
  192. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_payment_information.rb +219 -219
  193. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_payment_information_e_wallet.rb +213 -213
  194. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_1_processor_information.rb +289 -289
  195. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_2_order_information_amount_details.rb +196 -196
  196. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_error_information.rb +213 -213
  197. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_account_information_card.rb +1 -1
  198. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +1 -1
  199. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +1 -1
  200. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response.rb +305 -305
  201. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_error_information.rb +213 -213
  202. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_order_information_amount_details.rb +247 -247
  203. data/lib/cybersource_rest_client/models/ptsv2billingagreements_payment_information_card.rb +1 -1
  204. data/lib/cybersource_rest_client/models/ptsv2billingagreements_payment_information_tokenized_card.rb +1 -1
  205. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_buyer_information.rb +1 -1
  206. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_order_information_amount_details.rb +400 -400
  207. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_payment_information_card.rb +1 -1
  208. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information.rb +1 -1
  209. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +651 -651
  210. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +1 -1
  211. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_payment_account_reference.rb +1 -1
  212. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_card.rb +1 -1
  213. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information.rb +1 -1
  214. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +789 -789
  215. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_buyer_information.rb +1 -1
  216. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_amount_details.rb +509 -509
  217. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_card.rb +1 -1
  218. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information_amount_details.rb +213 -213
  219. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details.rb +223 -223
  220. data/lib/cybersource_rest_client/models/ptsv2payouts_payment_information_card.rb +1 -1
  221. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +328 -328
  222. data/lib/cybersource_rest_client/models/ptsv2payouts_recipient_information.rb +417 -417
  223. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information.rb +495 -495
  224. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information_account.rb +213 -213
  225. data/lib/cybersource_rest_client/models/rbsv1subscriptions_client_reference_information.rb +6 -6
  226. data/lib/cybersource_rest_client/models/rbsv1subscriptions_client_reference_information_partner.rb +213 -0
  227. data/lib/cybersource_rest_client/models/rbsv1subscriptions_processing_information.rb +206 -206
  228. data/lib/cybersource_rest_client/models/rbsv1subscriptions_processing_information_authorization_options_initiator.rb +1 -1
  229. data/lib/cybersource_rest_client/models/rbsv1subscriptions_subscription_information.rb +39 -5
  230. data/lib/cybersource_rest_client/models/risk_products.rb +15 -5
  231. data/lib/cybersource_rest_client/models/risk_products_decision_manager.rb +1 -1
  232. data/lib/cybersource_rest_client/models/risk_products_fraud_management_essentials.rb +1 -1
  233. data/lib/cybersource_rest_client/models/risk_products_portfolio_risk_controls.rb +199 -0
  234. data/lib/cybersource_rest_client/models/risk_products_portfolio_risk_controls_configuration_information.rb +189 -0
  235. data/lib/cybersource_rest_client/models/risk_products_portfolio_risk_controls_configuration_information_configurations.rb +189 -0
  236. data/lib/cybersource_rest_client/models/riskv1authenticationresults_order_information_amount_details.rb +214 -214
  237. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_card.rb +1 -1
  238. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_tokenized_card.rb +1 -1
  239. data/lib/cybersource_rest_client/models/riskv1authentications_order_information_amount_details.rb +232 -232
  240. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_tokenized_card.rb +1 -1
  241. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_card.rb +1 -1
  242. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_tokenized_card.rb +1 -1
  243. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_card.rb +1 -1
  244. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_tokenized_card.rb +1 -1
  245. data/lib/cybersource_rest_client/models/riskv1decisions_travel_information_legs.rb +252 -241
  246. data/lib/cybersource_rest_client/models/riskv1liststypeentries_payment_information_card.rb +1 -1
  247. data/lib/cybersource_rest_client/models/save_asym_egress_key.rb +210 -210
  248. data/lib/cybersource_rest_client/models/save_sym_egress_key.rb +210 -210
  249. data/lib/cybersource_rest_client/models/tms_bin_lookup_payment_account_information_card.rb +277 -277
  250. data/lib/cybersource_rest_client/models/tms_bin_lookup_payment_account_information_card_brands.rb +213 -213
  251. data/lib/cybersource_rest_client/models/tms_bin_lookup_payment_account_information_features.rb +430 -430
  252. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card.rb +440 -440
  253. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_card.rb +253 -253
  254. data/lib/cybersource_rest_client/models/tokenizedcard_request.rb +440 -440
  255. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_amount_details.rb +291 -291
  256. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_brands.rb +1 -1
  257. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_card.rb +1 -1
  258. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_issuer_information.rb +264 -264
  259. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +394 -383
  260. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_card.rb +1 -1
  261. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +234 -234
  262. data/lib/cybersource_rest_client/models/update_invoice_request.rb +229 -229
  263. data/lib/cybersource_rest_client/models/update_payment_link_request.rb +230 -230
  264. data/lib/cybersource_rest_client/models/update_status.rb +192 -192
  265. data/lib/cybersource_rest_client/models/update_webhook.rb +269 -269
  266. data/lib/cybersource_rest_client/models/upv1capturecontexts_capture_mandate.rb +12 -1
  267. data/lib/cybersource_rest_client/models/upv1capturecontexts_complete_mandate.rb +18 -7
  268. data/lib/cybersource_rest_client/models/value_added_services_products.rb +15 -5
  269. data/lib/cybersource_rest_client/utilities/multipart/multipart_helper.rb +22 -0
  270. data/lib/cybersource_rest_client.rb +58 -17
  271. metadata +61 -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