cybersource_rest_client 0.0.67 → 0.0.69

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 (222) hide show
  1. checksums.yaml +4 -4
  2. data/lib/cybersource_rest_client/api/instrument_identifier_api.rb +12 -0
  3. data/lib/cybersource_rest_client/api/payment_instrument_api.rb +9 -0
  4. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information.rb +314 -314
  5. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_business_information.rb +437 -437
  6. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc.rb +337 -337
  7. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc_deposit_bank_account.rb +297 -297
  8. data/lib/cybersource_rest_client/models/boardingv1registrations_registration_information.rb +271 -271
  9. data/lib/cybersource_rest_client/models/card_processing_config_common.rb +433 -433
  10. data/lib/cybersource_rest_client/models/card_processing_config_common_processors.rb +719 -719
  11. data/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations.rb +15 -5
  12. data/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations_vault.rb +251 -0
  13. data/lib/cybersource_rest_client/models/create_order_request.rb +229 -229
  14. data/lib/cybersource_rest_client/models/create_payment_request.rb +11 -1
  15. data/lib/cybersource_rest_client/models/e_check_config_common_internal_only_processors.rb +8 -4
  16. data/lib/cybersource_rest_client/models/e_check_config_common_processors.rb +4 -2
  17. data/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_internal_only_processors.rb +4 -2
  18. data/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_processors.rb +6 -4
  19. data/lib/cybersource_rest_client/models/generate_capture_context_request.rb +230 -227
  20. data/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +283 -293
  21. data/lib/cybersource_rest_client/models/inline_response_200_1_integration_information_tenant_configurations.rb +263 -263
  22. data/lib/cybersource_rest_client/models/inline_response_201_1.rb +2 -2
  23. data/lib/cybersource_rest_client/models/inline_response_201_2.rb +281 -281
  24. data/lib/cybersource_rest_client/models/inline_response_201_2_integration_information_tenant_configurations.rb +253 -253
  25. data/lib/cybersource_rest_client/models/inline_response_201_2_registration_information.rb +222 -222
  26. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_card_processing_configuration_status.rb +255 -255
  27. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_card_processing_subscription_status.rb +234 -234
  28. data/lib/cybersource_rest_client/models/inline_response_400_1.rb +242 -242
  29. data/lib/cybersource_rest_client/models/inline_response_400_6.rb +235 -235
  30. data/lib/cybersource_rest_client/models/inline_response_404_1.rb +235 -235
  31. data/lib/cybersource_rest_client/models/inline_response_422_1.rb +235 -235
  32. data/lib/cybersource_rest_client/models/inline_response_500_2.rb +223 -223
  33. data/lib/cybersource_rest_client/models/oct_create_payment_request.rb +15 -5
  34. data/lib/cybersource_rest_client/models/patch_instrument_identifier_request.rb +15 -5
  35. data/lib/cybersource_rest_client/models/payments_products_card_present_connect_subscription_information.rb +202 -202
  36. data/lib/cybersource_rest_client/models/payments_products_card_processing_subscription_information.rb +215 -215
  37. data/lib/cybersource_rest_client/models/payments_products_differential_fee_subscription_information.rb +212 -212
  38. data/lib/cybersource_rest_client/models/payments_products_digital_payments_subscription_information.rb +215 -215
  39. data/lib/cybersource_rest_client/models/payments_products_e_check_subscription_information.rb +215 -215
  40. data/lib/cybersource_rest_client/models/payments_products_payer_authentication_subscription_information.rb +202 -202
  41. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_payment_information.rb +234 -234
  42. data/lib/cybersource_rest_client/models/post_instrument_identifier_enrollment_request.rb +15 -5
  43. data/lib/cybersource_rest_client/models/post_instrument_identifier_request.rb +15 -5
  44. data/lib/cybersource_rest_client/models/post_payment_credentials_request.rb +1 -1
  45. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response.rb +269 -269
  46. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response_buyer_information.rb +196 -196
  47. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response_processor_information.rb +224 -224
  48. data/lib/cybersource_rest_client/models/pts_v2_create_order_post400_response.rb +224 -224
  49. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_1_processor_information.rb +213 -213
  50. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_processor_information.rb +312 -295
  51. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response.rb +305 -305
  52. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_embedded_actions.rb +189 -189
  53. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_embedded_actions_ap_capture.rb +190 -190
  54. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_processor_information.rb +263 -263
  55. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_buyer_information_personal_identification.rb +207 -207
  56. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_payment_information_e_wallet.rb +241 -241
  57. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information.rb +18 -1
  58. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_embedded_actions.rb +25 -5
  59. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_embedded_actions_token_create.rb +212 -0
  60. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_embedded_actions_token_update.rb +212 -0
  61. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb +22 -5
  62. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +309 -309
  63. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information.rb +247 -227
  64. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_authorization_options.rb +196 -0
  65. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_capture_options.rb +196 -196
  66. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_purchase_options.rb +247 -0
  67. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +831 -814
  68. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_seller_protection.rb +237 -237
  69. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_processor_information.rb +313 -313
  70. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_processor_information.rb +320 -309
  71. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response_processor_information.rb +224 -224
  72. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response.rb +15 -5
  73. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_processing_information.rb +189 -0
  74. data/lib/cybersource_rest_client/models/pts_v2_update_order_patch201_response.rb +200 -200
  75. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_merchant_information.rb +205 -205
  76. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_order_information_amount_details.rb +302 -302
  77. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information.rb +189 -189
  78. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information_emv.rb +196 -196
  79. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information.rb +318 -318
  80. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information_payouts_options.rb +282 -282
  81. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information.rb +446 -446
  82. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_payment_information_card.rb +321 -321
  83. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_personal_identification.rb +256 -256
  84. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information.rb +533 -533
  85. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_account.rb +222 -222
  86. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_payment_information_card.rb +317 -317
  87. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_personal_identification.rb +256 -256
  88. data/lib/cybersource_rest_client/models/ptsv2billingagreements_installment_information.rb +1 -1
  89. data/lib/cybersource_rest_client/models/ptsv2intents_client_reference_information.rb +196 -196
  90. data/lib/cybersource_rest_client/models/ptsv2intents_merchant_information.rb +223 -223
  91. data/lib/cybersource_rest_client/models/ptsv2intents_merchant_information_merchant_descriptor.rb +207 -207
  92. data/lib/cybersource_rest_client/models/ptsv2intents_order_information.rb +231 -231
  93. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_amount_details.rb +315 -315
  94. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_bill_to.rb +196 -196
  95. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_invoice_details.rb +190 -190
  96. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_line_items.rb +309 -309
  97. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_ship_to.rb +332 -332
  98. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information.rb +189 -189
  99. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_payment_type.rb +200 -200
  100. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_payment_type_method.rb +190 -190
  101. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information.rb +219 -219
  102. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information_authorization_options.rb +196 -196
  103. data/lib/cybersource_rest_client/models/ptsv2intentsid_merchant_information.rb +189 -189
  104. data/lib/cybersource_rest_client/models/ptsv2intentsid_order_information.rb +221 -221
  105. data/lib/cybersource_rest_client/models/ptsv2intentsid_processing_information.rb +192 -192
  106. data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information.rb +90 -5
  107. data/lib/cybersource_rest_client/models/ptsv2payments_agreement_information.rb +207 -207
  108. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +229 -229
  109. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information.rb +56 -5
  110. data/lib/cybersource_rest_client/models/ptsv2payments_installment_information.rb +1 -1
  111. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_initiated_transaction.rb +22 -5
  112. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +651 -651
  113. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_octsurcharge.rb +196 -196
  114. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +18 -1
  115. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information.rb +19 -2
  116. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +789 -721
  117. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +529 -467
  118. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_capture_options.rb +298 -264
  119. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options.rb +6 -78
  120. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options_bonuses.rb +213 -0
  121. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_purchase_options.rb +56 -5
  122. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +147 -28
  123. data/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb +89 -28
  124. data/lib/cybersource_rest_client/models/ptsv2payments_sender_information_account.rb +230 -0
  125. data/lib/cybersource_rest_client/models/{tss_v2_transactions_get200_response_unscheduled_payment_information.rb → ptsv2payments_unscheduled_payment_information.rb} +7 -1
  126. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_installment_information.rb +1 -1
  127. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_authorization_options.rb +230 -230
  128. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_capture_options.rb +264 -247
  129. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_point_of_sale_information.rb +22 -5
  130. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information.rb +22 -5
  131. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_processing_information.rb +22 -5
  132. data/lib/cybersource_rest_client/models/{ptsv1pushfundstransfer_aggregator_information.rb → ptsv2payouts_aggregator_information.rb} +325 -240
  133. data/lib/cybersource_rest_client/models/{ptsv1pushfundstransfer_aggregator_information_sub_merchant.rb → ptsv2payouts_aggregator_information_sub_merchant.rb} +196 -196
  134. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +32 -5
  135. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information_purchase_options.rb +213 -0
  136. data/lib/cybersource_rest_client/models/ptsv2payouts_recipient_information.rb +90 -5
  137. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information.rb +22 -5
  138. data/lib/cybersource_rest_client/models/ptsv2refreshpaymentstatusid_processing_information.rb +192 -192
  139. data/lib/cybersource_rest_client/models/ptsv2voids_processing_information.rb +7 -1
  140. data/lib/cybersource_rest_client/models/push_funds201_response.rb +337 -337
  141. data/lib/cybersource_rest_client/models/push_funds201_response_error_information.rb +225 -225
  142. data/lib/cybersource_rest_client/models/push_funds201_response_payment_information.rb +189 -189
  143. data/lib/cybersource_rest_client/models/push_funds201_response_payment_information_tokenized_card.rb +205 -205
  144. data/lib/cybersource_rest_client/models/push_funds201_response_processing_information.rb +189 -189
  145. data/lib/cybersource_rest_client/models/push_funds201_response_processing_information_domestic_national_net.rb +197 -197
  146. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information.rb +329 -329
  147. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information_routing.rb +196 -196
  148. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information_settlement.rb +207 -207
  149. data/lib/cybersource_rest_client/models/push_funds201_response_recipient_information.rb +206 -206
  150. data/lib/cybersource_rest_client/models/push_funds502_response.rb +246 -246
  151. data/lib/cybersource_rest_client/models/push_funds_request.rb +264 -264
  152. data/lib/cybersource_rest_client/models/rbsv1subscriptions_processing_information.rb +206 -206
  153. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_line_items.rb +1 -10
  154. data/lib/cybersource_rest_client/models/sa_config_payment_methods.rb +191 -191
  155. data/lib/cybersource_rest_client/models/tms_bin_lookup.rb +200 -0
  156. data/lib/cybersource_rest_client/models/{inline_response_201_1_issuer_information.rb → tms_bin_lookup_issuer_information.rb} +1 -1
  157. data/lib/cybersource_rest_client/models/{inline_response_201_1_payment_account_information.rb → tms_bin_lookup_payment_account_information.rb} +4 -4
  158. data/lib/cybersource_rest_client/models/{inline_response_201_1_payment_account_information_card.rb → tms_bin_lookup_payment_account_information_card.rb} +2 -2
  159. data/lib/cybersource_rest_client/models/{inline_response_201_1_payment_account_information_card_brands.rb → tms_bin_lookup_payment_account_information_card_brands.rb} +1 -1
  160. data/lib/cybersource_rest_client/models/{inline_response_201_1_payment_account_information_features.rb → tms_bin_lookup_payment_account_information_features.rb} +1 -1
  161. data/lib/cybersource_rest_client/models/{inline_response_201_1_payment_account_information_network.rb → tms_bin_lookup_payment_account_information_network.rb} +1 -1
  162. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art.rb → tms_card_art.rb} +20 -39
  163. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_brand_logo_asset.rb → tms_card_art_brand_logo_asset.rb} +4 -3
  164. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_icon_asset__links.rb → tms_card_art_brand_logo_asset__links.rb} +2 -2
  165. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links_self.rb → tms_card_art_brand_logo_asset__links_self.rb} +2 -2
  166. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset.rb → tms_card_art_combined_asset.rb} +4 -3
  167. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_combined_asset__links.rb → tms_card_art_combined_asset__links.rb} +2 -2
  168. data/lib/cybersource_rest_client/models/tms_card_art_combined_asset__links_self.rb +190 -0
  169. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_icon_asset.rb → tms_card_art_icon_asset.rb} +4 -3
  170. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links.rb → tms_card_art_icon_asset__links.rb} +2 -2
  171. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links_self.rb → tms_card_art_icon_asset__links_self.rb} +2 -2
  172. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_combined_asset.rb → tms_card_art_issuer_logo_asset.rb} +4 -3
  173. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_background_asset__links.rb → tms_card_art_issuer_logo_asset__links.rb} +2 -2
  174. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_combined_asset__links_self.rb → tms_card_art_issuer_logo_asset__links_self.rb} +2 -2
  175. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier.rb +15 -5
  176. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier__embedded.rb +189 -0
  177. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier_bank_account.rb +1 -1
  178. data/lib/cybersource_rest_client/models/tms_network_token_services.rb +239 -0
  179. data/lib/cybersource_rest_client/models/tms_network_token_services_american_express_token_service.rb +253 -0
  180. data/lib/cybersource_rest_client/models/tms_network_token_services_mastercard_digital_enablement_service.rb +227 -0
  181. data/lib/cybersource_rest_client/models/tms_network_token_services_notifications.rb +190 -0
  182. data/lib/cybersource_rest_client/models/tms_network_token_services_payment_credentials.rb +190 -0
  183. data/lib/cybersource_rest_client/models/tms_network_token_services_synchronous_provisioning.rb +190 -0
  184. data/lib/cybersource_rest_client/models/tms_network_token_services_visa_token_service.rb +244 -0
  185. data/lib/cybersource_rest_client/models/tms_nullify.rb +212 -0
  186. data/lib/cybersource_rest_client/models/tms_payment_instrument_processing_info.rb +1 -1
  187. data/lib/cybersource_rest_client/models/tms_payment_instrument_processing_info_bank_transfer_options.rb +1 -1
  188. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_background_asset.rb → tms_sensitive_privileges.rb} +10 -20
  189. data/lib/cybersource_rest_client/models/tms_token_formats.rb +223 -0
  190. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card.rb +146 -60
  191. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card__links.rb +189 -0
  192. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_background_asset__links_self.rb → tmsv2_tokenized_card__links_self.rb} +2 -2
  193. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_card.rb +44 -16
  194. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata.rb +16 -5
  195. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_issuer.rb +213 -0
  196. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_passcode.rb +191 -0
  197. data/lib/cybersource_rest_client/models/tmsv2customers__embedded_default_payment_instrument_buyer_information.rb +1 -1
  198. data/lib/cybersource_rest_client/models/token_permissions.rb +223 -0
  199. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response.rb +1 -1
  200. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_point_of_sale_information.rb +1 -1
  201. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +1 -1
  202. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +251 -245
  203. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options.rb +80 -5
  204. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +383 -383
  205. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_multi_processor_routing.rb +235 -235
  206. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +1 -1
  207. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +223 -223
  208. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +392 -392
  209. data/lib/cybersource_rest_client/models/update_order_request.rb +229 -229
  210. data/lib/cybersource_rest_client/models/upv1capturecontexts_capture_mandate.rb +253 -253
  211. data/lib/cybersource_rest_client/models/upv1capturecontexts_order_information_amount_details.rb +201 -201
  212. data/lib/cybersource_rest_client/models/vt_config_card_not_present_global_payment_information_basic_information.rb +273 -273
  213. data/lib/cybersource_rest_client/models/vt_config_card_not_present_global_payment_information_payment_information.rb +315 -315
  214. data/lib/cybersource_rest_client.rb +48 -30
  215. metadata +51 -33
  216. data/lib/cybersource_rest_client/models/microformv2sessions_checkout_api_initialization.rb +0 -281
  217. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links.rb +0 -189
  218. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links_self.rb +0 -190
  219. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset.rb +0 -200
  220. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links.rb +0 -189
  221. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links_self.rb +0 -190
  222. data/lib/cybersource_rest_client/models/upv1capturecontexts_checkout_api_initialization.rb +0 -280
@@ -1,309 +1,309 @@
1
- =begin
2
- #CyberSource Merged Spec
3
-
4
- #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
-
6
- OpenAPI spec version: 0.0.1
7
-
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.38
10
- =end
11
-
12
- require 'date'
13
-
14
- module CyberSource
15
- class Ptsv2intentsOrderInformationLineItems
16
- # For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values that are related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes.
17
- attr_accessor :product_name
18
-
19
- # Brief description of item.
20
- attr_accessor :product_description
21
-
22
- # Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling. #### Tax Calculation Optional field for U.S. and Canadian taxes. Not applicable to international and value added taxes. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.
23
- attr_accessor :product_sku
24
-
25
- # Number of units for this order. Must be a non-negative integer. The default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes.
26
- attr_accessor :quantity
27
-
28
- # Flag to indicate whether the purchase is categorized as goods or services. Possible values: - 00: goods - 01: services
29
- attr_accessor :type_of_supply
30
-
31
- # Per-item price of the product. This value for this field cannot be negative. You must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request. You can include a decimal point (.), but you cannot include any other special characters. The value is truncated to the correct number of decimal places. #### DCC with a Third-Party Provider Set this field to the converted amount that was returned by the DCC provider. You must include either the 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request. #### Tax Calculation Required field for U.S., Canadian, international and value added taxes. #### Zero Amount Authorizations If your processor supports zero amount authorizations, you can set this field to 0 for the authorization to check if the card is lost or stolen. #### Maximum Field Lengths For GPN and JCN Gateway: Decimal (10) All other processors: Decimal (15)
32
- attr_accessor :unit_price
33
-
34
- # Total amount for the item. Normally calculated as the unit price times quantity. When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total for prepaid gift cards in major units. Example: 123.45 USD = 123
35
- attr_accessor :total_amount
36
-
37
- # Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must be in the same currency. The tax amount field is additive. The following example uses a two-exponent currency such as USD: 1. You include each line item in your request. ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80 ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included. Optional field. #### Airlines processing Tax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s). Format: English characters only. Optional request field for a line item. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. Note if you send this field in your tax request, the value in the field will override the tax engine
38
- attr_accessor :tax_amount
39
-
40
- # Attribute mapping from ruby-style variable name to JSON key.
41
- def self.attribute_map
42
- {
43
- :'product_name' => :'productName',
44
- :'product_description' => :'productDescription',
45
- :'product_sku' => :'productSku',
46
- :'quantity' => :'quantity',
47
- :'type_of_supply' => :'typeOfSupply',
48
- :'unit_price' => :'unitPrice',
49
- :'total_amount' => :'totalAmount',
50
- :'tax_amount' => :'taxAmount'
51
- }
52
- end
53
-
54
- # Attribute mapping from JSON key to ruby-style variable name.
55
- def self.json_map
56
- {
57
- :'product_name' => :'product_name',
58
- :'product_description' => :'product_description',
59
- :'product_sku' => :'product_sku',
60
- :'quantity' => :'quantity',
61
- :'type_of_supply' => :'type_of_supply',
62
- :'unit_price' => :'unit_price',
63
- :'total_amount' => :'total_amount',
64
- :'tax_amount' => :'tax_amount'
65
- }
66
- end
67
-
68
- # Attribute type mapping.
69
- def self.swagger_types
70
- {
71
- :'product_name' => :'String',
72
- :'product_description' => :'String',
73
- :'product_sku' => :'String',
74
- :'quantity' => :'Integer',
75
- :'type_of_supply' => :'String',
76
- :'unit_price' => :'String',
77
- :'total_amount' => :'String',
78
- :'tax_amount' => :'String'
79
- }
80
- end
81
-
82
- # Initializes the object
83
- # @param [Hash] attributes Model attributes in the form of hash
84
- def initialize(attributes = {})
85
- return unless attributes.is_a?(Hash)
86
-
87
- # convert string to symbol for hash key
88
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
89
-
90
- if attributes.has_key?(:'productName')
91
- self.product_name = attributes[:'productName']
92
- end
93
-
94
- if attributes.has_key?(:'productDescription')
95
- self.product_description = attributes[:'productDescription']
96
- end
97
-
98
- if attributes.has_key?(:'productSku')
99
- self.product_sku = attributes[:'productSku']
100
- end
101
-
102
- if attributes.has_key?(:'quantity')
103
- self.quantity = attributes[:'quantity']
104
- end
105
-
106
- if attributes.has_key?(:'typeOfSupply')
107
- self.type_of_supply = attributes[:'typeOfSupply']
108
- end
109
-
110
- if attributes.has_key?(:'unitPrice')
111
- self.unit_price = attributes[:'unitPrice']
112
- end
113
-
114
- if attributes.has_key?(:'totalAmount')
115
- self.total_amount = attributes[:'totalAmount']
116
- end
117
-
118
- if attributes.has_key?(:'taxAmount')
119
- self.tax_amount = attributes[:'taxAmount']
120
- end
121
- end
122
-
123
- # Show invalid properties with the reasons. Usually used together with valid?
124
- # @return Array for valid properties with the reasons
125
- def list_invalid_properties
126
- invalid_properties = Array.new
127
- invalid_properties
128
- end
129
-
130
- # Check to see if the all the properties in the model are valid
131
- # @return true if the model is valid
132
- def valid?
133
- true
134
- end
135
-
136
- # Custom attribute writer method with validation
137
- # @param [Object] product_name Value to be assigned
138
- def product_name=(product_name)
139
- @product_name = product_name
140
- end
141
-
142
- # Custom attribute writer method with validation
143
- # @param [Object] product_sku Value to be assigned
144
- def product_sku=(product_sku)
145
- @product_sku = product_sku
146
- end
147
-
148
- # Custom attribute writer method with validation
149
- # @param [Object] quantity Value to be assigned
150
- def quantity=(quantity)
151
- @quantity = quantity
152
- end
153
-
154
- # Custom attribute writer method with validation
155
- # @param [Object] type_of_supply Value to be assigned
156
- def type_of_supply=(type_of_supply)
157
- @type_of_supply = type_of_supply
158
- end
159
-
160
- # Custom attribute writer method with validation
161
- # @param [Object] unit_price Value to be assigned
162
- def unit_price=(unit_price)
163
- @unit_price = unit_price
164
- end
165
-
166
- # Custom attribute writer method with validation
167
- # @param [Object] total_amount Value to be assigned
168
- def total_amount=(total_amount)
169
- @total_amount = total_amount
170
- end
171
-
172
- # Custom attribute writer method with validation
173
- # @param [Object] tax_amount Value to be assigned
174
- def tax_amount=(tax_amount)
175
- @tax_amount = tax_amount
176
- end
177
-
178
- # Checks equality by comparing each attribute.
179
- # @param [Object] Object to be compared
180
- def ==(o)
181
- return true if self.equal?(o)
182
- self.class == o.class &&
183
- product_name == o.product_name &&
184
- product_description == o.product_description &&
185
- product_sku == o.product_sku &&
186
- quantity == o.quantity &&
187
- type_of_supply == o.type_of_supply &&
188
- unit_price == o.unit_price &&
189
- total_amount == o.total_amount &&
190
- tax_amount == o.tax_amount
191
- end
192
-
193
- # @see the `==` method
194
- # @param [Object] Object to be compared
195
- def eql?(o)
196
- self == o
197
- end
198
-
199
- # Calculates hash code according to all attributes.
200
- # @return [Fixnum] Hash code
201
- def hash
202
- [product_name, product_description, product_sku, quantity, type_of_supply, unit_price, total_amount, tax_amount].hash
203
- end
204
-
205
- # Builds the object from hash
206
- # @param [Hash] attributes Model attributes in the form of hash
207
- # @return [Object] Returns the model itself
208
- def build_from_hash(attributes)
209
- return nil unless attributes.is_a?(Hash)
210
- self.class.swagger_types.each_pair do |key, type|
211
- if type =~ /\AArray<(.*)>/i
212
- # check to ensure the input is an array given that the the attribute
213
- # is documented as an array but the input is not
214
- if attributes[self.class.attribute_map[key]].is_a?(Array)
215
- self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
216
- end
217
- elsif !attributes[self.class.attribute_map[key]].nil?
218
- self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
219
- end # or else data not found in attributes(hash), not an issue as the data can be optional
220
- end
221
-
222
- self
223
- end
224
-
225
- # Deserializes the data based on type
226
- # @param string type Data type
227
- # @param string value Value to be deserialized
228
- # @return [Object] Deserialized data
229
- def _deserialize(type, value)
230
- case type.to_sym
231
- when :DateTime
232
- DateTime.parse(value)
233
- when :Date
234
- Date.parse(value)
235
- when :String
236
- value.to_s
237
- when :Integer
238
- value.to_i
239
- when :Float
240
- value.to_f
241
- when :BOOLEAN
242
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
243
- true
244
- else
245
- false
246
- end
247
- when :Object
248
- # generic object (usually a Hash), return directly
249
- value
250
- when /\AArray<(?<inner_type>.+)>\z/
251
- inner_type = Regexp.last_match[:inner_type]
252
- value.map { |v| _deserialize(inner_type, v) }
253
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
254
- k_type = Regexp.last_match[:k_type]
255
- v_type = Regexp.last_match[:v_type]
256
- {}.tap do |hash|
257
- value.each do |k, v|
258
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
259
- end
260
- end
261
- else # model
262
- temp_model = CyberSource.const_get(type).new
263
- temp_model.build_from_hash(value)
264
- end
265
- end
266
-
267
- # Returns the string representation of the object
268
- # @return [String] String presentation of the object
269
- def to_s
270
- to_hash.to_s
271
- end
272
-
273
- # to_body is an alias to to_hash (backward compatibility)
274
- # @return [Hash] Returns the object in the form of hash
275
- def to_body
276
- to_hash
277
- end
278
-
279
- # Returns the object in the form of hash
280
- # @return [Hash] Returns the object in the form of hash
281
- def to_hash
282
- hash = {}
283
- self.class.attribute_map.each_pair do |attr, param|
284
- value = self.send(attr)
285
- next if value.nil?
286
- hash[param] = _to_hash(value)
287
- end
288
- hash
289
- end
290
-
291
- # Outputs non-array value in the form of hash
292
- # For object, use to_hash. Otherwise, just return the value
293
- # @param [Object] value Any valid value
294
- # @return [Hash] Returns the value in the form of hash
295
- def _to_hash(value)
296
- if value.is_a?(Array)
297
- value.compact.map { |v| _to_hash(v) }
298
- elsif value.is_a?(Hash)
299
- {}.tap do |hash|
300
- value.each { |k, v| hash[k] = _to_hash(v) }
301
- end
302
- elsif value.respond_to? :to_hash
303
- value.to_hash
304
- else
305
- value
306
- end
307
- end
308
- end
309
- end
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.38
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module CyberSource
15
+ class Ptsv2intentsOrderInformationLineItems
16
+ # For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values that are related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes.
17
+ attr_accessor :product_name
18
+
19
+ # Brief description of item.
20
+ attr_accessor :product_description
21
+
22
+ # Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling. #### Tax Calculation Optional field for U.S. and Canadian taxes. Not applicable to international and value added taxes. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.
23
+ attr_accessor :product_sku
24
+
25
+ # Number of units for this order. Must be a non-negative integer. The default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes.
26
+ attr_accessor :quantity
27
+
28
+ # Flag to indicate whether the purchase is categorized as goods or services. Possible values: - 00: goods - 01: services
29
+ attr_accessor :type_of_supply
30
+
31
+ # Per-item price of the product. This value for this field cannot be negative. You must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request. You can include a decimal point (.), but you cannot include any other special characters. The value is truncated to the correct number of decimal places. #### DCC with a Third-Party Provider Set this field to the converted amount that was returned by the DCC provider. You must include either the 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request. #### Tax Calculation Required field for U.S., Canadian, international and value added taxes. #### Zero Amount Authorizations If your processor supports zero amount authorizations, you can set this field to 0 for the authorization to check if the card is lost or stolen. #### Maximum Field Lengths For GPN and JCN Gateway: Decimal (10) All other processors: Decimal (15)
32
+ attr_accessor :unit_price
33
+
34
+ # Total amount for the item. Normally calculated as the unit price times quantity. When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total for prepaid gift cards in major units. Example: 123.45 USD = 123
35
+ attr_accessor :total_amount
36
+
37
+ # Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must be in the same currency. The tax amount field is additive. The following example uses a two-exponent currency such as USD: 1. You include each line item in your request. ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80 ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included. Optional field. #### Airlines processing Tax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s). Format: English characters only. Optional request field for a line item. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. Note if you send this field in your tax request, the value in the field will override the tax engine
38
+ attr_accessor :tax_amount
39
+
40
+ # Attribute mapping from ruby-style variable name to JSON key.
41
+ def self.attribute_map
42
+ {
43
+ :'product_name' => :'productName',
44
+ :'product_description' => :'productDescription',
45
+ :'product_sku' => :'productSku',
46
+ :'quantity' => :'quantity',
47
+ :'type_of_supply' => :'typeOfSupply',
48
+ :'unit_price' => :'unitPrice',
49
+ :'total_amount' => :'totalAmount',
50
+ :'tax_amount' => :'taxAmount'
51
+ }
52
+ end
53
+
54
+ # Attribute mapping from JSON key to ruby-style variable name.
55
+ def self.json_map
56
+ {
57
+ :'product_name' => :'product_name',
58
+ :'product_description' => :'product_description',
59
+ :'product_sku' => :'product_sku',
60
+ :'quantity' => :'quantity',
61
+ :'type_of_supply' => :'type_of_supply',
62
+ :'unit_price' => :'unit_price',
63
+ :'total_amount' => :'total_amount',
64
+ :'tax_amount' => :'tax_amount'
65
+ }
66
+ end
67
+
68
+ # Attribute type mapping.
69
+ def self.swagger_types
70
+ {
71
+ :'product_name' => :'String',
72
+ :'product_description' => :'String',
73
+ :'product_sku' => :'String',
74
+ :'quantity' => :'Integer',
75
+ :'type_of_supply' => :'String',
76
+ :'unit_price' => :'String',
77
+ :'total_amount' => :'String',
78
+ :'tax_amount' => :'String'
79
+ }
80
+ end
81
+
82
+ # Initializes the object
83
+ # @param [Hash] attributes Model attributes in the form of hash
84
+ def initialize(attributes = {})
85
+ return unless attributes.is_a?(Hash)
86
+
87
+ # convert string to symbol for hash key
88
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
89
+
90
+ if attributes.has_key?(:'productName')
91
+ self.product_name = attributes[:'productName']
92
+ end
93
+
94
+ if attributes.has_key?(:'productDescription')
95
+ self.product_description = attributes[:'productDescription']
96
+ end
97
+
98
+ if attributes.has_key?(:'productSku')
99
+ self.product_sku = attributes[:'productSku']
100
+ end
101
+
102
+ if attributes.has_key?(:'quantity')
103
+ self.quantity = attributes[:'quantity']
104
+ end
105
+
106
+ if attributes.has_key?(:'typeOfSupply')
107
+ self.type_of_supply = attributes[:'typeOfSupply']
108
+ end
109
+
110
+ if attributes.has_key?(:'unitPrice')
111
+ self.unit_price = attributes[:'unitPrice']
112
+ end
113
+
114
+ if attributes.has_key?(:'totalAmount')
115
+ self.total_amount = attributes[:'totalAmount']
116
+ end
117
+
118
+ if attributes.has_key?(:'taxAmount')
119
+ self.tax_amount = attributes[:'taxAmount']
120
+ end
121
+ end
122
+
123
+ # Show invalid properties with the reasons. Usually used together with valid?
124
+ # @return Array for valid properties with the reasons
125
+ def list_invalid_properties
126
+ invalid_properties = Array.new
127
+ invalid_properties
128
+ end
129
+
130
+ # Check to see if the all the properties in the model are valid
131
+ # @return true if the model is valid
132
+ def valid?
133
+ true
134
+ end
135
+
136
+ # Custom attribute writer method with validation
137
+ # @param [Object] product_name Value to be assigned
138
+ def product_name=(product_name)
139
+ @product_name = product_name
140
+ end
141
+
142
+ # Custom attribute writer method with validation
143
+ # @param [Object] product_sku Value to be assigned
144
+ def product_sku=(product_sku)
145
+ @product_sku = product_sku
146
+ end
147
+
148
+ # Custom attribute writer method with validation
149
+ # @param [Object] quantity Value to be assigned
150
+ def quantity=(quantity)
151
+ @quantity = quantity
152
+ end
153
+
154
+ # Custom attribute writer method with validation
155
+ # @param [Object] type_of_supply Value to be assigned
156
+ def type_of_supply=(type_of_supply)
157
+ @type_of_supply = type_of_supply
158
+ end
159
+
160
+ # Custom attribute writer method with validation
161
+ # @param [Object] unit_price Value to be assigned
162
+ def unit_price=(unit_price)
163
+ @unit_price = unit_price
164
+ end
165
+
166
+ # Custom attribute writer method with validation
167
+ # @param [Object] total_amount Value to be assigned
168
+ def total_amount=(total_amount)
169
+ @total_amount = total_amount
170
+ end
171
+
172
+ # Custom attribute writer method with validation
173
+ # @param [Object] tax_amount Value to be assigned
174
+ def tax_amount=(tax_amount)
175
+ @tax_amount = tax_amount
176
+ end
177
+
178
+ # Checks equality by comparing each attribute.
179
+ # @param [Object] Object to be compared
180
+ def ==(o)
181
+ return true if self.equal?(o)
182
+ self.class == o.class &&
183
+ product_name == o.product_name &&
184
+ product_description == o.product_description &&
185
+ product_sku == o.product_sku &&
186
+ quantity == o.quantity &&
187
+ type_of_supply == o.type_of_supply &&
188
+ unit_price == o.unit_price &&
189
+ total_amount == o.total_amount &&
190
+ tax_amount == o.tax_amount
191
+ end
192
+
193
+ # @see the `==` method
194
+ # @param [Object] Object to be compared
195
+ def eql?(o)
196
+ self == o
197
+ end
198
+
199
+ # Calculates hash code according to all attributes.
200
+ # @return [Fixnum] Hash code
201
+ def hash
202
+ [product_name, product_description, product_sku, quantity, type_of_supply, unit_price, total_amount, tax_amount].hash
203
+ end
204
+
205
+ # Builds the object from hash
206
+ # @param [Hash] attributes Model attributes in the form of hash
207
+ # @return [Object] Returns the model itself
208
+ def build_from_hash(attributes)
209
+ return nil unless attributes.is_a?(Hash)
210
+ self.class.swagger_types.each_pair do |key, type|
211
+ if type =~ /\AArray<(.*)>/i
212
+ # check to ensure the input is an array given that the the attribute
213
+ # is documented as an array but the input is not
214
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
215
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
216
+ end
217
+ elsif !attributes[self.class.attribute_map[key]].nil?
218
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
219
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
220
+ end
221
+
222
+ self
223
+ end
224
+
225
+ # Deserializes the data based on type
226
+ # @param string type Data type
227
+ # @param string value Value to be deserialized
228
+ # @return [Object] Deserialized data
229
+ def _deserialize(type, value)
230
+ case type.to_sym
231
+ when :DateTime
232
+ DateTime.parse(value)
233
+ when :Date
234
+ Date.parse(value)
235
+ when :String
236
+ value.to_s
237
+ when :Integer
238
+ value.to_i
239
+ when :Float
240
+ value.to_f
241
+ when :BOOLEAN
242
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
243
+ true
244
+ else
245
+ false
246
+ end
247
+ when :Object
248
+ # generic object (usually a Hash), return directly
249
+ value
250
+ when /\AArray<(?<inner_type>.+)>\z/
251
+ inner_type = Regexp.last_match[:inner_type]
252
+ value.map { |v| _deserialize(inner_type, v) }
253
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
254
+ k_type = Regexp.last_match[:k_type]
255
+ v_type = Regexp.last_match[:v_type]
256
+ {}.tap do |hash|
257
+ value.each do |k, v|
258
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
259
+ end
260
+ end
261
+ else # model
262
+ temp_model = CyberSource.const_get(type).new
263
+ temp_model.build_from_hash(value)
264
+ end
265
+ end
266
+
267
+ # Returns the string representation of the object
268
+ # @return [String] String presentation of the object
269
+ def to_s
270
+ to_hash.to_s
271
+ end
272
+
273
+ # to_body is an alias to to_hash (backward compatibility)
274
+ # @return [Hash] Returns the object in the form of hash
275
+ def to_body
276
+ to_hash
277
+ end
278
+
279
+ # Returns the object in the form of hash
280
+ # @return [Hash] Returns the object in the form of hash
281
+ def to_hash
282
+ hash = {}
283
+ self.class.attribute_map.each_pair do |attr, param|
284
+ value = self.send(attr)
285
+ next if value.nil?
286
+ hash[param] = _to_hash(value)
287
+ end
288
+ hash
289
+ end
290
+
291
+ # Outputs non-array value in the form of hash
292
+ # For object, use to_hash. Otherwise, just return the value
293
+ # @param [Object] value Any valid value
294
+ # @return [Hash] Returns the value in the form of hash
295
+ def _to_hash(value)
296
+ if value.is_a?(Array)
297
+ value.compact.map { |v| _to_hash(v) }
298
+ elsif value.is_a?(Hash)
299
+ {}.tap do |hash|
300
+ value.each { |k, v| hash[k] = _to_hash(v) }
301
+ end
302
+ elsif value.respond_to? :to_hash
303
+ value.to_hash
304
+ else
305
+ value
306
+ end
307
+ end
308
+ end
309
+ end