cybersource_rest_client 0.0.65 → 0.0.67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (255) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/core/MerchantConfig.rb +2 -0
  3. data/lib/cybersource_rest_client/api/batches_api.rb +1 -1
  4. data/lib/cybersource_rest_client/api/billing_agreements_api.rb +3 -3
  5. data/lib/cybersource_rest_client/api/bin_lookup_api.rb +1 -1
  6. data/lib/cybersource_rest_client/api/capture_api.rb +1 -1
  7. data/lib/cybersource_rest_client/api/create_new_webhooks_api.rb +2 -2
  8. data/lib/cybersource_rest_client/api/credit_api.rb +1 -1
  9. data/lib/cybersource_rest_client/api/customer_api.rb +2 -2
  10. data/lib/cybersource_rest_client/api/customer_payment_instrument_api.rb +2 -2
  11. data/lib/cybersource_rest_client/api/customer_shipping_address_api.rb +2 -2
  12. data/lib/cybersource_rest_client/api/decision_manager_api.rb +5 -5
  13. data/lib/cybersource_rest_client/api/emv_tag_details_api.rb +1 -1
  14. data/lib/cybersource_rest_client/api/flex_api_api.rb +92 -0
  15. data/lib/cybersource_rest_client/api/instrument_identifier_api.rb +3 -3
  16. data/lib/cybersource_rest_client/api/invoice_settings_api.rb +1 -1
  17. data/lib/cybersource_rest_client/api/invoices_api.rb +2 -2
  18. data/lib/cybersource_rest_client/api/manage_webhooks_api.rb +2 -2
  19. data/lib/cybersource_rest_client/api/merchant_boarding_api.rb +1 -3
  20. data/lib/cybersource_rest_client/api/microform_integration_api.rb +1 -1
  21. data/lib/cybersource_rest_client/api/orders_api.rb +167 -0
  22. data/lib/cybersource_rest_client/api/payer_authentication_api.rb +3 -3
  23. data/lib/cybersource_rest_client/api/payment_instrument_api.rb +2 -2
  24. data/lib/cybersource_rest_client/api/payments_api.rb +6 -6
  25. data/lib/cybersource_rest_client/api/payouts_api.rb +1 -1
  26. data/lib/cybersource_rest_client/api/plans_api.rb +2 -2
  27. data/lib/cybersource_rest_client/api/push_funds_api.rb +1 -1
  28. data/lib/cybersource_rest_client/api/refund_api.rb +2 -2
  29. data/lib/cybersource_rest_client/api/replay_webhooks_api.rb +1 -1
  30. data/lib/cybersource_rest_client/api/report_subscriptions_api.rb +2 -2
  31. data/lib/cybersource_rest_client/api/reports_api.rb +1 -1
  32. data/lib/cybersource_rest_client/api/reversal_api.rb +2 -2
  33. data/lib/cybersource_rest_client/api/search_transactions_api.rb +1 -1
  34. data/lib/cybersource_rest_client/api/subscriptions_api.rb +2 -2
  35. data/lib/cybersource_rest_client/api/taxes_api.rb +2 -2
  36. data/lib/cybersource_rest_client/api/token_api.rb +1 -1
  37. data/lib/cybersource_rest_client/api/unified_checkout_capture_context_api.rb +1 -1
  38. data/lib/cybersource_rest_client/api/user_management_search_api.rb +1 -1
  39. data/lib/cybersource_rest_client/api/verification_api.rb +2 -2
  40. data/lib/cybersource_rest_client/api/void_api.rb +5 -5
  41. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information.rb +314 -360
  42. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_business_information.rb +437 -483
  43. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc.rb +337 -381
  44. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc_deposit_bank_account.rb +297 -330
  45. data/lib/cybersource_rest_client/models/boardingv1registrations_registration_information.rb +271 -329
  46. data/lib/cybersource_rest_client/models/card_processing_config_common.rb +433 -445
  47. data/lib/cybersource_rest_client/models/card_processing_config_common_acquirer.rb +23 -1
  48. data/lib/cybersource_rest_client/models/card_processing_config_common_merchant_descriptor_information.rb +16 -5
  49. data/lib/cybersource_rest_client/models/card_processing_config_common_processors.rb +719 -720
  50. data/lib/cybersource_rest_client/models/check_payer_auth_enrollment_request.rb +321 -321
  51. data/lib/cybersource_rest_client/models/create_order_request.rb +229 -0
  52. data/lib/cybersource_rest_client/models/create_payment_request.rb +462 -462
  53. data/lib/cybersource_rest_client/models/flexv2sessions_fields.rb +199 -0
  54. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information.rb +209 -0
  55. data/lib/cybersource_rest_client/models/{inline_response_400_5_details.rb → flexv2sessions_fields_order_information_amount_details.rb} +199 -201
  56. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_amount_details_total_amount.rb +189 -0
  57. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_bill_to.rb +309 -0
  58. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_ship_to.rb +289 -0
  59. data/lib/cybersource_rest_client/models/flexv2sessions_fields_payment_information.rb +189 -0
  60. data/lib/cybersource_rest_client/models/flexv2sessions_fields_payment_information_card.rb +229 -0
  61. data/lib/cybersource_rest_client/models/generate_capture_context_request.rb +227 -225
  62. data/lib/cybersource_rest_client/models/generate_flex_api_capture_context_request.rb +189 -0
  63. data/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +293 -290
  64. data/lib/cybersource_rest_client/models/inline_response_200_1.rb +253 -253
  65. data/lib/cybersource_rest_client/models/inline_response_200_1_integration_information.rb +204 -204
  66. data/lib/cybersource_rest_client/models/inline_response_200_1_integration_information_tenant_configurations.rb +1 -34
  67. data/lib/cybersource_rest_client/models/inline_response_200_2.rb +213 -213
  68. data/lib/cybersource_rest_client/models/inline_response_200_3.rb +335 -335
  69. data/lib/cybersource_rest_client/models/inline_response_200_5.rb +251 -251
  70. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded.rb +191 -191
  71. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded__links.rb +191 -191
  72. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded__links_reports.rb +190 -190
  73. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded_batches.rb +295 -295
  74. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded_totals.rb +229 -229
  75. data/lib/cybersource_rest_client/models/inline_response_200_5__links.rb +200 -200
  76. data/lib/cybersource_rest_client/models/inline_response_200_6.rb +290 -290
  77. data/lib/cybersource_rest_client/models/inline_response_200_6__links.rb +201 -201
  78. data/lib/cybersource_rest_client/models/inline_response_200_6__links_report.rb +189 -189
  79. data/lib/cybersource_rest_client/models/inline_response_200_6_billing.rb +219 -219
  80. data/lib/cybersource_rest_client/models/inline_response_200_7.rb +292 -292
  81. data/lib/cybersource_rest_client/models/inline_response_200_7_records.rb +209 -209
  82. data/lib/cybersource_rest_client/models/inline_response_200_7_response_record.rb +307 -307
  83. data/lib/cybersource_rest_client/models/inline_response_200_7_response_record_additional_updates.rb +242 -242
  84. data/lib/cybersource_rest_client/models/inline_response_200_7_source_record.rb +295 -295
  85. data/lib/cybersource_rest_client/models/inline_response_201_2.rb +281 -315
  86. data/lib/cybersource_rest_client/models/inline_response_201_2_integration_information_tenant_configurations.rb +253 -286
  87. data/lib/cybersource_rest_client/models/inline_response_201_2_registration_information.rb +222 -256
  88. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments.rb +359 -359
  89. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_card_processing_configuration_status.rb +255 -299
  90. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_card_processing_subscription_status.rb +234 -278
  91. data/lib/cybersource_rest_client/models/inline_response_400_1.rb +242 -235
  92. data/lib/cybersource_rest_client/models/inline_response_400_1_details.rb +199 -0
  93. data/lib/cybersource_rest_client/models/inline_response_400_2.rb +3 -3
  94. data/lib/cybersource_rest_client/models/inline_response_400_3.rb +1 -1
  95. data/lib/cybersource_rest_client/models/inline_response_400_4.rb +37 -60
  96. data/lib/cybersource_rest_client/models/inline_response_400_5.rb +258 -269
  97. data/lib/cybersource_rest_client/models/{inline_response_400_4_fields.rb → inline_response_400_5_fields.rb} +1 -1
  98. data/lib/cybersource_rest_client/models/inline_response_400_6.rb +35 -75
  99. data/lib/cybersource_rest_client/models/inline_response_400_6_details.rb +201 -199
  100. data/lib/cybersource_rest_client/models/inline_response_404_1.rb +2 -36
  101. data/lib/cybersource_rest_client/models/inline_response_422_1.rb +2 -36
  102. data/lib/cybersource_rest_client/models/inline_response_500_2.rb +1 -35
  103. data/lib/cybersource_rest_client/models/microformv2sessions_checkout_api_initialization.rb +281 -279
  104. data/lib/cybersource_rest_client/models/patch_instrument_identifier_request.rb +1 -1
  105. data/lib/cybersource_rest_client/models/payer_auth_config_card_types_verified_by_visa_currencies.rb +244 -244
  106. data/lib/cybersource_rest_client/models/payer_auth_setup_request.rb +219 -219
  107. data/lib/cybersource_rest_client/models/payments_products.rb +369 -369
  108. data/lib/cybersource_rest_client/models/payments_products_card_present_connect_subscription_information.rb +202 -236
  109. data/lib/cybersource_rest_client/models/payments_products_card_processing_subscription_information.rb +215 -249
  110. data/lib/cybersource_rest_client/models/payments_products_differential_fee_subscription_information.rb +212 -246
  111. data/lib/cybersource_rest_client/models/payments_products_digital_payments_subscription_information.rb +215 -249
  112. data/lib/cybersource_rest_client/models/payments_products_e_check_subscription_information.rb +215 -249
  113. data/lib/cybersource_rest_client/models/payments_products_payer_authentication_subscription_information.rb +202 -236
  114. data/lib/cybersource_rest_client/models/payments_products_service_fee.rb +199 -199
  115. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information.rb +189 -189
  116. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations.rb +266 -266
  117. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_merchant_information.rb +239 -239
  118. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_payment_information.rb +2 -48
  119. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_products.rb +190 -190
  120. data/lib/cybersource_rest_client/models/post_instrument_identifier_enrollment_request.rb +1 -1
  121. data/lib/cybersource_rest_client/models/post_instrument_identifier_request.rb +1 -1
  122. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response.rb +269 -0
  123. data/lib/cybersource_rest_client/models/{tss_v2_transactions_post201_response__embedded_buyer_information.rb → pts_v2_create_order_post201_response_buyer_information.rb} +196 -196
  124. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response_processor_information.rb +224 -0
  125. data/lib/cybersource_rest_client/models/{bin_lookupv400_response.rb → pts_v2_create_order_post400_response.rb} +224 -224
  126. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_1_processor_information.rb +213 -213
  127. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_processor_information.rb +295 -284
  128. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response.rb +305 -295
  129. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_embedded_actions.rb +189 -0
  130. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_embedded_actions_ap_capture.rb +190 -0
  131. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_processor_information.rb +263 -252
  132. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_buyer_information_personal_identification.rb +207 -207
  133. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_payment_information_e_wallet.rb +241 -230
  134. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_embedded_actions_consumer_authentication.rb +212 -212
  135. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +309 -309
  136. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information.rb +227 -217
  137. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_capture_options.rb +196 -0
  138. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +67 -6
  139. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_seller_protection.rb +237 -218
  140. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_processor_information.rb +313 -302
  141. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response.rb +1 -1
  142. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_processor_information.rb +309 -309
  143. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response_processor_information.rb +224 -224
  144. data/lib/cybersource_rest_client/models/pts_v2_update_order_patch201_response.rb +200 -0
  145. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_aggregator_information.rb +240 -0
  146. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_aggregator_information_sub_merchant.rb +196 -0
  147. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_merchant_information.rb +205 -0
  148. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_order_information_amount_details.rb +302 -292
  149. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information.rb +189 -0
  150. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information_emv.rb +196 -0
  151. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information.rb +318 -232
  152. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information_payouts_options.rb +282 -231
  153. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information.rb +446 -378
  154. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_payment_information_card.rb +321 -321
  155. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_personal_identification.rb +256 -239
  156. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information.rb +533 -448
  157. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_account.rb +222 -222
  158. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_payment_information_card.rb +317 -317
  159. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_personal_identification.rb +256 -256
  160. data/lib/cybersource_rest_client/models/ptsv2intents_client_reference_information.rb +196 -0
  161. data/lib/cybersource_rest_client/models/ptsv2intents_merchant_information.rb +223 -0
  162. data/lib/cybersource_rest_client/models/ptsv2intents_merchant_information_merchant_descriptor.rb +207 -0
  163. data/lib/cybersource_rest_client/models/ptsv2intents_order_information.rb +231 -0
  164. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_amount_details.rb +315 -0
  165. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_bill_to.rb +196 -0
  166. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_invoice_details.rb +190 -0
  167. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_line_items.rb +309 -0
  168. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_ship_to.rb +332 -0
  169. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information.rb +189 -0
  170. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_payment_type.rb +200 -0
  171. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_payment_type_method.rb +190 -0
  172. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information.rb +219 -0
  173. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information_authorization_options.rb +196 -0
  174. data/lib/cybersource_rest_client/models/ptsv2intentsid_merchant_information.rb +189 -0
  175. data/lib/cybersource_rest_client/models/ptsv2intentsid_order_information.rb +221 -0
  176. data/lib/cybersource_rest_client/models/ptsv2intentsid_processing_information.rb +192 -0
  177. data/lib/cybersource_rest_client/models/ptsv2payments_agreement_information.rb +207 -190
  178. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +229 -229
  179. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +651 -641
  180. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_octsurcharge.rb +196 -0
  181. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +721 -704
  182. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +1 -1
  183. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_capture_options.rb +264 -247
  184. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +383 -383
  185. data/lib/cybersource_rest_client/models/ptsv2payments_recurring_payment_information.rb +14 -0
  186. data/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb +298 -298
  187. data/lib/cybersource_rest_client/models/ptsv2paymentsid_client_reference_information.rb +22 -5
  188. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_authorization_options.rb +230 -230
  189. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_capture_options.rb +247 -230
  190. data/lib/cybersource_rest_client/models/ptsv2refreshpaymentstatusid_processing_information.rb +192 -192
  191. data/lib/cybersource_rest_client/models/push_funds201_response.rb +337 -317
  192. data/lib/cybersource_rest_client/models/push_funds201_response_error_information.rb +225 -225
  193. data/lib/cybersource_rest_client/models/push_funds201_response_payment_information.rb +189 -0
  194. data/lib/cybersource_rest_client/models/push_funds201_response_payment_information_tokenized_card.rb +205 -0
  195. data/lib/cybersource_rest_client/models/push_funds201_response_processing_information.rb +189 -0
  196. data/lib/cybersource_rest_client/models/push_funds201_response_processing_information_domestic_national_net.rb +197 -0
  197. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information.rb +329 -241
  198. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information_routing.rb +196 -0
  199. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information_settlement.rb +207 -0
  200. data/lib/cybersource_rest_client/models/push_funds201_response_recipient_information.rb +206 -189
  201. data/lib/cybersource_rest_client/models/push_funds502_response.rb +246 -246
  202. data/lib/cybersource_rest_client/models/push_funds_request.rb +264 -239
  203. data/lib/cybersource_rest_client/models/rbsv1subscriptions_processing_information.rb +206 -206
  204. data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response.rb +269 -269
  205. data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response_consumer_authentication_information.rb +622 -622
  206. data/lib/cybersource_rest_client/models/risk_v1_authentications_post201_response.rb +279 -279
  207. data/lib/cybersource_rest_client/models/risk_v1_authentications_post400_response_1.rb +235 -235
  208. data/lib/cybersource_rest_client/models/riskv1authenticationresults_consumer_authentication_information.rb +312 -312
  209. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information.rb +1 -1
  210. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_card.rb +241 -241
  211. data/lib/cybersource_rest_client/models/riskv1authentications_device_information.rb +434 -434
  212. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information.rb +219 -219
  213. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_customer.rb +222 -0
  214. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_client_reference_information.rb +240 -240
  215. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_customer.rb +9 -0
  216. data/lib/cybersource_rest_client/models/riskv1decisions_consumer_authentication_information.rb +795 -812
  217. data/lib/cybersource_rest_client/models/sa_config_payment_methods.rb +191 -213
  218. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier.rb +1 -1
  219. data/lib/cybersource_rest_client/models/{tms_embedded_instrument_identifier_tokenized_card.rb → tmsv2_tokenized_card.rb} +16 -6
  220. data/lib/cybersource_rest_client/models/{tms_embedded_instrument_identifier_tokenized_card_card.rb → tmsv2_tokenized_card_card.rb} +1 -1
  221. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata.rb +189 -0
  222. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art.rb +250 -0
  223. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset.rb +200 -0
  224. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset__links.rb +189 -0
  225. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset__links_self.rb +190 -0
  226. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset.rb +200 -0
  227. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links.rb +189 -0
  228. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links_self.rb +190 -0
  229. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset.rb +200 -0
  230. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links.rb +189 -0
  231. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links_self.rb +190 -0
  232. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset.rb +200 -0
  233. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset__links.rb +189 -0
  234. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset__links_self.rb +190 -0
  235. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset.rb +200 -0
  236. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links.rb +189 -0
  237. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links_self.rb +190 -0
  238. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset.rb +200 -0
  239. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links.rb +189 -0
  240. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links_self.rb +190 -0
  241. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +245 -245
  242. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +383 -383
  243. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_multi_processor_routing.rb +235 -235
  244. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +223 -206
  245. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +392 -392
  246. data/lib/cybersource_rest_client/models/update_order_request.rb +229 -0
  247. data/lib/cybersource_rest_client/models/upv1capturecontexts_capture_mandate.rb +253 -253
  248. data/lib/cybersource_rest_client/models/upv1capturecontexts_checkout_api_initialization.rb +280 -279
  249. data/lib/cybersource_rest_client/models/upv1capturecontexts_order_information_amount_details.rb +201 -199
  250. data/lib/cybersource_rest_client/models/validate_request.rb +249 -249
  251. data/lib/cybersource_rest_client/models/vt_config_card_not_present_global_payment_information_basic_information.rb +273 -317
  252. data/lib/cybersource_rest_client/models/vt_config_card_not_present_global_payment_information_payment_information.rb +315 -337
  253. data/lib/cybersource_rest_client/utilities/tracking/sdk_tracker.rb +5 -1
  254. data/lib/cybersource_rest_client.rb +75 -6
  255. metadata +78 -29
@@ -1,190 +1,190 @@
1
- =begin
2
- #CyberSource Merged Spec
3
-
4
- #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
-
6
- OpenAPI spec version: 0.0.1
7
-
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.38
10
- =end
11
-
12
- require 'date'
13
-
14
- module CyberSource
15
- class PaymentsProductsServiceFeeConfigurationInformationConfigurationsProducts
16
- # Boolean flag to determine if service fee will be applied to the Product.
17
- attr_accessor :service_fee_enabled
18
-
19
- # Attribute mapping from ruby-style variable name to JSON key.
20
- def self.attribute_map
21
- {
22
- :'service_fee_enabled' => :'serviceFeeEnabled'
23
- }
24
- end
25
-
26
- # Attribute mapping from JSON key to ruby-style variable name.
27
- def self.json_map
28
- {
29
- :'service_fee_enabled' => :'service_fee_enabled'
30
- }
31
- end
32
-
33
- # Attribute type mapping.
34
- def self.swagger_types
35
- {
36
- :'service_fee_enabled' => :'BOOLEAN'
37
- }
38
- end
39
-
40
- # Initializes the object
41
- # @param [Hash] attributes Model attributes in the form of hash
42
- def initialize(attributes = {})
43
- return unless attributes.is_a?(Hash)
44
-
45
- # convert string to symbol for hash key
46
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
47
-
48
- if attributes.has_key?(:'serviceFeeEnabled')
49
- self.service_fee_enabled = attributes[:'serviceFeeEnabled']
50
- end
51
- end
52
-
53
- # Show invalid properties with the reasons. Usually used together with valid?
54
- # @return Array for valid properties with the reasons
55
- def list_invalid_properties
56
- invalid_properties = Array.new
57
- invalid_properties
58
- end
59
-
60
- # Check to see if the all the properties in the model are valid
61
- # @return true if the model is valid
62
- def valid?
63
- true
64
- end
65
-
66
- # Checks equality by comparing each attribute.
67
- # @param [Object] Object to be compared
68
- def ==(o)
69
- return true if self.equal?(o)
70
- self.class == o.class &&
71
- service_fee_enabled == o.service_fee_enabled
72
- end
73
-
74
- # @see the `==` method
75
- # @param [Object] Object to be compared
76
- def eql?(o)
77
- self == o
78
- end
79
-
80
- # Calculates hash code according to all attributes.
81
- # @return [Fixnum] Hash code
82
- def hash
83
- [service_fee_enabled].hash
84
- end
85
-
86
- # Builds the object from hash
87
- # @param [Hash] attributes Model attributes in the form of hash
88
- # @return [Object] Returns the model itself
89
- def build_from_hash(attributes)
90
- return nil unless attributes.is_a?(Hash)
91
- self.class.swagger_types.each_pair do |key, type|
92
- if type =~ /\AArray<(.*)>/i
93
- # check to ensure the input is an array given that the the attribute
94
- # is documented as an array but the input is not
95
- if attributes[self.class.attribute_map[key]].is_a?(Array)
96
- self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
97
- end
98
- elsif !attributes[self.class.attribute_map[key]].nil?
99
- self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
100
- end # or else data not found in attributes(hash), not an issue as the data can be optional
101
- end
102
-
103
- self
104
- end
105
-
106
- # Deserializes the data based on type
107
- # @param string type Data type
108
- # @param string value Value to be deserialized
109
- # @return [Object] Deserialized data
110
- def _deserialize(type, value)
111
- case type.to_sym
112
- when :DateTime
113
- DateTime.parse(value)
114
- when :Date
115
- Date.parse(value)
116
- when :String
117
- value.to_s
118
- when :Integer
119
- value.to_i
120
- when :Float
121
- value.to_f
122
- when :BOOLEAN
123
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
124
- true
125
- else
126
- false
127
- end
128
- when :Object
129
- # generic object (usually a Hash), return directly
130
- value
131
- when /\AArray<(?<inner_type>.+)>\z/
132
- inner_type = Regexp.last_match[:inner_type]
133
- value.map { |v| _deserialize(inner_type, v) }
134
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
135
- k_type = Regexp.last_match[:k_type]
136
- v_type = Regexp.last_match[:v_type]
137
- {}.tap do |hash|
138
- value.each do |k, v|
139
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
140
- end
141
- end
142
- else # model
143
- temp_model = CyberSource.const_get(type).new
144
- temp_model.build_from_hash(value)
145
- end
146
- end
147
-
148
- # Returns the string representation of the object
149
- # @return [String] String presentation of the object
150
- def to_s
151
- to_hash.to_s
152
- end
153
-
154
- # to_body is an alias to to_hash (backward compatibility)
155
- # @return [Hash] Returns the object in the form of hash
156
- def to_body
157
- to_hash
158
- end
159
-
160
- # Returns the object in the form of hash
161
- # @return [Hash] Returns the object in the form of hash
162
- def to_hash
163
- hash = {}
164
- self.class.attribute_map.each_pair do |attr, param|
165
- value = self.send(attr)
166
- next if value.nil?
167
- hash[param] = _to_hash(value)
168
- end
169
- hash
170
- end
171
-
172
- # Outputs non-array value in the form of hash
173
- # For object, use to_hash. Otherwise, just return the value
174
- # @param [Object] value Any valid value
175
- # @return [Hash] Returns the value in the form of hash
176
- def _to_hash(value)
177
- if value.is_a?(Array)
178
- value.compact.map { |v| _to_hash(v) }
179
- elsif value.is_a?(Hash)
180
- {}.tap do |hash|
181
- value.each { |k, v| hash[k] = _to_hash(v) }
182
- end
183
- elsif value.respond_to? :to_hash
184
- value.to_hash
185
- else
186
- value
187
- end
188
- end
189
- end
190
- end
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 PaymentsProductsServiceFeeConfigurationInformationConfigurationsProducts
16
+ # Boolean flag to determine if service fee will be applied to the Product.
17
+ attr_accessor :service_fee_enabled
18
+
19
+ # Attribute mapping from ruby-style variable name to JSON key.
20
+ def self.attribute_map
21
+ {
22
+ :'service_fee_enabled' => :'serviceFeeEnabled'
23
+ }
24
+ end
25
+
26
+ # Attribute mapping from JSON key to ruby-style variable name.
27
+ def self.json_map
28
+ {
29
+ :'service_fee_enabled' => :'service_fee_enabled'
30
+ }
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.swagger_types
35
+ {
36
+ :'service_fee_enabled' => :'BOOLEAN'
37
+ }
38
+ end
39
+
40
+ # Initializes the object
41
+ # @param [Hash] attributes Model attributes in the form of hash
42
+ def initialize(attributes = {})
43
+ return unless attributes.is_a?(Hash)
44
+
45
+ # convert string to symbol for hash key
46
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
47
+
48
+ if attributes.has_key?(:'serviceFeeEnabled')
49
+ self.service_fee_enabled = attributes[:'serviceFeeEnabled']
50
+ end
51
+ end
52
+
53
+ # Show invalid properties with the reasons. Usually used together with valid?
54
+ # @return Array for valid properties with the reasons
55
+ def list_invalid_properties
56
+ invalid_properties = Array.new
57
+ invalid_properties
58
+ end
59
+
60
+ # Check to see if the all the properties in the model are valid
61
+ # @return true if the model is valid
62
+ def valid?
63
+ true
64
+ end
65
+
66
+ # Checks equality by comparing each attribute.
67
+ # @param [Object] Object to be compared
68
+ def ==(o)
69
+ return true if self.equal?(o)
70
+ self.class == o.class &&
71
+ service_fee_enabled == o.service_fee_enabled
72
+ end
73
+
74
+ # @see the `==` method
75
+ # @param [Object] Object to be compared
76
+ def eql?(o)
77
+ self == o
78
+ end
79
+
80
+ # Calculates hash code according to all attributes.
81
+ # @return [Fixnum] Hash code
82
+ def hash
83
+ [service_fee_enabled].hash
84
+ end
85
+
86
+ # Builds the object from hash
87
+ # @param [Hash] attributes Model attributes in the form of hash
88
+ # @return [Object] Returns the model itself
89
+ def build_from_hash(attributes)
90
+ return nil unless attributes.is_a?(Hash)
91
+ self.class.swagger_types.each_pair do |key, type|
92
+ if type =~ /\AArray<(.*)>/i
93
+ # check to ensure the input is an array given that the the attribute
94
+ # is documented as an array but the input is not
95
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
96
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
97
+ end
98
+ elsif !attributes[self.class.attribute_map[key]].nil?
99
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
100
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
101
+ end
102
+
103
+ self
104
+ end
105
+
106
+ # Deserializes the data based on type
107
+ # @param string type Data type
108
+ # @param string value Value to be deserialized
109
+ # @return [Object] Deserialized data
110
+ def _deserialize(type, value)
111
+ case type.to_sym
112
+ when :DateTime
113
+ DateTime.parse(value)
114
+ when :Date
115
+ Date.parse(value)
116
+ when :String
117
+ value.to_s
118
+ when :Integer
119
+ value.to_i
120
+ when :Float
121
+ value.to_f
122
+ when :BOOLEAN
123
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
124
+ true
125
+ else
126
+ false
127
+ end
128
+ when :Object
129
+ # generic object (usually a Hash), return directly
130
+ value
131
+ when /\AArray<(?<inner_type>.+)>\z/
132
+ inner_type = Regexp.last_match[:inner_type]
133
+ value.map { |v| _deserialize(inner_type, v) }
134
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
135
+ k_type = Regexp.last_match[:k_type]
136
+ v_type = Regexp.last_match[:v_type]
137
+ {}.tap do |hash|
138
+ value.each do |k, v|
139
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
140
+ end
141
+ end
142
+ else # model
143
+ temp_model = CyberSource.const_get(type).new
144
+ temp_model.build_from_hash(value)
145
+ end
146
+ end
147
+
148
+ # Returns the string representation of the object
149
+ # @return [String] String presentation of the object
150
+ def to_s
151
+ to_hash.to_s
152
+ end
153
+
154
+ # to_body is an alias to to_hash (backward compatibility)
155
+ # @return [Hash] Returns the object in the form of hash
156
+ def to_body
157
+ to_hash
158
+ end
159
+
160
+ # Returns the object in the form of hash
161
+ # @return [Hash] Returns the object in the form of hash
162
+ def to_hash
163
+ hash = {}
164
+ self.class.attribute_map.each_pair do |attr, param|
165
+ value = self.send(attr)
166
+ next if value.nil?
167
+ hash[param] = _to_hash(value)
168
+ end
169
+ hash
170
+ end
171
+
172
+ # Outputs non-array value in the form of hash
173
+ # For object, use to_hash. Otherwise, just return the value
174
+ # @param [Object] value Any valid value
175
+ # @return [Hash] Returns the value in the form of hash
176
+ def _to_hash(value)
177
+ if value.is_a?(Array)
178
+ value.compact.map { |v| _to_hash(v) }
179
+ elsif value.is_a?(Hash)
180
+ {}.tap do |hash|
181
+ value.each { |k, v| hash[k] = _to_hash(v) }
182
+ end
183
+ elsif value.respond_to? :to_hash
184
+ value.to_hash
185
+ else
186
+ value
187
+ end
188
+ end
189
+ end
190
+ end
@@ -92,7 +92,7 @@ module CyberSource
92
92
  :'token_provisioning_information' => :'Ptsv2paymentsTokenInformationTokenProvisioningInformation',
93
93
  :'card' => :'TmsEmbeddedInstrumentIdentifierCard',
94
94
  :'bank_account' => :'TmsEmbeddedInstrumentIdentifierBankAccount',
95
- :'tokenized_card' => :'TmsEmbeddedInstrumentIdentifierTokenizedCard',
95
+ :'tokenized_card' => :'Tmsv2TokenizedCard',
96
96
  :'issuer' => :'TmsEmbeddedInstrumentIdentifierIssuer',
97
97
  :'processing_information' => :'TmsEmbeddedInstrumentIdentifierProcessingInformation',
98
98
  :'bill_to' => :'TmsEmbeddedInstrumentIdentifierBillTo',
@@ -92,7 +92,7 @@ module CyberSource
92
92
  :'token_provisioning_information' => :'Ptsv2paymentsTokenInformationTokenProvisioningInformation',
93
93
  :'card' => :'TmsEmbeddedInstrumentIdentifierCard',
94
94
  :'bank_account' => :'TmsEmbeddedInstrumentIdentifierBankAccount',
95
- :'tokenized_card' => :'TmsEmbeddedInstrumentIdentifierTokenizedCard',
95
+ :'tokenized_card' => :'Tmsv2TokenizedCard',
96
96
  :'issuer' => :'TmsEmbeddedInstrumentIdentifierIssuer',
97
97
  :'processing_information' => :'TmsEmbeddedInstrumentIdentifierProcessingInformation',
98
98
  :'bill_to' => :'TmsEmbeddedInstrumentIdentifierBillTo',
@@ -0,0 +1,269 @@
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 PtsV2CreateOrderPost201Response
16
+ # Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services.
17
+ attr_accessor :submit_time_utc
18
+
19
+ # The date and time when the request was last updated. **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).
20
+ attr_accessor :update_time_utc
21
+
22
+ # The status of the submitted transaction. Possible values: - CREATED - SAVED - APPROVED - VOIDED - COMPLETED - PAYER_ACTION_REQUIRED
23
+ attr_accessor :status
24
+
25
+ # Reference number for the transaction. Depending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource. The actual value used in the request to the processor is provided back to you by Cybersource in the response.
26
+ attr_accessor :reconciliation_id
27
+
28
+ attr_accessor :client_reference_information
29
+
30
+ attr_accessor :processor_information
31
+
32
+ attr_accessor :payment_information
33
+
34
+ attr_accessor :buyer_information
35
+
36
+ # Attribute mapping from ruby-style variable name to JSON key.
37
+ def self.attribute_map
38
+ {
39
+ :'submit_time_utc' => :'submitTimeUtc',
40
+ :'update_time_utc' => :'updateTimeUtc',
41
+ :'status' => :'status',
42
+ :'reconciliation_id' => :'reconciliationId',
43
+ :'client_reference_information' => :'clientReferenceInformation',
44
+ :'processor_information' => :'processorInformation',
45
+ :'payment_information' => :'paymentInformation',
46
+ :'buyer_information' => :'buyerInformation'
47
+ }
48
+ end
49
+
50
+ # Attribute mapping from JSON key to ruby-style variable name.
51
+ def self.json_map
52
+ {
53
+ :'submit_time_utc' => :'submit_time_utc',
54
+ :'update_time_utc' => :'update_time_utc',
55
+ :'status' => :'status',
56
+ :'reconciliation_id' => :'reconciliation_id',
57
+ :'client_reference_information' => :'client_reference_information',
58
+ :'processor_information' => :'processor_information',
59
+ :'payment_information' => :'payment_information',
60
+ :'buyer_information' => :'buyer_information'
61
+ }
62
+ end
63
+
64
+ # Attribute type mapping.
65
+ def self.swagger_types
66
+ {
67
+ :'submit_time_utc' => :'String',
68
+ :'update_time_utc' => :'String',
69
+ :'status' => :'String',
70
+ :'reconciliation_id' => :'String',
71
+ :'client_reference_information' => :'PtsV2IncrementalAuthorizationPatch201ResponseClientReferenceInformation',
72
+ :'processor_information' => :'PtsV2CreateOrderPost201ResponseProcessorInformation',
73
+ :'payment_information' => :'PtsV2PaymentsOrderPost201ResponsePaymentInformation',
74
+ :'buyer_information' => :'PtsV2CreateOrderPost201ResponseBuyerInformation'
75
+ }
76
+ end
77
+
78
+ # Initializes the object
79
+ # @param [Hash] attributes Model attributes in the form of hash
80
+ def initialize(attributes = {})
81
+ return unless attributes.is_a?(Hash)
82
+
83
+ # convert string to symbol for hash key
84
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
85
+
86
+ if attributes.has_key?(:'submitTimeUtc')
87
+ self.submit_time_utc = attributes[:'submitTimeUtc']
88
+ end
89
+
90
+ if attributes.has_key?(:'updateTimeUtc')
91
+ self.update_time_utc = attributes[:'updateTimeUtc']
92
+ end
93
+
94
+ if attributes.has_key?(:'status')
95
+ self.status = attributes[:'status']
96
+ end
97
+
98
+ if attributes.has_key?(:'reconciliationId')
99
+ self.reconciliation_id = attributes[:'reconciliationId']
100
+ end
101
+
102
+ if attributes.has_key?(:'clientReferenceInformation')
103
+ self.client_reference_information = attributes[:'clientReferenceInformation']
104
+ end
105
+
106
+ if attributes.has_key?(:'processorInformation')
107
+ self.processor_information = attributes[:'processorInformation']
108
+ end
109
+
110
+ if attributes.has_key?(:'paymentInformation')
111
+ self.payment_information = attributes[:'paymentInformation']
112
+ end
113
+
114
+ if attributes.has_key?(:'buyerInformation')
115
+ self.buyer_information = attributes[:'buyerInformation']
116
+ end
117
+ end
118
+
119
+ # Show invalid properties with the reasons. Usually used together with valid?
120
+ # @return Array for valid properties with the reasons
121
+ def list_invalid_properties
122
+ invalid_properties = Array.new
123
+ invalid_properties
124
+ end
125
+
126
+ # Check to see if the all the properties in the model are valid
127
+ # @return true if the model is valid
128
+ def valid?
129
+ true
130
+ end
131
+
132
+ # Custom attribute writer method with validation
133
+ # @param [Object] reconciliation_id Value to be assigned
134
+ def reconciliation_id=(reconciliation_id)
135
+ @reconciliation_id = reconciliation_id
136
+ end
137
+
138
+ # Checks equality by comparing each attribute.
139
+ # @param [Object] Object to be compared
140
+ def ==(o)
141
+ return true if self.equal?(o)
142
+ self.class == o.class &&
143
+ submit_time_utc == o.submit_time_utc &&
144
+ update_time_utc == o.update_time_utc &&
145
+ status == o.status &&
146
+ reconciliation_id == o.reconciliation_id &&
147
+ client_reference_information == o.client_reference_information &&
148
+ processor_information == o.processor_information &&
149
+ payment_information == o.payment_information &&
150
+ buyer_information == o.buyer_information
151
+ end
152
+
153
+ # @see the `==` method
154
+ # @param [Object] Object to be compared
155
+ def eql?(o)
156
+ self == o
157
+ end
158
+
159
+ # Calculates hash code according to all attributes.
160
+ # @return [Fixnum] Hash code
161
+ def hash
162
+ [submit_time_utc, update_time_utc, status, reconciliation_id, client_reference_information, processor_information, payment_information, buyer_information].hash
163
+ end
164
+
165
+ # Builds the object from hash
166
+ # @param [Hash] attributes Model attributes in the form of hash
167
+ # @return [Object] Returns the model itself
168
+ def build_from_hash(attributes)
169
+ return nil unless attributes.is_a?(Hash)
170
+ self.class.swagger_types.each_pair do |key, type|
171
+ if type =~ /\AArray<(.*)>/i
172
+ # check to ensure the input is an array given that the the attribute
173
+ # is documented as an array but the input is not
174
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
175
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
176
+ end
177
+ elsif !attributes[self.class.attribute_map[key]].nil?
178
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
179
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
180
+ end
181
+
182
+ self
183
+ end
184
+
185
+ # Deserializes the data based on type
186
+ # @param string type Data type
187
+ # @param string value Value to be deserialized
188
+ # @return [Object] Deserialized data
189
+ def _deserialize(type, value)
190
+ case type.to_sym
191
+ when :DateTime
192
+ DateTime.parse(value)
193
+ when :Date
194
+ Date.parse(value)
195
+ when :String
196
+ value.to_s
197
+ when :Integer
198
+ value.to_i
199
+ when :Float
200
+ value.to_f
201
+ when :BOOLEAN
202
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
203
+ true
204
+ else
205
+ false
206
+ end
207
+ when :Object
208
+ # generic object (usually a Hash), return directly
209
+ value
210
+ when /\AArray<(?<inner_type>.+)>\z/
211
+ inner_type = Regexp.last_match[:inner_type]
212
+ value.map { |v| _deserialize(inner_type, v) }
213
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
214
+ k_type = Regexp.last_match[:k_type]
215
+ v_type = Regexp.last_match[:v_type]
216
+ {}.tap do |hash|
217
+ value.each do |k, v|
218
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
219
+ end
220
+ end
221
+ else # model
222
+ temp_model = CyberSource.const_get(type).new
223
+ temp_model.build_from_hash(value)
224
+ end
225
+ end
226
+
227
+ # Returns the string representation of the object
228
+ # @return [String] String presentation of the object
229
+ def to_s
230
+ to_hash.to_s
231
+ end
232
+
233
+ # to_body is an alias to to_hash (backward compatibility)
234
+ # @return [Hash] Returns the object in the form of hash
235
+ def to_body
236
+ to_hash
237
+ end
238
+
239
+ # Returns the object in the form of hash
240
+ # @return [Hash] Returns the object in the form of hash
241
+ def to_hash
242
+ hash = {}
243
+ self.class.attribute_map.each_pair do |attr, param|
244
+ value = self.send(attr)
245
+ next if value.nil?
246
+ hash[param] = _to_hash(value)
247
+ end
248
+ hash
249
+ end
250
+
251
+ # Outputs non-array value in the form of hash
252
+ # For object, use to_hash. Otherwise, just return the value
253
+ # @param [Object] value Any valid value
254
+ # @return [Hash] Returns the value in the form of hash
255
+ def _to_hash(value)
256
+ if value.is_a?(Array)
257
+ value.compact.map { |v| _to_hash(v) }
258
+ elsif value.is_a?(Hash)
259
+ {}.tap do |hash|
260
+ value.each { |k, v| hash[k] = _to_hash(v) }
261
+ end
262
+ elsif value.respond_to? :to_hash
263
+ value.to_hash
264
+ else
265
+ value
266
+ end
267
+ end
268
+ end
269
+ end