mt-sdk 0.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.
Files changed (318) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +188 -0
  4. data/bin/console +15 -0
  5. data/lib/modern_treasury/api_helper.rb +10 -0
  6. data/lib/modern_treasury/client.rb +275 -0
  7. data/lib/modern_treasury/configuration.rb +206 -0
  8. data/lib/modern_treasury/controllers/account_collection_flow_controller.rb +130 -0
  9. data/lib/modern_treasury/controllers/account_detail_controller.rb +131 -0
  10. data/lib/modern_treasury/controllers/balance_report_controller.rb +76 -0
  11. data/lib/modern_treasury/controllers/base_controller.rb +60 -0
  12. data/lib/modern_treasury/controllers/connection_controller.rb +40 -0
  13. data/lib/modern_treasury/controllers/counterparty_controller.rb +188 -0
  14. data/lib/modern_treasury/controllers/document_controller.rb +285 -0
  15. data/lib/modern_treasury/controllers/event_controller.rb +72 -0
  16. data/lib/modern_treasury/controllers/expected_payment_controller.rb +162 -0
  17. data/lib/modern_treasury/controllers/external_account_controller.rb +202 -0
  18. data/lib/modern_treasury/controllers/incoming_payment_detail_controller.rb +150 -0
  19. data/lib/modern_treasury/controllers/internal_account_controller.rb +134 -0
  20. data/lib/modern_treasury/controllers/invoice_controller.rb +98 -0
  21. data/lib/modern_treasury/controllers/invoice_line_item_controller.rb +136 -0
  22. data/lib/modern_treasury/controllers/ledger_account_category_controller.rb +292 -0
  23. data/lib/modern_treasury/controllers/ledger_account_controller.rb +202 -0
  24. data/lib/modern_treasury/controllers/ledger_account_payout_controller.rb +126 -0
  25. data/lib/modern_treasury/controllers/ledger_account_statement_controller.rb +60 -0
  26. data/lib/modern_treasury/controllers/ledger_controller.rb +152 -0
  27. data/lib/modern_treasury/controllers/ledger_entry_controller.rb +148 -0
  28. data/lib/modern_treasury/controllers/ledger_event_handler_controller.rb +119 -0
  29. data/lib/modern_treasury/controllers/ledger_transaction_controller.rb +328 -0
  30. data/lib/modern_treasury/controllers/ledgerable_event_controller.rb +61 -0
  31. data/lib/modern_treasury/controllers/line_item_controller.rb +107 -0
  32. data/lib/modern_treasury/controllers/paper_item_controller.rb +69 -0
  33. data/lib/modern_treasury/controllers/payment_flow_controller.rb +138 -0
  34. data/lib/modern_treasury/controllers/payment_order_controller.rb +368 -0
  35. data/lib/modern_treasury/controllers/payment_reference_controller.rb +64 -0
  36. data/lib/modern_treasury/controllers/ping_controller.rb +34 -0
  37. data/lib/modern_treasury/controllers/return_controller.rb +105 -0
  38. data/lib/modern_treasury/controllers/reversal_controller.rb +99 -0
  39. data/lib/modern_treasury/controllers/routing_detail_controller.rb +131 -0
  40. data/lib/modern_treasury/controllers/transaction_controller.rb +133 -0
  41. data/lib/modern_treasury/controllers/transaction_line_item_controller.rb +39 -0
  42. data/lib/modern_treasury/controllers/validation_controller.rb +41 -0
  43. data/lib/modern_treasury/controllers/virtual_account_controller.rb +142 -0
  44. data/lib/modern_treasury/exceptions/api_exception.rb +21 -0
  45. data/lib/modern_treasury/exceptions/error_message_exception.rb +46 -0
  46. data/lib/modern_treasury/http/auth/basic_auth.rb +62 -0
  47. data/lib/modern_treasury/http/http_call_back.rb +10 -0
  48. data/lib/modern_treasury/http/http_method_enum.rb +10 -0
  49. data/lib/modern_treasury/http/http_request.rb +10 -0
  50. data/lib/modern_treasury/http/http_response.rb +10 -0
  51. data/lib/modern_treasury/http/proxy_settings.rb +22 -0
  52. data/lib/modern_treasury/models/account.rb +304 -0
  53. data/lib/modern_treasury/models/account1.rb +217 -0
  54. data/lib/modern_treasury/models/account_collection_flow.rb +178 -0
  55. data/lib/modern_treasury/models/account_collection_flow_create_request.rb +70 -0
  56. data/lib/modern_treasury/models/account_collection_flow_update_request.rb +61 -0
  57. data/lib/modern_treasury/models/account_detail.rb +211 -0
  58. data/lib/modern_treasury/models/account_detail1.rb +74 -0
  59. data/lib/modern_treasury/models/account_detail_create_request.rb +75 -0
  60. data/lib/modern_treasury/models/account_number_type2_enum.rb +48 -0
  61. data/lib/modern_treasury/models/account_number_type_enum.rb +49 -0
  62. data/lib/modern_treasury/models/account_type5_enum.rb +56 -0
  63. data/lib/modern_treasury/models/account_type_enum.rb +56 -0
  64. data/lib/modern_treasury/models/accounting.rb +88 -0
  65. data/lib/modern_treasury/models/accounting1.rb +63 -0
  66. data/lib/modern_treasury/models/accounts_type1_enum.rb +26 -0
  67. data/lib/modern_treasury/models/accounts_type_enum.rb +36 -0
  68. data/lib/modern_treasury/models/address.rb +231 -0
  69. data/lib/modern_treasury/models/address_request.rb +118 -0
  70. data/lib/modern_treasury/models/async_response.rb +68 -0
  71. data/lib/modern_treasury/models/balance.rb +164 -0
  72. data/lib/modern_treasury/models/balance_report.rb +178 -0
  73. data/lib/modern_treasury/models/balance_report_type1_enum.rb +44 -0
  74. data/lib/modern_treasury/models/balance_report_type_enum.rb +45 -0
  75. data/lib/modern_treasury/models/balance_type_enum.rb +63 -0
  76. data/lib/modern_treasury/models/balances.rb +71 -0
  77. data/lib/modern_treasury/models/balances1.rb +81 -0
  78. data/lib/modern_treasury/models/balances2.rb +120 -0
  79. data/lib/modern_treasury/models/balances3.rb +130 -0
  80. data/lib/modern_treasury/models/base_model.rb +110 -0
  81. data/lib/modern_treasury/models/charge_bearer_enum.rb +42 -0
  82. data/lib/modern_treasury/models/code1_enum.rb +200 -0
  83. data/lib/modern_treasury/models/code_enum.rb +68 -0
  84. data/lib/modern_treasury/models/connection.rb +209 -0
  85. data/lib/modern_treasury/models/contact_detail.rb +200 -0
  86. data/lib/modern_treasury/models/contact_detail_create_request.rb +75 -0
  87. data/lib/modern_treasury/models/contact_identifier_type_enum.rb +40 -0
  88. data/lib/modern_treasury/models/content_type_enum.rb +36 -0
  89. data/lib/modern_treasury/models/counterparty.rb +200 -0
  90. data/lib/modern_treasury/models/counterparty_billing_address.rb +106 -0
  91. data/lib/modern_treasury/models/counterparty_collect_account_request.rb +104 -0
  92. data/lib/modern_treasury/models/counterparty_collect_account_response.rb +82 -0
  93. data/lib/modern_treasury/models/counterparty_create_request.rb +161 -0
  94. data/lib/modern_treasury/models/counterparty_shipping_address.rb +107 -0
  95. data/lib/modern_treasury/models/counterparty_update_request.rb +107 -0
  96. data/lib/modern_treasury/models/created_at_enum.rb +36 -0
  97. data/lib/modern_treasury/models/currency1_enum.rb +37 -0
  98. data/lib/modern_treasury/models/currency_enum.rb +784 -0
  99. data/lib/modern_treasury/models/direction10_enum.rb +38 -0
  100. data/lib/modern_treasury/models/direction14_enum.rb +36 -0
  101. data/lib/modern_treasury/models/direction15_enum.rb +36 -0
  102. data/lib/modern_treasury/models/direction1_enum.rb +37 -0
  103. data/lib/modern_treasury/models/direction4_enum.rb +36 -0
  104. data/lib/modern_treasury/models/direction5_enum.rb +39 -0
  105. data/lib/modern_treasury/models/direction9_enum.rb +37 -0
  106. data/lib/modern_treasury/models/direction_enum.rb +38 -0
  107. data/lib/modern_treasury/models/document.rb +207 -0
  108. data/lib/modern_treasury/models/document_create_request.rb +92 -0
  109. data/lib/modern_treasury/models/document_detail.rb +154 -0
  110. data/lib/modern_treasury/models/documentable_type1_enum.rb +72 -0
  111. data/lib/modern_treasury/models/documentable_type2_enum.rb +72 -0
  112. data/lib/modern_treasury/models/documentable_type_enum.rb +75 -0
  113. data/lib/modern_treasury/models/effective_at_enum.rb +36 -0
  114. data/lib/modern_treasury/models/errors.rb +81 -0
  115. data/lib/modern_treasury/models/event.rb +162 -0
  116. data/lib/modern_treasury/models/expected_payment.rb +343 -0
  117. data/lib/modern_treasury/models/expected_payment_create_request.rb +254 -0
  118. data/lib/modern_treasury/models/expected_payment_update_request.rb +239 -0
  119. data/lib/modern_treasury/models/external_account.rb +283 -0
  120. data/lib/modern_treasury/models/external_account_complete_verification_request.rb +62 -0
  121. data/lib/modern_treasury/models/external_account_create_request.rb +230 -0
  122. data/lib/modern_treasury/models/external_account_update_request.rb +132 -0
  123. data/lib/modern_treasury/models/external_account_verify_request.rb +83 -0
  124. data/lib/modern_treasury/models/fallback_type_enum.rb +28 -0
  125. data/lib/modern_treasury/models/field_enum.rb +112 -0
  126. data/lib/modern_treasury/models/file.rb +81 -0
  127. data/lib/modern_treasury/models/foreign_exchange_indicator_enum.rb +38 -0
  128. data/lib/modern_treasury/models/incoming_payment_detail.rb +348 -0
  129. data/lib/modern_treasury/models/incoming_payment_detail_create_request.rb +141 -0
  130. data/lib/modern_treasury/models/incoming_payment_detail_update_request.rb +63 -0
  131. data/lib/modern_treasury/models/internal_account.rb +361 -0
  132. data/lib/modern_treasury/models/internal_account_create_request.rb +135 -0
  133. data/lib/modern_treasury/models/internal_account_update_request.rb +95 -0
  134. data/lib/modern_treasury/models/invoice.rb +342 -0
  135. data/lib/modern_treasury/models/invoice_create_request.rb +235 -0
  136. data/lib/modern_treasury/models/invoice_line_item.rb +171 -0
  137. data/lib/modern_treasury/models/invoice_line_item_create_request.rb +104 -0
  138. data/lib/modern_treasury/models/invoice_line_item_update_request.rb +240 -0
  139. data/lib/modern_treasury/models/invoice_update_request.rb +251 -0
  140. data/lib/modern_treasury/models/invoicer_address.rb +106 -0
  141. data/lib/modern_treasury/models/itemizable_type1_enum.rb +36 -0
  142. data/lib/modern_treasury/models/itemizable_type_enum.rb +36 -0
  143. data/lib/modern_treasury/models/ledger.rb +158 -0
  144. data/lib/modern_treasury/models/ledger_account.rb +220 -0
  145. data/lib/modern_treasury/models/ledger_account_category.rb +187 -0
  146. data/lib/modern_treasury/models/ledger_account_category_create_request.rb +125 -0
  147. data/lib/modern_treasury/models/ledger_account_category_update_request.rb +84 -0
  148. data/lib/modern_treasury/models/ledger_account_create_request.rb +150 -0
  149. data/lib/modern_treasury/models/ledger_account_normal_balance_enum.rb +36 -0
  150. data/lib/modern_treasury/models/ledger_account_payout.rb +238 -0
  151. data/lib/modern_treasury/models/ledger_account_payout_create_request.rb +152 -0
  152. data/lib/modern_treasury/models/ledger_account_payout_update_request.rb +85 -0
  153. data/lib/modern_treasury/models/ledger_account_statement.rb +233 -0
  154. data/lib/modern_treasury/models/ledger_account_statement_create_request.rb +122 -0
  155. data/lib/modern_treasury/models/ledger_account_update_request.rb +84 -0
  156. data/lib/modern_treasury/models/ledger_balance.rb +97 -0
  157. data/lib/modern_treasury/models/ledger_balances.rb +81 -0
  158. data/lib/modern_treasury/models/ledger_balances_with_effective_at.rb +123 -0
  159. data/lib/modern_treasury/models/ledger_create_request.rb +83 -0
  160. data/lib/modern_treasury/models/ledger_entry.rb +247 -0
  161. data/lib/modern_treasury/models/ledger_entry_create_request.rb +177 -0
  162. data/lib/modern_treasury/models/ledger_entry_of_transaction_version.rb +214 -0
  163. data/lib/modern_treasury/models/ledger_event_handler.rb +182 -0
  164. data/lib/modern_treasury/models/ledger_event_handler_conditions.rb +78 -0
  165. data/lib/modern_treasury/models/ledger_event_handler_create_request.rb +119 -0
  166. data/lib/modern_treasury/models/ledger_event_handler_ledger_entries.rb +80 -0
  167. data/lib/modern_treasury/models/ledger_event_handler_ledger_transaction_template.rb +103 -0
  168. data/lib/modern_treasury/models/ledger_transaction.rb +259 -0
  169. data/lib/modern_treasury/models/ledger_transaction_create_request.rb +164 -0
  170. data/lib/modern_treasury/models/ledger_transaction_reversal_create_request.rb +142 -0
  171. data/lib/modern_treasury/models/ledger_transaction_update_request.rb +115 -0
  172. data/lib/modern_treasury/models/ledger_transaction_version.rb +254 -0
  173. data/lib/modern_treasury/models/ledger_type_enum.rb +37 -0
  174. data/lib/modern_treasury/models/ledger_update_request.rb +84 -0
  175. data/lib/modern_treasury/models/ledgerable_event.rb +206 -0
  176. data/lib/modern_treasury/models/ledgerable_event_create_request.rb +140 -0
  177. data/lib/modern_treasury/models/ledgerable_type2_enum.rb +71 -0
  178. data/lib/modern_treasury/models/ledgerable_type5_enum.rb +69 -0
  179. data/lib/modern_treasury/models/ledgerable_type6_enum.rb +68 -0
  180. data/lib/modern_treasury/models/ledgerable_type_enum.rb +38 -0
  181. data/lib/modern_treasury/models/legacy_document_create_request.rb +70 -0
  182. data/lib/modern_treasury/models/line_item.rb +200 -0
  183. data/lib/modern_treasury/models/line_item_request.rb +98 -0
  184. data/lib/modern_treasury/models/line_item_update_request.rb +63 -0
  185. data/lib/modern_treasury/models/mreturn.rb +425 -0
  186. data/lib/modern_treasury/models/normal_balance2_enum.rb +36 -0
  187. data/lib/modern_treasury/models/normal_balance_enum.rb +36 -0
  188. data/lib/modern_treasury/models/order_by.rb +72 -0
  189. data/lib/modern_treasury/models/originating_account_number_type_enum.rb +48 -0
  190. data/lib/modern_treasury/models/originating_routing_number_type_enum.rb +68 -0
  191. data/lib/modern_treasury/models/paper_item.rb +249 -0
  192. data/lib/modern_treasury/models/party_address.rb +106 -0
  193. data/lib/modern_treasury/models/party_type5_enum.rb +36 -0
  194. data/lib/modern_treasury/models/party_type_enum.rb +36 -0
  195. data/lib/modern_treasury/models/payment_direction_enum.rb +36 -0
  196. data/lib/modern_treasury/models/payment_flow.rb +230 -0
  197. data/lib/modern_treasury/models/payment_flow_create_request.rb +103 -0
  198. data/lib/modern_treasury/models/payment_flow_update_request.rb +61 -0
  199. data/lib/modern_treasury/models/payment_method1_enum.rb +46 -0
  200. data/lib/modern_treasury/models/payment_method_enum.rb +42 -0
  201. data/lib/modern_treasury/models/payment_order.rb +820 -0
  202. data/lib/modern_treasury/models/payment_order_async_create_request.rb +536 -0
  203. data/lib/modern_treasury/models/payment_order_create_request.rb +556 -0
  204. data/lib/modern_treasury/models/payment_order_update_request.rb +543 -0
  205. data/lib/modern_treasury/models/payment_reference.rb +175 -0
  206. data/lib/modern_treasury/models/payment_reference_object.rb +156 -0
  207. data/lib/modern_treasury/models/payment_type13_enum.rb +96 -0
  208. data/lib/modern_treasury/models/payment_type1_enum.rb +97 -0
  209. data/lib/modern_treasury/models/payment_type2_enum.rb +96 -0
  210. data/lib/modern_treasury/models/payment_type4_enum.rb +96 -0
  211. data/lib/modern_treasury/models/payment_type5_enum.rb +36 -0
  212. data/lib/modern_treasury/models/payment_type6_enum.rb +97 -0
  213. data/lib/modern_treasury/models/payment_type_enum.rb +37 -0
  214. data/lib/modern_treasury/models/ping_response.rb +60 -0
  215. data/lib/modern_treasury/models/priority4_enum.rb +36 -0
  216. data/lib/modern_treasury/models/priority_enum.rb +38 -0
  217. data/lib/modern_treasury/models/reason1_enum.rb +50 -0
  218. data/lib/modern_treasury/models/reason_enum.rb +48 -0
  219. data/lib/modern_treasury/models/receiving_account.rb +304 -0
  220. data/lib/modern_treasury/models/receiving_account1.rb +219 -0
  221. data/lib/modern_treasury/models/receiving_account_type_enum.rb +36 -0
  222. data/lib/modern_treasury/models/reconciliation_method_enum.rb +38 -0
  223. data/lib/modern_treasury/models/reference_number_type1_enum.rb +248 -0
  224. data/lib/modern_treasury/models/reference_number_type_enum.rb +248 -0
  225. data/lib/modern_treasury/models/referenceable_type1_enum.rb +40 -0
  226. data/lib/modern_treasury/models/referenceable_type_enum.rb +41 -0
  227. data/lib/modern_treasury/models/return_create_request.rb +119 -0
  228. data/lib/modern_treasury/models/returnable_type1_enum.rb +48 -0
  229. data/lib/modern_treasury/models/returnable_type_enum.rb +48 -0
  230. data/lib/modern_treasury/models/reversal.rb +151 -0
  231. data/lib/modern_treasury/models/reversal_create_request.rb +86 -0
  232. data/lib/modern_treasury/models/role_enum.rb +36 -0
  233. data/lib/modern_treasury/models/routing_detail.rb +242 -0
  234. data/lib/modern_treasury/models/routing_detail1.rb +83 -0
  235. data/lib/modern_treasury/models/routing_detail_create_request.rb +87 -0
  236. data/lib/modern_treasury/models/routing_number_lookup_request.rb +124 -0
  237. data/lib/modern_treasury/models/routing_number_type1_enum.rb +68 -0
  238. data/lib/modern_treasury/models/routing_number_type7_enum.rb +55 -0
  239. data/lib/modern_treasury/models/routing_number_type8_enum.rb +68 -0
  240. data/lib/modern_treasury/models/routing_number_type_enum.rb +69 -0
  241. data/lib/modern_treasury/models/status11_enum.rb +40 -0
  242. data/lib/modern_treasury/models/status12_enum.rb +40 -0
  243. data/lib/modern_treasury/models/status15_enum.rb +41 -0
  244. data/lib/modern_treasury/models/status16_enum.rb +41 -0
  245. data/lib/modern_treasury/models/status17_enum.rb +45 -0
  246. data/lib/modern_treasury/models/status18_enum.rb +74 -0
  247. data/lib/modern_treasury/models/status19_enum.rb +52 -0
  248. data/lib/modern_treasury/models/status1_enum.rb +40 -0
  249. data/lib/modern_treasury/models/status20_enum.rb +40 -0
  250. data/lib/modern_treasury/models/status21_enum.rb +40 -0
  251. data/lib/modern_treasury/models/status22_enum.rb +40 -0
  252. data/lib/modern_treasury/models/status24_enum.rb +72 -0
  253. data/lib/modern_treasury/models/status2_enum.rb +41 -0
  254. data/lib/modern_treasury/models/status3_enum.rb +72 -0
  255. data/lib/modern_treasury/models/status4_enum.rb +52 -0
  256. data/lib/modern_treasury/models/status5_enum.rb +48 -0
  257. data/lib/modern_treasury/models/status6_enum.rb +49 -0
  258. data/lib/modern_treasury/models/status7_enum.rb +37 -0
  259. data/lib/modern_treasury/models/status8_enum.rb +37 -0
  260. data/lib/modern_treasury/models/status9_enum.rb +41 -0
  261. data/lib/modern_treasury/models/status_enum.rb +45 -0
  262. data/lib/modern_treasury/models/subtype_enum.rb +71 -0
  263. data/lib/modern_treasury/models/supported_payment_type_enum.rb +96 -0
  264. data/lib/modern_treasury/models/transactable_type_enum.rb +53 -0
  265. data/lib/modern_treasury/models/transaction.rb +311 -0
  266. data/lib/modern_treasury/models/transaction_line_item.rb +211 -0
  267. data/lib/modern_treasury/models/type10_enum.rb +64 -0
  268. data/lib/modern_treasury/models/type11_enum.rb +97 -0
  269. data/lib/modern_treasury/models/type12_enum.rb +37 -0
  270. data/lib/modern_treasury/models/type13_enum.rb +96 -0
  271. data/lib/modern_treasury/models/type14_enum.rb +64 -0
  272. data/lib/modern_treasury/models/type16_enum.rb +36 -0
  273. data/lib/modern_treasury/models/type1_enum.rb +97 -0
  274. data/lib/modern_treasury/models/type4_enum.rb +65 -0
  275. data/lib/modern_treasury/models/type5_enum.rb +97 -0
  276. data/lib/modern_treasury/models/type6_enum.rb +77 -0
  277. data/lib/modern_treasury/models/type_enum.rb +37 -0
  278. data/lib/modern_treasury/models/vendor_code_type1_enum.rb +111 -0
  279. data/lib/modern_treasury/models/vendor_code_type_enum.rb +108 -0
  280. data/lib/modern_treasury/models/verification_status1_enum.rb +44 -0
  281. data/lib/modern_treasury/models/verification_status_enum.rb +40 -0
  282. data/lib/modern_treasury/models/virtual_account.rb +247 -0
  283. data/lib/modern_treasury/models/virtual_account_create_request.rb +172 -0
  284. data/lib/modern_treasury/models/virtual_account_update_request.rb +85 -0
  285. data/lib/modern_treasury/utilities/date_time_helper.rb +11 -0
  286. data/lib/modern_treasury/utilities/file_wrapper.rb +28 -0
  287. data/lib/modern_treasury/utilities/union_type_lookup.rb +32 -0
  288. data/lib/modern_treasury.rb +316 -0
  289. data/test/controllers/controller_test_base.rb +23 -0
  290. data/test/controllers/test_account_collection_flow_controller.rb +64 -0
  291. data/test/controllers/test_connection_controller.rb +41 -0
  292. data/test/controllers/test_counterparty_controller.rb +65 -0
  293. data/test/controllers/test_document_controller.rb +41 -0
  294. data/test/controllers/test_event_controller.rb +46 -0
  295. data/test/controllers/test_expected_payment_controller.rb +71 -0
  296. data/test/controllers/test_external_account_controller.rb +63 -0
  297. data/test/controllers/test_incoming_payment_detail_controller.rb +68 -0
  298. data/test/controllers/test_internal_account_controller.rb +65 -0
  299. data/test/controllers/test_invoice_controller.rb +56 -0
  300. data/test/controllers/test_ledger_account_category_controller.rb +67 -0
  301. data/test/controllers/test_ledger_account_controller.rb +70 -0
  302. data/test/controllers/test_ledger_account_payout_controller.rb +62 -0
  303. data/test/controllers/test_ledger_account_statement_controller.rb +36 -0
  304. data/test/controllers/test_ledger_controller.rb +59 -0
  305. data/test/controllers/test_ledger_entry_controller.rb +65 -0
  306. data/test/controllers/test_ledger_event_handler_controller.rb +63 -0
  307. data/test/controllers/test_ledger_transaction_controller.rb +112 -0
  308. data/test/controllers/test_ledgerable_event_controller.rb +36 -0
  309. data/test/controllers/test_paper_item_controller.rb +43 -0
  310. data/test/controllers/test_payment_flow_controller.rb +67 -0
  311. data/test/controllers/test_payment_order_controller.rb +76 -0
  312. data/test/controllers/test_payment_reference_controller.rb +43 -0
  313. data/test/controllers/test_ping_controller.rb +31 -0
  314. data/test/controllers/test_return_controller.rb +64 -0
  315. data/test/controllers/test_transaction_controller.rb +56 -0
  316. data/test/controllers/test_virtual_account_controller.rb +63 -0
  317. data/test/http_response_catcher.rb +19 -0
  318. metadata +429 -0
@@ -0,0 +1,98 @@
1
+ # modern_treasury
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module ModernTreasury
7
+ # InvoiceController
8
+ class InvoiceController < BaseController
9
+ # TODO: type endpoint description here
10
+ # @param [Integer] per_page Optional parameter: TODO: type description
11
+ # here
12
+ # @param [String] after_cursor Optional parameter: TODO: type description
13
+ # here
14
+ # @return [Array[Invoice]] Response from the API call.
15
+ def list_invoices(per_page: nil,
16
+ after_cursor: nil)
17
+ @api_call
18
+ .request(new_request_builder(HttpMethodEnum::GET,
19
+ '/api/invoices',
20
+ Server::DEFAULT)
21
+ .query_param(new_parameter(per_page, key: 'per_page'))
22
+ .query_param(new_parameter(after_cursor, key: 'after_cursor'))
23
+ .header_param(new_parameter('application/json', key: 'accept'))
24
+ .auth(Single.new('basic_auth')))
25
+ .response(new_response_handler
26
+ .deserializer(APIHelper.method(:custom_type_deserializer))
27
+ .deserialize_into(Invoice.method(:from_hash))
28
+ .is_response_array(true))
29
+ .execute
30
+ end
31
+
32
+ # TODO: type endpoint description here
33
+ # @param [String] idempotency_key Optional parameter: This key should be
34
+ # something unique, preferably something like an UUID.
35
+ # @param [InvoiceCreateRequest] body Optional parameter: TODO: type
36
+ # description here
37
+ # @return [Invoice] Response from the API call.
38
+ def create_invoice(idempotency_key: nil,
39
+ body: nil)
40
+ @api_call
41
+ .request(new_request_builder(HttpMethodEnum::POST,
42
+ '/api/invoices',
43
+ Server::DEFAULT)
44
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
45
+ .header_param(new_parameter(idempotency_key, key: 'Idempotency-Key'))
46
+ .body_param(new_parameter(body))
47
+ .header_param(new_parameter('application/json', key: 'accept'))
48
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
49
+ .auth(Single.new('basic_auth')))
50
+ .response(new_response_handler
51
+ .deserializer(APIHelper.method(:custom_type_deserializer))
52
+ .deserialize_into(Invoice.method(:from_hash)))
53
+ .execute
54
+ end
55
+
56
+ # TODO: type endpoint description here
57
+ # @param [String] id Required parameter: id
58
+ # @return [Invoice] Response from the API call.
59
+ def get_invoice(id)
60
+ @api_call
61
+ .request(new_request_builder(HttpMethodEnum::GET,
62
+ '/api/invoices/{id}',
63
+ Server::DEFAULT)
64
+ .template_param(new_parameter(id, key: 'id')
65
+ .should_encode(true))
66
+ .header_param(new_parameter('application/json', key: 'accept'))
67
+ .auth(Single.new('basic_auth')))
68
+ .response(new_response_handler
69
+ .deserializer(APIHelper.method(:custom_type_deserializer))
70
+ .deserialize_into(Invoice.method(:from_hash)))
71
+ .execute
72
+ end
73
+
74
+ # TODO: type endpoint description here
75
+ # @param [String] id Required parameter: id
76
+ # @param [InvoiceUpdateRequest] body Optional parameter: TODO: type
77
+ # description here
78
+ # @return [Invoice] Response from the API call.
79
+ def update_invoice(id,
80
+ body: nil)
81
+ @api_call
82
+ .request(new_request_builder(HttpMethodEnum::PATCH,
83
+ '/api/invoices/{id}',
84
+ Server::DEFAULT)
85
+ .template_param(new_parameter(id, key: 'id')
86
+ .should_encode(true))
87
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
88
+ .body_param(new_parameter(body))
89
+ .header_param(new_parameter('application/json', key: 'accept'))
90
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
91
+ .auth(Single.new('basic_auth')))
92
+ .response(new_response_handler
93
+ .deserializer(APIHelper.method(:custom_type_deserializer))
94
+ .deserialize_into(Invoice.method(:from_hash)))
95
+ .execute
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,136 @@
1
+ # modern_treasury
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module ModernTreasury
7
+ # InvoiceLineItemController
8
+ class InvoiceLineItemController < BaseController
9
+ # TODO: type endpoint description here
10
+ # @param [String] invoice_id Required parameter: invoice_id
11
+ # @param [String] after_cursor Optional parameter: TODO: type description
12
+ # here
13
+ # @param [Integer] per_page Optional parameter: TODO: type description
14
+ # here
15
+ # @return [Array[InvoiceLineItem]] Response from the API call.
16
+ def list_invoice_line_items(invoice_id,
17
+ after_cursor: nil,
18
+ per_page: nil)
19
+ @api_call
20
+ .request(new_request_builder(HttpMethodEnum::GET,
21
+ '/api/invoices/{invoice_id}/invoice_line_items',
22
+ Server::DEFAULT)
23
+ .template_param(new_parameter(invoice_id, key: 'invoice_id')
24
+ .should_encode(true))
25
+ .query_param(new_parameter(after_cursor, key: 'after_cursor'))
26
+ .query_param(new_parameter(per_page, key: 'per_page'))
27
+ .header_param(new_parameter('application/json', key: 'accept'))
28
+ .auth(Single.new('basic_auth')))
29
+ .response(new_response_handler
30
+ .deserializer(APIHelper.method(:custom_type_deserializer))
31
+ .deserialize_into(InvoiceLineItem.method(:from_hash))
32
+ .is_response_array(true))
33
+ .execute
34
+ end
35
+
36
+ # TODO: type endpoint description here
37
+ # @param [String] invoice_id Required parameter: invoice_id
38
+ # @param [String] idempotency_key Optional parameter: This key should be
39
+ # something unique, preferably something like an UUID.
40
+ # @param [InvoiceLineItemCreateRequest] body Optional parameter: TODO: type
41
+ # description here
42
+ # @return [InvoiceLineItem] Response from the API call.
43
+ def create_invoice_line_item(invoice_id,
44
+ idempotency_key: nil,
45
+ body: nil)
46
+ @api_call
47
+ .request(new_request_builder(HttpMethodEnum::POST,
48
+ '/api/invoices/{invoice_id}/invoice_line_items',
49
+ Server::DEFAULT)
50
+ .template_param(new_parameter(invoice_id, key: 'invoice_id')
51
+ .should_encode(true))
52
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
53
+ .header_param(new_parameter(idempotency_key, key: 'Idempotency-Key'))
54
+ .body_param(new_parameter(body))
55
+ .header_param(new_parameter('application/json', key: 'accept'))
56
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
57
+ .auth(Single.new('basic_auth')))
58
+ .response(new_response_handler
59
+ .deserializer(APIHelper.method(:custom_type_deserializer))
60
+ .deserialize_into(InvoiceLineItem.method(:from_hash)))
61
+ .execute
62
+ end
63
+
64
+ # TODO: type endpoint description here
65
+ # @param [String] invoice_id Required parameter: invoice_id
66
+ # @param [String] id Required parameter: id
67
+ # @return [InvoiceLineItem] Response from the API call.
68
+ def get_invoice_line_item(invoice_id,
69
+ id)
70
+ @api_call
71
+ .request(new_request_builder(HttpMethodEnum::GET,
72
+ '/api/invoices/{invoice_id}/invoice_line_items/{id}',
73
+ Server::DEFAULT)
74
+ .template_param(new_parameter(invoice_id, key: 'invoice_id')
75
+ .should_encode(true))
76
+ .template_param(new_parameter(id, key: 'id')
77
+ .should_encode(true))
78
+ .header_param(new_parameter('application/json', key: 'accept'))
79
+ .auth(Single.new('basic_auth')))
80
+ .response(new_response_handler
81
+ .deserializer(APIHelper.method(:custom_type_deserializer))
82
+ .deserialize_into(InvoiceLineItem.method(:from_hash)))
83
+ .execute
84
+ end
85
+
86
+ # TODO: type endpoint description here
87
+ # @param [String] invoice_id Required parameter: invoice_id
88
+ # @param [String] id Required parameter: id
89
+ # @param [InvoiceLineItemUpdateRequest] body Optional parameter: TODO: type
90
+ # description here
91
+ # @return [InvoiceLineItem] Response from the API call.
92
+ def update_invoice_line_item(invoice_id,
93
+ id,
94
+ body: nil)
95
+ @api_call
96
+ .request(new_request_builder(HttpMethodEnum::PATCH,
97
+ '/api/invoices/{invoice_id}/invoice_line_items/{id}',
98
+ Server::DEFAULT)
99
+ .template_param(new_parameter(invoice_id, key: 'invoice_id')
100
+ .should_encode(true))
101
+ .template_param(new_parameter(id, key: 'id')
102
+ .should_encode(true))
103
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
104
+ .body_param(new_parameter(body))
105
+ .header_param(new_parameter('application/json', key: 'accept'))
106
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
107
+ .auth(Single.new('basic_auth')))
108
+ .response(new_response_handler
109
+ .deserializer(APIHelper.method(:custom_type_deserializer))
110
+ .deserialize_into(InvoiceLineItem.method(:from_hash)))
111
+ .execute
112
+ end
113
+
114
+ # TODO: type endpoint description here
115
+ # @param [String] invoice_id Required parameter: invoice_id
116
+ # @param [String] id Required parameter: id
117
+ # @return [InvoiceLineItem] Response from the API call.
118
+ def delete_invoice_line_item(invoice_id,
119
+ id)
120
+ @api_call
121
+ .request(new_request_builder(HttpMethodEnum::DELETE,
122
+ '/api/invoices/{invoice_id}/invoice_line_items/{id}',
123
+ Server::DEFAULT)
124
+ .template_param(new_parameter(invoice_id, key: 'invoice_id')
125
+ .should_encode(true))
126
+ .template_param(new_parameter(id, key: 'id')
127
+ .should_encode(true))
128
+ .header_param(new_parameter('application/json', key: 'accept'))
129
+ .auth(Single.new('basic_auth')))
130
+ .response(new_response_handler
131
+ .deserializer(APIHelper.method(:custom_type_deserializer))
132
+ .deserialize_into(InvoiceLineItem.method(:from_hash)))
133
+ .execute
134
+ end
135
+ end
136
+ end
@@ -0,0 +1,292 @@
1
+ # modern_treasury
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module ModernTreasury
7
+ # LedgerAccountCategoryController
8
+ class LedgerAccountCategoryController < BaseController
9
+ # Get a list of ledger account categories.
10
+ # @param [Integer] per_page Optional parameter: TODO: type description
11
+ # here
12
+ # @param [Hash[String, String]] metadata Optional parameter: For example, if
13
+ # you want to query for records with metadata key `Type` and value `Loan`,
14
+ # the query would be `metadata%5BType%5D=Loan`. This encodes the query
15
+ # parameters.
16
+ # @param [String] name Optional parameter: TODO: type description here
17
+ # @param [String] ledger_id Optional parameter: TODO: type description
18
+ # here
19
+ # @param [String] parent_ledger_account_category_id Optional parameter:
20
+ # Query categories that are nested underneath a parent category
21
+ # @param [String] ledger_account_id Optional parameter: Query categories
22
+ # which contain a ledger account directly or through child categories.
23
+ # @param [Balances] balances Optional parameter: For example, if you want
24
+ # the balances as of a particular time (ISO8601), the encoded query string
25
+ # would be `balances%5Beffective_at%5D=2000-12-31T12:00:00Z`. The balances
26
+ # as of a time are inclusive of entries with that exact time.
27
+ # @param [String] after_cursor Optional parameter: TODO: type description
28
+ # here
29
+ # @return [Array[LedgerAccountCategory]] Response from the API call.
30
+ def list_ledger_account_categories(per_page: nil,
31
+ metadata: nil,
32
+ name: nil,
33
+ ledger_id: nil,
34
+ parent_ledger_account_category_id: nil,
35
+ ledger_account_id: nil,
36
+ balances: nil,
37
+ after_cursor: nil)
38
+ @api_call
39
+ .request(new_request_builder(HttpMethodEnum::GET,
40
+ '/api/ledger_account_categories',
41
+ Server::DEFAULT)
42
+ .query_param(new_parameter(per_page, key: 'per_page'))
43
+ .query_param(new_parameter(metadata, key: 'metadata'))
44
+ .query_param(new_parameter(name, key: 'name'))
45
+ .query_param(new_parameter(ledger_id, key: 'ledger_id'))
46
+ .query_param(new_parameter(parent_ledger_account_category_id, key: 'parent_ledger_account_category_id'))
47
+ .query_param(new_parameter(ledger_account_id, key: 'ledger_account_id'))
48
+ .query_param(new_parameter(balances, key: 'balances'))
49
+ .query_param(new_parameter(after_cursor, key: 'after_cursor'))
50
+ .header_param(new_parameter('application/json', key: 'accept'))
51
+ .auth(Single.new('basic_auth')))
52
+ .response(new_response_handler
53
+ .deserializer(APIHelper.method(:custom_type_deserializer))
54
+ .deserialize_into(LedgerAccountCategory.method(:from_hash))
55
+ .is_response_array(true))
56
+ .execute
57
+ end
58
+
59
+ # Create a ledger account category.
60
+ # @param [String] idempotency_key Optional parameter: This key should be
61
+ # something unique, preferably something like an UUID.
62
+ # @param [LedgerAccountCategoryCreateRequest] body Optional parameter: TODO:
63
+ # type description here
64
+ # @return [LedgerAccountCategory] Response from the API call.
65
+ def create_ledger_account_category(idempotency_key: nil,
66
+ body: nil)
67
+ @api_call
68
+ .request(new_request_builder(HttpMethodEnum::POST,
69
+ '/api/ledger_account_categories',
70
+ Server::DEFAULT)
71
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
72
+ .header_param(new_parameter(idempotency_key, key: 'Idempotency-Key'))
73
+ .body_param(new_parameter(body))
74
+ .header_param(new_parameter('application/json', key: 'accept'))
75
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
76
+ .auth(Single.new('basic_auth')))
77
+ .response(new_response_handler
78
+ .deserializer(APIHelper.method(:custom_type_deserializer))
79
+ .deserialize_into(LedgerAccountCategory.method(:from_hash))
80
+ .local_error('403',
81
+ 'forbidden',
82
+ ErrorMessageException)
83
+ .local_error('422',
84
+ 'unsuccessful',
85
+ ErrorMessageException))
86
+ .execute
87
+ end
88
+
89
+ # Get the details on a single ledger account category.
90
+ # @param [String] id Required parameter: id
91
+ # @param [Balances1] balances Optional parameter: For example, if you want
92
+ # the balances as of a particular time (ISO8601), the encoded query string
93
+ # would be `balances%5Beffective_at%5D=2000-12-31T12:00:00Z`. The balances
94
+ # as of a time are inclusive of entries with that exact time.
95
+ # @return [LedgerAccountCategory] Response from the API call.
96
+ def get_ledger_account_category(id,
97
+ balances: nil)
98
+ @api_call
99
+ .request(new_request_builder(HttpMethodEnum::GET,
100
+ '/api/ledger_account_categories/{id}',
101
+ Server::DEFAULT)
102
+ .template_param(new_parameter(id, key: 'id')
103
+ .should_encode(true))
104
+ .query_param(new_parameter(balances, key: 'balances'))
105
+ .header_param(new_parameter('application/json', key: 'accept'))
106
+ .auth(Single.new('basic_auth')))
107
+ .response(new_response_handler
108
+ .deserializer(APIHelper.method(:custom_type_deserializer))
109
+ .deserialize_into(LedgerAccountCategory.method(:from_hash))
110
+ .local_error('404',
111
+ 'not found',
112
+ ErrorMessageException)
113
+ .local_error('422',
114
+ 'unsuccessful',
115
+ ErrorMessageException))
116
+ .execute
117
+ end
118
+
119
+ # Update the details of a ledger account category.
120
+ # @param [String] id Required parameter: id
121
+ # @param [LedgerAccountCategoryUpdateRequest] body Optional parameter: TODO:
122
+ # type description here
123
+ # @return [LedgerAccountCategory] Response from the API call.
124
+ def update_ledger_account_category(id,
125
+ body: nil)
126
+ @api_call
127
+ .request(new_request_builder(HttpMethodEnum::PATCH,
128
+ '/api/ledger_account_categories/{id}',
129
+ Server::DEFAULT)
130
+ .template_param(new_parameter(id, key: 'id')
131
+ .should_encode(true))
132
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
133
+ .body_param(new_parameter(body))
134
+ .header_param(new_parameter('application/json', key: 'accept'))
135
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
136
+ .auth(Single.new('basic_auth')))
137
+ .response(new_response_handler
138
+ .deserializer(APIHelper.method(:custom_type_deserializer))
139
+ .deserialize_into(LedgerAccountCategory.method(:from_hash))
140
+ .local_error('403',
141
+ 'forbidden',
142
+ ErrorMessageException)
143
+ .local_error('404',
144
+ 'not found',
145
+ ErrorMessageException)
146
+ .local_error('422',
147
+ 'unsuccessful',
148
+ ErrorMessageException))
149
+ .execute
150
+ end
151
+
152
+ # Delete a ledger account category.
153
+ # @param [String] id Required parameter: id
154
+ # @return [LedgerAccountCategory] Response from the API call.
155
+ def delete_ledger_account_category(id)
156
+ @api_call
157
+ .request(new_request_builder(HttpMethodEnum::DELETE,
158
+ '/api/ledger_account_categories/{id}',
159
+ Server::DEFAULT)
160
+ .template_param(new_parameter(id, key: 'id')
161
+ .should_encode(true))
162
+ .header_param(new_parameter('application/json', key: 'accept'))
163
+ .auth(Single.new('basic_auth')))
164
+ .response(new_response_handler
165
+ .deserializer(APIHelper.method(:custom_type_deserializer))
166
+ .deserialize_into(LedgerAccountCategory.method(:from_hash))
167
+ .local_error('403',
168
+ 'forbidden',
169
+ ErrorMessageException)
170
+ .local_error('404',
171
+ 'not found',
172
+ ErrorMessageException))
173
+ .execute
174
+ end
175
+
176
+ # Add a ledger account to a ledger account category.
177
+ # @param [String] id Required parameter: id
178
+ # @param [String] ledger_account_id Required parameter: ledger_account_id
179
+ # @return [void] Response from the API call.
180
+ def add_ledger_account_to_ledger_account_category(id,
181
+ ledger_account_id)
182
+ @api_call
183
+ .request(new_request_builder(HttpMethodEnum::PUT,
184
+ '/api/ledger_account_categories/{id}/ledger_accounts/{ledger_account_id}',
185
+ Server::DEFAULT)
186
+ .template_param(new_parameter(id, key: 'id')
187
+ .should_encode(true))
188
+ .template_param(new_parameter(ledger_account_id, key: 'ledger_account_id')
189
+ .should_encode(true))
190
+ .auth(Single.new('basic_auth')))
191
+ .response(new_response_handler
192
+ .is_response_void(true)
193
+ .local_error('403',
194
+ 'forbidden',
195
+ ErrorMessageException)
196
+ .local_error('404',
197
+ 'not found',
198
+ ErrorMessageException)
199
+ .local_error('422',
200
+ 'unsuccessful',
201
+ ErrorMessageException))
202
+ .execute
203
+ end
204
+
205
+ # Remove a ledger account from a ledger account category.
206
+ # @param [String] id Required parameter: id
207
+ # @param [String] ledger_account_id Required parameter: ledger_account_id
208
+ # @return [void] Response from the API call.
209
+ def remove_ledger_account_from_ledger_account_category(id,
210
+ ledger_account_id)
211
+ @api_call
212
+ .request(new_request_builder(HttpMethodEnum::DELETE,
213
+ '/api/ledger_account_categories/{id}/ledger_accounts/{ledger_account_id}',
214
+ Server::DEFAULT)
215
+ .template_param(new_parameter(id, key: 'id')
216
+ .should_encode(true))
217
+ .template_param(new_parameter(ledger_account_id, key: 'ledger_account_id')
218
+ .should_encode(true))
219
+ .auth(Single.new('basic_auth')))
220
+ .response(new_response_handler
221
+ .is_response_void(true)
222
+ .local_error('403',
223
+ 'forbidden',
224
+ ErrorMessageException)
225
+ .local_error('404',
226
+ 'not found',
227
+ ErrorMessageException)
228
+ .local_error('422',
229
+ 'unsuccessful',
230
+ ErrorMessageException))
231
+ .execute
232
+ end
233
+
234
+ # Add a ledger account category to a ledger account category.
235
+ # @param [String] id Required parameter: id
236
+ # @param [String] sub_category_id Required parameter: sub_category_id
237
+ # @return [void] Response from the API call.
238
+ def add_ledger_account_category_to_ledger_account_category(id,
239
+ sub_category_id)
240
+ @api_call
241
+ .request(new_request_builder(HttpMethodEnum::PUT,
242
+ '/api/ledger_account_categories/{id}/ledger_account_categories/{sub_category_id}',
243
+ Server::DEFAULT)
244
+ .template_param(new_parameter(id, key: 'id')
245
+ .should_encode(true))
246
+ .template_param(new_parameter(sub_category_id, key: 'sub_category_id')
247
+ .should_encode(true))
248
+ .auth(Single.new('basic_auth')))
249
+ .response(new_response_handler
250
+ .is_response_void(true)
251
+ .local_error('403',
252
+ 'forbidden',
253
+ ErrorMessageException)
254
+ .local_error('404',
255
+ 'not found',
256
+ ErrorMessageException)
257
+ .local_error('422',
258
+ 'unsuccessful',
259
+ ErrorMessageException))
260
+ .execute
261
+ end
262
+
263
+ # Delete a ledger account category from a ledger account category.
264
+ # @param [String] id Required parameter: id
265
+ # @param [String] sub_category_id Required parameter: sub_category_id
266
+ # @return [void] Response from the API call.
267
+ def delete_ledger_account_category_from_ledger_account_category(id,
268
+ sub_category_id)
269
+ @api_call
270
+ .request(new_request_builder(HttpMethodEnum::DELETE,
271
+ '/api/ledger_account_categories/{id}/ledger_account_categories/{sub_category_id}',
272
+ Server::DEFAULT)
273
+ .template_param(new_parameter(id, key: 'id')
274
+ .should_encode(true))
275
+ .template_param(new_parameter(sub_category_id, key: 'sub_category_id')
276
+ .should_encode(true))
277
+ .auth(Single.new('basic_auth')))
278
+ .response(new_response_handler
279
+ .is_response_void(true)
280
+ .local_error('403',
281
+ 'forbidden',
282
+ ErrorMessageException)
283
+ .local_error('404',
284
+ 'not found',
285
+ ErrorMessageException)
286
+ .local_error('422',
287
+ 'unsuccessful',
288
+ ErrorMessageException))
289
+ .execute
290
+ end
291
+ end
292
+ end