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 Riskv1exportcomplianceinquiriesOrderInformation
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' => :'Riskv1exportcomplianceinquiriesOrderInformationBillTo',
36
+ :'ship_to' => :'Riskv1exportcomplianceinquiriesOrderInformationShipTo',
37
+ :'line_items' => :'Array<Riskv1exportcomplianceinquiriesOrderInformationLineItems>'
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,503 @@
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 Riskv1exportcomplianceinquiriesOrderInformationBillTo
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
+ attr_accessor :company
42
+
43
+ # Customer’s first name. This name must be the same as the name on the card. #### CyberSource Latin American Processing **Important** For an authorization request, CyberSource Latin American Processing concatenates `orderInformation.billTo.firstName` and `orderInformation.billTo.lastName`. If the concatenated value exceeds 30 characters, CyberSource Latin American Processing declines the authorization request.\\ **Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports. #### 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. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. For processor-specific information, see the `customer_firstname` 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)
44
+ attr_accessor :first_name
45
+
46
+ # Customer’s last name. This name must be the same as the name on the card. #### CyberSource Latin American Processing **Important** For an authorization request, CyberSource Latin American Processing concatenates `orderInformation.billTo.firstName` and `orderInformation.billTo.lastName`. If the concatenated value exceeds 30 characters, CyberSource Latin American Processing declines the authorization request.\\ **Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports. #### 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 Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the `customer_lastname` 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)
47
+ attr_accessor :last_name
48
+
49
+ # Customer's email address, including the full domain name. #### 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 `customer_email` 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) #### Invoicing Email address for the customer for sending the invoice. If the invoice is in SENT status and email is updated, the old email customer payment link won't work and you must resend the invoice with the new payment link.
50
+ attr_accessor :email
51
+
52
+ # Attribute mapping from ruby-style variable name to JSON key.
53
+ def self.attribute_map
54
+ {
55
+ :'address1' => :'address1',
56
+ :'address2' => :'address2',
57
+ :'address3' => :'address3',
58
+ :'address4' => :'address4',
59
+ :'administrative_area' => :'administrativeArea',
60
+ :'country' => :'country',
61
+ :'locality' => :'locality',
62
+ :'postal_code' => :'postalCode',
63
+ :'company' => :'company',
64
+ :'first_name' => :'firstName',
65
+ :'last_name' => :'lastName',
66
+ :'email' => :'email'
67
+ }
68
+ end
69
+
70
+ # Attribute type mapping.
71
+ def self.swagger_types
72
+ {
73
+ :'address1' => :'String',
74
+ :'address2' => :'String',
75
+ :'address3' => :'String',
76
+ :'address4' => :'String',
77
+ :'administrative_area' => :'String',
78
+ :'country' => :'String',
79
+ :'locality' => :'String',
80
+ :'postal_code' => :'String',
81
+ :'company' => :'Riskv1exportcomplianceinquiriesOrderInformationBillToCompany',
82
+ :'first_name' => :'String',
83
+ :'last_name' => :'String',
84
+ :'email' => :'String'
85
+ }
86
+ end
87
+
88
+ # Initializes the object
89
+ # @param [Hash] attributes Model attributes in the form of hash
90
+ def initialize(attributes = {})
91
+ return unless attributes.is_a?(Hash)
92
+
93
+ # convert string to symbol for hash key
94
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
95
+
96
+ if attributes.has_key?(:'address1')
97
+ self.address1 = attributes[:'address1']
98
+ end
99
+
100
+ if attributes.has_key?(:'address2')
101
+ self.address2 = attributes[:'address2']
102
+ end
103
+
104
+ if attributes.has_key?(:'address3')
105
+ self.address3 = attributes[:'address3']
106
+ end
107
+
108
+ if attributes.has_key?(:'address4')
109
+ self.address4 = attributes[:'address4']
110
+ end
111
+
112
+ if attributes.has_key?(:'administrativeArea')
113
+ self.administrative_area = attributes[:'administrativeArea']
114
+ end
115
+
116
+ if attributes.has_key?(:'country')
117
+ self.country = attributes[:'country']
118
+ end
119
+
120
+ if attributes.has_key?(:'locality')
121
+ self.locality = attributes[:'locality']
122
+ end
123
+
124
+ if attributes.has_key?(:'postalCode')
125
+ self.postal_code = attributes[:'postalCode']
126
+ end
127
+
128
+ if attributes.has_key?(:'company')
129
+ self.company = attributes[:'company']
130
+ end
131
+
132
+ if attributes.has_key?(:'firstName')
133
+ self.first_name = attributes[:'firstName']
134
+ end
135
+
136
+ if attributes.has_key?(:'lastName')
137
+ self.last_name = attributes[:'lastName']
138
+ end
139
+
140
+ if attributes.has_key?(:'email')
141
+ self.email = attributes[:'email']
142
+ end
143
+ end
144
+
145
+ # Show invalid properties with the reasons. Usually used together with valid?
146
+ # @return Array for valid properties with the reasons
147
+ def list_invalid_properties
148
+ invalid_properties = Array.new
149
+ if @address1.nil?
150
+ invalid_properties.push('invalid value for "address1", address1 cannot be nil.')
151
+ end
152
+
153
+ if @address1.to_s.length > 60
154
+ invalid_properties.push('invalid value for "address1", the character length must be smaller than or equal to 60.')
155
+ end
156
+
157
+ if !@address2.nil? && @address2.to_s.length > 60
158
+ invalid_properties.push('invalid value for "address2", the character length must be smaller than or equal to 60.')
159
+ end
160
+
161
+ if !@address3.nil? && @address3.to_s.length > 60
162
+ invalid_properties.push('invalid value for "address3", the character length must be smaller than or equal to 60.')
163
+ end
164
+
165
+ if !@address4.nil? && @address4.to_s.length > 60
166
+ invalid_properties.push('invalid value for "address4", the character length must be smaller than or equal to 60.')
167
+ end
168
+
169
+ if !@administrative_area.nil? && @administrative_area.to_s.length > 20
170
+ invalid_properties.push('invalid value for "administrative_area", the character length must be smaller than or equal to 20.')
171
+ end
172
+
173
+ if @country.nil?
174
+ invalid_properties.push('invalid value for "country", country cannot be nil.')
175
+ end
176
+
177
+ if @country.to_s.length > 2
178
+ invalid_properties.push('invalid value for "country", the character length must be smaller than or equal to 2.')
179
+ end
180
+
181
+ if @locality.nil?
182
+ invalid_properties.push('invalid value for "locality", locality cannot be nil.')
183
+ end
184
+
185
+ if @locality.to_s.length > 50
186
+ invalid_properties.push('invalid value for "locality", the character length must be smaller than or equal to 50.')
187
+ end
188
+
189
+ if @postal_code.nil?
190
+ invalid_properties.push('invalid value for "postal_code", postal_code cannot be nil.')
191
+ end
192
+
193
+ if @postal_code.to_s.length > 10
194
+ invalid_properties.push('invalid value for "postal_code", the character length must be smaller than or equal to 10.')
195
+ end
196
+
197
+ if !@first_name.nil? && @first_name.to_s.length > 60
198
+ invalid_properties.push('invalid value for "first_name", the character length must be smaller than or equal to 60.')
199
+ end
200
+
201
+ if !@last_name.nil? && @last_name.to_s.length > 60
202
+ invalid_properties.push('invalid value for "last_name", the character length must be smaller than or equal to 60.')
203
+ end
204
+
205
+ if @email.nil?
206
+ invalid_properties.push('invalid value for "email", email cannot be nil.')
207
+ end
208
+
209
+ if @email.to_s.length > 255
210
+ invalid_properties.push('invalid value for "email", the character length must be smaller than or equal to 255.')
211
+ end
212
+
213
+ invalid_properties
214
+ end
215
+
216
+ # Check to see if the all the properties in the model are valid
217
+ # @return true if the model is valid
218
+ def valid?
219
+ return false if @address1.nil?
220
+ return false if @address1.to_s.length > 60
221
+ return false if !@address2.nil? && @address2.to_s.length > 60
222
+ return false if !@address3.nil? && @address3.to_s.length > 60
223
+ return false if !@address4.nil? && @address4.to_s.length > 60
224
+ return false if !@administrative_area.nil? && @administrative_area.to_s.length > 20
225
+ return false if @country.nil?
226
+ return false if @country.to_s.length > 2
227
+ return false if @locality.nil?
228
+ return false if @locality.to_s.length > 50
229
+ return false if @postal_code.nil?
230
+ return false if @postal_code.to_s.length > 10
231
+ return false if !@first_name.nil? && @first_name.to_s.length > 60
232
+ return false if !@last_name.nil? && @last_name.to_s.length > 60
233
+ return false if @email.nil?
234
+ return false if @email.to_s.length > 255
235
+ true
236
+ end
237
+
238
+ # Custom attribute writer method with validation
239
+ # @param [Object] address1 Value to be assigned
240
+ def address1=(address1)
241
+ if address1.nil?
242
+ fail ArgumentError, 'address1 cannot be nil'
243
+ end
244
+
245
+ if address1.to_s.length > 60
246
+ fail ArgumentError, 'invalid value for "address1", the character length must be smaller than or equal to 60.'
247
+ end
248
+
249
+ @address1 = address1
250
+ end
251
+
252
+ # Custom attribute writer method with validation
253
+ # @param [Object] address2 Value to be assigned
254
+ def address2=(address2)
255
+ if !address2.nil? && address2.to_s.length > 60
256
+ fail ArgumentError, 'invalid value for "address2", the character length must be smaller than or equal to 60.'
257
+ end
258
+
259
+ @address2 = address2
260
+ end
261
+
262
+ # Custom attribute writer method with validation
263
+ # @param [Object] address3 Value to be assigned
264
+ def address3=(address3)
265
+ if !address3.nil? && address3.to_s.length > 60
266
+ fail ArgumentError, 'invalid value for "address3", the character length must be smaller than or equal to 60.'
267
+ end
268
+
269
+ @address3 = address3
270
+ end
271
+
272
+ # Custom attribute writer method with validation
273
+ # @param [Object] address4 Value to be assigned
274
+ def address4=(address4)
275
+ if !address4.nil? && address4.to_s.length > 60
276
+ fail ArgumentError, 'invalid value for "address4", the character length must be smaller than or equal to 60.'
277
+ end
278
+
279
+ @address4 = address4
280
+ end
281
+
282
+ # Custom attribute writer method with validation
283
+ # @param [Object] administrative_area Value to be assigned
284
+ def administrative_area=(administrative_area)
285
+ if !administrative_area.nil? && administrative_area.to_s.length > 20
286
+ fail ArgumentError, 'invalid value for "administrative_area", the character length must be smaller than or equal to 20.'
287
+ end
288
+
289
+ @administrative_area = administrative_area
290
+ end
291
+
292
+ # Custom attribute writer method with validation
293
+ # @param [Object] country Value to be assigned
294
+ def country=(country)
295
+ if country.nil?
296
+ fail ArgumentError, 'country cannot be nil'
297
+ end
298
+
299
+ if country.to_s.length > 2
300
+ fail ArgumentError, 'invalid value for "country", the character length must be smaller than or equal to 2.'
301
+ end
302
+
303
+ @country = country
304
+ end
305
+
306
+ # Custom attribute writer method with validation
307
+ # @param [Object] locality Value to be assigned
308
+ def locality=(locality)
309
+ if locality.nil?
310
+ fail ArgumentError, 'locality cannot be nil'
311
+ end
312
+
313
+ if locality.to_s.length > 50
314
+ fail ArgumentError, 'invalid value for "locality", the character length must be smaller than or equal to 50.'
315
+ end
316
+
317
+ @locality = locality
318
+ end
319
+
320
+ # Custom attribute writer method with validation
321
+ # @param [Object] postal_code Value to be assigned
322
+ def postal_code=(postal_code)
323
+ if postal_code.nil?
324
+ fail ArgumentError, 'postal_code cannot be nil'
325
+ end
326
+
327
+ if postal_code.to_s.length > 10
328
+ fail ArgumentError, 'invalid value for "postal_code", the character length must be smaller than or equal to 10.'
329
+ end
330
+
331
+ @postal_code = postal_code
332
+ end
333
+
334
+ # Custom attribute writer method with validation
335
+ # @param [Object] first_name Value to be assigned
336
+ def first_name=(first_name)
337
+ if !first_name.nil? && first_name.to_s.length > 60
338
+ fail ArgumentError, 'invalid value for "first_name", the character length must be smaller than or equal to 60.'
339
+ end
340
+
341
+ @first_name = first_name
342
+ end
343
+
344
+ # Custom attribute writer method with validation
345
+ # @param [Object] last_name Value to be assigned
346
+ def last_name=(last_name)
347
+ if !last_name.nil? && last_name.to_s.length > 60
348
+ fail ArgumentError, 'invalid value for "last_name", the character length must be smaller than or equal to 60.'
349
+ end
350
+
351
+ @last_name = last_name
352
+ end
353
+
354
+ # Custom attribute writer method with validation
355
+ # @param [Object] email Value to be assigned
356
+ def email=(email)
357
+ if email.nil?
358
+ fail ArgumentError, 'email cannot be nil'
359
+ end
360
+
361
+ if email.to_s.length > 255
362
+ fail ArgumentError, 'invalid value for "email", the character length must be smaller than or equal to 255.'
363
+ end
364
+
365
+ @email = email
366
+ end
367
+
368
+ # Checks equality by comparing each attribute.
369
+ # @param [Object] Object to be compared
370
+ def ==(o)
371
+ return true if self.equal?(o)
372
+ self.class == o.class &&
373
+ address1 == o.address1 &&
374
+ address2 == o.address2 &&
375
+ address3 == o.address3 &&
376
+ address4 == o.address4 &&
377
+ administrative_area == o.administrative_area &&
378
+ country == o.country &&
379
+ locality == o.locality &&
380
+ postal_code == o.postal_code &&
381
+ company == o.company &&
382
+ first_name == o.first_name &&
383
+ last_name == o.last_name &&
384
+ email == o.email
385
+ end
386
+
387
+ # @see the `==` method
388
+ # @param [Object] Object to be compared
389
+ def eql?(o)
390
+ self == o
391
+ end
392
+
393
+ # Calculates hash code according to all attributes.
394
+ # @return [Fixnum] Hash code
395
+ def hash
396
+ [address1, address2, address3, address4, administrative_area, country, locality, postal_code, company, first_name, last_name, email].hash
397
+ end
398
+
399
+ # Builds the object from hash
400
+ # @param [Hash] attributes Model attributes in the form of hash
401
+ # @return [Object] Returns the model itself
402
+ def build_from_hash(attributes)
403
+ return nil unless attributes.is_a?(Hash)
404
+ self.class.swagger_types.each_pair do |key, type|
405
+ if type =~ /\AArray<(.*)>/i
406
+ # check to ensure the input is an array given that the the attribute
407
+ # is documented as an array but the input is not
408
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
409
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
410
+ end
411
+ elsif !attributes[self.class.attribute_map[key]].nil?
412
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
413
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
414
+ end
415
+
416
+ self
417
+ end
418
+
419
+ # Deserializes the data based on type
420
+ # @param string type Data type
421
+ # @param string value Value to be deserialized
422
+ # @return [Object] Deserialized data
423
+ def _deserialize(type, value)
424
+ case type.to_sym
425
+ when :DateTime
426
+ DateTime.parse(value)
427
+ when :Date
428
+ Date.parse(value)
429
+ when :String
430
+ value.to_s
431
+ when :Integer
432
+ value.to_i
433
+ when :Float
434
+ value.to_f
435
+ when :BOOLEAN
436
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
437
+ true
438
+ else
439
+ false
440
+ end
441
+ when :Object
442
+ # generic object (usually a Hash), return directly
443
+ value
444
+ when /\AArray<(?<inner_type>.+)>\z/
445
+ inner_type = Regexp.last_match[:inner_type]
446
+ value.map { |v| _deserialize(inner_type, v) }
447
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
448
+ k_type = Regexp.last_match[:k_type]
449
+ v_type = Regexp.last_match[:v_type]
450
+ {}.tap do |hash|
451
+ value.each do |k, v|
452
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
453
+ end
454
+ end
455
+ else # model
456
+ temp_model = CyberSource.const_get(type).new
457
+ temp_model.build_from_hash(value)
458
+ end
459
+ end
460
+
461
+ # Returns the string representation of the object
462
+ # @return [String] String presentation of the object
463
+ def to_s
464
+ to_hash.to_s
465
+ end
466
+
467
+ # to_body is an alias to to_hash (backward compatibility)
468
+ # @return [Hash] Returns the object in the form of hash
469
+ def to_body
470
+ to_hash
471
+ end
472
+
473
+ # Returns the object in the form of hash
474
+ # @return [Hash] Returns the object in the form of hash
475
+ def to_hash
476
+ hash = {}
477
+ self.class.attribute_map.each_pair do |attr, param|
478
+ value = self.send(attr)
479
+ next if value.nil?
480
+ hash[param] = _to_hash(value)
481
+ end
482
+ hash
483
+ end
484
+
485
+ # Outputs non-array value in the form of hash
486
+ # For object, use to_hash. Otherwise, just return the value
487
+ # @param [Object] value Any valid value
488
+ # @return [Hash] Returns the value in the form of hash
489
+ def _to_hash(value)
490
+ if value.is_a?(Array)
491
+ value.compact.map { |v| _to_hash(v) }
492
+ elsif value.is_a?(Hash)
493
+ {}.tap do |hash|
494
+ value.each { |k, v| hash[k] = _to_hash(v) }
495
+ end
496
+ elsif value.respond_to? :to_hash
497
+ value.to_hash
498
+ else
499
+ value
500
+ end
501
+ end
502
+ end
503
+ end