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
@@ -0,0 +1,203 @@
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 Riskv1addressverificationsOrderInformation
17
+ attr_accessor :bill_to
18
+
19
+ attr_accessor :ship_to
20
+
21
+ attr_accessor :line_items
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+ :'bill_to' => :'billTo',
27
+ :'ship_to' => :'shipTo',
28
+ :'line_items' => :'lineItems'
29
+ }
30
+ end
31
+
32
+ # Attribute type mapping.
33
+ def self.swagger_types
34
+ {
35
+ :'bill_to' => :'Riskv1addressverificationsOrderInformationBillTo',
36
+ :'ship_to' => :'Riskv1addressverificationsOrderInformationShipTo',
37
+ :'line_items' => :'Array<Riskv1addressverificationsOrderInformationLineItems>'
38
+ }
39
+ end
40
+
41
+ # Initializes the object
42
+ # @param [Hash] attributes Model attributes in the form of hash
43
+ def initialize(attributes = {})
44
+ return unless attributes.is_a?(Hash)
45
+
46
+ # convert string to symbol for hash key
47
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
48
+
49
+ if attributes.has_key?(:'billTo')
50
+ self.bill_to = attributes[:'billTo']
51
+ end
52
+
53
+ if attributes.has_key?(:'shipTo')
54
+ self.ship_to = attributes[:'shipTo']
55
+ end
56
+
57
+ if attributes.has_key?(:'lineItems')
58
+ if (value = attributes[:'lineItems']).is_a?(Array)
59
+ self.line_items = value
60
+ end
61
+ end
62
+ end
63
+
64
+ # Show invalid properties with the reasons. Usually used together with valid?
65
+ # @return Array for valid properties with the reasons
66
+ def list_invalid_properties
67
+ invalid_properties = Array.new
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
+ true
75
+ end
76
+
77
+ # Checks equality by comparing each attribute.
78
+ # @param [Object] Object to be compared
79
+ def ==(o)
80
+ return true if self.equal?(o)
81
+ self.class == o.class &&
82
+ bill_to == o.bill_to &&
83
+ ship_to == o.ship_to &&
84
+ line_items == o.line_items
85
+ end
86
+
87
+ # @see the `==` method
88
+ # @param [Object] Object to be compared
89
+ def eql?(o)
90
+ self == o
91
+ end
92
+
93
+ # Calculates hash code according to all attributes.
94
+ # @return [Fixnum] Hash code
95
+ def hash
96
+ [bill_to, ship_to, line_items].hash
97
+ end
98
+
99
+ # Builds the object from hash
100
+ # @param [Hash] attributes Model attributes in the form of hash
101
+ # @return [Object] Returns the model itself
102
+ def build_from_hash(attributes)
103
+ return nil unless attributes.is_a?(Hash)
104
+ self.class.swagger_types.each_pair do |key, type|
105
+ if type =~ /\AArray<(.*)>/i
106
+ # check to ensure the input is an array given that the the attribute
107
+ # is documented as an array but the input is not
108
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
109
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
110
+ end
111
+ elsif !attributes[self.class.attribute_map[key]].nil?
112
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
113
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
114
+ end
115
+
116
+ self
117
+ end
118
+
119
+ # Deserializes the data based on type
120
+ # @param string type Data type
121
+ # @param string value Value to be deserialized
122
+ # @return [Object] Deserialized data
123
+ def _deserialize(type, value)
124
+ case type.to_sym
125
+ when :DateTime
126
+ DateTime.parse(value)
127
+ when :Date
128
+ Date.parse(value)
129
+ when :String
130
+ value.to_s
131
+ when :Integer
132
+ value.to_i
133
+ when :Float
134
+ value.to_f
135
+ when :BOOLEAN
136
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
137
+ true
138
+ else
139
+ false
140
+ end
141
+ when :Object
142
+ # generic object (usually a Hash), return directly
143
+ value
144
+ when /\AArray<(?<inner_type>.+)>\z/
145
+ inner_type = Regexp.last_match[:inner_type]
146
+ value.map { |v| _deserialize(inner_type, v) }
147
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
148
+ k_type = Regexp.last_match[:k_type]
149
+ v_type = Regexp.last_match[:v_type]
150
+ {}.tap do |hash|
151
+ value.each do |k, v|
152
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
153
+ end
154
+ end
155
+ else # model
156
+ temp_model = CyberSource.const_get(type).new
157
+ temp_model.build_from_hash(value)
158
+ end
159
+ end
160
+
161
+ # Returns the string representation of the object
162
+ # @return [String] String presentation of the object
163
+ def to_s
164
+ to_hash.to_s
165
+ end
166
+
167
+ # to_body is an alias to to_hash (backward compatibility)
168
+ # @return [Hash] Returns the object in the form of hash
169
+ def to_body
170
+ to_hash
171
+ end
172
+
173
+ # Returns the object in the form of hash
174
+ # @return [Hash] Returns the object in the form of hash
175
+ def to_hash
176
+ hash = {}
177
+ self.class.attribute_map.each_pair do |attr, param|
178
+ value = self.send(attr)
179
+ next if value.nil?
180
+ hash[param] = _to_hash(value)
181
+ end
182
+ hash
183
+ end
184
+
185
+ # Outputs non-array value in the form of hash
186
+ # For object, use to_hash. Otherwise, just return the value
187
+ # @param [Object] value Any valid value
188
+ # @return [Hash] Returns the value in the form of hash
189
+ def _to_hash(value)
190
+ if value.is_a?(Array)
191
+ value.compact.map { |v| _to_hash(v) }
192
+ elsif value.is_a?(Hash)
193
+ {}.tap do |hash|
194
+ value.each { |k, v| hash[k] = _to_hash(v) }
195
+ end
196
+ elsif value.respond_to? :to_hash
197
+ value.to_hash
198
+ else
199
+ value
200
+ end
201
+ end
202
+ end
203
+ end
@@ -0,0 +1,410 @@
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 Riskv1addressverificationsOrderInformationBillTo
17
+ # Payment card billing street address as it appears on the credit card issuer’s records. #### Atos This field must not contain colons (:). #### CyberSource through VisaNet **Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks. Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### For Payouts: This field may be sent only for FDC Compass. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. For processor-specific information, see the `bill_address1` request-level field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
18
+ attr_accessor :address1
19
+
20
+ # Additional address information. For Payouts: This field may be sent only for FDC Compass. #### Atos This field must not contain colons (:). #### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions This value is used for AVS. #### CyberSource through VisaNet **Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks. Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. For processor-specific information, see the `bill_address2` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
21
+ attr_accessor :address2
22
+
23
+ # Additional address information (third line of the billing address)
24
+ attr_accessor :address3
25
+
26
+ # Additional address information (fourth line of the billing address)
27
+ attr_accessor :address4
28
+
29
+ # State or province of the billing address. Use the State, Province, and Territory Codes for the United States and Canada. For Payouts: This field may be sent only for FDC Compass. ##### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. For processor-specific information, see the `bill_state` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
30
+ attr_accessor :administrative_area
31
+
32
+ # Payment card billing country. Use the two-character ISO Standard Country Codes. #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. For processor-specific information, see the `bill_country` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
33
+ attr_accessor :country
34
+
35
+ # Payment card billing city. #### Atos This field must not contain colons (:). #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the `bill_city` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
36
+ attr_accessor :locality
37
+
38
+ # Postal code for the billing address. The postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code must follow this format: [5 digits][dash][4 digits] **Example** `12345-6789` When the billing country is Canada, the 6-digit postal code must follow this format: [alpha][numeric][alpha][space][numeric][alpha][numeric] **Example** `A1B 2C3` **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### For Payouts: This field may be sent only for FDC Compass. #### American Express Direct Before sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the remaining value is longer than nine characters, truncates the value starting from the right side. #### Atos This field must not contain colons (:). #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. For processor-specific information, see the `bill_zip` request-level field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
39
+ attr_accessor :postal_code
40
+
41
+ # Attribute mapping from ruby-style variable name to JSON key.
42
+ def self.attribute_map
43
+ {
44
+ :'address1' => :'address1',
45
+ :'address2' => :'address2',
46
+ :'address3' => :'address3',
47
+ :'address4' => :'address4',
48
+ :'administrative_area' => :'administrativeArea',
49
+ :'country' => :'country',
50
+ :'locality' => :'locality',
51
+ :'postal_code' => :'postalCode'
52
+ }
53
+ end
54
+
55
+ # Attribute type mapping.
56
+ def self.swagger_types
57
+ {
58
+ :'address1' => :'String',
59
+ :'address2' => :'String',
60
+ :'address3' => :'String',
61
+ :'address4' => :'String',
62
+ :'administrative_area' => :'String',
63
+ :'country' => :'String',
64
+ :'locality' => :'String',
65
+ :'postal_code' => :'String'
66
+ }
67
+ end
68
+
69
+ # Initializes the object
70
+ # @param [Hash] attributes Model attributes in the form of hash
71
+ def initialize(attributes = {})
72
+ return unless attributes.is_a?(Hash)
73
+
74
+ # convert string to symbol for hash key
75
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
76
+
77
+ if attributes.has_key?(:'address1')
78
+ self.address1 = attributes[:'address1']
79
+ end
80
+
81
+ if attributes.has_key?(:'address2')
82
+ self.address2 = attributes[:'address2']
83
+ end
84
+
85
+ if attributes.has_key?(:'address3')
86
+ self.address3 = attributes[:'address3']
87
+ end
88
+
89
+ if attributes.has_key?(:'address4')
90
+ self.address4 = attributes[:'address4']
91
+ end
92
+
93
+ if attributes.has_key?(:'administrativeArea')
94
+ self.administrative_area = attributes[:'administrativeArea']
95
+ end
96
+
97
+ if attributes.has_key?(:'country')
98
+ self.country = attributes[:'country']
99
+ end
100
+
101
+ if attributes.has_key?(:'locality')
102
+ self.locality = attributes[:'locality']
103
+ end
104
+
105
+ if attributes.has_key?(:'postalCode')
106
+ self.postal_code = attributes[:'postalCode']
107
+ end
108
+ end
109
+
110
+ # Show invalid properties with the reasons. Usually used together with valid?
111
+ # @return Array for valid properties with the reasons
112
+ def list_invalid_properties
113
+ invalid_properties = Array.new
114
+ if @address1.nil?
115
+ invalid_properties.push('invalid value for "address1", address1 cannot be nil.')
116
+ end
117
+
118
+ if @address1.to_s.length > 60
119
+ invalid_properties.push('invalid value for "address1", the character length must be smaller than or equal to 60.')
120
+ end
121
+
122
+ if !@address2.nil? && @address2.to_s.length > 60
123
+ invalid_properties.push('invalid value for "address2", the character length must be smaller than or equal to 60.')
124
+ end
125
+
126
+ if !@address3.nil? && @address3.to_s.length > 60
127
+ invalid_properties.push('invalid value for "address3", the character length must be smaller than or equal to 60.')
128
+ end
129
+
130
+ if !@address4.nil? && @address4.to_s.length > 60
131
+ invalid_properties.push('invalid value for "address4", the character length must be smaller than or equal to 60.')
132
+ end
133
+
134
+ if !@administrative_area.nil? && @administrative_area.to_s.length > 20
135
+ invalid_properties.push('invalid value for "administrative_area", the character length must be smaller than or equal to 20.')
136
+ end
137
+
138
+ if @country.nil?
139
+ invalid_properties.push('invalid value for "country", country cannot be nil.')
140
+ end
141
+
142
+ if @country.to_s.length > 2
143
+ invalid_properties.push('invalid value for "country", the character length must be smaller than or equal to 2.')
144
+ end
145
+
146
+ if @locality.nil?
147
+ invalid_properties.push('invalid value for "locality", locality cannot be nil.')
148
+ end
149
+
150
+ if @locality.to_s.length > 50
151
+ invalid_properties.push('invalid value for "locality", the character length must be smaller than or equal to 50.')
152
+ end
153
+
154
+ if @postal_code.nil?
155
+ invalid_properties.push('invalid value for "postal_code", postal_code cannot be nil.')
156
+ end
157
+
158
+ if @postal_code.to_s.length > 10
159
+ invalid_properties.push('invalid value for "postal_code", the character length must be smaller than or equal to 10.')
160
+ end
161
+
162
+ invalid_properties
163
+ end
164
+
165
+ # Check to see if the all the properties in the model are valid
166
+ # @return true if the model is valid
167
+ def valid?
168
+ return false if @address1.nil?
169
+ return false if @address1.to_s.length > 60
170
+ return false if !@address2.nil? && @address2.to_s.length > 60
171
+ return false if !@address3.nil? && @address3.to_s.length > 60
172
+ return false if !@address4.nil? && @address4.to_s.length > 60
173
+ return false if !@administrative_area.nil? && @administrative_area.to_s.length > 20
174
+ return false if @country.nil?
175
+ return false if @country.to_s.length > 2
176
+ return false if @locality.nil?
177
+ return false if @locality.to_s.length > 50
178
+ return false if @postal_code.nil?
179
+ return false if @postal_code.to_s.length > 10
180
+ true
181
+ end
182
+
183
+ # Custom attribute writer method with validation
184
+ # @param [Object] address1 Value to be assigned
185
+ def address1=(address1)
186
+ if address1.nil?
187
+ fail ArgumentError, 'address1 cannot be nil'
188
+ end
189
+
190
+ if address1.to_s.length > 60
191
+ fail ArgumentError, 'invalid value for "address1", the character length must be smaller than or equal to 60.'
192
+ end
193
+
194
+ @address1 = address1
195
+ end
196
+
197
+ # Custom attribute writer method with validation
198
+ # @param [Object] address2 Value to be assigned
199
+ def address2=(address2)
200
+ if !address2.nil? && address2.to_s.length > 60
201
+ fail ArgumentError, 'invalid value for "address2", the character length must be smaller than or equal to 60.'
202
+ end
203
+
204
+ @address2 = address2
205
+ end
206
+
207
+ # Custom attribute writer method with validation
208
+ # @param [Object] address3 Value to be assigned
209
+ def address3=(address3)
210
+ if !address3.nil? && address3.to_s.length > 60
211
+ fail ArgumentError, 'invalid value for "address3", the character length must be smaller than or equal to 60.'
212
+ end
213
+
214
+ @address3 = address3
215
+ end
216
+
217
+ # Custom attribute writer method with validation
218
+ # @param [Object] address4 Value to be assigned
219
+ def address4=(address4)
220
+ if !address4.nil? && address4.to_s.length > 60
221
+ fail ArgumentError, 'invalid value for "address4", the character length must be smaller than or equal to 60.'
222
+ end
223
+
224
+ @address4 = address4
225
+ end
226
+
227
+ # Custom attribute writer method with validation
228
+ # @param [Object] administrative_area Value to be assigned
229
+ def administrative_area=(administrative_area)
230
+ if !administrative_area.nil? && administrative_area.to_s.length > 20
231
+ fail ArgumentError, 'invalid value for "administrative_area", the character length must be smaller than or equal to 20.'
232
+ end
233
+
234
+ @administrative_area = administrative_area
235
+ end
236
+
237
+ # Custom attribute writer method with validation
238
+ # @param [Object] country Value to be assigned
239
+ def country=(country)
240
+ if country.nil?
241
+ fail ArgumentError, 'country cannot be nil'
242
+ end
243
+
244
+ if country.to_s.length > 2
245
+ fail ArgumentError, 'invalid value for "country", the character length must be smaller than or equal to 2.'
246
+ end
247
+
248
+ @country = country
249
+ end
250
+
251
+ # Custom attribute writer method with validation
252
+ # @param [Object] locality Value to be assigned
253
+ def locality=(locality)
254
+ if locality.nil?
255
+ fail ArgumentError, 'locality cannot be nil'
256
+ end
257
+
258
+ if locality.to_s.length > 50
259
+ fail ArgumentError, 'invalid value for "locality", the character length must be smaller than or equal to 50.'
260
+ end
261
+
262
+ @locality = locality
263
+ end
264
+
265
+ # Custom attribute writer method with validation
266
+ # @param [Object] postal_code Value to be assigned
267
+ def postal_code=(postal_code)
268
+ if postal_code.nil?
269
+ fail ArgumentError, 'postal_code cannot be nil'
270
+ end
271
+
272
+ if postal_code.to_s.length > 10
273
+ fail ArgumentError, 'invalid value for "postal_code", the character length must be smaller than or equal to 10.'
274
+ end
275
+
276
+ @postal_code = postal_code
277
+ end
278
+
279
+ # Checks equality by comparing each attribute.
280
+ # @param [Object] Object to be compared
281
+ def ==(o)
282
+ return true if self.equal?(o)
283
+ self.class == o.class &&
284
+ address1 == o.address1 &&
285
+ address2 == o.address2 &&
286
+ address3 == o.address3 &&
287
+ address4 == o.address4 &&
288
+ administrative_area == o.administrative_area &&
289
+ country == o.country &&
290
+ locality == o.locality &&
291
+ postal_code == o.postal_code
292
+ end
293
+
294
+ # @see the `==` method
295
+ # @param [Object] Object to be compared
296
+ def eql?(o)
297
+ self == o
298
+ end
299
+
300
+ # Calculates hash code according to all attributes.
301
+ # @return [Fixnum] Hash code
302
+ def hash
303
+ [address1, address2, address3, address4, administrative_area, country, locality, postal_code].hash
304
+ end
305
+
306
+ # Builds the object from hash
307
+ # @param [Hash] attributes Model attributes in the form of hash
308
+ # @return [Object] Returns the model itself
309
+ def build_from_hash(attributes)
310
+ return nil unless attributes.is_a?(Hash)
311
+ self.class.swagger_types.each_pair do |key, type|
312
+ if type =~ /\AArray<(.*)>/i
313
+ # check to ensure the input is an array given that the the attribute
314
+ # is documented as an array but the input is not
315
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
316
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
317
+ end
318
+ elsif !attributes[self.class.attribute_map[key]].nil?
319
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
320
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
321
+ end
322
+
323
+ self
324
+ end
325
+
326
+ # Deserializes the data based on type
327
+ # @param string type Data type
328
+ # @param string value Value to be deserialized
329
+ # @return [Object] Deserialized data
330
+ def _deserialize(type, value)
331
+ case type.to_sym
332
+ when :DateTime
333
+ DateTime.parse(value)
334
+ when :Date
335
+ Date.parse(value)
336
+ when :String
337
+ value.to_s
338
+ when :Integer
339
+ value.to_i
340
+ when :Float
341
+ value.to_f
342
+ when :BOOLEAN
343
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
344
+ true
345
+ else
346
+ false
347
+ end
348
+ when :Object
349
+ # generic object (usually a Hash), return directly
350
+ value
351
+ when /\AArray<(?<inner_type>.+)>\z/
352
+ inner_type = Regexp.last_match[:inner_type]
353
+ value.map { |v| _deserialize(inner_type, v) }
354
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
355
+ k_type = Regexp.last_match[:k_type]
356
+ v_type = Regexp.last_match[:v_type]
357
+ {}.tap do |hash|
358
+ value.each do |k, v|
359
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
360
+ end
361
+ end
362
+ else # model
363
+ temp_model = CyberSource.const_get(type).new
364
+ temp_model.build_from_hash(value)
365
+ end
366
+ end
367
+
368
+ # Returns the string representation of the object
369
+ # @return [String] String presentation of the object
370
+ def to_s
371
+ to_hash.to_s
372
+ end
373
+
374
+ # to_body is an alias to to_hash (backward compatibility)
375
+ # @return [Hash] Returns the object in the form of hash
376
+ def to_body
377
+ to_hash
378
+ end
379
+
380
+ # Returns the object in the form of hash
381
+ # @return [Hash] Returns the object in the form of hash
382
+ def to_hash
383
+ hash = {}
384
+ self.class.attribute_map.each_pair do |attr, param|
385
+ value = self.send(attr)
386
+ next if value.nil?
387
+ hash[param] = _to_hash(value)
388
+ end
389
+ hash
390
+ end
391
+
392
+ # Outputs non-array value in the form of hash
393
+ # For object, use to_hash. Otherwise, just return the value
394
+ # @param [Object] value Any valid value
395
+ # @return [Hash] Returns the value in the form of hash
396
+ def _to_hash(value)
397
+ if value.is_a?(Array)
398
+ value.compact.map { |v| _to_hash(v) }
399
+ elsif value.is_a?(Hash)
400
+ {}.tap do |hash|
401
+ value.each { |k, v| hash[k] = _to_hash(v) }
402
+ end
403
+ elsif value.respond_to? :to_hash
404
+ value.to_hash
405
+ else
406
+ value
407
+ end
408
+ end
409
+ end
410
+ end