first_data_gateway 1.4.0 → 1.5.0

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 (668) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/docs/AirlineTravelRoute.md +1 -1
  4. data/docs/BancontactQR.md +19 -0
  5. data/docs/Billing.md +1 -1
  6. data/docs/BillingAddress.md +1 -1
  7. data/docs/BlockCard.md +21 -0
  8. data/docs/BlockDomain.md +17 -0
  9. data/docs/BlockIPAddress.md +19 -0
  10. data/docs/BlockName.md +19 -0
  11. data/docs/BlockedCardNumber.md +19 -0
  12. data/docs/BlockedItems.md +23 -0
  13. data/docs/CarRental.md +2 -2
  14. data/docs/ClientRegistration.md +29 -0
  15. data/docs/CountryProfile.md +17 -0
  16. data/docs/CustomerAddress.md +3 -3
  17. data/docs/DecryptedApplePay.md +31 -0
  18. data/docs/DecryptedApplePayWalletPaymentMethod.md +17 -0
  19. data/docs/DecryptedApplePayWalletPaymentMethodAllOf.md +17 -0
  20. data/docs/DecryptedGooglePay.md +31 -0
  21. data/docs/DecryptedGooglePayWalletPaymentMethod.md +17 -0
  22. data/docs/DecryptedGooglePayWalletPaymentMethodAllOf.md +17 -0
  23. data/docs/DecryptedSamsungPay.md +31 -0
  24. data/docs/DecryptedSamsungPayWalletPaymentMethod.md +17 -0
  25. data/docs/DecryptedSamsungPayWalletPaymentMethodAllOf.md +17 -0
  26. data/docs/Device.md +1 -1
  27. data/docs/EncryptedSamsungPay.md +19 -0
  28. data/docs/EncryptedSamsungPayWalletPaymentMethod.md +17 -0
  29. data/docs/EncryptedSamsungPayWalletPaymentMethodAllOf.md +17 -0
  30. data/docs/ErrorMessage.md +19 -0
  31. data/docs/Expiration.md +2 -2
  32. data/docs/FraudAddress.md +27 -0
  33. data/docs/FraudDetectApi.md +124 -0
  34. data/docs/FraudOrder.md +1 -1
  35. data/docs/FraudRegistration.md +27 -0
  36. data/docs/FraudRegistrationCard.md +27 -0
  37. data/docs/FraudRegistrationDevice.md +39 -0
  38. data/docs/FraudRegistrationDeviceItems.md +27 -0
  39. data/docs/FraudRegistrationError.md +17 -0
  40. data/docs/FraudRegistrationResponse.md +27 -0
  41. data/docs/FraudScore.md +23 -0
  42. data/docs/FraudSettings.md +23 -0
  43. data/docs/FraudSettingsResponse.md +37 -0
  44. data/docs/{PaymentIssuerResponse.md → IssuerResponse.md} +2 -2
  45. data/docs/{DeviceNetworks.md → Items.md} +2 -2
  46. data/docs/{MerchantLocation.md → Location.md} +3 -3
  47. data/docs/LockoutTime.md +19 -0
  48. data/docs/Lodging.md +2 -2
  49. data/docs/MaximumPurchaseAmount.md +19 -0
  50. data/docs/Merchant.md +1 -1
  51. data/docs/{PaymentPayMethod.md → Method.md} +2 -2
  52. data/docs/Order.md +3 -1
  53. data/docs/OrderErrorResponse.md +3 -7
  54. data/docs/OrderResponse.md +3 -7
  55. data/docs/Payment.md +6 -6
  56. data/docs/PaymentApi.md +3 -3
  57. data/docs/PaymentDevice.md +27 -0
  58. data/docs/PaymentDeviceCreditTransaction.md +17 -0
  59. data/docs/PaymentDeviceCreditTransactionAllOf.md +17 -0
  60. data/docs/PaymentDeviceDisbursementTransaction.md +19 -0
  61. data/docs/PaymentDeviceDisbursementTransactionAllOf.md +19 -0
  62. data/docs/PaymentDevicePaymentMethod.md +19 -0
  63. data/docs/PaymentDevicePaymentMethodAllOf.md +19 -0
  64. data/docs/PaymentDevicePaymentTokenizationRequest.md +17 -0
  65. data/docs/PaymentDevicePaymentTokenizationRequestAllOf.md +17 -0
  66. data/docs/PaymentDevicePreAuthTransaction.md +25 -0
  67. data/docs/PaymentDevicePreAuthTransactionAllOf.md +25 -0
  68. data/docs/PaymentDeviceSaleTransaction.md +21 -0
  69. data/docs/PaymentDeviceSaleTransactionAllOf.md +21 -0
  70. data/docs/PaymentRegistration.md +39 -0
  71. data/docs/PaymentSchedulesRequest.md +1 -1
  72. data/docs/PaymentTokenApi.md +2 -2
  73. data/docs/PaymentURLApi.md +142 -0
  74. data/docs/PaymentUrlDetail.md +25 -0
  75. data/docs/PaymentUrlDetailResponse.md +23 -0
  76. data/docs/PaymentUrlStatus.md +16 -0
  77. data/docs/{CustomerAddressPhone.md → Phone.md} +2 -2
  78. data/docs/ProcessorData.md +5 -1
  79. data/docs/PurchaseCardsLevel3.md +1 -1
  80. data/docs/RecurringPaymentDetailsResponse.md +3 -7
  81. data/docs/RegistrationMethod.md +29 -0
  82. data/docs/RemoveFraudBlockedItemsResponse.md +23 -0
  83. data/docs/ScoreOnlyRequest.md +1 -1
  84. data/docs/SepaMandate.md +1 -1
  85. data/docs/SharedSecretConfigurationRequest.md +17 -0
  86. data/docs/SharedSecretConfigurationResponse.md +29 -0
  87. data/docs/{FraudOrderShipToAddress.md → ShipToAddress.md} +2 -2
  88. data/docs/StoreFraudSettings.md +19 -0
  89. data/docs/StoreFraudSettingsResult.md +21 -0
  90. data/docs/StoreUrlConfiguration.md +31 -0
  91. data/docs/StoreUrlConfigurationRequest.md +17 -0
  92. data/docs/StoreUrlConfigurationResponse.md +23 -0
  93. data/docs/StoreUrlConfigurationResult.md +19 -0
  94. data/docs/TokenIdentifier.md +17 -0
  95. data/docs/UpdateFraudSettingsRequest.md +17 -0
  96. data/docs/UpdateFraudSettingsResponse.md +23 -0
  97. data/docs/UsePaymentToken.md +5 -1
  98. data/docs/{PaymentVerification3ds.md → Verification3ds.md} +2 -2
  99. data/docs/{PaymentVerificationAvs.md → VerificationAvs.md} +2 -2
  100. data/docs/{PaymentVerificationCvv.md → VerificationCvv.md} +2 -2
  101. data/lib/openapi_client.rb +34 -1
  102. data/lib/openapi_client/.DS_Store +0 -0
  103. data/lib/openapi_client/api/authentication_api.rb +1 -1
  104. data/lib/openapi_client/api/card_info_lookup_api.rb +1 -1
  105. data/lib/openapi_client/api/card_verification_api.rb +1 -1
  106. data/lib/openapi_client/api/currency_conversion_api.rb +1 -1
  107. data/lib/openapi_client/api/fraud_detect_api.rb +1 -1
  108. data/lib/openapi_client/api/order_api.rb +1 -1
  109. data/lib/openapi_client/api/payment_api.rb +1 -1
  110. data/lib/openapi_client/api/payment_schedules_api.rb +1 -1
  111. data/lib/openapi_client/api/payment_token_api.rb +1 -1
  112. data/lib/openapi_client/api/payment_url_api.rb +1 -1
  113. data/lib/openapi_client/api_client.rb +1 -2
  114. data/lib/openapi_client/api_error.rb +1 -1
  115. data/lib/openapi_client/configuration.rb +4 -3
  116. data/lib/openapi_client/models/access_token_response.rb +1 -1
  117. data/lib/openapi_client/models/account_updater_response.rb +1 -1
  118. data/lib/openapi_client/models/additional_amount_rate.rb +1 -1
  119. data/lib/openapi_client/models/additional_details.rb +1 -1
  120. data/lib/openapi_client/models/additional_transaction_details.rb +1 -1
  121. data/lib/openapi_client/models/address.rb +1 -1
  122. data/lib/openapi_client/models/airline.rb +1 -1
  123. data/lib/openapi_client/models/airline_ancillary_service_category.rb +1 -1
  124. data/lib/openapi_client/models/airline_travel_route.rb +1 -1
  125. data/lib/openapi_client/models/ali_pay.rb +1 -1
  126. data/lib/openapi_client/models/ali_pay_payment_method.rb +1 -1
  127. data/lib/openapi_client/models/ali_pay_payment_method_all_of.rb +1 -1
  128. data/lib/openapi_client/models/ali_pay_sale_transaction.rb +10 -16
  129. data/lib/openapi_client/models/ali_pay_sale_transaction_all_of.rb +89 -2
  130. data/lib/openapi_client/models/amount.rb +1 -1
  131. data/lib/openapi_client/models/amount_components.rb +1 -1
  132. data/lib/openapi_client/models/authentication.rb +1 -1
  133. data/lib/openapi_client/models/authentication_redirect.rb +1 -1
  134. data/lib/openapi_client/models/authentication_redirect_params.rb +1 -1
  135. data/lib/openapi_client/models/authentication_verification_request.rb +1 -1
  136. data/lib/openapi_client/models/avs_response.rb +1 -1
  137. data/lib/openapi_client/models/bancontact_qr.rb +262 -0
  138. data/lib/openapi_client/models/basic_response.rb +1 -1
  139. data/lib/openapi_client/models/billing.rb +1 -1
  140. data/lib/openapi_client/models/billing_address.rb +1 -1
  141. data/lib/openapi_client/models/block_card.rb +233 -0
  142. data/lib/openapi_client/models/block_domain.rb +198 -0
  143. data/lib/openapi_client/models/block_ip_address.rb +208 -0
  144. data/lib/openapi_client/models/block_name.rb +208 -0
  145. data/lib/openapi_client/models/blocked_card_number.rb +208 -0
  146. data/lib/openapi_client/models/blocked_items.rb +224 -0
  147. data/lib/openapi_client/models/car_rental.rb +1 -1
  148. data/lib/openapi_client/models/car_rental_extra_charges.rb +1 -1
  149. data/lib/openapi_client/models/card.rb +1 -1
  150. data/lib/openapi_client/models/card_function.rb +1 -1
  151. data/lib/openapi_client/models/card_info.rb +1 -1
  152. data/lib/openapi_client/models/card_info_lookup_request.rb +1 -1
  153. data/lib/openapi_client/models/card_info_lookup_response.rb +1 -1
  154. data/lib/openapi_client/models/card_verification_request.rb +1 -1
  155. data/lib/openapi_client/models/china_domestic.rb +1 -1
  156. data/lib/openapi_client/models/china_domestic_payment_method.rb +1 -1
  157. data/lib/openapi_client/models/china_domestic_payment_method_all_of.rb +1 -1
  158. data/lib/openapi_client/models/china_pn_r_sale_transaction.rb +10 -16
  159. data/lib/openapi_client/models/china_pn_r_sale_transaction_all_of.rb +89 -2
  160. data/lib/openapi_client/models/client_locale.rb +1 -1
  161. data/lib/openapi_client/models/client_registration.rb +1 -1
  162. data/lib/openapi_client/models/contact.rb +1 -1
  163. data/lib/openapi_client/models/country_profile.rb +198 -0
  164. data/lib/openapi_client/models/create_payment_token.rb +1 -1
  165. data/lib/openapi_client/models/currency_conversion.rb +1 -1
  166. data/lib/openapi_client/models/customer.rb +1 -1
  167. data/lib/openapi_client/models/customer_address.rb +1 -1
  168. data/lib/openapi_client/models/dcc.rb +13 -23
  169. data/lib/openapi_client/models/dcc_all_of.rb +39 -2
  170. data/lib/openapi_client/models/dcc_exchange_rate_request.rb +10 -16
  171. data/lib/openapi_client/models/dcc_exchange_rate_request_all_of.rb +47 -2
  172. data/lib/openapi_client/models/decrypted_apple_pay.rb +464 -0
  173. data/lib/openapi_client/models/decrypted_apple_pay_wallet_payment_method.rb +224 -0
  174. data/lib/openapi_client/models/decrypted_apple_pay_wallet_payment_method_all_of.rb +211 -0
  175. data/lib/openapi_client/models/decrypted_google_pay.rb +464 -0
  176. data/lib/openapi_client/models/decrypted_google_pay_wallet_payment_method.rb +224 -0
  177. data/lib/openapi_client/models/decrypted_google_pay_wallet_payment_method_all_of.rb +211 -0
  178. data/lib/openapi_client/models/decrypted_samsung_pay.rb +464 -0
  179. data/lib/openapi_client/models/decrypted_samsung_pay_wallet_payment_method.rb +224 -0
  180. data/lib/openapi_client/models/decrypted_samsung_pay_wallet_payment_method_all_of.rb +211 -0
  181. data/lib/openapi_client/models/device.rb +1 -1
  182. data/lib/openapi_client/models/disbursement.rb +1 -1
  183. data/lib/openapi_client/models/disbursement_transaction_type.rb +12 -22
  184. data/lib/openapi_client/models/disbursement_transaction_type_all_of.rb +215 -0
  185. data/lib/openapi_client/models/document.rb +1 -1
  186. data/lib/openapi_client/models/dynamic_pricing.rb +13 -23
  187. data/lib/openapi_client/models/dynamic_pricing_all_of.rb +39 -2
  188. data/lib/openapi_client/models/dynamic_pricing_exchange_rate_request.rb +10 -16
  189. data/lib/openapi_client/models/dynamic_pricing_exchange_rate_request_all_of.rb +47 -2
  190. data/lib/openapi_client/models/encrypted_apple_pay.rb +1 -1
  191. data/lib/openapi_client/models/encrypted_apple_pay_header.rb +1 -1
  192. data/lib/openapi_client/models/encrypted_apple_pay_wallet_payment_method.rb +10 -11
  193. data/lib/openapi_client/models/encrypted_apple_pay_wallet_payment_method_all_of.rb +12 -2
  194. data/lib/openapi_client/models/encrypted_google_pay.rb +1 -1
  195. data/lib/openapi_client/models/encrypted_google_pay_data.rb +1 -1
  196. data/lib/openapi_client/models/encrypted_google_pay_wallet_payment_method.rb +10 -11
  197. data/lib/openapi_client/models/encrypted_google_pay_wallet_payment_method_all_of.rb +12 -2
  198. data/lib/openapi_client/models/encrypted_samsung_pay.rb +1 -1
  199. data/lib/openapi_client/models/encrypted_samsung_pay_wallet_payment_method.rb +10 -11
  200. data/lib/openapi_client/models/encrypted_samsung_pay_wallet_payment_method_all_of.rb +12 -2
  201. data/lib/openapi_client/models/error.rb +1 -1
  202. data/lib/openapi_client/models/error_details.rb +1 -1
  203. data/lib/openapi_client/models/error_message.rb +1 -1
  204. data/lib/openapi_client/models/error_response.rb +1 -1
  205. data/lib/openapi_client/models/exchange_rate_request.rb +1 -1
  206. data/lib/openapi_client/models/exchange_rate_response.rb +1 -1
  207. data/lib/openapi_client/models/expiration.rb +9 -9
  208. data/lib/openapi_client/models/fraud_address.rb +1 -1
  209. data/lib/openapi_client/models/fraud_order.rb +1 -1
  210. data/lib/openapi_client/models/fraud_order_items.rb +1 -1
  211. data/lib/openapi_client/models/fraud_registration.rb +1 -1
  212. data/lib/openapi_client/models/fraud_registration_card.rb +1 -1
  213. data/lib/openapi_client/models/fraud_registration_device.rb +1 -1
  214. data/lib/openapi_client/models/fraud_registration_device_items.rb +1 -1
  215. data/lib/openapi_client/models/fraud_registration_error.rb +1 -1
  216. data/lib/openapi_client/models/fraud_registration_response.rb +1 -1
  217. data/lib/openapi_client/models/fraud_score.rb +1 -1
  218. data/lib/openapi_client/models/fraud_settings.rb +226 -0
  219. data/lib/openapi_client/models/fraud_settings_response.rb +313 -0
  220. data/lib/openapi_client/models/frequency.rb +1 -1
  221. data/lib/openapi_client/models/funding_transaction_type.rb +12 -22
  222. data/lib/openapi_client/models/funding_transaction_type_all_of.rb +215 -0
  223. data/lib/openapi_client/models/industry_specific_extensions.rb +1 -1
  224. data/lib/openapi_client/models/installment_options.rb +1 -1
  225. data/lib/openapi_client/models/issuer_response.rb +1 -1
  226. data/lib/openapi_client/models/items.rb +1 -1
  227. data/lib/openapi_client/models/location.rb +1 -1
  228. data/lib/openapi_client/models/lockout_time.rb +208 -0
  229. data/lib/openapi_client/models/lodging.rb +1 -1
  230. data/lib/openapi_client/models/lodging_extra_charges.rb +1 -1
  231. data/lib/openapi_client/models/loyalty.rb +1 -1
  232. data/lib/openapi_client/models/maximum_purchase_amount.rb +218 -0
  233. data/lib/openapi_client/models/merchant.rb +1 -1
  234. data/lib/openapi_client/models/method.rb +1 -1
  235. data/lib/openapi_client/models/order.rb +14 -5
  236. data/lib/openapi_client/models/order_error_response.rb +1 -1
  237. data/lib/openapi_client/models/order_response.rb +1 -1
  238. data/lib/openapi_client/models/pay_pal.rb +1 -1
  239. data/lib/openapi_client/models/pay_pal_payment_method.rb +1 -1
  240. data/lib/openapi_client/models/pay_pal_payment_method_all_of.rb +1 -1
  241. data/lib/openapi_client/models/payment.rb +1 -1
  242. data/lib/openapi_client/models/payment_card.rb +1 -1
  243. data/lib/openapi_client/models/payment_card_credit_transaction.rb +10 -16
  244. data/lib/openapi_client/models/payment_card_disbursement_transaction.rb +10 -16
  245. data/lib/openapi_client/models/payment_card_disbursement_transaction_all_of.rb +89 -2
  246. data/lib/openapi_client/models/payment_card_forced_ticket_transaction.rb +10 -16
  247. data/lib/openapi_client/models/payment_card_forced_ticket_transaction_all_of.rb +89 -2
  248. data/lib/openapi_client/models/payment_card_payer_auth_transaction.rb +10 -16
  249. data/lib/openapi_client/models/payment_card_payer_auth_transaction_all_of.rb +89 -2
  250. data/lib/openapi_client/models/payment_card_payment_method.rb +1 -1
  251. data/lib/openapi_client/models/payment_card_payment_method_all_of.rb +1 -1
  252. data/lib/openapi_client/models/payment_card_payment_tokenization_request.rb +10 -16
  253. data/lib/openapi_client/models/payment_card_payment_tokenization_request_all_of.rb +67 -2
  254. data/lib/openapi_client/models/payment_card_pre_auth_transaction.rb +10 -16
  255. data/lib/openapi_client/models/payment_card_pre_auth_transaction_all_of.rb +89 -2
  256. data/lib/openapi_client/models/payment_card_sale_transaction.rb +10 -16
  257. data/lib/openapi_client/models/payment_card_sale_transaction_all_of.rb +89 -2
  258. data/lib/openapi_client/models/payment_device.rb +1 -1
  259. data/lib/openapi_client/models/payment_device_credit_transaction.rb +10 -16
  260. data/lib/openapi_client/models/payment_device_credit_transaction_all_of.rb +89 -2
  261. data/lib/openapi_client/models/payment_device_disbursement_transaction.rb +10 -16
  262. data/lib/openapi_client/models/payment_device_disbursement_transaction_all_of.rb +89 -2
  263. data/lib/openapi_client/models/payment_device_payment_method.rb +1 -1
  264. data/lib/openapi_client/models/payment_device_payment_method_all_of.rb +1 -1
  265. data/lib/openapi_client/models/payment_device_payment_tokenization_request.rb +10 -16
  266. data/lib/openapi_client/models/payment_device_payment_tokenization_request_all_of.rb +67 -2
  267. data/lib/openapi_client/models/payment_device_pre_auth_transaction.rb +10 -16
  268. data/lib/openapi_client/models/payment_device_pre_auth_transaction_all_of.rb +89 -2
  269. data/lib/openapi_client/models/payment_device_sale_transaction.rb +10 -16
  270. data/lib/openapi_client/models/payment_device_sale_transaction_all_of.rb +89 -2
  271. data/lib/openapi_client/models/payment_facilitator.rb +1 -1
  272. data/lib/openapi_client/models/payment_method_details.rb +1 -1
  273. data/lib/openapi_client/models/payment_method_payment_schedules_request.rb +10 -26
  274. data/lib/openapi_client/models/payment_method_payment_schedules_request_all_of.rb +219 -2
  275. data/lib/openapi_client/models/payment_method_type.rb +1 -1
  276. data/lib/openapi_client/models/payment_registration.rb +1 -1
  277. data/lib/openapi_client/models/payment_schedules_error_response.rb +1 -1
  278. data/lib/openapi_client/models/payment_schedules_request.rb +1 -1
  279. data/lib/openapi_client/models/payment_schedules_response.rb +1 -1
  280. data/lib/openapi_client/models/payment_token_credit_transaction.rb +10 -16
  281. data/lib/openapi_client/models/payment_token_credit_transaction_all_of.rb +89 -2
  282. data/lib/openapi_client/models/payment_token_details.rb +1 -1
  283. data/lib/openapi_client/models/payment_token_details_all_of.rb +36 -2
  284. data/lib/openapi_client/models/payment_token_disbursement_transaction.rb +10 -16
  285. data/lib/openapi_client/models/payment_token_disbursement_transaction_all_of.rb +89 -2
  286. data/lib/openapi_client/models/payment_token_payment_method.rb +1 -1
  287. data/lib/openapi_client/models/payment_token_payment_method_all_of.rb +1 -1
  288. data/lib/openapi_client/models/payment_token_pre_auth_transaction.rb +10 -16
  289. data/lib/openapi_client/models/payment_token_pre_auth_transaction_all_of.rb +89 -2
  290. data/lib/openapi_client/models/payment_token_sale_transaction.rb +10 -16
  291. data/lib/openapi_client/models/payment_token_sale_transaction_all_of.rb +89 -2
  292. data/lib/openapi_client/models/payment_tokenization_error_response.rb +1 -1
  293. data/lib/openapi_client/models/payment_tokenization_request.rb +1 -1
  294. data/lib/openapi_client/models/payment_tokenization_response.rb +1 -1
  295. data/lib/openapi_client/models/payment_url_detail.rb +1 -1
  296. data/lib/openapi_client/models/payment_url_detail_response.rb +1 -1
  297. data/lib/openapi_client/models/payment_url_error_response.rb +1 -1
  298. data/lib/openapi_client/models/payment_url_request.rb +1 -1
  299. data/lib/openapi_client/models/payment_url_response.rb +1 -1
  300. data/lib/openapi_client/models/payment_url_status.rb +1 -1
  301. data/lib/openapi_client/models/paypal_credit_transaction.rb +10 -16
  302. data/lib/openapi_client/models/paypal_credit_transaction_all_of.rb +89 -2
  303. data/lib/openapi_client/models/phone.rb +1 -1
  304. data/lib/openapi_client/models/post_auth_transaction.rb +10 -11
  305. data/lib/openapi_client/models/post_auth_transaction_all_of.rb +47 -2
  306. data/lib/openapi_client/models/primary_transaction.rb +1 -1
  307. data/lib/openapi_client/models/processor_data.rb +27 -7
  308. data/lib/openapi_client/models/purchase_cards.rb +1 -1
  309. data/lib/openapi_client/models/purchase_cards_level2.rb +1 -1
  310. data/lib/openapi_client/models/purchase_cards_level3.rb +1 -1
  311. data/lib/openapi_client/models/purchase_cards_level3_line_items.rb +1 -1
  312. data/lib/openapi_client/models/receiver_info.rb +1 -1
  313. data/lib/openapi_client/models/recurring_payment_details.rb +1 -1
  314. data/lib/openapi_client/models/recurring_payment_details_response.rb +1 -1
  315. data/lib/openapi_client/models/referenced_order_payment_schedules_request.rb +10 -26
  316. data/lib/openapi_client/models/referenced_order_payment_schedules_request_all_of.rb +219 -2
  317. data/lib/openapi_client/models/referenced_order_payment_tokenization_request.rb +10 -16
  318. data/lib/openapi_client/models/referenced_order_payment_tokenization_request_all_of.rb +67 -2
  319. data/lib/openapi_client/models/registration_method.rb +1 -1
  320. data/lib/openapi_client/models/remove_fraud_blocked_items_response.rb +234 -0
  321. data/lib/openapi_client/models/response_amount_components.rb +1 -1
  322. data/lib/openapi_client/models/response_amount_components_all_of.rb +62 -2
  323. data/lib/openapi_client/models/response_type.rb +1 -1
  324. data/lib/openapi_client/models/return_transaction.rb +10 -11
  325. data/lib/openapi_client/models/return_transaction_all_of.rb +47 -2
  326. data/lib/openapi_client/models/score_only_request.rb +1 -1
  327. data/lib/openapi_client/models/score_only_response.rb +1 -1
  328. data/lib/openapi_client/models/score_only_response_fraud_score.rb +13 -3
  329. data/lib/openapi_client/models/score_only_response_fraud_score_explanations.rb +1 -1
  330. data/lib/openapi_client/models/secondary_transaction.rb +1 -1
  331. data/lib/openapi_client/models/secure3_d10_authentication_result.rb +10 -11
  332. data/lib/openapi_client/models/secure3_d10_authentication_result_all_of.rb +12 -2
  333. data/lib/openapi_client/models/secure3_d21_authentication_result.rb +10 -11
  334. data/lib/openapi_client/models/secure3_d21_authentication_result_all_of.rb +12 -2
  335. data/lib/openapi_client/models/secure3d_authentication_request.rb +12 -12
  336. data/lib/openapi_client/models/secure3d_authentication_request_all_of.rb +197 -0
  337. data/lib/openapi_client/models/secure3d_authentication_verification_request.rb +10 -11
  338. data/lib/openapi_client/models/secure3d_authentication_verification_request_all_of.rb +56 -2
  339. data/lib/openapi_client/models/secure3d_response.rb +1 -1
  340. data/lib/openapi_client/models/sender_info.rb +1 -1
  341. data/lib/openapi_client/models/sepa.rb +1 -1
  342. data/lib/openapi_client/models/sepa_mandate.rb +1 -1
  343. data/lib/openapi_client/models/sepa_payment_method.rb +1 -1
  344. data/lib/openapi_client/models/sepa_payment_method_all_of.rb +1 -1
  345. data/lib/openapi_client/models/sepa_sale_transaction.rb +10 -16
  346. data/lib/openapi_client/models/sepa_sale_transaction_all_of.rb +89 -2
  347. data/lib/openapi_client/models/shared_secret_configuration_request.rb +224 -0
  348. data/lib/openapi_client/models/shared_secret_configuration_response.rb +264 -0
  349. data/lib/openapi_client/models/ship_to_address.rb +1 -1
  350. data/lib/openapi_client/models/shipping.rb +1 -1
  351. data/lib/openapi_client/models/soft_descriptor.rb +1 -1
  352. data/lib/openapi_client/models/split_shipment.rb +1 -1
  353. data/lib/openapi_client/models/store_fraud_settings.rb +217 -0
  354. data/lib/openapi_client/models/store_fraud_settings_result.rb +217 -0
  355. data/lib/openapi_client/models/store_url_configuration.rb +272 -0
  356. data/lib/openapi_client/models/store_url_configuration_request.rb +199 -0
  357. data/lib/openapi_client/models/store_url_configuration_response.rb +235 -0
  358. data/lib/openapi_client/models/store_url_configuration_result.rb +207 -0
  359. data/lib/openapi_client/models/stored_credential.rb +1 -1
  360. data/lib/openapi_client/models/sub_merchant_data.rb +1 -1
  361. data/lib/openapi_client/models/sub_merchant_split.rb +1 -1
  362. data/lib/openapi_client/models/token_identifier.rb +198 -0
  363. data/lib/openapi_client/models/transaction_error_response.rb +1 -1
  364. data/lib/openapi_client/models/transaction_origin.rb +1 -1
  365. data/lib/openapi_client/models/transaction_response.rb +1 -1
  366. data/lib/openapi_client/models/transaction_type.rb +1 -1
  367. data/lib/openapi_client/models/union_pay_authentication_request.rb +10 -11
  368. data/lib/openapi_client/models/union_pay_authentication_request_all_of.rb +12 -2
  369. data/lib/openapi_client/models/union_pay_authentication_verification_request.rb +10 -11
  370. data/lib/openapi_client/models/union_pay_authentication_verification_request_all_of.rb +56 -2
  371. data/lib/openapi_client/models/update_fraud_settings_request.rb +199 -0
  372. data/lib/openapi_client/models/update_fraud_settings_response.rb +235 -0
  373. data/lib/openapi_client/models/use_payment_token.rb +14 -5
  374. data/lib/openapi_client/models/verification3ds.rb +1 -1
  375. data/lib/openapi_client/models/verification_avs.rb +1 -1
  376. data/lib/openapi_client/models/verification_cvv.rb +1 -1
  377. data/lib/openapi_client/models/void_transaction.rb +12 -12
  378. data/lib/openapi_client/models/void_transaction_all_of.rb +232 -0
  379. data/lib/openapi_client/models/wallet_payment_method.rb +2 -2
  380. data/lib/openapi_client/models/wallet_pre_auth_transaction.rb +10 -16
  381. data/lib/openapi_client/models/wallet_pre_auth_transaction_all_of.rb +89 -2
  382. data/lib/openapi_client/models/wallet_sale_transaction.rb +10 -16
  383. data/lib/openapi_client/models/wallet_sale_transaction_all_of.rb +89 -2
  384. data/lib/openapi_client/version.rb +2 -2
  385. data/lib/simple/client_context.rb +2 -2
  386. data/lib/simple/gateway.rb +2 -2
  387. data/spec/api/authentication_api_spec.rb +1 -1
  388. data/spec/api/card_info_lookup_api_spec.rb +1 -1
  389. data/spec/api/card_verification_api_spec.rb +1 -1
  390. data/spec/api/currency_conversion_api_spec.rb +1 -1
  391. data/spec/api/fraud_detect_api_spec.rb +37 -1
  392. data/spec/api/order_api_spec.rb +1 -1
  393. data/spec/api/payment_api_spec.rb +3 -3
  394. data/spec/api/payment_schedules_api_spec.rb +1 -1
  395. data/spec/api/payment_token_api_spec.rb +2 -2
  396. data/spec/api/payment_url_api_spec.rb +46 -1
  397. data/spec/api_client_spec.rb +1 -1
  398. data/spec/configuration_spec.rb +1 -1
  399. data/spec/models/access_token_response_spec.rb +1 -1
  400. data/spec/models/account_updater_response_spec.rb +1 -1
  401. data/spec/models/additional_amount_rate_spec.rb +1 -1
  402. data/spec/models/additional_details_spec.rb +1 -1
  403. data/spec/models/additional_transaction_details_spec.rb +2 -2
  404. data/spec/models/address_spec.rb +1 -1
  405. data/spec/models/airline_ancillary_service_category_spec.rb +1 -1
  406. data/spec/models/airline_spec.rb +1 -1
  407. data/spec/models/airline_travel_route_spec.rb +1 -1
  408. data/spec/models/ali_pay_payment_method_all_of_spec.rb +1 -1
  409. data/spec/models/ali_pay_payment_method_spec.rb +1 -1
  410. data/spec/models/ali_pay_sale_transaction_all_of_spec.rb +1 -1
  411. data/spec/models/ali_pay_sale_transaction_spec.rb +1 -1
  412. data/spec/models/ali_pay_spec.rb +1 -1
  413. data/spec/models/amount_components_spec.rb +1 -1
  414. data/spec/models/amount_spec.rb +1 -1
  415. data/spec/models/authentication_redirect_params_spec.rb +1 -1
  416. data/spec/models/authentication_redirect_spec.rb +1 -1
  417. data/spec/models/authentication_spec.rb +1 -1
  418. data/spec/models/authentication_verification_request_spec.rb +1 -1
  419. data/spec/models/avs_response_spec.rb +1 -1
  420. data/spec/models/bancontact_qr_spec.rb +51 -0
  421. data/spec/models/basic_response_spec.rb +1 -1
  422. data/spec/models/billing_address_spec.rb +1 -1
  423. data/spec/models/billing_spec.rb +1 -1
  424. data/spec/models/block_card_spec.rb +53 -0
  425. data/spec/models/block_domain_spec.rb +41 -0
  426. data/spec/models/{customer_address_phone_spec.rb → block_ip_address_spec.rb} +9 -9
  427. data/spec/models/block_name_spec.rb +47 -0
  428. data/spec/models/blocked_card_number_spec.rb +47 -0
  429. data/spec/models/blocked_items_spec.rb +59 -0
  430. data/spec/models/car_rental_extra_charges_spec.rb +1 -1
  431. data/spec/models/car_rental_spec.rb +1 -1
  432. data/spec/models/card_function_spec.rb +1 -1
  433. data/spec/models/card_info_lookup_request_spec.rb +1 -1
  434. data/spec/models/card_info_lookup_response_spec.rb +1 -1
  435. data/spec/models/card_info_spec.rb +1 -1
  436. data/spec/models/card_spec.rb +1 -1
  437. data/spec/models/card_verification_request_spec.rb +1 -1
  438. data/spec/models/china_domestic_payment_method_all_of_spec.rb +1 -1
  439. data/spec/models/china_domestic_payment_method_spec.rb +1 -1
  440. data/spec/models/china_domestic_spec.rb +1 -1
  441. data/spec/models/china_pn_r_sale_transaction_all_of_spec.rb +1 -1
  442. data/spec/models/china_pn_r_sale_transaction_spec.rb +1 -1
  443. data/spec/models/client_locale_spec.rb +1 -1
  444. data/spec/models/client_registration_spec.rb +77 -0
  445. data/spec/models/contact_spec.rb +1 -1
  446. data/spec/models/country_profile_spec.rb +41 -0
  447. data/spec/models/create_payment_token_spec.rb +1 -1
  448. data/spec/models/currency_conversion_spec.rb +1 -1
  449. data/spec/models/customer_address_spec.rb +3 -3
  450. data/spec/models/customer_spec.rb +1 -1
  451. data/spec/models/dcc_all_of_spec.rb +1 -1
  452. data/spec/models/dcc_exchange_rate_request_all_of_spec.rb +1 -1
  453. data/spec/models/dcc_exchange_rate_request_spec.rb +1 -1
  454. data/spec/models/dcc_spec.rb +1 -1
  455. data/spec/models/decrypted_apple_pay_spec.rb +83 -0
  456. data/spec/models/decrypted_apple_pay_wallet_payment_method_all_of_spec.rb +41 -0
  457. data/spec/models/decrypted_apple_pay_wallet_payment_method_spec.rb +41 -0
  458. data/spec/models/decrypted_google_pay_spec.rb +83 -0
  459. data/spec/models/decrypted_google_pay_wallet_payment_method_all_of_spec.rb +41 -0
  460. data/spec/models/decrypted_google_pay_wallet_payment_method_spec.rb +41 -0
  461. data/spec/models/decrypted_samsung_pay_spec.rb +83 -0
  462. data/spec/models/decrypted_samsung_pay_wallet_payment_method_all_of_spec.rb +41 -0
  463. data/spec/models/decrypted_samsung_pay_wallet_payment_method_spec.rb +41 -0
  464. data/spec/models/device_spec.rb +1 -1
  465. data/spec/models/disbursement_spec.rb +1 -1
  466. data/spec/models/disbursement_transaction_type_spec.rb +1 -1
  467. data/spec/models/document_spec.rb +1 -1
  468. data/spec/models/dynamic_pricing_all_of_spec.rb +1 -1
  469. data/spec/models/dynamic_pricing_exchange_rate_request_all_of_spec.rb +1 -1
  470. data/spec/models/dynamic_pricing_exchange_rate_request_spec.rb +1 -1
  471. data/spec/models/dynamic_pricing_spec.rb +1 -1
  472. data/spec/models/encrypted_apple_pay_header_spec.rb +1 -1
  473. data/spec/models/encrypted_apple_pay_spec.rb +1 -1
  474. data/spec/models/encrypted_apple_pay_wallet_payment_method_all_of_spec.rb +1 -1
  475. data/spec/models/encrypted_apple_pay_wallet_payment_method_spec.rb +1 -1
  476. data/spec/models/encrypted_google_pay_data_spec.rb +1 -1
  477. data/spec/models/encrypted_google_pay_spec.rb +1 -1
  478. data/spec/models/encrypted_google_pay_wallet_payment_method_all_of_spec.rb +1 -1
  479. data/spec/models/encrypted_google_pay_wallet_payment_method_spec.rb +1 -1
  480. data/spec/models/encrypted_samsung_pay_spec.rb +47 -0
  481. data/spec/models/encrypted_samsung_pay_wallet_payment_method_all_of_spec.rb +41 -0
  482. data/spec/models/encrypted_samsung_pay_wallet_payment_method_spec.rb +41 -0
  483. data/spec/models/error_details_spec.rb +1 -1
  484. data/spec/models/error_message_spec.rb +47 -0
  485. data/spec/models/error_response_spec.rb +1 -1
  486. data/spec/models/error_spec.rb +1 -1
  487. data/spec/models/exchange_rate_request_spec.rb +1 -1
  488. data/spec/models/exchange_rate_response_spec.rb +1 -1
  489. data/spec/models/expiration_spec.rb +1 -1
  490. data/spec/models/{merchant_location_merchant_address_spec.rb → fraud_address_spec.rb} +7 -7
  491. data/spec/models/fraud_order_items_spec.rb +1 -1
  492. data/spec/models/fraud_order_spec.rb +1 -1
  493. data/spec/models/fraud_registration_card_spec.rb +71 -0
  494. data/spec/models/fraud_registration_device_items_spec.rb +75 -0
  495. data/spec/models/{transaction_spec.rb → fraud_registration_device_spec.rb} +21 -25
  496. data/spec/models/fraud_registration_error_spec.rb +41 -0
  497. data/spec/models/fraud_registration_response_spec.rb +75 -0
  498. data/spec/models/fraud_registration_spec.rb +71 -0
  499. data/spec/models/fraud_score_spec.rb +59 -0
  500. data/spec/models/fraud_settings_response_spec.rb +101 -0
  501. data/spec/models/fraud_settings_spec.rb +59 -0
  502. data/spec/models/frequency_spec.rb +1 -1
  503. data/spec/models/funding_transaction_type_spec.rb +1 -1
  504. data/spec/models/industry_specific_extensions_spec.rb +1 -1
  505. data/spec/models/installment_options_spec.rb +1 -1
  506. data/spec/models/{payment_issuer_response_spec.rb → issuer_response_spec.rb} +7 -7
  507. data/spec/models/{device_networks_spec.rb → items_spec.rb} +7 -7
  508. data/spec/models/{merchant_location_spec.rb → location_spec.rb} +7 -7
  509. data/spec/models/lockout_time_spec.rb +47 -0
  510. data/spec/models/lodging_extra_charges_spec.rb +1 -1
  511. data/spec/models/lodging_spec.rb +1 -1
  512. data/spec/models/loyalty_spec.rb +1 -1
  513. data/spec/models/maximum_purchase_amount_spec.rb +47 -0
  514. data/spec/models/merchant_spec.rb +1 -1
  515. data/spec/models/{payment_pay_method_spec.rb → method_spec.rb} +7 -7
  516. data/spec/models/order_error_response_spec.rb +2 -14
  517. data/spec/models/order_response_spec.rb +2 -14
  518. data/spec/models/order_spec.rb +7 -1
  519. data/spec/models/pay_pal_payment_method_all_of_spec.rb +1 -1
  520. data/spec/models/pay_pal_payment_method_spec.rb +1 -1
  521. data/spec/models/pay_pal_spec.rb +1 -1
  522. data/spec/models/payment_card_credit_transaction_spec.rb +1 -1
  523. data/spec/models/payment_card_disbursement_transaction_all_of_spec.rb +1 -1
  524. data/spec/models/payment_card_disbursement_transaction_spec.rb +1 -1
  525. data/spec/models/payment_card_forced_ticket_transaction_all_of_spec.rb +1 -1
  526. data/spec/models/payment_card_forced_ticket_transaction_spec.rb +1 -1
  527. data/spec/models/payment_card_payer_auth_transaction_all_of_spec.rb +1 -1
  528. data/spec/models/payment_card_payer_auth_transaction_spec.rb +1 -1
  529. data/spec/models/payment_card_payment_method_all_of_spec.rb +1 -1
  530. data/spec/models/payment_card_payment_method_spec.rb +1 -1
  531. data/spec/models/payment_card_payment_tokenization_request_all_of_spec.rb +1 -1
  532. data/spec/models/payment_card_payment_tokenization_request_spec.rb +1 -1
  533. data/spec/models/payment_card_pre_auth_transaction_all_of_spec.rb +1 -1
  534. data/spec/models/payment_card_pre_auth_transaction_spec.rb +1 -1
  535. data/spec/models/payment_card_sale_transaction_all_of_spec.rb +1 -1
  536. data/spec/models/payment_card_sale_transaction_spec.rb +1 -1
  537. data/spec/models/payment_card_spec.rb +1 -1
  538. data/spec/models/payment_device_credit_transaction_all_of_spec.rb +41 -0
  539. data/spec/models/payment_device_credit_transaction_spec.rb +41 -0
  540. data/spec/models/payment_device_disbursement_transaction_all_of_spec.rb +47 -0
  541. data/spec/models/payment_device_disbursement_transaction_spec.rb +47 -0
  542. data/spec/models/payment_device_payment_method_all_of_spec.rb +47 -0
  543. data/spec/models/payment_device_payment_method_spec.rb +47 -0
  544. data/spec/models/payment_device_payment_tokenization_request_all_of_spec.rb +41 -0
  545. data/spec/models/payment_device_payment_tokenization_request_spec.rb +41 -0
  546. data/spec/models/payment_device_pre_auth_transaction_all_of_spec.rb +65 -0
  547. data/spec/models/payment_device_pre_auth_transaction_spec.rb +65 -0
  548. data/spec/models/payment_device_sale_transaction_all_of_spec.rb +53 -0
  549. data/spec/models/payment_device_sale_transaction_spec.rb +53 -0
  550. data/spec/models/payment_device_spec.rb +75 -0
  551. data/spec/models/payment_facilitator_spec.rb +1 -1
  552. data/spec/models/payment_method_details_spec.rb +1 -1
  553. data/spec/models/payment_method_payment_schedules_request_all_of_spec.rb +1 -1
  554. data/spec/models/payment_method_payment_schedules_request_spec.rb +1 -1
  555. data/spec/models/payment_method_type_spec.rb +1 -1
  556. data/spec/models/payment_registration_spec.rb +107 -0
  557. data/spec/models/payment_schedules_error_response_spec.rb +1 -1
  558. data/spec/models/payment_schedules_request_spec.rb +1 -1
  559. data/spec/models/payment_schedules_response_spec.rb +1 -1
  560. data/spec/models/payment_spec.rb +3 -3
  561. data/spec/models/payment_token_credit_transaction_all_of_spec.rb +1 -1
  562. data/spec/models/payment_token_credit_transaction_spec.rb +1 -1
  563. data/spec/models/payment_token_details_all_of_spec.rb +1 -1
  564. data/spec/models/payment_token_details_spec.rb +1 -1
  565. data/spec/models/payment_token_disbursement_transaction_all_of_spec.rb +1 -1
  566. data/spec/models/payment_token_disbursement_transaction_spec.rb +1 -1
  567. data/spec/models/payment_token_payment_method_all_of_spec.rb +1 -1
  568. data/spec/models/payment_token_payment_method_spec.rb +1 -1
  569. data/spec/models/payment_token_pre_auth_transaction_all_of_spec.rb +1 -1
  570. data/spec/models/payment_token_pre_auth_transaction_spec.rb +1 -1
  571. data/spec/models/payment_token_sale_transaction_all_of_spec.rb +1 -1
  572. data/spec/models/payment_token_sale_transaction_spec.rb +1 -1
  573. data/spec/models/payment_tokenization_error_response_spec.rb +1 -1
  574. data/spec/models/payment_tokenization_request_spec.rb +1 -1
  575. data/spec/models/payment_tokenization_response_spec.rb +1 -1
  576. data/spec/models/payment_url_detail_response_spec.rb +59 -0
  577. data/spec/models/payment_url_detail_spec.rb +65 -0
  578. data/spec/models/payment_url_error_response_spec.rb +1 -1
  579. data/spec/models/payment_url_request_spec.rb +1 -1
  580. data/spec/models/payment_url_response_spec.rb +1 -1
  581. data/spec/models/payment_url_status_spec.rb +35 -0
  582. data/spec/models/paypal_credit_transaction_all_of_spec.rb +1 -1
  583. data/spec/models/paypal_credit_transaction_spec.rb +1 -1
  584. data/spec/models/{billing_address_phone_spec.rb → phone_spec.rb} +7 -7
  585. data/spec/models/post_auth_transaction_all_of_spec.rb +1 -1
  586. data/spec/models/post_auth_transaction_spec.rb +1 -1
  587. data/spec/models/primary_transaction_spec.rb +1 -1
  588. data/spec/models/processor_data_spec.rb +14 -2
  589. data/spec/models/purchase_cards_level2_spec.rb +1 -1
  590. data/spec/models/purchase_cards_level3_line_items_spec.rb +1 -1
  591. data/spec/models/purchase_cards_level3_spec.rb +1 -1
  592. data/spec/models/purchase_cards_spec.rb +1 -1
  593. data/spec/models/receiver_info_spec.rb +1 -1
  594. data/spec/models/recurring_payment_details_response_spec.rb +2 -14
  595. data/spec/models/recurring_payment_details_spec.rb +1 -1
  596. data/spec/models/referenced_order_payment_schedules_request_all_of_spec.rb +1 -1
  597. data/spec/models/referenced_order_payment_schedules_request_spec.rb +1 -1
  598. data/spec/models/referenced_order_payment_tokenization_request_all_of_spec.rb +1 -1
  599. data/spec/models/referenced_order_payment_tokenization_request_spec.rb +1 -1
  600. data/spec/models/registration_method_spec.rb +81 -0
  601. data/spec/models/remove_fraud_blocked_items_response_spec.rb +59 -0
  602. data/spec/models/response_amount_components_all_of_spec.rb +1 -1
  603. data/spec/models/response_amount_components_spec.rb +1 -1
  604. data/spec/models/response_type_spec.rb +1 -1
  605. data/spec/models/return_transaction_all_of_spec.rb +1 -1
  606. data/spec/models/return_transaction_spec.rb +1 -1
  607. data/spec/models/score_only_request_spec.rb +1 -5
  608. data/spec/models/score_only_response_fraud_score_explanations_spec.rb +1 -1
  609. data/spec/models/score_only_response_fraud_score_spec.rb +1 -1
  610. data/spec/models/score_only_response_spec.rb +1 -1
  611. data/spec/models/secondary_transaction_spec.rb +1 -1
  612. data/spec/models/secure3_d10_authentication_result_all_of_spec.rb +1 -1
  613. data/spec/models/secure3_d10_authentication_result_spec.rb +1 -1
  614. data/spec/models/secure3_d21_authentication_result_all_of_spec.rb +1 -1
  615. data/spec/models/secure3_d21_authentication_result_spec.rb +1 -1
  616. data/spec/models/secure3d_authentication_request_spec.rb +1 -1
  617. data/spec/models/secure3d_authentication_verification_request_all_of_spec.rb +1 -1
  618. data/spec/models/secure3d_authentication_verification_request_spec.rb +1 -1
  619. data/spec/models/secure3d_response_spec.rb +1 -1
  620. data/spec/models/sender_info_spec.rb +1 -1
  621. data/spec/models/sepa_mandate_spec.rb +1 -1
  622. data/spec/models/sepa_payment_method_all_of_spec.rb +1 -1
  623. data/spec/models/sepa_payment_method_spec.rb +1 -1
  624. data/spec/models/sepa_sale_transaction_all_of_spec.rb +1 -1
  625. data/spec/models/sepa_sale_transaction_spec.rb +1 -1
  626. data/spec/models/sepa_spec.rb +1 -1
  627. data/spec/models/shared_secret_configuration_request_spec.rb +41 -0
  628. data/spec/models/shared_secret_configuration_response_spec.rb +77 -0
  629. data/spec/models/{fraud_order_ship_to_address_spec.rb → ship_to_address_spec.rb} +7 -7
  630. data/spec/models/shipping_spec.rb +1 -1
  631. data/spec/models/soft_descriptor_spec.rb +1 -1
  632. data/spec/models/split_shipment_spec.rb +1 -1
  633. data/spec/models/store_fraud_settings_result_spec.rb +53 -0
  634. data/spec/models/store_fraud_settings_spec.rb +47 -0
  635. data/spec/models/store_url_configuration_request_spec.rb +41 -0
  636. data/spec/models/store_url_configuration_response_spec.rb +59 -0
  637. data/spec/models/store_url_configuration_result_spec.rb +47 -0
  638. data/spec/models/store_url_configuration_spec.rb +83 -0
  639. data/spec/models/stored_credential_spec.rb +1 -1
  640. data/spec/models/sub_merchant_data_spec.rb +1 -1
  641. data/spec/models/sub_merchant_split_spec.rb +1 -1
  642. data/spec/models/token_identifier_spec.rb +41 -0
  643. data/spec/models/transaction_error_response_spec.rb +1 -1
  644. data/spec/models/transaction_origin_spec.rb +1 -1
  645. data/spec/models/transaction_response_spec.rb +1 -1
  646. data/spec/models/transaction_type_spec.rb +1 -1
  647. data/spec/models/union_pay_authentication_request_all_of_spec.rb +1 -1
  648. data/spec/models/union_pay_authentication_request_spec.rb +1 -1
  649. data/spec/models/union_pay_authentication_verification_request_all_of_spec.rb +1 -1
  650. data/spec/models/union_pay_authentication_verification_request_spec.rb +1 -1
  651. data/spec/models/update_fraud_settings_request_spec.rb +41 -0
  652. data/spec/models/update_fraud_settings_response_spec.rb +59 -0
  653. data/spec/models/use_payment_token_spec.rb +13 -1
  654. data/spec/models/{payment_verification_avs_spec.rb → verification3ds_spec.rb} +7 -7
  655. data/spec/models/{payment_verification_cvv_spec.rb → verification_avs_spec.rb} +7 -7
  656. data/spec/models/{payment_verification3ds_spec.rb → verification_cvv_spec.rb} +7 -7
  657. data/spec/models/void_transaction_spec.rb +1 -1
  658. data/spec/models/wallet_payment_method_spec.rb +1 -1
  659. data/spec/models/wallet_pre_auth_transaction_all_of_spec.rb +1 -1
  660. data/spec/models/wallet_pre_auth_transaction_spec.rb +1 -1
  661. data/spec/models/wallet_sale_transaction_all_of_spec.rb +1 -1
  662. data/spec/models/wallet_sale_transaction_spec.rb +1 -1
  663. data/spec/spec_helper.rb +1 -1
  664. metadata +259 -39
  665. data/Gemfile.lock +0 -79
  666. data/docs/BillingAddressPhone.md +0 -19
  667. data/docs/MerchantLocationMerchantAddress.md +0 -27
  668. data/docs/Transaction.md +0 -39
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The documentation here is designed to provide all of the technical guidance required to consume and integrate with our APIs for payment processing. To learn more about our APIs please visit https://docs.firstdata.com/org/gateway.
5
5
 
6
- The version of the OpenAPI document: 6.8.0.20190731.002
6
+ The version of the OpenAPI document: 6.9.1.20191223.002
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: unset
@@ -14,7 +14,7 @@ require 'date'
14
14
 
15
15
  module OpenapiClient
16
16
  # Request to perform a DCC exchange rate inquiry.
17
- class DCCExchangeRateRequest
17
+ class DCCExchangeRateRequest < ExchangeRateRequest
18
18
  # Object name of the exchange rate request.
19
19
  attr_accessor :request_type
20
20
 
@@ -70,6 +70,9 @@ module OpenapiClient
70
70
  h[k.to_sym] = v
71
71
  }
72
72
 
73
+ # call parent's initialize
74
+ super(attributes)
75
+
73
76
  if attributes.key?(:'request_type')
74
77
  self.request_type = attributes[:'request_type']
75
78
  end
@@ -90,15 +93,7 @@ module OpenapiClient
90
93
  # Show invalid properties with the reasons. Usually used together with valid?
91
94
  # @return Array for valid properties with the reasons
92
95
  def list_invalid_properties
93
- invalid_properties = Array.new
94
- if @request_type.nil?
95
- invalid_properties.push('invalid value for "request_type", request_type cannot be nil.')
96
- end
97
-
98
- if @base_amount.nil?
99
- invalid_properties.push('invalid value for "base_amount", base_amount cannot be nil.')
100
- end
101
-
96
+ invalid_properties = super
102
97
  if !@store_id.nil? && @store_id.to_s.length > 20
103
98
  invalid_properties.push('invalid value for "store_id", the character length must be smaller than or equal to 20.')
104
99
  end
@@ -122,13 +117,11 @@ module OpenapiClient
122
117
  # Check to see if the all the properties in the model are valid
123
118
  # @return true if the model is valid
124
119
  def valid?
125
- return false if @request_type.nil?
126
- return false if @base_amount.nil?
127
120
  return false if !@store_id.nil? && @store_id.to_s.length > 20
128
121
  return false if @bin.nil?
129
122
  return false if @bin.to_s.length > 6
130
123
  return false if @bin !~ Regexp.new(/[0-9]{6}/)
131
- true
124
+ true && super
132
125
  end
133
126
 
134
127
  # Custom attribute writer method with validation
@@ -168,7 +161,7 @@ module OpenapiClient
168
161
  request_type == o.request_type &&
169
162
  base_amount == o.base_amount &&
170
163
  store_id == o.store_id &&
171
- bin == o.bin
164
+ bin == o.bin && super(o)
172
165
  end
173
166
 
174
167
  # @see the `==` method
@@ -195,6 +188,7 @@ module OpenapiClient
195
188
  # @return [Object] Returns the model itself
196
189
  def build_from_hash(attributes)
197
190
  return nil unless attributes.is_a?(Hash)
191
+ super(attributes)
198
192
  self.class.openapi_types.each_pair do |key, type|
199
193
  if type =~ /\AArray<(.*)>/i
200
194
  # check to ensure the input is an array given that the attribute
@@ -266,7 +260,7 @@ module OpenapiClient
266
260
  # Returns the object in the form of hash
267
261
  # @return [Hash] Returns the object in the form of hash
268
262
  def to_hash
269
- hash = {}
263
+ hash = super
270
264
  self.class.attribute_map.each_pair do |attr, param|
271
265
  value = self.send(attr)
272
266
  next if value.nil?
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The documentation here is designed to provide all of the technical guidance required to consume and integrate with our APIs for payment processing. To learn more about our APIs please visit https://docs.firstdata.com/org/gateway.
5
5
 
6
- The version of the OpenAPI document: 6.8.0.20190731.002
6
+ The version of the OpenAPI document: 6.9.1.20191223.002
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: unset
@@ -14,12 +14,24 @@ require 'date'
14
14
 
15
15
  module OpenapiClient
16
16
  class DCCExchangeRateRequestAllOf
17
+ # Object name of the exchange rate request.
18
+ attr_accessor :request_type
19
+
20
+ # The original amount of the merchant currency for calculation.
21
+ attr_accessor :base_amount
22
+
23
+ # An optional outlet ID for clients that support multiple stores in the same app.
24
+ attr_accessor :store_id
25
+
17
26
  # A bank identification number (BIN) of the card to be used for DCC.
18
27
  attr_accessor :bin
19
28
 
20
29
  # Attribute mapping from ruby-style variable name to JSON key.
21
30
  def self.attribute_map
22
31
  {
32
+ :'request_type' => :'requestType',
33
+ :'base_amount' => :'baseAmount',
34
+ :'store_id' => :'storeId',
23
35
  :'bin' => :'bin'
24
36
  }
25
37
  end
@@ -27,6 +39,9 @@ module OpenapiClient
27
39
  # Attribute type mapping.
28
40
  def self.openapi_types
29
41
  {
42
+ :'request_type' => :'String',
43
+ :'base_amount' => :'Float',
44
+ :'store_id' => :'String',
30
45
  :'bin' => :'String'
31
46
  }
32
47
  end
@@ -46,6 +61,18 @@ module OpenapiClient
46
61
  h[k.to_sym] = v
47
62
  }
48
63
 
64
+ if attributes.key?(:'request_type')
65
+ self.request_type = attributes[:'request_type']
66
+ end
67
+
68
+ if attributes.key?(:'base_amount')
69
+ self.base_amount = attributes[:'base_amount']
70
+ end
71
+
72
+ if attributes.key?(:'store_id')
73
+ self.store_id = attributes[:'store_id']
74
+ end
75
+
49
76
  if attributes.key?(:'bin')
50
77
  self.bin = attributes[:'bin']
51
78
  end
@@ -55,6 +82,10 @@ module OpenapiClient
55
82
  # @return Array for valid properties with the reasons
56
83
  def list_invalid_properties
57
84
  invalid_properties = Array.new
85
+ if !@store_id.nil? && @store_id.to_s.length > 20
86
+ invalid_properties.push('invalid value for "store_id", the character length must be smaller than or equal to 20.')
87
+ end
88
+
58
89
  if @bin.nil?
59
90
  invalid_properties.push('invalid value for "bin", bin cannot be nil.')
60
91
  end
@@ -74,12 +105,23 @@ module OpenapiClient
74
105
  # Check to see if the all the properties in the model are valid
75
106
  # @return true if the model is valid
76
107
  def valid?
108
+ return false if !@store_id.nil? && @store_id.to_s.length > 20
77
109
  return false if @bin.nil?
78
110
  return false if @bin.to_s.length > 6
79
111
  return false if @bin !~ Regexp.new(/[0-9]{6}/)
80
112
  true
81
113
  end
82
114
 
115
+ # Custom attribute writer method with validation
116
+ # @param [Object] store_id Value to be assigned
117
+ def store_id=(store_id)
118
+ if !store_id.nil? && store_id.to_s.length > 20
119
+ fail ArgumentError, 'invalid value for "store_id", the character length must be smaller than or equal to 20.'
120
+ end
121
+
122
+ @store_id = store_id
123
+ end
124
+
83
125
  # Custom attribute writer method with validation
84
126
  # @param [Object] bin Value to be assigned
85
127
  def bin=(bin)
@@ -104,6 +146,9 @@ module OpenapiClient
104
146
  def ==(o)
105
147
  return true if self.equal?(o)
106
148
  self.class == o.class &&
149
+ request_type == o.request_type &&
150
+ base_amount == o.base_amount &&
151
+ store_id == o.store_id &&
107
152
  bin == o.bin
108
153
  end
109
154
 
@@ -116,7 +161,7 @@ module OpenapiClient
116
161
  # Calculates hash code according to all attributes.
117
162
  # @return [Integer] Hash code
118
163
  def hash
119
- [bin].hash
164
+ [request_type, base_amount, store_id, bin].hash
120
165
  end
121
166
 
122
167
  # Builds the object from hash
@@ -0,0 +1,464 @@
1
+ =begin
2
+ #Payment Gateway API Specification.
3
+
4
+ #The documentation here is designed to provide all of the technical guidance required to consume and integrate with our APIs for payment processing. To learn more about our APIs please visit https://docs.firstdata.com/org/gateway.
5
+
6
+ The version of the OpenAPI document: 6.9.1.20191223.002
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: unset
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module OpenapiClient
16
+ # Decrypted Apple Pay payload.
17
+ class DecryptedApplePay
18
+ # Payment card number.
19
+ attr_accessor :account_number
20
+
21
+ # Card expiration date in MMYYYY format.
22
+ attr_accessor :expiration
23
+
24
+ # Numeric currency code following ISO 4217 standards.
25
+ attr_accessor :currency_code
26
+
27
+ # Amount total.
28
+ attr_accessor :amount
29
+
30
+ # Name of the cardholder.
31
+ attr_accessor :cardholder_name
32
+
33
+ # Card brand.
34
+ attr_accessor :brand
35
+
36
+ # The wallet cryptogram from the decrypted data.
37
+ attr_accessor :cryptogram
38
+
39
+ # The ECI indicator from the decrypted data.
40
+ attr_accessor :eci_indicator
41
+
42
+ # Attribute mapping from ruby-style variable name to JSON key.
43
+ def self.attribute_map
44
+ {
45
+ :'account_number' => :'accountNumber',
46
+ :'expiration' => :'expiration',
47
+ :'currency_code' => :'currencyCode',
48
+ :'amount' => :'amount',
49
+ :'cardholder_name' => :'cardholderName',
50
+ :'brand' => :'brand',
51
+ :'cryptogram' => :'cryptogram',
52
+ :'eci_indicator' => :'eciIndicator'
53
+ }
54
+ end
55
+
56
+ # Attribute type mapping.
57
+ def self.openapi_types
58
+ {
59
+ :'account_number' => :'String',
60
+ :'expiration' => :'String',
61
+ :'currency_code' => :'String',
62
+ :'amount' => :'Float',
63
+ :'cardholder_name' => :'String',
64
+ :'brand' => :'String',
65
+ :'cryptogram' => :'String',
66
+ :'eci_indicator' => :'String'
67
+ }
68
+ end
69
+
70
+ # Initializes the object
71
+ # @param [Hash] attributes Model attributes in the form of hash
72
+ def initialize(attributes = {})
73
+ if (!attributes.is_a?(Hash))
74
+ fail ArgumentError, "The input argument (attributes) must be a hash in `OpenapiClient::DecryptedApplePay` initialize method"
75
+ end
76
+
77
+ # check to see if the attribute exists and convert string to symbol for hash key
78
+ attributes = attributes.each_with_object({}) { |(k, v), h|
79
+ if (!self.class.attribute_map.key?(k.to_sym))
80
+ fail ArgumentError, "`#{k}` is not a valid attribute in `OpenapiClient::DecryptedApplePay`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
81
+ end
82
+ h[k.to_sym] = v
83
+ }
84
+
85
+ if attributes.key?(:'account_number')
86
+ self.account_number = attributes[:'account_number']
87
+ end
88
+
89
+ if attributes.key?(:'expiration')
90
+ self.expiration = attributes[:'expiration']
91
+ end
92
+
93
+ if attributes.key?(:'currency_code')
94
+ self.currency_code = attributes[:'currency_code']
95
+ end
96
+
97
+ if attributes.key?(:'amount')
98
+ self.amount = attributes[:'amount']
99
+ end
100
+
101
+ if attributes.key?(:'cardholder_name')
102
+ self.cardholder_name = attributes[:'cardholder_name']
103
+ end
104
+
105
+ if attributes.key?(:'brand')
106
+ self.brand = attributes[:'brand']
107
+ end
108
+
109
+ if attributes.key?(:'cryptogram')
110
+ self.cryptogram = attributes[:'cryptogram']
111
+ end
112
+
113
+ if attributes.key?(:'eci_indicator')
114
+ self.eci_indicator = attributes[:'eci_indicator']
115
+ end
116
+ end
117
+
118
+ # Show invalid properties with the reasons. Usually used together with valid?
119
+ # @return Array for valid properties with the reasons
120
+ def list_invalid_properties
121
+ invalid_properties = Array.new
122
+ if @account_number.nil?
123
+ invalid_properties.push('invalid value for "account_number", account_number cannot be nil.')
124
+ end
125
+
126
+ pattern = Regexp.new(/[0-9]{13,19}/)
127
+ if @account_number !~ pattern
128
+ invalid_properties.push("invalid value for \"account_number\", must conform to the pattern #{pattern}.")
129
+ end
130
+
131
+ if @expiration.nil?
132
+ invalid_properties.push('invalid value for "expiration", expiration cannot be nil.')
133
+ end
134
+
135
+ pattern = Regexp.new(/[0-9]{6}/)
136
+ if @expiration !~ pattern
137
+ invalid_properties.push("invalid value for \"expiration\", must conform to the pattern #{pattern}.")
138
+ end
139
+
140
+ if @currency_code.nil?
141
+ invalid_properties.push('invalid value for "currency_code", currency_code cannot be nil.')
142
+ end
143
+
144
+ pattern = Regexp.new(/[0-9]{3}/)
145
+ if @currency_code !~ pattern
146
+ invalid_properties.push("invalid value for \"currency_code\", must conform to the pattern #{pattern}.")
147
+ end
148
+
149
+ if @amount.nil?
150
+ invalid_properties.push('invalid value for "amount", amount cannot be nil.')
151
+ end
152
+
153
+ if @cardholder_name.nil?
154
+ invalid_properties.push('invalid value for "cardholder_name", cardholder_name cannot be nil.')
155
+ end
156
+
157
+ if @cardholder_name.to_s.length > 96
158
+ invalid_properties.push('invalid value for "cardholder_name", the character length must be smaller than or equal to 96.')
159
+ end
160
+
161
+ pattern = Regexp.new(/^(?!\s*$).+/)
162
+ if @cardholder_name !~ pattern
163
+ invalid_properties.push("invalid value for \"cardholder_name\", must conform to the pattern #{pattern}.")
164
+ end
165
+
166
+ if @brand.nil?
167
+ invalid_properties.push('invalid value for "brand", brand cannot be nil.')
168
+ end
169
+
170
+ pattern = Regexp.new(/^(?!\s*$).+/)
171
+ if @brand !~ pattern
172
+ invalid_properties.push("invalid value for \"brand\", must conform to the pattern #{pattern}.")
173
+ end
174
+
175
+ if @cryptogram.nil?
176
+ invalid_properties.push('invalid value for "cryptogram", cryptogram cannot be nil.')
177
+ end
178
+
179
+ pattern = Regexp.new(/^(?!\s*$).+/)
180
+ if @cryptogram !~ pattern
181
+ invalid_properties.push("invalid value for \"cryptogram\", must conform to the pattern #{pattern}.")
182
+ end
183
+
184
+ if @eci_indicator.nil?
185
+ invalid_properties.push('invalid value for "eci_indicator", eci_indicator cannot be nil.')
186
+ end
187
+
188
+ pattern = Regexp.new(/[0-9]{2}/)
189
+ if @eci_indicator !~ pattern
190
+ invalid_properties.push("invalid value for \"eci_indicator\", must conform to the pattern #{pattern}.")
191
+ end
192
+
193
+ invalid_properties
194
+ end
195
+
196
+ # Check to see if the all the properties in the model are valid
197
+ # @return true if the model is valid
198
+ def valid?
199
+ return false if @account_number.nil?
200
+ return false if @account_number !~ Regexp.new(/[0-9]{13,19}/)
201
+ return false if @expiration.nil?
202
+ return false if @expiration !~ Regexp.new(/[0-9]{6}/)
203
+ return false if @currency_code.nil?
204
+ return false if @currency_code !~ Regexp.new(/[0-9]{3}/)
205
+ return false if @amount.nil?
206
+ return false if @cardholder_name.nil?
207
+ return false if @cardholder_name.to_s.length > 96
208
+ return false if @cardholder_name !~ Regexp.new(/^(?!\s*$).+/)
209
+ return false if @brand.nil?
210
+ return false if @brand !~ Regexp.new(/^(?!\s*$).+/)
211
+ return false if @cryptogram.nil?
212
+ return false if @cryptogram !~ Regexp.new(/^(?!\s*$).+/)
213
+ return false if @eci_indicator.nil?
214
+ return false if @eci_indicator !~ Regexp.new(/[0-9]{2}/)
215
+ true
216
+ end
217
+
218
+ # Custom attribute writer method with validation
219
+ # @param [Object] account_number Value to be assigned
220
+ def account_number=(account_number)
221
+ if account_number.nil?
222
+ fail ArgumentError, 'account_number cannot be nil'
223
+ end
224
+
225
+ pattern = Regexp.new(/[0-9]{13,19}/)
226
+ if account_number !~ pattern
227
+ fail ArgumentError, "invalid value for \"account_number\", must conform to the pattern #{pattern}."
228
+ end
229
+
230
+ @account_number = account_number
231
+ end
232
+
233
+ # Custom attribute writer method with validation
234
+ # @param [Object] expiration Value to be assigned
235
+ def expiration=(expiration)
236
+ if expiration.nil?
237
+ fail ArgumentError, 'expiration cannot be nil'
238
+ end
239
+
240
+ pattern = Regexp.new(/[0-9]{6}/)
241
+ if expiration !~ pattern
242
+ fail ArgumentError, "invalid value for \"expiration\", must conform to the pattern #{pattern}."
243
+ end
244
+
245
+ @expiration = expiration
246
+ end
247
+
248
+ # Custom attribute writer method with validation
249
+ # @param [Object] currency_code Value to be assigned
250
+ def currency_code=(currency_code)
251
+ if currency_code.nil?
252
+ fail ArgumentError, 'currency_code cannot be nil'
253
+ end
254
+
255
+ pattern = Regexp.new(/[0-9]{3}/)
256
+ if currency_code !~ pattern
257
+ fail ArgumentError, "invalid value for \"currency_code\", must conform to the pattern #{pattern}."
258
+ end
259
+
260
+ @currency_code = currency_code
261
+ end
262
+
263
+ # Custom attribute writer method with validation
264
+ # @param [Object] cardholder_name Value to be assigned
265
+ def cardholder_name=(cardholder_name)
266
+ if cardholder_name.nil?
267
+ fail ArgumentError, 'cardholder_name cannot be nil'
268
+ end
269
+
270
+ if cardholder_name.to_s.length > 96
271
+ fail ArgumentError, 'invalid value for "cardholder_name", the character length must be smaller than or equal to 96.'
272
+ end
273
+
274
+ pattern = Regexp.new(/^(?!\s*$).+/)
275
+ if cardholder_name !~ pattern
276
+ fail ArgumentError, "invalid value for \"cardholder_name\", must conform to the pattern #{pattern}."
277
+ end
278
+
279
+ @cardholder_name = cardholder_name
280
+ end
281
+
282
+ # Custom attribute writer method with validation
283
+ # @param [Object] brand Value to be assigned
284
+ def brand=(brand)
285
+ if brand.nil?
286
+ fail ArgumentError, 'brand cannot be nil'
287
+ end
288
+
289
+ pattern = Regexp.new(/^(?!\s*$).+/)
290
+ if brand !~ pattern
291
+ fail ArgumentError, "invalid value for \"brand\", must conform to the pattern #{pattern}."
292
+ end
293
+
294
+ @brand = brand
295
+ end
296
+
297
+ # Custom attribute writer method with validation
298
+ # @param [Object] cryptogram Value to be assigned
299
+ def cryptogram=(cryptogram)
300
+ if cryptogram.nil?
301
+ fail ArgumentError, 'cryptogram cannot be nil'
302
+ end
303
+
304
+ pattern = Regexp.new(/^(?!\s*$).+/)
305
+ if cryptogram !~ pattern
306
+ fail ArgumentError, "invalid value for \"cryptogram\", must conform to the pattern #{pattern}."
307
+ end
308
+
309
+ @cryptogram = cryptogram
310
+ end
311
+
312
+ # Custom attribute writer method with validation
313
+ # @param [Object] eci_indicator Value to be assigned
314
+ def eci_indicator=(eci_indicator)
315
+ if eci_indicator.nil?
316
+ fail ArgumentError, 'eci_indicator cannot be nil'
317
+ end
318
+
319
+ pattern = Regexp.new(/[0-9]{2}/)
320
+ if eci_indicator !~ pattern
321
+ fail ArgumentError, "invalid value for \"eci_indicator\", must conform to the pattern #{pattern}."
322
+ end
323
+
324
+ @eci_indicator = eci_indicator
325
+ end
326
+
327
+ # Checks equality by comparing each attribute.
328
+ # @param [Object] Object to be compared
329
+ def ==(o)
330
+ return true if self.equal?(o)
331
+ self.class == o.class &&
332
+ account_number == o.account_number &&
333
+ expiration == o.expiration &&
334
+ currency_code == o.currency_code &&
335
+ amount == o.amount &&
336
+ cardholder_name == o.cardholder_name &&
337
+ brand == o.brand &&
338
+ cryptogram == o.cryptogram &&
339
+ eci_indicator == o.eci_indicator
340
+ end
341
+
342
+ # @see the `==` method
343
+ # @param [Object] Object to be compared
344
+ def eql?(o)
345
+ self == o
346
+ end
347
+
348
+ # Calculates hash code according to all attributes.
349
+ # @return [Integer] Hash code
350
+ def hash
351
+ [account_number, expiration, currency_code, amount, cardholder_name, brand, cryptogram, eci_indicator].hash
352
+ end
353
+
354
+ # Builds the object from hash
355
+ # @param [Hash] attributes Model attributes in the form of hash
356
+ # @return [Object] Returns the model itself
357
+ def self.build_from_hash(attributes)
358
+ new.build_from_hash(attributes)
359
+ end
360
+
361
+ # Builds the object from hash
362
+ # @param [Hash] attributes Model attributes in the form of hash
363
+ # @return [Object] Returns the model itself
364
+ def build_from_hash(attributes)
365
+ return nil unless attributes.is_a?(Hash)
366
+ self.class.openapi_types.each_pair do |key, type|
367
+ if type =~ /\AArray<(.*)>/i
368
+ # check to ensure the input is an array given that the attribute
369
+ # is documented as an array but the input is not
370
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
371
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
372
+ end
373
+ elsif !attributes[self.class.attribute_map[key]].nil?
374
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
375
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
376
+ end
377
+
378
+ self
379
+ end
380
+
381
+ # Deserializes the data based on type
382
+ # @param string type Data type
383
+ # @param string value Value to be deserialized
384
+ # @return [Object] Deserialized data
385
+ def _deserialize(type, value)
386
+ case type.to_sym
387
+ when :DateTime
388
+ DateTime.parse(value)
389
+ when :Date
390
+ Date.parse(value)
391
+ when :String
392
+ value.to_s
393
+ when :Integer
394
+ value.to_i
395
+ when :Float
396
+ value.to_f
397
+ when :Boolean
398
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
399
+ true
400
+ else
401
+ false
402
+ end
403
+ when :Object
404
+ # generic object (usually a Hash), return directly
405
+ value
406
+ when /\AArray<(?<inner_type>.+)>\z/
407
+ inner_type = Regexp.last_match[:inner_type]
408
+ value.map { |v| _deserialize(inner_type, v) }
409
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
410
+ k_type = Regexp.last_match[:k_type]
411
+ v_type = Regexp.last_match[:v_type]
412
+ {}.tap do |hash|
413
+ value.each do |k, v|
414
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
415
+ end
416
+ end
417
+ else # model
418
+ OpenapiClient.const_get(type).build_from_hash(value)
419
+ end
420
+ end
421
+
422
+ # Returns the string representation of the object
423
+ # @return [String] String presentation of the object
424
+ def to_s
425
+ to_hash.to_s
426
+ end
427
+
428
+ # to_body is an alias to to_hash (backward compatibility)
429
+ # @return [Hash] Returns the object in the form of hash
430
+ def to_body
431
+ to_hash
432
+ end
433
+
434
+ # Returns the object in the form of hash
435
+ # @return [Hash] Returns the object in the form of hash
436
+ def to_hash
437
+ hash = {}
438
+ self.class.attribute_map.each_pair do |attr, param|
439
+ value = self.send(attr)
440
+ next if value.nil?
441
+ hash[param] = _to_hash(value)
442
+ end
443
+ hash
444
+ end
445
+
446
+ # Outputs non-array value in the form of hash
447
+ # For object, use to_hash. Otherwise, just return the value
448
+ # @param [Object] value Any valid value
449
+ # @return [Hash] Returns the value in the form of hash
450
+ def _to_hash(value)
451
+ if value.is_a?(Array)
452
+ value.compact.map { |v| _to_hash(v) }
453
+ elsif value.is_a?(Hash)
454
+ {}.tap do |hash|
455
+ value.each { |k, v| hash[k] = _to_hash(v) }
456
+ end
457
+ elsif value.respond_to? :to_hash
458
+ value.to_hash
459
+ else
460
+ value
461
+ end
462
+ end
463
+ end
464
+ end