cybersource_rest_client 0.0.19 → 0.0.21

Sign up to get free protection for your applications and to get access to all the features.
Files changed (309) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/core/MerchantConfig.rb +4 -0
  3. data/lib/AuthenticationSDK/util/Constants.rb +8 -0
  4. data/lib/cybersource_rest_client.rb +104 -11
  5. data/lib/cybersource_rest_client/api/authentication_exemptions_api.rb +2 -2
  6. data/lib/cybersource_rest_client/api/conversion_details_api.rb +2 -2
  7. data/lib/cybersource_rest_client/api/decision_manager_api.rb +142 -0
  8. data/lib/cybersource_rest_client/api/download_dtd_api.rb +2 -2
  9. data/lib/cybersource_rest_client/api/download_xsd_api.rb +2 -2
  10. data/lib/cybersource_rest_client/api/net_fundings_api.rb +2 -2
  11. data/lib/cybersource_rest_client/api/notification_of_changes_api.rb +2 -2
  12. data/lib/cybersource_rest_client/api/payer_authentication_api.rb +78 -13
  13. data/lib/cybersource_rest_client/api/payment_batch_summaries_api.rb +2 -2
  14. data/lib/cybersource_rest_client/api/payments_api.rb +71 -0
  15. data/lib/cybersource_rest_client/api/purchase_and_refund_details_api.rb +2 -2
  16. data/lib/cybersource_rest_client/api/report_definitions_api.rb +4 -4
  17. data/lib/cybersource_rest_client/api/report_downloads_api.rb +2 -2
  18. data/lib/cybersource_rest_client/api/report_subscriptions_api.rb +87 -87
  19. data/lib/cybersource_rest_client/api/reports_api.rb +4 -4
  20. data/lib/cybersource_rest_client/api/reversal_api.rb +65 -0
  21. data/lib/cybersource_rest_client/api/search_transactions_api.rb +4 -4
  22. data/lib/cybersource_rest_client/api/secure_file_share_api.rb +4 -4
  23. data/lib/cybersource_rest_client/api/tokenization_api.rb +2 -2
  24. data/lib/cybersource_rest_client/api/transaction_batches_api.rb +15 -9
  25. data/lib/cybersource_rest_client/api/user_management_api.rb +2 -2
  26. data/lib/cybersource_rest_client/api/verification_api.rb +154 -0
  27. data/lib/cybersource_rest_client/api/void_api.rb +65 -0
  28. data/lib/cybersource_rest_client/models/add_negative_list_request.rb +228 -0
  29. data/lib/cybersource_rest_client/models/authentication_exemptions_request.rb +1 -1
  30. data/lib/cybersource_rest_client/models/capture_payment_request.rb +22 -4
  31. data/lib/cybersource_rest_client/models/check_payer_auth_enrollment_request.rb +11 -2
  32. data/lib/cybersource_rest_client/models/create_credit_request.rb +32 -5
  33. data/lib/cybersource_rest_client/models/create_instrument_identifier_request.rb +1 -1
  34. data/lib/cybersource_rest_client/models/create_payment_request.rb +22 -4
  35. data/lib/cybersource_rest_client/models/create_report_subscription_request.rb +1 -1
  36. data/lib/cybersource_rest_client/models/embedded_instrument_identifier_response.rb +10 -1
  37. data/lib/cybersource_rest_client/models/error.rb +13 -23
  38. data/lib/cybersource_rest_client/models/error_bean.rb +1 -1
  39. data/lib/cybersource_rest_client/models/error_links.rb +15 -15
  40. data/lib/cybersource_rest_client/models/error_response.rb +20 -2
  41. data/lib/cybersource_rest_client/models/fraud_marking_action_request.rb +183 -0
  42. data/lib/cybersource_rest_client/models/generate_public_key_request.rb +14 -4
  43. data/lib/cybersource_rest_client/models/increment_auth_request.rb +219 -0
  44. data/lib/cybersource_rest_client/models/inline_response_400.rb +14 -59
  45. data/lib/cybersource_rest_client/models/inline_response_400_1.rb +59 -14
  46. data/lib/cybersource_rest_client/models/{inline_response_400_fields.rb → inline_response_400_1_fields.rb} +1 -1
  47. data/lib/cybersource_rest_client/models/instrument_identifier_enrollable_card.rb +1 -1
  48. data/lib/cybersource_rest_client/models/instrument_identifier_response.rb +10 -1
  49. data/lib/cybersource_rest_client/models/instrument_identifier_tokenized_card.rb +272 -0
  50. data/lib/cybersource_rest_client/models/key_parameters.rb +14 -4
  51. data/lib/cybersource_rest_client/models/link.rb +25 -4
  52. data/lib/cybersource_rest_client/models/links.rb +18 -23
  53. data/lib/cybersource_rest_client/models/mit_reversal_request.rb +219 -0
  54. data/lib/cybersource_rest_client/models/mit_void_request.rb +183 -0
  55. data/lib/cybersource_rest_client/models/oct_create_payment_request.rb +1 -1
  56. data/lib/cybersource_rest_client/models/payer_auth_setup_request.rb +210 -0
  57. data/lib/cybersource_rest_client/models/predefined_subscription_request_bean.rb +1 -1
  58. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response.rb +15 -6
  59. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_credit_amount_details.rb +1 -1
  60. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_processing_information.rb +14 -4
  61. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_processing_information_bank_transfer_options.rb +1 -1
  62. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response.rb +298 -0
  63. data/lib/cybersource_rest_client/models/{pts_v2_payments_reversals_post201_response__links.rb → pts_v2_incremental_authorization_patch201_response__links.rb} +1 -1
  64. data/lib/cybersource_rest_client/models/{ptsv2payouts_client_reference_information.rb → pts_v2_incremental_authorization_patch201_response_client_reference_information.rb} +2 -2
  65. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_error_information.rb +205 -0
  66. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_order_information.rb +183 -0
  67. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_payment_information.rb +183 -0
  68. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_payment_information_account_features.rb +199 -0
  69. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_processor_information.rb +293 -0
  70. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch400_response.rb +225 -0
  71. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response.rb +23 -5
  72. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information.rb +1 -1
  73. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information_amount_details.rb +1 -1
  74. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information_invoice_details.rb +184 -0
  75. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_point_of_sale_information.rb +199 -0
  76. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_processing_information.rb +184 -0
  77. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response.rb +1 -1
  78. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_client_reference_information.rb +2 -2
  79. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_installment_information.rb +264 -19
  80. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_issuer_information.rb +28 -3
  81. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information_amount_details.rb +2 -2
  82. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information_invoice_details.rb +29 -4
  83. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb +10 -10
  84. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_bank.rb +1 -1
  85. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_bank_account.rb +1 -1
  86. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +2 -2
  87. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_point_of_sale_information.rb +35 -10
  88. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_point_of_sale_information_emv.rb +1 -1
  89. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information.rb +14 -4
  90. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_bank_transfer_options.rb +2 -2
  91. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +3 -28
  92. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_ach_verification.rb +2 -2
  93. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_card_verification.rb +1 -1
  94. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_consumer_authentication_response.rb +2 -2
  95. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_electronic_verification_results.rb +5 -5
  96. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_routing.rb +3 -3
  97. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response.rb +14 -5
  98. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_order_information.rb +1 -1
  99. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_refund_amount_details.rb +1 -1
  100. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response.rb +2 -2
  101. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_reversal_amount_details.rb +3 -3
  102. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response.rb +2 -2
  103. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response_void_amount_details.rb +1 -1
  104. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response.rb +2 -2
  105. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_order_information_amount_details.rb +2 -2
  106. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_processor_information.rb +1 -1
  107. data/lib/cybersource_rest_client/models/ptsv2credits_installment_information.rb +199 -0
  108. data/lib/cybersource_rest_client/models/ptsv2credits_processing_information.rb +108 -15
  109. data/lib/cybersource_rest_client/models/ptsv2credits_processing_information_bank_transfer_options.rb +3 -3
  110. data/lib/cybersource_rest_client/models/ptsv2credits_processing_information_japan_payment_options.rb +209 -0
  111. data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information_sub_merchant.rb +32 -7
  112. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information.rb +2 -2
  113. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +1 -1
  114. data/lib/cybersource_rest_client/models/ptsv2payments_client_reference_information.rb +17 -2
  115. data/lib/cybersource_rest_client/models/ptsv2payments_client_reference_information_partner.rb +29 -4
  116. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information.rb +55 -21
  117. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information_strong_authentication.rb +299 -0
  118. data/lib/cybersource_rest_client/models/ptsv2payments_installment_information.rb +74 -14
  119. data/lib/cybersource_rest_client/models/ptsv2payments_issuer_information.rb +1 -1
  120. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_defined_information.rb +2 -2
  121. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information.rb +1 -1
  122. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information_merchant_descriptor.rb +26 -1
  123. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_initiated_transaction.rb +1 -1
  124. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +21 -12
  125. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_currency_conversion.rb +249 -0
  126. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_tax_details.rb +7 -7
  127. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_invoice_details.rb +30 -5
  128. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_line_items.rb +10 -10
  129. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information.rb +29 -4
  130. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_bank.rb +1 -1
  131. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_bank_account.rb +1 -1
  132. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +27 -2
  133. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_customer.rb +1 -1
  134. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_fluid_data.rb +1 -1
  135. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_card.rb +1 -1
  136. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information.rb +91 -16
  137. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information_emv.rb +3 -3
  138. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +158 -15
  139. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +19 -9
  140. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options_initiator.rb +1 -1
  141. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_bank_transfer_options.rb +5 -5
  142. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options.rb +359 -0
  143. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_loan_options.rb +224 -0
  144. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_recurring_options.rb +2 -2
  145. data/lib/cybersource_rest_client/models/ptsv2payments_promotion_information.rb +224 -0
  146. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +3 -3
  147. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information.rb +226 -0
  148. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_agency.rb +224 -0
  149. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_lodging.rb +1229 -0
  150. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_lodging_room.rb +233 -0
  151. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_transit.rb +183 -0
  152. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_transit_airline.rb +988 -0
  153. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_transit_airline_ancillary_information.rb +285 -0
  154. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_transit_airline_ancillary_information_service.rb +224 -0
  155. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_transit_airline_legs.rb +614 -0
  156. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_transit_airline_ticket_issuer.rb +349 -0
  157. data/lib/cybersource_rest_client/models/ptsv2paymentsid_client_reference_information.rb +208 -0
  158. data/lib/cybersource_rest_client/models/ptsv2paymentsid_client_reference_information_partner.rb +249 -0
  159. data/lib/cybersource_rest_client/models/ptsv2paymentsid_merchant_information.rb +199 -0
  160. data/lib/cybersource_rest_client/models/ptsv2paymentsid_order_information.rb +183 -0
  161. data/lib/cybersource_rest_client/models/ptsv2paymentsid_order_information_amount_details.rb +224 -0
  162. data/lib/cybersource_rest_client/models/ptsv2paymentsid_processing_information.rb +183 -0
  163. data/lib/cybersource_rest_client/models/ptsv2paymentsid_processing_information_authorization_options.rb +183 -0
  164. data/lib/cybersource_rest_client/models/ptsv2paymentsid_processing_information_authorization_options_initiator.rb +184 -0
  165. data/lib/cybersource_rest_client/models/ptsv2paymentsid_travel_information.rb +199 -0
  166. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_aggregator_information_sub_merchant.rb +34 -9
  167. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_installment_information.rb +194 -19
  168. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_merchant_information.rb +1 -1
  169. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_amount_details.rb +7 -7
  170. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_payment_information.rb +13 -4
  171. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_payment_information_card.rb +224 -0
  172. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_point_of_sale_information.rb +6 -6
  173. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_point_of_sale_information_emv.rb +1 -1
  174. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information.rb +23 -14
  175. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_authorization_options.rb +2 -2
  176. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_travel_information.rb +201 -0
  177. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_merchant_information.rb +1 -1
  178. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_order_information_line_items.rb +5 -5
  179. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information.rb +19 -1
  180. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_card.rb +54 -4
  181. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information.rb +33 -8
  182. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information_recurring_options.rb +1 -1
  183. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_client_reference_information.rb +1 -1
  184. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_client_reference_information_partner.rb +29 -4
  185. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_order_information_line_items.rb +1 -1
  186. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_point_of_sale_information_emv.rb +1 -1
  187. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_processing_information.rb +4 -4
  188. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information.rb +1 -1
  189. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information_amount_details.rb +2 -2
  190. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details.rb +2 -2
  191. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +2 -2
  192. data/lib/cybersource_rest_client/models/refund_capture_request.rb +22 -4
  193. data/lib/cybersource_rest_client/models/refund_payment_request.rb +22 -4
  194. data/lib/cybersource_rest_client/models/reporting_v3_report_subscriptions_get200_response_subscriptions.rb +1 -1
  195. data/lib/cybersource_rest_client/models/risk_v1_address_verifications_post201_response.rb +285 -0
  196. data/lib/cybersource_rest_client/models/risk_v1_address_verifications_post201_response_address1.rb +224 -0
  197. data/lib/cybersource_rest_client/models/risk_v1_address_verifications_post201_response_address_verification_information.rb +327 -0
  198. data/lib/cybersource_rest_client/models/risk_v1_address_verifications_post201_response_address_verification_information_bar_code.rb +209 -0
  199. data/lib/cybersource_rest_client/models/risk_v1_address_verifications_post201_response_address_verification_information_standard_address.rb +433 -0
  200. data/lib/cybersource_rest_client/models/risk_v1_authentication_exemptions_post201_response.rb +2 -2
  201. data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response.rb +3 -3
  202. data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response_consumer_authentication_information.rb +249 -4
  203. data/lib/cybersource_rest_client/models/risk_v1_authentication_setups_post201_response.rb +246 -0
  204. data/lib/cybersource_rest_client/models/risk_v1_authentication_setups_post201_response_consumer_authentication_information.rb +224 -0
  205. data/lib/cybersource_rest_client/models/risk_v1_authentication_setups_post201_response_error_information.rb +205 -0
  206. data/lib/cybersource_rest_client/models/risk_v1_authentications_post201_response.rb +3 -3
  207. data/lib/cybersource_rest_client/models/risk_v1_authentications_post201_response_consumer_authentication_information.rb +386 -7
  208. data/lib/cybersource_rest_client/models/{riskv1authentications_consumer_authentication_information_ivr.rb → risk_v1_authentications_post201_response_consumer_authentication_information_ivr.rb} +1 -1
  209. data/lib/cybersource_rest_client/models/risk_v1_authentications_post201_response_order_information_amount_details.rb +1 -1
  210. data/lib/cybersource_rest_client/models/risk_v1_authentications_post400_response.rb +225 -0
  211. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response.rb +1 -1
  212. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_risk_information_ip_address.rb +54 -4
  213. data/lib/cybersource_rest_client/models/risk_v1_export_compliance_inquiries_post201_response.rb +285 -0
  214. data/lib/cybersource_rest_client/models/risk_v1_export_compliance_inquiries_post201_response_export_compliance_information.rb +229 -0
  215. data/lib/cybersource_rest_client/models/risk_v1_export_compliance_inquiries_post201_response_export_compliance_information_watch_list.rb +185 -0
  216. data/lib/cybersource_rest_client/models/risk_v1_export_compliance_inquiries_post201_response_watch_list_matches.rb +235 -0
  217. data/lib/cybersource_rest_client/models/risk_v1_update_post201_response.rb +237 -0
  218. data/lib/cybersource_rest_client/models/riskv1addressverifications_buyer_information.rb +199 -0
  219. data/lib/cybersource_rest_client/models/riskv1addressverifications_client_reference_information.rb +233 -0
  220. data/lib/cybersource_rest_client/models/riskv1addressverifications_order_information.rb +203 -0
  221. data/lib/cybersource_rest_client/models/riskv1addressverifications_order_information_bill_to.rb +410 -0
  222. data/lib/cybersource_rest_client/models/riskv1addressverifications_order_information_line_items.rb +342 -0
  223. data/lib/cybersource_rest_client/models/riskv1addressverifications_order_information_ship_to.rb +392 -0
  224. data/lib/cybersource_rest_client/models/riskv1authenticationexemptions_acquirer_information.rb +1 -1
  225. data/lib/cybersource_rest_client/models/riskv1authenticationexemptions_order_information_line_items.rb +2 -2
  226. data/lib/cybersource_rest_client/models/riskv1authenticationexemptions_payment_information.rb +13 -4
  227. data/lib/cybersource_rest_client/models/riskv1authenticationexemptions_payment_information_fluid_data.rb +268 -0
  228. data/lib/cybersource_rest_client/models/riskv1authenticationresults_consumer_authentication_information.rb +4 -214
  229. data/lib/cybersource_rest_client/models/riskv1authenticationresults_order_information_line_items.rb +2 -2
  230. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information.rb +13 -4
  231. data/lib/cybersource_rest_client/models/riskv1authentications_acquirer_information.rb +1 -1
  232. data/lib/cybersource_rest_client/models/riskv1authentications_consumer_authentication_information.rb +4 -333
  233. data/lib/cybersource_rest_client/models/riskv1authentications_order_information_line_items.rb +2 -2
  234. data/lib/cybersource_rest_client/models/riskv1authentications_travel_information_legs.rb +2 -2
  235. data/lib/cybersource_rest_client/models/{riskv1authentications_client_reference_information.rb → riskv1authenticationsetups_client_reference_information.rb} +2 -2
  236. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information.rb +210 -0
  237. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_card.rb +286 -0
  238. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_tokenized_card.rb +325 -0
  239. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_processing_information.rb +224 -0
  240. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_token_information.rb +184 -0
  241. data/lib/cybersource_rest_client/models/riskv1decisions_buyer_information.rb +2 -2
  242. data/lib/cybersource_rest_client/models/riskv1decisions_card_verification.rb +1 -1
  243. data/lib/cybersource_rest_client/models/riskv1decisions_client_reference_information.rb +1 -1
  244. data/lib/cybersource_rest_client/models/riskv1decisions_device_information.rb +1 -26
  245. data/lib/cybersource_rest_client/models/riskv1decisions_order_information.rb +4 -13
  246. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_amount_details.rb +2 -2
  247. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_bill_to.rb +1 -26
  248. data/lib/cybersource_rest_client/models/riskv1decisions_order_information_line_items.rb +2 -2
  249. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information.rb +4 -13
  250. data/lib/cybersource_rest_client/models/riskv1decisions_risk_information.rb +4 -13
  251. data/lib/cybersource_rest_client/models/riskv1decisions_travel_information_legs.rb +2 -2
  252. data/lib/cybersource_rest_client/models/riskv1decisionsidmarking_risk_information.rb +183 -0
  253. data/lib/cybersource_rest_client/models/riskv1decisionsidmarking_risk_information_marking_details.rb +247 -0
  254. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_device_information.rb +224 -0
  255. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_export_compliance_information.rb +205 -0
  256. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_export_compliance_information_weights.rb +249 -0
  257. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information.rb +203 -0
  258. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_bill_to.rb +503 -0
  259. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_bill_to_company.rb +199 -0
  260. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_line_items.rb +364 -0
  261. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_ship_to.rb +249 -0
  262. data/lib/cybersource_rest_client/models/riskv1liststypeentries_buyer_information.rb +186 -0
  263. data/lib/cybersource_rest_client/models/riskv1liststypeentries_device_information.rb +224 -0
  264. data/lib/cybersource_rest_client/models/riskv1liststypeentries_order_information.rb +213 -0
  265. data/lib/cybersource_rest_client/models/{riskv1decisions_order_information_address.rb → riskv1liststypeentries_order_information_address.rb} +1 -1
  266. data/lib/cybersource_rest_client/models/riskv1liststypeentries_order_information_bill_to.rb +449 -0
  267. data/lib/cybersource_rest_client/models/riskv1liststypeentries_order_information_line_items.rb +199 -0
  268. data/lib/cybersource_rest_client/models/riskv1liststypeentries_order_information_ship_to.rb +325 -0
  269. data/lib/cybersource_rest_client/models/riskv1liststypeentries_payment_information.rb +193 -0
  270. data/lib/cybersource_rest_client/models/{riskv1decisions_payment_information_bank.rb → riskv1liststypeentries_payment_information_bank.rb} +1 -1
  271. data/lib/cybersource_rest_client/models/riskv1liststypeentries_payment_information_card.rb +234 -0
  272. data/lib/cybersource_rest_client/models/riskv1liststypeentries_risk_information.rb +183 -0
  273. data/lib/cybersource_rest_client/models/{riskv1decisions_risk_information_marking_details.rb → riskv1liststypeentries_risk_information_marking_details.rb} +29 -44
  274. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_payment_instruments_embedded_instrument_identifier.rb +10 -1
  275. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response.rb +10 -1
  276. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response_tokenized_card.rb +272 -0
  277. data/lib/cybersource_rest_client/models/tms_v1_instrument_identifiers_post200_response_tokenized_card_card.rb +253 -0
  278. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response.rb +1 -1
  279. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_application_information.rb +2 -2
  280. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_buyer_information.rb +1 -1
  281. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_client_reference_information.rb +1 -1
  282. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_consumer_authentication_information.rb +2 -2
  283. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_fraud_marking_information.rb +1 -1
  284. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_amount_details.rb +2 -2
  285. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_line_items.rb +1 -1
  286. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_account_features.rb +1 -1
  287. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank.rb +1 -1
  288. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank_account.rb +1 -1
  289. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank_mandate.rb +3 -3
  290. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_point_of_sale_information.rb +2 -2
  291. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +2 -2
  292. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +1 -1
  293. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_bank_transfer_options.rb +1 -1
  294. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +2 -2
  295. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_electronic_verification_results.rb +4 -4
  296. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response.rb +1 -1
  297. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_client_reference_information.rb +1 -1
  298. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_consumer_authentication_information.rb +1 -1
  299. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_merchant_information.rb +1 -1
  300. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_point_of_sale_information.rb +3 -3
  301. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +1 -1
  302. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information_providers_fingerprint.rb +2 -2
  303. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +1 -1
  304. data/lib/cybersource_rest_client/models/validate_export_compliance_request.rb +219 -0
  305. data/lib/cybersource_rest_client/models/{request.rb → validate_request.rb} +12 -3
  306. data/lib/cybersource_rest_client/models/verify_customer_address_request.rb +201 -0
  307. metadata +107 -14
  308. data/lib/cybersource_rest_client/models/ptsv2credits_point_of_sale_information.rb +0 -365
  309. data/lib/cybersource_rest_client/models/ptsv2credits_point_of_sale_information_emv.rb +0 -221
@@ -14,13 +14,13 @@ require 'date'
14
14
 
15
15
  module CyberSource
16
16
  class Ptsv2paymentsRecipientInformation
17
- # Identifier for the recipient’s account. Use the first six digits and last four digits of the recipient’s account number. This field is a _pass-through_, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor. For details, see the `recipient_account_id` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
17
+ # Identifier for the recipient’s account. Use the first six digits and last four digits of the recipient’s account number. This field is a _pass-through_, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor. For details, see the `recipient_account_id` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)
18
18
  attr_accessor :account_id
19
19
 
20
- # Recipient’s last name. This field is a _passthrough_, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor. For details, see the `recipient_lastname` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
20
+ # Recipient’s last name. This field is a _passthrough_, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor. For details, see the `recipient_lastname` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)
21
21
  attr_accessor :last_name
22
22
 
23
- # Partial postal code for the recipient’s address. For example, if the postal code is **NN5 7SG**, the value for this field should be the first part of the postal code: **NN5**. This field is a _pass-through_, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor. For details, see the `recipient_postal_code` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)
23
+ # Partial postal code for the recipient’s address. For example, if the postal code is **NN5 7SG**, the value for this field should be the first part of the postal code: **NN5**. This field is a _pass-through_, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor. For details, see the `recipient_postal_code` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)
24
24
  attr_accessor :postal_code
25
25
 
26
26
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -0,0 +1,226 @@
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.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CyberSource
16
+ class Ptsv2paymentsTravelInformation
17
+ # Duration for which the vehicle was rented or lodge/hotel was booked.
18
+ attr_accessor :duration
19
+
20
+ attr_accessor :agency
21
+
22
+ attr_accessor :lodging
23
+
24
+ attr_accessor :transit
25
+
26
+ # Attribute mapping from ruby-style variable name to JSON key.
27
+ def self.attribute_map
28
+ {
29
+ :'duration' => :'duration',
30
+ :'agency' => :'agency',
31
+ :'lodging' => :'lodging',
32
+ :'transit' => :'transit'
33
+ }
34
+ end
35
+
36
+ # Attribute type mapping.
37
+ def self.swagger_types
38
+ {
39
+ :'duration' => :'String',
40
+ :'agency' => :'Ptsv2paymentsTravelInformationAgency',
41
+ :'lodging' => :'Ptsv2paymentsTravelInformationLodging',
42
+ :'transit' => :'Ptsv2paymentsTravelInformationTransit'
43
+ }
44
+ end
45
+
46
+ # Initializes the object
47
+ # @param [Hash] attributes Model attributes in the form of hash
48
+ def initialize(attributes = {})
49
+ return unless attributes.is_a?(Hash)
50
+
51
+ # convert string to symbol for hash key
52
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
53
+
54
+ if attributes.has_key?(:'duration')
55
+ self.duration = attributes[:'duration']
56
+ end
57
+
58
+ if attributes.has_key?(:'agency')
59
+ self.agency = attributes[:'agency']
60
+ end
61
+
62
+ if attributes.has_key?(:'lodging')
63
+ self.lodging = attributes[:'lodging']
64
+ end
65
+
66
+ if attributes.has_key?(:'transit')
67
+ self.transit = attributes[:'transit']
68
+ end
69
+ end
70
+
71
+ # Show invalid properties with the reasons. Usually used together with valid?
72
+ # @return Array for valid properties with the reasons
73
+ def list_invalid_properties
74
+ invalid_properties = Array.new
75
+ if !@duration.nil? && @duration.to_s.length > 2
76
+ invalid_properties.push('invalid value for "duration", the character length must be smaller than or equal to 2.')
77
+ end
78
+
79
+ invalid_properties
80
+ end
81
+
82
+ # Check to see if the all the properties in the model are valid
83
+ # @return true if the model is valid
84
+ def valid?
85
+ return false if !@duration.nil? && @duration.to_s.length > 2
86
+ true
87
+ end
88
+
89
+ # Custom attribute writer method with validation
90
+ # @param [Object] duration Value to be assigned
91
+ def duration=(duration)
92
+ if !duration.nil? && duration.to_s.length > 2
93
+ fail ArgumentError, 'invalid value for "duration", the character length must be smaller than or equal to 2.'
94
+ end
95
+
96
+ @duration = duration
97
+ end
98
+
99
+ # Checks equality by comparing each attribute.
100
+ # @param [Object] Object to be compared
101
+ def ==(o)
102
+ return true if self.equal?(o)
103
+ self.class == o.class &&
104
+ duration == o.duration &&
105
+ agency == o.agency &&
106
+ lodging == o.lodging &&
107
+ transit == o.transit
108
+ end
109
+
110
+ # @see the `==` method
111
+ # @param [Object] Object to be compared
112
+ def eql?(o)
113
+ self == o
114
+ end
115
+
116
+ # Calculates hash code according to all attributes.
117
+ # @return [Fixnum] Hash code
118
+ def hash
119
+ [duration, agency, lodging, transit].hash
120
+ end
121
+
122
+ # Builds the object from hash
123
+ # @param [Hash] attributes Model attributes in the form of hash
124
+ # @return [Object] Returns the model itself
125
+ def build_from_hash(attributes)
126
+ return nil unless attributes.is_a?(Hash)
127
+ self.class.swagger_types.each_pair do |key, type|
128
+ if type =~ /\AArray<(.*)>/i
129
+ # check to ensure the input is an array given that the the attribute
130
+ # is documented as an array but the input is not
131
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
132
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
133
+ end
134
+ elsif !attributes[self.class.attribute_map[key]].nil?
135
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
136
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
137
+ end
138
+
139
+ self
140
+ end
141
+
142
+ # Deserializes the data based on type
143
+ # @param string type Data type
144
+ # @param string value Value to be deserialized
145
+ # @return [Object] Deserialized data
146
+ def _deserialize(type, value)
147
+ case type.to_sym
148
+ when :DateTime
149
+ DateTime.parse(value)
150
+ when :Date
151
+ Date.parse(value)
152
+ when :String
153
+ value.to_s
154
+ when :Integer
155
+ value.to_i
156
+ when :Float
157
+ value.to_f
158
+ when :BOOLEAN
159
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
160
+ true
161
+ else
162
+ false
163
+ end
164
+ when :Object
165
+ # generic object (usually a Hash), return directly
166
+ value
167
+ when /\AArray<(?<inner_type>.+)>\z/
168
+ inner_type = Regexp.last_match[:inner_type]
169
+ value.map { |v| _deserialize(inner_type, v) }
170
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
171
+ k_type = Regexp.last_match[:k_type]
172
+ v_type = Regexp.last_match[:v_type]
173
+ {}.tap do |hash|
174
+ value.each do |k, v|
175
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
176
+ end
177
+ end
178
+ else # model
179
+ temp_model = CyberSource.const_get(type).new
180
+ temp_model.build_from_hash(value)
181
+ end
182
+ end
183
+
184
+ # Returns the string representation of the object
185
+ # @return [String] String presentation of the object
186
+ def to_s
187
+ to_hash.to_s
188
+ end
189
+
190
+ # to_body is an alias to to_hash (backward compatibility)
191
+ # @return [Hash] Returns the object in the form of hash
192
+ def to_body
193
+ to_hash
194
+ end
195
+
196
+ # Returns the object in the form of hash
197
+ # @return [Hash] Returns the object in the form of hash
198
+ def to_hash
199
+ hash = {}
200
+ self.class.attribute_map.each_pair do |attr, param|
201
+ value = self.send(attr)
202
+ next if value.nil?
203
+ hash[param] = _to_hash(value)
204
+ end
205
+ hash
206
+ end
207
+
208
+ # Outputs non-array value in the form of hash
209
+ # For object, use to_hash. Otherwise, just return the value
210
+ # @param [Object] value Any valid value
211
+ # @return [Hash] Returns the value in the form of hash
212
+ def _to_hash(value)
213
+ if value.is_a?(Array)
214
+ value.compact.map { |v| _to_hash(v) }
215
+ elsif value.is_a?(Hash)
216
+ {}.tap do |hash|
217
+ value.each { |k, v| hash[k] = _to_hash(v) }
218
+ end
219
+ elsif value.respond_to? :to_hash
220
+ value.to_hash
221
+ else
222
+ value
223
+ end
224
+ end
225
+ end
226
+ end
@@ -0,0 +1,224 @@
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.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CyberSource
16
+ class Ptsv2paymentsTravelInformationAgency
17
+ # Code of travel agency that made the vehicle rental reservation.
18
+ attr_accessor :code
19
+
20
+ # Name of travel agency that made the reservation.
21
+ attr_accessor :name
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+ :'code' => :'code',
27
+ :'name' => :'name'
28
+ }
29
+ end
30
+
31
+ # Attribute type mapping.
32
+ def self.swagger_types
33
+ {
34
+ :'code' => :'String',
35
+ :'name' => :'String'
36
+ }
37
+ end
38
+
39
+ # Initializes the object
40
+ # @param [Hash] attributes Model attributes in the form of hash
41
+ def initialize(attributes = {})
42
+ return unless attributes.is_a?(Hash)
43
+
44
+ # convert string to symbol for hash key
45
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
46
+
47
+ if attributes.has_key?(:'code')
48
+ self.code = attributes[:'code']
49
+ end
50
+
51
+ if attributes.has_key?(:'name')
52
+ self.name = attributes[:'name']
53
+ end
54
+ end
55
+
56
+ # Show invalid properties with the reasons. Usually used together with valid?
57
+ # @return Array for valid properties with the reasons
58
+ def list_invalid_properties
59
+ invalid_properties = Array.new
60
+ if !@code.nil? && @code.to_s.length > 8
61
+ invalid_properties.push('invalid value for "code", the character length must be smaller than or equal to 8.')
62
+ end
63
+
64
+ if !@name.nil? && @name.to_s.length > 25
65
+ invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 25.')
66
+ end
67
+
68
+ invalid_properties
69
+ end
70
+
71
+ # Check to see if the all the properties in the model are valid
72
+ # @return true if the model is valid
73
+ def valid?
74
+ return false if !@code.nil? && @code.to_s.length > 8
75
+ return false if !@name.nil? && @name.to_s.length > 25
76
+ true
77
+ end
78
+
79
+ # Custom attribute writer method with validation
80
+ # @param [Object] code Value to be assigned
81
+ def code=(code)
82
+ if !code.nil? && code.to_s.length > 8
83
+ fail ArgumentError, 'invalid value for "code", the character length must be smaller than or equal to 8.'
84
+ end
85
+
86
+ @code = code
87
+ end
88
+
89
+ # Custom attribute writer method with validation
90
+ # @param [Object] name Value to be assigned
91
+ def name=(name)
92
+ if !name.nil? && name.to_s.length > 25
93
+ fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 25.'
94
+ end
95
+
96
+ @name = name
97
+ end
98
+
99
+ # Checks equality by comparing each attribute.
100
+ # @param [Object] Object to be compared
101
+ def ==(o)
102
+ return true if self.equal?(o)
103
+ self.class == o.class &&
104
+ code == o.code &&
105
+ name == o.name
106
+ end
107
+
108
+ # @see the `==` method
109
+ # @param [Object] Object to be compared
110
+ def eql?(o)
111
+ self == o
112
+ end
113
+
114
+ # Calculates hash code according to all attributes.
115
+ # @return [Fixnum] Hash code
116
+ def hash
117
+ [code, name].hash
118
+ end
119
+
120
+ # Builds the object from hash
121
+ # @param [Hash] attributes Model attributes in the form of hash
122
+ # @return [Object] Returns the model itself
123
+ def build_from_hash(attributes)
124
+ return nil unless attributes.is_a?(Hash)
125
+ self.class.swagger_types.each_pair do |key, type|
126
+ if type =~ /\AArray<(.*)>/i
127
+ # check to ensure the input is an array given that the the attribute
128
+ # is documented as an array but the input is not
129
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
130
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
131
+ end
132
+ elsif !attributes[self.class.attribute_map[key]].nil?
133
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
134
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
135
+ end
136
+
137
+ self
138
+ end
139
+
140
+ # Deserializes the data based on type
141
+ # @param string type Data type
142
+ # @param string value Value to be deserialized
143
+ # @return [Object] Deserialized data
144
+ def _deserialize(type, value)
145
+ case type.to_sym
146
+ when :DateTime
147
+ DateTime.parse(value)
148
+ when :Date
149
+ Date.parse(value)
150
+ when :String
151
+ value.to_s
152
+ when :Integer
153
+ value.to_i
154
+ when :Float
155
+ value.to_f
156
+ when :BOOLEAN
157
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
158
+ true
159
+ else
160
+ false
161
+ end
162
+ when :Object
163
+ # generic object (usually a Hash), return directly
164
+ value
165
+ when /\AArray<(?<inner_type>.+)>\z/
166
+ inner_type = Regexp.last_match[:inner_type]
167
+ value.map { |v| _deserialize(inner_type, v) }
168
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
169
+ k_type = Regexp.last_match[:k_type]
170
+ v_type = Regexp.last_match[:v_type]
171
+ {}.tap do |hash|
172
+ value.each do |k, v|
173
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
174
+ end
175
+ end
176
+ else # model
177
+ temp_model = CyberSource.const_get(type).new
178
+ temp_model.build_from_hash(value)
179
+ end
180
+ end
181
+
182
+ # Returns the string representation of the object
183
+ # @return [String] String presentation of the object
184
+ def to_s
185
+ to_hash.to_s
186
+ end
187
+
188
+ # to_body is an alias to to_hash (backward compatibility)
189
+ # @return [Hash] Returns the object in the form of hash
190
+ def to_body
191
+ to_hash
192
+ end
193
+
194
+ # Returns the object in the form of hash
195
+ # @return [Hash] Returns the object in the form of hash
196
+ def to_hash
197
+ hash = {}
198
+ self.class.attribute_map.each_pair do |attr, param|
199
+ value = self.send(attr)
200
+ next if value.nil?
201
+ hash[param] = _to_hash(value)
202
+ end
203
+ hash
204
+ end
205
+
206
+ # Outputs non-array value in the form of hash
207
+ # For object, use to_hash. Otherwise, just return the value
208
+ # @param [Object] value Any valid value
209
+ # @return [Hash] Returns the value in the form of hash
210
+ def _to_hash(value)
211
+ if value.is_a?(Array)
212
+ value.compact.map { |v| _to_hash(v) }
213
+ elsif value.is_a?(Hash)
214
+ {}.tap do |hash|
215
+ value.each { |k, v| hash[k] = _to_hash(v) }
216
+ end
217
+ elsif value.respond_to? :to_hash
218
+ value.to_hash
219
+ else
220
+ value
221
+ end
222
+ end
223
+ end
224
+ end