cybersource_rest_client 0.0.19 → 0.0.21

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 (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
@@ -0,0 +1,327 @@
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 RiskV1AddressVerificationsPost201ResponseAddressVerificationInformation
17
+ # Contains the record type of the postal code with which the address was matched. #### U.S. Addresses Depending on the quantity and quality of the address information provided, this field contains one or two characters: - One character: sufficient correct information was provided to result in accurate matching. - Two characters: standardization would provide a better address if more or better input address information were available. The second character is D (default). Blank fields are unassigned. When an address cannot be standardized, how the input data was parsed determines the address type. In this case, standardization may indicate a street, rural route, highway contract, general delivery, or PO box. For possible values, see the description for the `dav_address_type` reply field in [CyberSource Verification Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/Verification_Svcs_SCMP_API/html/) #### All Other Countries This field contains one of the following values: - P: Post. - S: Street. - x: Unknown.
18
+ attr_accessor :address_type
19
+
20
+ attr_accessor :bar_code
21
+
22
+ # Value can be - Canada - US - International. The values of errorCode and statusCode mean different things depending on the applicable region. Refer to the guide for more info.
23
+ attr_accessor :applicable_region
24
+
25
+ # Four-character error code returned for Canadian, US and international addresses. For possible values, see Verification Services guide. The meaning of the errorCode depends on value of applicableRegion.
26
+ attr_accessor :error_code
27
+
28
+ # Four-to-ten character status code returned for Canadian, US and international addresses. For possible values, see Verification Services guide. The meaning of the errorCode depends on value of applicableRegion.
29
+ attr_accessor :status_code
30
+
31
+ # Care of data dropped from the standard address.
32
+ attr_accessor :care_of
33
+
34
+ # Indicates the probable correctness of the address match. Returned for U.S. and Canadian addresses. Returns a value from 0-9, where 0 is most likely to be correct and 9 is least likely to be correct, or -1 if there is no address match.
35
+ attr_accessor :match_score
36
+
37
+ attr_accessor :standard_address
38
+
39
+ # Attribute mapping from ruby-style variable name to JSON key.
40
+ def self.attribute_map
41
+ {
42
+ :'address_type' => :'addressType',
43
+ :'bar_code' => :'barCode',
44
+ :'applicable_region' => :'applicableRegion',
45
+ :'error_code' => :'errorCode',
46
+ :'status_code' => :'statusCode',
47
+ :'care_of' => :'careOf',
48
+ :'match_score' => :'matchScore',
49
+ :'standard_address' => :'standardAddress'
50
+ }
51
+ end
52
+
53
+ # Attribute type mapping.
54
+ def self.swagger_types
55
+ {
56
+ :'address_type' => :'String',
57
+ :'bar_code' => :'RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationBarCode',
58
+ :'applicable_region' => :'String',
59
+ :'error_code' => :'String',
60
+ :'status_code' => :'String',
61
+ :'care_of' => :'String',
62
+ :'match_score' => :'Integer',
63
+ :'standard_address' => :'RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddress'
64
+ }
65
+ end
66
+
67
+ # Initializes the object
68
+ # @param [Hash] attributes Model attributes in the form of hash
69
+ def initialize(attributes = {})
70
+ return unless attributes.is_a?(Hash)
71
+
72
+ # convert string to symbol for hash key
73
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
74
+
75
+ if attributes.has_key?(:'addressType')
76
+ self.address_type = attributes[:'addressType']
77
+ end
78
+
79
+ if attributes.has_key?(:'barCode')
80
+ self.bar_code = attributes[:'barCode']
81
+ end
82
+
83
+ if attributes.has_key?(:'applicableRegion')
84
+ self.applicable_region = attributes[:'applicableRegion']
85
+ end
86
+
87
+ if attributes.has_key?(:'errorCode')
88
+ self.error_code = attributes[:'errorCode']
89
+ end
90
+
91
+ if attributes.has_key?(:'statusCode')
92
+ self.status_code = attributes[:'statusCode']
93
+ end
94
+
95
+ if attributes.has_key?(:'careOf')
96
+ self.care_of = attributes[:'careOf']
97
+ end
98
+
99
+ if attributes.has_key?(:'matchScore')
100
+ self.match_score = attributes[:'matchScore']
101
+ end
102
+
103
+ if attributes.has_key?(:'standardAddress')
104
+ self.standard_address = attributes[:'standardAddress']
105
+ end
106
+ end
107
+
108
+ # Show invalid properties with the reasons. Usually used together with valid?
109
+ # @return Array for valid properties with the reasons
110
+ def list_invalid_properties
111
+ invalid_properties = Array.new
112
+ if !@address_type.nil? && @address_type.to_s.length > 255
113
+ invalid_properties.push('invalid value for "address_type", the character length must be smaller than or equal to 255.')
114
+ end
115
+
116
+ if !@applicable_region.nil? && @applicable_region.to_s.length > 255
117
+ invalid_properties.push('invalid value for "applicable_region", the character length must be smaller than or equal to 255.')
118
+ end
119
+
120
+ if !@error_code.nil? && @error_code.to_s.length > 255
121
+ invalid_properties.push('invalid value for "error_code", the character length must be smaller than or equal to 255.')
122
+ end
123
+
124
+ if !@status_code.nil? && @status_code.to_s.length > 255
125
+ invalid_properties.push('invalid value for "status_code", the character length must be smaller than or equal to 255.')
126
+ end
127
+
128
+ if !@care_of.nil? && @care_of.to_s.length > 255
129
+ invalid_properties.push('invalid value for "care_of", the character length must be smaller than or equal to 255.')
130
+ end
131
+
132
+ invalid_properties
133
+ end
134
+
135
+ # Check to see if the all the properties in the model are valid
136
+ # @return true if the model is valid
137
+ def valid?
138
+ return false if !@address_type.nil? && @address_type.to_s.length > 255
139
+ return false if !@applicable_region.nil? && @applicable_region.to_s.length > 255
140
+ return false if !@error_code.nil? && @error_code.to_s.length > 255
141
+ return false if !@status_code.nil? && @status_code.to_s.length > 255
142
+ return false if !@care_of.nil? && @care_of.to_s.length > 255
143
+ true
144
+ end
145
+
146
+ # Custom attribute writer method with validation
147
+ # @param [Object] address_type Value to be assigned
148
+ def address_type=(address_type)
149
+ if !address_type.nil? && address_type.to_s.length > 255
150
+ fail ArgumentError, 'invalid value for "address_type", the character length must be smaller than or equal to 255.'
151
+ end
152
+
153
+ @address_type = address_type
154
+ end
155
+
156
+ # Custom attribute writer method with validation
157
+ # @param [Object] applicable_region Value to be assigned
158
+ def applicable_region=(applicable_region)
159
+ if !applicable_region.nil? && applicable_region.to_s.length > 255
160
+ fail ArgumentError, 'invalid value for "applicable_region", the character length must be smaller than or equal to 255.'
161
+ end
162
+
163
+ @applicable_region = applicable_region
164
+ end
165
+
166
+ # Custom attribute writer method with validation
167
+ # @param [Object] error_code Value to be assigned
168
+ def error_code=(error_code)
169
+ if !error_code.nil? && error_code.to_s.length > 255
170
+ fail ArgumentError, 'invalid value for "error_code", the character length must be smaller than or equal to 255.'
171
+ end
172
+
173
+ @error_code = error_code
174
+ end
175
+
176
+ # Custom attribute writer method with validation
177
+ # @param [Object] status_code Value to be assigned
178
+ def status_code=(status_code)
179
+ if !status_code.nil? && status_code.to_s.length > 255
180
+ fail ArgumentError, 'invalid value for "status_code", the character length must be smaller than or equal to 255.'
181
+ end
182
+
183
+ @status_code = status_code
184
+ end
185
+
186
+ # Custom attribute writer method with validation
187
+ # @param [Object] care_of Value to be assigned
188
+ def care_of=(care_of)
189
+ if !care_of.nil? && care_of.to_s.length > 255
190
+ fail ArgumentError, 'invalid value for "care_of", the character length must be smaller than or equal to 255.'
191
+ end
192
+
193
+ @care_of = care_of
194
+ end
195
+
196
+ # Checks equality by comparing each attribute.
197
+ # @param [Object] Object to be compared
198
+ def ==(o)
199
+ return true if self.equal?(o)
200
+ self.class == o.class &&
201
+ address_type == o.address_type &&
202
+ bar_code == o.bar_code &&
203
+ applicable_region == o.applicable_region &&
204
+ error_code == o.error_code &&
205
+ status_code == o.status_code &&
206
+ care_of == o.care_of &&
207
+ match_score == o.match_score &&
208
+ standard_address == o.standard_address
209
+ end
210
+
211
+ # @see the `==` method
212
+ # @param [Object] Object to be compared
213
+ def eql?(o)
214
+ self == o
215
+ end
216
+
217
+ # Calculates hash code according to all attributes.
218
+ # @return [Fixnum] Hash code
219
+ def hash
220
+ [address_type, bar_code, applicable_region, error_code, status_code, care_of, match_score, standard_address].hash
221
+ end
222
+
223
+ # Builds the object from hash
224
+ # @param [Hash] attributes Model attributes in the form of hash
225
+ # @return [Object] Returns the model itself
226
+ def build_from_hash(attributes)
227
+ return nil unless attributes.is_a?(Hash)
228
+ self.class.swagger_types.each_pair do |key, type|
229
+ if type =~ /\AArray<(.*)>/i
230
+ # check to ensure the input is an array given that the the attribute
231
+ # is documented as an array but the input is not
232
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
233
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
234
+ end
235
+ elsif !attributes[self.class.attribute_map[key]].nil?
236
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
237
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
238
+ end
239
+
240
+ self
241
+ end
242
+
243
+ # Deserializes the data based on type
244
+ # @param string type Data type
245
+ # @param string value Value to be deserialized
246
+ # @return [Object] Deserialized data
247
+ def _deserialize(type, value)
248
+ case type.to_sym
249
+ when :DateTime
250
+ DateTime.parse(value)
251
+ when :Date
252
+ Date.parse(value)
253
+ when :String
254
+ value.to_s
255
+ when :Integer
256
+ value.to_i
257
+ when :Float
258
+ value.to_f
259
+ when :BOOLEAN
260
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
261
+ true
262
+ else
263
+ false
264
+ end
265
+ when :Object
266
+ # generic object (usually a Hash), return directly
267
+ value
268
+ when /\AArray<(?<inner_type>.+)>\z/
269
+ inner_type = Regexp.last_match[:inner_type]
270
+ value.map { |v| _deserialize(inner_type, v) }
271
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
272
+ k_type = Regexp.last_match[:k_type]
273
+ v_type = Regexp.last_match[:v_type]
274
+ {}.tap do |hash|
275
+ value.each do |k, v|
276
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
277
+ end
278
+ end
279
+ else # model
280
+ temp_model = CyberSource.const_get(type).new
281
+ temp_model.build_from_hash(value)
282
+ end
283
+ end
284
+
285
+ # Returns the string representation of the object
286
+ # @return [String] String presentation of the object
287
+ def to_s
288
+ to_hash.to_s
289
+ end
290
+
291
+ # to_body is an alias to to_hash (backward compatibility)
292
+ # @return [Hash] Returns the object in the form of hash
293
+ def to_body
294
+ to_hash
295
+ end
296
+
297
+ # Returns the object in the form of hash
298
+ # @return [Hash] Returns the object in the form of hash
299
+ def to_hash
300
+ hash = {}
301
+ self.class.attribute_map.each_pair do |attr, param|
302
+ value = self.send(attr)
303
+ next if value.nil?
304
+ hash[param] = _to_hash(value)
305
+ end
306
+ hash
307
+ end
308
+
309
+ # Outputs non-array value in the form of hash
310
+ # For object, use to_hash. Otherwise, just return the value
311
+ # @param [Object] value Any valid value
312
+ # @return [Hash] Returns the value in the form of hash
313
+ def _to_hash(value)
314
+ if value.is_a?(Array)
315
+ value.compact.map { |v| _to_hash(v) }
316
+ elsif value.is_a?(Hash)
317
+ {}.tap do |hash|
318
+ value.each { |k, v| hash[k] = _to_hash(v) }
319
+ end
320
+ elsif value.respond_to? :to_hash
321
+ value.to_hash
322
+ else
323
+ value
324
+ end
325
+ end
326
+ end
327
+ end
@@ -0,0 +1,209 @@
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 RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationBarCode
17
+ # Delivery point bar code determined from the input address.
18
+ attr_accessor :value
19
+
20
+ # Check digit for the 11-digit delivery point bar code.
21
+ attr_accessor :check_digit
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+ :'value' => :'value',
27
+ :'check_digit' => :'checkDigit'
28
+ }
29
+ end
30
+
31
+ # Attribute type mapping.
32
+ def self.swagger_types
33
+ {
34
+ :'value' => :'String',
35
+ :'check_digit' => :'Float'
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?(:'value')
48
+ self.value = attributes[:'value']
49
+ end
50
+
51
+ if attributes.has_key?(:'checkDigit')
52
+ self.check_digit = attributes[:'checkDigit']
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 !@value.nil? && @value.to_s.length > 255
61
+ invalid_properties.push('invalid value for "value", the character length must be smaller than or equal to 255.')
62
+ end
63
+
64
+ invalid_properties
65
+ end
66
+
67
+ # Check to see if the all the properties in the model are valid
68
+ # @return true if the model is valid
69
+ def valid?
70
+ return false if !@value.nil? && @value.to_s.length > 255
71
+ true
72
+ end
73
+
74
+ # Custom attribute writer method with validation
75
+ # @param [Object] value Value to be assigned
76
+ def value=(value)
77
+ if !value.nil? && value.to_s.length > 255
78
+ fail ArgumentError, 'invalid value for "value", the character length must be smaller than or equal to 255.'
79
+ end
80
+
81
+ @value = value
82
+ end
83
+
84
+ # Checks equality by comparing each attribute.
85
+ # @param [Object] Object to be compared
86
+ def ==(o)
87
+ return true if self.equal?(o)
88
+ self.class == o.class &&
89
+ value == o.value &&
90
+ check_digit == o.check_digit
91
+ end
92
+
93
+ # @see the `==` method
94
+ # @param [Object] Object to be compared
95
+ def eql?(o)
96
+ self == o
97
+ end
98
+
99
+ # Calculates hash code according to all attributes.
100
+ # @return [Fixnum] Hash code
101
+ def hash
102
+ [value, check_digit].hash
103
+ end
104
+
105
+ # Builds the object from hash
106
+ # @param [Hash] attributes Model attributes in the form of hash
107
+ # @return [Object] Returns the model itself
108
+ def build_from_hash(attributes)
109
+ return nil unless attributes.is_a?(Hash)
110
+ self.class.swagger_types.each_pair do |key, type|
111
+ if type =~ /\AArray<(.*)>/i
112
+ # check to ensure the input is an array given that the the attribute
113
+ # is documented as an array but the input is not
114
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
115
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
116
+ end
117
+ elsif !attributes[self.class.attribute_map[key]].nil?
118
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
119
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
120
+ end
121
+
122
+ self
123
+ end
124
+
125
+ # Deserializes the data based on type
126
+ # @param string type Data type
127
+ # @param string value Value to be deserialized
128
+ # @return [Object] Deserialized data
129
+ def _deserialize(type, value)
130
+ case type.to_sym
131
+ when :DateTime
132
+ DateTime.parse(value)
133
+ when :Date
134
+ Date.parse(value)
135
+ when :String
136
+ value.to_s
137
+ when :Integer
138
+ value.to_i
139
+ when :Float
140
+ value.to_f
141
+ when :BOOLEAN
142
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
143
+ true
144
+ else
145
+ false
146
+ end
147
+ when :Object
148
+ # generic object (usually a Hash), return directly
149
+ value
150
+ when /\AArray<(?<inner_type>.+)>\z/
151
+ inner_type = Regexp.last_match[:inner_type]
152
+ value.map { |v| _deserialize(inner_type, v) }
153
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
154
+ k_type = Regexp.last_match[:k_type]
155
+ v_type = Regexp.last_match[:v_type]
156
+ {}.tap do |hash|
157
+ value.each do |k, v|
158
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
159
+ end
160
+ end
161
+ else # model
162
+ temp_model = CyberSource.const_get(type).new
163
+ temp_model.build_from_hash(value)
164
+ end
165
+ end
166
+
167
+ # Returns the string representation of the object
168
+ # @return [String] String presentation of the object
169
+ def to_s
170
+ to_hash.to_s
171
+ end
172
+
173
+ # to_body is an alias to to_hash (backward compatibility)
174
+ # @return [Hash] Returns the object in the form of hash
175
+ def to_body
176
+ to_hash
177
+ end
178
+
179
+ # Returns the object in the form of hash
180
+ # @return [Hash] Returns the object in the form of hash
181
+ def to_hash
182
+ hash = {}
183
+ self.class.attribute_map.each_pair do |attr, param|
184
+ value = self.send(attr)
185
+ next if value.nil?
186
+ hash[param] = _to_hash(value)
187
+ end
188
+ hash
189
+ end
190
+
191
+ # Outputs non-array value in the form of hash
192
+ # For object, use to_hash. Otherwise, just return the value
193
+ # @param [Object] value Any valid value
194
+ # @return [Hash] Returns the value in the form of hash
195
+ def _to_hash(value)
196
+ if value.is_a?(Array)
197
+ value.compact.map { |v| _to_hash(v) }
198
+ elsif value.is_a?(Hash)
199
+ {}.tap do |hash|
200
+ value.each { |k, v| hash[k] = _to_hash(v) }
201
+ end
202
+ elsif value.respond_to? :to_hash
203
+ value.to_hash
204
+ else
205
+ value
206
+ end
207
+ end
208
+ end
209
+ end