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,317 +1,317 @@
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 Ptsv1pushfundstransferSenderInformationPaymentInformationCard
16
- # Three-digit value that indicates the card type. IMPORTANT It is strongly recommended that you include the card type field in request messages even if it is optional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type. Possible values: - `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value 001 for Visa Electron. - `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.
17
- attr_accessor :type
18
-
19
- # 3-digit value that indicates the card Cvv2Value. Values can be 0-9.
20
- attr_accessor :security_code
21
-
22
- # Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process.
23
- attr_accessor :source_account_type
24
-
25
- # The customer's payment card number, also known as the Primary Account Number (PAN).
26
- attr_accessor :number
27
-
28
- # Two-digit month in which the payment card expires. Format: MM. Valid values: 01 through 12. Leading 0 is required.
29
- attr_accessor :expiration_month
30
-
31
- # Four-digit year in which the payment card expires.
32
- attr_accessor :expiration_year
33
-
34
- # Attribute mapping from ruby-style variable name to JSON key.
35
- def self.attribute_map
36
- {
37
- :'type' => :'type',
38
- :'security_code' => :'securityCode',
39
- :'source_account_type' => :'sourceAccountType',
40
- :'number' => :'number',
41
- :'expiration_month' => :'expirationMonth',
42
- :'expiration_year' => :'expirationYear'
43
- }
44
- end
45
-
46
- # Attribute mapping from JSON key to ruby-style variable name.
47
- def self.json_map
48
- {
49
- :'type' => :'type',
50
- :'security_code' => :'security_code',
51
- :'source_account_type' => :'source_account_type',
52
- :'number' => :'number',
53
- :'expiration_month' => :'expiration_month',
54
- :'expiration_year' => :'expiration_year'
55
- }
56
- end
57
-
58
- # Attribute type mapping.
59
- def self.swagger_types
60
- {
61
- :'type' => :'String',
62
- :'security_code' => :'String',
63
- :'source_account_type' => :'String',
64
- :'number' => :'String',
65
- :'expiration_month' => :'String',
66
- :'expiration_year' => :'String'
67
- }
68
- end
69
-
70
- # Initializes the object
71
- # @param [Hash] attributes Model attributes in the form of hash
72
- def initialize(attributes = {})
73
- return unless attributes.is_a?(Hash)
74
-
75
- # convert string to symbol for hash key
76
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
77
-
78
- if attributes.has_key?(:'type')
79
- self.type = attributes[:'type']
80
- end
81
-
82
- if attributes.has_key?(:'securityCode')
83
- self.security_code = attributes[:'securityCode']
84
- end
85
-
86
- if attributes.has_key?(:'sourceAccountType')
87
- self.source_account_type = attributes[:'sourceAccountType']
88
- end
89
-
90
- if attributes.has_key?(:'number')
91
- self.number = attributes[:'number']
92
- end
93
-
94
- if attributes.has_key?(:'expirationMonth')
95
- self.expiration_month = attributes[:'expirationMonth']
96
- end
97
-
98
- if attributes.has_key?(:'expirationYear')
99
- self.expiration_year = attributes[:'expirationYear']
100
- end
101
- end
102
-
103
- # Show invalid properties with the reasons. Usually used together with valid?
104
- # @return Array for valid properties with the reasons
105
- def list_invalid_properties
106
- invalid_properties = Array.new
107
- #if !@type.nil? && @type !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
108
- #invalid_properties.push('invalid value for "type", must conform to the pattern /^(\\s{0,3}|.{3})$/.')
109
- #end
110
-
111
- #if !@security_code.nil? && @security_code !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
112
- #invalid_properties.push('invalid value for "security_code", must conform to the pattern /^(\\s{0,3}|.{3})$/.')
113
- #end
114
-
115
- #if !@expiration_month.nil? && @expiration_month !~ Regexp.new(/^(\\s{0,2}|.{2})$/)
116
- #invalid_properties.push('invalid value for "expiration_month", must conform to the pattern /^(\\s{0,2}|.{2})$/.')
117
- #end
118
-
119
- #if !@expiration_year.nil? && @expiration_year !~ Regexp.new(/^(\\s{0,4}|.{4})$/)
120
- #invalid_properties.push('invalid value for "expiration_year", must conform to the pattern /^(\\s{0,4}|.{4})$/.')
121
- #end
122
-
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
- #return false if !@type.nil? && @type !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
130
- #return false if !@security_code.nil? && @security_code !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
131
- #return false if !@expiration_month.nil? && @expiration_month !~ Regexp.new(/^(\\s{0,2}|.{2})$/)
132
- #return false if !@expiration_year.nil? && @expiration_year !~ Regexp.new(/^(\\s{0,4}|.{4})$/)
133
- true
134
- end
135
-
136
- # Custom attribute writer method with validation
137
- # @param [Object] type Value to be assigned
138
- def type=(type)
139
- #if !type.nil? && type !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
140
- #fail ArgumentError, 'invalid value for "type", must conform to the pattern /^(\\s{0,3}|.{3})$/.'
141
- #end
142
-
143
- @type = type
144
- end
145
-
146
- # Custom attribute writer method with validation
147
- # @param [Object] security_code Value to be assigned
148
- def security_code=(security_code)
149
- #if !security_code.nil? && security_code !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
150
- #fail ArgumentError, 'invalid value for "security_code", must conform to the pattern /^(\\s{0,3}|.{3})$/.'
151
- #end
152
-
153
- @security_code = security_code
154
- end
155
-
156
- # Custom attribute writer method with validation
157
- # @param [Object] source_account_type Value to be assigned
158
- def source_account_type=(source_account_type)
159
- @source_account_type = source_account_type
160
- end
161
-
162
- # Custom attribute writer method with validation
163
- # @param [Object] number Value to be assigned
164
- def number=(number)
165
- @number = number
166
- end
167
-
168
- # Custom attribute writer method with validation
169
- # @param [Object] expiration_month Value to be assigned
170
- def expiration_month=(expiration_month)
171
- #if !expiration_month.nil? && expiration_month !~ Regexp.new(/^(\\s{0,2}|.{2})$/)
172
- #fail ArgumentError, 'invalid value for "expiration_month", must conform to the pattern /^(\\s{0,2}|.{2})$/.'
173
- #end
174
-
175
- @expiration_month = expiration_month
176
- end
177
-
178
- # Custom attribute writer method with validation
179
- # @param [Object] expiration_year Value to be assigned
180
- def expiration_year=(expiration_year)
181
- #if !expiration_year.nil? && expiration_year !~ Regexp.new(/^(\\s{0,4}|.{4})$/)
182
- #fail ArgumentError, 'invalid value for "expiration_year", must conform to the pattern /^(\\s{0,4}|.{4})$/.'
183
- #end
184
-
185
- @expiration_year = expiration_year
186
- end
187
-
188
- # Checks equality by comparing each attribute.
189
- # @param [Object] Object to be compared
190
- def ==(o)
191
- return true if self.equal?(o)
192
- self.class == o.class &&
193
- type == o.type &&
194
- security_code == o.security_code &&
195
- source_account_type == o.source_account_type &&
196
- number == o.number &&
197
- expiration_month == o.expiration_month &&
198
- expiration_year == o.expiration_year
199
- end
200
-
201
- # @see the `==` method
202
- # @param [Object] Object to be compared
203
- def eql?(o)
204
- self == o
205
- end
206
-
207
- # Calculates hash code according to all attributes.
208
- # @return [Fixnum] Hash code
209
- def hash
210
- [type, security_code, source_account_type, number, expiration_month, expiration_year].hash
211
- end
212
-
213
- # Builds the object from hash
214
- # @param [Hash] attributes Model attributes in the form of hash
215
- # @return [Object] Returns the model itself
216
- def build_from_hash(attributes)
217
- return nil unless attributes.is_a?(Hash)
218
- self.class.swagger_types.each_pair do |key, type|
219
- if type =~ /\AArray<(.*)>/i
220
- # check to ensure the input is an array given that the the attribute
221
- # is documented as an array but the input is not
222
- if attributes[self.class.attribute_map[key]].is_a?(Array)
223
- self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
224
- end
225
- elsif !attributes[self.class.attribute_map[key]].nil?
226
- self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
227
- end # or else data not found in attributes(hash), not an issue as the data can be optional
228
- end
229
-
230
- self
231
- end
232
-
233
- # Deserializes the data based on type
234
- # @param string type Data type
235
- # @param string value Value to be deserialized
236
- # @return [Object] Deserialized data
237
- def _deserialize(type, value)
238
- case type.to_sym
239
- when :DateTime
240
- DateTime.parse(value)
241
- when :Date
242
- Date.parse(value)
243
- when :String
244
- value.to_s
245
- when :Integer
246
- value.to_i
247
- when :Float
248
- value.to_f
249
- when :BOOLEAN
250
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
251
- true
252
- else
253
- false
254
- end
255
- when :Object
256
- # generic object (usually a Hash), return directly
257
- value
258
- when /\AArray<(?<inner_type>.+)>\z/
259
- inner_type = Regexp.last_match[:inner_type]
260
- value.map { |v| _deserialize(inner_type, v) }
261
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
262
- k_type = Regexp.last_match[:k_type]
263
- v_type = Regexp.last_match[:v_type]
264
- {}.tap do |hash|
265
- value.each do |k, v|
266
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
267
- end
268
- end
269
- else # model
270
- temp_model = CyberSource.const_get(type).new
271
- temp_model.build_from_hash(value)
272
- end
273
- end
274
-
275
- # Returns the string representation of the object
276
- # @return [String] String presentation of the object
277
- def to_s
278
- to_hash.to_s
279
- end
280
-
281
- # to_body is an alias to to_hash (backward compatibility)
282
- # @return [Hash] Returns the object in the form of hash
283
- def to_body
284
- to_hash
285
- end
286
-
287
- # Returns the object in the form of hash
288
- # @return [Hash] Returns the object in the form of hash
289
- def to_hash
290
- hash = {}
291
- self.class.attribute_map.each_pair do |attr, param|
292
- value = self.send(attr)
293
- next if value.nil?
294
- hash[param] = _to_hash(value)
295
- end
296
- hash
297
- end
298
-
299
- # Outputs non-array value in the form of hash
300
- # For object, use to_hash. Otherwise, just return the value
301
- # @param [Object] value Any valid value
302
- # @return [Hash] Returns the value in the form of hash
303
- def _to_hash(value)
304
- if value.is_a?(Array)
305
- value.compact.map { |v| _to_hash(v) }
306
- elsif value.is_a?(Hash)
307
- {}.tap do |hash|
308
- value.each { |k, v| hash[k] = _to_hash(v) }
309
- end
310
- elsif value.respond_to? :to_hash
311
- value.to_hash
312
- else
313
- value
314
- end
315
- end
316
- end
317
- 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 Ptsv1pushfundstransferSenderInformationPaymentInformationCard
16
+ # Three-digit value that indicates the card type. IMPORTANT It is strongly recommended that you include the card type field in request messages even if it is optional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type. Possible values: - `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value 001 for Visa Electron. - `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard. - `033`: Visa Electron - `024`: Maestro - `042`: Maestro International
17
+ attr_accessor :type
18
+
19
+ # 3-digit value that indicates the card Cvv2Value. Values can be 0-9.
20
+ attr_accessor :security_code
21
+
22
+ # Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process.
23
+ attr_accessor :source_account_type
24
+
25
+ # The customer's payment card number, also known as the Primary Account Number (PAN).
26
+ attr_accessor :number
27
+
28
+ # Two-digit month in which the payment card expires. Format: MM. Valid values: 01 through 12. Leading 0 is required.
29
+ attr_accessor :expiration_month
30
+
31
+ # Four-digit year in which the payment card expires.
32
+ attr_accessor :expiration_year
33
+
34
+ # Attribute mapping from ruby-style variable name to JSON key.
35
+ def self.attribute_map
36
+ {
37
+ :'type' => :'type',
38
+ :'security_code' => :'securityCode',
39
+ :'source_account_type' => :'sourceAccountType',
40
+ :'number' => :'number',
41
+ :'expiration_month' => :'expirationMonth',
42
+ :'expiration_year' => :'expirationYear'
43
+ }
44
+ end
45
+
46
+ # Attribute mapping from JSON key to ruby-style variable name.
47
+ def self.json_map
48
+ {
49
+ :'type' => :'type',
50
+ :'security_code' => :'security_code',
51
+ :'source_account_type' => :'source_account_type',
52
+ :'number' => :'number',
53
+ :'expiration_month' => :'expiration_month',
54
+ :'expiration_year' => :'expiration_year'
55
+ }
56
+ end
57
+
58
+ # Attribute type mapping.
59
+ def self.swagger_types
60
+ {
61
+ :'type' => :'String',
62
+ :'security_code' => :'String',
63
+ :'source_account_type' => :'String',
64
+ :'number' => :'String',
65
+ :'expiration_month' => :'String',
66
+ :'expiration_year' => :'String'
67
+ }
68
+ end
69
+
70
+ # Initializes the object
71
+ # @param [Hash] attributes Model attributes in the form of hash
72
+ def initialize(attributes = {})
73
+ return unless attributes.is_a?(Hash)
74
+
75
+ # convert string to symbol for hash key
76
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
77
+
78
+ if attributes.has_key?(:'type')
79
+ self.type = attributes[:'type']
80
+ end
81
+
82
+ if attributes.has_key?(:'securityCode')
83
+ self.security_code = attributes[:'securityCode']
84
+ end
85
+
86
+ if attributes.has_key?(:'sourceAccountType')
87
+ self.source_account_type = attributes[:'sourceAccountType']
88
+ end
89
+
90
+ if attributes.has_key?(:'number')
91
+ self.number = attributes[:'number']
92
+ end
93
+
94
+ if attributes.has_key?(:'expirationMonth')
95
+ self.expiration_month = attributes[:'expirationMonth']
96
+ end
97
+
98
+ if attributes.has_key?(:'expirationYear')
99
+ self.expiration_year = attributes[:'expirationYear']
100
+ end
101
+ end
102
+
103
+ # Show invalid properties with the reasons. Usually used together with valid?
104
+ # @return Array for valid properties with the reasons
105
+ def list_invalid_properties
106
+ invalid_properties = Array.new
107
+ #if !@type.nil? && @type !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
108
+ #invalid_properties.push('invalid value for "type", must conform to the pattern /^(\\s{0,3}|.{3})$/.')
109
+ #end
110
+
111
+ #if !@security_code.nil? && @security_code !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
112
+ #invalid_properties.push('invalid value for "security_code", must conform to the pattern /^(\\s{0,3}|.{3})$/.')
113
+ #end
114
+
115
+ #if !@expiration_month.nil? && @expiration_month !~ Regexp.new(/^(\\s{0,2}|.{2})$/)
116
+ #invalid_properties.push('invalid value for "expiration_month", must conform to the pattern /^(\\s{0,2}|.{2})$/.')
117
+ #end
118
+
119
+ #if !@expiration_year.nil? && @expiration_year !~ Regexp.new(/^(\\s{0,4}|.{4})$/)
120
+ #invalid_properties.push('invalid value for "expiration_year", must conform to the pattern /^(\\s{0,4}|.{4})$/.')
121
+ #end
122
+
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
+ #return false if !@type.nil? && @type !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
130
+ #return false if !@security_code.nil? && @security_code !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
131
+ #return false if !@expiration_month.nil? && @expiration_month !~ Regexp.new(/^(\\s{0,2}|.{2})$/)
132
+ #return false if !@expiration_year.nil? && @expiration_year !~ Regexp.new(/^(\\s{0,4}|.{4})$/)
133
+ true
134
+ end
135
+
136
+ # Custom attribute writer method with validation
137
+ # @param [Object] type Value to be assigned
138
+ def type=(type)
139
+ #if !type.nil? && type !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
140
+ #fail ArgumentError, 'invalid value for "type", must conform to the pattern /^(\\s{0,3}|.{3})$/.'
141
+ #end
142
+
143
+ @type = type
144
+ end
145
+
146
+ # Custom attribute writer method with validation
147
+ # @param [Object] security_code Value to be assigned
148
+ def security_code=(security_code)
149
+ #if !security_code.nil? && security_code !~ Regexp.new(/^(\\s{0,3}|.{3})$/)
150
+ #fail ArgumentError, 'invalid value for "security_code", must conform to the pattern /^(\\s{0,3}|.{3})$/.'
151
+ #end
152
+
153
+ @security_code = security_code
154
+ end
155
+
156
+ # Custom attribute writer method with validation
157
+ # @param [Object] source_account_type Value to be assigned
158
+ def source_account_type=(source_account_type)
159
+ @source_account_type = source_account_type
160
+ end
161
+
162
+ # Custom attribute writer method with validation
163
+ # @param [Object] number Value to be assigned
164
+ def number=(number)
165
+ @number = number
166
+ end
167
+
168
+ # Custom attribute writer method with validation
169
+ # @param [Object] expiration_month Value to be assigned
170
+ def expiration_month=(expiration_month)
171
+ #if !expiration_month.nil? && expiration_month !~ Regexp.new(/^(\\s{0,2}|.{2})$/)
172
+ #fail ArgumentError, 'invalid value for "expiration_month", must conform to the pattern /^(\\s{0,2}|.{2})$/.'
173
+ #end
174
+
175
+ @expiration_month = expiration_month
176
+ end
177
+
178
+ # Custom attribute writer method with validation
179
+ # @param [Object] expiration_year Value to be assigned
180
+ def expiration_year=(expiration_year)
181
+ #if !expiration_year.nil? && expiration_year !~ Regexp.new(/^(\\s{0,4}|.{4})$/)
182
+ #fail ArgumentError, 'invalid value for "expiration_year", must conform to the pattern /^(\\s{0,4}|.{4})$/.'
183
+ #end
184
+
185
+ @expiration_year = expiration_year
186
+ end
187
+
188
+ # Checks equality by comparing each attribute.
189
+ # @param [Object] Object to be compared
190
+ def ==(o)
191
+ return true if self.equal?(o)
192
+ self.class == o.class &&
193
+ type == o.type &&
194
+ security_code == o.security_code &&
195
+ source_account_type == o.source_account_type &&
196
+ number == o.number &&
197
+ expiration_month == o.expiration_month &&
198
+ expiration_year == o.expiration_year
199
+ end
200
+
201
+ # @see the `==` method
202
+ # @param [Object] Object to be compared
203
+ def eql?(o)
204
+ self == o
205
+ end
206
+
207
+ # Calculates hash code according to all attributes.
208
+ # @return [Fixnum] Hash code
209
+ def hash
210
+ [type, security_code, source_account_type, number, expiration_month, expiration_year].hash
211
+ end
212
+
213
+ # Builds the object from hash
214
+ # @param [Hash] attributes Model attributes in the form of hash
215
+ # @return [Object] Returns the model itself
216
+ def build_from_hash(attributes)
217
+ return nil unless attributes.is_a?(Hash)
218
+ self.class.swagger_types.each_pair do |key, type|
219
+ if type =~ /\AArray<(.*)>/i
220
+ # check to ensure the input is an array given that the the attribute
221
+ # is documented as an array but the input is not
222
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
223
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
224
+ end
225
+ elsif !attributes[self.class.attribute_map[key]].nil?
226
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
227
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
228
+ end
229
+
230
+ self
231
+ end
232
+
233
+ # Deserializes the data based on type
234
+ # @param string type Data type
235
+ # @param string value Value to be deserialized
236
+ # @return [Object] Deserialized data
237
+ def _deserialize(type, value)
238
+ case type.to_sym
239
+ when :DateTime
240
+ DateTime.parse(value)
241
+ when :Date
242
+ Date.parse(value)
243
+ when :String
244
+ value.to_s
245
+ when :Integer
246
+ value.to_i
247
+ when :Float
248
+ value.to_f
249
+ when :BOOLEAN
250
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
251
+ true
252
+ else
253
+ false
254
+ end
255
+ when :Object
256
+ # generic object (usually a Hash), return directly
257
+ value
258
+ when /\AArray<(?<inner_type>.+)>\z/
259
+ inner_type = Regexp.last_match[:inner_type]
260
+ value.map { |v| _deserialize(inner_type, v) }
261
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
262
+ k_type = Regexp.last_match[:k_type]
263
+ v_type = Regexp.last_match[:v_type]
264
+ {}.tap do |hash|
265
+ value.each do |k, v|
266
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
267
+ end
268
+ end
269
+ else # model
270
+ temp_model = CyberSource.const_get(type).new
271
+ temp_model.build_from_hash(value)
272
+ end
273
+ end
274
+
275
+ # Returns the string representation of the object
276
+ # @return [String] String presentation of the object
277
+ def to_s
278
+ to_hash.to_s
279
+ end
280
+
281
+ # to_body is an alias to to_hash (backward compatibility)
282
+ # @return [Hash] Returns the object in the form of hash
283
+ def to_body
284
+ to_hash
285
+ end
286
+
287
+ # Returns the object in the form of hash
288
+ # @return [Hash] Returns the object in the form of hash
289
+ def to_hash
290
+ hash = {}
291
+ self.class.attribute_map.each_pair do |attr, param|
292
+ value = self.send(attr)
293
+ next if value.nil?
294
+ hash[param] = _to_hash(value)
295
+ end
296
+ hash
297
+ end
298
+
299
+ # Outputs non-array value in the form of hash
300
+ # For object, use to_hash. Otherwise, just return the value
301
+ # @param [Object] value Any valid value
302
+ # @return [Hash] Returns the value in the form of hash
303
+ def _to_hash(value)
304
+ if value.is_a?(Array)
305
+ value.compact.map { |v| _to_hash(v) }
306
+ elsif value.is_a?(Hash)
307
+ {}.tap do |hash|
308
+ value.each { |k, v| hash[k] = _to_hash(v) }
309
+ end
310
+ elsif value.respond_to? :to_hash
311
+ value.to_hash
312
+ else
313
+ value
314
+ end
315
+ end
316
+ end
317
+ end