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,361 @@
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
+ # InternalAccount Model.
9
+ class InternalAccount < 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
+ # Can be checking, savings or other.
37
+ # @return [AccountType5Enum]
38
+ attr_accessor :account_type
39
+
40
+ # The legal name of the entity which owns the account.
41
+ # @return [String]
42
+ attr_accessor :party_name
43
+
44
+ # Either individual or business.
45
+ # @return [PartyType5Enum]
46
+ attr_accessor :party_type
47
+
48
+ # Either individual or business.
49
+ # @return [Address]
50
+ attr_accessor :party_address
51
+
52
+ # A nickname for the account.
53
+ # @return [String]
54
+ attr_accessor :name
55
+
56
+ # An array of account detail objects.
57
+ # @return [Array[AccountDetail]]
58
+ attr_accessor :account_details
59
+
60
+ # An array of routing detail objects.
61
+ # @return [Array[RoutingDetail]]
62
+ attr_accessor :routing_details
63
+
64
+ # An array of routing detail objects.
65
+ # @return [Connection]
66
+ attr_accessor :connection
67
+
68
+ # Three-letter ISO currency code.
69
+ # @return [CurrencyEnum]
70
+ attr_accessor :currency
71
+
72
+ # Additional data represented as key-value pairs. Both the key and value
73
+ # must be strings.
74
+ # @return [Hash[String, String]]
75
+ attr_accessor :metadata
76
+
77
+ # The parent InternalAccount of this account.
78
+ # @return [UUID | String]
79
+ attr_accessor :parent_account_id
80
+
81
+ # The Counterparty associated to this account.
82
+ # @return [UUID | String]
83
+ attr_accessor :counterparty_id
84
+
85
+ # If the internal account links to a ledger account in Modern Treasury, the
86
+ # id of the ledger account will be populated here.
87
+ # @return [UUID | String]
88
+ attr_accessor :ledger_account_id
89
+
90
+ # A mapping from model property names to API property names.
91
+ def self.names
92
+ @_hash = {} if @_hash.nil?
93
+ @_hash['id'] = 'id'
94
+ @_hash['object'] = 'object'
95
+ @_hash['live_mode'] = 'live_mode'
96
+ @_hash['created_at'] = 'created_at'
97
+ @_hash['updated_at'] = 'updated_at'
98
+ @_hash['account_type'] = 'account_type'
99
+ @_hash['party_name'] = 'party_name'
100
+ @_hash['party_type'] = 'party_type'
101
+ @_hash['party_address'] = 'party_address'
102
+ @_hash['name'] = 'name'
103
+ @_hash['account_details'] = 'account_details'
104
+ @_hash['routing_details'] = 'routing_details'
105
+ @_hash['connection'] = 'connection'
106
+ @_hash['currency'] = 'currency'
107
+ @_hash['metadata'] = 'metadata'
108
+ @_hash['parent_account_id'] = 'parent_account_id'
109
+ @_hash['counterparty_id'] = 'counterparty_id'
110
+ @_hash['ledger_account_id'] = 'ledger_account_id'
111
+ @_hash
112
+ end
113
+
114
+ # An array for optional fields
115
+ def self.optionals
116
+ []
117
+ end
118
+
119
+ # An array for nullable fields
120
+ def self.nullables
121
+ %w[
122
+ account_type
123
+ party_type
124
+ party_address
125
+ name
126
+ parent_account_id
127
+ counterparty_id
128
+ ledger_account_id
129
+ ]
130
+ end
131
+
132
+ def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
133
+ updated_at = nil, account_type = nil, party_name = nil,
134
+ party_type = nil, party_address = nil, name = nil,
135
+ account_details = nil, routing_details = nil,
136
+ connection = nil, currency = nil, metadata = nil,
137
+ parent_account_id = nil, counterparty_id = nil,
138
+ ledger_account_id = nil)
139
+ @id = id
140
+ @object = object
141
+ @live_mode = live_mode
142
+ @created_at = created_at
143
+ @updated_at = updated_at
144
+ @account_type = account_type
145
+ @party_name = party_name
146
+ @party_type = party_type
147
+ @party_address = party_address
148
+ @name = name
149
+ @account_details = account_details
150
+ @routing_details = routing_details
151
+ @connection = connection
152
+ @currency = currency
153
+ @metadata = metadata
154
+ @parent_account_id = parent_account_id
155
+ @counterparty_id = counterparty_id
156
+ @ledger_account_id = ledger_account_id
157
+ end
158
+
159
+ # Creates an instance of the object from a hash.
160
+ def self.from_hash(hash)
161
+ return nil unless hash
162
+
163
+ # Extract variables from the hash.
164
+ id = hash.key?('id') ? hash['id'] : nil
165
+ object = hash.key?('object') ? hash['object'] : nil
166
+ live_mode = hash.key?('live_mode') ? hash['live_mode'] : nil
167
+ created_at = if hash.key?('created_at')
168
+ (DateTimeHelper.from_rfc3339(hash['created_at']) if hash['created_at'])
169
+ end
170
+ updated_at = if hash.key?('updated_at')
171
+ (DateTimeHelper.from_rfc3339(hash['updated_at']) if hash['updated_at'])
172
+ end
173
+ account_type = hash.key?('account_type') ? hash['account_type'] : nil
174
+ party_name = hash.key?('party_name') ? hash['party_name'] : nil
175
+ party_type = hash.key?('party_type') ? hash['party_type'] : nil
176
+ party_address = Address.from_hash(hash['party_address']) if hash['party_address']
177
+ name = hash.key?('name') ? hash['name'] : nil
178
+ # Parameter is an array, so we need to iterate through it
179
+ account_details = nil
180
+ unless hash['account_details'].nil?
181
+ account_details = []
182
+ hash['account_details'].each do |structure|
183
+ account_details << (AccountDetail.from_hash(structure) if structure)
184
+ end
185
+ end
186
+
187
+ account_details = nil unless hash.key?('account_details')
188
+ # Parameter is an array, so we need to iterate through it
189
+ routing_details = nil
190
+ unless hash['routing_details'].nil?
191
+ routing_details = []
192
+ hash['routing_details'].each do |structure|
193
+ routing_details << (RoutingDetail.from_hash(structure) if structure)
194
+ end
195
+ end
196
+
197
+ routing_details = nil unless hash.key?('routing_details')
198
+ connection = Connection.from_hash(hash['connection']) if hash['connection']
199
+ currency = hash.key?('currency') ? hash['currency'] : nil
200
+ metadata = hash.key?('metadata') ? hash['metadata'] : nil
201
+ parent_account_id =
202
+ hash.key?('parent_account_id') ? hash['parent_account_id'] : nil
203
+ counterparty_id =
204
+ hash.key?('counterparty_id') ? hash['counterparty_id'] : nil
205
+ ledger_account_id =
206
+ hash.key?('ledger_account_id') ? hash['ledger_account_id'] : nil
207
+
208
+ # Create object from extracted values.
209
+ InternalAccount.new(id,
210
+ object,
211
+ live_mode,
212
+ created_at,
213
+ updated_at,
214
+ account_type,
215
+ party_name,
216
+ party_type,
217
+ party_address,
218
+ name,
219
+ account_details,
220
+ routing_details,
221
+ connection,
222
+ currency,
223
+ metadata,
224
+ parent_account_id,
225
+ counterparty_id,
226
+ ledger_account_id)
227
+ end
228
+
229
+ def to_custom_created_at
230
+ DateTimeHelper.to_rfc3339(created_at)
231
+ end
232
+
233
+ def to_custom_updated_at
234
+ DateTimeHelper.to_rfc3339(updated_at)
235
+ end
236
+
237
+ # Validates an instance of the object from a given value.
238
+ # @param [InternalAccount | Hash] The value against the validation is performed.
239
+ def self.validate(value)
240
+ if value.instance_of? self
241
+ return (
242
+ APIHelper.valid_type?(value.id,
243
+ ->(val) { val.instance_of? String }) and
244
+ APIHelper.valid_type?(value.object,
245
+ ->(val) { val.instance_of? String }) and
246
+ APIHelper.valid_type?(value.live_mode,
247
+ ->(val) { val.instance_of? TrueClass or val.instance_of? FalseClass }) and
248
+ APIHelper.valid_type?(value.created_at,
249
+ ->(val) { val.instance_of? DateTime }) and
250
+ APIHelper.valid_type?(value.updated_at,
251
+ ->(val) { val.instance_of? DateTime }) and
252
+ APIHelper.valid_type?(value.account_type,
253
+ ->(val) { AccountType5Enum.validate(val) }) and
254
+ APIHelper.valid_type?(value.party_name,
255
+ ->(val) { val.instance_of? String }) and
256
+ APIHelper.valid_type?(value.party_type,
257
+ ->(val) { PartyType5Enum.validate(val) }) and
258
+ APIHelper.valid_type?(value.party_address,
259
+ ->(val) { Address.validate(val) },
260
+ is_model_hash: true) and
261
+ APIHelper.valid_type?(value.name,
262
+ ->(val) { val.instance_of? String }) and
263
+ APIHelper.valid_type?(value.account_details,
264
+ ->(val) { AccountDetail.validate(val) },
265
+ is_model_hash: true,
266
+ is_inner_model_hash: true) and
267
+ APIHelper.valid_type?(value.routing_details,
268
+ ->(val) { RoutingDetail.validate(val) },
269
+ is_model_hash: true,
270
+ is_inner_model_hash: true) and
271
+ APIHelper.valid_type?(value.connection,
272
+ ->(val) { Connection.validate(val) },
273
+ is_model_hash: true) and
274
+ APIHelper.valid_type?(value.currency,
275
+ ->(val) { CurrencyEnum.validate(val) }) and
276
+ APIHelper.valid_type?(value.metadata,
277
+ ->(val) { val.instance_of? String }) and
278
+ APIHelper.valid_type?(value.parent_account_id,
279
+ ->(val) { val.instance_of? String }) and
280
+ APIHelper.valid_type?(value.counterparty_id,
281
+ ->(val) { val.instance_of? String }) and
282
+ APIHelper.valid_type?(value.ledger_account_id,
283
+ ->(val) { val.instance_of? String })
284
+ )
285
+ end
286
+
287
+ return false unless value.instance_of? Hash
288
+
289
+ (
290
+ APIHelper.valid_type?(value['id'],
291
+ ->(val) { val.instance_of? String }) and
292
+ APIHelper.valid_type?(value['object'],
293
+ ->(val) { val.instance_of? String }) and
294
+ APIHelper.valid_type?(value['live_mode'],
295
+ ->(val) { val.instance_of? TrueClass or val.instance_of? FalseClass }) and
296
+ APIHelper.valid_type?(value['created_at'],
297
+ ->(val) { val.instance_of? String }) and
298
+ APIHelper.valid_type?(value['updated_at'],
299
+ ->(val) { val.instance_of? String }) and
300
+ APIHelper.valid_type?(value['account_type'],
301
+ ->(val) { AccountType5Enum.validate(val) }) and
302
+ APIHelper.valid_type?(value['party_name'],
303
+ ->(val) { val.instance_of? String }) and
304
+ APIHelper.valid_type?(value['party_type'],
305
+ ->(val) { PartyType5Enum.validate(val) }) and
306
+ APIHelper.valid_type?(value['party_address'],
307
+ ->(val) { Address.validate(val) },
308
+ is_model_hash: true) and
309
+ APIHelper.valid_type?(value['name'],
310
+ ->(val) { val.instance_of? String }) and
311
+ APIHelper.valid_type?(value['account_details'],
312
+ ->(val) { AccountDetail.validate(val) },
313
+ is_model_hash: true,
314
+ is_inner_model_hash: true) and
315
+ APIHelper.valid_type?(value['routing_details'],
316
+ ->(val) { RoutingDetail.validate(val) },
317
+ is_model_hash: true,
318
+ is_inner_model_hash: true) and
319
+ APIHelper.valid_type?(value['connection'],
320
+ ->(val) { Connection.validate(val) },
321
+ is_model_hash: true) and
322
+ APIHelper.valid_type?(value['currency'],
323
+ ->(val) { CurrencyEnum.validate(val) }) and
324
+ APIHelper.valid_type?(value['metadata'],
325
+ ->(val) { val.instance_of? String }) and
326
+ APIHelper.valid_type?(value['parent_account_id'],
327
+ ->(val) { val.instance_of? String }) and
328
+ APIHelper.valid_type?(value['counterparty_id'],
329
+ ->(val) { val.instance_of? String }) and
330
+ APIHelper.valid_type?(value['ledger_account_id'],
331
+ ->(val) { val.instance_of? String })
332
+ )
333
+ end
334
+
335
+ # Provides a human-readable string representation of the object.
336
+ def to_s
337
+ class_name = self.class.name.split('::').last
338
+ "<#{class_name} id: #{@id}, object: #{@object}, live_mode: #{@live_mode}, created_at:"\
339
+ " #{@created_at}, updated_at: #{@updated_at}, account_type: #{@account_type}, party_name:"\
340
+ " #{@party_name}, party_type: #{@party_type}, party_address: #{@party_address}, name:"\
341
+ " #{@name}, account_details: #{@account_details}, routing_details: #{@routing_details},"\
342
+ " connection: #{@connection}, currency: #{@currency}, metadata: #{@metadata},"\
343
+ " parent_account_id: #{@parent_account_id}, counterparty_id: #{@counterparty_id},"\
344
+ " ledger_account_id: #{@ledger_account_id}>"
345
+ end
346
+
347
+ # Provides a debugging-friendly string with detailed object information.
348
+ def inspect
349
+ class_name = self.class.name.split('::').last
350
+ "<#{class_name} id: #{@id.inspect}, object: #{@object.inspect}, live_mode:"\
351
+ " #{@live_mode.inspect}, created_at: #{@created_at.inspect}, updated_at:"\
352
+ " #{@updated_at.inspect}, account_type: #{@account_type.inspect}, party_name:"\
353
+ " #{@party_name.inspect}, party_type: #{@party_type.inspect}, party_address:"\
354
+ " #{@party_address.inspect}, name: #{@name.inspect}, account_details:"\
355
+ " #{@account_details.inspect}, routing_details: #{@routing_details.inspect}, connection:"\
356
+ " #{@connection.inspect}, currency: #{@currency.inspect}, metadata: #{@metadata.inspect},"\
357
+ " parent_account_id: #{@parent_account_id.inspect}, counterparty_id:"\
358
+ " #{@counterparty_id.inspect}, ledger_account_id: #{@ledger_account_id.inspect}>"
359
+ end
360
+ end
361
+ end
@@ -0,0 +1,135 @@
1
+ # modern_treasury
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module ModernTreasury
7
+ # InternalAccountCreateRequest Model.
8
+ class InternalAccountCreateRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The identifier of the financial institution the account belongs to.
13
+ # @return [String]
14
+ attr_accessor :connection_id
15
+
16
+ # The nickname of the account.
17
+ # @return [String]
18
+ attr_accessor :name
19
+
20
+ # The legal name of the entity which owns the account.
21
+ # @return [String]
22
+ attr_accessor :party_name
23
+
24
+ # The address associated with the owner or null.
25
+ # @return [PartyAddress]
26
+ attr_accessor :party_address
27
+
28
+ # Either "USD" or "CAD". Internal accounts created at Increase only supports
29
+ # "USD".
30
+ # @return [Currency1Enum]
31
+ attr_accessor :currency
32
+
33
+ # A hash of vendor specific attributes that will be used when creating the
34
+ # account at the vendor specified by the given connection.
35
+ # @return [Hash[String, String]]
36
+ attr_accessor :vendor_attributes
37
+
38
+ # The parent internal account of this new account.
39
+ # @return [String]
40
+ attr_accessor :parent_account_id
41
+
42
+ # The Counterparty associated to this account.
43
+ # @return [String]
44
+ attr_accessor :counterparty_id
45
+
46
+ # A mapping from model property names to API property names.
47
+ def self.names
48
+ @_hash = {} if @_hash.nil?
49
+ @_hash['connection_id'] = 'connection_id'
50
+ @_hash['name'] = 'name'
51
+ @_hash['party_name'] = 'party_name'
52
+ @_hash['party_address'] = 'party_address'
53
+ @_hash['currency'] = 'currency'
54
+ @_hash['vendor_attributes'] = 'vendor_attributes'
55
+ @_hash['parent_account_id'] = 'parent_account_id'
56
+ @_hash['counterparty_id'] = 'counterparty_id'
57
+ @_hash
58
+ end
59
+
60
+ # An array for optional fields
61
+ def self.optionals
62
+ %w[
63
+ party_address
64
+ vendor_attributes
65
+ parent_account_id
66
+ counterparty_id
67
+ ]
68
+ end
69
+
70
+ # An array for nullable fields
71
+ def self.nullables
72
+ []
73
+ end
74
+
75
+ def initialize(connection_id = nil, name = nil, party_name = nil,
76
+ currency = nil, party_address = SKIP,
77
+ vendor_attributes = SKIP, parent_account_id = SKIP,
78
+ counterparty_id = SKIP)
79
+ @connection_id = connection_id
80
+ @name = name
81
+ @party_name = party_name
82
+ @party_address = party_address unless party_address == SKIP
83
+ @currency = currency
84
+ @vendor_attributes = vendor_attributes unless vendor_attributes == SKIP
85
+ @parent_account_id = parent_account_id unless parent_account_id == SKIP
86
+ @counterparty_id = counterparty_id unless counterparty_id == SKIP
87
+ end
88
+
89
+ # Creates an instance of the object from a hash.
90
+ def self.from_hash(hash)
91
+ return nil unless hash
92
+
93
+ # Extract variables from the hash.
94
+ connection_id = hash.key?('connection_id') ? hash['connection_id'] : nil
95
+ name = hash.key?('name') ? hash['name'] : nil
96
+ party_name = hash.key?('party_name') ? hash['party_name'] : nil
97
+ currency = hash.key?('currency') ? hash['currency'] : nil
98
+ party_address = PartyAddress.from_hash(hash['party_address']) if hash['party_address']
99
+ vendor_attributes =
100
+ hash.key?('vendor_attributes') ? hash['vendor_attributes'] : SKIP
101
+ parent_account_id =
102
+ hash.key?('parent_account_id') ? hash['parent_account_id'] : SKIP
103
+ counterparty_id =
104
+ hash.key?('counterparty_id') ? hash['counterparty_id'] : SKIP
105
+
106
+ # Create object from extracted values.
107
+ InternalAccountCreateRequest.new(connection_id,
108
+ name,
109
+ party_name,
110
+ currency,
111
+ party_address,
112
+ vendor_attributes,
113
+ parent_account_id,
114
+ counterparty_id)
115
+ end
116
+
117
+ # Provides a human-readable string representation of the object.
118
+ def to_s
119
+ class_name = self.class.name.split('::').last
120
+ "<#{class_name} connection_id: #{@connection_id}, name: #{@name}, party_name:"\
121
+ " #{@party_name}, party_address: #{@party_address}, currency: #{@currency},"\
122
+ " vendor_attributes: #{@vendor_attributes}, parent_account_id: #{@parent_account_id},"\
123
+ " counterparty_id: #{@counterparty_id}>"
124
+ end
125
+
126
+ # Provides a debugging-friendly string with detailed object information.
127
+ def inspect
128
+ class_name = self.class.name.split('::').last
129
+ "<#{class_name} connection_id: #{@connection_id.inspect}, name: #{@name.inspect},"\
130
+ " party_name: #{@party_name.inspect}, party_address: #{@party_address.inspect}, currency:"\
131
+ " #{@currency.inspect}, vendor_attributes: #{@vendor_attributes.inspect}, parent_account_id:"\
132
+ " #{@parent_account_id.inspect}, counterparty_id: #{@counterparty_id.inspect}>"
133
+ end
134
+ end
135
+ end
@@ -0,0 +1,95 @@
1
+ # modern_treasury
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module ModernTreasury
7
+ # InternalAccountUpdateRequest Model.
8
+ class InternalAccountUpdateRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The nickname for the internal account.
13
+ # @return [String]
14
+ attr_accessor :name
15
+
16
+ # Additional data in the form of key-value pairs. Pairs can be removed by
17
+ # passing an empty string or `null` as the value.
18
+ # @return [Hash[String, String]]
19
+ attr_accessor :metadata
20
+
21
+ # The parent internal account for this account.
22
+ # @return [String]
23
+ attr_accessor :parent_account_id
24
+
25
+ # The Counterparty associated to this account.
26
+ # @return [String]
27
+ attr_accessor :counterparty_id
28
+
29
+ # A mapping from model property names to API property names.
30
+ def self.names
31
+ @_hash = {} if @_hash.nil?
32
+ @_hash['name'] = 'name'
33
+ @_hash['metadata'] = 'metadata'
34
+ @_hash['parent_account_id'] = 'parent_account_id'
35
+ @_hash['counterparty_id'] = 'counterparty_id'
36
+ @_hash
37
+ end
38
+
39
+ # An array for optional fields
40
+ def self.optionals
41
+ %w[
42
+ name
43
+ metadata
44
+ parent_account_id
45
+ counterparty_id
46
+ ]
47
+ end
48
+
49
+ # An array for nullable fields
50
+ def self.nullables
51
+ []
52
+ end
53
+
54
+ def initialize(name = SKIP, metadata = SKIP, parent_account_id = SKIP,
55
+ counterparty_id = SKIP)
56
+ @name = name unless name == SKIP
57
+ @metadata = metadata unless metadata == SKIP
58
+ @parent_account_id = parent_account_id unless parent_account_id == SKIP
59
+ @counterparty_id = counterparty_id unless counterparty_id == SKIP
60
+ end
61
+
62
+ # Creates an instance of the object from a hash.
63
+ def self.from_hash(hash)
64
+ return nil unless hash
65
+
66
+ # Extract variables from the hash.
67
+ name = hash.key?('name') ? hash['name'] : SKIP
68
+ metadata = hash.key?('metadata') ? hash['metadata'] : SKIP
69
+ parent_account_id =
70
+ hash.key?('parent_account_id') ? hash['parent_account_id'] : SKIP
71
+ counterparty_id =
72
+ hash.key?('counterparty_id') ? hash['counterparty_id'] : SKIP
73
+
74
+ # Create object from extracted values.
75
+ InternalAccountUpdateRequest.new(name,
76
+ metadata,
77
+ parent_account_id,
78
+ counterparty_id)
79
+ end
80
+
81
+ # Provides a human-readable string representation of the object.
82
+ def to_s
83
+ class_name = self.class.name.split('::').last
84
+ "<#{class_name} name: #{@name}, metadata: #{@metadata}, parent_account_id:"\
85
+ " #{@parent_account_id}, counterparty_id: #{@counterparty_id}>"
86
+ end
87
+
88
+ # Provides a debugging-friendly string with detailed object information.
89
+ def inspect
90
+ class_name = self.class.name.split('::').last
91
+ "<#{class_name} name: #{@name.inspect}, metadata: #{@metadata.inspect}, parent_account_id:"\
92
+ " #{@parent_account_id.inspect}, counterparty_id: #{@counterparty_id.inspect}>"
93
+ end
94
+ end
95
+ end