first_data_gateway 1.5.0 → 1.8.1

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 (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
 
@@ -145,17 +145,17 @@ module OpenapiClient
145
145
  # Builds the object from hash
146
146
  # @param [Hash] attributes Model attributes in the form of hash
147
147
  # @return [Object] Returns the model itself
148
- def build_from_hash(attributes)
148
+ def build_from_hash(attributes, attribute_map = self.class.attribute_map, openapi_types = self.class.openapi_types)
149
149
  return nil unless attributes.is_a?(Hash)
150
- self.class.openapi_types.each_pair do |key, type|
150
+ openapi_types.each_pair do |key, type|
151
151
  if type =~ /\AArray<(.*)>/i
152
152
  # check to ensure the input is an array given that the attribute
153
153
  # is documented as an array but the input is not
154
- if attributes[self.class.attribute_map[key]].is_a?(Array)
155
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
154
+ if attributes[attribute_map[key]].is_a?(Array)
155
+ self.send("#{key}=", attributes[attribute_map[key]].map { |v| _deserialize($1, v) })
156
156
  end
157
- elsif !attributes[self.class.attribute_map[key]].nil?
158
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
157
+ elsif !attributes[attribute_map[key]].nil?
158
+ self.send("#{key}=", _deserialize(type, attributes[attribute_map[key]]))
159
159
  end # or else data not found in attributes(hash), not an issue as the data can be optional
160
160
  end
161
161
 
@@ -199,7 +199,12 @@ module OpenapiClient
199
199
  end
200
200
  end
201
201
  else # model
202
- OpenapiClient.const_get(type).build_from_hash(value)
202
+ klass = OpenapiClient.const_get(type)
203
+ if klass.respond_to?(:openapi_discriminator_name)
204
+ klass = OpenapiClient.const_get(value[klass.attribute_map[klass.openapi_discriminator_name]])
205
+ end
206
+
207
+ klass.build_from_hash(value)
203
208
  end
204
209
  end
205
210
 
@@ -217,11 +222,15 @@ module OpenapiClient
217
222
 
218
223
  # Returns the object in the form of hash
219
224
  # @return [Hash] Returns the object in the form of hash
220
- def to_hash
225
+ def to_hash(attribute_map = self.class.attribute_map, openapi_nullable = Set.new([]))
221
226
  hash = {}
222
- self.class.attribute_map.each_pair do |attr, param|
227
+ attribute_map.each_pair do |attr, param|
223
228
  value = self.send(attr)
224
- next if value.nil?
229
+ if value.nil?
230
+ is_nullable = openapi_nullable.include?(attr)
231
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
232
+ end
233
+
225
234
  hash[param] = _to_hash(value)
226
235
  end
227
236
  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
 
@@ -26,35 +26,10 @@ module OpenapiClient
26
26
  # The response transaction ID.
27
27
  attr_accessor :ipg_transaction_id
28
28
 
29
- # Time of the request.
29
+ # Time of the request. The used format is \"yyyy-MM-dd'T'HH:mm:ss.SSSXXX\".
30
30
  attr_accessor :request_time
31
31
 
32
- # Inquiry rate ID.
33
- attr_accessor :inquiry_rate_id
34
-
35
- # Foreign currency in alphabetic ISO 4217 currency code format.
36
- attr_accessor :foreign_currency
37
-
38
- # Foreign amount.
39
- attr_accessor :foreign_amount
40
-
41
- # Exchange rate.
42
- attr_accessor :exchange_rate
43
-
44
- # Dcc offered.
45
- attr_accessor :dcc_offered
46
-
47
- # Exchange rate source timestamp.
48
- attr_accessor :exchange_rate_source_timestamp
49
-
50
- # Expiration timestamp.
51
- attr_accessor :expiration_timestamp
52
-
53
- # Margin rate percentage.
54
- attr_accessor :margin_rate_percentage
55
-
56
- # Exchange rate source name.
57
- attr_accessor :exchange_rate_source_name
32
+ attr_accessor :exchange_rate_details
58
33
 
59
34
  # Attribute mapping from ruby-style variable name to JSON key.
60
35
  def self.attribute_map
@@ -64,15 +39,7 @@ module OpenapiClient
64
39
  :'response_type' => :'responseType',
65
40
  :'ipg_transaction_id' => :'ipgTransactionId',
66
41
  :'request_time' => :'requestTime',
67
- :'inquiry_rate_id' => :'inquiryRateId',
68
- :'foreign_currency' => :'foreignCurrency',
69
- :'foreign_amount' => :'foreignAmount',
70
- :'exchange_rate' => :'exchangeRate',
71
- :'dcc_offered' => :'dccOffered',
72
- :'exchange_rate_source_timestamp' => :'exchangeRateSourceTimestamp',
73
- :'expiration_timestamp' => :'expirationTimestamp',
74
- :'margin_rate_percentage' => :'marginRatePercentage',
75
- :'exchange_rate_source_name' => :'exchangeRateSourceName'
42
+ :'exchange_rate_details' => :'exchangeRateDetails'
76
43
  }
77
44
  end
78
45
 
@@ -84,15 +51,7 @@ module OpenapiClient
84
51
  :'response_type' => :'ResponseType',
85
52
  :'ipg_transaction_id' => :'String',
86
53
  :'request_time' => :'String',
87
- :'inquiry_rate_id' => :'String',
88
- :'foreign_currency' => :'String',
89
- :'foreign_amount' => :'String',
90
- :'exchange_rate' => :'String',
91
- :'dcc_offered' => :'String',
92
- :'exchange_rate_source_timestamp' => :'String',
93
- :'expiration_timestamp' => :'String',
94
- :'margin_rate_percentage' => :'String',
95
- :'exchange_rate_source_name' => :'String'
54
+ :'exchange_rate_details' => :'ExchangeRateDetails'
96
55
  }
97
56
  end
98
57
 
@@ -138,40 +97,8 @@ module OpenapiClient
138
97
  self.request_time = attributes[:'request_time']
139
98
  end
140
99
 
141
- if attributes.key?(:'inquiry_rate_id')
142
- self.inquiry_rate_id = attributes[:'inquiry_rate_id']
143
- end
144
-
145
- if attributes.key?(:'foreign_currency')
146
- self.foreign_currency = attributes[:'foreign_currency']
147
- end
148
-
149
- if attributes.key?(:'foreign_amount')
150
- self.foreign_amount = attributes[:'foreign_amount']
151
- end
152
-
153
- if attributes.key?(:'exchange_rate')
154
- self.exchange_rate = attributes[:'exchange_rate']
155
- end
156
-
157
- if attributes.key?(:'dcc_offered')
158
- self.dcc_offered = attributes[:'dcc_offered']
159
- end
160
-
161
- if attributes.key?(:'exchange_rate_source_timestamp')
162
- self.exchange_rate_source_timestamp = attributes[:'exchange_rate_source_timestamp']
163
- end
164
-
165
- if attributes.key?(:'expiration_timestamp')
166
- self.expiration_timestamp = attributes[:'expiration_timestamp']
167
- end
168
-
169
- if attributes.key?(:'margin_rate_percentage')
170
- self.margin_rate_percentage = attributes[:'margin_rate_percentage']
171
- end
172
-
173
- if attributes.key?(:'exchange_rate_source_name')
174
- self.exchange_rate_source_name = attributes[:'exchange_rate_source_name']
100
+ if attributes.key?(:'exchange_rate_details')
101
+ self.exchange_rate_details = attributes[:'exchange_rate_details']
175
102
  end
176
103
  end
177
104
 
@@ -198,15 +125,7 @@ module OpenapiClient
198
125
  response_type == o.response_type &&
199
126
  ipg_transaction_id == o.ipg_transaction_id &&
200
127
  request_time == o.request_time &&
201
- inquiry_rate_id == o.inquiry_rate_id &&
202
- foreign_currency == o.foreign_currency &&
203
- foreign_amount == o.foreign_amount &&
204
- exchange_rate == o.exchange_rate &&
205
- dcc_offered == o.dcc_offered &&
206
- exchange_rate_source_timestamp == o.exchange_rate_source_timestamp &&
207
- expiration_timestamp == o.expiration_timestamp &&
208
- margin_rate_percentage == o.margin_rate_percentage &&
209
- exchange_rate_source_name == o.exchange_rate_source_name
128
+ exchange_rate_details == o.exchange_rate_details
210
129
  end
211
130
 
212
131
  # @see the `==` method
@@ -218,7 +137,7 @@ module OpenapiClient
218
137
  # Calculates hash code according to all attributes.
219
138
  # @return [Integer] Hash code
220
139
  def hash
221
- [client_request_id, api_trace_id, response_type, ipg_transaction_id, request_time, inquiry_rate_id, foreign_currency, foreign_amount, exchange_rate, dcc_offered, exchange_rate_source_timestamp, expiration_timestamp, margin_rate_percentage, exchange_rate_source_name].hash
140
+ [client_request_id, api_trace_id, response_type, ipg_transaction_id, request_time, exchange_rate_details].hash
222
141
  end
223
142
 
224
143
  # Builds the object from hash
@@ -231,17 +150,17 @@ module OpenapiClient
231
150
  # Builds the object from hash
232
151
  # @param [Hash] attributes Model attributes in the form of hash
233
152
  # @return [Object] Returns the model itself
234
- def build_from_hash(attributes)
153
+ def build_from_hash(attributes, attribute_map = self.class.attribute_map, openapi_types = self.class.openapi_types)
235
154
  return nil unless attributes.is_a?(Hash)
236
- self.class.openapi_types.each_pair do |key, type|
155
+ openapi_types.each_pair do |key, type|
237
156
  if type =~ /\AArray<(.*)>/i
238
157
  # check to ensure the input is an array given that the attribute
239
158
  # is documented as an array but the input is not
240
- if attributes[self.class.attribute_map[key]].is_a?(Array)
241
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
159
+ if attributes[attribute_map[key]].is_a?(Array)
160
+ self.send("#{key}=", attributes[attribute_map[key]].map { |v| _deserialize($1, v) })
242
161
  end
243
- elsif !attributes[self.class.attribute_map[key]].nil?
244
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
162
+ elsif !attributes[attribute_map[key]].nil?
163
+ self.send("#{key}=", _deserialize(type, attributes[attribute_map[key]]))
245
164
  end # or else data not found in attributes(hash), not an issue as the data can be optional
246
165
  end
247
166
 
@@ -285,7 +204,12 @@ module OpenapiClient
285
204
  end
286
205
  end
287
206
  else # model
288
- OpenapiClient.const_get(type).build_from_hash(value)
207
+ klass = OpenapiClient.const_get(type)
208
+ if klass.respond_to?(:openapi_discriminator_name)
209
+ klass = OpenapiClient.const_get(value[klass.attribute_map[klass.openapi_discriminator_name]])
210
+ end
211
+
212
+ klass.build_from_hash(value)
289
213
  end
290
214
  end
291
215
 
@@ -303,11 +227,15 @@ module OpenapiClient
303
227
 
304
228
  # Returns the object in the form of hash
305
229
  # @return [Hash] Returns the object in the form of hash
306
- def to_hash
230
+ def to_hash(attribute_map = self.class.attribute_map, openapi_nullable = Set.new([]))
307
231
  hash = {}
308
- self.class.attribute_map.each_pair do |attr, param|
232
+ attribute_map.each_pair do |attr, param|
309
233
  value = self.send(attr)
310
- next if value.nil?
234
+ if value.nil?
235
+ is_nullable = openapi_nullable.include?(attr)
236
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
237
+ end
238
+
311
239
  hash[param] = _to_hash(value)
312
240
  end
313
241
  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
 
@@ -18,7 +18,7 @@ module OpenapiClient
18
18
  # Month of the card expiration date in MM format.
19
19
  attr_accessor :month
20
20
 
21
- # Year of the card expiration date in YY or YYYY format.
21
+ # Year of the card expiration date in YY format.
22
22
  attr_accessor :year
23
23
 
24
24
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -78,7 +78,7 @@ module OpenapiClient
78
78
  invalid_properties.push('invalid value for "year", year cannot be nil.')
79
79
  end
80
80
 
81
- pattern = Regexp.new(/^(\d{2})(\d{2})?$/)
81
+ pattern = Regexp.new(/^([0-9]{2})$/)
82
82
  if @year !~ pattern
83
83
  invalid_properties.push("invalid value for \"year\", must conform to the pattern #{pattern}.")
84
84
  end
@@ -92,7 +92,7 @@ module OpenapiClient
92
92
  return false if @month.nil?
93
93
  return false if @month !~ Regexp.new(/^(0[1-9]|1[012])$/)
94
94
  return false if @year.nil?
95
- return false if @year !~ Regexp.new(/^(\d{2})(\d{2})?$/)
95
+ return false if @year !~ Regexp.new(/^([0-9]{2})$/)
96
96
  true
97
97
  end
98
98
 
@@ -118,7 +118,7 @@ module OpenapiClient
118
118
  fail ArgumentError, 'year cannot be nil'
119
119
  end
120
120
 
121
- pattern = Regexp.new(/^(\d{2})(\d{2})?$/)
121
+ pattern = Regexp.new(/^([0-9]{2,4})$/)
122
122
  if year !~ pattern
123
123
  fail ArgumentError, "invalid value for \"year\", must conform to the pattern #{pattern}."
124
124
  end
@@ -157,17 +157,17 @@ module OpenapiClient
157
157
  # Builds the object from hash
158
158
  # @param [Hash] attributes Model attributes in the form of hash
159
159
  # @return [Object] Returns the model itself
160
- def build_from_hash(attributes)
160
+ def build_from_hash(attributes, attribute_map = self.class.attribute_map, openapi_types = self.class.openapi_types)
161
161
  return nil unless attributes.is_a?(Hash)
162
- self.class.openapi_types.each_pair do |key, type|
162
+ openapi_types.each_pair do |key, type|
163
163
  if type =~ /\AArray<(.*)>/i
164
164
  # check to ensure the input is an array given that the attribute
165
165
  # is documented as an array but the input is not
166
- if attributes[self.class.attribute_map[key]].is_a?(Array)
167
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
166
+ if attributes[attribute_map[key]].is_a?(Array)
167
+ self.send("#{key}=", attributes[attribute_map[key]].map { |v| _deserialize($1, v) })
168
168
  end
169
- elsif !attributes[self.class.attribute_map[key]].nil?
170
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
169
+ elsif !attributes[attribute_map[key]].nil?
170
+ self.send("#{key}=", _deserialize(type, attributes[attribute_map[key]]))
171
171
  end # or else data not found in attributes(hash), not an issue as the data can be optional
172
172
  end
173
173
 
@@ -211,7 +211,12 @@ module OpenapiClient
211
211
  end
212
212
  end
213
213
  else # model
214
- OpenapiClient.const_get(type).build_from_hash(value)
214
+ klass = OpenapiClient.const_get(type)
215
+ if klass.respond_to?(:openapi_discriminator_name)
216
+ klass = OpenapiClient.const_get(value[klass.attribute_map[klass.openapi_discriminator_name]])
217
+ end
218
+
219
+ klass.build_from_hash(value)
215
220
  end
216
221
  end
217
222
 
@@ -229,11 +234,15 @@ module OpenapiClient
229
234
 
230
235
  # Returns the object in the form of hash
231
236
  # @return [Hash] Returns the object in the form of hash
232
- def to_hash
237
+ def to_hash(attribute_map = self.class.attribute_map, openapi_nullable = Set.new([]))
233
238
  hash = {}
234
- self.class.attribute_map.each_pair do |attr, param|
239
+ attribute_map.each_pair do |attr, param|
235
240
  value = self.send(attr)
236
- next if value.nil?
241
+ if value.nil?
242
+ is_nullable = openapi_nullable.include?(attr)
243
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
244
+ end
245
+
237
246
  hash[param] = _to_hash(value)
238
247
  end
239
248
  hash
@@ -0,0 +1,39 @@
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.13.0.20200810.001
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.1.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module OpenapiClient
16
+ class FontFace
17
+ ARIAL = "arial".freeze
18
+ COURIER_NEW = "courier new".freeze
19
+ TIMES_NEW_ROMAN = "times new roman".freeze
20
+ TREBUCHET_MS = "trebuchet ms".freeze
21
+ VERDANA = "verdana".freeze
22
+
23
+ # Builds the enum from string
24
+ # @param [String] The enum value in the form of the string
25
+ # @return [String] The enum value
26
+ def self.build_from_hash(value)
27
+ new.build_from_hash(value)
28
+ end
29
+
30
+ # Builds the enum from string
31
+ # @param [String] The enum value in the form of the string
32
+ # @return [String] The enum value
33
+ def build_from_hash(value)
34
+ constantValues = FontFace.constants.select { |c| FontFace::const_get(c) == value }
35
+ raise "Invalid ENUM value #{value} for class #FontFace" if constantValues.empty?
36
+ value
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,252 @@
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.13.0.20200810.001
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.1.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module OpenapiClient
16
+ # Object contains font properties.
17
+ class FontProperties
18
+ attr_accessor :font_face
19
+
20
+ # Font size property.
21
+ attr_accessor :font_size
22
+
23
+ attr_accessor :font_weight
24
+
25
+ # Hexadecimal color value.
26
+ attr_accessor :font_color
27
+
28
+ # Attribute mapping from ruby-style variable name to JSON key.
29
+ def self.attribute_map
30
+ {
31
+ :'font_face' => :'fontFace',
32
+ :'font_size' => :'fontSize',
33
+ :'font_weight' => :'fontWeight',
34
+ :'font_color' => :'fontColor'
35
+ }
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.openapi_types
40
+ {
41
+ :'font_face' => :'FontFace',
42
+ :'font_size' => :'String',
43
+ :'font_weight' => :'FontWeight',
44
+ :'font_color' => :'String'
45
+ }
46
+ end
47
+
48
+ # Initializes the object
49
+ # @param [Hash] attributes Model attributes in the form of hash
50
+ def initialize(attributes = {})
51
+ if (!attributes.is_a?(Hash))
52
+ fail ArgumentError, "The input argument (attributes) must be a hash in `OpenapiClient::FontProperties` initialize method"
53
+ end
54
+
55
+ # check to see if the attribute exists and convert string to symbol for hash key
56
+ attributes = attributes.each_with_object({}) { |(k, v), h|
57
+ if (!self.class.attribute_map.key?(k.to_sym))
58
+ fail ArgumentError, "`#{k}` is not a valid attribute in `OpenapiClient::FontProperties`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
59
+ end
60
+ h[k.to_sym] = v
61
+ }
62
+
63
+ if attributes.key?(:'font_face')
64
+ self.font_face = attributes[:'font_face']
65
+ end
66
+
67
+ if attributes.key?(:'font_size')
68
+ self.font_size = attributes[:'font_size']
69
+ end
70
+
71
+ if attributes.key?(:'font_weight')
72
+ self.font_weight = attributes[:'font_weight']
73
+ end
74
+
75
+ if attributes.key?(:'font_color')
76
+ self.font_color = attributes[:'font_color']
77
+ end
78
+ end
79
+
80
+ # Show invalid properties with the reasons. Usually used together with valid?
81
+ # @return Array for valid properties with the reasons
82
+ def list_invalid_properties
83
+ invalid_properties = Array.new
84
+ pattern = Regexp.new(/(^(0[xX]){1}[A-Fa-f0-9]+$)|(^#[A-Fa-f0-9]{6}$)/)
85
+ if !@font_color.nil? && @font_color !~ pattern
86
+ invalid_properties.push("invalid value for \"font_color\", must conform to the pattern #{pattern}.")
87
+ end
88
+
89
+ invalid_properties
90
+ end
91
+
92
+ # Check to see if the all the properties in the model are valid
93
+ # @return true if the model is valid
94
+ def valid?
95
+ return false if !@font_color.nil? && @font_color !~ Regexp.new(/(^(0[xX]){1}[A-Fa-f0-9]+$)|(^#[A-Fa-f0-9]{6}$)/)
96
+ true
97
+ end
98
+
99
+ # Custom attribute writer method with validation
100
+ # @param [Object] font_color Value to be assigned
101
+ def font_color=(font_color)
102
+ pattern = Regexp.new(/(^(0[xX]){1}[A-Fa-f0-9]+$)|(^#[A-Fa-f0-9]{6}$)/)
103
+ if !font_color.nil? && font_color !~ pattern
104
+ fail ArgumentError, "invalid value for \"font_color\", must conform to the pattern #{pattern}."
105
+ end
106
+
107
+ @font_color = font_color
108
+ end
109
+
110
+ # Checks equality by comparing each attribute.
111
+ # @param [Object] Object to be compared
112
+ def ==(o)
113
+ return true if self.equal?(o)
114
+ self.class == o.class &&
115
+ font_face == o.font_face &&
116
+ font_size == o.font_size &&
117
+ font_weight == o.font_weight &&
118
+ font_color == o.font_color
119
+ end
120
+
121
+ # @see the `==` method
122
+ # @param [Object] Object to be compared
123
+ def eql?(o)
124
+ self == o
125
+ end
126
+
127
+ # Calculates hash code according to all attributes.
128
+ # @return [Integer] Hash code
129
+ def hash
130
+ [font_face, font_size, font_weight, font_color].hash
131
+ end
132
+
133
+ # Builds the object from hash
134
+ # @param [Hash] attributes Model attributes in the form of hash
135
+ # @return [Object] Returns the model itself
136
+ def self.build_from_hash(attributes)
137
+ new.build_from_hash(attributes)
138
+ end
139
+
140
+ # Builds the object from hash
141
+ # @param [Hash] attributes Model attributes in the form of hash
142
+ # @return [Object] Returns the model itself
143
+ def build_from_hash(attributes, attribute_map = self.class.attribute_map, openapi_types = self.class.openapi_types)
144
+ return nil unless attributes.is_a?(Hash)
145
+ openapi_types.each_pair do |key, type|
146
+ if type =~ /\AArray<(.*)>/i
147
+ # check to ensure the input is an array given that the attribute
148
+ # is documented as an array but the input is not
149
+ if attributes[attribute_map[key]].is_a?(Array)
150
+ self.send("#{key}=", attributes[attribute_map[key]].map { |v| _deserialize($1, v) })
151
+ end
152
+ elsif !attributes[attribute_map[key]].nil?
153
+ self.send("#{key}=", _deserialize(type, attributes[attribute_map[key]]))
154
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
155
+ end
156
+
157
+ self
158
+ end
159
+
160
+ # Deserializes the data based on type
161
+ # @param string type Data type
162
+ # @param string value Value to be deserialized
163
+ # @return [Object] Deserialized data
164
+ def _deserialize(type, value)
165
+ case type.to_sym
166
+ when :DateTime
167
+ DateTime.parse(value)
168
+ when :Date
169
+ Date.parse(value)
170
+ when :String
171
+ value.to_s
172
+ when :Integer
173
+ value.to_i
174
+ when :Float
175
+ value.to_f
176
+ when :Boolean
177
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
178
+ true
179
+ else
180
+ false
181
+ end
182
+ when :Object
183
+ # generic object (usually a Hash), return directly
184
+ value
185
+ when /\AArray<(?<inner_type>.+)>\z/
186
+ inner_type = Regexp.last_match[:inner_type]
187
+ value.map { |v| _deserialize(inner_type, v) }
188
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
189
+ k_type = Regexp.last_match[:k_type]
190
+ v_type = Regexp.last_match[:v_type]
191
+ {}.tap do |hash|
192
+ value.each do |k, v|
193
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
194
+ end
195
+ end
196
+ else # model
197
+ klass = OpenapiClient.const_get(type)
198
+ if klass.respond_to?(:openapi_discriminator_name)
199
+ klass = OpenapiClient.const_get(value[klass.attribute_map[klass.openapi_discriminator_name]])
200
+ end
201
+
202
+ klass.build_from_hash(value)
203
+ end
204
+ end
205
+
206
+ # Returns the string representation of the object
207
+ # @return [String] String presentation of the object
208
+ def to_s
209
+ to_hash.to_s
210
+ end
211
+
212
+ # to_body is an alias to to_hash (backward compatibility)
213
+ # @return [Hash] Returns the object in the form of hash
214
+ def to_body
215
+ to_hash
216
+ end
217
+
218
+ # Returns the object in the form of hash
219
+ # @return [Hash] Returns the object in the form of hash
220
+ def to_hash(attribute_map = self.class.attribute_map, openapi_nullable = Set.new([]))
221
+ hash = {}
222
+ attribute_map.each_pair do |attr, param|
223
+ value = self.send(attr)
224
+ if value.nil?
225
+ is_nullable = openapi_nullable.include?(attr)
226
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
227
+ end
228
+
229
+ hash[param] = _to_hash(value)
230
+ end
231
+ hash
232
+ end
233
+
234
+ # Outputs non-array value in the form of hash
235
+ # For object, use to_hash. Otherwise, just return the value
236
+ # @param [Object] value Any valid value
237
+ # @return [Hash] Returns the value in the form of hash
238
+ def _to_hash(value)
239
+ if value.is_a?(Array)
240
+ value.compact.map { |v| _to_hash(v) }
241
+ elsif value.is_a?(Hash)
242
+ {}.tap do |hash|
243
+ value.each { |k, v| hash[k] = _to_hash(v) }
244
+ end
245
+ elsif value.respond_to? :to_hash
246
+ value.to_hash
247
+ else
248
+ value
249
+ end
250
+ end
251
+ end
252
+ end