cybersource_rest_client 0.0.65 → 0.0.67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (255) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/core/MerchantConfig.rb +2 -0
  3. data/lib/cybersource_rest_client/api/batches_api.rb +1 -1
  4. data/lib/cybersource_rest_client/api/billing_agreements_api.rb +3 -3
  5. data/lib/cybersource_rest_client/api/bin_lookup_api.rb +1 -1
  6. data/lib/cybersource_rest_client/api/capture_api.rb +1 -1
  7. data/lib/cybersource_rest_client/api/create_new_webhooks_api.rb +2 -2
  8. data/lib/cybersource_rest_client/api/credit_api.rb +1 -1
  9. data/lib/cybersource_rest_client/api/customer_api.rb +2 -2
  10. data/lib/cybersource_rest_client/api/customer_payment_instrument_api.rb +2 -2
  11. data/lib/cybersource_rest_client/api/customer_shipping_address_api.rb +2 -2
  12. data/lib/cybersource_rest_client/api/decision_manager_api.rb +5 -5
  13. data/lib/cybersource_rest_client/api/emv_tag_details_api.rb +1 -1
  14. data/lib/cybersource_rest_client/api/flex_api_api.rb +92 -0
  15. data/lib/cybersource_rest_client/api/instrument_identifier_api.rb +3 -3
  16. data/lib/cybersource_rest_client/api/invoice_settings_api.rb +1 -1
  17. data/lib/cybersource_rest_client/api/invoices_api.rb +2 -2
  18. data/lib/cybersource_rest_client/api/manage_webhooks_api.rb +2 -2
  19. data/lib/cybersource_rest_client/api/merchant_boarding_api.rb +1 -3
  20. data/lib/cybersource_rest_client/api/microform_integration_api.rb +1 -1
  21. data/lib/cybersource_rest_client/api/orders_api.rb +167 -0
  22. data/lib/cybersource_rest_client/api/payer_authentication_api.rb +3 -3
  23. data/lib/cybersource_rest_client/api/payment_instrument_api.rb +2 -2
  24. data/lib/cybersource_rest_client/api/payments_api.rb +6 -6
  25. data/lib/cybersource_rest_client/api/payouts_api.rb +1 -1
  26. data/lib/cybersource_rest_client/api/plans_api.rb +2 -2
  27. data/lib/cybersource_rest_client/api/push_funds_api.rb +1 -1
  28. data/lib/cybersource_rest_client/api/refund_api.rb +2 -2
  29. data/lib/cybersource_rest_client/api/replay_webhooks_api.rb +1 -1
  30. data/lib/cybersource_rest_client/api/report_subscriptions_api.rb +2 -2
  31. data/lib/cybersource_rest_client/api/reports_api.rb +1 -1
  32. data/lib/cybersource_rest_client/api/reversal_api.rb +2 -2
  33. data/lib/cybersource_rest_client/api/search_transactions_api.rb +1 -1
  34. data/lib/cybersource_rest_client/api/subscriptions_api.rb +2 -2
  35. data/lib/cybersource_rest_client/api/taxes_api.rb +2 -2
  36. data/lib/cybersource_rest_client/api/token_api.rb +1 -1
  37. data/lib/cybersource_rest_client/api/unified_checkout_capture_context_api.rb +1 -1
  38. data/lib/cybersource_rest_client/api/user_management_search_api.rb +1 -1
  39. data/lib/cybersource_rest_client/api/verification_api.rb +2 -2
  40. data/lib/cybersource_rest_client/api/void_api.rb +5 -5
  41. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information.rb +314 -360
  42. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_business_information.rb +437 -483
  43. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc.rb +337 -381
  44. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc_deposit_bank_account.rb +297 -330
  45. data/lib/cybersource_rest_client/models/boardingv1registrations_registration_information.rb +271 -329
  46. data/lib/cybersource_rest_client/models/card_processing_config_common.rb +433 -445
  47. data/lib/cybersource_rest_client/models/card_processing_config_common_acquirer.rb +23 -1
  48. data/lib/cybersource_rest_client/models/card_processing_config_common_merchant_descriptor_information.rb +16 -5
  49. data/lib/cybersource_rest_client/models/card_processing_config_common_processors.rb +719 -720
  50. data/lib/cybersource_rest_client/models/check_payer_auth_enrollment_request.rb +321 -321
  51. data/lib/cybersource_rest_client/models/create_order_request.rb +229 -0
  52. data/lib/cybersource_rest_client/models/create_payment_request.rb +462 -462
  53. data/lib/cybersource_rest_client/models/flexv2sessions_fields.rb +199 -0
  54. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information.rb +209 -0
  55. data/lib/cybersource_rest_client/models/{inline_response_400_5_details.rb → flexv2sessions_fields_order_information_amount_details.rb} +199 -201
  56. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_amount_details_total_amount.rb +189 -0
  57. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_bill_to.rb +309 -0
  58. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_ship_to.rb +289 -0
  59. data/lib/cybersource_rest_client/models/flexv2sessions_fields_payment_information.rb +189 -0
  60. data/lib/cybersource_rest_client/models/flexv2sessions_fields_payment_information_card.rb +229 -0
  61. data/lib/cybersource_rest_client/models/generate_capture_context_request.rb +227 -225
  62. data/lib/cybersource_rest_client/models/generate_flex_api_capture_context_request.rb +189 -0
  63. data/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +293 -290
  64. data/lib/cybersource_rest_client/models/inline_response_200_1.rb +253 -253
  65. data/lib/cybersource_rest_client/models/inline_response_200_1_integration_information.rb +204 -204
  66. data/lib/cybersource_rest_client/models/inline_response_200_1_integration_information_tenant_configurations.rb +1 -34
  67. data/lib/cybersource_rest_client/models/inline_response_200_2.rb +213 -213
  68. data/lib/cybersource_rest_client/models/inline_response_200_3.rb +335 -335
  69. data/lib/cybersource_rest_client/models/inline_response_200_5.rb +251 -251
  70. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded.rb +191 -191
  71. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded__links.rb +191 -191
  72. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded__links_reports.rb +190 -190
  73. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded_batches.rb +295 -295
  74. data/lib/cybersource_rest_client/models/inline_response_200_5__embedded_totals.rb +229 -229
  75. data/lib/cybersource_rest_client/models/inline_response_200_5__links.rb +200 -200
  76. data/lib/cybersource_rest_client/models/inline_response_200_6.rb +290 -290
  77. data/lib/cybersource_rest_client/models/inline_response_200_6__links.rb +201 -201
  78. data/lib/cybersource_rest_client/models/inline_response_200_6__links_report.rb +189 -189
  79. data/lib/cybersource_rest_client/models/inline_response_200_6_billing.rb +219 -219
  80. data/lib/cybersource_rest_client/models/inline_response_200_7.rb +292 -292
  81. data/lib/cybersource_rest_client/models/inline_response_200_7_records.rb +209 -209
  82. data/lib/cybersource_rest_client/models/inline_response_200_7_response_record.rb +307 -307
  83. data/lib/cybersource_rest_client/models/inline_response_200_7_response_record_additional_updates.rb +242 -242
  84. data/lib/cybersource_rest_client/models/inline_response_200_7_source_record.rb +295 -295
  85. data/lib/cybersource_rest_client/models/inline_response_201_2.rb +281 -315
  86. data/lib/cybersource_rest_client/models/inline_response_201_2_integration_information_tenant_configurations.rb +253 -286
  87. data/lib/cybersource_rest_client/models/inline_response_201_2_registration_information.rb +222 -256
  88. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments.rb +359 -359
  89. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_card_processing_configuration_status.rb +255 -299
  90. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_card_processing_subscription_status.rb +234 -278
  91. data/lib/cybersource_rest_client/models/inline_response_400_1.rb +242 -235
  92. data/lib/cybersource_rest_client/models/inline_response_400_1_details.rb +199 -0
  93. data/lib/cybersource_rest_client/models/inline_response_400_2.rb +3 -3
  94. data/lib/cybersource_rest_client/models/inline_response_400_3.rb +1 -1
  95. data/lib/cybersource_rest_client/models/inline_response_400_4.rb +37 -60
  96. data/lib/cybersource_rest_client/models/inline_response_400_5.rb +258 -269
  97. data/lib/cybersource_rest_client/models/{inline_response_400_4_fields.rb → inline_response_400_5_fields.rb} +1 -1
  98. data/lib/cybersource_rest_client/models/inline_response_400_6.rb +35 -75
  99. data/lib/cybersource_rest_client/models/inline_response_400_6_details.rb +201 -199
  100. data/lib/cybersource_rest_client/models/inline_response_404_1.rb +2 -36
  101. data/lib/cybersource_rest_client/models/inline_response_422_1.rb +2 -36
  102. data/lib/cybersource_rest_client/models/inline_response_500_2.rb +1 -35
  103. data/lib/cybersource_rest_client/models/microformv2sessions_checkout_api_initialization.rb +281 -279
  104. data/lib/cybersource_rest_client/models/patch_instrument_identifier_request.rb +1 -1
  105. data/lib/cybersource_rest_client/models/payer_auth_config_card_types_verified_by_visa_currencies.rb +244 -244
  106. data/lib/cybersource_rest_client/models/payer_auth_setup_request.rb +219 -219
  107. data/lib/cybersource_rest_client/models/payments_products.rb +369 -369
  108. data/lib/cybersource_rest_client/models/payments_products_card_present_connect_subscription_information.rb +202 -236
  109. data/lib/cybersource_rest_client/models/payments_products_card_processing_subscription_information.rb +215 -249
  110. data/lib/cybersource_rest_client/models/payments_products_differential_fee_subscription_information.rb +212 -246
  111. data/lib/cybersource_rest_client/models/payments_products_digital_payments_subscription_information.rb +215 -249
  112. data/lib/cybersource_rest_client/models/payments_products_e_check_subscription_information.rb +215 -249
  113. data/lib/cybersource_rest_client/models/payments_products_payer_authentication_subscription_information.rb +202 -236
  114. data/lib/cybersource_rest_client/models/payments_products_service_fee.rb +199 -199
  115. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information.rb +189 -189
  116. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations.rb +266 -266
  117. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_merchant_information.rb +239 -239
  118. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_payment_information.rb +2 -48
  119. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_products.rb +190 -190
  120. data/lib/cybersource_rest_client/models/post_instrument_identifier_enrollment_request.rb +1 -1
  121. data/lib/cybersource_rest_client/models/post_instrument_identifier_request.rb +1 -1
  122. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response.rb +269 -0
  123. data/lib/cybersource_rest_client/models/{tss_v2_transactions_post201_response__embedded_buyer_information.rb → pts_v2_create_order_post201_response_buyer_information.rb} +196 -196
  124. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response_processor_information.rb +224 -0
  125. data/lib/cybersource_rest_client/models/{bin_lookupv400_response.rb → pts_v2_create_order_post400_response.rb} +224 -224
  126. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_1_processor_information.rb +213 -213
  127. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_processor_information.rb +295 -284
  128. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response.rb +305 -295
  129. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_embedded_actions.rb +189 -0
  130. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_embedded_actions_ap_capture.rb +190 -0
  131. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_processor_information.rb +263 -252
  132. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_buyer_information_personal_identification.rb +207 -207
  133. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_payment_information_e_wallet.rb +241 -230
  134. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_embedded_actions_consumer_authentication.rb +212 -212
  135. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +309 -309
  136. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information.rb +227 -217
  137. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_capture_options.rb +196 -0
  138. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +67 -6
  139. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_seller_protection.rb +237 -218
  140. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_processor_information.rb +313 -302
  141. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response.rb +1 -1
  142. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_processor_information.rb +309 -309
  143. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response_processor_information.rb +224 -224
  144. data/lib/cybersource_rest_client/models/pts_v2_update_order_patch201_response.rb +200 -0
  145. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_aggregator_information.rb +240 -0
  146. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_aggregator_information_sub_merchant.rb +196 -0
  147. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_merchant_information.rb +205 -0
  148. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_order_information_amount_details.rb +302 -292
  149. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information.rb +189 -0
  150. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information_emv.rb +196 -0
  151. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information.rb +318 -232
  152. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information_payouts_options.rb +282 -231
  153. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information.rb +446 -378
  154. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_payment_information_card.rb +321 -321
  155. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_personal_identification.rb +256 -239
  156. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information.rb +533 -448
  157. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_account.rb +222 -222
  158. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_payment_information_card.rb +317 -317
  159. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_personal_identification.rb +256 -256
  160. data/lib/cybersource_rest_client/models/ptsv2intents_client_reference_information.rb +196 -0
  161. data/lib/cybersource_rest_client/models/ptsv2intents_merchant_information.rb +223 -0
  162. data/lib/cybersource_rest_client/models/ptsv2intents_merchant_information_merchant_descriptor.rb +207 -0
  163. data/lib/cybersource_rest_client/models/ptsv2intents_order_information.rb +231 -0
  164. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_amount_details.rb +315 -0
  165. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_bill_to.rb +196 -0
  166. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_invoice_details.rb +190 -0
  167. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_line_items.rb +309 -0
  168. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_ship_to.rb +332 -0
  169. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information.rb +189 -0
  170. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_payment_type.rb +200 -0
  171. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_payment_type_method.rb +190 -0
  172. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information.rb +219 -0
  173. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information_authorization_options.rb +196 -0
  174. data/lib/cybersource_rest_client/models/ptsv2intentsid_merchant_information.rb +189 -0
  175. data/lib/cybersource_rest_client/models/ptsv2intentsid_order_information.rb +221 -0
  176. data/lib/cybersource_rest_client/models/ptsv2intentsid_processing_information.rb +192 -0
  177. data/lib/cybersource_rest_client/models/ptsv2payments_agreement_information.rb +207 -190
  178. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +229 -229
  179. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +651 -641
  180. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_octsurcharge.rb +196 -0
  181. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +721 -704
  182. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +1 -1
  183. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_capture_options.rb +264 -247
  184. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +383 -383
  185. data/lib/cybersource_rest_client/models/ptsv2payments_recurring_payment_information.rb +14 -0
  186. data/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb +298 -298
  187. data/lib/cybersource_rest_client/models/ptsv2paymentsid_client_reference_information.rb +22 -5
  188. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_authorization_options.rb +230 -230
  189. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_capture_options.rb +247 -230
  190. data/lib/cybersource_rest_client/models/ptsv2refreshpaymentstatusid_processing_information.rb +192 -192
  191. data/lib/cybersource_rest_client/models/push_funds201_response.rb +337 -317
  192. data/lib/cybersource_rest_client/models/push_funds201_response_error_information.rb +225 -225
  193. data/lib/cybersource_rest_client/models/push_funds201_response_payment_information.rb +189 -0
  194. data/lib/cybersource_rest_client/models/push_funds201_response_payment_information_tokenized_card.rb +205 -0
  195. data/lib/cybersource_rest_client/models/push_funds201_response_processing_information.rb +189 -0
  196. data/lib/cybersource_rest_client/models/push_funds201_response_processing_information_domestic_national_net.rb +197 -0
  197. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information.rb +329 -241
  198. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information_routing.rb +196 -0
  199. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information_settlement.rb +207 -0
  200. data/lib/cybersource_rest_client/models/push_funds201_response_recipient_information.rb +206 -189
  201. data/lib/cybersource_rest_client/models/push_funds502_response.rb +246 -246
  202. data/lib/cybersource_rest_client/models/push_funds_request.rb +264 -239
  203. data/lib/cybersource_rest_client/models/rbsv1subscriptions_processing_information.rb +206 -206
  204. data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response.rb +269 -269
  205. data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response_consumer_authentication_information.rb +622 -622
  206. data/lib/cybersource_rest_client/models/risk_v1_authentications_post201_response.rb +279 -279
  207. data/lib/cybersource_rest_client/models/risk_v1_authentications_post400_response_1.rb +235 -235
  208. data/lib/cybersource_rest_client/models/riskv1authenticationresults_consumer_authentication_information.rb +312 -312
  209. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information.rb +1 -1
  210. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_card.rb +241 -241
  211. data/lib/cybersource_rest_client/models/riskv1authentications_device_information.rb +434 -434
  212. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information.rb +219 -219
  213. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_customer.rb +222 -0
  214. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_client_reference_information.rb +240 -240
  215. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_customer.rb +9 -0
  216. data/lib/cybersource_rest_client/models/riskv1decisions_consumer_authentication_information.rb +795 -812
  217. data/lib/cybersource_rest_client/models/sa_config_payment_methods.rb +191 -213
  218. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier.rb +1 -1
  219. data/lib/cybersource_rest_client/models/{tms_embedded_instrument_identifier_tokenized_card.rb → tmsv2_tokenized_card.rb} +16 -6
  220. data/lib/cybersource_rest_client/models/{tms_embedded_instrument_identifier_tokenized_card_card.rb → tmsv2_tokenized_card_card.rb} +1 -1
  221. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata.rb +189 -0
  222. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art.rb +250 -0
  223. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset.rb +200 -0
  224. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset__links.rb +189 -0
  225. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset__links_self.rb +190 -0
  226. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset.rb +200 -0
  227. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links.rb +189 -0
  228. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links_self.rb +190 -0
  229. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset.rb +200 -0
  230. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links.rb +189 -0
  231. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links_self.rb +190 -0
  232. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset.rb +200 -0
  233. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset__links.rb +189 -0
  234. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset__links_self.rb +190 -0
  235. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset.rb +200 -0
  236. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links.rb +189 -0
  237. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links_self.rb +190 -0
  238. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset.rb +200 -0
  239. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links.rb +189 -0
  240. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links_self.rb +190 -0
  241. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +245 -245
  242. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +383 -383
  243. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_multi_processor_routing.rb +235 -235
  244. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +223 -206
  245. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +392 -392
  246. data/lib/cybersource_rest_client/models/update_order_request.rb +229 -0
  247. data/lib/cybersource_rest_client/models/upv1capturecontexts_capture_mandate.rb +253 -253
  248. data/lib/cybersource_rest_client/models/upv1capturecontexts_checkout_api_initialization.rb +280 -279
  249. data/lib/cybersource_rest_client/models/upv1capturecontexts_order_information_amount_details.rb +201 -199
  250. data/lib/cybersource_rest_client/models/validate_request.rb +249 -249
  251. data/lib/cybersource_rest_client/models/vt_config_card_not_present_global_payment_information_basic_information.rb +273 -317
  252. data/lib/cybersource_rest_client/models/vt_config_card_not_present_global_payment_information_payment_information.rb +315 -337
  253. data/lib/cybersource_rest_client/utilities/tracking/sdk_tracker.rb +5 -1
  254. data/lib/cybersource_rest_client.rb +75 -6
  255. metadata +78 -29
@@ -1,445 +1,433 @@
1
- =begin
2
- #CyberSource Merged Spec
3
-
4
- #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
-
6
- OpenAPI spec version: 0.0.1
7
-
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.38
10
- =end
11
-
12
- require 'date'
13
-
14
- module CyberSource
15
- class CardProcessingConfigCommon
16
- # e.g. * amexdirect * barclays2 * CUP * EFTPOS * fdiglobal * gpngsapv3 * gpx * smartfdc * tsys * vero * VPC For VPC, CUP and EFTPOS processors, replace the processor name from VPC or CUP or EFTPOS to the actual processor name in the sample request. e.g. replace VPC with <your vpc processor>
17
- attr_accessor :processors
18
-
19
- # Vendor code assigned by American Express. Applicable for TSYS (tsys) processor.
20
- attr_accessor :amex_vendor_code
21
-
22
- # Authorization Finality indicator. Please note that the input can be in small case or capitals but response is in small case as of now. It will be made capitals everywhere in the next version. Applicable for Elavon Americas (elavonamericas), TSYS (tsys), Barclays (barclays2), Streamline (streamline2), Six (six), Barclays HISO (barclayshiso), GPN (gpn), FDI Global (fdiglobal), GPX (gpx), Paymentech Tampa (paymentechtampa), FDC Nashville (smartfdc), VPC and Chase Paymentech Salem (chasepaymentechsalem) processors. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th><th>Default Value</th></tr></thead> <tr><td>Barclays</td><td>cnp, cp, hybrid</td><td>No</td><td>FINAL</td></tr> <tr><td>Barclays HISO</td><td>cnp, cp, hybrid</td><td>Yes</td><td>FINAL</td></tr> </table>
23
- attr_accessor :default_auth_type_code
24
-
25
- # MAID aka MasterCard assigned ID, MasterCard equivalent of Merchant Verification Value by Visa. Applicable for VPC, GPX (gpx) and FDI Global (fdiglobal) processors.
26
- attr_accessor :master_card_assigned_id
27
-
28
- # Allow merchants to accept partial authorization approvals. Applicable for Elavon Americas (elavonamericas), VPC, GPX (gpx), FDI Global (fdiglobal), FDC Nashville (smartfdc), GPN (gpn), TSYS (tsys), American Express Direct (amexdirect), Paymentech Tampa (paymentechtampa) and Chase Paymentech Salem (chasepaymentechsalem) processors. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th><th>Default Value</th></tr></thead> <tr><td>American Express Direct</td><td>cnp, cp, hybrid</td><td>No</td><td>No</td></tr> </table>
29
- attr_accessor :enable_partial_auth
30
-
31
- # Indicates type of business product or service of the merchant. Applicable for Chase Paymentech Salem (chasepaymentechsalem), FDI Global (fdiglobal), RUPAY, Elavon Americas (elavonamericas), American Express Direct (amexdirect), CMCIC (cmcic), GPX (gpx), VPC, TSYS (tsys), EFTPOS, CUP, Paymentech Tampa (paymentechtampa), CB2A, Barclays (barclays2), Prisma (prisma) and GPN (gpn) processors. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th><th>Min. Length</th><th>Max. Length</th><th>Regex</th></tr></thead> <tr><td>Barclays</td><td>cnp</td><td>No</td><td>4</td><td>4</td><td>^[0-9]+$</td></tr> <tr><td>American Express Direct</td><td>cnp, cp, hybrid</td><td>Yes</td><td>4</td><td>4</td><td>^[0-9]+$</td></tr> </table>
32
- attr_accessor :merchant_category_code
33
-
34
- # The Standard Industrial Classification (SIC) are four-digit codes that categorize the industries that companies belong to based on their business activities. Standard Industrial Classification codes were mostly replaced by the six-digit North American Industry Classification System (NAICS). Applicable for VPC and GPX (gpx) processors.
35
- attr_accessor :sic_code
36
-
37
- # Food and Consumer Service ID. Identifies the merchant as being certified and approved to accept Food Stamps. Applicable for GPX (gpx) processor.
38
- attr_accessor :food_and_consumer_service_id
39
-
40
- # Enables you to split an order into multiple shipments with multiple captures. This feature is provided by CyberSource and supports three different scenarios: * multiple authorizations * multiple captures * multiple authorizations with multiple captures Applicable for VPC processors.
41
- attr_accessor :enable_split_shipment
42
-
43
- # Reduces your interchange fees by using automatic authorization refresh and automatic partial authorization reversal. Applicable for VPC processors.
44
- attr_accessor :enable_interchange_optimization
45
-
46
- # Identifier provided to merchants who opt for Visa's delegated authorization program. Applicable for VPC processors.
47
- attr_accessor :visa_delegated_authentication_id
48
-
49
- # Blocks over-refunds when the aggregated refund amount is higher than the percentage set for this field. Applicable for GPX (gpx), VPC and Chase Paymentech Salem (chasepaymentechsalem) processors.
50
- attr_accessor :credit_card_refund_limit_percent
51
-
52
- # Limits refunds to the percentage set in this field. Applicable for GPX (gpx) and VPC processors.
53
- attr_accessor :business_center_credit_card_refund_limit_percent
54
-
55
- # Enables this merchant account to capture amounts greater than the authorization amount. Applicable for GPX (gpx), VPC, Paymentech Tampa (paymentechtampa) and Chase Paymentech Salem (chasepaymentechsalem) processors.
56
- attr_accessor :allow_captures_greater_than_authorizations
57
-
58
- # Helps prevent duplicate transactions. Applicable for VPC, GPX (gpx) and Chase Paymentech Salem (chasepaymentechsalem) processors.
59
- attr_accessor :enable_duplicate_merchant_reference_number_blocking
60
-
61
- # This is a local merchant ID used by merchants in addition to the conventional merchant ID. This value is sent to the issuer. Applicable for VPC and Prisma (prisma) processors.
62
- attr_accessor :domestic_merchant_id
63
-
64
- # Indicates whether merchant processes Level 3 transactions. Applicable for TSYS (tsys), Barclays (barclays2), Paymentech Tampa (paymentechtampa), FDI Global (fdiglobal), Elavon Americas (elavonamericas) and Chase Paymentech Salem (chasepaymentechsalem) processors. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th></tr></thead> <tr><td>Barclays</td><td>cnp</td><td>No</td></tr> </table>
65
- attr_accessor :process_level3_data
66
-
67
- # The ID assigned to the sub-merchant. Applicable for American Express Direct (amexdirect) processor. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th><th>Min. Length</th><th>Max. Length</th><th>Regex</th></tr></thead> <tr><td>American Express Direct</td><td>cnp, cp, hybrid</td><td>No</td><td>1</td><td>20</td><td>^[0-9a-zA-Z&#92;-&#92;_&#92;,\\s.]+$</td></tr> </table>
68
- attr_accessor :sub_merchant_id
69
-
70
- # Sub-merchant's business name. Applicable for American Express Direct (amexdirect) processor. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th><th>Min. Length</th><th>Max. Length</th><th>Regex</th></tr></thead> <tr><td>American Express Direct</td><td>cnp, cp, hybrid</td><td>No</td><td>1</td><td>37</td><td>^[0-9a-zA-Z&#92;-&#92;_&#92;,\\s.]+$</td></tr> </table>
71
- attr_accessor :sub_merchant_business_name
72
-
73
- # It denotes merchant's preference on secondary brand for routing in case of co-branded cards. Applicable for EFTPOS processors.
74
- attr_accessor :prefer_cobadged_secondary_brand
75
-
76
- attr_accessor :merchant_descriptor_information
77
-
78
- class EnumAttributeValidator
79
- attr_reader :datatype
80
- attr_reader :allowable_values
81
-
82
- def initialize(datatype, allowable_values)
83
- @allowable_values = allowable_values.map do |value|
84
- case datatype.to_s
85
- when /Integer/i
86
- value.to_i
87
- when /Float/i
88
- value.to_f
89
- else
90
- value
91
- end
92
- end
93
- end
94
-
95
- def valid?(value)
96
- !value || allowable_values.include?(value)
97
- end
98
- end
99
-
100
- # Attribute mapping from ruby-style variable name to JSON key.
101
- def self.attribute_map
102
- {
103
- :'processors' => :'processors',
104
- :'amex_vendor_code' => :'amexVendorCode',
105
- :'default_auth_type_code' => :'defaultAuthTypeCode',
106
- :'master_card_assigned_id' => :'masterCardAssignedId',
107
- :'enable_partial_auth' => :'enablePartialAuth',
108
- :'merchant_category_code' => :'merchantCategoryCode',
109
- :'sic_code' => :'sicCode',
110
- :'food_and_consumer_service_id' => :'foodAndConsumerServiceId',
111
- :'enable_split_shipment' => :'enableSplitShipment',
112
- :'enable_interchange_optimization' => :'enableInterchangeOptimization',
113
- :'visa_delegated_authentication_id' => :'visaDelegatedAuthenticationId',
114
- :'credit_card_refund_limit_percent' => :'creditCardRefundLimitPercent',
115
- :'business_center_credit_card_refund_limit_percent' => :'businessCenterCreditCardRefundLimitPercent',
116
- :'allow_captures_greater_than_authorizations' => :'allowCapturesGreaterThanAuthorizations',
117
- :'enable_duplicate_merchant_reference_number_blocking' => :'enableDuplicateMerchantReferenceNumberBlocking',
118
- :'domestic_merchant_id' => :'domesticMerchantId',
119
- :'process_level3_data' => :'processLevel3Data',
120
- :'sub_merchant_id' => :'subMerchantId',
121
- :'sub_merchant_business_name' => :'subMerchantBusinessName',
122
- :'prefer_cobadged_secondary_brand' => :'preferCobadgedSecondaryBrand',
123
- :'merchant_descriptor_information' => :'merchantDescriptorInformation'
124
- }
125
- end
126
-
127
- # Attribute mapping from JSON key to ruby-style variable name.
128
- def self.json_map
129
- {
130
- :'processors' => :'processors',
131
- :'amex_vendor_code' => :'amex_vendor_code',
132
- :'default_auth_type_code' => :'default_auth_type_code',
133
- :'master_card_assigned_id' => :'master_card_assigned_id',
134
- :'enable_partial_auth' => :'enable_partial_auth',
135
- :'merchant_category_code' => :'merchant_category_code',
136
- :'sic_code' => :'sic_code',
137
- :'food_and_consumer_service_id' => :'food_and_consumer_service_id',
138
- :'enable_split_shipment' => :'enable_split_shipment',
139
- :'enable_interchange_optimization' => :'enable_interchange_optimization',
140
- :'visa_delegated_authentication_id' => :'visa_delegated_authentication_id',
141
- :'credit_card_refund_limit_percent' => :'credit_card_refund_limit_percent',
142
- :'business_center_credit_card_refund_limit_percent' => :'business_center_credit_card_refund_limit_percent',
143
- :'allow_captures_greater_than_authorizations' => :'allow_captures_greater_than_authorizations',
144
- :'enable_duplicate_merchant_reference_number_blocking' => :'enable_duplicate_merchant_reference_number_blocking',
145
- :'domestic_merchant_id' => :'domestic_merchant_id',
146
- :'process_level3_data' => :'process_level3_data',
147
- :'sub_merchant_id' => :'sub_merchant_id',
148
- :'sub_merchant_business_name' => :'sub_merchant_business_name',
149
- :'prefer_cobadged_secondary_brand' => :'prefer_cobadged_secondary_brand',
150
- :'merchant_descriptor_information' => :'merchant_descriptor_information'
151
- }
152
- end
153
-
154
- # Attribute type mapping.
155
- def self.swagger_types
156
- {
157
- :'processors' => :'Hash<String, CardProcessingConfigCommonProcessors>',
158
- :'amex_vendor_code' => :'String',
159
- :'default_auth_type_code' => :'String',
160
- :'master_card_assigned_id' => :'String',
161
- :'enable_partial_auth' => :'BOOLEAN',
162
- :'merchant_category_code' => :'String',
163
- :'sic_code' => :'String',
164
- :'food_and_consumer_service_id' => :'String',
165
- :'enable_split_shipment' => :'BOOLEAN',
166
- :'enable_interchange_optimization' => :'BOOLEAN',
167
- :'visa_delegated_authentication_id' => :'String',
168
- :'credit_card_refund_limit_percent' => :'String',
169
- :'business_center_credit_card_refund_limit_percent' => :'String',
170
- :'allow_captures_greater_than_authorizations' => :'BOOLEAN',
171
- :'enable_duplicate_merchant_reference_number_blocking' => :'BOOLEAN',
172
- :'domestic_merchant_id' => :'BOOLEAN',
173
- :'process_level3_data' => :'String',
174
- :'sub_merchant_id' => :'String',
175
- :'sub_merchant_business_name' => :'String',
176
- :'prefer_cobadged_secondary_brand' => :'BOOLEAN',
177
- :'merchant_descriptor_information' => :'CardProcessingConfigCommonMerchantDescriptorInformation'
178
- }
179
- end
180
-
181
- # Initializes the object
182
- # @param [Hash] attributes Model attributes in the form of hash
183
- def initialize(attributes = {})
184
- return unless attributes.is_a?(Hash)
185
-
186
- # convert string to symbol for hash key
187
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
188
-
189
- if attributes.has_key?(:'processors')
190
- if (value = attributes[:'processors']).is_a?(Hash)
191
- self.processors = value
192
- end
193
- end
194
-
195
- if attributes.has_key?(:'amexVendorCode')
196
- self.amex_vendor_code = attributes[:'amexVendorCode']
197
- end
198
-
199
- if attributes.has_key?(:'defaultAuthTypeCode')
200
- self.default_auth_type_code = attributes[:'defaultAuthTypeCode']
201
- end
202
-
203
- if attributes.has_key?(:'masterCardAssignedId')
204
- self.master_card_assigned_id = attributes[:'masterCardAssignedId']
205
- end
206
-
207
- if attributes.has_key?(:'enablePartialAuth')
208
- self.enable_partial_auth = attributes[:'enablePartialAuth']
209
- end
210
-
211
- if attributes.has_key?(:'merchantCategoryCode')
212
- self.merchant_category_code = attributes[:'merchantCategoryCode']
213
- end
214
-
215
- if attributes.has_key?(:'sicCode')
216
- self.sic_code = attributes[:'sicCode']
217
- end
218
-
219
- if attributes.has_key?(:'foodAndConsumerServiceId')
220
- self.food_and_consumer_service_id = attributes[:'foodAndConsumerServiceId']
221
- end
222
-
223
- if attributes.has_key?(:'enableSplitShipment')
224
- self.enable_split_shipment = attributes[:'enableSplitShipment']
225
- end
226
-
227
- if attributes.has_key?(:'enableInterchangeOptimization')
228
- self.enable_interchange_optimization = attributes[:'enableInterchangeOptimization']
229
- end
230
-
231
- if attributes.has_key?(:'visaDelegatedAuthenticationId')
232
- self.visa_delegated_authentication_id = attributes[:'visaDelegatedAuthenticationId']
233
- end
234
-
235
- if attributes.has_key?(:'creditCardRefundLimitPercent')
236
- self.credit_card_refund_limit_percent = attributes[:'creditCardRefundLimitPercent']
237
- end
238
-
239
- if attributes.has_key?(:'businessCenterCreditCardRefundLimitPercent')
240
- self.business_center_credit_card_refund_limit_percent = attributes[:'businessCenterCreditCardRefundLimitPercent']
241
- end
242
-
243
- if attributes.has_key?(:'allowCapturesGreaterThanAuthorizations')
244
- self.allow_captures_greater_than_authorizations = attributes[:'allowCapturesGreaterThanAuthorizations']
245
- end
246
-
247
- if attributes.has_key?(:'enableDuplicateMerchantReferenceNumberBlocking')
248
- self.enable_duplicate_merchant_reference_number_blocking = attributes[:'enableDuplicateMerchantReferenceNumberBlocking']
249
- end
250
-
251
- if attributes.has_key?(:'domesticMerchantId')
252
- self.domestic_merchant_id = attributes[:'domesticMerchantId']
253
- end
254
-
255
- if attributes.has_key?(:'processLevel3Data')
256
- self.process_level3_data = attributes[:'processLevel3Data']
257
- end
258
-
259
- if attributes.has_key?(:'subMerchantId')
260
- self.sub_merchant_id = attributes[:'subMerchantId']
261
- end
262
-
263
- if attributes.has_key?(:'subMerchantBusinessName')
264
- self.sub_merchant_business_name = attributes[:'subMerchantBusinessName']
265
- end
266
-
267
- if attributes.has_key?(:'preferCobadgedSecondaryBrand')
268
- self.prefer_cobadged_secondary_brand = attributes[:'preferCobadgedSecondaryBrand']
269
- end
270
-
271
- if attributes.has_key?(:'merchantDescriptorInformation')
272
- self.merchant_descriptor_information = attributes[:'merchantDescriptorInformation']
273
- end
274
- end
275
-
276
- # Show invalid properties with the reasons. Usually used together with valid?
277
- # @return Array for valid properties with the reasons
278
- def list_invalid_properties
279
- invalid_properties = Array.new
280
- invalid_properties
281
- end
282
-
283
- # Check to see if the all the properties in the model are valid
284
- # @return true if the model is valid
285
- def valid?
286
- default_auth_type_code_validator = EnumAttributeValidator.new('String', ['PRE', 'FINAL', 'UNDEFINED'])
287
- return false unless default_auth_type_code_validator.valid?(@default_auth_type_code)
288
- true
289
- end
290
-
291
- # Custom attribute writer method checking allowed values (enum).
292
- # @param [Object] default_auth_type_code Object to be assigned
293
- def default_auth_type_code=(default_auth_type_code)
294
- validator = EnumAttributeValidator.new('String', ['PRE', 'FINAL', 'UNDEFINED'])
295
- unless validator.valid?(default_auth_type_code)
296
- fail ArgumentError, 'invalid value for "default_auth_type_code", must be one of #{validator.allowable_values}.'
297
- end
298
- @default_auth_type_code = default_auth_type_code
299
- end
300
-
301
- # Checks equality by comparing each attribute.
302
- # @param [Object] Object to be compared
303
- def ==(o)
304
- return true if self.equal?(o)
305
- self.class == o.class &&
306
- processors == o.processors &&
307
- amex_vendor_code == o.amex_vendor_code &&
308
- default_auth_type_code == o.default_auth_type_code &&
309
- master_card_assigned_id == o.master_card_assigned_id &&
310
- enable_partial_auth == o.enable_partial_auth &&
311
- merchant_category_code == o.merchant_category_code &&
312
- sic_code == o.sic_code &&
313
- food_and_consumer_service_id == o.food_and_consumer_service_id &&
314
- enable_split_shipment == o.enable_split_shipment &&
315
- enable_interchange_optimization == o.enable_interchange_optimization &&
316
- visa_delegated_authentication_id == o.visa_delegated_authentication_id &&
317
- credit_card_refund_limit_percent == o.credit_card_refund_limit_percent &&
318
- business_center_credit_card_refund_limit_percent == o.business_center_credit_card_refund_limit_percent &&
319
- allow_captures_greater_than_authorizations == o.allow_captures_greater_than_authorizations &&
320
- enable_duplicate_merchant_reference_number_blocking == o.enable_duplicate_merchant_reference_number_blocking &&
321
- domestic_merchant_id == o.domestic_merchant_id &&
322
- process_level3_data == o.process_level3_data &&
323
- sub_merchant_id == o.sub_merchant_id &&
324
- sub_merchant_business_name == o.sub_merchant_business_name &&
325
- prefer_cobadged_secondary_brand == o.prefer_cobadged_secondary_brand &&
326
- merchant_descriptor_information == o.merchant_descriptor_information
327
- end
328
-
329
- # @see the `==` method
330
- # @param [Object] Object to be compared
331
- def eql?(o)
332
- self == o
333
- end
334
-
335
- # Calculates hash code according to all attributes.
336
- # @return [Fixnum] Hash code
337
- def hash
338
- [processors, amex_vendor_code, default_auth_type_code, master_card_assigned_id, enable_partial_auth, merchant_category_code, sic_code, food_and_consumer_service_id, enable_split_shipment, enable_interchange_optimization, visa_delegated_authentication_id, credit_card_refund_limit_percent, business_center_credit_card_refund_limit_percent, allow_captures_greater_than_authorizations, enable_duplicate_merchant_reference_number_blocking, domestic_merchant_id, process_level3_data, sub_merchant_id, sub_merchant_business_name, prefer_cobadged_secondary_brand, merchant_descriptor_information].hash
339
- end
340
-
341
- # Builds the object from hash
342
- # @param [Hash] attributes Model attributes in the form of hash
343
- # @return [Object] Returns the model itself
344
- def build_from_hash(attributes)
345
- return nil unless attributes.is_a?(Hash)
346
- self.class.swagger_types.each_pair do |key, type|
347
- if type =~ /\AArray<(.*)>/i
348
- # check to ensure the input is an array given that the the attribute
349
- # is documented as an array but the input is not
350
- if attributes[self.class.attribute_map[key]].is_a?(Array)
351
- self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
352
- end
353
- elsif !attributes[self.class.attribute_map[key]].nil?
354
- self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
355
- end # or else data not found in attributes(hash), not an issue as the data can be optional
356
- end
357
-
358
- self
359
- end
360
-
361
- # Deserializes the data based on type
362
- # @param string type Data type
363
- # @param string value Value to be deserialized
364
- # @return [Object] Deserialized data
365
- def _deserialize(type, value)
366
- case type.to_sym
367
- when :DateTime
368
- DateTime.parse(value)
369
- when :Date
370
- Date.parse(value)
371
- when :String
372
- value.to_s
373
- when :Integer
374
- value.to_i
375
- when :Float
376
- value.to_f
377
- when :BOOLEAN
378
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
379
- true
380
- else
381
- false
382
- end
383
- when :Object
384
- # generic object (usually a Hash), return directly
385
- value
386
- when /\AArray<(?<inner_type>.+)>\z/
387
- inner_type = Regexp.last_match[:inner_type]
388
- value.map { |v| _deserialize(inner_type, v) }
389
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
390
- k_type = Regexp.last_match[:k_type]
391
- v_type = Regexp.last_match[:v_type]
392
- {}.tap do |hash|
393
- value.each do |k, v|
394
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
395
- end
396
- end
397
- else # model
398
- temp_model = CyberSource.const_get(type).new
399
- temp_model.build_from_hash(value)
400
- end
401
- end
402
-
403
- # Returns the string representation of the object
404
- # @return [String] String presentation of the object
405
- def to_s
406
- to_hash.to_s
407
- end
408
-
409
- # to_body is an alias to to_hash (backward compatibility)
410
- # @return [Hash] Returns the object in the form of hash
411
- def to_body
412
- to_hash
413
- end
414
-
415
- # Returns the object in the form of hash
416
- # @return [Hash] Returns the object in the form of hash
417
- def to_hash
418
- hash = {}
419
- self.class.attribute_map.each_pair do |attr, param|
420
- value = self.send(attr)
421
- next if value.nil?
422
- hash[param] = _to_hash(value)
423
- end
424
- hash
425
- end
426
-
427
- # Outputs non-array value in the form of hash
428
- # For object, use to_hash. Otherwise, just return the value
429
- # @param [Object] value Any valid value
430
- # @return [Hash] Returns the value in the form of hash
431
- def _to_hash(value)
432
- if value.is_a?(Array)
433
- value.compact.map { |v| _to_hash(v) }
434
- elsif value.is_a?(Hash)
435
- {}.tap do |hash|
436
- value.each { |k, v| hash[k] = _to_hash(v) }
437
- end
438
- elsif value.respond_to? :to_hash
439
- value.to_hash
440
- else
441
- value
442
- end
443
- end
444
- end
445
- end
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.38
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module CyberSource
15
+ class CardProcessingConfigCommon
16
+ # e.g. * amexdirect * barclays2 * CUP * EFTPOS * fdiglobal * gpngsapv3 * gpx * smartfdc * tsys * vero * VPC For VPC, CUP and EFTPOS processors, replace the processor name from VPC or CUP or EFTPOS to the actual processor name in the sample request. e.g. replace VPC with &lt;your vpc processor&gt;
17
+ attr_accessor :processors
18
+
19
+ # Vendor code assigned by American Express. Applicable for TSYS (tsys) processor.
20
+ attr_accessor :amex_vendor_code
21
+
22
+ # Authorization Finality indicator. Please note that the input can be in small case or capitals but response is in small case as of now. It will be made capitals everywhere in the next version. Applicable for Elavon Americas (elavonamericas), TSYS (tsys), Barclays (barclays2), Streamline (streamline2), Six (six), Barclays HISO (barclayshiso), GPN (gpn), FDI Global (fdiglobal), GPX (gpx), Paymentech Tampa (paymentechtampa), FDC Nashville (smartfdc), VPC and Chase Paymentech Salem (chasepaymentechsalem) processors. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th><th>Default Value</th></tr></thead> <tr><td>Barclays</td><td>cnp, cp, hybrid</td><td>No</td><td>FINAL</td></tr> <tr><td>Barclays HISO</td><td>cnp, cp, hybrid</td><td>Yes</td><td>FINAL</td></tr> </table> Possible values: - PRE - FINAL - UNDEFINED
23
+ attr_accessor :default_auth_type_code
24
+
25
+ # MAID aka MasterCard assigned ID, MasterCard equivalent of Merchant Verification Value by Visa. Applicable for VPC, GPX (gpx) and FDI Global (fdiglobal) processors.
26
+ attr_accessor :master_card_assigned_id
27
+
28
+ # Allow merchants to accept partial authorization approvals. Applicable for Elavon Americas (elavonamericas), VPC, GPX (gpx), FDI Global (fdiglobal), FDC Nashville (smartfdc), GPN (gpn), TSYS (tsys), American Express Direct (amexdirect), Paymentech Tampa (paymentechtampa) and Chase Paymentech Salem (chasepaymentechsalem) processors. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th><th>Default Value</th></tr></thead> <tr><td>American Express Direct</td><td>cnp, cp, hybrid</td><td>No</td><td>No</td></tr> </table>
29
+ attr_accessor :enable_partial_auth
30
+
31
+ # Indicates type of business product or service of the merchant. Applicable for Chase Paymentech Salem (chasepaymentechsalem), FDI Global (fdiglobal), RUPAY, Elavon Americas (elavonamericas), American Express Direct (amexdirect), CMCIC (cmcic), GPX (gpx), VPC, TSYS (tsys), EFTPOS, CUP, Paymentech Tampa (paymentechtampa), CB2A, Barclays (barclays2), Prisma (prisma) and GPN (gpn) processors. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th><th>Min. Length</th><th>Max. Length</th><th>Regex</th></tr></thead> <tr><td>Barclays</td><td>cnp</td><td>No</td><td>4</td><td>4</td><td>^[0-9]+$</td></tr> <tr><td>American Express Direct</td><td>cnp, cp, hybrid</td><td>Yes</td><td>4</td><td>4</td><td>^[0-9]+$</td></tr> </table>
32
+ attr_accessor :merchant_category_code
33
+
34
+ # The Standard Industrial Classification (SIC) are four-digit codes that categorize the industries that companies belong to based on their business activities. Standard Industrial Classification codes were mostly replaced by the six-digit North American Industry Classification System (NAICS). Applicable for VPC and GPX (gpx) processors.
35
+ attr_accessor :sic_code
36
+
37
+ # Food and Consumer Service ID. Identifies the merchant as being certified and approved to accept Food Stamps. Applicable for GPX (gpx) processor.
38
+ attr_accessor :food_and_consumer_service_id
39
+
40
+ # Enables you to split an order into multiple shipments with multiple captures. This feature is provided by CyberSource and supports three different scenarios: * multiple authorizations * multiple captures * multiple authorizations with multiple captures Applicable for VPC processors.
41
+ attr_accessor :enable_split_shipment
42
+
43
+ # Reduces your interchange fees by using automatic authorization refresh and automatic partial authorization reversal. Applicable for VPC processors.
44
+ attr_accessor :enable_interchange_optimization
45
+
46
+ # Identifier provided to merchants who opt for Visa's delegated authorization program. Applicable for VPC processors.
47
+ attr_accessor :visa_delegated_authentication_id
48
+
49
+ # Blocks over-refunds when the aggregated refund amount is higher than the percentage set for this field. Applicable for GPX (gpx), VPC and Chase Paymentech Salem (chasepaymentechsalem) processors.
50
+ attr_accessor :credit_card_refund_limit_percent
51
+
52
+ # Limits refunds to the percentage set in this field. Applicable for GPX (gpx) and VPC processors.
53
+ attr_accessor :business_center_credit_card_refund_limit_percent
54
+
55
+ # Enables this merchant account to capture amounts greater than the authorization amount. Applicable for GPX (gpx), VPC, Paymentech Tampa (paymentechtampa) and Chase Paymentech Salem (chasepaymentechsalem) processors.
56
+ attr_accessor :allow_captures_greater_than_authorizations
57
+
58
+ # Helps prevent duplicate transactions. Applicable for VPC, GPX (gpx) and Chase Paymentech Salem (chasepaymentechsalem) processors.
59
+ attr_accessor :enable_duplicate_merchant_reference_number_blocking
60
+
61
+ # This is a local merchant ID used by merchants in addition to the conventional merchant ID. This value is sent to the issuer. Applicable for VPC and Prisma (prisma) processors.
62
+ attr_accessor :domestic_merchant_id
63
+
64
+ # Indicates whether merchant processes Level 3 transactions. Applicable for TSYS (tsys), Barclays (barclays2), Paymentech Tampa (paymentechtampa), FDI Global (fdiglobal), Elavon Americas (elavonamericas) and Chase Paymentech Salem (chasepaymentechsalem) processors. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th></tr></thead> <tr><td>Barclays</td><td>cnp</td><td>No</td></tr> </table>
65
+ attr_accessor :process_level3_data
66
+
67
+ # The ID assigned to the sub-merchant. Applicable for American Express Direct (amexdirect) processor. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th><th>Min. Length</th><th>Max. Length</th><th>Regex</th></tr></thead> <tr><td>American Express Direct</td><td>cnp, cp, hybrid</td><td>No</td><td>1</td><td>20</td><td>^[0-9a-zA-Z&#92;-&#92;_&#92;,\\s.]+$</td></tr> </table>
68
+ attr_accessor :sub_merchant_id
69
+
70
+ # Sub-merchant's business name. Applicable for American Express Direct (amexdirect) processor. Validation details (for selected processors)... <table> <thead><tr><th>Processor</th><th>Acceptance Type</th><th>Required</th><th>Min. Length</th><th>Max. Length</th><th>Regex</th></tr></thead> <tr><td>American Express Direct</td><td>cnp, cp, hybrid</td><td>No</td><td>1</td><td>37</td><td>^[0-9a-zA-Z&#92;-&#92;_&#92;,\\s.]+$</td></tr> </table>
71
+ attr_accessor :sub_merchant_business_name
72
+
73
+ # It denotes merchant's preference on secondary brand for routing in case of co-branded cards. Applicable for EFTPOS processors.
74
+ attr_accessor :prefer_cobadged_secondary_brand
75
+
76
+ attr_accessor :merchant_descriptor_information
77
+
78
+ # Indicates whether the merchant is government controlled. Applicable for VPC processors.
79
+ attr_accessor :government_controlled
80
+
81
+ # This field is used to indicate whether the merchant wants to drop the billing information from the request. If this field is set to true, then the billing information will be dropped from the request. If this field is set to false, then the billing information will be sent in the request.
82
+ attr_accessor :drop_billing_info
83
+
84
+ # Attribute mapping from ruby-style variable name to JSON key.
85
+ def self.attribute_map
86
+ {
87
+ :'processors' => :'processors',
88
+ :'amex_vendor_code' => :'amexVendorCode',
89
+ :'default_auth_type_code' => :'defaultAuthTypeCode',
90
+ :'master_card_assigned_id' => :'masterCardAssignedId',
91
+ :'enable_partial_auth' => :'enablePartialAuth',
92
+ :'merchant_category_code' => :'merchantCategoryCode',
93
+ :'sic_code' => :'sicCode',
94
+ :'food_and_consumer_service_id' => :'foodAndConsumerServiceId',
95
+ :'enable_split_shipment' => :'enableSplitShipment',
96
+ :'enable_interchange_optimization' => :'enableInterchangeOptimization',
97
+ :'visa_delegated_authentication_id' => :'visaDelegatedAuthenticationId',
98
+ :'credit_card_refund_limit_percent' => :'creditCardRefundLimitPercent',
99
+ :'business_center_credit_card_refund_limit_percent' => :'businessCenterCreditCardRefundLimitPercent',
100
+ :'allow_captures_greater_than_authorizations' => :'allowCapturesGreaterThanAuthorizations',
101
+ :'enable_duplicate_merchant_reference_number_blocking' => :'enableDuplicateMerchantReferenceNumberBlocking',
102
+ :'domestic_merchant_id' => :'domesticMerchantId',
103
+ :'process_level3_data' => :'processLevel3Data',
104
+ :'sub_merchant_id' => :'subMerchantId',
105
+ :'sub_merchant_business_name' => :'subMerchantBusinessName',
106
+ :'prefer_cobadged_secondary_brand' => :'preferCobadgedSecondaryBrand',
107
+ :'merchant_descriptor_information' => :'merchantDescriptorInformation',
108
+ :'government_controlled' => :'governmentControlled',
109
+ :'drop_billing_info' => :'dropBillingInfo'
110
+ }
111
+ end
112
+
113
+ # Attribute mapping from JSON key to ruby-style variable name.
114
+ def self.json_map
115
+ {
116
+ :'processors' => :'processors',
117
+ :'amex_vendor_code' => :'amex_vendor_code',
118
+ :'default_auth_type_code' => :'default_auth_type_code',
119
+ :'master_card_assigned_id' => :'master_card_assigned_id',
120
+ :'enable_partial_auth' => :'enable_partial_auth',
121
+ :'merchant_category_code' => :'merchant_category_code',
122
+ :'sic_code' => :'sic_code',
123
+ :'food_and_consumer_service_id' => :'food_and_consumer_service_id',
124
+ :'enable_split_shipment' => :'enable_split_shipment',
125
+ :'enable_interchange_optimization' => :'enable_interchange_optimization',
126
+ :'visa_delegated_authentication_id' => :'visa_delegated_authentication_id',
127
+ :'credit_card_refund_limit_percent' => :'credit_card_refund_limit_percent',
128
+ :'business_center_credit_card_refund_limit_percent' => :'business_center_credit_card_refund_limit_percent',
129
+ :'allow_captures_greater_than_authorizations' => :'allow_captures_greater_than_authorizations',
130
+ :'enable_duplicate_merchant_reference_number_blocking' => :'enable_duplicate_merchant_reference_number_blocking',
131
+ :'domestic_merchant_id' => :'domestic_merchant_id',
132
+ :'process_level3_data' => :'process_level3_data',
133
+ :'sub_merchant_id' => :'sub_merchant_id',
134
+ :'sub_merchant_business_name' => :'sub_merchant_business_name',
135
+ :'prefer_cobadged_secondary_brand' => :'prefer_cobadged_secondary_brand',
136
+ :'merchant_descriptor_information' => :'merchant_descriptor_information',
137
+ :'government_controlled' => :'government_controlled',
138
+ :'drop_billing_info' => :'drop_billing_info'
139
+ }
140
+ end
141
+
142
+ # Attribute type mapping.
143
+ def self.swagger_types
144
+ {
145
+ :'processors' => :'Hash<String, CardProcessingConfigCommonProcessors>',
146
+ :'amex_vendor_code' => :'String',
147
+ :'default_auth_type_code' => :'String',
148
+ :'master_card_assigned_id' => :'String',
149
+ :'enable_partial_auth' => :'BOOLEAN',
150
+ :'merchant_category_code' => :'String',
151
+ :'sic_code' => :'String',
152
+ :'food_and_consumer_service_id' => :'String',
153
+ :'enable_split_shipment' => :'BOOLEAN',
154
+ :'enable_interchange_optimization' => :'BOOLEAN',
155
+ :'visa_delegated_authentication_id' => :'String',
156
+ :'credit_card_refund_limit_percent' => :'String',
157
+ :'business_center_credit_card_refund_limit_percent' => :'String',
158
+ :'allow_captures_greater_than_authorizations' => :'BOOLEAN',
159
+ :'enable_duplicate_merchant_reference_number_blocking' => :'BOOLEAN',
160
+ :'domestic_merchant_id' => :'BOOLEAN',
161
+ :'process_level3_data' => :'String',
162
+ :'sub_merchant_id' => :'String',
163
+ :'sub_merchant_business_name' => :'String',
164
+ :'prefer_cobadged_secondary_brand' => :'BOOLEAN',
165
+ :'merchant_descriptor_information' => :'CardProcessingConfigCommonMerchantDescriptorInformation',
166
+ :'government_controlled' => :'BOOLEAN',
167
+ :'drop_billing_info' => :'BOOLEAN'
168
+ }
169
+ end
170
+
171
+ # Initializes the object
172
+ # @param [Hash] attributes Model attributes in the form of hash
173
+ def initialize(attributes = {})
174
+ return unless attributes.is_a?(Hash)
175
+
176
+ # convert string to symbol for hash key
177
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
178
+
179
+ if attributes.has_key?(:'processors')
180
+ if (value = attributes[:'processors']).is_a?(Hash)
181
+ self.processors = value
182
+ end
183
+ end
184
+
185
+ if attributes.has_key?(:'amexVendorCode')
186
+ self.amex_vendor_code = attributes[:'amexVendorCode']
187
+ end
188
+
189
+ if attributes.has_key?(:'defaultAuthTypeCode')
190
+ self.default_auth_type_code = attributes[:'defaultAuthTypeCode']
191
+ end
192
+
193
+ if attributes.has_key?(:'masterCardAssignedId')
194
+ self.master_card_assigned_id = attributes[:'masterCardAssignedId']
195
+ end
196
+
197
+ if attributes.has_key?(:'enablePartialAuth')
198
+ self.enable_partial_auth = attributes[:'enablePartialAuth']
199
+ end
200
+
201
+ if attributes.has_key?(:'merchantCategoryCode')
202
+ self.merchant_category_code = attributes[:'merchantCategoryCode']
203
+ end
204
+
205
+ if attributes.has_key?(:'sicCode')
206
+ self.sic_code = attributes[:'sicCode']
207
+ end
208
+
209
+ if attributes.has_key?(:'foodAndConsumerServiceId')
210
+ self.food_and_consumer_service_id = attributes[:'foodAndConsumerServiceId']
211
+ end
212
+
213
+ if attributes.has_key?(:'enableSplitShipment')
214
+ self.enable_split_shipment = attributes[:'enableSplitShipment']
215
+ end
216
+
217
+ if attributes.has_key?(:'enableInterchangeOptimization')
218
+ self.enable_interchange_optimization = attributes[:'enableInterchangeOptimization']
219
+ end
220
+
221
+ if attributes.has_key?(:'visaDelegatedAuthenticationId')
222
+ self.visa_delegated_authentication_id = attributes[:'visaDelegatedAuthenticationId']
223
+ end
224
+
225
+ if attributes.has_key?(:'creditCardRefundLimitPercent')
226
+ self.credit_card_refund_limit_percent = attributes[:'creditCardRefundLimitPercent']
227
+ end
228
+
229
+ if attributes.has_key?(:'businessCenterCreditCardRefundLimitPercent')
230
+ self.business_center_credit_card_refund_limit_percent = attributes[:'businessCenterCreditCardRefundLimitPercent']
231
+ end
232
+
233
+ if attributes.has_key?(:'allowCapturesGreaterThanAuthorizations')
234
+ self.allow_captures_greater_than_authorizations = attributes[:'allowCapturesGreaterThanAuthorizations']
235
+ end
236
+
237
+ if attributes.has_key?(:'enableDuplicateMerchantReferenceNumberBlocking')
238
+ self.enable_duplicate_merchant_reference_number_blocking = attributes[:'enableDuplicateMerchantReferenceNumberBlocking']
239
+ end
240
+
241
+ if attributes.has_key?(:'domesticMerchantId')
242
+ self.domestic_merchant_id = attributes[:'domesticMerchantId']
243
+ end
244
+
245
+ if attributes.has_key?(:'processLevel3Data')
246
+ self.process_level3_data = attributes[:'processLevel3Data']
247
+ end
248
+
249
+ if attributes.has_key?(:'subMerchantId')
250
+ self.sub_merchant_id = attributes[:'subMerchantId']
251
+ end
252
+
253
+ if attributes.has_key?(:'subMerchantBusinessName')
254
+ self.sub_merchant_business_name = attributes[:'subMerchantBusinessName']
255
+ end
256
+
257
+ if attributes.has_key?(:'preferCobadgedSecondaryBrand')
258
+ self.prefer_cobadged_secondary_brand = attributes[:'preferCobadgedSecondaryBrand']
259
+ end
260
+
261
+ if attributes.has_key?(:'merchantDescriptorInformation')
262
+ self.merchant_descriptor_information = attributes[:'merchantDescriptorInformation']
263
+ end
264
+
265
+ if attributes.has_key?(:'governmentControlled')
266
+ self.government_controlled = attributes[:'governmentControlled']
267
+ end
268
+
269
+ if attributes.has_key?(:'dropBillingInfo')
270
+ self.drop_billing_info = attributes[:'dropBillingInfo']
271
+ end
272
+ end
273
+
274
+ # Show invalid properties with the reasons. Usually used together with valid?
275
+ # @return Array for valid properties with the reasons
276
+ def list_invalid_properties
277
+ invalid_properties = Array.new
278
+ invalid_properties
279
+ end
280
+
281
+ # Check to see if the all the properties in the model are valid
282
+ # @return true if the model is valid
283
+ def valid?
284
+ true
285
+ end
286
+
287
+ # Checks equality by comparing each attribute.
288
+ # @param [Object] Object to be compared
289
+ def ==(o)
290
+ return true if self.equal?(o)
291
+ self.class == o.class &&
292
+ processors == o.processors &&
293
+ amex_vendor_code == o.amex_vendor_code &&
294
+ default_auth_type_code == o.default_auth_type_code &&
295
+ master_card_assigned_id == o.master_card_assigned_id &&
296
+ enable_partial_auth == o.enable_partial_auth &&
297
+ merchant_category_code == o.merchant_category_code &&
298
+ sic_code == o.sic_code &&
299
+ food_and_consumer_service_id == o.food_and_consumer_service_id &&
300
+ enable_split_shipment == o.enable_split_shipment &&
301
+ enable_interchange_optimization == o.enable_interchange_optimization &&
302
+ visa_delegated_authentication_id == o.visa_delegated_authentication_id &&
303
+ credit_card_refund_limit_percent == o.credit_card_refund_limit_percent &&
304
+ business_center_credit_card_refund_limit_percent == o.business_center_credit_card_refund_limit_percent &&
305
+ allow_captures_greater_than_authorizations == o.allow_captures_greater_than_authorizations &&
306
+ enable_duplicate_merchant_reference_number_blocking == o.enable_duplicate_merchant_reference_number_blocking &&
307
+ domestic_merchant_id == o.domestic_merchant_id &&
308
+ process_level3_data == o.process_level3_data &&
309
+ sub_merchant_id == o.sub_merchant_id &&
310
+ sub_merchant_business_name == o.sub_merchant_business_name &&
311
+ prefer_cobadged_secondary_brand == o.prefer_cobadged_secondary_brand &&
312
+ merchant_descriptor_information == o.merchant_descriptor_information &&
313
+ government_controlled == o.government_controlled &&
314
+ drop_billing_info == o.drop_billing_info
315
+ end
316
+
317
+ # @see the `==` method
318
+ # @param [Object] Object to be compared
319
+ def eql?(o)
320
+ self == o
321
+ end
322
+
323
+ # Calculates hash code according to all attributes.
324
+ # @return [Fixnum] Hash code
325
+ def hash
326
+ [processors, amex_vendor_code, default_auth_type_code, master_card_assigned_id, enable_partial_auth, merchant_category_code, sic_code, food_and_consumer_service_id, enable_split_shipment, enable_interchange_optimization, visa_delegated_authentication_id, credit_card_refund_limit_percent, business_center_credit_card_refund_limit_percent, allow_captures_greater_than_authorizations, enable_duplicate_merchant_reference_number_blocking, domestic_merchant_id, process_level3_data, sub_merchant_id, sub_merchant_business_name, prefer_cobadged_secondary_brand, merchant_descriptor_information, government_controlled, drop_billing_info].hash
327
+ end
328
+
329
+ # Builds the object from hash
330
+ # @param [Hash] attributes Model attributes in the form of hash
331
+ # @return [Object] Returns the model itself
332
+ def build_from_hash(attributes)
333
+ return nil unless attributes.is_a?(Hash)
334
+ self.class.swagger_types.each_pair do |key, type|
335
+ if type =~ /\AArray<(.*)>/i
336
+ # check to ensure the input is an array given that the the attribute
337
+ # is documented as an array but the input is not
338
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
339
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
340
+ end
341
+ elsif !attributes[self.class.attribute_map[key]].nil?
342
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
343
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
344
+ end
345
+
346
+ self
347
+ end
348
+
349
+ # Deserializes the data based on type
350
+ # @param string type Data type
351
+ # @param string value Value to be deserialized
352
+ # @return [Object] Deserialized data
353
+ def _deserialize(type, value)
354
+ case type.to_sym
355
+ when :DateTime
356
+ DateTime.parse(value)
357
+ when :Date
358
+ Date.parse(value)
359
+ when :String
360
+ value.to_s
361
+ when :Integer
362
+ value.to_i
363
+ when :Float
364
+ value.to_f
365
+ when :BOOLEAN
366
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
367
+ true
368
+ else
369
+ false
370
+ end
371
+ when :Object
372
+ # generic object (usually a Hash), return directly
373
+ value
374
+ when /\AArray<(?<inner_type>.+)>\z/
375
+ inner_type = Regexp.last_match[:inner_type]
376
+ value.map { |v| _deserialize(inner_type, v) }
377
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
378
+ k_type = Regexp.last_match[:k_type]
379
+ v_type = Regexp.last_match[:v_type]
380
+ {}.tap do |hash|
381
+ value.each do |k, v|
382
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
383
+ end
384
+ end
385
+ else # model
386
+ temp_model = CyberSource.const_get(type).new
387
+ temp_model.build_from_hash(value)
388
+ end
389
+ end
390
+
391
+ # Returns the string representation of the object
392
+ # @return [String] String presentation of the object
393
+ def to_s
394
+ to_hash.to_s
395
+ end
396
+
397
+ # to_body is an alias to to_hash (backward compatibility)
398
+ # @return [Hash] Returns the object in the form of hash
399
+ def to_body
400
+ to_hash
401
+ end
402
+
403
+ # Returns the object in the form of hash
404
+ # @return [Hash] Returns the object in the form of hash
405
+ def to_hash
406
+ hash = {}
407
+ self.class.attribute_map.each_pair do |attr, param|
408
+ value = self.send(attr)
409
+ next if value.nil?
410
+ hash[param] = _to_hash(value)
411
+ end
412
+ hash
413
+ end
414
+
415
+ # Outputs non-array value in the form of hash
416
+ # For object, use to_hash. Otherwise, just return the value
417
+ # @param [Object] value Any valid value
418
+ # @return [Hash] Returns the value in the form of hash
419
+ def _to_hash(value)
420
+ if value.is_a?(Array)
421
+ value.compact.map { |v| _to_hash(v) }
422
+ elsif value.is_a?(Hash)
423
+ {}.tap do |hash|
424
+ value.each { |k, v| hash[k] = _to_hash(v) }
425
+ end
426
+ elsif value.respond_to? :to_hash
427
+ value.to_hash
428
+ else
429
+ value
430
+ end
431
+ end
432
+ end
433
+ end