cybersource_rest_client 0.0.86 → 0.0.87

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 (200) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/util/CertificateUtility.rb +14 -6
  3. data/lib/cybersource_rest_client/api/agent_capabilities_api.rb +24 -24
  4. data/lib/cybersource_rest_client/api/bin_lookup_api.rb +3 -3
  5. data/lib/cybersource_rest_client/api/create_new_webhooks_api.rb +6 -6
  6. data/lib/cybersource_rest_client/api/foreign_exchange_rates_api.rb +3 -3
  7. data/lib/cybersource_rest_client/api/manage_webhooks_api.rb +9 -9
  8. data/lib/cybersource_rest_client/api/merchant_boarding_api.rb +3 -3
  9. data/lib/cybersource_rest_client/api/offers_api.rb +3 -3
  10. data/lib/cybersource_rest_client/api/search_transactions_api.rb +2 -2
  11. data/lib/cybersource_rest_client/api/transaction_details_api.rb +1 -1
  12. data/lib/cybersource_rest_client/api/transaction_query_api.rb +3 -3
  13. data/lib/cybersource_rest_client/api/visa_protect_risk_insights_api.rb +104 -0
  14. data/lib/cybersource_rest_client/models/inline_response_200_16.rb +2 -2
  15. data/lib/cybersource_rest_client/models/inline_response_200_17.rb +5 -5
  16. data/lib/cybersource_rest_client/models/inline_response_200_18.rb +5 -5
  17. data/lib/cybersource_rest_client/models/inline_response_200_4.rb +1 -1
  18. data/lib/cybersource_rest_client/models/inline_response_200_5.rb +1 -1
  19. data/lib/cybersource_rest_client/models/inline_response_201_10.rb +18 -93
  20. data/lib/cybersource_rest_client/models/inline_response_201_11.rb +103 -8
  21. data/lib/cybersource_rest_client/models/{inline_response_201_12_client_reference_information.rb → inline_response_201_11_client_reference_information.rb} +1 -1
  22. data/lib/cybersource_rest_client/models/{inline_response_201_12_error_information.rb → inline_response_201_11_error_information.rb} +1 -1
  23. data/lib/cybersource_rest_client/models/{inline_response_201_12_order_information.rb → inline_response_201_11_order_information.rb} +2 -2
  24. data/lib/cybersource_rest_client/models/{inline_response_201_12_order_information_currency_conversion.rb → inline_response_201_11_order_information_currency_conversion.rb} +2 -2
  25. data/lib/cybersource_rest_client/models/{inline_response_201_12_order_information_currency_conversion_offer.rb → inline_response_201_11_order_information_currency_conversion_offer.rb} +1 -1
  26. data/lib/cybersource_rest_client/models/{inline_response_201_12_processor_information.rb → inline_response_201_11_processor_information.rb} +1 -1
  27. data/lib/cybersource_rest_client/models/inline_response_201_12.rb +110 -89
  28. data/lib/cybersource_rest_client/models/{inline_response_201_13_fulfillment_address.rb → inline_response_201_12_fulfillment_address.rb} +1 -1
  29. data/lib/cybersource_rest_client/models/{inline_response_201_13_fulfillment_options.rb → inline_response_201_12_fulfillment_options.rb} +1 -1
  30. data/lib/cybersource_rest_client/models/{inline_response_201_14_item.rb → inline_response_201_12_item.rb} +20 -20
  31. data/lib/cybersource_rest_client/models/inline_response_201_12_line_items.rb +256 -0
  32. data/lib/cybersource_rest_client/models/{inline_response_201_13_links.rb → inline_response_201_12_links.rb} +1 -1
  33. data/lib/cybersource_rest_client/models/{inline_response_201_13_messages.rb → inline_response_201_12_messages.rb} +1 -1
  34. data/lib/cybersource_rest_client/models/{inline_response_201_13_payment_provider.rb → inline_response_201_12_payment_provider.rb} +1 -1
  35. data/lib/cybersource_rest_client/models/{inline_response_201_13_totals.rb → inline_response_201_12_totals.rb} +1 -1
  36. data/lib/cybersource_rest_client/models/inline_response_201_13.rb +61 -67
  37. data/lib/cybersource_rest_client/models/{inline_response_201_14_discounts.rb → inline_response_201_13_discounts.rb} +1 -1
  38. data/lib/cybersource_rest_client/models/{inline_response_201_14_fulfillment.rb → inline_response_201_13_fulfillment.rb} +1 -1
  39. data/lib/cybersource_rest_client/models/inline_response_201_13_item.rb +19 -19
  40. data/lib/cybersource_rest_client/models/inline_response_201_13_line_items.rb +20 -51
  41. data/lib/cybersource_rest_client/models/{inline_response_201_14_order.rb → inline_response_201_13_order.rb} +1 -1
  42. data/lib/cybersource_rest_client/models/{inline_response_201_14_payment.rb → inline_response_201_13_payment.rb} +1 -1
  43. data/lib/cybersource_rest_client/models/{inline_response_201_14_ucp.rb → inline_response_201_13_ucp.rb} +2 -2
  44. data/lib/cybersource_rest_client/models/{inline_response_201_14_ucp_capabilities.rb → inline_response_201_13_ucp_capabilities.rb} +1 -1
  45. data/lib/cybersource_rest_client/models/inline_response_201_3.rb +82 -39
  46. data/lib/cybersource_rest_client/models/{inline_response_201_5_error_information.rb → inline_response_201_3_error_information.rb} +3 -3
  47. data/lib/cybersource_rest_client/models/{inline_response_201_5_error_information_details.rb → inline_response_201_3_error_information_details.rb} +2 -2
  48. data/lib/cybersource_rest_client/models/{inline_response_201_5_order_information.rb → inline_response_201_3_order_information.rb} +2 -2
  49. data/lib/cybersource_rest_client/models/inline_response_201_3_order_information_amount_details.rb +315 -0
  50. data/lib/cybersource_rest_client/models/inline_response_201_3_processing_information.rb +189 -0
  51. data/lib/cybersource_rest_client/models/{inline_response_201_4_processing_information_routing.rb → inline_response_201_3_processing_information_routing.rb} +1 -1
  52. data/lib/cybersource_rest_client/models/inline_response_201_3_processor_information.rb +213 -0
  53. data/lib/cybersource_rest_client/models/inline_response_201_4.rb +41 -30
  54. data/lib/cybersource_rest_client/models/{inline_response_201_5__links.rb → inline_response_201_4__links.rb} +2 -2
  55. data/lib/cybersource_rest_client/models/{inline_response_201_5__links_self.rb → inline_response_201_4__links_self.rb} +1 -1
  56. data/lib/cybersource_rest_client/models/{inline_response_201_5_acquirer_information.rb → inline_response_201_4_acquirer_information.rb} +1 -1
  57. data/lib/cybersource_rest_client/models/{inline_response_201_5_client_reference_information.rb → inline_response_201_4_client_reference_information.rb} +1 -1
  58. data/lib/cybersource_rest_client/models/inline_response_201_4_error_information.rb +1 -1
  59. data/lib/cybersource_rest_client/models/inline_response_201_4_error_information_details.rb +1 -1
  60. data/lib/cybersource_rest_client/models/{inline_response_201_5_merchant_information.rb → inline_response_201_4_merchant_information.rb} +1 -1
  61. data/lib/cybersource_rest_client/models/inline_response_201_4_order_information_amount_details.rb +46 -97
  62. data/lib/cybersource_rest_client/models/{inline_response_201_5_payment_information.rb → inline_response_201_4_payment_information.rb} +2 -2
  63. data/lib/cybersource_rest_client/models/{inline_response_201_5_payment_information_card.rb → inline_response_201_4_payment_information_card.rb} +1 -1
  64. data/lib/cybersource_rest_client/models/inline_response_201_4_processing_information.rb +59 -8
  65. data/lib/cybersource_rest_client/models/{inline_response_201_5_processing_information_payouts_options.rb → inline_response_201_4_processing_information_payouts_options.rb} +1 -1
  66. data/lib/cybersource_rest_client/models/inline_response_201_4_processor_information.rb +342 -7
  67. data/lib/cybersource_rest_client/models/{inline_response_201_5_processor_information_card_verification.rb → inline_response_201_4_processor_information_card_verification.rb} +1 -1
  68. data/lib/cybersource_rest_client/models/{inline_response_201_5_transactions.rb → inline_response_201_4_transactions.rb} +7 -7
  69. data/lib/cybersource_rest_client/models/inline_response_201_5.rb +35 -68
  70. data/lib/cybersource_rest_client/models/{inline_response_201_6_payout_information.rb → inline_response_201_5_payout_information.rb} +3 -3
  71. data/lib/cybersource_rest_client/models/{inline_response_201_6_payout_information_pull_funds.rb → inline_response_201_5_payout_information_pull_funds.rb} +1 -1
  72. data/lib/cybersource_rest_client/models/{inline_response_201_6_payout_information_push_funds.rb → inline_response_201_5_payout_information_push_funds.rb} +1 -1
  73. data/lib/cybersource_rest_client/models/inline_response_201_6.rb +59 -26
  74. data/lib/cybersource_rest_client/models/{inline_response_201_7_integration_information.rb → inline_response_201_6_integration_information.rb} +2 -2
  75. data/lib/cybersource_rest_client/models/{inline_response_201_7_integration_information_tenant_configurations.rb → inline_response_201_6_integration_information_tenant_configurations.rb} +1 -1
  76. data/lib/cybersource_rest_client/models/{inline_response_201_7_organization_information.rb → inline_response_201_6_organization_information.rb} +1 -1
  77. data/lib/cybersource_rest_client/models/{inline_response_201_7_product_information_setups.rb → inline_response_201_6_product_information_setups.rb} +2 -2
  78. data/lib/cybersource_rest_client/models/{inline_response_201_7_registration_information.rb → inline_response_201_6_registration_information.rb} +1 -1
  79. data/lib/cybersource_rest_client/models/{inline_response_201_7_setups.rb → inline_response_201_6_setups.rb} +4 -4
  80. data/lib/cybersource_rest_client/models/{inline_response_201_7_setups_commerce_solutions.rb → inline_response_201_6_setups_commerce_solutions.rb} +1 -1
  81. data/lib/cybersource_rest_client/models/{inline_response_201_7_setups_risk.rb → inline_response_201_6_setups_risk.rb} +1 -1
  82. data/lib/cybersource_rest_client/models/{inline_response_201_7_setups_value_added_services.rb → inline_response_201_6_setups_value_added_services.rb} +1 -1
  83. data/lib/cybersource_rest_client/models/inline_response_201_7.rb +19 -78
  84. data/lib/cybersource_rest_client/models/{inline_response_201_8_key_information.rb → inline_response_201_7_key_information.rb} +2 -2
  85. data/lib/cybersource_rest_client/models/{inline_response_201_8_key_information_error_information.rb → inline_response_201_7_key_information_error_information.rb} +2 -2
  86. data/lib/cybersource_rest_client/models/{inline_response_201_8_key_information_error_information_details.rb → inline_response_201_7_key_information_error_information_details.rb} +1 -1
  87. data/lib/cybersource_rest_client/models/inline_response_201_8.rb +117 -25
  88. data/lib/cybersource_rest_client/models/inline_response_201_9.rb +68 -105
  89. data/lib/cybersource_rest_client/models/{inline_response_201_10_payloads.rb → inline_response_201_9_payloads.rb} +2 -2
  90. data/lib/cybersource_rest_client/models/{inline_response_201_10_payloads_test_payload.rb → inline_response_201_9_payloads_test_payload.rb} +1 -1
  91. data/lib/cybersource_rest_client/models/inline_response_400_3.rb +1 -1
  92. data/lib/cybersource_rest_client/models/inline_response_400_4.rb +1 -1
  93. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_merchant_defined_field_values_with_definition.rb +11 -1
  94. data/lib/cybersource_rest_client/models/ucv1sessions_complete_mandate.rb +16 -5
  95. data/lib/cybersource_rest_client/models/ucv1sessions_data.rb +11 -1
  96. data/lib/cybersource_rest_client/models/ucv1sessions_data_acquirer_information.rb +196 -0
  97. data/lib/cybersource_rest_client/models/ucv1sessions_data_aggregator_information.rb +1 -1
  98. data/lib/cybersource_rest_client/models/ucv1sessions_data_consumer_authentication_information.rb +16 -5
  99. data/lib/cybersource_rest_client/models/{inline_response_201_14_line_items.rb → unified_risk_post201_response.rb} +28 -42
  100. data/lib/cybersource_rest_client/models/{inline_response_201_3_results.rb → unified_risk_post201_response_results.rb} +3 -3
  101. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights.rb +291 -0
  102. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights_client.rb +208 -0
  103. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights_error.rb +202 -0
  104. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights_packages.rb +190 -0
  105. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights_packages_transaction_insights.rb +250 -0
  106. data/lib/cybersource_rest_client/models/unified_risk_post201_response_results_risk_insights_packages_transaction_insights_insights.rb +219 -0
  107. data/lib/cybersource_rest_client/models/unified_risk_post201_response_transaction_insights_insights_warnings.rb +214 -0
  108. data/lib/cybersource_rest_client/models/{unified_risk_labels_post400_response.rb → unified_risk_post400_response.rb} +2 -2
  109. data/lib/cybersource_rest_client/models/{unified_risk_labels_post400_response_errors.rb → unified_risk_post400_response_errors.rb} +1 -1
  110. data/lib/cybersource_rest_client/models/unifiedrisk_account.rb +190 -0
  111. data/lib/cybersource_rest_client/models/unifiedrisk_acquirer.rb +302 -0
  112. data/lib/cybersource_rest_client/models/unifiedrisk_acquirer_merchant_account.rb +234 -0
  113. data/lib/cybersource_rest_client/models/unifiedrisk_acquirer_merchant_account_security_amount.rb +246 -0
  114. data/lib/cybersource_rest_client/models/unifiedrisk_authentication.rb +402 -0
  115. data/lib/cybersource_rest_client/models/unifiedrisk_authentication_challenge.rb +202 -0
  116. data/lib/cybersource_rest_client/models/unifiedrisk_authorization.rb +212 -0
  117. data/lib/cybersource_rest_client/models/unifiedrisk_browser.rb +420 -0
  118. data/lib/cybersource_rest_client/models/unifiedrisk_customer.rb +403 -0
  119. data/lib/cybersource_rest_client/models/unifiedrisk_customer_address.rb +279 -0
  120. data/lib/cybersource_rest_client/models/{inline_response_201_5_processing_information.rb → unifiedrisk_customer_personal_identification.rb} +99 -42
  121. data/lib/cybersource_rest_client/models/unifiedrisk_device.rb +681 -0
  122. data/lib/cybersource_rest_client/models/unifiedrisk_device_point_of_sale.rb +344 -0
  123. data/lib/cybersource_rest_client/models/unifiedrisk_initiating_party.rb +223 -0
  124. data/lib/cybersource_rest_client/models/unifiedrisk_merchant.rb +326 -0
  125. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_address.rb +328 -0
  126. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor.rb +389 -0
  127. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor_expected_annual_sales.rb +268 -0
  128. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor_expected_average_ticket_size.rb +246 -0
  129. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor_expected_monthly_sales.rb +268 -0
  130. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor_hierarchy.rb +224 -0
  131. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_merchant_descriptor_limit_value.rb +257 -0
  132. data/lib/cybersource_rest_client/models/unifiedrisk_merchant_trading_address.rb +301 -0
  133. data/lib/cybersource_rest_client/models/{label_request.rb → unifiedrisk_order.rb} +60 -72
  134. data/lib/cybersource_rest_client/models/unifiedrisk_order_billing.rb +360 -0
  135. data/lib/cybersource_rest_client/models/unifiedrisk_order_line_items.rb +262 -0
  136. data/lib/cybersource_rest_client/models/unifiedrisk_order_shipping.rb +464 -0
  137. data/lib/cybersource_rest_client/models/unifiedrisk_order_shipping_store.rb +251 -0
  138. data/lib/cybersource_rest_client/models/unifiedrisk_order_shipping_store_address.rb +191 -0
  139. data/lib/cybersource_rest_client/models/{inline_response_201_3_results_risk_insights.rb → unifiedrisk_order_shipping_store_store_address.rb} +43 -43
  140. data/lib/cybersource_rest_client/models/unifiedrisk_partner.rb +214 -0
  141. data/lib/cybersource_rest_client/models/unifiedrisk_payment.rb +423 -0
  142. data/lib/cybersource_rest_client/models/unifiedrisk_payment_approvals.rb +193 -0
  143. data/lib/cybersource_rest_client/models/unifiedrisk_payment_bank_account.rb +451 -0
  144. data/lib/cybersource_rest_client/models/{inline_response_201_5_order_information_amount_details.rb → unifiedrisk_payment_bank_account_balance_before.rb} +49 -56
  145. data/lib/cybersource_rest_client/models/unifiedrisk_payment_bank_account_branch_address.rb +328 -0
  146. data/lib/cybersource_rest_client/models/unifiedrisk_payment_bank_account_credit_limit.rb +257 -0
  147. data/lib/cybersource_rest_client/models/unifiedrisk_payment_bank_account_financial_institution.rb +212 -0
  148. data/lib/cybersource_rest_client/models/unifiedrisk_payment_batch.rb +323 -0
  149. data/lib/cybersource_rest_client/models/unifiedrisk_payment_card.rb +461 -0
  150. data/lib/cybersource_rest_client/models/unifiedrisk_payment_card_par_details.rb +196 -0
  151. data/lib/cybersource_rest_client/models/unifiedrisk_payment_card_token_details.rb +380 -0
  152. data/lib/cybersource_rest_client/models/unifiedrisk_payment_check.rb +289 -0
  153. data/lib/cybersource_rest_client/models/unifiedrisk_payment_check_deposit_location.rb +279 -0
  154. data/lib/cybersource_rest_client/models/unifiedrisk_payment_counterparty.rb +287 -0
  155. data/lib/cybersource_rest_client/models/unifiedrisk_payment_counterparty_address.rb +279 -0
  156. data/lib/cybersource_rest_client/models/unifiedrisk_payment_counterparty_branch_address.rb +279 -0
  157. data/lib/cybersource_rest_client/models/unifiedrisk_payment_sdk.rb +268 -0
  158. data/lib/cybersource_rest_client/models/unifiedrisk_payment_token.rb +213 -0
  159. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification.rb +230 -0
  160. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_additional.rb +256 -0
  161. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_authentication.rb +232 -0
  162. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_authentication_pin.rb +201 -0
  163. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_authentication_three_ds.rb +190 -0
  164. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_card_security.rb +199 -0
  165. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_card_security_avs.rb +218 -0
  166. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_card_security_cvv.rb +196 -0
  167. data/lib/cybersource_rest_client/models/unifiedrisk_payment_verification_digital.rb +212 -0
  168. data/lib/cybersource_rest_client/models/unifiedrisk_payment_wallet.rb +201 -0
  169. data/lib/cybersource_rest_client/models/unifiedrisk_payment_wire.rb +364 -0
  170. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment.rb +308 -0
  171. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment_buyer_history.rb +276 -0
  172. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment_buyer_history_account_history.rb +207 -0
  173. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment_buyer_history_customer_account.rb +273 -0
  174. data/lib/cybersource_rest_client/models/{inline_response_201_14.rb → unifiedrisk_risk_assessment_buyer_history_customer_account_alertnate_authentication.rb} +59 -114
  175. data/lib/cybersource_rest_client/models/unifiedrisk_risk_assessment_vital4.rb +191 -0
  176. data/lib/cybersource_rest_client/models/unifiedrisk_session.rb +202 -0
  177. data/lib/cybersource_rest_client/models/unifiedrisk_terminal.rb +238 -0
  178. data/lib/cybersource_rest_client/models/unifiedrisk_terminal_address.rb +301 -0
  179. data/lib/cybersource_rest_client/models/unifiedrisk_terminal_capabilities.rb +234 -0
  180. data/lib/cybersource_rest_client/models/unifiedrisk_third_party_risk.rb +708 -0
  181. data/lib/cybersource_rest_client/models/unifiedrisk_third_party_risk_raw_data.rb +189 -0
  182. data/lib/cybersource_rest_client/models/unifiedrisk_transaction.rb +305 -12
  183. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_additional_fees.rb +257 -0
  184. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_amount.rb +257 -0
  185. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_batch_details.rb +220 -0
  186. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_batch_details_batch_credits_amount.rb +246 -0
  187. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_batch_details_batch_debits_amount.rb +246 -0
  188. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_batch_details_file_credits.rb +246 -0
  189. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_batch_details_file_debits.rb +246 -0
  190. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_check_details.rb +190 -0
  191. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_check_details_deposited_cash_amount.rb +246 -0
  192. data/lib/cybersource_rest_client/models/unifiedrisk_transaction_recurring_details.rb +341 -0
  193. data/lib/cybersource_rest_client/models/unifiedrisk_travel.rb +279 -0
  194. data/lib/cybersource_rest_client/models/vpri_request.rb +505 -0
  195. data/lib/cybersource_rest_client/models/vpri_transaction_insights_additional_data.rb +190 -0
  196. data/lib/cybersource_rest_client/models/vpri_transaction_insights_additional_data_card_bin_data.rb +357 -0
  197. data/lib/cybersource_rest_client.rb +153 -61
  198. metadata +155 -63
  199. data/lib/cybersource_rest_client/api/transaction_risk_labeling_api.rb +0 -104
  200. data/lib/cybersource_rest_client/models/inline_response_201_5_processor_information.rb +0 -548
@@ -0,0 +1,276 @@
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.38
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module CyberSource
15
+ class UnifiedriskRiskAssessmentBuyerHistory
16
+ # Number of purchases with this cardholder account during the previous six months. Recommended for Discover ProtectBuy.
17
+ attr_accessor :account_purchases
18
+
19
+ # Number of add card attempts in the last 24 hours. Recommended for Discover ProtectBuy.
20
+ attr_accessor :add_card_attempts
21
+
22
+ # Indicates whether the merchant experienced suspicious activity (including previous fraud) on the account. Recommended for Discover ProtectBuy.
23
+ attr_accessor :prior_suspicious_activity
24
+
25
+ # This only applies for NEW_ACCOUNT and EXISTING_ACCOUNT in creationHistory. Possible values are: - PAYMENT_ACCOUNT_EXISTS - PAYMENT_ACCOUNT_ADDED_NOW
26
+ attr_accessor :payment_account_history
27
+
28
+ # Date applicable only for PAYMENT_ACCOUNT_EXISTS in paymentAccountHistory
29
+ attr_accessor :payment_account_date
30
+
31
+ # Number of transaction (successful or abandoned) for this cardholder account within the last 24 hours. Recommended for Discover ProtectBuy.
32
+ attr_accessor :transaction_count_day
33
+
34
+ # Number of transaction (successful or abandoned) for this cardholder account within the last year. Recommended for Discover ProtectBuy.
35
+ attr_accessor :transaction_count_year
36
+
37
+ attr_accessor :customer_account
38
+
39
+ attr_accessor :account_history
40
+
41
+ # Attribute mapping from ruby-style variable name to JSON key.
42
+ def self.attribute_map
43
+ {
44
+ :'account_purchases' => :'accountPurchases',
45
+ :'add_card_attempts' => :'addCardAttempts',
46
+ :'prior_suspicious_activity' => :'priorSuspiciousActivity',
47
+ :'payment_account_history' => :'paymentAccountHistory',
48
+ :'payment_account_date' => :'paymentAccountDate',
49
+ :'transaction_count_day' => :'transactionCountDay',
50
+ :'transaction_count_year' => :'transactionCountYear',
51
+ :'customer_account' => :'customerAccount',
52
+ :'account_history' => :'accountHistory'
53
+ }
54
+ end
55
+
56
+ # Attribute mapping from JSON key to ruby-style variable name.
57
+ def self.json_map
58
+ {
59
+ :'account_purchases' => :'account_purchases',
60
+ :'add_card_attempts' => :'add_card_attempts',
61
+ :'prior_suspicious_activity' => :'prior_suspicious_activity',
62
+ :'payment_account_history' => :'payment_account_history',
63
+ :'payment_account_date' => :'payment_account_date',
64
+ :'transaction_count_day' => :'transaction_count_day',
65
+ :'transaction_count_year' => :'transaction_count_year',
66
+ :'customer_account' => :'customer_account',
67
+ :'account_history' => :'account_history'
68
+ }
69
+ end
70
+
71
+ # Attribute type mapping.
72
+ def self.swagger_types
73
+ {
74
+ :'account_purchases' => :'Integer',
75
+ :'add_card_attempts' => :'Integer',
76
+ :'prior_suspicious_activity' => :'BOOLEAN',
77
+ :'payment_account_history' => :'String',
78
+ :'payment_account_date' => :'Integer',
79
+ :'transaction_count_day' => :'Integer',
80
+ :'transaction_count_year' => :'Integer',
81
+ :'customer_account' => :'UnifiedriskRiskAssessmentBuyerHistoryCustomerAccount',
82
+ :'account_history' => :'UnifiedriskRiskAssessmentBuyerHistoryAccountHistory'
83
+ }
84
+ end
85
+
86
+ # Initializes the object
87
+ # @param [Hash] attributes Model attributes in the form of hash
88
+ def initialize(attributes = {})
89
+ return unless attributes.is_a?(Hash)
90
+
91
+ # convert string to symbol for hash key
92
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
93
+
94
+ if attributes.has_key?(:'accountPurchases')
95
+ self.account_purchases = attributes[:'accountPurchases']
96
+ end
97
+
98
+ if attributes.has_key?(:'addCardAttempts')
99
+ self.add_card_attempts = attributes[:'addCardAttempts']
100
+ end
101
+
102
+ if attributes.has_key?(:'priorSuspiciousActivity')
103
+ self.prior_suspicious_activity = attributes[:'priorSuspiciousActivity']
104
+ end
105
+
106
+ if attributes.has_key?(:'paymentAccountHistory')
107
+ self.payment_account_history = attributes[:'paymentAccountHistory']
108
+ end
109
+
110
+ if attributes.has_key?(:'paymentAccountDate')
111
+ self.payment_account_date = attributes[:'paymentAccountDate']
112
+ end
113
+
114
+ if attributes.has_key?(:'transactionCountDay')
115
+ self.transaction_count_day = attributes[:'transactionCountDay']
116
+ end
117
+
118
+ if attributes.has_key?(:'transactionCountYear')
119
+ self.transaction_count_year = attributes[:'transactionCountYear']
120
+ end
121
+
122
+ if attributes.has_key?(:'customerAccount')
123
+ self.customer_account = attributes[:'customerAccount']
124
+ end
125
+
126
+ if attributes.has_key?(:'accountHistory')
127
+ self.account_history = attributes[:'accountHistory']
128
+ end
129
+ end
130
+
131
+ # Show invalid properties with the reasons. Usually used together with valid?
132
+ # @return Array for valid properties with the reasons
133
+ def list_invalid_properties
134
+ invalid_properties = Array.new
135
+ invalid_properties
136
+ end
137
+
138
+ # Check to see if the all the properties in the model are valid
139
+ # @return true if the model is valid
140
+ def valid?
141
+ true
142
+ end
143
+
144
+ # Checks equality by comparing each attribute.
145
+ # @param [Object] Object to be compared
146
+ def ==(o)
147
+ return true if self.equal?(o)
148
+ self.class == o.class &&
149
+ account_purchases == o.account_purchases &&
150
+ add_card_attempts == o.add_card_attempts &&
151
+ prior_suspicious_activity == o.prior_suspicious_activity &&
152
+ payment_account_history == o.payment_account_history &&
153
+ payment_account_date == o.payment_account_date &&
154
+ transaction_count_day == o.transaction_count_day &&
155
+ transaction_count_year == o.transaction_count_year &&
156
+ customer_account == o.customer_account &&
157
+ account_history == o.account_history
158
+ end
159
+
160
+ # @see the `==` method
161
+ # @param [Object] Object to be compared
162
+ def eql?(o)
163
+ self == o
164
+ end
165
+
166
+ # Calculates hash code according to all attributes.
167
+ # @return [Fixnum] Hash code
168
+ def hash
169
+ [account_purchases, add_card_attempts, prior_suspicious_activity, payment_account_history, payment_account_date, transaction_count_day, transaction_count_year, customer_account, account_history].hash
170
+ end
171
+
172
+ # Builds the object from hash
173
+ # @param [Hash] attributes Model attributes in the form of hash
174
+ # @return [Object] Returns the model itself
175
+ def build_from_hash(attributes)
176
+ return nil unless attributes.is_a?(Hash)
177
+ self.class.swagger_types.each_pair do |key, type|
178
+ if type =~ /\AArray<(.*)>/i
179
+ # check to ensure the input is an array given that the the attribute
180
+ # is documented as an array but the input is not
181
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
182
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
183
+ end
184
+ elsif !attributes[self.class.attribute_map[key]].nil?
185
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
186
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
187
+ end
188
+
189
+ self
190
+ end
191
+
192
+ # Deserializes the data based on type
193
+ # @param string type Data type
194
+ # @param string value Value to be deserialized
195
+ # @return [Object] Deserialized data
196
+ def _deserialize(type, value)
197
+ case type.to_sym
198
+ when :DateTime
199
+ DateTime.parse(value)
200
+ when :Date
201
+ Date.parse(value)
202
+ when :String
203
+ value.to_s
204
+ when :Integer
205
+ value.to_i
206
+ when :Float
207
+ value.to_f
208
+ when :BOOLEAN
209
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
210
+ true
211
+ else
212
+ false
213
+ end
214
+ when :Object
215
+ # generic object (usually a Hash), return directly
216
+ value
217
+ when /\AArray<(?<inner_type>.+)>\z/
218
+ inner_type = Regexp.last_match[:inner_type]
219
+ value.map { |v| _deserialize(inner_type, v) }
220
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
221
+ k_type = Regexp.last_match[:k_type]
222
+ v_type = Regexp.last_match[:v_type]
223
+ {}.tap do |hash|
224
+ value.each do |k, v|
225
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
226
+ end
227
+ end
228
+ else # model
229
+ temp_model = CyberSource.const_get(type).new
230
+ temp_model.build_from_hash(value)
231
+ end
232
+ end
233
+
234
+ # Returns the string representation of the object
235
+ # @return [String] String presentation of the object
236
+ def to_s
237
+ to_hash.to_s
238
+ end
239
+
240
+ # to_body is an alias to to_hash (backward compatibility)
241
+ # @return [Hash] Returns the object in the form of hash
242
+ def to_body
243
+ to_hash
244
+ end
245
+
246
+ # Returns the object in the form of hash
247
+ # @return [Hash] Returns the object in the form of hash
248
+ def to_hash
249
+ hash = {}
250
+ self.class.attribute_map.each_pair do |attr, param|
251
+ value = self.send(attr)
252
+ next if value.nil?
253
+ hash[param] = _to_hash(value)
254
+ end
255
+ hash
256
+ end
257
+
258
+ # Outputs non-array value in the form of hash
259
+ # For object, use to_hash. Otherwise, just return the value
260
+ # @param [Object] value Any valid value
261
+ # @return [Hash] Returns the value in the form of hash
262
+ def _to_hash(value)
263
+ if value.is_a?(Array)
264
+ value.compact.map { |v| _to_hash(v) }
265
+ elsif value.is_a?(Hash)
266
+ {}.tap do |hash|
267
+ value.each { |k, v| hash[k] = _to_hash(v) }
268
+ end
269
+ elsif value.respond_to? :to_hash
270
+ value.to_hash
271
+ else
272
+ value
273
+ end
274
+ end
275
+ end
276
+ end
@@ -0,0 +1,207 @@
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.38
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module CyberSource
15
+ class UnifiedriskRiskAssessmentBuyerHistoryAccountHistory
16
+ # Applicable when this is not a guest account.
17
+ attr_accessor :first_use_of_shipping_address
18
+
19
+ # Date when the shipping address for this transaction was first used. Recommended for Discover ProtectBuy. If `firstUseOfShippingAddress` is false and not a guest account, then this date is entered.
20
+ attr_accessor :shipping_address_usage_date
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'first_use_of_shipping_address' => :'firstUseOfShippingAddress',
26
+ :'shipping_address_usage_date' => :'shippingAddressUsageDate'
27
+ }
28
+ end
29
+
30
+ # Attribute mapping from JSON key to ruby-style variable name.
31
+ def self.json_map
32
+ {
33
+ :'first_use_of_shipping_address' => :'first_use_of_shipping_address',
34
+ :'shipping_address_usage_date' => :'shipping_address_usage_date'
35
+ }
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.swagger_types
40
+ {
41
+ :'first_use_of_shipping_address' => :'BOOLEAN',
42
+ :'shipping_address_usage_date' => :'String'
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?(:'firstUseOfShippingAddress')
55
+ self.first_use_of_shipping_address = attributes[:'firstUseOfShippingAddress']
56
+ end
57
+
58
+ if attributes.has_key?(:'shippingAddressUsageDate')
59
+ self.shipping_address_usage_date = attributes[:'shippingAddressUsageDate']
60
+ end
61
+ end
62
+
63
+ # Show invalid properties with the reasons. Usually used together with valid?
64
+ # @return Array for valid properties with the reasons
65
+ def list_invalid_properties
66
+ invalid_properties = Array.new
67
+ invalid_properties
68
+ end
69
+
70
+ # Check to see if the all the properties in the model are valid
71
+ # @return true if the model is valid
72
+ def valid?
73
+ true
74
+ end
75
+
76
+ # Custom attribute writer method with validation
77
+ # @param [Object] shipping_address_usage_date Value to be assigned
78
+ def shipping_address_usage_date=(shipping_address_usage_date)
79
+ @shipping_address_usage_date = shipping_address_usage_date
80
+ end
81
+
82
+ # Checks equality by comparing each attribute.
83
+ # @param [Object] Object to be compared
84
+ def ==(o)
85
+ return true if self.equal?(o)
86
+ self.class == o.class &&
87
+ first_use_of_shipping_address == o.first_use_of_shipping_address &&
88
+ shipping_address_usage_date == o.shipping_address_usage_date
89
+ end
90
+
91
+ # @see the `==` method
92
+ # @param [Object] Object to be compared
93
+ def eql?(o)
94
+ self == o
95
+ end
96
+
97
+ # Calculates hash code according to all attributes.
98
+ # @return [Fixnum] Hash code
99
+ def hash
100
+ [first_use_of_shipping_address, shipping_address_usage_date].hash
101
+ end
102
+
103
+ # Builds the object from hash
104
+ # @param [Hash] attributes Model attributes in the form of hash
105
+ # @return [Object] Returns the model itself
106
+ def build_from_hash(attributes)
107
+ return nil unless attributes.is_a?(Hash)
108
+ self.class.swagger_types.each_pair do |key, type|
109
+ if type =~ /\AArray<(.*)>/i
110
+ # check to ensure the input is an array given that the the attribute
111
+ # is documented as an array but the input is not
112
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
113
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
114
+ end
115
+ elsif !attributes[self.class.attribute_map[key]].nil?
116
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
117
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
118
+ end
119
+
120
+ self
121
+ end
122
+
123
+ # Deserializes the data based on type
124
+ # @param string type Data type
125
+ # @param string value Value to be deserialized
126
+ # @return [Object] Deserialized data
127
+ def _deserialize(type, value)
128
+ case type.to_sym
129
+ when :DateTime
130
+ DateTime.parse(value)
131
+ when :Date
132
+ Date.parse(value)
133
+ when :String
134
+ value.to_s
135
+ when :Integer
136
+ value.to_i
137
+ when :Float
138
+ value.to_f
139
+ when :BOOLEAN
140
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
141
+ true
142
+ else
143
+ false
144
+ end
145
+ when :Object
146
+ # generic object (usually a Hash), return directly
147
+ value
148
+ when /\AArray<(?<inner_type>.+)>\z/
149
+ inner_type = Regexp.last_match[:inner_type]
150
+ value.map { |v| _deserialize(inner_type, v) }
151
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
152
+ k_type = Regexp.last_match[:k_type]
153
+ v_type = Regexp.last_match[:v_type]
154
+ {}.tap do |hash|
155
+ value.each do |k, v|
156
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
157
+ end
158
+ end
159
+ else # model
160
+ temp_model = CyberSource.const_get(type).new
161
+ temp_model.build_from_hash(value)
162
+ end
163
+ end
164
+
165
+ # Returns the string representation of the object
166
+ # @return [String] String presentation of the object
167
+ def to_s
168
+ to_hash.to_s
169
+ end
170
+
171
+ # to_body is an alias to to_hash (backward compatibility)
172
+ # @return [Hash] Returns the object in the form of hash
173
+ def to_body
174
+ to_hash
175
+ end
176
+
177
+ # Returns the object in the form of hash
178
+ # @return [Hash] Returns the object in the form of hash
179
+ def to_hash
180
+ hash = {}
181
+ self.class.attribute_map.each_pair do |attr, param|
182
+ value = self.send(attr)
183
+ next if value.nil?
184
+ hash[param] = _to_hash(value)
185
+ end
186
+ hash
187
+ end
188
+
189
+ # Outputs non-array value in the form of hash
190
+ # For object, use to_hash. Otherwise, just return the value
191
+ # @param [Object] value Any valid value
192
+ # @return [Hash] Returns the value in the form of hash
193
+ def _to_hash(value)
194
+ if value.is_a?(Array)
195
+ value.compact.map { |v| _to_hash(v) }
196
+ elsif value.is_a?(Hash)
197
+ {}.tap do |hash|
198
+ value.each { |k, v| hash[k] = _to_hash(v) }
199
+ end
200
+ elsif value.respond_to? :to_hash
201
+ value.to_hash
202
+ else
203
+ value
204
+ end
205
+ end
206
+ end
207
+ end