first_data_gateway 1.5.0 → 1.8.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (909) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/README.md +260 -25
  4. data/docs/ACSResponse.md +17 -0
  5. data/docs/AVSResponse.md +3 -1
  6. data/docs/AccessTokenRequest.md +21 -0
  7. data/docs/AccessTokenResponse.md +13 -5
  8. data/docs/AccountInfoLookupRequest.md +19 -0
  9. data/docs/AccountVerificationRequest.md +25 -0
  10. data/docs/AchCreditTransaction.md +17 -0
  11. data/docs/AchPostAuthTransaction.md +17 -0
  12. data/docs/AchPostAuthTransactionAllOf.md +17 -0
  13. data/docs/AchPreAuthTransaction.md +17 -0
  14. data/docs/AchPreAuthTransactionAllOf.md +17 -0
  15. data/docs/{Secure3dAuthenticationRequest.md → AchRecurringType.md} +2 -2
  16. data/docs/AchResponse.md +25 -0
  17. data/docs/AchReturnTransaction.md +17 -0
  18. data/docs/AchSaleTransaction.md +17 -0
  19. data/docs/AchVoidTransaction.md +17 -0
  20. data/docs/AdditionalDetails.md +15 -1
  21. data/docs/AdditionalTransactionDetails.md +3 -1
  22. data/docs/Amount.md +1 -1
  23. data/docs/AmountComponents.md +2 -2
  24. data/docs/AuthenticationApi.md +5 -3
  25. data/docs/AuthenticationRequest.md +17 -0
  26. data/docs/AuthenticationResult.md +17 -0
  27. data/docs/AuthenticationUpdateRequest.md +21 -0
  28. data/docs/Background.md +23 -0
  29. data/docs/BackgroundColor.md +21 -0
  30. data/docs/Body.md +17 -0
  31. data/docs/Borders.md +17 -0
  32. data/docs/BrandingStyleConfigurationRequest.md +17 -0
  33. data/docs/BrandingStyleConfigurationResponse.md +23 -0
  34. data/docs/BrandingStyleConfigurationResult.md +19 -0
  35. data/docs/Button.md +19 -0
  36. data/docs/ChinaDomestic.md +3 -1
  37. data/docs/ClassicMode.md +35 -0
  38. data/docs/ClearingDetails.md +25 -0
  39. data/docs/ClearingElement.md +21 -0
  40. data/docs/CombinedMode.md +23 -0
  41. data/docs/ConnectMode.md +16 -0
  42. data/docs/Content.md +17 -0
  43. data/docs/CurrencyConversionResponse.md +19 -0
  44. data/docs/DCCExchangeRateRequest.md +1 -1
  45. data/docs/DCCExchangeRateRequestAllOf.md +1 -1
  46. data/docs/DecryptedApplePay.md +2 -6
  47. data/docs/DecryptedGooglePay.md +2 -6
  48. data/docs/DecryptedSamsungPay.md +2 -6
  49. data/docs/DeleteBrandingStyleConfigurationResponse.md +25 -0
  50. data/docs/EmailNotificationData.md +25 -0
  51. data/docs/EndpointResponse.md +21 -0
  52. data/docs/ExchangeRateDetails.md +33 -0
  53. data/docs/ExchangeRateResponse.md +4 -20
  54. data/docs/Expiration.md +1 -1
  55. data/docs/FontFace.md +16 -0
  56. data/docs/FontProperties.md +23 -0
  57. data/docs/FontWeight.md +16 -0
  58. data/docs/Footer.md +17 -0
  59. data/docs/FraudOrder.md +3 -1
  60. data/docs/FraudOrderItems.md +4 -4
  61. data/docs/Header.md +17 -0
  62. data/docs/Hover.md +17 -0
  63. data/docs/IdInfo.md +19 -0
  64. data/docs/IndustrySpecificExtensions.md +3 -1
  65. data/docs/InformationLookupApi.md +132 -0
  66. data/docs/InitiateClearingResponse.md +27 -0
  67. data/docs/InitiateClearingResponseAllOf.md +21 -0
  68. data/docs/Logo.md +21 -0
  69. data/docs/MasterpassWalletPaymentMethod.md +19 -0
  70. data/docs/MasterpassWalletPaymentMethodAllOf.md +19 -0
  71. data/docs/Mcc6012.md +27 -0
  72. data/docs/Mobile.md +19 -0
  73. data/docs/MobileHeaderArea.md +17 -0
  74. data/docs/OrderApi.md +2 -2
  75. data/docs/PaymentApi.md +14 -14
  76. data/docs/PaymentCard.md +0 -2
  77. data/docs/PaymentCardInfoLookupRequest.md +17 -0
  78. data/docs/PaymentCardInfoLookupRequestAllOf.md +17 -0
  79. data/docs/PaymentCardPaymentTokenUpdateRequest.md +21 -0
  80. data/docs/PaymentCardPreAuthTransaction.md +7 -1
  81. data/docs/PaymentCardPreAuthTransactionAllOf.md +7 -1
  82. data/docs/PaymentCardSaleTransaction.md +5 -1
  83. data/docs/PaymentCardSaleTransactionAllOf.md +5 -1
  84. data/docs/PaymentCardVerificationRequest.md +17 -0
  85. data/docs/PaymentCardVerificationRequestAllOf.md +17 -0
  86. data/docs/PaymentDevicePreAuthTransaction.md +3 -1
  87. data/docs/PaymentDevicePreAuthTransactionAllOf.md +3 -1
  88. data/docs/PaymentTokenApi.md +130 -0
  89. data/docs/PaymentTokenInfoLookupRequest.md +17 -0
  90. data/docs/PaymentTokenInfoLookupRequestAllOf.md +17 -0
  91. data/docs/PaymentTokenPreAuthTransaction.md +7 -1
  92. data/docs/PaymentTokenPreAuthTransactionAllOf.md +7 -1
  93. data/docs/PaymentTokenSaleTransaction.md +5 -1
  94. data/docs/PaymentTokenSaleTransactionAllOf.md +5 -1
  95. data/docs/PaymentTokenUpdateResponse.md +27 -0
  96. data/docs/PaymentTokenVerificationRequest.md +17 -0
  97. data/docs/PaymentTokenVerificationRequestAllOf.md +17 -0
  98. data/docs/PaymentTokenizationErrorResponse.md +4 -0
  99. data/docs/PaymentTokenizationRequest.md +5 -1
  100. data/docs/PaymentTokenizationResponse.md +5 -1
  101. data/docs/PaymentURLApi.md +2 -2
  102. data/docs/PaymentUrlRequest.md +1 -1
  103. data/docs/Primary.md +17 -0
  104. data/docs/ProcessorData.md +3 -1
  105. data/docs/Properties.md +25 -0
  106. data/docs/Receipt.md +19 -0
  107. data/docs/ReceiptRequestInfo.md +21 -0
  108. data/docs/ResponseAmountComponents.md +2 -2
  109. data/docs/ScoreOnlyResponse.md +3 -5
  110. data/docs/ScoreOnlyResponseFraudScore.md +3 -1
  111. data/docs/SecondaryTransaction.md +5 -1
  112. data/docs/Secure3D10AuthenticationRequest.md +16 -0
  113. data/docs/{Secure3dAuthenticationVerificationRequest.md → Secure3D10AuthenticationUpdateRequest.md} +5 -3
  114. data/docs/{Secure3dAuthenticationVerificationRequestAllOf.md → Secure3D10AuthenticationUpdateRequestAllOf.md} +5 -3
  115. data/docs/Secure3D21AuthenticationRequest.md +23 -0
  116. data/docs/Secure3D21AuthenticationRequestAllOf.md +23 -0
  117. data/docs/Secure3D21AuthenticationResult.md +2 -2
  118. data/docs/Secure3D21AuthenticationResultAllOf.md +2 -2
  119. data/docs/Secure3D21AuthenticationUpdateRequest.md +19 -0
  120. data/docs/Secure3D21AuthenticationUpdateRequestAllOf.md +19 -0
  121. data/docs/Secure3DAuthenticationResponse.md +23 -0
  122. data/docs/Secure3DAuthenticationResponseParams.md +27 -0
  123. data/docs/Secure3DAuthenticationResponseSecure3dMethod.md +35 -0
  124. data/docs/SoftDescriptor.md +5 -1
  125. data/docs/StoreBrandingStyleConfiguration.md +21 -0
  126. data/docs/StoreEmailSettings.md +19 -0
  127. data/docs/StoreEmailSettingsResult.md +19 -0
  128. data/docs/StoredCredential.md +1 -1
  129. data/docs/TeleCheckAchPaymentMethod.md +53 -0
  130. data/docs/TeleCheckAchPaymentMethodAchBillTo.md +35 -0
  131. data/docs/TeleCheckCBPPaymentMethod.md +16 -0
  132. data/docs/TeleCheckICAPaymentMethod.md +21 -0
  133. data/docs/TeleCheckICAPaymentMethodAllOf.md +21 -0
  134. data/docs/Text.md +19 -0
  135. data/docs/Title.md +17 -0
  136. data/docs/TopBar.md +17 -0
  137. data/docs/TransactionErrorResponse.md +10 -4
  138. data/docs/TransactionResponse.md +11 -5
  139. data/docs/UnionPayAuthenticationUpdateRequest.md +19 -0
  140. data/docs/UnionPayAuthenticationUpdateRequestAllOf.md +19 -0
  141. data/docs/UpdateEmailSettingsRequest.md +17 -0
  142. data/docs/UpdateEmailSettingsResponse.md +23 -0
  143. data/docs/UpdatePaymentToken.md +23 -0
  144. data/docs/VerificationApi.md +132 -0
  145. data/docs/VoidPreAuthTransactions.md +16 -0
  146. data/docs/WalletPreAuthTransaction.md +3 -1
  147. data/docs/WalletPreAuthTransactionAllOf.md +3 -1
  148. data/first_data_gateway.gemspec +6 -7
  149. data/git_push.sh +10 -7
  150. data/lib/openapi_client.rb +96 -13
  151. data/lib/openapi_client/.DS_Store +0 -0
  152. data/lib/openapi_client/api/authentication_api.rb +17 -9
  153. data/lib/openapi_client/api/currency_conversion_api.rb +6 -6
  154. data/lib/openapi_client/api/fraud_detect_api.rb +14 -20
  155. data/lib/openapi_client/api/information_lookup_api.rb +228 -0
  156. data/lib/openapi_client/api/order_api.rb +11 -12
  157. data/lib/openapi_client/api/payment_api.rb +36 -40
  158. data/lib/openapi_client/api/payment_schedules_api.rb +16 -17
  159. data/lib/openapi_client/api/payment_token_api.rb +222 -10
  160. data/lib/openapi_client/api/payment_url_api.rb +14 -14
  161. data/lib/openapi_client/api/verification_api.rb +228 -0
  162. data/lib/openapi_client/api_client.rb +15 -29
  163. data/lib/openapi_client/api_error.rb +2 -2
  164. data/lib/openapi_client/configuration.rb +3 -4
  165. data/lib/openapi_client/models/access_token_request.rb +242 -0
  166. data/lib/openapi_client/models/access_token_response.rb +81 -66
  167. data/lib/openapi_client/models/{authentication_verification_request.rb → account_info_lookup_request.rb} +39 -49
  168. data/lib/openapi_client/models/account_updater_response.rb +21 -12
  169. data/lib/openapi_client/models/account_verification_request.rb +285 -0
  170. data/lib/openapi_client/models/ach_credit_transaction.rb +223 -0
  171. data/lib/openapi_client/models/ach_post_auth_transaction.rb +223 -0
  172. data/lib/openapi_client/models/{funding_transaction_type_all_of.rb → ach_post_auth_transaction_all_of.rb} +36 -41
  173. data/lib/openapi_client/models/ach_pre_auth_transaction.rb +223 -0
  174. data/lib/openapi_client/models/ach_pre_auth_transaction_all_of.rb +210 -0
  175. data/lib/openapi_client/models/ach_recurring_type.rb +36 -0
  176. data/lib/openapi_client/models/ach_response.rb +307 -0
  177. data/lib/openapi_client/models/ach_return_transaction.rb +223 -0
  178. data/lib/openapi_client/models/ach_sale_transaction.rb +223 -0
  179. data/lib/openapi_client/models/ach_void_transaction.rb +223 -0
  180. data/lib/openapi_client/models/acs_response.rb +207 -0
  181. data/lib/openapi_client/models/additional_amount_rate.rb +21 -12
  182. data/lib/openapi_client/models/additional_details.rb +198 -16
  183. data/lib/openapi_client/models/additional_transaction_details.rb +39 -18
  184. data/lib/openapi_client/models/address.rb +21 -12
  185. data/lib/openapi_client/models/airline.rb +21 -12
  186. data/lib/openapi_client/models/airline_ancillary_service_category.rb +21 -12
  187. data/lib/openapi_client/models/airline_travel_route.rb +21 -12
  188. data/lib/openapi_client/models/ali_pay.rb +21 -12
  189. data/lib/openapi_client/models/ali_pay_payment_method.rb +21 -12
  190. data/lib/openapi_client/models/ali_pay_payment_method_all_of.rb +21 -12
  191. data/lib/openapi_client/models/ali_pay_sale_transaction.rb +24 -102
  192. data/lib/openapi_client/models/ali_pay_sale_transaction_all_of.rb +22 -100
  193. data/lib/openapi_client/models/amount.rb +41 -13
  194. data/lib/openapi_client/models/amount_components.rb +21 -12
  195. data/lib/openapi_client/models/authentication_request.rb +217 -0
  196. data/lib/openapi_client/models/authentication_result.rb +217 -0
  197. data/lib/openapi_client/models/authentication_update_request.rb +251 -0
  198. data/lib/openapi_client/models/avs_response.rb +35 -16
  199. data/lib/openapi_client/models/background.rb +233 -0
  200. data/lib/openapi_client/models/{authentication_redirect_params.rb → background_color.rb} +44 -38
  201. data/lib/openapi_client/models/bancontact_qr.rb +21 -12
  202. data/lib/openapi_client/models/basic_response.rb +21 -12
  203. data/lib/openapi_client/models/billing.rb +21 -12
  204. data/lib/openapi_client/models/billing_address.rb +21 -12
  205. data/lib/openapi_client/models/block_card.rb +21 -12
  206. data/lib/openapi_client/models/block_domain.rb +21 -12
  207. data/lib/openapi_client/models/block_ip_address.rb +21 -12
  208. data/lib/openapi_client/models/block_name.rb +21 -12
  209. data/lib/openapi_client/models/blocked_card_number.rb +21 -12
  210. data/lib/openapi_client/models/blocked_items.rb +21 -12
  211. data/lib/openapi_client/models/body.rb +223 -0
  212. data/lib/openapi_client/models/borders.rb +223 -0
  213. data/lib/openapi_client/models/branding_style_configuration_request.rb +208 -0
  214. data/lib/openapi_client/models/branding_style_configuration_response.rb +243 -0
  215. data/lib/openapi_client/models/{disbursement_transaction_type_all_of.rb → branding_style_configuration_result.rb} +39 -38
  216. data/lib/openapi_client/models/button.rb +215 -0
  217. data/lib/openapi_client/models/car_rental.rb +21 -12
  218. data/lib/openapi_client/models/car_rental_extra_charges.rb +21 -12
  219. data/lib/openapi_client/models/card.rb +21 -12
  220. data/lib/openapi_client/models/card_function.rb +2 -2
  221. data/lib/openapi_client/models/card_info.rb +21 -12
  222. data/lib/openapi_client/models/card_info_lookup_request.rb +21 -12
  223. data/lib/openapi_client/models/card_info_lookup_response.rb +21 -12
  224. data/lib/openapi_client/models/card_verification_request.rb +21 -12
  225. data/lib/openapi_client/models/china_domestic.rb +50 -16
  226. data/lib/openapi_client/models/china_domestic_payment_method.rb +21 -12
  227. data/lib/openapi_client/models/china_domestic_payment_method_all_of.rb +21 -12
  228. data/lib/openapi_client/models/china_pn_r_sale_transaction.rb +24 -102
  229. data/lib/openapi_client/models/china_pn_r_sale_transaction_all_of.rb +22 -100
  230. data/lib/openapi_client/models/classic_mode.rb +287 -0
  231. data/lib/openapi_client/models/clearing_details.rb +338 -0
  232. data/lib/openapi_client/models/clearing_element.rb +227 -0
  233. data/lib/openapi_client/models/client_locale.rb +21 -12
  234. data/lib/openapi_client/models/client_registration.rb +21 -12
  235. data/lib/openapi_client/models/combined_mode.rb +233 -0
  236. data/lib/openapi_client/models/connect_mode.rb +36 -0
  237. data/lib/openapi_client/models/contact.rb +21 -12
  238. data/lib/openapi_client/models/content.rb +223 -0
  239. data/lib/openapi_client/models/country_profile.rb +21 -12
  240. data/lib/openapi_client/models/create_payment_token.rb +21 -12
  241. data/lib/openapi_client/models/currency_conversion.rb +21 -12
  242. data/lib/openapi_client/models/currency_conversion_response.rb +216 -0
  243. data/lib/openapi_client/models/customer.rb +21 -12
  244. data/lib/openapi_client/models/customer_address.rb +21 -12
  245. data/lib/openapi_client/models/dcc.rb +24 -52
  246. data/lib/openapi_client/models/dcc_all_of.rb +22 -50
  247. data/lib/openapi_client/models/dcc_exchange_rate_request.rb +25 -61
  248. data/lib/openapi_client/models/dcc_exchange_rate_request_all_of.rb +23 -59
  249. data/lib/openapi_client/models/decrypted_apple_pay.rb +31 -91
  250. data/lib/openapi_client/models/decrypted_apple_pay_wallet_payment_method.rb +24 -25
  251. data/lib/openapi_client/models/decrypted_apple_pay_wallet_payment_method_all_of.rb +22 -23
  252. data/lib/openapi_client/models/decrypted_google_pay.rb +31 -91
  253. data/lib/openapi_client/models/decrypted_google_pay_wallet_payment_method.rb +24 -25
  254. data/lib/openapi_client/models/decrypted_google_pay_wallet_payment_method_all_of.rb +22 -23
  255. data/lib/openapi_client/models/decrypted_samsung_pay.rb +31 -91
  256. data/lib/openapi_client/models/decrypted_samsung_pay_wallet_payment_method.rb +24 -25
  257. data/lib/openapi_client/models/decrypted_samsung_pay_wallet_payment_method_all_of.rb +22 -23
  258. data/lib/openapi_client/models/delete_branding_style_configuration_response.rb +252 -0
  259. data/lib/openapi_client/models/device.rb +21 -12
  260. data/lib/openapi_client/models/disbursement.rb +21 -12
  261. data/lib/openapi_client/models/disbursement_transaction_type.rb +26 -46
  262. data/lib/openapi_client/models/document.rb +21 -12
  263. data/lib/openapi_client/models/dynamic_pricing.rb +24 -52
  264. data/lib/openapi_client/models/dynamic_pricing_all_of.rb +22 -50
  265. data/lib/openapi_client/models/dynamic_pricing_exchange_rate_request.rb +24 -60
  266. data/lib/openapi_client/models/dynamic_pricing_exchange_rate_request_all_of.rb +22 -58
  267. data/lib/openapi_client/models/email_notification_data.rb +247 -0
  268. data/lib/openapi_client/models/encrypted_apple_pay.rb +21 -12
  269. data/lib/openapi_client/models/encrypted_apple_pay_header.rb +21 -12
  270. data/lib/openapi_client/models/encrypted_apple_pay_wallet_payment_method.rb +24 -25
  271. data/lib/openapi_client/models/encrypted_apple_pay_wallet_payment_method_all_of.rb +22 -23
  272. data/lib/openapi_client/models/encrypted_google_pay.rb +21 -12
  273. data/lib/openapi_client/models/encrypted_google_pay_data.rb +21 -12
  274. data/lib/openapi_client/models/encrypted_google_pay_wallet_payment_method.rb +24 -25
  275. data/lib/openapi_client/models/encrypted_google_pay_wallet_payment_method_all_of.rb +22 -23
  276. data/lib/openapi_client/models/encrypted_samsung_pay.rb +21 -12
  277. data/lib/openapi_client/models/encrypted_samsung_pay_wallet_payment_method.rb +24 -25
  278. data/lib/openapi_client/models/encrypted_samsung_pay_wallet_payment_method_all_of.rb +22 -23
  279. data/lib/openapi_client/models/endpoint_response.rb +261 -0
  280. data/lib/openapi_client/models/error.rb +21 -12
  281. data/lib/openapi_client/models/error_details.rb +21 -12
  282. data/lib/openapi_client/models/error_message.rb +21 -12
  283. data/lib/openapi_client/models/error_response.rb +21 -12
  284. data/lib/openapi_client/models/exchange_rate_details.rb +287 -0
  285. data/lib/openapi_client/models/exchange_rate_request.rb +21 -12
  286. data/lib/openapi_client/models/exchange_rate_response.rb +29 -101
  287. data/lib/openapi_client/models/expiration.rb +25 -16
  288. data/lib/openapi_client/models/font_face.rb +39 -0
  289. data/lib/openapi_client/models/font_properties.rb +252 -0
  290. data/lib/openapi_client/models/font_weight.rb +36 -0
  291. data/lib/openapi_client/models/footer.rb +223 -0
  292. data/lib/openapi_client/models/fraud_address.rb +21 -12
  293. data/lib/openapi_client/models/fraud_order.rb +32 -13
  294. data/lib/openapi_client/models/fraud_order_items.rb +26 -15
  295. data/lib/openapi_client/models/fraud_registration.rb +21 -12
  296. data/lib/openapi_client/models/fraud_registration_card.rb +21 -12
  297. data/lib/openapi_client/models/fraud_registration_device.rb +21 -12
  298. data/lib/openapi_client/models/fraud_registration_device_items.rb +21 -12
  299. data/lib/openapi_client/models/fraud_registration_error.rb +21 -12
  300. data/lib/openapi_client/models/fraud_registration_response.rb +22 -13
  301. data/lib/openapi_client/models/fraud_score.rb +21 -12
  302. data/lib/openapi_client/models/fraud_settings.rb +21 -12
  303. data/lib/openapi_client/models/fraud_settings_response.rb +21 -12
  304. data/lib/openapi_client/models/frequency.rb +21 -12
  305. data/lib/openapi_client/models/funding_transaction_type.rb +26 -46
  306. data/lib/openapi_client/models/header.rb +223 -0
  307. data/lib/openapi_client/models/hover.rb +223 -0
  308. data/lib/openapi_client/models/id_info.rb +256 -0
  309. data/lib/openapi_client/models/industry_specific_extensions.rb +34 -16
  310. data/lib/openapi_client/models/initiate_clearing_response.rb +298 -0
  311. data/lib/openapi_client/models/initiate_clearing_response_all_of.rb +261 -0
  312. data/lib/openapi_client/models/installment_options.rb +21 -12
  313. data/lib/openapi_client/models/issuer_response.rb +21 -12
  314. data/lib/openapi_client/models/items.rb +21 -12
  315. data/lib/openapi_client/models/location.rb +21 -12
  316. data/lib/openapi_client/models/lockout_time.rb +21 -12
  317. data/lib/openapi_client/models/lodging.rb +21 -12
  318. data/lib/openapi_client/models/lodging_extra_charges.rb +21 -12
  319. data/lib/openapi_client/models/logo.rb +276 -0
  320. data/lib/openapi_client/models/loyalty.rb +21 -12
  321. data/lib/openapi_client/models/masterpass_wallet_payment_method.rb +268 -0
  322. data/lib/openapi_client/models/masterpass_wallet_payment_method_all_of.rb +255 -0
  323. data/lib/openapi_client/models/maximum_purchase_amount.rb +21 -12
  324. data/lib/openapi_client/models/mcc6012.rb +347 -0
  325. data/lib/openapi_client/models/merchant.rb +21 -12
  326. data/lib/openapi_client/models/method.rb +21 -12
  327. data/lib/openapi_client/models/mobile.rb +216 -0
  328. data/lib/openapi_client/models/mobile_header_area.rb +223 -0
  329. data/lib/openapi_client/models/order.rb +21 -12
  330. data/lib/openapi_client/models/order_error_response.rb +21 -12
  331. data/lib/openapi_client/models/order_response.rb +21 -12
  332. data/lib/openapi_client/models/pay_pal.rb +21 -12
  333. data/lib/openapi_client/models/pay_pal_payment_method.rb +21 -12
  334. data/lib/openapi_client/models/pay_pal_payment_method_all_of.rb +21 -12
  335. data/lib/openapi_client/models/payment.rb +21 -12
  336. data/lib/openapi_client/models/payment_card.rb +22 -22
  337. data/lib/openapi_client/models/payment_card_credit_transaction.rb +24 -102
  338. data/lib/openapi_client/models/payment_card_disbursement_transaction.rb +24 -102
  339. data/lib/openapi_client/models/payment_card_disbursement_transaction_all_of.rb +22 -100
  340. data/lib/openapi_client/models/payment_card_forced_ticket_transaction.rb +24 -102
  341. data/lib/openapi_client/models/payment_card_forced_ticket_transaction_all_of.rb +22 -100
  342. data/lib/openapi_client/models/payment_card_info_lookup_request.rb +223 -0
  343. data/lib/openapi_client/models/payment_card_info_lookup_request_all_of.rb +210 -0
  344. data/lib/openapi_client/models/payment_card_payer_auth_transaction.rb +24 -102
  345. data/lib/openapi_client/models/payment_card_payer_auth_transaction_all_of.rb +22 -100
  346. data/lib/openapi_client/models/payment_card_payment_method.rb +21 -12
  347. data/lib/openapi_client/models/payment_card_payment_method_all_of.rb +21 -12
  348. data/lib/openapi_client/models/{void_transaction_all_of.rb → payment_card_payment_token_update_request.rb} +52 -25
  349. data/lib/openapi_client/models/payment_card_payment_tokenization_request.rb +24 -80
  350. data/lib/openapi_client/models/payment_card_payment_tokenization_request_all_of.rb +22 -78
  351. data/lib/openapi_client/models/payment_card_pre_auth_transaction.rb +58 -105
  352. data/lib/openapi_client/models/payment_card_pre_auth_transaction_all_of.rb +55 -103
  353. data/lib/openapi_client/models/payment_card_sale_transaction.rb +47 -105
  354. data/lib/openapi_client/models/payment_card_sale_transaction_all_of.rb +43 -103
  355. data/lib/openapi_client/models/payment_card_verification_request.rb +223 -0
  356. data/lib/openapi_client/models/payment_card_verification_request_all_of.rb +210 -0
  357. data/lib/openapi_client/models/payment_device.rb +21 -12
  358. data/lib/openapi_client/models/payment_device_credit_transaction.rb +24 -102
  359. data/lib/openapi_client/models/payment_device_credit_transaction_all_of.rb +22 -100
  360. data/lib/openapi_client/models/payment_device_disbursement_transaction.rb +24 -102
  361. data/lib/openapi_client/models/payment_device_disbursement_transaction_all_of.rb +22 -100
  362. data/lib/openapi_client/models/payment_device_payment_method.rb +21 -12
  363. data/lib/openapi_client/models/payment_device_payment_method_all_of.rb +21 -12
  364. data/lib/openapi_client/models/payment_device_payment_tokenization_request.rb +24 -80
  365. data/lib/openapi_client/models/payment_device_payment_tokenization_request_all_of.rb +22 -78
  366. data/lib/openapi_client/models/payment_device_pre_auth_transaction.rb +39 -105
  367. data/lib/openapi_client/models/payment_device_pre_auth_transaction_all_of.rb +37 -103
  368. data/lib/openapi_client/models/payment_device_sale_transaction.rb +24 -102
  369. data/lib/openapi_client/models/payment_device_sale_transaction_all_of.rb +22 -100
  370. data/lib/openapi_client/models/payment_facilitator.rb +21 -12
  371. data/lib/openapi_client/models/payment_method_details.rb +21 -12
  372. data/lib/openapi_client/models/payment_method_payment_schedules_request.rb +24 -232
  373. data/lib/openapi_client/models/payment_method_payment_schedules_request_all_of.rb +22 -230
  374. data/lib/openapi_client/models/payment_method_type.rb +3 -2
  375. data/lib/openapi_client/models/payment_registration.rb +21 -12
  376. data/lib/openapi_client/models/payment_schedules_error_response.rb +21 -12
  377. data/lib/openapi_client/models/payment_schedules_request.rb +21 -12
  378. data/lib/openapi_client/models/payment_schedules_response.rb +21 -12
  379. data/lib/openapi_client/models/payment_token_credit_transaction.rb +24 -102
  380. data/lib/openapi_client/models/payment_token_credit_transaction_all_of.rb +22 -100
  381. data/lib/openapi_client/models/payment_token_details.rb +21 -12
  382. data/lib/openapi_client/models/payment_token_details_all_of.rb +22 -47
  383. data/lib/openapi_client/models/payment_token_disbursement_transaction.rb +24 -102
  384. data/lib/openapi_client/models/payment_token_disbursement_transaction_all_of.rb +22 -100
  385. data/lib/openapi_client/models/payment_token_info_lookup_request.rb +223 -0
  386. data/lib/openapi_client/models/{secure3d_authentication_request_all_of.rb → payment_token_info_lookup_request_all_of.rb} +36 -23
  387. data/lib/openapi_client/models/payment_token_payment_method.rb +21 -12
  388. data/lib/openapi_client/models/payment_token_payment_method_all_of.rb +21 -12
  389. data/lib/openapi_client/models/payment_token_pre_auth_transaction.rb +57 -105
  390. data/lib/openapi_client/models/payment_token_pre_auth_transaction_all_of.rb +55 -103
  391. data/lib/openapi_client/models/payment_token_sale_transaction.rb +45 -105
  392. data/lib/openapi_client/models/payment_token_sale_transaction_all_of.rb +43 -103
  393. data/lib/openapi_client/models/payment_token_update_response.rb +297 -0
  394. data/lib/openapi_client/models/payment_token_verification_request.rb +223 -0
  395. data/lib/openapi_client/models/payment_token_verification_request_all_of.rb +210 -0
  396. data/lib/openapi_client/models/payment_tokenization_error_response.rb +72 -13
  397. data/lib/openapi_client/models/payment_tokenization_request.rb +59 -16
  398. data/lib/openapi_client/models/payment_tokenization_response.rb +75 -16
  399. data/lib/openapi_client/models/payment_url_detail.rb +21 -12
  400. data/lib/openapi_client/models/payment_url_detail_response.rb +21 -12
  401. data/lib/openapi_client/models/payment_url_error_response.rb +21 -12
  402. data/lib/openapi_client/models/payment_url_request.rb +21 -12
  403. data/lib/openapi_client/models/payment_url_response.rb +21 -12
  404. data/lib/openapi_client/models/payment_url_status.rb +2 -2
  405. data/lib/openapi_client/models/paypal_credit_transaction.rb +24 -102
  406. data/lib/openapi_client/models/paypal_credit_transaction_all_of.rb +22 -100
  407. data/lib/openapi_client/models/phone.rb +21 -12
  408. data/lib/openapi_client/models/post_auth_transaction.rb +24 -60
  409. data/lib/openapi_client/models/post_auth_transaction_all_of.rb +22 -58
  410. data/lib/openapi_client/models/primary.rb +223 -0
  411. data/lib/openapi_client/models/primary_transaction.rb +21 -12
  412. data/lib/openapi_client/models/processor_data.rb +35 -16
  413. data/lib/openapi_client/models/properties.rb +279 -0
  414. data/lib/openapi_client/models/purchase_cards.rb +21 -12
  415. data/lib/openapi_client/models/purchase_cards_level2.rb +21 -12
  416. data/lib/openapi_client/models/purchase_cards_level3.rb +21 -12
  417. data/lib/openapi_client/models/purchase_cards_level3_line_items.rb +21 -12
  418. data/lib/openapi_client/models/{authentication_redirect.rb → receipt.rb} +48 -36
  419. data/lib/openapi_client/models/receipt_request_info.rb +268 -0
  420. data/lib/openapi_client/models/receiver_info.rb +59 -41
  421. data/lib/openapi_client/models/recurring_payment_details.rb +21 -12
  422. data/lib/openapi_client/models/recurring_payment_details_response.rb +21 -12
  423. data/lib/openapi_client/models/referenced_order_payment_schedules_request.rb +24 -232
  424. data/lib/openapi_client/models/referenced_order_payment_schedules_request_all_of.rb +22 -230
  425. data/lib/openapi_client/models/referenced_order_payment_tokenization_request.rb +24 -80
  426. data/lib/openapi_client/models/referenced_order_payment_tokenization_request_all_of.rb +22 -78
  427. data/lib/openapi_client/models/registration_method.rb +21 -12
  428. data/lib/openapi_client/models/remove_fraud_blocked_items_response.rb +21 -12
  429. data/lib/openapi_client/models/response_amount_components.rb +21 -12
  430. data/lib/openapi_client/models/response_amount_components_all_of.rb +22 -73
  431. data/lib/openapi_client/models/response_type.rb +2 -3
  432. data/lib/openapi_client/models/return_transaction.rb +24 -60
  433. data/lib/openapi_client/models/return_transaction_all_of.rb +22 -58
  434. data/lib/openapi_client/models/score_only_request.rb +21 -12
  435. data/lib/openapi_client/models/score_only_response.rb +31 -32
  436. data/lib/openapi_client/models/score_only_response_fraud_score.rb +28 -19
  437. data/lib/openapi_client/models/score_only_response_fraud_score_explanations.rb +21 -12
  438. data/lib/openapi_client/models/secondary_transaction.rb +59 -16
  439. data/lib/openapi_client/models/{secure3d_authentication_request.rb → secure3_d10_authentication_request.rb} +30 -32
  440. data/lib/openapi_client/models/secure3_d10_authentication_result.rb +26 -27
  441. data/lib/openapi_client/models/secure3_d10_authentication_result_all_of.rb +22 -23
  442. data/lib/openapi_client/models/{secure3d_authentication_verification_request.rb → secure3_d10_authentication_update_request.rb} +43 -78
  443. data/lib/openapi_client/models/{secure3d_authentication_verification_request_all_of.rb → secure3_d10_authentication_update_request_all_of.rb} +38 -73
  444. data/lib/openapi_client/models/secure3_d21_authentication_request.rb +297 -0
  445. data/lib/openapi_client/models/secure3_d21_authentication_request_all_of.rb +284 -0
  446. data/lib/openapi_client/models/secure3_d21_authentication_result.rb +30 -29
  447. data/lib/openapi_client/models/secure3_d21_authentication_result_all_of.rb +25 -24
  448. data/lib/openapi_client/models/secure3_d21_authentication_update_request.rb +262 -0
  449. data/lib/openapi_client/models/secure3_d21_authentication_update_request_all_of.rb +249 -0
  450. data/lib/openapi_client/models/secure3_d_authentication_response.rb +281 -0
  451. data/lib/openapi_client/models/secure3_d_authentication_response_params.rb +257 -0
  452. data/lib/openapi_client/models/secure3_d_authentication_response_secure3d_method.rb +217 -0
  453. data/lib/openapi_client/models/secure3d_response.rb +21 -12
  454. data/lib/openapi_client/models/sender_info.rb +59 -41
  455. data/lib/openapi_client/models/sepa.rb +21 -12
  456. data/lib/openapi_client/models/sepa_mandate.rb +21 -12
  457. data/lib/openapi_client/models/sepa_payment_method.rb +21 -12
  458. data/lib/openapi_client/models/sepa_payment_method_all_of.rb +21 -12
  459. data/lib/openapi_client/models/sepa_sale_transaction.rb +24 -102
  460. data/lib/openapi_client/models/sepa_sale_transaction_all_of.rb +22 -100
  461. data/lib/openapi_client/models/shared_secret_configuration_request.rb +21 -12
  462. data/lib/openapi_client/models/shared_secret_configuration_response.rb +21 -12
  463. data/lib/openapi_client/models/ship_to_address.rb +21 -12
  464. data/lib/openapi_client/models/shipping.rb +21 -12
  465. data/lib/openapi_client/models/soft_descriptor.rb +70 -16
  466. data/lib/openapi_client/models/split_shipment.rb +21 -12
  467. data/lib/openapi_client/models/store_branding_style_configuration.rb +229 -0
  468. data/lib/openapi_client/models/store_email_settings.rb +226 -0
  469. data/lib/openapi_client/models/store_email_settings_result.rb +217 -0
  470. data/lib/openapi_client/models/store_fraud_settings.rb +21 -12
  471. data/lib/openapi_client/models/store_fraud_settings_result.rb +21 -12
  472. data/lib/openapi_client/models/store_url_configuration.rb +21 -12
  473. data/lib/openapi_client/models/store_url_configuration_request.rb +21 -12
  474. data/lib/openapi_client/models/store_url_configuration_response.rb +21 -12
  475. data/lib/openapi_client/models/store_url_configuration_result.rb +21 -12
  476. data/lib/openapi_client/models/stored_credential.rb +27 -18
  477. data/lib/openapi_client/models/sub_merchant_data.rb +21 -12
  478. data/lib/openapi_client/models/sub_merchant_split.rb +21 -12
  479. data/lib/openapi_client/models/tele_check_ach_payment_method.rb +784 -0
  480. data/lib/openapi_client/models/tele_check_ach_payment_method_ach_bill_to.rb +611 -0
  481. data/lib/openapi_client/models/tele_check_cbp_payment_method.rb +230 -0
  482. data/lib/openapi_client/models/tele_check_ica_payment_method.rb +321 -0
  483. data/lib/openapi_client/models/tele_check_ica_payment_method_all_of.rb +286 -0
  484. data/lib/openapi_client/models/{authentication.rb → text.rb} +41 -34
  485. data/lib/openapi_client/models/title.rb +223 -0
  486. data/lib/openapi_client/models/token_identifier.rb +21 -12
  487. data/lib/openapi_client/models/top_bar.rb +223 -0
  488. data/lib/openapi_client/models/transaction_error_response.rb +73 -21
  489. data/lib/openapi_client/models/transaction_origin.rb +2 -2
  490. data/lib/openapi_client/models/transaction_response.rb +76 -24
  491. data/lib/openapi_client/models/transaction_type.rb +2 -2
  492. data/lib/openapi_client/models/union_pay_authentication_request.rb +26 -27
  493. data/lib/openapi_client/models/union_pay_authentication_request_all_of.rb +22 -23
  494. data/lib/openapi_client/models/{union_pay_authentication_verification_request.rb → union_pay_authentication_update_request.rb} +40 -75
  495. data/lib/openapi_client/models/{union_pay_authentication_verification_request_all_of.rb → union_pay_authentication_update_request_all_of.rb} +35 -70
  496. data/lib/openapi_client/models/update_email_settings_request.rb +213 -0
  497. data/lib/openapi_client/models/update_email_settings_response.rb +244 -0
  498. data/lib/openapi_client/models/update_fraud_settings_request.rb +21 -12
  499. data/lib/openapi_client/models/update_fraud_settings_response.rb +21 -12
  500. data/lib/openapi_client/models/update_payment_token.rb +250 -0
  501. data/lib/openapi_client/models/use_payment_token.rb +21 -12
  502. data/lib/openapi_client/models/verification3ds.rb +21 -12
  503. data/lib/openapi_client/models/verification_avs.rb +21 -12
  504. data/lib/openapi_client/models/verification_cvv.rb +21 -12
  505. data/lib/openapi_client/models/void_pre_auth_transactions.rb +208 -0
  506. data/lib/openapi_client/models/void_transaction.rb +26 -63
  507. data/lib/openapi_client/models/wallet_payment_method.rb +22 -13
  508. data/lib/openapi_client/models/wallet_pre_auth_transaction.rb +39 -105
  509. data/lib/openapi_client/models/wallet_pre_auth_transaction_all_of.rb +37 -103
  510. data/lib/openapi_client/models/wallet_sale_transaction.rb +24 -102
  511. data/lib/openapi_client/models/wallet_sale_transaction_all_of.rb +22 -100
  512. data/lib/openapi_client/version.rb +3 -3
  513. data/lib/simple/gateway.rb +76 -8
  514. data/spec/api/authentication_api_spec.rb +3 -2
  515. data/spec/api/card_info_lookup_api_spec.rb +1 -1
  516. data/spec/api/card_verification_api_spec.rb +1 -1
  517. data/spec/api/currency_conversion_api_spec.rb +2 -2
  518. data/spec/api/fraud_detect_api_spec.rb +2 -2
  519. data/spec/api/information_lookup_api_spec.rb +71 -0
  520. data/spec/api/order_api_spec.rb +3 -3
  521. data/spec/api/payment_api_spec.rb +8 -8
  522. data/spec/api/payment_schedules_api_spec.rb +2 -2
  523. data/spec/api/payment_token_api_spec.rb +41 -2
  524. data/spec/api/payment_url_api_spec.rb +3 -3
  525. data/spec/api/verification_api_spec.rb +71 -0
  526. data/spec/api_client_spec.rb +3 -3
  527. data/spec/configuration_spec.rb +2 -2
  528. data/spec/models/access_token_request_spec.rb +53 -0
  529. data/spec/models/access_token_response_spec.rb +29 -9
  530. data/spec/models/account_info_lookup_request_spec.rb +47 -0
  531. data/spec/models/account_updater_response_spec.rb +2 -2
  532. data/spec/models/{authentication_verification_request_spec.rb → account_verification_request_spec.rb} +12 -12
  533. data/spec/models/ach_credit_transaction_spec.rb +41 -0
  534. data/spec/models/ach_post_auth_transaction_all_of_spec.rb +41 -0
  535. data/spec/models/ach_post_auth_transaction_spec.rb +41 -0
  536. data/spec/models/ach_pre_auth_transaction_all_of_spec.rb +41 -0
  537. data/spec/models/ach_pre_auth_transaction_spec.rb +41 -0
  538. data/spec/models/{secure3d_authentication_request_spec.rb → ach_recurring_type_spec.rb} +8 -8
  539. data/spec/models/ach_response_spec.rb +65 -0
  540. data/spec/models/ach_return_transaction_spec.rb +41 -0
  541. data/spec/models/ach_sale_transaction_spec.rb +41 -0
  542. data/spec/models/ach_void_transaction_spec.rb +41 -0
  543. data/spec/models/acs_response_spec.rb +41 -0
  544. data/spec/models/additional_amount_rate_spec.rb +2 -2
  545. data/spec/models/additional_details_spec.rb +26 -2
  546. data/spec/models/additional_transaction_details_spec.rb +3 -3
  547. data/spec/models/address_spec.rb +2 -2
  548. data/spec/models/airline_ancillary_service_category_spec.rb +2 -2
  549. data/spec/models/airline_spec.rb +2 -2
  550. data/spec/models/airline_travel_route_spec.rb +2 -2
  551. data/spec/models/ali_pay_payment_method_all_of_spec.rb +2 -2
  552. data/spec/models/ali_pay_payment_method_spec.rb +2 -2
  553. data/spec/models/ali_pay_sale_transaction_all_of_spec.rb +2 -2
  554. data/spec/models/ali_pay_sale_transaction_spec.rb +2 -2
  555. data/spec/models/ali_pay_spec.rb +2 -2
  556. data/spec/models/amount_components_spec.rb +2 -2
  557. data/spec/models/amount_spec.rb +2 -2
  558. data/spec/models/authentication_request_spec.rb +41 -0
  559. data/spec/models/{authentication_spec.rb → authentication_result_spec.rb} +9 -9
  560. data/spec/models/{authentication_redirect_params_spec.rb → authentication_update_request_spec.rb} +11 -11
  561. data/spec/models/avs_response_spec.rb +8 -2
  562. data/spec/models/background_color_spec.rb +53 -0
  563. data/spec/models/background_spec.rb +59 -0
  564. data/spec/models/bancontact_qr_spec.rb +2 -2
  565. data/spec/models/basic_response_spec.rb +2 -2
  566. data/spec/models/billing_address_spec.rb +2 -2
  567. data/spec/models/billing_spec.rb +2 -2
  568. data/spec/models/block_card_spec.rb +2 -2
  569. data/spec/models/block_domain_spec.rb +2 -2
  570. data/spec/models/block_ip_address_spec.rb +2 -2
  571. data/spec/models/block_name_spec.rb +2 -2
  572. data/spec/models/blocked_card_number_spec.rb +2 -2
  573. data/spec/models/blocked_items_spec.rb +2 -2
  574. data/spec/models/body_spec.rb +41 -0
  575. data/spec/models/borders_spec.rb +41 -0
  576. data/spec/models/branding_style_configuration_request_spec.rb +41 -0
  577. data/spec/models/branding_style_configuration_response_all_of_spec.rb +41 -0
  578. data/spec/models/branding_style_configuration_response_spec.rb +59 -0
  579. data/spec/models/branding_style_configuration_result_spec.rb +47 -0
  580. data/spec/models/button_spec.rb +47 -0
  581. data/spec/models/car_rental_extra_charges_spec.rb +2 -2
  582. data/spec/models/car_rental_spec.rb +2 -2
  583. data/spec/models/card_function_spec.rb +2 -2
  584. data/spec/models/card_info_lookup_request_spec.rb +2 -2
  585. data/spec/models/card_info_lookup_response_all_of_spec.rb +51 -0
  586. data/spec/models/card_info_lookup_response_spec.rb +2 -2
  587. data/spec/models/card_info_spec.rb +2 -2
  588. data/spec/models/card_spec.rb +2 -2
  589. data/spec/models/card_verification_request_spec.rb +2 -2
  590. data/spec/models/china_domestic_payment_method_all_of_spec.rb +2 -2
  591. data/spec/models/china_domestic_payment_method_spec.rb +2 -2
  592. data/spec/models/china_domestic_spec.rb +2 -2
  593. data/spec/models/china_pn_r_sale_transaction_all_of_spec.rb +2 -2
  594. data/spec/models/china_pn_r_sale_transaction_spec.rb +2 -2
  595. data/spec/models/classic_mode_spec.rb +95 -0
  596. data/spec/models/clearing_details_spec.rb +65 -0
  597. data/spec/models/clearing_element_spec.rb +53 -0
  598. data/spec/models/client_locale_spec.rb +2 -2
  599. data/spec/models/client_registration_all_of_spec.rb +41 -0
  600. data/spec/models/client_registration_spec.rb +2 -2
  601. data/spec/models/combined_mode_spec.rb +59 -0
  602. data/spec/models/connect_mode_spec.rb +35 -0
  603. data/spec/models/contact_spec.rb +2 -2
  604. data/spec/models/content_spec.rb +41 -0
  605. data/spec/models/country_profile_spec.rb +2 -2
  606. data/spec/models/create_payment_token_spec.rb +2 -2
  607. data/spec/models/currency_conversion_spec.rb +2 -2
  608. data/spec/models/customer_address_all_of_spec.rb +41 -0
  609. data/spec/models/customer_address_spec.rb +2 -2
  610. data/spec/models/customer_spec.rb +2 -2
  611. data/spec/models/dcc_all_of_spec.rb +2 -2
  612. data/spec/models/dcc_exchange_rate_request_all_of_spec.rb +2 -2
  613. data/spec/models/dcc_exchange_rate_request_spec.rb +2 -2
  614. data/spec/models/dcc_spec.rb +2 -2
  615. data/spec/models/decrypted_apple_pay_spec.rb +2 -2
  616. data/spec/models/decrypted_apple_pay_wallet_payment_method_all_of_spec.rb +2 -2
  617. data/spec/models/decrypted_apple_pay_wallet_payment_method_spec.rb +2 -2
  618. data/spec/models/decrypted_google_pay_spec.rb +2 -2
  619. data/spec/models/decrypted_google_pay_wallet_payment_method_all_of_spec.rb +2 -2
  620. data/spec/models/decrypted_google_pay_wallet_payment_method_spec.rb +2 -2
  621. data/spec/models/decrypted_samsung_pay_spec.rb +2 -2
  622. data/spec/models/decrypted_samsung_pay_wallet_payment_method_all_of_spec.rb +2 -2
  623. data/spec/models/decrypted_samsung_pay_wallet_payment_method_spec.rb +2 -2
  624. data/spec/models/delete_branding_style_configuration_response_all_of_spec.rb +47 -0
  625. data/spec/models/delete_branding_style_configuration_response_spec.rb +65 -0
  626. data/spec/models/device_spec.rb +2 -2
  627. data/spec/models/disbursement_spec.rb +2 -2
  628. data/spec/models/disbursement_transaction_type_all_of_spec.rb +41 -0
  629. data/spec/models/disbursement_transaction_type_spec.rb +8 -2
  630. data/spec/models/document_spec.rb +2 -2
  631. data/spec/models/dynamic_pricing_all_of_spec.rb +2 -2
  632. data/spec/models/dynamic_pricing_exchange_rate_request_all_of_spec.rb +2 -2
  633. data/spec/models/dynamic_pricing_exchange_rate_request_spec.rb +2 -2
  634. data/spec/models/dynamic_pricing_spec.rb +2 -2
  635. data/spec/models/email_notification_data_spec.rb +65 -0
  636. data/spec/models/encrypted_apple_pay_header_spec.rb +2 -2
  637. data/spec/models/encrypted_apple_pay_spec.rb +2 -2
  638. data/spec/models/encrypted_apple_pay_wallet_payment_method_all_of_spec.rb +2 -2
  639. data/spec/models/encrypted_apple_pay_wallet_payment_method_spec.rb +2 -2
  640. data/spec/models/encrypted_google_pay_data_spec.rb +2 -2
  641. data/spec/models/encrypted_google_pay_spec.rb +2 -2
  642. data/spec/models/encrypted_google_pay_wallet_payment_method_all_of_spec.rb +2 -2
  643. data/spec/models/encrypted_google_pay_wallet_payment_method_spec.rb +2 -2
  644. data/spec/models/encrypted_samsung_pay_spec.rb +2 -2
  645. data/spec/models/encrypted_samsung_pay_wallet_payment_method_all_of_spec.rb +2 -2
  646. data/spec/models/encrypted_samsung_pay_wallet_payment_method_spec.rb +2 -2
  647. data/spec/models/{authentication_redirect_spec.rb → endpoint_response_spec.rb} +15 -15
  648. data/spec/models/error_details_spec.rb +2 -2
  649. data/spec/models/error_message_spec.rb +2 -2
  650. data/spec/models/error_response_all_of_spec.rb +41 -0
  651. data/spec/models/error_response_spec.rb +2 -2
  652. data/spec/models/error_spec.rb +2 -2
  653. data/spec/models/exchange_rate_request_spec.rb +2 -2
  654. data/spec/models/exchange_rate_response_all_of_spec.rb +101 -0
  655. data/spec/models/exchange_rate_response_spec.rb +2 -2
  656. data/spec/models/expiration_spec.rb +2 -2
  657. data/spec/models/font_face_spec.rb +35 -0
  658. data/spec/models/font_properties_spec.rb +59 -0
  659. data/spec/models/font_weight_spec.rb +35 -0
  660. data/spec/models/footer_spec.rb +41 -0
  661. data/spec/models/fraud_address_spec.rb +2 -2
  662. data/spec/models/fraud_order_items_spec.rb +2 -2
  663. data/spec/models/fraud_order_spec.rb +2 -2
  664. data/spec/models/fraud_registration_card_spec.rb +2 -2
  665. data/spec/models/fraud_registration_device_items_spec.rb +2 -2
  666. data/spec/models/fraud_registration_device_spec.rb +2 -2
  667. data/spec/models/fraud_registration_error_spec.rb +2 -2
  668. data/spec/models/fraud_registration_response_spec.rb +2 -2
  669. data/spec/models/fraud_registration_spec.rb +2 -2
  670. data/spec/models/fraud_score_spec.rb +2 -2
  671. data/spec/models/fraud_settings_response_all_of_spec.rb +83 -0
  672. data/spec/models/fraud_settings_response_spec.rb +2 -2
  673. data/spec/models/fraud_settings_spec.rb +2 -2
  674. data/spec/models/frequency_spec.rb +2 -2
  675. data/spec/models/funding_transaction_type_all_of_spec.rb +41 -0
  676. data/spec/models/funding_transaction_type_spec.rb +8 -2
  677. data/spec/models/header_spec.rb +41 -0
  678. data/spec/models/hover_spec.rb +41 -0
  679. data/spec/models/id_info_spec.rb +47 -0
  680. data/spec/models/industry_specific_extensions_spec.rb +8 -2
  681. data/spec/models/initiate_clearing_response_all_of_spec.rb +57 -0
  682. data/spec/models/initiate_clearing_response_spec.rb +75 -0
  683. data/spec/models/installment_options_spec.rb +2 -2
  684. data/spec/models/issuer_response_spec.rb +2 -2
  685. data/spec/models/items_spec.rb +2 -2
  686. data/spec/models/location_spec.rb +2 -2
  687. data/spec/models/lockout_time_spec.rb +2 -2
  688. data/spec/models/lodging_extra_charges_spec.rb +2 -2
  689. data/spec/models/lodging_spec.rb +2 -2
  690. data/spec/models/logo_spec.rb +57 -0
  691. data/spec/models/loyalty_spec.rb +2 -2
  692. data/spec/models/masterpass_wallet_payment_method_all_of_spec.rb +47 -0
  693. data/spec/models/masterpass_wallet_payment_method_spec.rb +47 -0
  694. data/spec/models/maximum_purchase_amount_spec.rb +2 -2
  695. data/spec/models/mcc6012_spec.rb +71 -0
  696. data/spec/models/merchant_spec.rb +2 -2
  697. data/spec/models/method_spec.rb +2 -2
  698. data/spec/models/mobile_header_area_spec.rb +41 -0
  699. data/spec/models/mobile_spec.rb +47 -0
  700. data/spec/models/order_error_response_spec.rb +2 -2
  701. data/spec/models/order_response_all_of_spec.rb +65 -0
  702. data/spec/models/order_response_spec.rb +2 -2
  703. data/spec/models/order_spec.rb +2 -2
  704. data/spec/models/pay_pal_payment_method_all_of_spec.rb +2 -2
  705. data/spec/models/pay_pal_payment_method_spec.rb +2 -2
  706. data/spec/models/pay_pal_spec.rb +2 -2
  707. data/spec/models/payment_card_credit_transaction_spec.rb +2 -2
  708. data/spec/models/payment_card_disbursement_transaction_all_of_spec.rb +2 -2
  709. data/spec/models/payment_card_disbursement_transaction_spec.rb +2 -2
  710. data/spec/models/payment_card_forced_ticket_transaction_all_of_spec.rb +2 -2
  711. data/spec/models/payment_card_forced_ticket_transaction_spec.rb +2 -2
  712. data/spec/models/payment_card_info_lookup_request_all_of_spec.rb +41 -0
  713. data/spec/models/payment_card_info_lookup_request_spec.rb +41 -0
  714. data/spec/models/payment_card_payer_auth_transaction_all_of_spec.rb +2 -2
  715. data/spec/models/payment_card_payer_auth_transaction_spec.rb +2 -2
  716. data/spec/models/payment_card_payment_method_all_of_spec.rb +2 -2
  717. data/spec/models/payment_card_payment_method_spec.rb +2 -2
  718. data/spec/models/payment_card_payment_token_update_request_spec.rb +53 -0
  719. data/spec/models/payment_card_payment_tokenization_request_all_of_spec.rb +2 -2
  720. data/spec/models/payment_card_payment_tokenization_request_spec.rb +2 -2
  721. data/spec/models/payment_card_pre_auth_transaction_all_of_spec.rb +20 -2
  722. data/spec/models/payment_card_pre_auth_transaction_spec.rb +20 -2
  723. data/spec/models/payment_card_sale_transaction_all_of_spec.rb +20 -2
  724. data/spec/models/payment_card_sale_transaction_spec.rb +20 -2
  725. data/spec/models/payment_card_spec.rb +2 -8
  726. data/spec/models/payment_card_verification_request_all_of_spec.rb +41 -0
  727. data/spec/models/payment_card_verification_request_spec.rb +41 -0
  728. data/spec/models/payment_device_credit_transaction_all_of_spec.rb +2 -2
  729. data/spec/models/payment_device_credit_transaction_spec.rb +2 -2
  730. data/spec/models/payment_device_disbursement_transaction_all_of_spec.rb +2 -2
  731. data/spec/models/payment_device_disbursement_transaction_spec.rb +2 -2
  732. data/spec/models/payment_device_payment_method_all_of_spec.rb +2 -2
  733. data/spec/models/payment_device_payment_method_spec.rb +2 -2
  734. data/spec/models/payment_device_payment_tokenization_request_all_of_spec.rb +2 -2
  735. data/spec/models/payment_device_payment_tokenization_request_spec.rb +2 -2
  736. data/spec/models/payment_device_pre_auth_transaction_all_of_spec.rb +8 -2
  737. data/spec/models/payment_device_pre_auth_transaction_spec.rb +8 -2
  738. data/spec/models/payment_device_sale_transaction_all_of_spec.rb +2 -2
  739. data/spec/models/payment_device_sale_transaction_spec.rb +2 -2
  740. data/spec/models/payment_device_spec.rb +2 -2
  741. data/spec/models/payment_facilitator_spec.rb +2 -2
  742. data/spec/models/payment_method_details_spec.rb +2 -2
  743. data/spec/models/payment_method_payment_schedules_request_all_of_spec.rb +2 -2
  744. data/spec/models/payment_method_payment_schedules_request_spec.rb +2 -2
  745. data/spec/models/payment_method_type_spec.rb +2 -2
  746. data/spec/models/payment_registration_all_of_spec.rb +71 -0
  747. data/spec/models/payment_registration_spec.rb +2 -2
  748. data/spec/models/payment_schedules_error_response_spec.rb +2 -2
  749. data/spec/models/payment_schedules_request_spec.rb +2 -2
  750. data/spec/models/payment_schedules_response_all_of_spec.rb +57 -0
  751. data/spec/models/payment_schedules_response_spec.rb +2 -2
  752. data/spec/models/payment_spec.rb +2 -2
  753. data/spec/models/payment_token_credit_transaction_all_of_spec.rb +2 -2
  754. data/spec/models/payment_token_credit_transaction_spec.rb +2 -2
  755. data/spec/models/payment_token_details_all_of_spec.rb +2 -2
  756. data/spec/models/payment_token_details_spec.rb +2 -2
  757. data/spec/models/payment_token_disbursement_transaction_all_of_spec.rb +2 -2
  758. data/spec/models/payment_token_disbursement_transaction_spec.rb +2 -2
  759. data/spec/models/payment_token_info_lookup_request_all_of_spec.rb +41 -0
  760. data/spec/models/payment_token_info_lookup_request_spec.rb +41 -0
  761. data/spec/models/payment_token_payment_method_all_of_spec.rb +2 -2
  762. data/spec/models/payment_token_payment_method_spec.rb +2 -2
  763. data/spec/models/payment_token_pre_auth_transaction_all_of_spec.rb +20 -2
  764. data/spec/models/payment_token_pre_auth_transaction_spec.rb +20 -2
  765. data/spec/models/payment_token_sale_transaction_all_of_spec.rb +14 -2
  766. data/spec/models/payment_token_sale_transaction_spec.rb +14 -2
  767. data/spec/models/payment_token_update_response_all_of_spec.rb +57 -0
  768. data/spec/models/payment_token_update_response_spec.rb +75 -0
  769. data/spec/models/payment_token_verification_request_all_of_spec.rb +41 -0
  770. data/spec/models/payment_token_verification_request_spec.rb +41 -0
  771. data/spec/models/payment_tokenization_error_response_spec.rb +2 -2
  772. data/spec/models/payment_tokenization_request_spec.rb +8 -2
  773. data/spec/models/payment_tokenization_response_all_of_spec.rb +87 -0
  774. data/spec/models/payment_tokenization_response_spec.rb +2 -2
  775. data/spec/models/payment_url_detail_response_all_of_spec.rb +41 -0
  776. data/spec/models/payment_url_detail_response_spec.rb +2 -2
  777. data/spec/models/payment_url_detail_spec.rb +2 -2
  778. data/spec/models/payment_url_error_response_spec.rb +2 -2
  779. data/spec/models/payment_url_request_spec.rb +2 -2
  780. data/spec/models/payment_url_response_all_of_spec.rb +63 -0
  781. data/spec/models/payment_url_response_spec.rb +2 -2
  782. data/spec/models/payment_url_status_spec.rb +2 -2
  783. data/spec/models/paypal_credit_transaction_all_of_spec.rb +2 -2
  784. data/spec/models/paypal_credit_transaction_spec.rb +2 -2
  785. data/spec/models/phone_spec.rb +2 -2
  786. data/spec/models/post_auth_transaction_all_of_spec.rb +2 -2
  787. data/spec/models/post_auth_transaction_spec.rb +2 -2
  788. data/spec/models/primary_spec.rb +41 -0
  789. data/spec/models/primary_transaction_spec.rb +2 -2
  790. data/spec/models/processor_data_spec.rb +2 -2
  791. data/spec/models/properties_spec.rb +65 -0
  792. data/spec/models/purchase_cards_level2_spec.rb +2 -2
  793. data/spec/models/purchase_cards_level3_line_items_spec.rb +2 -2
  794. data/spec/models/purchase_cards_level3_spec.rb +2 -2
  795. data/spec/models/purchase_cards_spec.rb +2 -2
  796. data/spec/models/receiver_info_spec.rb +2 -2
  797. data/spec/models/recurring_payment_details_response_all_of_spec.rb +41 -0
  798. data/spec/models/recurring_payment_details_response_spec.rb +2 -2
  799. data/spec/models/recurring_payment_details_spec.rb +2 -2
  800. data/spec/models/referenced_order_payment_schedules_request_all_of_spec.rb +2 -2
  801. data/spec/models/referenced_order_payment_schedules_request_spec.rb +2 -2
  802. data/spec/models/referenced_order_payment_tokenization_request_all_of_spec.rb +2 -2
  803. data/spec/models/referenced_order_payment_tokenization_request_spec.rb +2 -2
  804. data/spec/models/registration_method_spec.rb +2 -2
  805. data/spec/models/remove_fraud_blocked_items_response_all_of_spec.rb +41 -0
  806. data/spec/models/remove_fraud_blocked_items_response_spec.rb +2 -2
  807. data/spec/models/response_amount_components_all_of_spec.rb +2 -2
  808. data/spec/models/response_amount_components_spec.rb +2 -2
  809. data/spec/models/response_type_spec.rb +2 -2
  810. data/spec/models/return_transaction_all_of_spec.rb +2 -2
  811. data/spec/models/return_transaction_spec.rb +2 -2
  812. data/spec/models/score_only_request_spec.rb +2 -2
  813. data/spec/models/score_only_response_fraud_score_explanations_spec.rb +2 -2
  814. data/spec/models/score_only_response_fraud_score_spec.rb +2 -2
  815. data/spec/models/score_only_response_spec.rb +2 -2
  816. data/spec/models/secondary_transaction_spec.rb +14 -2
  817. data/spec/models/secure3_d10_authentication_request_all_of_spec.rb +41 -0
  818. data/spec/models/secure3_d10_authentication_request_spec.rb +41 -0
  819. data/spec/models/secure3_d10_authentication_result_all_of_spec.rb +2 -2
  820. data/spec/models/secure3_d10_authentication_result_spec.rb +2 -2
  821. data/spec/models/{secure3d_authentication_verification_request_all_of_spec.rb → secure3_d10_authentication_update_request_all_of_spec.rb} +14 -8
  822. data/spec/models/{secure3d_authentication_verification_request_spec.rb → secure3_d10_authentication_update_request_spec.rb} +14 -8
  823. data/spec/models/secure3_d21_authentication_request_all_of_spec.rb +67 -0
  824. data/spec/models/secure3_d21_authentication_request_spec.rb +67 -0
  825. data/spec/models/secure3_d21_authentication_result_all_of_spec.rb +2 -2
  826. data/spec/models/secure3_d21_authentication_result_spec.rb +2 -2
  827. data/spec/models/secure3_d21_authentication_update_request_all_of_spec.rb +51 -0
  828. data/spec/models/secure3_d21_authentication_update_request_spec.rb +51 -0
  829. data/spec/models/secure3_d_authentication_response_params_spec.rb +71 -0
  830. data/spec/models/secure3_d_authentication_response_secure3d_method_spec.rb +47 -0
  831. data/spec/models/secure3_d_authentication_response_spec.rb +67 -0
  832. data/spec/models/secure3d_response_spec.rb +2 -2
  833. data/spec/models/sender_info_spec.rb +2 -2
  834. data/spec/models/sepa_mandate_spec.rb +2 -2
  835. data/spec/models/sepa_payment_method_all_of_spec.rb +2 -2
  836. data/spec/models/sepa_payment_method_spec.rb +2 -2
  837. data/spec/models/sepa_sale_transaction_all_of_spec.rb +2 -2
  838. data/spec/models/sepa_sale_transaction_spec.rb +2 -2
  839. data/spec/models/sepa_spec.rb +2 -2
  840. data/spec/models/shared_secret_configuration_request_spec.rb +2 -2
  841. data/spec/models/shared_secret_configuration_response_all_of_spec.rb +59 -0
  842. data/spec/models/shared_secret_configuration_response_spec.rb +2 -2
  843. data/spec/models/ship_to_address_spec.rb +2 -2
  844. data/spec/models/shipping_spec.rb +2 -2
  845. data/spec/models/soft_descriptor_spec.rb +2 -2
  846. data/spec/models/split_shipment_spec.rb +2 -2
  847. data/spec/models/store_branding_style_configuration_spec.rb +53 -0
  848. data/spec/models/store_email_settings_result_spec.rb +47 -0
  849. data/spec/models/store_email_settings_spec.rb +47 -0
  850. data/spec/models/store_fraud_settings_result_spec.rb +2 -2
  851. data/spec/models/store_fraud_settings_spec.rb +2 -2
  852. data/spec/models/store_url_configuration_request_spec.rb +2 -2
  853. data/spec/models/store_url_configuration_response_all_of_spec.rb +41 -0
  854. data/spec/models/store_url_configuration_response_spec.rb +2 -2
  855. data/spec/models/store_url_configuration_result_spec.rb +2 -2
  856. data/spec/models/store_url_configuration_spec.rb +2 -2
  857. data/spec/models/stored_credential_spec.rb +2 -2
  858. data/spec/models/sub_merchant_data_spec.rb +2 -2
  859. data/spec/models/sub_merchant_split_spec.rb +2 -2
  860. data/spec/models/tele_check_ach_payment_method_ach_bill_to_spec.rb +95 -0
  861. data/spec/models/tele_check_ach_payment_method_spec.rb +165 -0
  862. data/spec/models/tele_check_cbp_payment_method_all_of_spec.rb +41 -0
  863. data/spec/models/tele_check_cbp_payment_method_spec.rb +41 -0
  864. data/spec/models/tele_check_ica_payment_method_all_of_spec.rb +53 -0
  865. data/spec/models/tele_check_ica_payment_method_spec.rb +53 -0
  866. data/spec/models/text_spec.rb +47 -0
  867. data/spec/models/title_spec.rb +41 -0
  868. data/spec/models/token_identifier_spec.rb +2 -2
  869. data/spec/models/top_bar_spec.rb +41 -0
  870. data/spec/models/transaction_error_response_spec.rb +15 -3
  871. data/spec/models/transaction_origin_spec.rb +2 -2
  872. data/spec/models/transaction_response_all_of_spec.rb +175 -0
  873. data/spec/models/transaction_response_spec.rb +15 -3
  874. data/spec/models/transaction_type_spec.rb +2 -2
  875. data/spec/models/union_pay_authentication_request_all_of_spec.rb +2 -2
  876. data/spec/models/union_pay_authentication_request_spec.rb +2 -2
  877. data/spec/models/{union_pay_authentication_verification_request_all_of_spec.rb → union_pay_authentication_update_request_all_of_spec.rb} +14 -8
  878. data/spec/models/{union_pay_authentication_verification_request_spec.rb → union_pay_authentication_update_request_spec.rb} +14 -8
  879. data/spec/models/update_email_settings_request_spec.rb +41 -0
  880. data/spec/models/update_email_settings_response_all_of_spec.rb +41 -0
  881. data/spec/models/update_email_settings_response_spec.rb +59 -0
  882. data/spec/models/update_fraud_settings_request_spec.rb +2 -2
  883. data/spec/models/update_fraud_settings_response_all_of_spec.rb +41 -0
  884. data/spec/models/update_fraud_settings_response_spec.rb +2 -2
  885. data/spec/models/update_payment_token_spec.rb +59 -0
  886. data/spec/models/use_payment_token_spec.rb +2 -2
  887. data/spec/models/verification3ds_spec.rb +2 -2
  888. data/spec/models/verification_avs_spec.rb +2 -2
  889. data/spec/models/verification_cvv_spec.rb +2 -2
  890. data/spec/models/void_pre_auth_transactions_spec.rb +41 -0
  891. data/spec/models/void_transaction_all_of_spec.rb +41 -0
  892. data/spec/models/void_transaction_spec.rb +8 -2
  893. data/spec/models/wallet_payment_method_spec.rb +2 -2
  894. data/spec/models/wallet_pre_auth_transaction_all_of_spec.rb +8 -2
  895. data/spec/models/wallet_pre_auth_transaction_spec.rb +8 -2
  896. data/spec/models/wallet_sale_transaction_all_of_spec.rb +2 -2
  897. data/spec/models/wallet_sale_transaction_spec.rb +2 -2
  898. data/spec/spec_helper.rb +2 -2
  899. metadata +435 -55
  900. data/docs/Authentication.md +0 -17
  901. data/docs/AuthenticationRedirect.md +0 -21
  902. data/docs/AuthenticationRedirectParams.md +0 -21
  903. data/docs/AuthenticationVerificationRequest.md +0 -23
  904. data/docs/CardInfoLookupApi.md +0 -70
  905. data/docs/CardVerificationApi.md +0 -70
  906. data/docs/UnionPayAuthenticationVerificationRequest.md +0 -17
  907. data/docs/UnionPayAuthenticationVerificationRequestAllOf.md +0 -17
  908. data/lib/openapi_client/api/card_info_lookup_api.rb +0 -125
  909. data/lib/openapi_client/api/card_verification_api.rb +0 -125
@@ -3,10 +3,10 @@
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.9.1.20191223.002
6
+ The version of the OpenAPI document: 6.13.0.20200810.001
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: unset
9
+ OpenAPI Generator version: 4.1.1
10
10
 
11
11
  =end
12
12
 
@@ -103,17 +103,17 @@ module OpenapiClient
103
103
  # Builds the object from hash
104
104
  # @param [Hash] attributes Model attributes in the form of hash
105
105
  # @return [Object] Returns the model itself
106
- def build_from_hash(attributes)
106
+ def build_from_hash(attributes, attribute_map = self.class.attribute_map, openapi_types = self.class.openapi_types)
107
107
  return nil unless attributes.is_a?(Hash)
108
- self.class.openapi_types.each_pair do |key, type|
108
+ openapi_types.each_pair do |key, type|
109
109
  if type =~ /\AArray<(.*)>/i
110
110
  # check to ensure the input is an array given that the attribute
111
111
  # is documented as an array but the input is not
112
- if attributes[self.class.attribute_map[key]].is_a?(Array)
113
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
112
+ if attributes[attribute_map[key]].is_a?(Array)
113
+ self.send("#{key}=", attributes[attribute_map[key]].map { |v| _deserialize($1, v) })
114
114
  end
115
- elsif !attributes[self.class.attribute_map[key]].nil?
116
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
115
+ elsif !attributes[attribute_map[key]].nil?
116
+ self.send("#{key}=", _deserialize(type, attributes[attribute_map[key]]))
117
117
  end # or else data not found in attributes(hash), not an issue as the data can be optional
118
118
  end
119
119
 
@@ -157,7 +157,12 @@ module OpenapiClient
157
157
  end
158
158
  end
159
159
  else # model
160
- OpenapiClient.const_get(type).build_from_hash(value)
160
+ klass = OpenapiClient.const_get(type)
161
+ if klass.respond_to?(:openapi_discriminator_name)
162
+ klass = OpenapiClient.const_get(value[klass.attribute_map[klass.openapi_discriminator_name]])
163
+ end
164
+
165
+ klass.build_from_hash(value)
161
166
  end
162
167
  end
163
168
 
@@ -175,11 +180,15 @@ module OpenapiClient
175
180
 
176
181
  # Returns the object in the form of hash
177
182
  # @return [Hash] Returns the object in the form of hash
178
- def to_hash
183
+ def to_hash(attribute_map = self.class.attribute_map, openapi_nullable = Set.new([]))
179
184
  hash = {}
180
- self.class.attribute_map.each_pair do |attr, param|
185
+ attribute_map.each_pair do |attr, param|
181
186
  value = self.send(attr)
182
- next if value.nil?
187
+ if value.nil?
188
+ is_nullable = openapi_nullable.include?(attr)
189
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
190
+ end
191
+
183
192
  hash[param] = _to_hash(value)
184
193
  end
185
194
  hash
@@ -3,10 +3,10 @@
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.9.1.20191223.002
6
+ The version of the OpenAPI document: 6.13.0.20200810.001
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: unset
9
+ OpenAPI Generator version: 4.1.1
10
10
 
11
11
  =end
12
12
 
@@ -15,69 +15,11 @@ require 'date'
15
15
  module OpenapiClient
16
16
  # Request to create a new payment schedule using a payment method.
17
17
  class PaymentMethodPaymentSchedulesRequest < PaymentSchedulesRequest
18
- # Object name of the payment schedules request.
19
- attr_accessor :request_type
20
-
21
- # Store ID number.
22
- attr_accessor :store_id
23
-
24
- # Date of mandate signature.
25
- attr_accessor :start_date
26
-
27
- # Number of times the recurring payment will process.
28
- attr_accessor :number_of_payments
29
-
30
- # Number of failures that can be encountered before re-tries cease.
31
- attr_accessor :maximum_failures
32
-
33
- # Invoice number.
34
- attr_accessor :invoice_number
35
-
36
- # Purchase order number.
37
- attr_accessor :purchase_order_number
38
-
39
- attr_accessor :transaction_origin
40
-
41
- # Dynamic merchant name for the cardholder's statement.
42
- attr_accessor :dynamic_merchant_name
43
-
44
- attr_accessor :frequency
45
-
46
- attr_accessor :transaction_amount
47
-
48
- attr_accessor :client_locale
49
-
50
- # Client order ID if supplied by client.
51
- attr_accessor :order_id
52
-
53
- attr_accessor :billing
54
-
55
- attr_accessor :shipping
56
-
57
- # User supplied comments.
58
- attr_accessor :comments
59
-
60
18
  attr_accessor :payment_method
61
19
 
62
20
  # Attribute mapping from ruby-style variable name to JSON key.
63
21
  def self.attribute_map
64
22
  {
65
- :'request_type' => :'requestType',
66
- :'store_id' => :'storeId',
67
- :'start_date' => :'startDate',
68
- :'number_of_payments' => :'numberOfPayments',
69
- :'maximum_failures' => :'maximumFailures',
70
- :'invoice_number' => :'invoiceNumber',
71
- :'purchase_order_number' => :'purchaseOrderNumber',
72
- :'transaction_origin' => :'transactionOrigin',
73
- :'dynamic_merchant_name' => :'dynamicMerchantName',
74
- :'frequency' => :'frequency',
75
- :'transaction_amount' => :'transactionAmount',
76
- :'client_locale' => :'clientLocale',
77
- :'order_id' => :'orderId',
78
- :'billing' => :'billing',
79
- :'shipping' => :'shipping',
80
- :'comments' => :'comments',
81
23
  :'payment_method' => :'paymentMethod'
82
24
  }
83
25
  end
@@ -85,22 +27,6 @@ module OpenapiClient
85
27
  # Attribute type mapping.
86
28
  def self.openapi_types
87
29
  {
88
- :'request_type' => :'String',
89
- :'store_id' => :'String',
90
- :'start_date' => :'Date',
91
- :'number_of_payments' => :'Integer',
92
- :'maximum_failures' => :'Integer',
93
- :'invoice_number' => :'String',
94
- :'purchase_order_number' => :'String',
95
- :'transaction_origin' => :'TransactionOrigin',
96
- :'dynamic_merchant_name' => :'String',
97
- :'frequency' => :'Frequency',
98
- :'transaction_amount' => :'Amount',
99
- :'client_locale' => :'ClientLocale',
100
- :'order_id' => :'String',
101
- :'billing' => :'Billing',
102
- :'shipping' => :'Shipping',
103
- :'comments' => :'String',
104
30
  :'payment_method' => :'PaymentCardPaymentMethod'
105
31
  }
106
32
  end
@@ -131,70 +57,6 @@ module OpenapiClient
131
57
  # call parent's initialize
132
58
  super(attributes)
133
59
 
134
- if attributes.key?(:'request_type')
135
- self.request_type = attributes[:'request_type']
136
- end
137
-
138
- if attributes.key?(:'store_id')
139
- self.store_id = attributes[:'store_id']
140
- end
141
-
142
- if attributes.key?(:'start_date')
143
- self.start_date = attributes[:'start_date']
144
- end
145
-
146
- if attributes.key?(:'number_of_payments')
147
- self.number_of_payments = attributes[:'number_of_payments']
148
- end
149
-
150
- if attributes.key?(:'maximum_failures')
151
- self.maximum_failures = attributes[:'maximum_failures']
152
- end
153
-
154
- if attributes.key?(:'invoice_number')
155
- self.invoice_number = attributes[:'invoice_number']
156
- end
157
-
158
- if attributes.key?(:'purchase_order_number')
159
- self.purchase_order_number = attributes[:'purchase_order_number']
160
- end
161
-
162
- if attributes.key?(:'transaction_origin')
163
- self.transaction_origin = attributes[:'transaction_origin']
164
- end
165
-
166
- if attributes.key?(:'dynamic_merchant_name')
167
- self.dynamic_merchant_name = attributes[:'dynamic_merchant_name']
168
- end
169
-
170
- if attributes.key?(:'frequency')
171
- self.frequency = attributes[:'frequency']
172
- end
173
-
174
- if attributes.key?(:'transaction_amount')
175
- self.transaction_amount = attributes[:'transaction_amount']
176
- end
177
-
178
- if attributes.key?(:'client_locale')
179
- self.client_locale = attributes[:'client_locale']
180
- end
181
-
182
- if attributes.key?(:'order_id')
183
- self.order_id = attributes[:'order_id']
184
- end
185
-
186
- if attributes.key?(:'billing')
187
- self.billing = attributes[:'billing']
188
- end
189
-
190
- if attributes.key?(:'shipping')
191
- self.shipping = attributes[:'shipping']
192
- end
193
-
194
- if attributes.key?(:'comments')
195
- self.comments = attributes[:'comments']
196
- end
197
-
198
60
  if attributes.key?(:'payment_method')
199
61
  self.payment_method = attributes[:'payment_method']
200
62
  end
@@ -204,26 +66,6 @@ module OpenapiClient
204
66
  # @return Array for valid properties with the reasons
205
67
  def list_invalid_properties
206
68
  invalid_properties = super
207
- if !@store_id.nil? && @store_id.to_s.length > 20
208
- invalid_properties.push('invalid value for "store_id", the character length must be smaller than or equal to 20.')
209
- end
210
-
211
- if !@number_of_payments.nil? && @number_of_payments > 999
212
- invalid_properties.push('invalid value for "number_of_payments", must be smaller than or equal to 999.')
213
- end
214
-
215
- if !@number_of_payments.nil? && @number_of_payments < 1
216
- invalid_properties.push('invalid value for "number_of_payments", must be greater than or equal to 1.')
217
- end
218
-
219
- if !@maximum_failures.nil? && @maximum_failures > 999
220
- invalid_properties.push('invalid value for "maximum_failures", must be smaller than or equal to 999.')
221
- end
222
-
223
- if !@maximum_failures.nil? && @maximum_failures < 1
224
- invalid_properties.push('invalid value for "maximum_failures", must be greater than or equal to 1.')
225
- end
226
-
227
69
  if @payment_method.nil?
228
70
  invalid_properties.push('invalid value for "payment_method", payment_method cannot be nil.')
229
71
  end
@@ -234,74 +76,15 @@ module OpenapiClient
234
76
  # Check to see if the all the properties in the model are valid
235
77
  # @return true if the model is valid
236
78
  def valid?
237
- return false if !@store_id.nil? && @store_id.to_s.length > 20
238
- return false if !@number_of_payments.nil? && @number_of_payments > 999
239
- return false if !@number_of_payments.nil? && @number_of_payments < 1
240
- return false if !@maximum_failures.nil? && @maximum_failures > 999
241
- return false if !@maximum_failures.nil? && @maximum_failures < 1
242
79
  return false if @payment_method.nil?
243
80
  true && super
244
81
  end
245
82
 
246
- # Custom attribute writer method with validation
247
- # @param [Object] store_id Value to be assigned
248
- def store_id=(store_id)
249
- if !store_id.nil? && store_id.to_s.length > 20
250
- fail ArgumentError, 'invalid value for "store_id", the character length must be smaller than or equal to 20.'
251
- end
252
-
253
- @store_id = store_id
254
- end
255
-
256
- # Custom attribute writer method with validation
257
- # @param [Object] number_of_payments Value to be assigned
258
- def number_of_payments=(number_of_payments)
259
- if !number_of_payments.nil? && number_of_payments > 999
260
- fail ArgumentError, 'invalid value for "number_of_payments", must be smaller than or equal to 999.'
261
- end
262
-
263
- if !number_of_payments.nil? && number_of_payments < 1
264
- fail ArgumentError, 'invalid value for "number_of_payments", must be greater than or equal to 1.'
265
- end
266
-
267
- @number_of_payments = number_of_payments
268
- end
269
-
270
- # Custom attribute writer method with validation
271
- # @param [Object] maximum_failures Value to be assigned
272
- def maximum_failures=(maximum_failures)
273
- if !maximum_failures.nil? && maximum_failures > 999
274
- fail ArgumentError, 'invalid value for "maximum_failures", must be smaller than or equal to 999.'
275
- end
276
-
277
- if !maximum_failures.nil? && maximum_failures < 1
278
- fail ArgumentError, 'invalid value for "maximum_failures", must be greater than or equal to 1.'
279
- end
280
-
281
- @maximum_failures = maximum_failures
282
- end
283
-
284
83
  # Checks equality by comparing each attribute.
285
84
  # @param [Object] Object to be compared
286
85
  def ==(o)
287
86
  return true if self.equal?(o)
288
87
  self.class == o.class &&
289
- request_type == o.request_type &&
290
- store_id == o.store_id &&
291
- start_date == o.start_date &&
292
- number_of_payments == o.number_of_payments &&
293
- maximum_failures == o.maximum_failures &&
294
- invoice_number == o.invoice_number &&
295
- purchase_order_number == o.purchase_order_number &&
296
- transaction_origin == o.transaction_origin &&
297
- dynamic_merchant_name == o.dynamic_merchant_name &&
298
- frequency == o.frequency &&
299
- transaction_amount == o.transaction_amount &&
300
- client_locale == o.client_locale &&
301
- order_id == o.order_id &&
302
- billing == o.billing &&
303
- shipping == o.shipping &&
304
- comments == o.comments &&
305
88
  payment_method == o.payment_method && super(o)
306
89
  end
307
90
 
@@ -314,7 +97,7 @@ module OpenapiClient
314
97
  # Calculates hash code according to all attributes.
315
98
  # @return [Integer] Hash code
316
99
  def hash
317
- [request_type, store_id, start_date, number_of_payments, maximum_failures, invoice_number, purchase_order_number, transaction_origin, dynamic_merchant_name, frequency, transaction_amount, client_locale, order_id, billing, shipping, comments, payment_method].hash
100
+ [payment_method].hash
318
101
  end
319
102
 
320
103
  # Builds the object from hash
@@ -327,18 +110,18 @@ module OpenapiClient
327
110
  # Builds the object from hash
328
111
  # @param [Hash] attributes Model attributes in the form of hash
329
112
  # @return [Object] Returns the model itself
330
- def build_from_hash(attributes)
113
+ def build_from_hash(attributes, attribute_map = self.class.attribute_map, openapi_types = self.class.openapi_types)
331
114
  return nil unless attributes.is_a?(Hash)
332
- super(attributes)
333
- self.class.openapi_types.each_pair do |key, type|
115
+ super(attributes, self.class.superclass.attribute_map, self.class.superclass.openapi_types)
116
+ openapi_types.each_pair do |key, type|
334
117
  if type =~ /\AArray<(.*)>/i
335
118
  # check to ensure the input is an array given that the attribute
336
119
  # is documented as an array but the input is not
337
- if attributes[self.class.attribute_map[key]].is_a?(Array)
338
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
120
+ if attributes[attribute_map[key]].is_a?(Array)
121
+ self.send("#{key}=", attributes[attribute_map[key]].map { |v| _deserialize($1, v) })
339
122
  end
340
- elsif !attributes[self.class.attribute_map[key]].nil?
341
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
123
+ elsif !attributes[attribute_map[key]].nil?
124
+ self.send("#{key}=", _deserialize(type, attributes[attribute_map[key]]))
342
125
  end # or else data not found in attributes(hash), not an issue as the data can be optional
343
126
  end
344
127
 
@@ -382,7 +165,12 @@ module OpenapiClient
382
165
  end
383
166
  end
384
167
  else # model
385
- OpenapiClient.const_get(type).build_from_hash(value)
168
+ klass = OpenapiClient.const_get(type)
169
+ if klass.respond_to?(:openapi_discriminator_name)
170
+ klass = OpenapiClient.const_get(value[klass.attribute_map[klass.openapi_discriminator_name]])
171
+ end
172
+
173
+ klass.build_from_hash(value)
386
174
  end
387
175
  end
388
176
 
@@ -400,11 +188,15 @@ module OpenapiClient
400
188
 
401
189
  # Returns the object in the form of hash
402
190
  # @return [Hash] Returns the object in the form of hash
403
- def to_hash
404
- hash = super
405
- self.class.attribute_map.each_pair do |attr, param|
191
+ def to_hash(attribute_map = self.class.attribute_map, openapi_nullable = Set.new([]))
192
+ hash = super(self.class.superclass.attribute_map, openapi_nullable)
193
+ attribute_map.each_pair do |attr, param|
406
194
  value = self.send(attr)
407
- next if value.nil?
195
+ if value.nil?
196
+ is_nullable = openapi_nullable.include?(attr)
197
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
198
+ end
199
+
408
200
  hash[param] = _to_hash(value)
409
201
  end
410
202
  hash
@@ -3,10 +3,10 @@
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.9.1.20191223.002
6
+ The version of the OpenAPI document: 6.13.0.20200810.001
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: unset
9
+ OpenAPI Generator version: 4.1.1
10
10
 
11
11
  =end
12
12
 
@@ -14,69 +14,11 @@ require 'date'
14
14
 
15
15
  module OpenapiClient
16
16
  class PaymentMethodPaymentSchedulesRequestAllOf
17
- # Object name of the payment schedules request.
18
- attr_accessor :request_type
19
-
20
- # Store ID number.
21
- attr_accessor :store_id
22
-
23
- # Date of mandate signature.
24
- attr_accessor :start_date
25
-
26
- # Number of times the recurring payment will process.
27
- attr_accessor :number_of_payments
28
-
29
- # Number of failures that can be encountered before re-tries cease.
30
- attr_accessor :maximum_failures
31
-
32
- # Invoice number.
33
- attr_accessor :invoice_number
34
-
35
- # Purchase order number.
36
- attr_accessor :purchase_order_number
37
-
38
- attr_accessor :transaction_origin
39
-
40
- # Dynamic merchant name for the cardholder's statement.
41
- attr_accessor :dynamic_merchant_name
42
-
43
- attr_accessor :frequency
44
-
45
- attr_accessor :transaction_amount
46
-
47
- attr_accessor :client_locale
48
-
49
- # Client order ID if supplied by client.
50
- attr_accessor :order_id
51
-
52
- attr_accessor :billing
53
-
54
- attr_accessor :shipping
55
-
56
- # User supplied comments.
57
- attr_accessor :comments
58
-
59
17
  attr_accessor :payment_method
60
18
 
61
19
  # Attribute mapping from ruby-style variable name to JSON key.
62
20
  def self.attribute_map
63
21
  {
64
- :'request_type' => :'requestType',
65
- :'store_id' => :'storeId',
66
- :'start_date' => :'startDate',
67
- :'number_of_payments' => :'numberOfPayments',
68
- :'maximum_failures' => :'maximumFailures',
69
- :'invoice_number' => :'invoiceNumber',
70
- :'purchase_order_number' => :'purchaseOrderNumber',
71
- :'transaction_origin' => :'transactionOrigin',
72
- :'dynamic_merchant_name' => :'dynamicMerchantName',
73
- :'frequency' => :'frequency',
74
- :'transaction_amount' => :'transactionAmount',
75
- :'client_locale' => :'clientLocale',
76
- :'order_id' => :'orderId',
77
- :'billing' => :'billing',
78
- :'shipping' => :'shipping',
79
- :'comments' => :'comments',
80
22
  :'payment_method' => :'paymentMethod'
81
23
  }
82
24
  end
@@ -84,22 +26,6 @@ module OpenapiClient
84
26
  # Attribute type mapping.
85
27
  def self.openapi_types
86
28
  {
87
- :'request_type' => :'String',
88
- :'store_id' => :'String',
89
- :'start_date' => :'Date',
90
- :'number_of_payments' => :'Integer',
91
- :'maximum_failures' => :'Integer',
92
- :'invoice_number' => :'String',
93
- :'purchase_order_number' => :'String',
94
- :'transaction_origin' => :'TransactionOrigin',
95
- :'dynamic_merchant_name' => :'String',
96
- :'frequency' => :'Frequency',
97
- :'transaction_amount' => :'Amount',
98
- :'client_locale' => :'ClientLocale',
99
- :'order_id' => :'String',
100
- :'billing' => :'Billing',
101
- :'shipping' => :'Shipping',
102
- :'comments' => :'String',
103
29
  :'payment_method' => :'PaymentCardPaymentMethod'
104
30
  }
105
31
  end
@@ -119,70 +45,6 @@ module OpenapiClient
119
45
  h[k.to_sym] = v
120
46
  }
121
47
 
122
- if attributes.key?(:'request_type')
123
- self.request_type = attributes[:'request_type']
124
- end
125
-
126
- if attributes.key?(:'store_id')
127
- self.store_id = attributes[:'store_id']
128
- end
129
-
130
- if attributes.key?(:'start_date')
131
- self.start_date = attributes[:'start_date']
132
- end
133
-
134
- if attributes.key?(:'number_of_payments')
135
- self.number_of_payments = attributes[:'number_of_payments']
136
- end
137
-
138
- if attributes.key?(:'maximum_failures')
139
- self.maximum_failures = attributes[:'maximum_failures']
140
- end
141
-
142
- if attributes.key?(:'invoice_number')
143
- self.invoice_number = attributes[:'invoice_number']
144
- end
145
-
146
- if attributes.key?(:'purchase_order_number')
147
- self.purchase_order_number = attributes[:'purchase_order_number']
148
- end
149
-
150
- if attributes.key?(:'transaction_origin')
151
- self.transaction_origin = attributes[:'transaction_origin']
152
- end
153
-
154
- if attributes.key?(:'dynamic_merchant_name')
155
- self.dynamic_merchant_name = attributes[:'dynamic_merchant_name']
156
- end
157
-
158
- if attributes.key?(:'frequency')
159
- self.frequency = attributes[:'frequency']
160
- end
161
-
162
- if attributes.key?(:'transaction_amount')
163
- self.transaction_amount = attributes[:'transaction_amount']
164
- end
165
-
166
- if attributes.key?(:'client_locale')
167
- self.client_locale = attributes[:'client_locale']
168
- end
169
-
170
- if attributes.key?(:'order_id')
171
- self.order_id = attributes[:'order_id']
172
- end
173
-
174
- if attributes.key?(:'billing')
175
- self.billing = attributes[:'billing']
176
- end
177
-
178
- if attributes.key?(:'shipping')
179
- self.shipping = attributes[:'shipping']
180
- end
181
-
182
- if attributes.key?(:'comments')
183
- self.comments = attributes[:'comments']
184
- end
185
-
186
48
  if attributes.key?(:'payment_method')
187
49
  self.payment_method = attributes[:'payment_method']
188
50
  end
@@ -192,26 +54,6 @@ module OpenapiClient
192
54
  # @return Array for valid properties with the reasons
193
55
  def list_invalid_properties
194
56
  invalid_properties = Array.new
195
- if !@store_id.nil? && @store_id.to_s.length > 20
196
- invalid_properties.push('invalid value for "store_id", the character length must be smaller than or equal to 20.')
197
- end
198
-
199
- if !@number_of_payments.nil? && @number_of_payments > 999
200
- invalid_properties.push('invalid value for "number_of_payments", must be smaller than or equal to 999.')
201
- end
202
-
203
- if !@number_of_payments.nil? && @number_of_payments < 1
204
- invalid_properties.push('invalid value for "number_of_payments", must be greater than or equal to 1.')
205
- end
206
-
207
- if !@maximum_failures.nil? && @maximum_failures > 999
208
- invalid_properties.push('invalid value for "maximum_failures", must be smaller than or equal to 999.')
209
- end
210
-
211
- if !@maximum_failures.nil? && @maximum_failures < 1
212
- invalid_properties.push('invalid value for "maximum_failures", must be greater than or equal to 1.')
213
- end
214
-
215
57
  if @payment_method.nil?
216
58
  invalid_properties.push('invalid value for "payment_method", payment_method cannot be nil.')
217
59
  end
@@ -222,74 +64,15 @@ module OpenapiClient
222
64
  # Check to see if the all the properties in the model are valid
223
65
  # @return true if the model is valid
224
66
  def valid?
225
- return false if !@store_id.nil? && @store_id.to_s.length > 20
226
- return false if !@number_of_payments.nil? && @number_of_payments > 999
227
- return false if !@number_of_payments.nil? && @number_of_payments < 1
228
- return false if !@maximum_failures.nil? && @maximum_failures > 999
229
- return false if !@maximum_failures.nil? && @maximum_failures < 1
230
67
  return false if @payment_method.nil?
231
68
  true
232
69
  end
233
70
 
234
- # Custom attribute writer method with validation
235
- # @param [Object] store_id Value to be assigned
236
- def store_id=(store_id)
237
- if !store_id.nil? && store_id.to_s.length > 20
238
- fail ArgumentError, 'invalid value for "store_id", the character length must be smaller than or equal to 20.'
239
- end
240
-
241
- @store_id = store_id
242
- end
243
-
244
- # Custom attribute writer method with validation
245
- # @param [Object] number_of_payments Value to be assigned
246
- def number_of_payments=(number_of_payments)
247
- if !number_of_payments.nil? && number_of_payments > 999
248
- fail ArgumentError, 'invalid value for "number_of_payments", must be smaller than or equal to 999.'
249
- end
250
-
251
- if !number_of_payments.nil? && number_of_payments < 1
252
- fail ArgumentError, 'invalid value for "number_of_payments", must be greater than or equal to 1.'
253
- end
254
-
255
- @number_of_payments = number_of_payments
256
- end
257
-
258
- # Custom attribute writer method with validation
259
- # @param [Object] maximum_failures Value to be assigned
260
- def maximum_failures=(maximum_failures)
261
- if !maximum_failures.nil? && maximum_failures > 999
262
- fail ArgumentError, 'invalid value for "maximum_failures", must be smaller than or equal to 999.'
263
- end
264
-
265
- if !maximum_failures.nil? && maximum_failures < 1
266
- fail ArgumentError, 'invalid value for "maximum_failures", must be greater than or equal to 1.'
267
- end
268
-
269
- @maximum_failures = maximum_failures
270
- end
271
-
272
71
  # Checks equality by comparing each attribute.
273
72
  # @param [Object] Object to be compared
274
73
  def ==(o)
275
74
  return true if self.equal?(o)
276
75
  self.class == o.class &&
277
- request_type == o.request_type &&
278
- store_id == o.store_id &&
279
- start_date == o.start_date &&
280
- number_of_payments == o.number_of_payments &&
281
- maximum_failures == o.maximum_failures &&
282
- invoice_number == o.invoice_number &&
283
- purchase_order_number == o.purchase_order_number &&
284
- transaction_origin == o.transaction_origin &&
285
- dynamic_merchant_name == o.dynamic_merchant_name &&
286
- frequency == o.frequency &&
287
- transaction_amount == o.transaction_amount &&
288
- client_locale == o.client_locale &&
289
- order_id == o.order_id &&
290
- billing == o.billing &&
291
- shipping == o.shipping &&
292
- comments == o.comments &&
293
76
  payment_method == o.payment_method
294
77
  end
295
78
 
@@ -302,7 +85,7 @@ module OpenapiClient
302
85
  # Calculates hash code according to all attributes.
303
86
  # @return [Integer] Hash code
304
87
  def hash
305
- [request_type, store_id, start_date, number_of_payments, maximum_failures, invoice_number, purchase_order_number, transaction_origin, dynamic_merchant_name, frequency, transaction_amount, client_locale, order_id, billing, shipping, comments, payment_method].hash
88
+ [payment_method].hash
306
89
  end
307
90
 
308
91
  # Builds the object from hash
@@ -315,17 +98,17 @@ module OpenapiClient
315
98
  # Builds the object from hash
316
99
  # @param [Hash] attributes Model attributes in the form of hash
317
100
  # @return [Object] Returns the model itself
318
- def build_from_hash(attributes)
101
+ def build_from_hash(attributes, attribute_map = self.class.attribute_map, openapi_types = self.class.openapi_types)
319
102
  return nil unless attributes.is_a?(Hash)
320
- self.class.openapi_types.each_pair do |key, type|
103
+ openapi_types.each_pair do |key, type|
321
104
  if type =~ /\AArray<(.*)>/i
322
105
  # check to ensure the input is an array given that the attribute
323
106
  # is documented as an array but the input is not
324
- if attributes[self.class.attribute_map[key]].is_a?(Array)
325
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
107
+ if attributes[attribute_map[key]].is_a?(Array)
108
+ self.send("#{key}=", attributes[attribute_map[key]].map { |v| _deserialize($1, v) })
326
109
  end
327
- elsif !attributes[self.class.attribute_map[key]].nil?
328
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
110
+ elsif !attributes[attribute_map[key]].nil?
111
+ self.send("#{key}=", _deserialize(type, attributes[attribute_map[key]]))
329
112
  end # or else data not found in attributes(hash), not an issue as the data can be optional
330
113
  end
331
114
 
@@ -369,7 +152,12 @@ module OpenapiClient
369
152
  end
370
153
  end
371
154
  else # model
372
- OpenapiClient.const_get(type).build_from_hash(value)
155
+ klass = OpenapiClient.const_get(type)
156
+ if klass.respond_to?(:openapi_discriminator_name)
157
+ klass = OpenapiClient.const_get(value[klass.attribute_map[klass.openapi_discriminator_name]])
158
+ end
159
+
160
+ klass.build_from_hash(value)
373
161
  end
374
162
  end
375
163
 
@@ -387,11 +175,15 @@ module OpenapiClient
387
175
 
388
176
  # Returns the object in the form of hash
389
177
  # @return [Hash] Returns the object in the form of hash
390
- def to_hash
178
+ def to_hash(attribute_map = self.class.attribute_map, openapi_nullable = Set.new([]))
391
179
  hash = {}
392
- self.class.attribute_map.each_pair do |attr, param|
180
+ attribute_map.each_pair do |attr, param|
393
181
  value = self.send(attr)
394
- next if value.nil?
182
+ if value.nil?
183
+ is_nullable = openapi_nullable.include?(attr)
184
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
185
+ end
186
+
395
187
  hash[param] = _to_hash(value)
396
188
  end
397
189
  hash