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,220 @@
1
+ # modern_treasury
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module ModernTreasury
8
+ # LedgerAccount Model.
9
+ class LedgerAccount < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # TODO: Write general description for this method
14
+ # @return [UUID | String]
15
+ attr_accessor :id
16
+
17
+ # TODO: Write general description for this method
18
+ # @return [String]
19
+ attr_accessor :object
20
+
21
+ # This field will be true if this object exists in the live environment or
22
+ # false if it exists in the test environment.
23
+ # @return [TrueClass | FalseClass]
24
+ attr_accessor :live_mode
25
+
26
+ # This field will be true if this object exists in the live environment or
27
+ # false if it exists in the test environment.
28
+ # @return [DateTime]
29
+ attr_accessor :created_at
30
+
31
+ # This field will be true if this object exists in the live environment or
32
+ # false if it exists in the test environment.
33
+ # @return [DateTime]
34
+ attr_accessor :updated_at
35
+
36
+ # This field will be true if this object exists in the live environment or
37
+ # false if it exists in the test environment.
38
+ # @return [DateTime]
39
+ attr_accessor :discarded_at
40
+
41
+ # The name of the ledger account.
42
+ # @return [String]
43
+ attr_accessor :name
44
+
45
+ # The description of the ledger account.
46
+ # @return [String]
47
+ attr_accessor :description
48
+
49
+ # The normal balance of the ledger account.
50
+ # @return [NormalBalanceEnum]
51
+ attr_accessor :normal_balance
52
+
53
+ # The normal balance of the ledger account.
54
+ # @return [LedgerBalancesWithEffectiveAt]
55
+ attr_accessor :balances
56
+
57
+ # Lock version of the ledger account.
58
+ # @return [Integer]
59
+ attr_accessor :lock_version
60
+
61
+ # The id of the ledger that this account belongs to.
62
+ # @return [UUID | String]
63
+ attr_accessor :ledger_id
64
+
65
+ # If the ledger account links to another object in Modern Treasury, the id
66
+ # will be populated here, otherwise null.
67
+ # @return [UUID | String]
68
+ attr_accessor :ledgerable_id
69
+
70
+ # If the ledger account links to another object in Modern Treasury, the type
71
+ # will be populated here, otherwise null. The value is one of
72
+ # internal_account or external_account.
73
+ # @return [LedgerableTypeEnum]
74
+ attr_accessor :ledgerable_type
75
+
76
+ # Additional data represented as key-value pairs. Both the key and value
77
+ # must be strings.
78
+ # @return [Hash[String, String]]
79
+ attr_accessor :metadata
80
+
81
+ # A mapping from model property names to API property names.
82
+ def self.names
83
+ @_hash = {} if @_hash.nil?
84
+ @_hash['id'] = 'id'
85
+ @_hash['object'] = 'object'
86
+ @_hash['live_mode'] = 'live_mode'
87
+ @_hash['created_at'] = 'created_at'
88
+ @_hash['updated_at'] = 'updated_at'
89
+ @_hash['discarded_at'] = 'discarded_at'
90
+ @_hash['name'] = 'name'
91
+ @_hash['description'] = 'description'
92
+ @_hash['normal_balance'] = 'normal_balance'
93
+ @_hash['balances'] = 'balances'
94
+ @_hash['lock_version'] = 'lock_version'
95
+ @_hash['ledger_id'] = 'ledger_id'
96
+ @_hash['ledgerable_id'] = 'ledgerable_id'
97
+ @_hash['ledgerable_type'] = 'ledgerable_type'
98
+ @_hash['metadata'] = 'metadata'
99
+ @_hash
100
+ end
101
+
102
+ # An array for optional fields
103
+ def self.optionals
104
+ []
105
+ end
106
+
107
+ # An array for nullable fields
108
+ def self.nullables
109
+ %w[
110
+ discarded_at
111
+ description
112
+ ledgerable_id
113
+ ledgerable_type
114
+ ]
115
+ end
116
+
117
+ def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
118
+ updated_at = nil, discarded_at = nil, name = nil,
119
+ description = nil, normal_balance = nil, balances = nil,
120
+ lock_version = nil, ledger_id = nil, ledgerable_id = nil,
121
+ ledgerable_type = nil, metadata = nil)
122
+ @id = id
123
+ @object = object
124
+ @live_mode = live_mode
125
+ @created_at = created_at
126
+ @updated_at = updated_at
127
+ @discarded_at = discarded_at
128
+ @name = name
129
+ @description = description
130
+ @normal_balance = normal_balance
131
+ @balances = balances
132
+ @lock_version = lock_version
133
+ @ledger_id = ledger_id
134
+ @ledgerable_id = ledgerable_id
135
+ @ledgerable_type = ledgerable_type
136
+ @metadata = metadata
137
+ end
138
+
139
+ # Creates an instance of the object from a hash.
140
+ def self.from_hash(hash)
141
+ return nil unless hash
142
+
143
+ # Extract variables from the hash.
144
+ id = hash.key?('id') ? hash['id'] : nil
145
+ object = hash.key?('object') ? hash['object'] : nil
146
+ live_mode = hash.key?('live_mode') ? hash['live_mode'] : nil
147
+ created_at = if hash.key?('created_at')
148
+ (DateTimeHelper.from_rfc3339(hash['created_at']) if hash['created_at'])
149
+ end
150
+ updated_at = if hash.key?('updated_at')
151
+ (DateTimeHelper.from_rfc3339(hash['updated_at']) if hash['updated_at'])
152
+ end
153
+ discarded_at = if hash.key?('discarded_at')
154
+ (DateTimeHelper.from_rfc3339(hash['discarded_at']) if hash['discarded_at'])
155
+ end
156
+ name = hash.key?('name') ? hash['name'] : nil
157
+ description = hash.key?('description') ? hash['description'] : nil
158
+ normal_balance =
159
+ hash.key?('normal_balance') ? hash['normal_balance'] : nil
160
+ balances = LedgerBalancesWithEffectiveAt.from_hash(hash['balances']) if hash['balances']
161
+ lock_version = hash.key?('lock_version') ? hash['lock_version'] : nil
162
+ ledger_id = hash.key?('ledger_id') ? hash['ledger_id'] : nil
163
+ ledgerable_id = hash.key?('ledgerable_id') ? hash['ledgerable_id'] : nil
164
+ ledgerable_type =
165
+ hash.key?('ledgerable_type') ? hash['ledgerable_type'] : nil
166
+ metadata = hash.key?('metadata') ? hash['metadata'] : nil
167
+
168
+ # Create object from extracted values.
169
+ LedgerAccount.new(id,
170
+ object,
171
+ live_mode,
172
+ created_at,
173
+ updated_at,
174
+ discarded_at,
175
+ name,
176
+ description,
177
+ normal_balance,
178
+ balances,
179
+ lock_version,
180
+ ledger_id,
181
+ ledgerable_id,
182
+ ledgerable_type,
183
+ metadata)
184
+ end
185
+
186
+ def to_custom_created_at
187
+ DateTimeHelper.to_rfc3339(created_at)
188
+ end
189
+
190
+ def to_custom_updated_at
191
+ DateTimeHelper.to_rfc3339(updated_at)
192
+ end
193
+
194
+ def to_custom_discarded_at
195
+ DateTimeHelper.to_rfc3339(discarded_at)
196
+ end
197
+
198
+ # Provides a human-readable string representation of the object.
199
+ def to_s
200
+ class_name = self.class.name.split('::').last
201
+ "<#{class_name} id: #{@id}, object: #{@object}, live_mode: #{@live_mode}, created_at:"\
202
+ " #{@created_at}, updated_at: #{@updated_at}, discarded_at: #{@discarded_at}, name:"\
203
+ " #{@name}, description: #{@description}, normal_balance: #{@normal_balance}, balances:"\
204
+ " #{@balances}, lock_version: #{@lock_version}, ledger_id: #{@ledger_id}, ledgerable_id:"\
205
+ " #{@ledgerable_id}, ledgerable_type: #{@ledgerable_type}, metadata: #{@metadata}>"
206
+ end
207
+
208
+ # Provides a debugging-friendly string with detailed object information.
209
+ def inspect
210
+ class_name = self.class.name.split('::').last
211
+ "<#{class_name} id: #{@id.inspect}, object: #{@object.inspect}, live_mode:"\
212
+ " #{@live_mode.inspect}, created_at: #{@created_at.inspect}, updated_at:"\
213
+ " #{@updated_at.inspect}, discarded_at: #{@discarded_at.inspect}, name: #{@name.inspect},"\
214
+ " description: #{@description.inspect}, normal_balance: #{@normal_balance.inspect},"\
215
+ " balances: #{@balances.inspect}, lock_version: #{@lock_version.inspect}, ledger_id:"\
216
+ " #{@ledger_id.inspect}, ledgerable_id: #{@ledgerable_id.inspect}, ledgerable_type:"\
217
+ " #{@ledgerable_type.inspect}, metadata: #{@metadata.inspect}>"
218
+ end
219
+ end
220
+ end
@@ -0,0 +1,187 @@
1
+ # modern_treasury
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module ModernTreasury
8
+ # LedgerAccountCategory Model.
9
+ class LedgerAccountCategory < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # TODO: Write general description for this method
14
+ # @return [UUID | String]
15
+ attr_accessor :id
16
+
17
+ # TODO: Write general description for this method
18
+ # @return [String]
19
+ attr_accessor :object
20
+
21
+ # This field will be true if this object exists in the live environment or
22
+ # false if it exists in the test environment.
23
+ # @return [TrueClass | FalseClass]
24
+ attr_accessor :live_mode
25
+
26
+ # This field will be true if this object exists in the live environment or
27
+ # false if it exists in the test environment.
28
+ # @return [DateTime]
29
+ attr_accessor :created_at
30
+
31
+ # This field will be true if this object exists in the live environment or
32
+ # false if it exists in the test environment.
33
+ # @return [DateTime]
34
+ attr_accessor :updated_at
35
+
36
+ # This field will be true if this object exists in the live environment or
37
+ # false if it exists in the test environment.
38
+ # @return [DateTime]
39
+ attr_accessor :discarded_at
40
+
41
+ # The name of the ledger account category.
42
+ # @return [String]
43
+ attr_accessor :name
44
+
45
+ # The description of the ledger account category.
46
+ # @return [String]
47
+ attr_accessor :description
48
+
49
+ # Additional data represented as key-value pairs. Both the key and value
50
+ # must be strings.
51
+ # @return [Hash[String, String]]
52
+ attr_accessor :metadata
53
+
54
+ # The id of the ledger that this account category belongs to.
55
+ # @return [UUID | String]
56
+ attr_accessor :ledger_id
57
+
58
+ # The normal balance of the ledger account category.
59
+ # @return [NormalBalance2Enum]
60
+ attr_accessor :normal_balance
61
+
62
+ # The normal balance of the ledger account category.
63
+ # @return [LedgerBalances]
64
+ attr_accessor :balances
65
+
66
+ # A mapping from model property names to API property names.
67
+ def self.names
68
+ @_hash = {} if @_hash.nil?
69
+ @_hash['id'] = 'id'
70
+ @_hash['object'] = 'object'
71
+ @_hash['live_mode'] = 'live_mode'
72
+ @_hash['created_at'] = 'created_at'
73
+ @_hash['updated_at'] = 'updated_at'
74
+ @_hash['discarded_at'] = 'discarded_at'
75
+ @_hash['name'] = 'name'
76
+ @_hash['description'] = 'description'
77
+ @_hash['metadata'] = 'metadata'
78
+ @_hash['ledger_id'] = 'ledger_id'
79
+ @_hash['normal_balance'] = 'normal_balance'
80
+ @_hash['balances'] = 'balances'
81
+ @_hash
82
+ end
83
+
84
+ # An array for optional fields
85
+ def self.optionals
86
+ []
87
+ end
88
+
89
+ # An array for nullable fields
90
+ def self.nullables
91
+ %w[
92
+ discarded_at
93
+ description
94
+ ]
95
+ end
96
+
97
+ def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
98
+ updated_at = nil, discarded_at = nil, name = nil,
99
+ description = nil, metadata = nil, ledger_id = nil,
100
+ normal_balance = nil, balances = nil)
101
+ @id = id
102
+ @object = object
103
+ @live_mode = live_mode
104
+ @created_at = created_at
105
+ @updated_at = updated_at
106
+ @discarded_at = discarded_at
107
+ @name = name
108
+ @description = description
109
+ @metadata = metadata
110
+ @ledger_id = ledger_id
111
+ @normal_balance = normal_balance
112
+ @balances = balances
113
+ end
114
+
115
+ # Creates an instance of the object from a hash.
116
+ def self.from_hash(hash)
117
+ return nil unless hash
118
+
119
+ # Extract variables from the hash.
120
+ id = hash.key?('id') ? hash['id'] : nil
121
+ object = hash.key?('object') ? hash['object'] : nil
122
+ live_mode = hash.key?('live_mode') ? hash['live_mode'] : nil
123
+ created_at = if hash.key?('created_at')
124
+ (DateTimeHelper.from_rfc3339(hash['created_at']) if hash['created_at'])
125
+ end
126
+ updated_at = if hash.key?('updated_at')
127
+ (DateTimeHelper.from_rfc3339(hash['updated_at']) if hash['updated_at'])
128
+ end
129
+ discarded_at = if hash.key?('discarded_at')
130
+ (DateTimeHelper.from_rfc3339(hash['discarded_at']) if hash['discarded_at'])
131
+ end
132
+ name = hash.key?('name') ? hash['name'] : nil
133
+ description = hash.key?('description') ? hash['description'] : nil
134
+ metadata = hash.key?('metadata') ? hash['metadata'] : nil
135
+ ledger_id = hash.key?('ledger_id') ? hash['ledger_id'] : nil
136
+ normal_balance =
137
+ hash.key?('normal_balance') ? hash['normal_balance'] : nil
138
+ balances = LedgerBalances.from_hash(hash['balances']) if hash['balances']
139
+
140
+ # Create object from extracted values.
141
+ LedgerAccountCategory.new(id,
142
+ object,
143
+ live_mode,
144
+ created_at,
145
+ updated_at,
146
+ discarded_at,
147
+ name,
148
+ description,
149
+ metadata,
150
+ ledger_id,
151
+ normal_balance,
152
+ balances)
153
+ end
154
+
155
+ def to_custom_created_at
156
+ DateTimeHelper.to_rfc3339(created_at)
157
+ end
158
+
159
+ def to_custom_updated_at
160
+ DateTimeHelper.to_rfc3339(updated_at)
161
+ end
162
+
163
+ def to_custom_discarded_at
164
+ DateTimeHelper.to_rfc3339(discarded_at)
165
+ end
166
+
167
+ # Provides a human-readable string representation of the object.
168
+ def to_s
169
+ class_name = self.class.name.split('::').last
170
+ "<#{class_name} id: #{@id}, object: #{@object}, live_mode: #{@live_mode}, created_at:"\
171
+ " #{@created_at}, updated_at: #{@updated_at}, discarded_at: #{@discarded_at}, name:"\
172
+ " #{@name}, description: #{@description}, metadata: #{@metadata}, ledger_id: #{@ledger_id},"\
173
+ " normal_balance: #{@normal_balance}, balances: #{@balances}>"
174
+ end
175
+
176
+ # Provides a debugging-friendly string with detailed object information.
177
+ def inspect
178
+ class_name = self.class.name.split('::').last
179
+ "<#{class_name} id: #{@id.inspect}, object: #{@object.inspect}, live_mode:"\
180
+ " #{@live_mode.inspect}, created_at: #{@created_at.inspect}, updated_at:"\
181
+ " #{@updated_at.inspect}, discarded_at: #{@discarded_at.inspect}, name: #{@name.inspect},"\
182
+ " description: #{@description.inspect}, metadata: #{@metadata.inspect}, ledger_id:"\
183
+ " #{@ledger_id.inspect}, normal_balance: #{@normal_balance.inspect}, balances:"\
184
+ " #{@balances.inspect}>"
185
+ end
186
+ end
187
+ end
@@ -0,0 +1,125 @@
1
+ # modern_treasury
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module ModernTreasury
7
+ # LedgerAccountCategoryCreateRequest Model.
8
+ class LedgerAccountCategoryCreateRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The name of the ledger account category.
13
+ # @return [String]
14
+ attr_accessor :name
15
+
16
+ # The description of the ledger account category.
17
+ # @return [String]
18
+ attr_accessor :description
19
+
20
+ # Additional data represented as key-value pairs. Both the key and value
21
+ # must be strings.
22
+ # @return [Hash[String, String]]
23
+ attr_accessor :metadata
24
+
25
+ # The currency of the ledger account category.
26
+ # @return [String]
27
+ attr_accessor :currency
28
+
29
+ # The currency exponent of the ledger account category.
30
+ # @return [Integer]
31
+ attr_accessor :currency_exponent
32
+
33
+ # The id of the ledger that this account category belongs to.
34
+ # @return [UUID | String]
35
+ attr_accessor :ledger_id
36
+
37
+ # The normal balance of the ledger account category.
38
+ # @return [NormalBalance2Enum]
39
+ attr_accessor :normal_balance
40
+
41
+ # A mapping from model property names to API property names.
42
+ def self.names
43
+ @_hash = {} if @_hash.nil?
44
+ @_hash['name'] = 'name'
45
+ @_hash['description'] = 'description'
46
+ @_hash['metadata'] = 'metadata'
47
+ @_hash['currency'] = 'currency'
48
+ @_hash['currency_exponent'] = 'currency_exponent'
49
+ @_hash['ledger_id'] = 'ledger_id'
50
+ @_hash['normal_balance'] = 'normal_balance'
51
+ @_hash
52
+ end
53
+
54
+ # An array for optional fields
55
+ def self.optionals
56
+ %w[
57
+ description
58
+ metadata
59
+ currency_exponent
60
+ ]
61
+ end
62
+
63
+ # An array for nullable fields
64
+ def self.nullables
65
+ %w[
66
+ description
67
+ currency_exponent
68
+ ]
69
+ end
70
+
71
+ def initialize(name = nil, currency = nil, ledger_id = nil,
72
+ normal_balance = nil, description = SKIP, metadata = SKIP,
73
+ currency_exponent = SKIP)
74
+ @name = name
75
+ @description = description unless description == SKIP
76
+ @metadata = metadata unless metadata == SKIP
77
+ @currency = currency
78
+ @currency_exponent = currency_exponent unless currency_exponent == SKIP
79
+ @ledger_id = ledger_id
80
+ @normal_balance = normal_balance
81
+ end
82
+
83
+ # Creates an instance of the object from a hash.
84
+ def self.from_hash(hash)
85
+ return nil unless hash
86
+
87
+ # Extract variables from the hash.
88
+ name = hash.key?('name') ? hash['name'] : nil
89
+ currency = hash.key?('currency') ? hash['currency'] : nil
90
+ ledger_id = hash.key?('ledger_id') ? hash['ledger_id'] : nil
91
+ normal_balance =
92
+ hash.key?('normal_balance') ? hash['normal_balance'] : nil
93
+ description = hash.key?('description') ? hash['description'] : SKIP
94
+ metadata = hash.key?('metadata') ? hash['metadata'] : SKIP
95
+ currency_exponent =
96
+ hash.key?('currency_exponent') ? hash['currency_exponent'] : SKIP
97
+
98
+ # Create object from extracted values.
99
+ LedgerAccountCategoryCreateRequest.new(name,
100
+ currency,
101
+ ledger_id,
102
+ normal_balance,
103
+ description,
104
+ metadata,
105
+ currency_exponent)
106
+ end
107
+
108
+ # Provides a human-readable string representation of the object.
109
+ def to_s
110
+ class_name = self.class.name.split('::').last
111
+ "<#{class_name} name: #{@name}, description: #{@description}, metadata: #{@metadata},"\
112
+ " currency: #{@currency}, currency_exponent: #{@currency_exponent}, ledger_id:"\
113
+ " #{@ledger_id}, normal_balance: #{@normal_balance}>"
114
+ end
115
+
116
+ # Provides a debugging-friendly string with detailed object information.
117
+ def inspect
118
+ class_name = self.class.name.split('::').last
119
+ "<#{class_name} name: #{@name.inspect}, description: #{@description.inspect}, metadata:"\
120
+ " #{@metadata.inspect}, currency: #{@currency.inspect}, currency_exponent:"\
121
+ " #{@currency_exponent.inspect}, ledger_id: #{@ledger_id.inspect}, normal_balance:"\
122
+ " #{@normal_balance.inspect}>"
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,84 @@
1
+ # modern_treasury
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module ModernTreasury
7
+ # LedgerAccountCategoryUpdateRequest Model.
8
+ class LedgerAccountCategoryUpdateRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The name of the ledger account category.
13
+ # @return [String]
14
+ attr_accessor :name
15
+
16
+ # The description of the ledger account category.
17
+ # @return [String]
18
+ attr_accessor :description
19
+
20
+ # Additional data represented as key-value pairs. Both the key and value
21
+ # must be strings.
22
+ # @return [Hash[String, String]]
23
+ attr_accessor :metadata
24
+
25
+ # A mapping from model property names to API property names.
26
+ def self.names
27
+ @_hash = {} if @_hash.nil?
28
+ @_hash['name'] = 'name'
29
+ @_hash['description'] = 'description'
30
+ @_hash['metadata'] = 'metadata'
31
+ @_hash
32
+ end
33
+
34
+ # An array for optional fields
35
+ def self.optionals
36
+ %w[
37
+ name
38
+ description
39
+ metadata
40
+ ]
41
+ end
42
+
43
+ # An array for nullable fields
44
+ def self.nullables
45
+ %w[
46
+ description
47
+ ]
48
+ end
49
+
50
+ def initialize(name = SKIP, description = SKIP, metadata = SKIP)
51
+ @name = name unless name == SKIP
52
+ @description = description unless description == SKIP
53
+ @metadata = metadata unless metadata == SKIP
54
+ end
55
+
56
+ # Creates an instance of the object from a hash.
57
+ def self.from_hash(hash)
58
+ return nil unless hash
59
+
60
+ # Extract variables from the hash.
61
+ name = hash.key?('name') ? hash['name'] : SKIP
62
+ description = hash.key?('description') ? hash['description'] : SKIP
63
+ metadata = hash.key?('metadata') ? hash['metadata'] : SKIP
64
+
65
+ # Create object from extracted values.
66
+ LedgerAccountCategoryUpdateRequest.new(name,
67
+ description,
68
+ metadata)
69
+ end
70
+
71
+ # Provides a human-readable string representation of the object.
72
+ def to_s
73
+ class_name = self.class.name.split('::').last
74
+ "<#{class_name} name: #{@name}, description: #{@description}, metadata: #{@metadata}>"
75
+ end
76
+
77
+ # Provides a debugging-friendly string with detailed object information.
78
+ def inspect
79
+ class_name = self.class.name.split('::').last
80
+ "<#{class_name} name: #{@name.inspect}, description: #{@description.inspect}, metadata:"\
81
+ " #{@metadata.inspect}>"
82
+ end
83
+ end
84
+ end