melio-platform-api-client 3.0.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.

Potentially problematic release.


This version of melio-platform-api-client might be problematic. Click here for more details.

Files changed (515) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +132 -0
  4. data/Rakefile +10 -0
  5. data/docs/Account.md +26 -0
  6. data/docs/AccountAllOf.md +22 -0
  7. data/docs/AccountsApi.md +224 -0
  8. data/docs/AddToMyVendorParameters.md +18 -0
  9. data/docs/AddToMyVendorParametersDeliveryMethod.md +20 -0
  10. data/docs/AddToMyVendorParametersDeliveryMethodBillerAccount.md +18 -0
  11. data/docs/Address.md +26 -0
  12. data/docs/Adjustment.md +20 -0
  13. data/docs/AuthApi.md +83 -0
  14. data/docs/BankAccount.md +22 -0
  15. data/docs/BankAccountType.md +15 -0
  16. data/docs/BillerAccount.md +18 -0
  17. data/docs/Card.md +24 -0
  18. data/docs/Charge.md +32 -0
  19. data/docs/ChargeAllOf.md +28 -0
  20. data/docs/ChargesApi.md +317 -0
  21. data/docs/Checkout.md +66 -0
  22. data/docs/CheckoutAllOf.md +62 -0
  23. data/docs/CheckoutAllOfBuyer.md +26 -0
  24. data/docs/CheckoutsApi.md +327 -0
  25. data/docs/Company.md +28 -0
  26. data/docs/ConfirmPaymentIntentsResponse.md +18 -0
  27. data/docs/Currency.md +15 -0
  28. data/docs/DeletedResponse.md +18 -0
  29. data/docs/DeliveryMethod.md +24 -0
  30. data/docs/DeliveryMethodAllOf.md +20 -0
  31. data/docs/DeliveryMethodDetails.md +55 -0
  32. data/docs/DeliveryMethodType.md +15 -0
  33. data/docs/DeliveryMethodsApi.md +485 -0
  34. data/docs/DeliveryPreference.md +28 -0
  35. data/docs/DeliveryPreferenceType.md +15 -0
  36. data/docs/DomesticWireAccount.md +22 -0
  37. data/docs/DomesticWireAccountAddress.md +22 -0
  38. data/docs/ErrorResponse.md +18 -0
  39. data/docs/FileInfo.md +22 -0
  40. data/docs/FileInfoAllOf.md +18 -0
  41. data/docs/FilesApi.md +317 -0
  42. data/docs/Financing.md +24 -0
  43. data/docs/FinancingApi.md +246 -0
  44. data/docs/FinancingDropdownOptions.md +20 -0
  45. data/docs/FinancingFields.md +28 -0
  46. data/docs/FundingSource.md +26 -0
  47. data/docs/FundingSourceAllOf.md +22 -0
  48. data/docs/FundingSourceDetails.md +49 -0
  49. data/docs/FundingSourceType.md +15 -0
  50. data/docs/FundingSourcesApi.md +325 -0
  51. data/docs/GetAccountsAccountIdResponse.md +18 -0
  52. data/docs/GetAccountsResponse.md +18 -0
  53. data/docs/GetChargesChargeIdResponse.md +18 -0
  54. data/docs/GetChargesResponse.md +18 -0
  55. data/docs/GetCheckoutsCheckoutIdResponse.md +18 -0
  56. data/docs/GetDeliveryMethodsDeliveryMethodIdResponse.md +18 -0
  57. data/docs/GetDeliveryMethodsResponse.md +18 -0
  58. data/docs/GetFilesFileIdDataResponse.md +18 -0
  59. data/docs/GetFilesFileIdDataResponseData.md +26 -0
  60. data/docs/GetFilesFileIdDataResponseDataCustomerInfo.md +18 -0
  61. data/docs/GetFilesFileIdDataResponseDataInvoiceInfo.md +20 -0
  62. data/docs/GetFilesFileIdDataResponseDataVendorInfo.md +20 -0
  63. data/docs/GetFilesFileIdResponse.md +18 -0
  64. data/docs/GetFilesResponse.md +18 -0
  65. data/docs/GetFinancingResponse.md +18 -0
  66. data/docs/GetFundingSourcesFundingSourceIdResponse.md +18 -0
  67. data/docs/GetFundingSourcesResponse.md +18 -0
  68. data/docs/GetPaymentIntentsPaymentIntentIdResponse.md +18 -0
  69. data/docs/GetPaymentIntentsResponse.md +18 -0
  70. data/docs/GetPaymentsPaymentIdResponse.md +18 -0
  71. data/docs/GetPaymentsResponse.md +18 -0
  72. data/docs/GetVendorDirectoryResponse.md +18 -0
  73. data/docs/GetVendorsResponse.md +18 -0
  74. data/docs/GetVendorsVendorIdDeliveryMethodsResponse.md +18 -0
  75. data/docs/GetVendorsVendorIdResponse.md +18 -0
  76. data/docs/GetWebhooksCheckoutsResponse.md +18 -0
  77. data/docs/GetWebhooksPaymentsResponse.md +18 -0
  78. data/docs/GetWebhooksResponse.md +18 -0
  79. data/docs/Invoice.md +20 -0
  80. data/docs/LineItem.md +30 -0
  81. data/docs/Merchant.md +38 -0
  82. data/docs/MerchantAllOf.md +34 -0
  83. data/docs/MerchantsApi.md +85 -0
  84. data/docs/ModelError.md +22 -0
  85. data/docs/ModelErrorAllOf.md +20 -0
  86. data/docs/Object.md +20 -0
  87. data/docs/PaperCheck.md +20 -0
  88. data/docs/PartialAddress.md +26 -0
  89. data/docs/PatchChargesChargeIdRequest.md +18 -0
  90. data/docs/PatchChargesChargeIdResponse.md +18 -0
  91. data/docs/PatchPaymentIntentsPaymentIntentIdRequest.md +30 -0
  92. data/docs/PatchPaymentIntentsPaymentIntentIdRequestBillInfo.md +26 -0
  93. data/docs/PatchPaymentIntentsPaymentIntentIdResponse.md +18 -0
  94. data/docs/PatchVendorsVendorIdRequest.md +20 -0
  95. data/docs/PatchVendorsVendorIdRequestContact.md +22 -0
  96. data/docs/PatchVendorsVendorIdResponse.md +18 -0
  97. data/docs/Payment.md +48 -0
  98. data/docs/PaymentAllOf.md +44 -0
  99. data/docs/PaymentFee.md +20 -0
  100. data/docs/PaymentIntent.md +46 -0
  101. data/docs/PaymentIntentAllOf.md +42 -0
  102. data/docs/PaymentIntentAllOfBillInfo.md +30 -0
  103. data/docs/PaymentIntentsApi.md +483 -0
  104. data/docs/PaymentsApi.md +325 -0
  105. data/docs/Person.md +22 -0
  106. data/docs/PlaidDetails.md +20 -0
  107. data/docs/PostAccountsRequest.md +22 -0
  108. data/docs/PostAccountsResponse.md +18 -0
  109. data/docs/PostAuthResponse.md +18 -0
  110. data/docs/PostAuthResponseData.md +22 -0
  111. data/docs/PostCheckoutsCheckoutIdCaptureRequest.md +22 -0
  112. data/docs/PostCheckoutsCheckoutIdCaptureRequestInvoice.md +20 -0
  113. data/docs/PostCheckoutsCheckoutIdCompleteRequest.md +24 -0
  114. data/docs/PostCheckoutsRequest.md +48 -0
  115. data/docs/PostCheckoutsResponse.md +18 -0
  116. data/docs/PostDeliveryMethodsRequest.md +20 -0
  117. data/docs/PostDeliveryMethodsRequestDetails.md +53 -0
  118. data/docs/PostDeliveryMethodsResponse.md +18 -0
  119. data/docs/PostFilesResponse.md +18 -0
  120. data/docs/PostFinancingRequest.md +18 -0
  121. data/docs/PostFinancingRequestFields.md +20 -0
  122. data/docs/PostFinancingResponse.md +18 -0
  123. data/docs/PostFinancingTransactionalRequest.md +20 -0
  124. data/docs/PostFinancingTransactionalResponse.md +18 -0
  125. data/docs/PostFinancingTransactionalResponseData.md +20 -0
  126. data/docs/PostFundingSourcesRequest.md +22 -0
  127. data/docs/PostFundingSourcesRequestDetails.md +51 -0
  128. data/docs/PostFundingSourcesResponse.md +18 -0
  129. data/docs/PostMerchantsRequest.md +32 -0
  130. data/docs/PostMerchantsResponse.md +18 -0
  131. data/docs/PostPaymentIntentsBulkRequest.md +18 -0
  132. data/docs/PostPaymentIntentsBulkResponse.md +18 -0
  133. data/docs/PostPaymentIntentsPaymentIntentIdPaymentResponse.md +18 -0
  134. data/docs/PostPaymentIntentsRequest.md +30 -0
  135. data/docs/PostPaymentIntentsRequestBillInfo.md +26 -0
  136. data/docs/PostPaymentIntentsResponse.md +18 -0
  137. data/docs/PostPaymentsPaymentIdRecoverRequest.md +26 -0
  138. data/docs/PostPaymentsPaymentIdRecoverResponse.md +18 -0
  139. data/docs/PostVendorsBulkRequest.md +18 -0
  140. data/docs/PostVendorsBulkResponse.md +18 -0
  141. data/docs/PostVendorsFromVendorDirectoryRequest.md +20 -0
  142. data/docs/PostVendorsFromVendorDirectoryRequestDeliveryMethod.md +20 -0
  143. data/docs/PostVendorsFromVendorDirectoryResponse.md +18 -0
  144. data/docs/PostVendorsRequest.md +20 -0
  145. data/docs/PostVendorsResponse.md +18 -0
  146. data/docs/PostVendorsVendorIdDeliveryMethodsResponse.md +18 -0
  147. data/docs/PostWebhooksCheckoutsRequest.md +18 -0
  148. data/docs/PostWebhooksCheckoutsResponse.md +18 -0
  149. data/docs/PostWebhooksPaymentsRequest.md +18 -0
  150. data/docs/PostWebhooksPaymentsResponse.md +18 -0
  151. data/docs/PutPaymentIntentsRequest.md +36 -0
  152. data/docs/PutPaymentIntentsResponse.md +18 -0
  153. data/docs/RecoverPaymentRequest.md +36 -0
  154. data/docs/RecoverPaymentResponse.md +18 -0
  155. data/docs/ShortHistory.md +22 -0
  156. data/docs/TabaPayDetails.md +30 -0
  157. data/docs/TabaPayDetailsCardOwner.md +20 -0
  158. data/docs/TaxInfo.md +20 -0
  159. data/docs/Vendor.md +26 -0
  160. data/docs/VendorAllOf.md +22 -0
  161. data/docs/VendorAllOfContact.md +22 -0
  162. data/docs/VendorDirectory.md +26 -0
  163. data/docs/VendorDirectoryApi.md +169 -0
  164. data/docs/VendorDirectoryContact.md +24 -0
  165. data/docs/VendorDirectoryDeliveryMethod.md +18 -0
  166. data/docs/VendorDirectoryNotFoundResponse.md +18 -0
  167. data/docs/VendorsApi.md +806 -0
  168. data/docs/VirtualAccount.md +22 -0
  169. data/docs/Webhook.md +20 -0
  170. data/docs/WebhooksApi.md +510 -0
  171. data/docs/WithUnknownData.md +18 -0
  172. data/lib/melio-platform-api-client/api/accounts_api.rb +213 -0
  173. data/lib/melio-platform-api-client/api/auth_api.rb +89 -0
  174. data/lib/melio-platform-api-client/api/charges_api.rb +307 -0
  175. data/lib/melio-platform-api-client/api/checkouts_api.rb +328 -0
  176. data/lib/melio-platform-api-client/api/delivery_methods_api.rb +439 -0
  177. data/lib/melio-platform-api-client/api/files_api.rb +284 -0
  178. data/lib/melio-platform-api-client/api/financing_api.rb +230 -0
  179. data/lib/melio-platform-api-client/api/funding_sources_api.rb +295 -0
  180. data/lib/melio-platform-api-client/api/merchants_api.rb +96 -0
  181. data/lib/melio-platform-api-client/api/payment_intents_api.rb +443 -0
  182. data/lib/melio-platform-api-client/api/payments_api.rb +294 -0
  183. data/lib/melio-platform-api-client/api/vendor_directory_api.rb +170 -0
  184. data/lib/melio-platform-api-client/api/vendors_api.rb +738 -0
  185. data/lib/melio-platform-api-client/api/webhooks_api.rb +463 -0
  186. data/lib/melio-platform-api-client/api_client.rb +419 -0
  187. data/lib/melio-platform-api-client/api_error.rb +57 -0
  188. data/lib/melio-platform-api-client/configuration.rb +289 -0
  189. data/lib/melio-platform-api-client/models/account.rb +324 -0
  190. data/lib/melio-platform-api-client/models/account_all_of.rb +286 -0
  191. data/lib/melio-platform-api-client/models/add_to_my_vendor_parameters.rb +218 -0
  192. data/lib/melio-platform-api-client/models/add_to_my_vendor_parameters_delivery_method.rb +232 -0
  193. data/lib/melio-platform-api-client/models/add_to_my_vendor_parameters_delivery_method_biller_account.rb +224 -0
  194. data/lib/melio-platform-api-client/models/address.rb +277 -0
  195. data/lib/melio-platform-api-client/models/adjustment.rb +239 -0
  196. data/lib/melio-platform-api-client/models/bank_account.rb +254 -0
  197. data/lib/melio-platform-api-client/models/bank_account_type.rb +37 -0
  198. data/lib/melio-platform-api-client/models/biller_account.rb +223 -0
  199. data/lib/melio-platform-api-client/models/card.rb +339 -0
  200. data/lib/melio-platform-api-client/models/charge.rb +368 -0
  201. data/lib/melio-platform-api-client/models/charge_all_of.rb +330 -0
  202. data/lib/melio-platform-api-client/models/checkout.rb +588 -0
  203. data/lib/melio-platform-api-client/models/checkout_all_of.rb +550 -0
  204. data/lib/melio-platform-api-client/models/checkout_all_of_buyer.rb +265 -0
  205. data/lib/melio-platform-api-client/models/company.rb +295 -0
  206. data/lib/melio-platform-api-client/models/confirm_payment_intents_response.rb +223 -0
  207. data/lib/melio-platform-api-client/models/currency.rb +36 -0
  208. data/lib/melio-platform-api-client/models/deleted_response.rb +224 -0
  209. data/lib/melio-platform-api-client/models/delivery_method.rb +275 -0
  210. data/lib/melio-platform-api-client/models/delivery_method_all_of.rb +237 -0
  211. data/lib/melio-platform-api-client/models/delivery_method_details.rb +108 -0
  212. data/lib/melio-platform-api-client/models/delivery_method_type.rb +40 -0
  213. data/lib/melio-platform-api-client/models/delivery_preference.rb +283 -0
  214. data/lib/melio-platform-api-client/models/delivery_preference_type.rb +42 -0
  215. data/lib/melio-platform-api-client/models/domestic_wire_account.rb +252 -0
  216. data/lib/melio-platform-api-client/models/domestic_wire_account_address.rb +253 -0
  217. data/lib/melio-platform-api-client/models/error_response.rb +224 -0
  218. data/lib/melio-platform-api-client/models/file_info.rb +261 -0
  219. data/lib/melio-platform-api-client/models/file_info_all_of.rb +223 -0
  220. data/lib/melio-platform-api-client/models/financing.rb +293 -0
  221. data/lib/melio-platform-api-client/models/financing_dropdown_options.rb +227 -0
  222. data/lib/melio-platform-api-client/models/financing_fields.rb +265 -0
  223. data/lib/melio-platform-api-client/models/funding_source.rb +280 -0
  224. data/lib/melio-platform-api-client/models/funding_source_all_of.rb +242 -0
  225. data/lib/melio-platform-api-client/models/funding_source_details.rb +105 -0
  226. data/lib/melio-platform-api-client/models/funding_source_type.rb +37 -0
  227. data/lib/melio-platform-api-client/models/get_accounts_account_id_response.rb +223 -0
  228. data/lib/melio-platform-api-client/models/get_accounts_response.rb +225 -0
  229. data/lib/melio-platform-api-client/models/get_charges_charge_id_response.rb +223 -0
  230. data/lib/melio-platform-api-client/models/get_charges_response.rb +225 -0
  231. data/lib/melio-platform-api-client/models/get_checkouts_checkout_id_response.rb +223 -0
  232. data/lib/melio-platform-api-client/models/get_delivery_methods_delivery_method_id_response.rb +223 -0
  233. data/lib/melio-platform-api-client/models/get_delivery_methods_response.rb +225 -0
  234. data/lib/melio-platform-api-client/models/get_files_file_id_data_response.rb +218 -0
  235. data/lib/melio-platform-api-client/models/get_files_file_id_data_response_data.rb +254 -0
  236. data/lib/melio-platform-api-client/models/get_files_file_id_data_response_data_customer_info.rb +218 -0
  237. data/lib/melio-platform-api-client/models/get_files_file_id_data_response_data_invoice_info.rb +227 -0
  238. data/lib/melio-platform-api-client/models/get_files_file_id_data_response_data_vendor_info.rb +227 -0
  239. data/lib/melio-platform-api-client/models/get_files_file_id_response.rb +223 -0
  240. data/lib/melio-platform-api-client/models/get_files_response.rb +225 -0
  241. data/lib/melio-platform-api-client/models/get_financing_response.rb +223 -0
  242. data/lib/melio-platform-api-client/models/get_funding_sources_funding_source_id_response.rb +223 -0
  243. data/lib/melio-platform-api-client/models/get_funding_sources_response.rb +225 -0
  244. data/lib/melio-platform-api-client/models/get_payment_intents_payment_intent_id_response.rb +223 -0
  245. data/lib/melio-platform-api-client/models/get_payment_intents_response.rb +225 -0
  246. data/lib/melio-platform-api-client/models/get_payments_payment_id_response.rb +223 -0
  247. data/lib/melio-platform-api-client/models/get_payments_response.rb +225 -0
  248. data/lib/melio-platform-api-client/models/get_vendor_directory_response.rb +225 -0
  249. data/lib/melio-platform-api-client/models/get_vendors_response.rb +225 -0
  250. data/lib/melio-platform-api-client/models/get_vendors_vendor_id_delivery_methods_response.rb +225 -0
  251. data/lib/melio-platform-api-client/models/get_vendors_vendor_id_response.rb +223 -0
  252. data/lib/melio-platform-api-client/models/get_webhooks_checkouts_response.rb +223 -0
  253. data/lib/melio-platform-api-client/models/get_webhooks_payments_response.rb +223 -0
  254. data/lib/melio-platform-api-client/models/get_webhooks_response.rb +225 -0
  255. data/lib/melio-platform-api-client/models/invoice.rb +234 -0
  256. data/lib/melio-platform-api-client/models/line_item.rb +316 -0
  257. data/lib/melio-platform-api-client/models/merchant.rb +335 -0
  258. data/lib/melio-platform-api-client/models/merchant_all_of.rb +297 -0
  259. data/lib/melio-platform-api-client/models/model_error.rb +256 -0
  260. data/lib/melio-platform-api-client/models/model_error_all_of.rb +237 -0
  261. data/lib/melio-platform-api-client/models/object.rb +238 -0
  262. data/lib/melio-platform-api-client/models/paper_check.rb +239 -0
  263. data/lib/melio-platform-api-client/models/partial_address.rb +258 -0
  264. data/lib/melio-platform-api-client/models/patch_charges_charge_id_request.rb +218 -0
  265. data/lib/melio-platform-api-client/models/patch_charges_charge_id_response.rb +223 -0
  266. data/lib/melio-platform-api-client/models/patch_payment_intents_payment_intent_id_request.rb +275 -0
  267. data/lib/melio-platform-api-client/models/patch_payment_intents_payment_intent_id_request_bill_info.rb +257 -0
  268. data/lib/melio-platform-api-client/models/patch_payment_intents_payment_intent_id_response.rb +223 -0
  269. data/lib/melio-platform-api-client/models/patch_vendors_vendor_id_request.rb +227 -0
  270. data/lib/melio-platform-api-client/models/patch_vendors_vendor_id_request_contact.rb +237 -0
  271. data/lib/melio-platform-api-client/models/patch_vendors_vendor_id_response.rb +223 -0
  272. data/lib/melio-platform-api-client/models/payment.rb +469 -0
  273. data/lib/melio-platform-api-client/models/payment_all_of.rb +431 -0
  274. data/lib/melio-platform-api-client/models/payment_fee.rb +237 -0
  275. data/lib/melio-platform-api-client/models/payment_intent.rb +450 -0
  276. data/lib/melio-platform-api-client/models/payment_intent_all_of.rb +412 -0
  277. data/lib/melio-platform-api-client/models/payment_intent_all_of_bill_info.rb +301 -0
  278. data/lib/melio-platform-api-client/models/person.rb +252 -0
  279. data/lib/melio-platform-api-client/models/plaid_details.rb +239 -0
  280. data/lib/melio-platform-api-client/models/post_accounts_request.rb +248 -0
  281. data/lib/melio-platform-api-client/models/post_accounts_response.rb +223 -0
  282. data/lib/melio-platform-api-client/models/post_auth_response.rb +223 -0
  283. data/lib/melio-platform-api-client/models/post_auth_response_data.rb +251 -0
  284. data/lib/melio-platform-api-client/models/post_checkouts_checkout_id_capture_request.rb +271 -0
  285. data/lib/melio-platform-api-client/models/post_checkouts_checkout_id_capture_request_invoice.rb +234 -0
  286. data/lib/melio-platform-api-client/models/post_checkouts_checkout_id_complete_request.rb +253 -0
  287. data/lib/melio-platform-api-client/models/post_checkouts_request.rb +438 -0
  288. data/lib/melio-platform-api-client/models/post_checkouts_response.rb +223 -0
  289. data/lib/melio-platform-api-client/models/post_delivery_methods_request.rb +237 -0
  290. data/lib/melio-platform-api-client/models/post_delivery_methods_request_details.rb +107 -0
  291. data/lib/melio-platform-api-client/models/post_delivery_methods_response.rb +223 -0
  292. data/lib/melio-platform-api-client/models/post_files_response.rb +223 -0
  293. data/lib/melio-platform-api-client/models/post_financing_request.rb +220 -0
  294. data/lib/melio-platform-api-client/models/post_financing_request_fields.rb +237 -0
  295. data/lib/melio-platform-api-client/models/post_financing_response.rb +223 -0
  296. data/lib/melio-platform-api-client/models/post_financing_transactional_request.rb +239 -0
  297. data/lib/melio-platform-api-client/models/post_financing_transactional_response.rb +224 -0
  298. data/lib/melio-platform-api-client/models/post_financing_transactional_response_data.rb +271 -0
  299. data/lib/melio-platform-api-client/models/post_funding_sources_request.rb +280 -0
  300. data/lib/melio-platform-api-client/models/post_funding_sources_request_details.rb +106 -0
  301. data/lib/melio-platform-api-client/models/post_funding_sources_response.rb +223 -0
  302. data/lib/melio-platform-api-client/models/post_merchants_request.rb +283 -0
  303. data/lib/melio-platform-api-client/models/post_merchants_response.rb +223 -0
  304. data/lib/melio-platform-api-client/models/post_payment_intents_bulk_request.rb +225 -0
  305. data/lib/melio-platform-api-client/models/post_payment_intents_bulk_response.rb +225 -0
  306. data/lib/melio-platform-api-client/models/post_payment_intents_payment_intent_id_payment_response.rb +223 -0
  307. data/lib/melio-platform-api-client/models/post_payment_intents_request.rb +285 -0
  308. data/lib/melio-platform-api-client/models/post_payment_intents_request_bill_info.rb +277 -0
  309. data/lib/melio-platform-api-client/models/post_payment_intents_response.rb +223 -0
  310. data/lib/melio-platform-api-client/models/post_payments_payment_id_recover_request.rb +276 -0
  311. data/lib/melio-platform-api-client/models/post_payments_payment_id_recover_response.rb +223 -0
  312. data/lib/melio-platform-api-client/models/post_vendors_bulk_request.rb +225 -0
  313. data/lib/melio-platform-api-client/models/post_vendors_bulk_response.rb +225 -0
  314. data/lib/melio-platform-api-client/models/post_vendors_from_vendor_directory_request.rb +232 -0
  315. data/lib/melio-platform-api-client/models/post_vendors_from_vendor_directory_request_delivery_method.rb +233 -0
  316. data/lib/melio-platform-api-client/models/post_vendors_from_vendor_directory_response.rb +223 -0
  317. data/lib/melio-platform-api-client/models/post_vendors_request.rb +238 -0
  318. data/lib/melio-platform-api-client/models/post_vendors_response.rb +223 -0
  319. data/lib/melio-platform-api-client/models/post_vendors_vendor_id_delivery_methods_response.rb +223 -0
  320. data/lib/melio-platform-api-client/models/post_webhooks_checkouts_request.rb +223 -0
  321. data/lib/melio-platform-api-client/models/post_webhooks_checkouts_response.rb +223 -0
  322. data/lib/melio-platform-api-client/models/post_webhooks_payments_request.rb +223 -0
  323. data/lib/melio-platform-api-client/models/post_webhooks_payments_response.rb +223 -0
  324. data/lib/melio-platform-api-client/models/put_payment_intents_request.rb +305 -0
  325. data/lib/melio-platform-api-client/models/put_payment_intents_response.rb +223 -0
  326. data/lib/melio-platform-api-client/models/recover_payment_request.rb +304 -0
  327. data/lib/melio-platform-api-client/models/recover_payment_response.rb +223 -0
  328. data/lib/melio-platform-api-client/models/short_history.rb +247 -0
  329. data/lib/melio-platform-api-client/models/taba_pay_details.rb +380 -0
  330. data/lib/melio-platform-api-client/models/taba_pay_details_card_owner.rb +237 -0
  331. data/lib/melio-platform-api-client/models/tax_info.rb +273 -0
  332. data/lib/melio-platform-api-client/models/vendor.rb +292 -0
  333. data/lib/melio-platform-api-client/models/vendor_all_of.rb +254 -0
  334. data/lib/melio-platform-api-client/models/vendor_all_of_contact.rb +254 -0
  335. data/lib/melio-platform-api-client/models/vendor_directory.rb +283 -0
  336. data/lib/melio-platform-api-client/models/vendor_directory_contact.rb +261 -0
  337. data/lib/melio-platform-api-client/models/vendor_directory_delivery_method.rb +223 -0
  338. data/lib/melio-platform-api-client/models/vendor_directory_not_found_response.rb +219 -0
  339. data/lib/melio-platform-api-client/models/virtual_account.rb +243 -0
  340. data/lib/melio-platform-api-client/models/webhook.rb +227 -0
  341. data/lib/melio-platform-api-client/models/with_unknown_data.rb +219 -0
  342. data/lib/melio-platform-api-client/version.rb +15 -0
  343. data/lib/melio-platform-api-client.rb +206 -0
  344. data/melio-platform-api-client.gemspec +38 -0
  345. data/spec/api/accounts_api_spec.rb +71 -0
  346. data/spec/api/auth_api_spec.rb +48 -0
  347. data/spec/api/charges_api_spec.rb +90 -0
  348. data/spec/api/checkouts_api_spec.rb +93 -0
  349. data/spec/api/delivery_methods_api_spec.rb +115 -0
  350. data/spec/api/files_api_spec.rb +85 -0
  351. data/spec/api/financing_api_spec.rb +75 -0
  352. data/spec/api/funding_sources_api_spec.rb +88 -0
  353. data/spec/api/merchants_api_spec.rb +49 -0
  354. data/spec/api/payment_intents_api_spec.rb +114 -0
  355. data/spec/api/payments_api_spec.rb +88 -0
  356. data/spec/api/vendor_directory_api_spec.rb +62 -0
  357. data/spec/api/vendors_api_spec.rb +170 -0
  358. data/spec/api/webhooks_api_spec.rb +118 -0
  359. data/spec/api_client_spec.rb +226 -0
  360. data/spec/configuration_spec.rb +42 -0
  361. data/spec/models/account_all_of_spec.rb +50 -0
  362. data/spec/models/account_spec.rb +62 -0
  363. data/spec/models/add_to_my_vendor_parameters_delivery_method_biller_account_spec.rb +34 -0
  364. data/spec/models/add_to_my_vendor_parameters_delivery_method_spec.rb +40 -0
  365. data/spec/models/add_to_my_vendor_parameters_spec.rb +34 -0
  366. data/spec/models/address_spec.rb +58 -0
  367. data/spec/models/adjustment_spec.rb +40 -0
  368. data/spec/models/bank_account_spec.rb +46 -0
  369. data/spec/models/bank_account_type_spec.rb +28 -0
  370. data/spec/models/biller_account_spec.rb +34 -0
  371. data/spec/models/card_spec.rb +52 -0
  372. data/spec/models/charge_all_of_spec.rb +68 -0
  373. data/spec/models/charge_spec.rb +80 -0
  374. data/spec/models/checkout_all_of_buyer_spec.rb +58 -0
  375. data/spec/models/checkout_all_of_spec.rb +170 -0
  376. data/spec/models/checkout_spec.rb +182 -0
  377. data/spec/models/company_spec.rb +64 -0
  378. data/spec/models/confirm_payment_intents_response_spec.rb +34 -0
  379. data/spec/models/currency_spec.rb +28 -0
  380. data/spec/models/deleted_response_spec.rb +34 -0
  381. data/spec/models/delivery_method_all_of_spec.rb +40 -0
  382. data/spec/models/delivery_method_details_spec.rb +31 -0
  383. data/spec/models/delivery_method_spec.rb +52 -0
  384. data/spec/models/delivery_method_type_spec.rb +28 -0
  385. data/spec/models/delivery_preference_spec.rb +64 -0
  386. data/spec/models/delivery_preference_type_spec.rb +28 -0
  387. data/spec/models/domestic_wire_account_address_spec.rb +46 -0
  388. data/spec/models/domestic_wire_account_spec.rb +46 -0
  389. data/spec/models/error_response_spec.rb +34 -0
  390. data/spec/models/file_info_all_of_spec.rb +34 -0
  391. data/spec/models/file_info_spec.rb +46 -0
  392. data/spec/models/financing_dropdown_options_spec.rb +40 -0
  393. data/spec/models/financing_fields_spec.rb +64 -0
  394. data/spec/models/financing_spec.rb +56 -0
  395. data/spec/models/funding_source_all_of_spec.rb +46 -0
  396. data/spec/models/funding_source_details_spec.rb +31 -0
  397. data/spec/models/funding_source_spec.rb +58 -0
  398. data/spec/models/funding_source_type_spec.rb +28 -0
  399. data/spec/models/get_accounts_account_id_response_spec.rb +34 -0
  400. data/spec/models/get_accounts_response_spec.rb +34 -0
  401. data/spec/models/get_charges_charge_id_response_spec.rb +34 -0
  402. data/spec/models/get_charges_response_spec.rb +34 -0
  403. data/spec/models/get_checkouts_checkout_id_response_spec.rb +34 -0
  404. data/spec/models/get_delivery_methods_delivery_method_id_response_spec.rb +34 -0
  405. data/spec/models/get_delivery_methods_response_spec.rb +34 -0
  406. data/spec/models/get_files_file_id_data_response_data_customer_info_spec.rb +34 -0
  407. data/spec/models/get_files_file_id_data_response_data_invoice_info_spec.rb +40 -0
  408. data/spec/models/get_files_file_id_data_response_data_spec.rb +58 -0
  409. data/spec/models/get_files_file_id_data_response_data_vendor_info_spec.rb +40 -0
  410. data/spec/models/get_files_file_id_data_response_spec.rb +34 -0
  411. data/spec/models/get_files_file_id_response_spec.rb +34 -0
  412. data/spec/models/get_files_response_spec.rb +34 -0
  413. data/spec/models/get_financing_response_spec.rb +34 -0
  414. data/spec/models/get_funding_sources_funding_source_id_response_spec.rb +34 -0
  415. data/spec/models/get_funding_sources_response_spec.rb +34 -0
  416. data/spec/models/get_payment_intents_payment_intent_id_response_spec.rb +34 -0
  417. data/spec/models/get_payment_intents_response_spec.rb +34 -0
  418. data/spec/models/get_payments_payment_id_response_spec.rb +34 -0
  419. data/spec/models/get_payments_response_spec.rb +34 -0
  420. data/spec/models/get_vendor_directory_response_spec.rb +34 -0
  421. data/spec/models/get_vendors_response_spec.rb +34 -0
  422. data/spec/models/get_vendors_vendor_id_delivery_methods_response_spec.rb +34 -0
  423. data/spec/models/get_vendors_vendor_id_response_spec.rb +34 -0
  424. data/spec/models/get_webhooks_checkouts_response_spec.rb +34 -0
  425. data/spec/models/get_webhooks_payments_response_spec.rb +34 -0
  426. data/spec/models/get_webhooks_response_spec.rb +34 -0
  427. data/spec/models/invoice_spec.rb +40 -0
  428. data/spec/models/line_item_spec.rb +70 -0
  429. data/spec/models/merchant_all_of_spec.rb +82 -0
  430. data/spec/models/merchant_spec.rb +94 -0
  431. data/spec/models/model_error_all_of_spec.rb +40 -0
  432. data/spec/models/model_error_spec.rb +46 -0
  433. data/spec/models/object_spec.rb +40 -0
  434. data/spec/models/paper_check_spec.rb +40 -0
  435. data/spec/models/partial_address_spec.rb +58 -0
  436. data/spec/models/patch_charges_charge_id_request_spec.rb +34 -0
  437. data/spec/models/patch_charges_charge_id_response_spec.rb +34 -0
  438. data/spec/models/patch_payment_intents_payment_intent_id_request_bill_info_spec.rb +58 -0
  439. data/spec/models/patch_payment_intents_payment_intent_id_request_spec.rb +70 -0
  440. data/spec/models/patch_payment_intents_payment_intent_id_response_spec.rb +34 -0
  441. data/spec/models/patch_vendors_vendor_id_request_contact_spec.rb +46 -0
  442. data/spec/models/patch_vendors_vendor_id_request_spec.rb +40 -0
  443. data/spec/models/patch_vendors_vendor_id_response_spec.rb +34 -0
  444. data/spec/models/payment_all_of_spec.rb +116 -0
  445. data/spec/models/payment_fee_spec.rb +40 -0
  446. data/spec/models/payment_intent_all_of_bill_info_spec.rb +70 -0
  447. data/spec/models/payment_intent_all_of_spec.rb +110 -0
  448. data/spec/models/payment_intent_spec.rb +122 -0
  449. data/spec/models/payment_spec.rb +128 -0
  450. data/spec/models/person_spec.rb +46 -0
  451. data/spec/models/plaid_details_spec.rb +40 -0
  452. data/spec/models/post_accounts_request_spec.rb +46 -0
  453. data/spec/models/post_accounts_response_spec.rb +34 -0
  454. data/spec/models/post_auth_response_data_spec.rb +46 -0
  455. data/spec/models/post_auth_response_spec.rb +34 -0
  456. data/spec/models/post_checkouts_checkout_id_capture_request_invoice_spec.rb +40 -0
  457. data/spec/models/post_checkouts_checkout_id_capture_request_spec.rb +46 -0
  458. data/spec/models/post_checkouts_checkout_id_complete_request_spec.rb +52 -0
  459. data/spec/models/post_checkouts_request_spec.rb +124 -0
  460. data/spec/models/post_checkouts_response_spec.rb +34 -0
  461. data/spec/models/post_delivery_methods_request_details_spec.rb +31 -0
  462. data/spec/models/post_delivery_methods_request_spec.rb +40 -0
  463. data/spec/models/post_delivery_methods_response_spec.rb +34 -0
  464. data/spec/models/post_files_response_spec.rb +34 -0
  465. data/spec/models/post_financing_request_fields_spec.rb +40 -0
  466. data/spec/models/post_financing_request_spec.rb +34 -0
  467. data/spec/models/post_financing_response_spec.rb +34 -0
  468. data/spec/models/post_financing_transactional_request_spec.rb +40 -0
  469. data/spec/models/post_financing_transactional_response_data_spec.rb +44 -0
  470. data/spec/models/post_financing_transactional_response_spec.rb +34 -0
  471. data/spec/models/post_funding_sources_request_details_spec.rb +31 -0
  472. data/spec/models/post_funding_sources_request_spec.rb +50 -0
  473. data/spec/models/post_funding_sources_response_spec.rb +34 -0
  474. data/spec/models/post_merchants_request_spec.rb +76 -0
  475. data/spec/models/post_merchants_response_spec.rb +34 -0
  476. data/spec/models/post_payment_intents_bulk_request_spec.rb +34 -0
  477. data/spec/models/post_payment_intents_bulk_response_spec.rb +34 -0
  478. data/spec/models/post_payment_intents_payment_intent_id_payment_response_spec.rb +34 -0
  479. data/spec/models/post_payment_intents_request_bill_info_spec.rb +58 -0
  480. data/spec/models/post_payment_intents_request_spec.rb +70 -0
  481. data/spec/models/post_payment_intents_response_spec.rb +34 -0
  482. data/spec/models/post_payments_payment_id_recover_request_spec.rb +58 -0
  483. data/spec/models/post_payments_payment_id_recover_response_spec.rb +34 -0
  484. data/spec/models/post_vendors_bulk_request_spec.rb +34 -0
  485. data/spec/models/post_vendors_bulk_response_spec.rb +34 -0
  486. data/spec/models/post_vendors_from_vendor_directory_request_delivery_method_spec.rb +40 -0
  487. data/spec/models/post_vendors_from_vendor_directory_request_spec.rb +40 -0
  488. data/spec/models/post_vendors_from_vendor_directory_response_spec.rb +34 -0
  489. data/spec/models/post_vendors_request_spec.rb +40 -0
  490. data/spec/models/post_vendors_response_spec.rb +34 -0
  491. data/spec/models/post_vendors_vendor_id_delivery_methods_response_spec.rb +34 -0
  492. data/spec/models/post_webhooks_checkouts_request_spec.rb +34 -0
  493. data/spec/models/post_webhooks_checkouts_response_spec.rb +34 -0
  494. data/spec/models/post_webhooks_payments_request_spec.rb +34 -0
  495. data/spec/models/post_webhooks_payments_response_spec.rb +34 -0
  496. data/spec/models/put_payment_intents_request_spec.rb +88 -0
  497. data/spec/models/put_payment_intents_response_spec.rb +34 -0
  498. data/spec/models/recover_payment_request_spec.rb +88 -0
  499. data/spec/models/recover_payment_response_spec.rb +34 -0
  500. data/spec/models/short_history_spec.rb +46 -0
  501. data/spec/models/taba_pay_details_card_owner_spec.rb +40 -0
  502. data/spec/models/taba_pay_details_spec.rb +70 -0
  503. data/spec/models/tax_info_spec.rb +44 -0
  504. data/spec/models/vendor_all_of_contact_spec.rb +46 -0
  505. data/spec/models/vendor_all_of_spec.rb +46 -0
  506. data/spec/models/vendor_directory_contact_spec.rb +52 -0
  507. data/spec/models/vendor_directory_delivery_method_spec.rb +34 -0
  508. data/spec/models/vendor_directory_not_found_response_spec.rb +34 -0
  509. data/spec/models/vendor_directory_spec.rb +58 -0
  510. data/spec/models/vendor_spec.rb +58 -0
  511. data/spec/models/virtual_account_spec.rb +46 -0
  512. data/spec/models/webhook_spec.rb +40 -0
  513. data/spec/models/with_unknown_data_spec.rb +34 -0
  514. data/spec/spec_helper.rb +111 -0
  515. metadata +766 -0
@@ -0,0 +1,265 @@
1
+ =begin
2
+ #Platform API
3
+
4
+ #Melio Platform API enables partners to perform partner-related operations in Melio's system, for themselves, and on behalf of their system's users.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: platform@melio.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module MelioPlatformApiClient
17
+ class FinancingFields
18
+ attr_accessor :field_key
19
+
20
+ attr_accessor :label
21
+
22
+ attr_accessor :validation_regex
23
+
24
+ attr_accessor :type
25
+
26
+ attr_accessor :placeholder
27
+
28
+ attr_accessor :dropdown_options
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+ :'field_key' => :'fieldKey',
34
+ :'label' => :'label',
35
+ :'validation_regex' => :'validationRegex',
36
+ :'type' => :'type',
37
+ :'placeholder' => :'placeholder',
38
+ :'dropdown_options' => :'dropdownOptions'
39
+ }
40
+ end
41
+
42
+ # Returns all the JSON keys this model knows about
43
+ def self.acceptable_attributes
44
+ attribute_map.values
45
+ end
46
+
47
+ # Attribute type mapping.
48
+ def self.openapi_types
49
+ {
50
+ :'field_key' => :'String',
51
+ :'label' => :'String',
52
+ :'validation_regex' => :'String',
53
+ :'type' => :'String',
54
+ :'placeholder' => :'String',
55
+ :'dropdown_options' => :'Array<FinancingDropdownOptions>'
56
+ }
57
+ end
58
+
59
+ # List of attributes with nullable: true
60
+ def self.openapi_nullable
61
+ Set.new([
62
+ ])
63
+ end
64
+
65
+ # Initializes the object
66
+ # @param [Hash] attributes Model attributes in the form of hash
67
+ def initialize(attributes = {})
68
+ if (!attributes.is_a?(Hash))
69
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MelioPlatformApiClient::FinancingFields` initialize method"
70
+ end
71
+
72
+ # check to see if the attribute exists and convert string to symbol for hash key
73
+ attributes = attributes.each_with_object({}) { |(k, v), h|
74
+ if (!self.class.attribute_map.key?(k.to_sym))
75
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MelioPlatformApiClient::FinancingFields`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
76
+ end
77
+ h[k.to_sym] = v
78
+ }
79
+
80
+ if attributes.key?(:'field_key')
81
+ self.field_key = attributes[:'field_key']
82
+ end
83
+
84
+ if attributes.key?(:'label')
85
+ self.label = attributes[:'label']
86
+ end
87
+
88
+ if attributes.key?(:'validation_regex')
89
+ self.validation_regex = attributes[:'validation_regex']
90
+ end
91
+
92
+ if attributes.key?(:'type')
93
+ self.type = attributes[:'type']
94
+ end
95
+
96
+ if attributes.key?(:'placeholder')
97
+ self.placeholder = attributes[:'placeholder']
98
+ end
99
+
100
+ if attributes.key?(:'dropdown_options')
101
+ if (value = attributes[:'dropdown_options']).is_a?(Array)
102
+ self.dropdown_options = value
103
+ end
104
+ end
105
+ end
106
+
107
+ # Show invalid properties with the reasons. Usually used together with valid?
108
+ # @return Array for valid properties with the reasons
109
+ def list_invalid_properties
110
+ invalid_properties = Array.new
111
+ invalid_properties
112
+ end
113
+
114
+ # Check to see if the all the properties in the model are valid
115
+ # @return true if the model is valid
116
+ def valid?
117
+ true
118
+ end
119
+
120
+ # Checks equality by comparing each attribute.
121
+ # @param [Object] Object to be compared
122
+ def ==(o)
123
+ return true if self.equal?(o)
124
+ self.class == o.class &&
125
+ field_key == o.field_key &&
126
+ label == o.label &&
127
+ validation_regex == o.validation_regex &&
128
+ type == o.type &&
129
+ placeholder == o.placeholder &&
130
+ dropdown_options == o.dropdown_options
131
+ end
132
+
133
+ # @see the `==` method
134
+ # @param [Object] Object to be compared
135
+ def eql?(o)
136
+ self == o
137
+ end
138
+
139
+ # Calculates hash code according to all attributes.
140
+ # @return [Integer] Hash code
141
+ def hash
142
+ [field_key, label, validation_regex, type, placeholder, dropdown_options].hash
143
+ end
144
+
145
+ # Builds the object from hash
146
+ # @param [Hash] attributes Model attributes in the form of hash
147
+ # @return [Object] Returns the model itself
148
+ def self.build_from_hash(attributes)
149
+ new.build_from_hash(attributes)
150
+ end
151
+
152
+ # Builds the object from hash
153
+ # @param [Hash] attributes Model attributes in the form of hash
154
+ # @return [Object] Returns the model itself
155
+ def build_from_hash(attributes)
156
+ return nil unless attributes.is_a?(Hash)
157
+ self.class.openapi_types.each_pair do |key, type|
158
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
159
+ self.send("#{key}=", nil)
160
+ elsif type =~ /\AArray<(.*)>/i
161
+ # check to ensure the input is an array given that the attribute
162
+ # is documented as an array but the input is not
163
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
164
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
165
+ end
166
+ elsif !attributes[self.class.attribute_map[key]].nil?
167
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
168
+ end
169
+ end
170
+
171
+ self
172
+ end
173
+
174
+ # Deserializes the data based on type
175
+ # @param string type Data type
176
+ # @param string value Value to be deserialized
177
+ # @return [Object] Deserialized data
178
+ def _deserialize(type, value)
179
+ case type.to_sym
180
+ when :Time
181
+ Time.parse(value)
182
+ when :Date
183
+ Date.parse(value)
184
+ when :String
185
+ value.to_s
186
+ when :Integer
187
+ value.to_i
188
+ when :Float
189
+ value.to_f
190
+ when :Boolean
191
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
192
+ true
193
+ else
194
+ false
195
+ end
196
+ when :Object
197
+ # generic object (usually a Hash), return directly
198
+ value
199
+ when /\AArray<(?<inner_type>.+)>\z/
200
+ inner_type = Regexp.last_match[:inner_type]
201
+ value.map { |v| _deserialize(inner_type, v) }
202
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
203
+ k_type = Regexp.last_match[:k_type]
204
+ v_type = Regexp.last_match[:v_type]
205
+ {}.tap do |hash|
206
+ value.each do |k, v|
207
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
208
+ end
209
+ end
210
+ else # model
211
+ # models (e.g. Pet) or oneOf
212
+ klass = MelioPlatformApiClient.const_get(type)
213
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
214
+ end
215
+ end
216
+
217
+ # Returns the string representation of the object
218
+ # @return [String] String presentation of the object
219
+ def to_s
220
+ to_hash.to_s
221
+ end
222
+
223
+ # to_body is an alias to to_hash (backward compatibility)
224
+ # @return [Hash] Returns the object in the form of hash
225
+ def to_body
226
+ to_hash
227
+ end
228
+
229
+ # Returns the object in the form of hash
230
+ # @return [Hash] Returns the object in the form of hash
231
+ def to_hash
232
+ hash = {}
233
+ self.class.attribute_map.each_pair do |attr, param|
234
+ value = self.send(attr)
235
+ if value.nil?
236
+ is_nullable = self.class.openapi_nullable.include?(attr)
237
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
238
+ end
239
+
240
+ hash[param] = _to_hash(value)
241
+ end
242
+ hash
243
+ end
244
+
245
+ # Outputs non-array value in the form of hash
246
+ # For object, use to_hash. Otherwise, just return the value
247
+ # @param [Object] value Any valid value
248
+ # @return [Hash] Returns the value in the form of hash
249
+ def _to_hash(value)
250
+ if value.is_a?(Array)
251
+ value.compact.map { |v| _to_hash(v) }
252
+ elsif value.is_a?(Hash)
253
+ {}.tap do |hash|
254
+ value.each { |k, v| hash[k] = _to_hash(v) }
255
+ end
256
+ elsif value.respond_to? :to_hash
257
+ value.to_hash
258
+ else
259
+ value
260
+ end
261
+ end
262
+
263
+ end
264
+
265
+ end
@@ -0,0 +1,280 @@
1
+ =begin
2
+ #Platform API
3
+
4
+ #Melio Platform API enables partners to perform partner-related operations in Melio's system, for themselves, and on behalf of their system's users.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: platform@melio.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module MelioPlatformApiClient
17
+ # A payment source that is used to send funds. Accounts can have multiple Funding Sources. The `type` field determines the contents of the `details` field, according to the following mapping: * `bank-account` => `BankAccount` * `plaid` => `PlaidDetails` * `card` => `Card`
18
+ class FundingSource
19
+ # Identifier of the entity.
20
+ attr_accessor :id
21
+
22
+ attr_accessor :history
23
+
24
+ attr_accessor :display_name
25
+
26
+ attr_accessor :type
27
+
28
+ attr_accessor :details
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+ :'id' => :'id',
34
+ :'history' => :'history',
35
+ :'display_name' => :'displayName',
36
+ :'type' => :'type',
37
+ :'details' => :'details'
38
+ }
39
+ end
40
+
41
+ # Returns all the JSON keys this model knows about
42
+ def self.acceptable_attributes
43
+ attribute_map.values
44
+ end
45
+
46
+ # Attribute type mapping.
47
+ def self.openapi_types
48
+ {
49
+ :'id' => :'String',
50
+ :'history' => :'ShortHistory',
51
+ :'display_name' => :'String',
52
+ :'type' => :'FundingSourceType',
53
+ :'details' => :'FundingSourceDetails'
54
+ }
55
+ end
56
+
57
+ # List of attributes with nullable: true
58
+ def self.openapi_nullable
59
+ Set.new([
60
+ :'details'
61
+ ])
62
+ end
63
+
64
+ # List of class defined in allOf (OpenAPI v3)
65
+ def self.openapi_all_of
66
+ [
67
+ :'FundingSourceAllOf',
68
+ :'Object'
69
+ ]
70
+ end
71
+
72
+ # Initializes the object
73
+ # @param [Hash] attributes Model attributes in the form of hash
74
+ def initialize(attributes = {})
75
+ if (!attributes.is_a?(Hash))
76
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MelioPlatformApiClient::FundingSource` initialize method"
77
+ end
78
+
79
+ # check to see if the attribute exists and convert string to symbol for hash key
80
+ attributes = attributes.each_with_object({}) { |(k, v), h|
81
+ if (!self.class.attribute_map.key?(k.to_sym))
82
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MelioPlatformApiClient::FundingSource`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
83
+ end
84
+ h[k.to_sym] = v
85
+ }
86
+
87
+ if attributes.key?(:'id')
88
+ self.id = attributes[:'id']
89
+ end
90
+
91
+ if attributes.key?(:'history')
92
+ self.history = attributes[:'history']
93
+ end
94
+
95
+ if attributes.key?(:'display_name')
96
+ self.display_name = attributes[:'display_name']
97
+ end
98
+
99
+ if attributes.key?(:'type')
100
+ self.type = attributes[:'type']
101
+ end
102
+
103
+ if attributes.key?(:'details')
104
+ self.details = attributes[:'details']
105
+ end
106
+ end
107
+
108
+ # Show invalid properties with the reasons. Usually used together with valid?
109
+ # @return Array for valid properties with the reasons
110
+ def list_invalid_properties
111
+ invalid_properties = Array.new
112
+ if @id.nil?
113
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
114
+ end
115
+
116
+ if @history.nil?
117
+ invalid_properties.push('invalid value for "history", history cannot be nil.')
118
+ end
119
+
120
+ if @type.nil?
121
+ invalid_properties.push('invalid value for "type", type cannot be nil.')
122
+ end
123
+
124
+ invalid_properties
125
+ end
126
+
127
+ # Check to see if the all the properties in the model are valid
128
+ # @return true if the model is valid
129
+ def valid?
130
+ return false if @id.nil?
131
+ return false if @history.nil?
132
+ return false if @type.nil?
133
+ true
134
+ end
135
+
136
+ # Checks equality by comparing each attribute.
137
+ # @param [Object] Object to be compared
138
+ def ==(o)
139
+ return true if self.equal?(o)
140
+ self.class == o.class &&
141
+ id == o.id &&
142
+ history == o.history &&
143
+ display_name == o.display_name &&
144
+ type == o.type &&
145
+ details == o.details
146
+ end
147
+
148
+ # @see the `==` method
149
+ # @param [Object] Object to be compared
150
+ def eql?(o)
151
+ self == o
152
+ end
153
+
154
+ # Calculates hash code according to all attributes.
155
+ # @return [Integer] Hash code
156
+ def hash
157
+ [id, history, display_name, type, details].hash
158
+ end
159
+
160
+ # Builds the object from hash
161
+ # @param [Hash] attributes Model attributes in the form of hash
162
+ # @return [Object] Returns the model itself
163
+ def self.build_from_hash(attributes)
164
+ new.build_from_hash(attributes)
165
+ end
166
+
167
+ # Builds the object from hash
168
+ # @param [Hash] attributes Model attributes in the form of hash
169
+ # @return [Object] Returns the model itself
170
+ def build_from_hash(attributes)
171
+ return nil unless attributes.is_a?(Hash)
172
+ self.class.openapi_types.each_pair do |key, type|
173
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
174
+ self.send("#{key}=", nil)
175
+ elsif type =~ /\AArray<(.*)>/i
176
+ # check to ensure the input is an array given that the attribute
177
+ # is documented as an array but the input is not
178
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
179
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
180
+ end
181
+ elsif !attributes[self.class.attribute_map[key]].nil?
182
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
183
+ end
184
+ end
185
+
186
+ self
187
+ end
188
+
189
+ # Deserializes the data based on type
190
+ # @param string type Data type
191
+ # @param string value Value to be deserialized
192
+ # @return [Object] Deserialized data
193
+ def _deserialize(type, value)
194
+ case type.to_sym
195
+ when :Time
196
+ Time.parse(value)
197
+ when :Date
198
+ Date.parse(value)
199
+ when :String
200
+ value.to_s
201
+ when :Integer
202
+ value.to_i
203
+ when :Float
204
+ value.to_f
205
+ when :Boolean
206
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
207
+ true
208
+ else
209
+ false
210
+ end
211
+ when :Object
212
+ # generic object (usually a Hash), return directly
213
+ value
214
+ when /\AArray<(?<inner_type>.+)>\z/
215
+ inner_type = Regexp.last_match[:inner_type]
216
+ value.map { |v| _deserialize(inner_type, v) }
217
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
218
+ k_type = Regexp.last_match[:k_type]
219
+ v_type = Regexp.last_match[:v_type]
220
+ {}.tap do |hash|
221
+ value.each do |k, v|
222
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
223
+ end
224
+ end
225
+ else # model
226
+ # models (e.g. Pet) or oneOf
227
+ klass = MelioPlatformApiClient.const_get(type)
228
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
229
+ end
230
+ end
231
+
232
+ # Returns the string representation of the object
233
+ # @return [String] String presentation of the object
234
+ def to_s
235
+ to_hash.to_s
236
+ end
237
+
238
+ # to_body is an alias to to_hash (backward compatibility)
239
+ # @return [Hash] Returns the object in the form of hash
240
+ def to_body
241
+ to_hash
242
+ end
243
+
244
+ # Returns the object in the form of hash
245
+ # @return [Hash] Returns the object in the form of hash
246
+ def to_hash
247
+ hash = {}
248
+ self.class.attribute_map.each_pair do |attr, param|
249
+ value = self.send(attr)
250
+ if value.nil?
251
+ is_nullable = self.class.openapi_nullable.include?(attr)
252
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
253
+ end
254
+
255
+ hash[param] = _to_hash(value)
256
+ end
257
+ hash
258
+ end
259
+
260
+ # Outputs non-array value in the form of hash
261
+ # For object, use to_hash. Otherwise, just return the value
262
+ # @param [Object] value Any valid value
263
+ # @return [Hash] Returns the value in the form of hash
264
+ def _to_hash(value)
265
+ if value.is_a?(Array)
266
+ value.compact.map { |v| _to_hash(v) }
267
+ elsif value.is_a?(Hash)
268
+ {}.tap do |hash|
269
+ value.each { |k, v| hash[k] = _to_hash(v) }
270
+ end
271
+ elsif value.respond_to? :to_hash
272
+ value.to_hash
273
+ else
274
+ value
275
+ end
276
+ end
277
+
278
+ end
279
+
280
+ end