modern_treasury 0.1.0.pre.alpha.18 → 0.1.0.pre.alpha.20

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 (1049) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +96 -0
  3. data/README.md +124 -66
  4. data/SECURITY.md +2 -2
  5. data/lib/modern_treasury/client.rb +9 -5
  6. data/lib/modern_treasury/errors.rb +10 -10
  7. data/lib/modern_treasury/file_part.rb +55 -0
  8. data/lib/modern_treasury/internal/page.rb +2 -2
  9. data/lib/modern_treasury/internal/transport/base_client.rb +88 -16
  10. data/lib/modern_treasury/internal/transport/pooled_net_requester.rb +19 -7
  11. data/lib/modern_treasury/internal/type/array_of.rb +19 -0
  12. data/lib/modern_treasury/internal/type/base_model.rb +112 -39
  13. data/lib/modern_treasury/internal/type/base_page.rb +9 -1
  14. data/lib/modern_treasury/internal/type/boolean.rb +22 -11
  15. data/lib/modern_treasury/internal/type/converter.rb +22 -1
  16. data/lib/modern_treasury/internal/type/enum.rb +35 -19
  17. data/lib/modern_treasury/internal/type/{io_like.rb → file_input.rb} +41 -15
  18. data/lib/modern_treasury/internal/type/hash_of.rb +19 -0
  19. data/lib/modern_treasury/internal/type/request_parameters.rb +7 -14
  20. data/lib/modern_treasury/internal/type/union.rb +24 -2
  21. data/lib/modern_treasury/internal/type/unknown.rb +22 -11
  22. data/lib/modern_treasury/internal/util.rb +193 -64
  23. data/lib/modern_treasury/internal.rb +9 -1
  24. data/lib/modern_treasury/models/account_collection_flow.rb +46 -89
  25. data/lib/modern_treasury/models/account_collection_flow_create_params.rb +15 -22
  26. data/lib/modern_treasury/models/account_collection_flow_list_params.rb +14 -50
  27. data/lib/modern_treasury/models/account_collection_flow_retrieve_params.rb +3 -8
  28. data/lib/modern_treasury/models/account_collection_flow_update_params.rb +11 -15
  29. data/lib/modern_treasury/models/account_detail.rb +29 -38
  30. data/lib/modern_treasury/models/account_detail_create_params.rb +23 -29
  31. data/lib/modern_treasury/models/account_detail_delete_params.rb +8 -16
  32. data/lib/modern_treasury/models/account_detail_list_params.rb +8 -17
  33. data/lib/modern_treasury/models/account_detail_retrieve_params.rb +6 -11
  34. data/lib/modern_treasury/models/accounts_type.rb +2 -5
  35. data/lib/modern_treasury/models/async_response.rb +3 -7
  36. data/lib/modern_treasury/models/bank_settings.rb +23 -29
  37. data/lib/modern_treasury/models/bulk_request.rb +37 -51
  38. data/lib/modern_treasury/models/bulk_request_create_params.rb +1101 -1631
  39. data/lib/modern_treasury/models/bulk_request_list_params.rb +34 -69
  40. data/lib/modern_treasury/models/bulk_request_retrieve_params.rb +3 -8
  41. data/lib/modern_treasury/models/bulk_result.rb +70 -95
  42. data/lib/modern_treasury/models/bulk_result_list_params.rb +37 -76
  43. data/lib/modern_treasury/models/bulk_result_retrieve_params.rb +3 -8
  44. data/lib/modern_treasury/models/client_ping_params.rb +3 -8
  45. data/lib/modern_treasury/models/connection.rb +21 -27
  46. data/lib/modern_treasury/models/connection_legal_entity.rb +26 -35
  47. data/lib/modern_treasury/models/connection_legal_entity_create_params.rb +323 -403
  48. data/lib/modern_treasury/models/connection_legal_entity_list_params.rb +15 -49
  49. data/lib/modern_treasury/models/connection_legal_entity_retrieve_params.rb +3 -8
  50. data/lib/modern_treasury/models/connection_legal_entity_update_params.rb +9 -20
  51. data/lib/modern_treasury/models/connection_list_params.rb +14 -27
  52. data/lib/modern_treasury/models/counterparty.rb +157 -237
  53. data/lib/modern_treasury/models/counterparty_collect_account_params.rb +23 -34
  54. data/lib/modern_treasury/models/counterparty_collect_account_response.rb +9 -8
  55. data/lib/modern_treasury/models/counterparty_create_params.rb +516 -728
  56. data/lib/modern_treasury/models/counterparty_delete_params.rb +3 -8
  57. data/lib/modern_treasury/models/counterparty_list_params.rb +29 -64
  58. data/lib/modern_treasury/models/counterparty_retrieve_params.rb +3 -8
  59. data/lib/modern_treasury/models/counterparty_update_params.rb +23 -50
  60. data/lib/modern_treasury/models/currency.rb +9 -5
  61. data/lib/modern_treasury/models/document.rb +62 -91
  62. data/lib/modern_treasury/models/document_create_params.rb +19 -27
  63. data/lib/modern_treasury/models/document_list_params.rb +22 -35
  64. data/lib/modern_treasury/models/document_retrieve_params.rb +3 -8
  65. data/lib/modern_treasury/models/event.rb +23 -29
  66. data/lib/modern_treasury/models/event_list_params.rb +23 -57
  67. data/lib/modern_treasury/models/event_retrieve_params.rb +3 -8
  68. data/lib/modern_treasury/models/expected_payment.rb +67 -82
  69. data/lib/modern_treasury/models/expected_payment_create_params.rb +140 -215
  70. data/lib/modern_treasury/models/expected_payment_delete_params.rb +3 -8
  71. data/lib/modern_treasury/models/expected_payment_list_params.rb +63 -92
  72. data/lib/modern_treasury/models/expected_payment_retrieve_params.rb +3 -8
  73. data/lib/modern_treasury/models/expected_payment_type.rb +6 -5
  74. data/lib/modern_treasury/models/expected_payment_update_params.rb +51 -70
  75. data/lib/modern_treasury/models/external_account.rb +105 -137
  76. data/lib/modern_treasury/models/external_account_complete_verification_params.rb +5 -14
  77. data/lib/modern_treasury/models/external_account_create_params.rb +146 -245
  78. data/lib/modern_treasury/models/external_account_delete_params.rb +3 -8
  79. data/lib/modern_treasury/models/external_account_list_params.rb +20 -43
  80. data/lib/modern_treasury/models/external_account_retrieve_params.rb +3 -8
  81. data/lib/modern_treasury/models/external_account_type.rb +7 -5
  82. data/lib/modern_treasury/models/external_account_update_params.rb +42 -69
  83. data/lib/modern_treasury/models/external_account_verify_params.rb +34 -58
  84. data/lib/modern_treasury/models/external_account_verify_response.rb +37 -48
  85. data/lib/modern_treasury/models/foreign_exchange_quote.rb +51 -55
  86. data/lib/modern_treasury/models/foreign_exchange_quote_create_params.rb +24 -47
  87. data/lib/modern_treasury/models/foreign_exchange_quote_list_params.rb +32 -71
  88. data/lib/modern_treasury/models/foreign_exchange_quote_retrieve_params.rb +3 -8
  89. data/lib/modern_treasury/models/incoming_payment_detail.rb +72 -86
  90. data/lib/modern_treasury/models/incoming_payment_detail_create_async_params.rb +36 -65
  91. data/lib/modern_treasury/models/incoming_payment_detail_list_params.rb +39 -84
  92. data/lib/modern_treasury/models/incoming_payment_detail_retrieve_params.rb +3 -8
  93. data/lib/modern_treasury/models/incoming_payment_detail_update_params.rb +9 -14
  94. data/lib/modern_treasury/models/internal_account.rb +84 -99
  95. data/lib/modern_treasury/models/internal_account_create_params.rb +79 -80
  96. data/lib/modern_treasury/models/internal_account_list_params.rb +38 -72
  97. data/lib/modern_treasury/models/internal_account_retrieve_params.rb +3 -8
  98. data/lib/modern_treasury/models/internal_account_update_params.rb +21 -48
  99. data/lib/modern_treasury/models/internal_accounts/balance_report.rb +65 -78
  100. data/lib/modern_treasury/models/internal_accounts/balance_report_create_params.rb +39 -35
  101. data/lib/modern_treasury/models/internal_accounts/balance_report_delete_params.rb +4 -9
  102. data/lib/modern_treasury/models/internal_accounts/balance_report_list_params.rb +21 -33
  103. data/lib/modern_treasury/models/internal_accounts/balance_report_retrieve_params.rb +4 -9
  104. data/lib/modern_treasury/models/invoice.rb +161 -195
  105. data/lib/modern_treasury/models/invoice_add_payment_order_params.rb +4 -9
  106. data/lib/modern_treasury/models/invoice_create_params.rb +167 -251
  107. data/lib/modern_treasury/models/invoice_list_params.rb +42 -92
  108. data/lib/modern_treasury/models/invoice_retrieve_params.rb +3 -8
  109. data/lib/modern_treasury/models/invoice_update_params.rb +171 -271
  110. data/lib/modern_treasury/models/invoices/invoice_line_item.rb +37 -35
  111. data/lib/modern_treasury/models/invoices/line_item_create_params.rb +25 -52
  112. data/lib/modern_treasury/models/invoices/line_item_delete_params.rb +4 -9
  113. data/lib/modern_treasury/models/invoices/line_item_list_params.rb +6 -15
  114. data/lib/modern_treasury/models/invoices/line_item_retrieve_params.rb +4 -9
  115. data/lib/modern_treasury/models/invoices/line_item_update_params.rb +29 -64
  116. data/lib/modern_treasury/models/ledger.rb +21 -14
  117. data/lib/modern_treasury/models/ledger_account.rb +100 -115
  118. data/lib/modern_treasury/models/ledger_account_balance_monitor.rb +114 -106
  119. data/lib/modern_treasury/models/ledger_account_balance_monitor_create_params.rb +32 -33
  120. data/lib/modern_treasury/models/ledger_account_balance_monitor_delete_params.rb +3 -8
  121. data/lib/modern_treasury/models/ledger_account_balance_monitor_list_params.rb +21 -33
  122. data/lib/modern_treasury/models/ledger_account_balance_monitor_retrieve_params.rb +3 -8
  123. data/lib/modern_treasury/models/ledger_account_balance_monitor_update_params.rb +13 -20
  124. data/lib/modern_treasury/models/ledger_account_category.rb +87 -93
  125. data/lib/modern_treasury/models/ledger_account_category_add_ledger_account_params.rb +4 -9
  126. data/lib/modern_treasury/models/ledger_account_category_add_nested_category_params.rb +4 -9
  127. data/lib/modern_treasury/models/ledger_account_category_create_params.rb +25 -40
  128. data/lib/modern_treasury/models/ledger_account_category_delete_params.rb +3 -8
  129. data/lib/modern_treasury/models/ledger_account_category_list_params.rb +43 -94
  130. data/lib/modern_treasury/models/ledger_account_category_remove_ledger_account_params.rb +4 -9
  131. data/lib/modern_treasury/models/ledger_account_category_remove_nested_category_params.rb +4 -9
  132. data/lib/modern_treasury/models/ledger_account_category_retrieve_params.rb +19 -36
  133. data/lib/modern_treasury/models/ledger_account_category_update_params.rb +14 -21
  134. data/lib/modern_treasury/models/ledger_account_create_params.rb +34 -60
  135. data/lib/modern_treasury/models/ledger_account_delete_params.rb +3 -8
  136. data/lib/modern_treasury/models/ledger_account_list_params.rb +116 -279
  137. data/lib/modern_treasury/models/ledger_account_retrieve_params.rb +28 -66
  138. data/lib/modern_treasury/models/ledger_account_settlement.rb +40 -49
  139. data/lib/modern_treasury/models/ledger_account_settlement_create_params.rb +26 -42
  140. data/lib/modern_treasury/models/ledger_account_settlement_list_params.rb +35 -78
  141. data/lib/modern_treasury/models/ledger_account_settlement_retrieve_params.rb +3 -8
  142. data/lib/modern_treasury/models/ledger_account_settlement_update_params.rb +17 -27
  143. data/lib/modern_treasury/models/ledger_account_settlements/account_entry_delete_params.rb +9 -9
  144. data/lib/modern_treasury/models/ledger_account_settlements/account_entry_update_params.rb +9 -9
  145. data/lib/modern_treasury/models/ledger_account_statement_create_params.rb +17 -28
  146. data/lib/modern_treasury/models/ledger_account_statement_create_response.rb +144 -146
  147. data/lib/modern_treasury/models/ledger_account_statement_retrieve_params.rb +3 -8
  148. data/lib/modern_treasury/models/ledger_account_statement_retrieve_response.rb +145 -146
  149. data/lib/modern_treasury/models/ledger_account_update_params.rb +14 -21
  150. data/lib/modern_treasury/models/ledger_create_params.rb +13 -16
  151. data/lib/modern_treasury/models/ledger_delete_params.rb +3 -8
  152. data/lib/modern_treasury/models/ledger_entry.rb +101 -108
  153. data/lib/modern_treasury/models/ledger_entry_list_params.rb +85 -189
  154. data/lib/modern_treasury/models/ledger_entry_retrieve_params.rb +9 -14
  155. data/lib/modern_treasury/models/ledger_entry_update_params.rb +9 -14
  156. data/lib/modern_treasury/models/ledger_event_handler.rb +62 -64
  157. data/lib/modern_treasury/models/ledger_event_handler_create_params.rb +54 -63
  158. data/lib/modern_treasury/models/ledger_event_handler_delete_params.rb +3 -8
  159. data/lib/modern_treasury/models/ledger_event_handler_list_params.rb +20 -33
  160. data/lib/modern_treasury/models/ledger_event_handler_retrieve_params.rb +3 -8
  161. data/lib/modern_treasury/models/ledger_event_handler_variable.rb +15 -16
  162. data/lib/modern_treasury/models/ledger_list_params.rb +20 -33
  163. data/lib/modern_treasury/models/ledger_retrieve_params.rb +3 -8
  164. data/lib/modern_treasury/models/ledger_transaction.rb +48 -63
  165. data/lib/modern_treasury/models/ledger_transaction_create_params.rb +64 -113
  166. data/lib/modern_treasury/models/ledger_transaction_create_partial_post_params.rb +39 -48
  167. data/lib/modern_treasury/models/ledger_transaction_create_reversal_params.rb +33 -69
  168. data/lib/modern_treasury/models/ledger_transaction_list_params.rb +84 -189
  169. data/lib/modern_treasury/models/ledger_transaction_retrieve_params.rb +3 -8
  170. data/lib/modern_treasury/models/ledger_transaction_update_params.rb +60 -105
  171. data/lib/modern_treasury/models/ledger_transactions/ledger_transaction_version.rb +162 -168
  172. data/lib/modern_treasury/models/ledger_transactions/version_list_params.rb +24 -50
  173. data/lib/modern_treasury/models/ledger_update_params.rb +14 -21
  174. data/lib/modern_treasury/models/ledgerable_event.rb +23 -29
  175. data/lib/modern_treasury/models/ledgerable_event_create_params.rb +15 -17
  176. data/lib/modern_treasury/models/ledgerable_event_retrieve_params.rb +3 -8
  177. data/lib/modern_treasury/models/legal_entity.rb +167 -174
  178. data/lib/modern_treasury/models/legal_entity_association.rb +206 -211
  179. data/lib/modern_treasury/models/legal_entity_association_create_params.rb +178 -214
  180. data/lib/modern_treasury/models/legal_entity_compliance_detail.rb +27 -33
  181. data/lib/modern_treasury/models/legal_entity_create_params.rb +314 -380
  182. data/lib/modern_treasury/models/legal_entity_industry_classification.rb +22 -31
  183. data/lib/modern_treasury/models/legal_entity_list_params.rb +23 -49
  184. data/lib/modern_treasury/models/legal_entity_retrieve_params.rb +3 -8
  185. data/lib/modern_treasury/models/legal_entity_update_params.rb +136 -163
  186. data/lib/modern_treasury/models/line_item.rb +40 -49
  187. data/lib/modern_treasury/models/line_item_list_params.rb +10 -22
  188. data/lib/modern_treasury/models/line_item_retrieve_params.rb +8 -16
  189. data/lib/modern_treasury/models/line_item_update_params.rb +16 -22
  190. data/lib/modern_treasury/models/paper_item.rb +52 -52
  191. data/lib/modern_treasury/models/paper_item_list_params.rb +20 -43
  192. data/lib/modern_treasury/models/paper_item_retrieve_params.rb +3 -8
  193. data/lib/modern_treasury/models/payment_action_create_params.rb +59 -0
  194. data/lib/modern_treasury/models/payment_action_create_response.rb +100 -0
  195. data/lib/modern_treasury/models/payment_action_list_params.rb +157 -0
  196. data/lib/modern_treasury/models/payment_action_list_response.rb +100 -0
  197. data/lib/modern_treasury/models/payment_action_retrieve_params.rb +14 -0
  198. data/lib/modern_treasury/models/payment_action_retrieve_response.rb +100 -0
  199. data/lib/modern_treasury/models/payment_action_update_params.rb +44 -0
  200. data/lib/modern_treasury/models/payment_action_update_response.rb +100 -0
  201. data/lib/modern_treasury/models/payment_flow.rb +67 -131
  202. data/lib/modern_treasury/models/payment_flow_create_params.rb +22 -36
  203. data/lib/modern_treasury/models/payment_flow_list_params.rb +18 -64
  204. data/lib/modern_treasury/models/payment_flow_retrieve_params.rb +3 -8
  205. data/lib/modern_treasury/models/payment_flow_update_params.rb +11 -15
  206. data/lib/modern_treasury/models/payment_order.rb +186 -230
  207. data/lib/modern_treasury/models/payment_order_create_async_params.rb +362 -563
  208. data/lib/modern_treasury/models/payment_order_create_params.rb +384 -595
  209. data/lib/modern_treasury/models/payment_order_list_params.rb +70 -146
  210. data/lib/modern_treasury/models/payment_order_retrieve_params.rb +3 -8
  211. data/lib/modern_treasury/models/payment_order_subtype.rb +2 -5
  212. data/lib/modern_treasury/models/payment_order_type.rb +6 -5
  213. data/lib/modern_treasury/models/payment_order_update_params.rb +296 -462
  214. data/lib/modern_treasury/models/payment_orders/reversal.rb +31 -43
  215. data/lib/modern_treasury/models/payment_orders/reversal_create_params.rb +87 -141
  216. data/lib/modern_treasury/models/payment_orders/reversal_list_params.rb +6 -15
  217. data/lib/modern_treasury/models/payment_orders/reversal_retrieve_params.rb +4 -9
  218. data/lib/modern_treasury/models/payment_reference.rb +31 -40
  219. data/lib/modern_treasury/models/payment_reference_list_params.rb +23 -50
  220. data/lib/modern_treasury/models/payment_reference_retireve_params.rb +3 -8
  221. data/lib/modern_treasury/models/payment_reference_retrieve_params.rb +3 -8
  222. data/lib/modern_treasury/models/ping_response.rb +2 -6
  223. data/lib/modern_treasury/models/reconciliation_rule.rb +36 -48
  224. data/lib/modern_treasury/models/return_create_params.rb +66 -39
  225. data/lib/modern_treasury/models/return_list_params.rb +26 -56
  226. data/lib/modern_treasury/models/return_object.rb +140 -108
  227. data/lib/modern_treasury/models/return_retrieve_params.rb +3 -8
  228. data/lib/modern_treasury/models/routing_detail.rb +61 -75
  229. data/lib/modern_treasury/models/routing_detail_create_params.rb +27 -33
  230. data/lib/modern_treasury/models/routing_detail_delete_params.rb +8 -16
  231. data/lib/modern_treasury/models/routing_detail_list_params.rb +8 -17
  232. data/lib/modern_treasury/models/routing_detail_retrieve_params.rb +6 -11
  233. data/lib/modern_treasury/models/routing_number_lookup_request.rb +51 -78
  234. data/lib/modern_treasury/models/transaction.rb +89 -96
  235. data/lib/modern_treasury/models/transaction_create_params.rb +35 -49
  236. data/lib/modern_treasury/models/transaction_delete_params.rb +3 -8
  237. data/lib/modern_treasury/models/transaction_direction.rb +2 -5
  238. data/lib/modern_treasury/models/transaction_list_params.rb +47 -106
  239. data/lib/modern_treasury/models/transaction_retrieve_params.rb +3 -8
  240. data/lib/modern_treasury/models/transaction_update_params.rb +9 -14
  241. data/lib/modern_treasury/models/transactions/line_item_create_params.rb +12 -11
  242. data/lib/modern_treasury/models/transactions/line_item_delete_params.rb +3 -8
  243. data/lib/modern_treasury/models/transactions/line_item_list_params.rb +14 -34
  244. data/lib/modern_treasury/models/transactions/line_item_retrieve_params.rb +3 -8
  245. data/lib/modern_treasury/models/transactions/transaction_line_item.rb +39 -51
  246. data/lib/modern_treasury/models/validation_validate_routing_number_params.rb +14 -16
  247. data/lib/modern_treasury/models/virtual_account.rb +37 -45
  248. data/lib/modern_treasury/models/virtual_account_create_params.rb +114 -175
  249. data/lib/modern_treasury/models/virtual_account_delete_params.rb +3 -8
  250. data/lib/modern_treasury/models/virtual_account_list_params.rb +20 -43
  251. data/lib/modern_treasury/models/virtual_account_retrieve_params.rb +3 -8
  252. data/lib/modern_treasury/models/virtual_account_update_params.rb +14 -27
  253. data/lib/modern_treasury/models/wealth_and_employment_details.rb +61 -83
  254. data/lib/modern_treasury/models.rb +461 -0
  255. data/lib/modern_treasury/request_options.rb +8 -6
  256. data/lib/modern_treasury/resources/account_collection_flows.rb +20 -11
  257. data/lib/modern_treasury/resources/account_details.rb +36 -19
  258. data/lib/modern_treasury/resources/bulk_requests.rb +31 -14
  259. data/lib/modern_treasury/resources/bulk_results.rb +20 -9
  260. data/lib/modern_treasury/resources/connection_legal_entities.rb +19 -13
  261. data/lib/modern_treasury/resources/connections.rb +8 -4
  262. data/lib/modern_treasury/resources/counterparties.rb +83 -38
  263. data/lib/modern_treasury/resources/documents.rb +23 -11
  264. data/lib/modern_treasury/resources/events.rb +14 -6
  265. data/lib/modern_treasury/resources/expected_payments.rb +117 -55
  266. data/lib/modern_treasury/resources/external_accounts.rb +83 -35
  267. data/lib/modern_treasury/resources/foreign_exchange_quotes.rb +41 -19
  268. data/lib/modern_treasury/resources/incoming_payment_details.rb +57 -26
  269. data/lib/modern_treasury/resources/internal_accounts/balance_reports.rb +45 -18
  270. data/lib/modern_treasury/resources/internal_accounts.rb +66 -31
  271. data/lib/modern_treasury/resources/invoices/line_items.rb +62 -32
  272. data/lib/modern_treasury/resources/invoices.rb +140 -66
  273. data/lib/modern_treasury/resources/ledger_account_balance_monitors.rb +46 -20
  274. data/lib/modern_treasury/resources/ledger_account_categories.rb +86 -45
  275. data/lib/modern_treasury/resources/ledger_account_settlements/account_entries.rb +18 -8
  276. data/lib/modern_treasury/resources/ledger_account_settlements.rb +56 -24
  277. data/lib/modern_treasury/resources/ledger_account_statements.rb +16 -7
  278. data/lib/modern_treasury/resources/ledger_accounts.rb +78 -35
  279. data/lib/modern_treasury/resources/ledger_entries.rb +57 -24
  280. data/lib/modern_treasury/resources/ledger_event_handlers.rb +34 -14
  281. data/lib/modern_treasury/resources/ledger_transactions/versions.rb +16 -6
  282. data/lib/modern_treasury/resources/ledger_transactions.rb +116 -49
  283. data/lib/modern_treasury/resources/ledgerable_events.rb +16 -8
  284. data/lib/modern_treasury/resources/ledgers.rb +43 -20
  285. data/lib/modern_treasury/resources/legal_entities.rb +116 -50
  286. data/lib/modern_treasury/resources/legal_entity_associations.rb +16 -7
  287. data/lib/modern_treasury/resources/line_items.rb +31 -17
  288. data/lib/modern_treasury/resources/paper_items.rb +16 -7
  289. data/lib/modern_treasury/resources/payment_actions.rb +137 -0
  290. data/lib/modern_treasury/resources/payment_flows.rb +31 -16
  291. data/lib/modern_treasury/resources/payment_orders/reversals.rb +25 -13
  292. data/lib/modern_treasury/resources/payment_orders.rb +256 -121
  293. data/lib/modern_treasury/resources/payment_references.rb +16 -7
  294. data/lib/modern_treasury/resources/returns.rb +37 -17
  295. data/lib/modern_treasury/resources/routing_details.rb +38 -20
  296. data/lib/modern_treasury/resources/transactions/line_items.rb +18 -10
  297. data/lib/modern_treasury/resources/transactions.rb +65 -28
  298. data/lib/modern_treasury/resources/validations.rb +10 -4
  299. data/lib/modern_treasury/resources/virtual_accounts.rb +51 -23
  300. data/lib/modern_treasury/version.rb +1 -1
  301. data/lib/modern_treasury.rb +14 -10
  302. data/rbi/{lib/modern_treasury → modern_treasury}/client.rbi +16 -12
  303. data/rbi/{lib/modern_treasury → modern_treasury}/errors.rbi +34 -15
  304. data/rbi/modern_treasury/file_part.rbi +37 -0
  305. data/rbi/{lib/modern_treasury → modern_treasury}/internal/page.rbi +8 -4
  306. data/rbi/modern_treasury/internal/transport/base_client.rbi +303 -0
  307. data/rbi/modern_treasury/internal/transport/pooled_net_requester.rbi +80 -0
  308. data/rbi/{lib/modern_treasury → modern_treasury}/internal/type/array_of.rbi +46 -23
  309. data/rbi/modern_treasury/internal/type/base_model.rbi +310 -0
  310. data/rbi/{lib/modern_treasury → modern_treasury}/internal/type/base_page.rbi +15 -8
  311. data/rbi/{lib/modern_treasury → modern_treasury}/internal/type/boolean.rbi +18 -9
  312. data/rbi/{lib/modern_treasury → modern_treasury}/internal/type/converter.rbi +75 -28
  313. data/rbi/{lib/modern_treasury → modern_treasury}/internal/type/enum.rbi +31 -18
  314. data/rbi/{lib/modern_treasury/internal/type/io_like.rbi → modern_treasury/internal/type/file_input.rbi} +19 -6
  315. data/rbi/{lib/modern_treasury → modern_treasury}/internal/type/hash_of.rbi +46 -23
  316. data/rbi/modern_treasury/internal/type/request_parameters.rbi +31 -0
  317. data/rbi/modern_treasury/internal/type/union.rbi +116 -0
  318. data/rbi/{lib/modern_treasury → modern_treasury}/internal/type/unknown.rbi +22 -6
  319. data/rbi/modern_treasury/internal/util.rbi +485 -0
  320. data/rbi/{lib/modern_treasury → modern_treasury}/internal.rbi +7 -1
  321. data/rbi/modern_treasury/models/account_collection_flow.rbi +372 -0
  322. data/rbi/modern_treasury/models/account_collection_flow_create_params.rbi +197 -0
  323. data/rbi/{lib/modern_treasury → modern_treasury}/models/account_collection_flow_list_params.rbi +26 -17
  324. data/rbi/modern_treasury/models/account_collection_flow_retrieve_params.rbi +32 -0
  325. data/rbi/modern_treasury/models/account_collection_flow_update_params.rbi +85 -0
  326. data/rbi/modern_treasury/models/account_detail.rbi +198 -0
  327. data/rbi/modern_treasury/models/account_detail_create_params.rbi +209 -0
  328. data/rbi/modern_treasury/models/account_detail_delete_params.rbi +81 -0
  329. data/rbi/modern_treasury/models/account_detail_list_params.rbi +59 -0
  330. data/rbi/modern_treasury/models/account_detail_retrieve_params.rbi +46 -0
  331. data/rbi/modern_treasury/models/accounts_type.rbi +24 -0
  332. data/rbi/{lib/modern_treasury → modern_treasury}/models/async_response.rbi +13 -3
  333. data/rbi/{lib/modern_treasury → modern_treasury}/models/bank_settings.rbi +35 -19
  334. data/rbi/modern_treasury/models/bulk_request.rbi +231 -0
  335. data/rbi/modern_treasury/models/bulk_request_create_params.rbi +7199 -0
  336. data/rbi/modern_treasury/models/bulk_request_list_params.rbi +264 -0
  337. data/rbi/modern_treasury/models/bulk_request_retrieve_params.rbi +32 -0
  338. data/rbi/modern_treasury/models/bulk_result.rbi +401 -0
  339. data/rbi/modern_treasury/models/bulk_result_list_params.rbi +270 -0
  340. data/rbi/modern_treasury/models/bulk_result_retrieve_params.rbi +32 -0
  341. data/rbi/modern_treasury/models/client_ping_params.rbi +32 -0
  342. data/rbi/{lib/modern_treasury → modern_treasury}/models/connection.rbi +29 -18
  343. data/rbi/modern_treasury/models/connection_legal_entity.rbi +148 -0
  344. data/rbi/modern_treasury/models/connection_legal_entity_create_params.rbi +2052 -0
  345. data/rbi/modern_treasury/models/connection_legal_entity_list_params.rbi +137 -0
  346. data/rbi/modern_treasury/models/connection_legal_entity_retrieve_params.rbi +32 -0
  347. data/rbi/modern_treasury/models/connection_legal_entity_update_params.rbi +92 -0
  348. data/rbi/{lib/modern_treasury → modern_treasury}/models/connection_list_params.rbi +23 -14
  349. data/rbi/modern_treasury/models/counterparty.rbi +796 -0
  350. data/rbi/modern_treasury/models/counterparty_collect_account_params.rbi +291 -0
  351. data/rbi/modern_treasury/models/counterparty_collect_account_response.rbi +58 -0
  352. data/rbi/modern_treasury/models/counterparty_create_params.rbi +3527 -0
  353. data/rbi/modern_treasury/models/counterparty_delete_params.rbi +32 -0
  354. data/rbi/{lib/modern_treasury → modern_treasury}/models/counterparty_list_params.rbi +38 -19
  355. data/rbi/modern_treasury/models/counterparty_retrieve_params.rbi +32 -0
  356. data/rbi/{lib/modern_treasury → modern_treasury}/models/counterparty_update_params.rbi +34 -17
  357. data/rbi/modern_treasury/models/currency.rbi +214 -0
  358. data/rbi/modern_treasury/models/document.rbi +339 -0
  359. data/rbi/modern_treasury/models/document_create_params.rbi +159 -0
  360. data/rbi/modern_treasury/models/document_list_params.rbi +176 -0
  361. data/rbi/modern_treasury/models/document_retrieve_params.rbi +32 -0
  362. data/rbi/{lib/modern_treasury → modern_treasury}/models/event.rbi +29 -18
  363. data/rbi/{lib/modern_treasury → modern_treasury}/models/event_list_params.rbi +29 -18
  364. data/rbi/modern_treasury/models/event_retrieve_params.rbi +32 -0
  365. data/rbi/modern_treasury/models/expected_payment.rbi +387 -0
  366. data/rbi/{lib/modern_treasury → modern_treasury}/models/expected_payment_create_params.rbi +341 -157
  367. data/rbi/modern_treasury/models/expected_payment_delete_params.rbi +32 -0
  368. data/rbi/modern_treasury/models/expected_payment_list_params.rbi +422 -0
  369. data/rbi/modern_treasury/models/expected_payment_retrieve_params.rbi +32 -0
  370. data/rbi/modern_treasury/models/expected_payment_type.rbi +71 -0
  371. data/rbi/modern_treasury/models/expected_payment_update_params.rbi +289 -0
  372. data/rbi/modern_treasury/models/external_account.rbi +540 -0
  373. data/rbi/modern_treasury/models/external_account_complete_verification_params.rbi +44 -0
  374. data/rbi/modern_treasury/models/external_account_create_params.rbi +1196 -0
  375. data/rbi/modern_treasury/models/external_account_delete_params.rbi +32 -0
  376. data/rbi/{lib/modern_treasury → modern_treasury}/models/external_account_list_params.rbi +29 -16
  377. data/rbi/modern_treasury/models/external_account_retrieve_params.rbi +32 -0
  378. data/rbi/modern_treasury/models/external_account_type.rbi +55 -0
  379. data/rbi/modern_treasury/models/external_account_update_params.rbi +237 -0
  380. data/rbi/modern_treasury/models/external_account_verify_params.rbi +387 -0
  381. data/rbi/{lib/modern_treasury → modern_treasury}/models/external_account_verify_response.rbi +113 -71
  382. data/rbi/{lib/modern_treasury → modern_treasury}/models/foreign_exchange_quote.rbi +86 -51
  383. data/rbi/{lib/modern_treasury → modern_treasury}/models/foreign_exchange_quote_create_params.rbi +39 -22
  384. data/rbi/{lib/modern_treasury → modern_treasury}/models/foreign_exchange_quote_list_params.rbi +38 -20
  385. data/rbi/modern_treasury/models/foreign_exchange_quote_retrieve_params.rbi +32 -0
  386. data/rbi/modern_treasury/models/incoming_payment_detail.rbi +617 -0
  387. data/rbi/modern_treasury/models/incoming_payment_detail_create_async_params.rbi +279 -0
  388. data/rbi/modern_treasury/models/incoming_payment_detail_list_params.rbi +299 -0
  389. data/rbi/modern_treasury/models/incoming_payment_detail_retrieve_params.rbi +32 -0
  390. data/rbi/{lib/modern_treasury → modern_treasury}/models/incoming_payment_detail_update_params.rbi +25 -6
  391. data/rbi/modern_treasury/models/internal_account.rbi +432 -0
  392. data/rbi/modern_treasury/models/internal_account_create_params.rbi +369 -0
  393. data/rbi/modern_treasury/models/internal_account_list_params.rbi +335 -0
  394. data/rbi/modern_treasury/models/internal_account_retrieve_params.rbi +32 -0
  395. data/rbi/{lib/modern_treasury → modern_treasury}/models/internal_account_update_params.rbi +31 -16
  396. data/rbi/{lib/modern_treasury → modern_treasury}/models/internal_accounts/balance_report.rbi +155 -82
  397. data/rbi/modern_treasury/models/internal_accounts/balance_report_create_params.rbi +288 -0
  398. data/rbi/modern_treasury/models/internal_accounts/balance_report_delete_params.rbi +43 -0
  399. data/rbi/{lib/modern_treasury → modern_treasury}/models/internal_accounts/balance_report_list_params.rbi +47 -33
  400. data/rbi/modern_treasury/models/internal_accounts/balance_report_retrieve_params.rbi +43 -0
  401. data/rbi/modern_treasury/models/invoice.rbi +822 -0
  402. data/rbi/modern_treasury/models/invoice_add_payment_order_params.rbi +38 -0
  403. data/rbi/{lib/modern_treasury → modern_treasury}/models/invoice_create_params.rbi +416 -192
  404. data/rbi/{lib/modern_treasury → modern_treasury}/models/invoice_list_params.rbi +80 -37
  405. data/rbi/modern_treasury/models/invoice_retrieve_params.rbi +32 -0
  406. data/rbi/{lib/modern_treasury → modern_treasury}/models/invoice_update_params.rbi +416 -192
  407. data/rbi/{lib/modern_treasury → modern_treasury}/models/invoices/invoice_line_item.rbi +59 -24
  408. data/rbi/{lib/modern_treasury → modern_treasury}/models/invoices/line_item_create_params.rbi +41 -18
  409. data/rbi/modern_treasury/models/invoices/line_item_delete_params.rbi +43 -0
  410. data/rbi/{lib/modern_treasury → modern_treasury}/models/invoices/line_item_list_params.rbi +21 -13
  411. data/rbi/modern_treasury/models/invoices/line_item_retrieve_params.rbi +43 -0
  412. data/rbi/{lib/modern_treasury → modern_treasury}/models/invoices/line_item_update_params.rbi +42 -19
  413. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger.rbi +27 -17
  414. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account.rbi +244 -120
  415. data/rbi/modern_treasury/models/ledger_account_balance_monitor.rbi +551 -0
  416. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_balance_monitor_create_params.rbi +69 -29
  417. data/rbi/modern_treasury/models/ledger_account_balance_monitor_delete_params.rbi +32 -0
  418. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_balance_monitor_list_params.rbi +28 -15
  419. data/rbi/modern_treasury/models/ledger_account_balance_monitor_retrieve_params.rbi +32 -0
  420. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_balance_monitor_update_params.rbi +28 -13
  421. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_category.rbi +202 -115
  422. data/rbi/modern_treasury/models/ledger_account_category_add_ledger_account_params.rbi +38 -0
  423. data/rbi/modern_treasury/models/ledger_account_category_add_nested_category_params.rbi +38 -0
  424. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_category_create_params.rbi +40 -21
  425. data/rbi/modern_treasury/models/ledger_account_category_delete_params.rbi +32 -0
  426. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_category_list_params.rbi +64 -35
  427. data/rbi/modern_treasury/models/ledger_account_category_remove_ledger_account_params.rbi +38 -0
  428. data/rbi/modern_treasury/models/ledger_account_category_remove_nested_category_params.rbi +38 -0
  429. data/rbi/modern_treasury/models/ledger_account_category_retrieve_params.rbi +101 -0
  430. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_category_update_params.rbi +31 -14
  431. data/rbi/modern_treasury/models/ledger_account_create_params.rbi +200 -0
  432. data/rbi/modern_treasury/models/ledger_account_delete_params.rbi +32 -0
  433. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_list_params.rbi +182 -87
  434. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_retrieve_params.rbi +62 -31
  435. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_settlement.rbi +104 -39
  436. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_settlement_create_params.rbi +81 -29
  437. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_settlement_list_params.rbi +41 -21
  438. data/rbi/modern_treasury/models/ledger_account_settlement_retrieve_params.rbi +32 -0
  439. data/rbi/modern_treasury/models/ledger_account_settlement_update_params.rbi +121 -0
  440. data/rbi/modern_treasury/models/ledger_account_settlements/account_entry_delete_params.rbi +50 -0
  441. data/rbi/modern_treasury/models/ledger_account_settlements/account_entry_update_params.rbi +50 -0
  442. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_statement_create_params.rbi +34 -16
  443. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_statement_create_response.rbi +389 -222
  444. data/rbi/modern_treasury/models/ledger_account_statement_retrieve_params.rbi +32 -0
  445. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_statement_retrieve_response.rbi +389 -222
  446. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_account_update_params.rbi +31 -14
  447. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_create_params.rbi +31 -14
  448. data/rbi/modern_treasury/models/ledger_delete_params.rbi +32 -0
  449. data/rbi/modern_treasury/models/ledger_entry.rbi +519 -0
  450. data/rbi/modern_treasury/models/ledger_entry_list_params.rbi +474 -0
  451. data/rbi/modern_treasury/models/ledger_entry_retrieve_params.rbi +51 -0
  452. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_entry_update_params.rbi +25 -6
  453. data/rbi/modern_treasury/models/ledger_event_handler.rbi +322 -0
  454. data/rbi/modern_treasury/models/ledger_event_handler_create_params.rbi +303 -0
  455. data/rbi/modern_treasury/models/ledger_event_handler_delete_params.rbi +32 -0
  456. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_event_handler_list_params.rbi +28 -15
  457. data/rbi/modern_treasury/models/ledger_event_handler_retrieve_params.rbi +32 -0
  458. data/rbi/modern_treasury/models/ledger_event_handler_variable.rbi +98 -0
  459. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_list_params.rbi +30 -15
  460. data/rbi/modern_treasury/models/ledger_retrieve_params.rbi +32 -0
  461. data/rbi/modern_treasury/models/ledger_transaction.rbi +298 -0
  462. data/rbi/modern_treasury/models/ledger_transaction_create_params.rbi +410 -0
  463. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_transaction_create_partial_post_params.rbi +95 -52
  464. data/rbi/modern_treasury/models/ledger_transaction_create_reversal_params.rbi +249 -0
  465. data/rbi/modern_treasury/models/ledger_transaction_list_params.rbi +506 -0
  466. data/rbi/modern_treasury/models/ledger_transaction_retrieve_params.rbi +32 -0
  467. data/rbi/modern_treasury/models/ledger_transaction_update_params.rbi +396 -0
  468. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_transactions/ledger_transaction_version.rbi +358 -214
  469. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_transactions/version_list_params.rbi +35 -17
  470. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledger_update_params.rbi +31 -14
  471. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledgerable_event.rbi +36 -19
  472. data/rbi/{lib/modern_treasury → modern_treasury}/models/ledgerable_event_create_params.rbi +34 -15
  473. data/rbi/modern_treasury/models/ledgerable_event_retrieve_params.rbi +32 -0
  474. data/rbi/modern_treasury/models/legal_entity.rbi +875 -0
  475. data/rbi/modern_treasury/models/legal_entity_association.rbi +1112 -0
  476. data/rbi/modern_treasury/models/legal_entity_association_create_params.rbi +1056 -0
  477. data/rbi/{lib/modern_treasury → modern_treasury}/models/legal_entity_compliance_detail.rbi +38 -21
  478. data/rbi/modern_treasury/models/legal_entity_create_params.rbi +1940 -0
  479. data/rbi/modern_treasury/models/legal_entity_industry_classification.rbi +194 -0
  480. data/rbi/modern_treasury/models/legal_entity_list_params.rbi +133 -0
  481. data/rbi/modern_treasury/models/legal_entity_retrieve_params.rbi +32 -0
  482. data/rbi/modern_treasury/models/legal_entity_update_params.rbi +828 -0
  483. data/rbi/modern_treasury/models/line_item.rbi +217 -0
  484. data/rbi/modern_treasury/models/line_item_list_params.rbi +94 -0
  485. data/rbi/modern_treasury/models/line_item_retrieve_params.rbi +86 -0
  486. data/rbi/modern_treasury/models/line_item_update_params.rbi +98 -0
  487. data/rbi/{lib/modern_treasury → modern_treasury}/models/paper_item.rbi +79 -39
  488. data/rbi/{lib/modern_treasury → modern_treasury}/models/paper_item_list_params.rbi +29 -16
  489. data/rbi/modern_treasury/models/paper_item_retrieve_params.rbi +32 -0
  490. data/rbi/modern_treasury/models/payment_action_create_params.rbi +94 -0
  491. data/rbi/modern_treasury/models/payment_action_create_response.rbi +118 -0
  492. data/rbi/modern_treasury/models/payment_action_list_params.rbi +306 -0
  493. data/rbi/modern_treasury/models/payment_action_list_response.rbi +118 -0
  494. data/rbi/modern_treasury/models/payment_action_retrieve_params.rbi +32 -0
  495. data/rbi/modern_treasury/models/payment_action_retrieve_response.rbi +118 -0
  496. data/rbi/modern_treasury/models/payment_action_update_params.rbi +106 -0
  497. data/rbi/modern_treasury/models/payment_action_update_response.rbi +118 -0
  498. data/rbi/modern_treasury/models/payment_flow.rbi +387 -0
  499. data/rbi/modern_treasury/models/payment_flow_create_params.rbi +136 -0
  500. data/rbi/{lib/modern_treasury → modern_treasury}/models/payment_flow_list_params.rbi +28 -19
  501. data/rbi/modern_treasury/models/payment_flow_retrieve_params.rbi +32 -0
  502. data/rbi/modern_treasury/models/payment_flow_update_params.rbi +76 -0
  503. data/rbi/modern_treasury/models/payment_order.rbi +1461 -0
  504. data/rbi/modern_treasury/models/payment_order_create_async_params.rbi +2473 -0
  505. data/rbi/modern_treasury/models/payment_order_create_params.rbi +2631 -0
  506. data/rbi/modern_treasury/models/payment_order_list_params.rbi +542 -0
  507. data/rbi/modern_treasury/models/payment_order_retrieve_params.rbi +32 -0
  508. data/rbi/modern_treasury/models/payment_order_subtype.rbi +66 -0
  509. data/rbi/modern_treasury/models/payment_order_type.rbi +64 -0
  510. data/rbi/modern_treasury/models/payment_order_update_params.rbi +2136 -0
  511. data/rbi/modern_treasury/models/payment_orders/reversal.rbi +221 -0
  512. data/rbi/{lib/modern_treasury → modern_treasury}/models/payment_orders/reversal_create_params.rbi +228 -126
  513. data/rbi/{lib/modern_treasury → modern_treasury}/models/payment_orders/reversal_list_params.rbi +21 -13
  514. data/rbi/modern_treasury/models/payment_orders/reversal_retrieve_params.rbi +43 -0
  515. data/rbi/modern_treasury/models/payment_reference.rbi +564 -0
  516. data/rbi/modern_treasury/models/payment_reference_list_params.rbi +144 -0
  517. data/rbi/modern_treasury/models/payment_reference_retireve_params.rbi +32 -0
  518. data/rbi/modern_treasury/models/payment_reference_retrieve_params.rbi +32 -0
  519. data/rbi/{lib/modern_treasury → modern_treasury}/models/ping_response.rbi +10 -3
  520. data/rbi/modern_treasury/models/reconciliation_rule.rbi +286 -0
  521. data/rbi/modern_treasury/models/return_create_params.rbi +345 -0
  522. data/rbi/modern_treasury/models/return_list_params.rbi +162 -0
  523. data/rbi/modern_treasury/models/return_object.rbi +1011 -0
  524. data/rbi/modern_treasury/models/return_retrieve_params.rbi +32 -0
  525. data/rbi/modern_treasury/models/routing_detail.rbi +523 -0
  526. data/rbi/modern_treasury/models/routing_detail_create_params.rbi +455 -0
  527. data/rbi/modern_treasury/models/routing_detail_delete_params.rbi +81 -0
  528. data/rbi/modern_treasury/models/routing_detail_list_params.rbi +59 -0
  529. data/rbi/modern_treasury/models/routing_detail_retrieve_params.rbi +46 -0
  530. data/rbi/modern_treasury/models/routing_number_lookup_request.rbi +494 -0
  531. data/rbi/modern_treasury/models/transaction.rbi +588 -0
  532. data/rbi/modern_treasury/models/transaction_create_params.rbi +346 -0
  533. data/rbi/modern_treasury/models/transaction_delete_params.rbi +32 -0
  534. data/rbi/modern_treasury/models/transaction_direction.rbi +25 -0
  535. data/rbi/{lib/modern_treasury → modern_treasury}/models/transaction_list_params.rbi +47 -25
  536. data/rbi/modern_treasury/models/transaction_retrieve_params.rbi +32 -0
  537. data/rbi/{lib/modern_treasury → modern_treasury}/models/transaction_update_params.rbi +25 -6
  538. data/rbi/{lib/modern_treasury → modern_treasury}/models/transactions/line_item_create_params.rbi +31 -14
  539. data/rbi/modern_treasury/models/transactions/line_item_delete_params.rbi +34 -0
  540. data/rbi/modern_treasury/models/transactions/line_item_list_params.rbi +125 -0
  541. data/rbi/modern_treasury/models/transactions/line_item_retrieve_params.rbi +34 -0
  542. data/rbi/modern_treasury/models/transactions/transaction_line_item.rbi +276 -0
  543. data/rbi/modern_treasury/models/validation_validate_routing_number_params.rbi +199 -0
  544. data/rbi/{lib/modern_treasury → modern_treasury}/models/virtual_account.rbi +57 -29
  545. data/rbi/modern_treasury/models/virtual_account_create_params.rbi +957 -0
  546. data/rbi/modern_treasury/models/virtual_account_delete_params.rbi +32 -0
  547. data/rbi/{lib/modern_treasury → modern_treasury}/models/virtual_account_list_params.rbi +28 -16
  548. data/rbi/modern_treasury/models/virtual_account_retrieve_params.rbi +32 -0
  549. data/rbi/{lib/modern_treasury → modern_treasury}/models/virtual_account_update_params.rbi +22 -14
  550. data/rbi/modern_treasury/models/wealth_and_employment_details.rbi +812 -0
  551. data/rbi/modern_treasury/models.rbi +498 -0
  552. data/rbi/{lib/modern_treasury → modern_treasury}/request_options.rbi +20 -5
  553. data/rbi/{lib/modern_treasury → modern_treasury}/resources/account_collection_flows.rbi +29 -18
  554. data/rbi/{lib/modern_treasury → modern_treasury}/resources/account_details.rbi +30 -22
  555. data/rbi/modern_treasury/resources/bulk_requests.rbi +97 -0
  556. data/rbi/{lib/modern_treasury → modern_treasury}/resources/bulk_results.rbi +17 -12
  557. data/rbi/{lib/modern_treasury → modern_treasury}/resources/connection_legal_entities.rbi +29 -22
  558. data/rbi/{lib/modern_treasury → modern_treasury}/resources/connections.rbi +7 -5
  559. data/rbi/{lib/modern_treasury → modern_treasury}/resources/counterparties.rbi +47 -32
  560. data/rbi/{lib/modern_treasury → modern_treasury}/resources/documents.rbi +22 -16
  561. data/rbi/{lib/modern_treasury → modern_treasury}/resources/events.rbi +12 -9
  562. data/rbi/{lib/modern_treasury → modern_treasury}/resources/expected_payments.rbi +63 -37
  563. data/rbi/{lib/modern_treasury → modern_treasury}/resources/external_accounts.rbi +74 -70
  564. data/rbi/{lib/modern_treasury → modern_treasury}/resources/foreign_exchange_quotes.rbi +20 -14
  565. data/rbi/{lib/modern_treasury → modern_treasury}/resources/incoming_payment_details.rbi +32 -22
  566. data/rbi/{lib/modern_treasury → modern_treasury}/resources/internal_accounts/balance_reports.rbi +33 -44
  567. data/rbi/{lib/modern_treasury → modern_treasury}/resources/internal_accounts.rbi +39 -25
  568. data/rbi/{lib/modern_treasury → modern_treasury}/resources/invoices/line_items.rbi +30 -45
  569. data/rbi/{lib/modern_treasury → modern_treasury}/resources/invoices.rbi +80 -66
  570. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledger_account_balance_monitors.rbi +32 -24
  571. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledger_account_categories.rbi +53 -45
  572. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledger_account_settlements/account_entries.rbi +12 -19
  573. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledger_account_settlements.rbi +36 -19
  574. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledger_account_statements.rbi +13 -8
  575. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledger_accounts.rbi +39 -37
  576. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledger_entries.rbi +20 -16
  577. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledger_event_handlers.rbi +36 -29
  578. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledger_transactions/versions.rbi +10 -11
  579. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledger_transactions.rbi +62 -51
  580. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledgerable_events.rbi +12 -9
  581. data/rbi/{lib/modern_treasury → modern_treasury}/resources/ledgers.rbi +27 -21
  582. data/rbi/{lib/modern_treasury → modern_treasury}/resources/legal_entities.rbi +82 -45
  583. data/rbi/{lib/modern_treasury → modern_treasury}/resources/legal_entity_associations.rbi +13 -10
  584. data/rbi/{lib/modern_treasury → modern_treasury}/resources/line_items.rbi +23 -16
  585. data/rbi/{lib/modern_treasury → modern_treasury}/resources/paper_items.rbi +12 -9
  586. data/rbi/modern_treasury/resources/payment_actions.rbi +119 -0
  587. data/rbi/{lib/modern_treasury → modern_treasury}/resources/payment_flows.rbi +25 -19
  588. data/rbi/{lib/modern_treasury → modern_treasury}/resources/payment_orders/reversals.rbi +24 -32
  589. data/rbi/{lib/modern_treasury → modern_treasury}/resources/payment_orders.rbi +114 -80
  590. data/rbi/{lib/modern_treasury → modern_treasury}/resources/payment_references.rbi +15 -9
  591. data/rbi/{lib/modern_treasury → modern_treasury}/resources/returns.rbi +22 -16
  592. data/rbi/{lib/modern_treasury → modern_treasury}/resources/routing_details.rbi +34 -23
  593. data/rbi/{lib/modern_treasury → modern_treasury}/resources/transactions/line_items.rbi +26 -36
  594. data/rbi/{lib/modern_treasury → modern_treasury}/resources/transactions.rbi +29 -22
  595. data/rbi/{lib/modern_treasury → modern_treasury}/resources/validations.rbi +9 -6
  596. data/rbi/{lib/modern_treasury → modern_treasury}/resources/virtual_accounts.rbi +38 -36
  597. data/sig/modern_treasury/client.rbs +3 -1
  598. data/sig/modern_treasury/file_part.rbs +21 -0
  599. data/sig/modern_treasury/internal/page.rbs +1 -1
  600. data/sig/modern_treasury/internal/transport/base_client.rbs +25 -4
  601. data/sig/modern_treasury/internal/transport/pooled_net_requester.rbs +4 -0
  602. data/sig/modern_treasury/internal/type/array_of.rbs +5 -0
  603. data/sig/modern_treasury/internal/type/base_model.rbs +19 -1
  604. data/sig/modern_treasury/internal/type/base_page.rbs +1 -1
  605. data/sig/modern_treasury/internal/type/boolean.rbs +3 -0
  606. data/sig/modern_treasury/internal/type/converter.rbs +2 -0
  607. data/sig/modern_treasury/internal/type/enum.rbs +5 -2
  608. data/sig/modern_treasury/internal/type/{io_like.rbs → file_input.rbs} +3 -1
  609. data/sig/modern_treasury/internal/type/hash_of.rbs +5 -0
  610. data/sig/modern_treasury/internal/type/request_parameters.rbs +5 -1
  611. data/sig/modern_treasury/internal/type/union.rbs +5 -0
  612. data/sig/modern_treasury/internal/type/unknown.rbs +3 -0
  613. data/sig/modern_treasury/internal/util.rbs +41 -12
  614. data/sig/modern_treasury/internal.rbs +5 -0
  615. data/sig/modern_treasury/models/account_collection_flow.rbs +13 -1
  616. data/sig/modern_treasury/models/account_collection_flow_create_params.rbs +6 -1
  617. data/sig/modern_treasury/models/account_collection_flow_list_params.rbs +9 -1
  618. data/sig/modern_treasury/models/account_collection_flow_retrieve_params.rbs +1 -1
  619. data/sig/modern_treasury/models/account_collection_flow_update_params.rbs +4 -1
  620. data/sig/modern_treasury/models/account_detail.rbs +19 -1
  621. data/sig/modern_treasury/models/account_detail_create_params.rbs +14 -1
  622. data/sig/modern_treasury/models/account_detail_delete_params.rbs +5 -1
  623. data/sig/modern_treasury/models/account_detail_list_params.rbs +6 -1
  624. data/sig/modern_treasury/models/account_detail_retrieve_params.rbs +5 -1
  625. data/sig/modern_treasury/models/async_response.rbs +1 -1
  626. data/sig/modern_treasury/models/bank_settings.rbs +12 -1
  627. data/sig/modern_treasury/models/bulk_request.rbs +16 -1
  628. data/sig/modern_treasury/models/bulk_request_create_params.rbs +504 -158
  629. data/sig/modern_treasury/models/bulk_request_list_params.rbs +11 -1
  630. data/sig/modern_treasury/models/bulk_request_retrieve_params.rbs +1 -1
  631. data/sig/modern_treasury/models/bulk_result.rbs +34 -12
  632. data/sig/modern_treasury/models/bulk_result_list_params.rbs +12 -1
  633. data/sig/modern_treasury/models/bulk_result_retrieve_params.rbs +1 -1
  634. data/sig/modern_treasury/models/client_ping_params.rbs +1 -1
  635. data/sig/modern_treasury/models/connection.rbs +11 -1
  636. data/sig/modern_treasury/models/connection_legal_entity.rbs +12 -1
  637. data/sig/modern_treasury/models/connection_legal_entity_create_params.rbs +197 -85
  638. data/sig/modern_treasury/models/connection_legal_entity_list_params.rbs +8 -1
  639. data/sig/modern_treasury/models/connection_legal_entity_retrieve_params.rbs +1 -1
  640. data/sig/modern_treasury/models/connection_legal_entity_update_params.rbs +4 -1
  641. data/sig/modern_treasury/models/connection_list_params.rbs +7 -1
  642. data/sig/modern_treasury/models/counterparty.rbs +79 -25
  643. data/sig/modern_treasury/models/counterparty_collect_account_params.rbs +7 -1
  644. data/sig/modern_treasury/models/counterparty_collect_account_response.rbs +1 -1
  645. data/sig/modern_treasury/models/counterparty_create_params.rbs +306 -127
  646. data/sig/modern_treasury/models/counterparty_delete_params.rbs +1 -1
  647. data/sig/modern_treasury/models/counterparty_list_params.rbs +11 -1
  648. data/sig/modern_treasury/models/counterparty_retrieve_params.rbs +1 -1
  649. data/sig/modern_treasury/models/counterparty_update_params.rbs +9 -1
  650. data/sig/modern_treasury/models/currency.rbs +14 -0
  651. data/sig/modern_treasury/models/document.rbs +40 -14
  652. data/sig/modern_treasury/models/document_create_params.rbs +15 -9
  653. data/sig/modern_treasury/models/document_list_params.rbs +12 -6
  654. data/sig/modern_treasury/models/document_retrieve_params.rbs +1 -1
  655. data/sig/modern_treasury/models/event.rbs +12 -1
  656. data/sig/modern_treasury/models/event_list_params.rbs +10 -1
  657. data/sig/modern_treasury/models/event_retrieve_params.rbs +1 -1
  658. data/sig/modern_treasury/models/expected_payment.rbs +31 -4
  659. data/sig/modern_treasury/models/expected_payment_create_params.rbs +66 -20
  660. data/sig/modern_treasury/models/expected_payment_delete_params.rbs +1 -1
  661. data/sig/modern_treasury/models/expected_payment_list_params.rbs +36 -2
  662. data/sig/modern_treasury/models/expected_payment_retrieve_params.rbs +1 -1
  663. data/sig/modern_treasury/models/expected_payment_type.rbs +8 -0
  664. data/sig/modern_treasury/models/expected_payment_update_params.rbs +23 -4
  665. data/sig/modern_treasury/models/external_account.rbs +56 -15
  666. data/sig/modern_treasury/models/external_account_complete_verification_params.rbs +4 -1
  667. data/sig/modern_treasury/models/external_account_create_params.rbs +90 -31
  668. data/sig/modern_treasury/models/external_account_delete_params.rbs +1 -1
  669. data/sig/modern_treasury/models/external_account_list_params.rbs +8 -1
  670. data/sig/modern_treasury/models/external_account_retrieve_params.rbs +1 -1
  671. data/sig/modern_treasury/models/external_account_type.rbs +11 -1
  672. data/sig/modern_treasury/models/external_account_update_params.rbs +23 -7
  673. data/sig/modern_treasury/models/external_account_verify_params.rbs +16 -1
  674. data/sig/modern_treasury/models/external_account_verify_response.rbs +22 -3
  675. data/sig/modern_treasury/models/foreign_exchange_quote.rbs +26 -5
  676. data/sig/modern_treasury/models/foreign_exchange_quote_create_params.rbs +9 -1
  677. data/sig/modern_treasury/models/foreign_exchange_quote_list_params.rbs +12 -1
  678. data/sig/modern_treasury/models/foreign_exchange_quote_retrieve_params.rbs +1 -1
  679. data/sig/modern_treasury/models/incoming_payment_detail.rbs +38 -4
  680. data/sig/modern_treasury/models/incoming_payment_detail_create_async_params.rbs +12 -1
  681. data/sig/modern_treasury/models/incoming_payment_detail_list_params.rbs +12 -1
  682. data/sig/modern_treasury/models/incoming_payment_detail_retrieve_params.rbs +1 -1
  683. data/sig/modern_treasury/models/incoming_payment_detail_update_params.rbs +4 -1
  684. data/sig/modern_treasury/models/internal_account.rbs +57 -15
  685. data/sig/modern_treasury/models/internal_account_create_params.rbs +69 -7
  686. data/sig/modern_treasury/models/internal_account_list_params.rbs +19 -1
  687. data/sig/modern_treasury/models/internal_account_retrieve_params.rbs +1 -1
  688. data/sig/modern_treasury/models/internal_account_update_params.rbs +8 -1
  689. data/sig/modern_treasury/models/internal_accounts/balance_report.rbs +30 -5
  690. data/sig/modern_treasury/models/internal_accounts/balance_report_create_params.rbs +16 -5
  691. data/sig/modern_treasury/models/internal_accounts/balance_report_delete_params.rbs +4 -1
  692. data/sig/modern_treasury/models/internal_accounts/balance_report_list_params.rbs +7 -1
  693. data/sig/modern_treasury/models/internal_accounts/balance_report_retrieve_params.rbs +4 -1
  694. data/sig/modern_treasury/models/invoice.rbs +91 -23
  695. data/sig/modern_treasury/models/invoice_add_payment_order_params.rbs +4 -1
  696. data/sig/modern_treasury/models/invoice_create_params.rbs +88 -23
  697. data/sig/modern_treasury/models/invoice_list_params.rbs +14 -1
  698. data/sig/modern_treasury/models/invoice_retrieve_params.rbs +1 -1
  699. data/sig/modern_treasury/models/invoice_update_params.rbs +88 -23
  700. data/sig/modern_treasury/models/invoices/invoice_line_item.rbs +20 -1
  701. data/sig/modern_treasury/models/invoices/line_item_create_params.rbs +10 -1
  702. data/sig/modern_treasury/models/invoices/line_item_delete_params.rbs +4 -1
  703. data/sig/modern_treasury/models/invoices/line_item_list_params.rbs +5 -1
  704. data/sig/modern_treasury/models/invoices/line_item_retrieve_params.rbs +4 -1
  705. data/sig/modern_treasury/models/invoices/line_item_update_params.rbs +11 -1
  706. data/sig/modern_treasury/models/ledger.rbs +11 -1
  707. data/sig/modern_treasury/models/ledger_account.rbs +57 -17
  708. data/sig/modern_treasury/models/ledger_account_balance_monitor.rbs +63 -25
  709. data/sig/modern_treasury/models/ledger_account_balance_monitor_create_params.rbs +11 -5
  710. data/sig/modern_treasury/models/ledger_account_balance_monitor_delete_params.rbs +1 -1
  711. data/sig/modern_treasury/models/ledger_account_balance_monitor_list_params.rbs +8 -1
  712. data/sig/modern_treasury/models/ledger_account_balance_monitor_retrieve_params.rbs +1 -1
  713. data/sig/modern_treasury/models/ledger_account_balance_monitor_update_params.rbs +5 -1
  714. data/sig/modern_treasury/models/ledger_account_category.rbs +52 -17
  715. data/sig/modern_treasury/models/ledger_account_category_add_ledger_account_params.rbs +4 -1
  716. data/sig/modern_treasury/models/ledger_account_category_add_nested_category_params.rbs +4 -1
  717. data/sig/modern_treasury/models/ledger_account_category_create_params.rbs +11 -1
  718. data/sig/modern_treasury/models/ledger_account_category_delete_params.rbs +1 -1
  719. data/sig/modern_treasury/models/ledger_account_category_list_params.rbs +19 -7
  720. data/sig/modern_treasury/models/ledger_account_category_remove_ledger_account_params.rbs +4 -1
  721. data/sig/modern_treasury/models/ledger_account_category_remove_nested_category_params.rbs +4 -1
  722. data/sig/modern_treasury/models/ledger_account_category_retrieve_params.rbs +10 -7
  723. data/sig/modern_treasury/models/ledger_account_category_update_params.rbs +6 -1
  724. data/sig/modern_treasury/models/ledger_account_create_params.rbs +13 -1
  725. data/sig/modern_treasury/models/ledger_account_delete_params.rbs +1 -1
  726. data/sig/modern_treasury/models/ledger_account_list_params.rbs +67 -25
  727. data/sig/modern_treasury/models/ledger_account_retrieve_params.rbs +16 -9
  728. data/sig/modern_treasury/models/ledger_account_settlement.rbs +19 -1
  729. data/sig/modern_treasury/models/ledger_account_settlement_create_params.rbs +11 -1
  730. data/sig/modern_treasury/models/ledger_account_settlement_list_params.rbs +13 -1
  731. data/sig/modern_treasury/models/ledger_account_settlement_retrieve_params.rbs +1 -1
  732. data/sig/modern_treasury/models/ledger_account_settlement_update_params.rbs +6 -1
  733. data/sig/modern_treasury/models/ledger_account_settlements/account_entry_delete_params.rbs +4 -1
  734. data/sig/modern_treasury/models/ledger_account_settlements/account_entry_update_params.rbs +4 -1
  735. data/sig/modern_treasury/models/ledger_account_statement_create_params.rbs +8 -1
  736. data/sig/modern_treasury/models/ledger_account_statement_create_response.rbs +69 -9
  737. data/sig/modern_treasury/models/ledger_account_statement_retrieve_params.rbs +1 -1
  738. data/sig/modern_treasury/models/ledger_account_statement_retrieve_response.rbs +69 -9
  739. data/sig/modern_treasury/models/ledger_account_update_params.rbs +6 -1
  740. data/sig/modern_treasury/models/ledger_create_params.rbs +6 -1
  741. data/sig/modern_treasury/models/ledger_delete_params.rbs +1 -1
  742. data/sig/modern_treasury/models/ledger_entry.rbs +56 -17
  743. data/sig/modern_treasury/models/ledger_entry_list_params.rbs +32 -7
  744. data/sig/modern_treasury/models/ledger_entry_retrieve_params.rbs +4 -1
  745. data/sig/modern_treasury/models/ledger_entry_update_params.rbs +4 -1
  746. data/sig/modern_treasury/models/ledger_event_handler.rbs +39 -16
  747. data/sig/modern_treasury/models/ledger_event_handler_create_params.rbs +34 -16
  748. data/sig/modern_treasury/models/ledger_event_handler_delete_params.rbs +1 -1
  749. data/sig/modern_treasury/models/ledger_event_handler_list_params.rbs +8 -1
  750. data/sig/modern_treasury/models/ledger_event_handler_retrieve_params.rbs +1 -1
  751. data/sig/modern_treasury/models/ledger_event_handler_variable.rbs +8 -8
  752. data/sig/modern_treasury/models/ledger_list_params.rbs +8 -1
  753. data/sig/modern_treasury/models/ledger_retrieve_params.rbs +1 -1
  754. data/sig/modern_treasury/models/ledger_transaction.rbs +24 -4
  755. data/sig/modern_treasury/models/ledger_transaction_create_params.rbs +26 -5
  756. data/sig/modern_treasury/models/ledger_transaction_create_partial_post_params.rbs +16 -5
  757. data/sig/modern_treasury/models/ledger_transaction_create_reversal_params.rbs +10 -1
  758. data/sig/modern_treasury/models/ledger_transaction_list_params.rbs +31 -7
  759. data/sig/modern_treasury/models/ledger_transaction_retrieve_params.rbs +1 -1
  760. data/sig/modern_treasury/models/ledger_transaction_update_params.rbs +26 -7
  761. data/sig/modern_treasury/models/ledger_transactions/ledger_transaction_version.rbs +79 -21
  762. data/sig/modern_treasury/models/ledger_transactions/version_list_params.rbs +9 -1
  763. data/sig/modern_treasury/models/ledger_update_params.rbs +6 -1
  764. data/sig/modern_treasury/models/ledgerable_event.rbs +12 -1
  765. data/sig/modern_treasury/models/ledgerable_event_create_params.rbs +7 -1
  766. data/sig/modern_treasury/models/ledgerable_event_retrieve_params.rbs +1 -1
  767. data/sig/modern_treasury/models/legal_entity.rbs +96 -28
  768. data/sig/modern_treasury/models/legal_entity_association.rbs +108 -29
  769. data/sig/modern_treasury/models/legal_entity_association_create_params.rbs +99 -41
  770. data/sig/modern_treasury/models/legal_entity_compliance_detail.rbs +14 -1
  771. data/sig/modern_treasury/models/legal_entity_create_params.rbs +187 -79
  772. data/sig/modern_treasury/models/legal_entity_industry_classification.rbs +10 -1
  773. data/sig/modern_treasury/models/legal_entity_list_params.rbs +8 -1
  774. data/sig/modern_treasury/models/legal_entity_retrieve_params.rbs +1 -1
  775. data/sig/modern_treasury/models/legal_entity_update_params.rbs +85 -35
  776. data/sig/modern_treasury/models/line_item.rbs +19 -5
  777. data/sig/modern_treasury/models/line_item_list_params.rbs +6 -1
  778. data/sig/modern_treasury/models/line_item_retrieve_params.rbs +5 -1
  779. data/sig/modern_treasury/models/line_item_update_params.rbs +6 -1
  780. data/sig/modern_treasury/models/paper_item.rbs +25 -1
  781. data/sig/modern_treasury/models/paper_item_list_params.rbs +8 -1
  782. data/sig/modern_treasury/models/paper_item_retrieve_params.rbs +1 -1
  783. data/sig/modern_treasury/models/payment_action_create_params.rbs +54 -0
  784. data/sig/modern_treasury/models/payment_action_create_response.rbs +70 -0
  785. data/sig/modern_treasury/models/payment_action_list_params.rbs +149 -0
  786. data/sig/modern_treasury/models/payment_action_list_response.rbs +70 -0
  787. data/sig/modern_treasury/models/payment_action_retrieve_params.rbs +15 -0
  788. data/sig/modern_treasury/models/payment_action_retrieve_response.rbs +70 -0
  789. data/sig/modern_treasury/models/payment_action_update_params.rbs +40 -0
  790. data/sig/modern_treasury/models/payment_action_update_response.rbs +70 -0
  791. data/sig/modern_treasury/models/payment_flow.rbs +21 -1
  792. data/sig/modern_treasury/models/payment_flow_create_params.rbs +9 -1
  793. data/sig/modern_treasury/models/payment_flow_list_params.rbs +11 -1
  794. data/sig/modern_treasury/models/payment_flow_retrieve_params.rbs +1 -1
  795. data/sig/modern_treasury/models/payment_flow_update_params.rbs +4 -1
  796. data/sig/modern_treasury/models/payment_order.rbs +90 -31
  797. data/sig/modern_treasury/models/payment_order_create_async_params.rbs +178 -59
  798. data/sig/modern_treasury/models/payment_order_create_params.rbs +198 -73
  799. data/sig/modern_treasury/models/payment_order_list_params.rbs +28 -1
  800. data/sig/modern_treasury/models/payment_order_retrieve_params.rbs +1 -1
  801. data/sig/modern_treasury/models/payment_order_type.rbs +8 -0
  802. data/sig/modern_treasury/models/payment_order_update_params.rbs +147 -49
  803. data/sig/modern_treasury/models/payment_orders/reversal.rbs +13 -1
  804. data/sig/modern_treasury/models/payment_orders/reversal_create_params.rbs +36 -11
  805. data/sig/modern_treasury/models/payment_orders/reversal_list_params.rbs +5 -1
  806. data/sig/modern_treasury/models/payment_orders/reversal_retrieve_params.rbs +4 -1
  807. data/sig/modern_treasury/models/payment_reference.rbs +19 -1
  808. data/sig/modern_treasury/models/payment_reference_list_params.rbs +8 -1
  809. data/sig/modern_treasury/models/payment_reference_retireve_params.rbs +1 -1
  810. data/sig/modern_treasury/models/payment_reference_retrieve_params.rbs +1 -1
  811. data/sig/modern_treasury/models/ping_response.rbs +1 -1
  812. data/sig/modern_treasury/models/reconciliation_rule.rbs +20 -1
  813. data/sig/modern_treasury/models/return_create_params.rbs +90 -1
  814. data/sig/modern_treasury/models/return_list_params.rbs +9 -1
  815. data/sig/modern_treasury/models/return_object.rbs +134 -8
  816. data/sig/modern_treasury/models/return_retrieve_params.rbs +1 -1
  817. data/sig/modern_treasury/models/routing_detail.rbs +37 -5
  818. data/sig/modern_treasury/models/routing_detail_create_params.rbs +15 -1
  819. data/sig/modern_treasury/models/routing_detail_delete_params.rbs +5 -1
  820. data/sig/modern_treasury/models/routing_detail_list_params.rbs +6 -1
  821. data/sig/modern_treasury/models/routing_detail_retrieve_params.rbs +5 -1
  822. data/sig/modern_treasury/models/routing_number_lookup_request.rbs +29 -7
  823. data/sig/modern_treasury/models/transaction.rbs +51 -5
  824. data/sig/modern_treasury/models/transaction_create_params.rbs +21 -1
  825. data/sig/modern_treasury/models/transaction_delete_params.rbs +1 -1
  826. data/sig/modern_treasury/models/transaction_list_params.rbs +17 -1
  827. data/sig/modern_treasury/models/transaction_retrieve_params.rbs +1 -1
  828. data/sig/modern_treasury/models/transaction_update_params.rbs +4 -1
  829. data/sig/modern_treasury/models/transactions/line_item_create_params.rbs +6 -1
  830. data/sig/modern_treasury/models/transactions/line_item_delete_params.rbs +1 -1
  831. data/sig/modern_treasury/models/transactions/line_item_list_params.rbs +8 -1
  832. data/sig/modern_treasury/models/transactions/line_item_retrieve_params.rbs +1 -1
  833. data/sig/modern_treasury/models/transactions/transaction_line_item.rbs +17 -1
  834. data/sig/modern_treasury/models/validation_validate_routing_number_params.rbs +5 -1
  835. data/sig/modern_treasury/models/virtual_account.rbs +24 -7
  836. data/sig/modern_treasury/models/virtual_account_create_params.rbs +65 -19
  837. data/sig/modern_treasury/models/virtual_account_delete_params.rbs +1 -1
  838. data/sig/modern_treasury/models/virtual_account_list_params.rbs +8 -1
  839. data/sig/modern_treasury/models/virtual_account_retrieve_params.rbs +1 -1
  840. data/sig/modern_treasury/models/virtual_account_update_params.rbs +7 -1
  841. data/sig/modern_treasury/models/wealth_and_employment_details.rbs +20 -1
  842. data/sig/modern_treasury/models.rbs +411 -0
  843. data/sig/modern_treasury/request_options.rbs +1 -1
  844. data/sig/modern_treasury/resources/account_collection_flows.rbs +4 -4
  845. data/sig/modern_treasury/resources/account_details.rbs +3 -3
  846. data/sig/modern_treasury/resources/bulk_requests.rbs +3 -3
  847. data/sig/modern_treasury/resources/bulk_results.rbs +2 -2
  848. data/sig/modern_treasury/resources/connection_legal_entities.rbs +5 -5
  849. data/sig/modern_treasury/resources/connections.rbs +1 -1
  850. data/sig/modern_treasury/resources/counterparties.rbs +8 -8
  851. data/sig/modern_treasury/resources/documents.rbs +4 -4
  852. data/sig/modern_treasury/resources/events.rbs +2 -2
  853. data/sig/modern_treasury/resources/expected_payments.rbs +11 -9
  854. data/sig/modern_treasury/resources/external_accounts.rbs +11 -11
  855. data/sig/modern_treasury/resources/foreign_exchange_quotes.rbs +3 -3
  856. data/sig/modern_treasury/resources/incoming_payment_details.rbs +4 -4
  857. data/sig/modern_treasury/resources/internal_accounts/balance_reports.rbs +4 -4
  858. data/sig/modern_treasury/resources/internal_accounts.rbs +6 -5
  859. data/sig/modern_treasury/resources/invoices/line_items.rbs +5 -5
  860. data/sig/modern_treasury/resources/invoices.rbs +14 -14
  861. data/sig/modern_treasury/resources/ledger_account_balance_monitors.rbs +6 -6
  862. data/sig/modern_treasury/resources/ledger_account_categories.rbs +7 -7
  863. data/sig/modern_treasury/resources/ledger_account_settlements.rbs +4 -4
  864. data/sig/modern_treasury/resources/ledger_accounts.rbs +10 -10
  865. data/sig/modern_treasury/resources/ledger_entries.rbs +4 -4
  866. data/sig/modern_treasury/resources/ledger_event_handlers.rbs +7 -7
  867. data/sig/modern_treasury/resources/ledger_transactions/versions.rbs +1 -1
  868. data/sig/modern_treasury/resources/ledger_transactions.rbs +10 -10
  869. data/sig/modern_treasury/resources/ledgerable_events.rbs +2 -2
  870. data/sig/modern_treasury/resources/ledgers.rbs +5 -5
  871. data/sig/modern_treasury/resources/legal_entities.rbs +19 -19
  872. data/sig/modern_treasury/resources/legal_entity_associations.rbs +2 -2
  873. data/sig/modern_treasury/resources/line_items.rbs +3 -3
  874. data/sig/modern_treasury/resources/paper_items.rbs +2 -2
  875. data/sig/modern_treasury/resources/payment_actions.rbs +40 -0
  876. data/sig/modern_treasury/resources/payment_flows.rbs +4 -4
  877. data/sig/modern_treasury/resources/payment_orders/reversals.rbs +4 -4
  878. data/sig/modern_treasury/resources/payment_orders.rbs +17 -17
  879. data/sig/modern_treasury/resources/payment_references.rbs +2 -2
  880. data/sig/modern_treasury/resources/returns.rbs +3 -3
  881. data/sig/modern_treasury/resources/routing_details.rbs +3 -3
  882. data/sig/modern_treasury/resources/transactions/line_items.rbs +3 -3
  883. data/sig/modern_treasury/resources/transactions.rbs +4 -4
  884. data/sig/modern_treasury/resources/validations.rbs +1 -1
  885. data/sig/modern_treasury/resources/virtual_accounts.rbs +8 -8
  886. metadata +324 -291
  887. data/rbi/lib/modern_treasury/internal/transport/base_client.rbi +0 -199
  888. data/rbi/lib/modern_treasury/internal/transport/pooled_net_requester.rbi +0 -60
  889. data/rbi/lib/modern_treasury/internal/type/base_model.rbi +0 -203
  890. data/rbi/lib/modern_treasury/internal/type/request_parameters.rbi +0 -21
  891. data/rbi/lib/modern_treasury/internal/type/union.rbi +0 -77
  892. data/rbi/lib/modern_treasury/internal/util.rbi +0 -300
  893. data/rbi/lib/modern_treasury/models/account_collection_flow.rbi +0 -197
  894. data/rbi/lib/modern_treasury/models/account_collection_flow_create_params.rbi +0 -117
  895. data/rbi/lib/modern_treasury/models/account_collection_flow_retrieve_params.rbi +0 -19
  896. data/rbi/lib/modern_treasury/models/account_collection_flow_update_params.rbi +0 -54
  897. data/rbi/lib/modern_treasury/models/account_detail.rbi +0 -111
  898. data/rbi/lib/modern_treasury/models/account_detail_create_params.rbi +0 -103
  899. data/rbi/lib/modern_treasury/models/account_detail_delete_params.rbi +0 -53
  900. data/rbi/lib/modern_treasury/models/account_detail_list_params.rbi +0 -46
  901. data/rbi/lib/modern_treasury/models/account_detail_retrieve_params.rbi +0 -38
  902. data/rbi/lib/modern_treasury/models/accounts_type.rbi +0 -18
  903. data/rbi/lib/modern_treasury/models/bulk_request.rbi +0 -160
  904. data/rbi/lib/modern_treasury/models/bulk_request_create_params.rbi +0 -6245
  905. data/rbi/lib/modern_treasury/models/bulk_request_list_params.rbi +0 -144
  906. data/rbi/lib/modern_treasury/models/bulk_request_retrieve_params.rbi +0 -19
  907. data/rbi/lib/modern_treasury/models/bulk_result.rbi +0 -285
  908. data/rbi/lib/modern_treasury/models/bulk_result_list_params.rbi +0 -154
  909. data/rbi/lib/modern_treasury/models/bulk_result_retrieve_params.rbi +0 -19
  910. data/rbi/lib/modern_treasury/models/client_ping_params.rbi +0 -19
  911. data/rbi/lib/modern_treasury/models/connection_legal_entity.rbi +0 -106
  912. data/rbi/lib/modern_treasury/models/connection_legal_entity_create_params.rbi +0 -1797
  913. data/rbi/lib/modern_treasury/models/connection_legal_entity_list_params.rbi +0 -90
  914. data/rbi/lib/modern_treasury/models/connection_legal_entity_retrieve_params.rbi +0 -19
  915. data/rbi/lib/modern_treasury/models/connection_legal_entity_update_params.rbi +0 -55
  916. data/rbi/lib/modern_treasury/models/counterparty.rbi +0 -591
  917. data/rbi/lib/modern_treasury/models/counterparty_collect_account_params.rbi +0 -158
  918. data/rbi/lib/modern_treasury/models/counterparty_collect_account_response.rbi +0 -29
  919. data/rbi/lib/modern_treasury/models/counterparty_create_params.rbi +0 -2902
  920. data/rbi/lib/modern_treasury/models/counterparty_delete_params.rbi +0 -19
  921. data/rbi/lib/modern_treasury/models/counterparty_retrieve_params.rbi +0 -19
  922. data/rbi/lib/modern_treasury/models/currency.rbi +0 -206
  923. data/rbi/lib/modern_treasury/models/document.rbi +0 -234
  924. data/rbi/lib/modern_treasury/models/document_create_params.rbi +0 -92
  925. data/rbi/lib/modern_treasury/models/document_list_params.rbi +0 -109
  926. data/rbi/lib/modern_treasury/models/document_retrieve_params.rbi +0 -19
  927. data/rbi/lib/modern_treasury/models/event_retrieve_params.rbi +0 -19
  928. data/rbi/lib/modern_treasury/models/expected_payment.rbi +0 -267
  929. data/rbi/lib/modern_treasury/models/expected_payment_delete_params.rbi +0 -19
  930. data/rbi/lib/modern_treasury/models/expected_payment_list_params.rbi +0 -192
  931. data/rbi/lib/modern_treasury/models/expected_payment_retrieve_params.rbi +0 -19
  932. data/rbi/lib/modern_treasury/models/expected_payment_type.rbi +0 -49
  933. data/rbi/lib/modern_treasury/models/expected_payment_update_params.rbi +0 -196
  934. data/rbi/lib/modern_treasury/models/external_account.rbi +0 -403
  935. data/rbi/lib/modern_treasury/models/external_account_complete_verification_params.rbi +0 -28
  936. data/rbi/lib/modern_treasury/models/external_account_create_params.rbi +0 -986
  937. data/rbi/lib/modern_treasury/models/external_account_delete_params.rbi +0 -19
  938. data/rbi/lib/modern_treasury/models/external_account_retrieve_params.rbi +0 -19
  939. data/rbi/lib/modern_treasury/models/external_account_type.rbi +0 -26
  940. data/rbi/lib/modern_treasury/models/external_account_update_params.rbi +0 -170
  941. data/rbi/lib/modern_treasury/models/external_account_verify_params.rbi +0 -161
  942. data/rbi/lib/modern_treasury/models/foreign_exchange_quote_retrieve_params.rbi +0 -19
  943. data/rbi/lib/modern_treasury/models/incoming_payment_detail.rbi +0 -436
  944. data/rbi/lib/modern_treasury/models/incoming_payment_detail_create_async_params.rbi +0 -170
  945. data/rbi/lib/modern_treasury/models/incoming_payment_detail_list_params.rbi +0 -169
  946. data/rbi/lib/modern_treasury/models/incoming_payment_detail_retrieve_params.rbi +0 -19
  947. data/rbi/lib/modern_treasury/models/internal_account.rbi +0 -294
  948. data/rbi/lib/modern_treasury/models/internal_account_create_params.rbi +0 -193
  949. data/rbi/lib/modern_treasury/models/internal_account_list_params.rbi +0 -154
  950. data/rbi/lib/modern_treasury/models/internal_account_retrieve_params.rbi +0 -19
  951. data/rbi/lib/modern_treasury/models/internal_accounts/balance_report_create_params.rbi +0 -231
  952. data/rbi/lib/modern_treasury/models/internal_accounts/balance_report_delete_params.rbi +0 -29
  953. data/rbi/lib/modern_treasury/models/internal_accounts/balance_report_retrieve_params.rbi +0 -29
  954. data/rbi/lib/modern_treasury/models/invoice.rbi +0 -634
  955. data/rbi/lib/modern_treasury/models/invoice_add_payment_order_params.rbi +0 -25
  956. data/rbi/lib/modern_treasury/models/invoice_retrieve_params.rbi +0 -19
  957. data/rbi/lib/modern_treasury/models/invoices/line_item_delete_params.rbi +0 -27
  958. data/rbi/lib/modern_treasury/models/invoices/line_item_retrieve_params.rbi +0 -27
  959. data/rbi/lib/modern_treasury/models/ledger_account_balance_monitor.rbi +0 -438
  960. data/rbi/lib/modern_treasury/models/ledger_account_balance_monitor_delete_params.rbi +0 -19
  961. data/rbi/lib/modern_treasury/models/ledger_account_balance_monitor_retrieve_params.rbi +0 -19
  962. data/rbi/lib/modern_treasury/models/ledger_account_category_add_ledger_account_params.rbi +0 -25
  963. data/rbi/lib/modern_treasury/models/ledger_account_category_add_nested_category_params.rbi +0 -25
  964. data/rbi/lib/modern_treasury/models/ledger_account_category_delete_params.rbi +0 -19
  965. data/rbi/lib/modern_treasury/models/ledger_account_category_remove_ledger_account_params.rbi +0 -25
  966. data/rbi/lib/modern_treasury/models/ledger_account_category_remove_nested_category_params.rbi +0 -25
  967. data/rbi/lib/modern_treasury/models/ledger_account_category_retrieve_params.rbi +0 -73
  968. data/rbi/lib/modern_treasury/models/ledger_account_create_params.rbi +0 -142
  969. data/rbi/lib/modern_treasury/models/ledger_account_delete_params.rbi +0 -19
  970. data/rbi/lib/modern_treasury/models/ledger_account_settlement_retrieve_params.rbi +0 -19
  971. data/rbi/lib/modern_treasury/models/ledger_account_settlement_update_params.rbi +0 -76
  972. data/rbi/lib/modern_treasury/models/ledger_account_settlements/account_entry_delete_params.rbi +0 -35
  973. data/rbi/lib/modern_treasury/models/ledger_account_settlements/account_entry_update_params.rbi +0 -35
  974. data/rbi/lib/modern_treasury/models/ledger_account_statement_retrieve_params.rbi +0 -19
  975. data/rbi/lib/modern_treasury/models/ledger_delete_params.rbi +0 -19
  976. data/rbi/lib/modern_treasury/models/ledger_entry.rbi +0 -410
  977. data/rbi/lib/modern_treasury/models/ledger_entry_list_params.rbi +0 -334
  978. data/rbi/lib/modern_treasury/models/ledger_entry_retrieve_params.rbi +0 -30
  979. data/rbi/lib/modern_treasury/models/ledger_event_handler.rbi +0 -226
  980. data/rbi/lib/modern_treasury/models/ledger_event_handler_create_params.rbi +0 -207
  981. data/rbi/lib/modern_treasury/models/ledger_event_handler_delete_params.rbi +0 -19
  982. data/rbi/lib/modern_treasury/models/ledger_event_handler_retrieve_params.rbi +0 -19
  983. data/rbi/lib/modern_treasury/models/ledger_event_handler_variable.rbi +0 -55
  984. data/rbi/lib/modern_treasury/models/ledger_retrieve_params.rbi +0 -19
  985. data/rbi/lib/modern_treasury/models/ledger_transaction.rbi +0 -203
  986. data/rbi/lib/modern_treasury/models/ledger_transaction_create_params.rbi +0 -283
  987. data/rbi/lib/modern_treasury/models/ledger_transaction_create_reversal_params.rbi +0 -192
  988. data/rbi/lib/modern_treasury/models/ledger_transaction_list_params.rbi +0 -365
  989. data/rbi/lib/modern_treasury/models/ledger_transaction_retrieve_params.rbi +0 -19
  990. data/rbi/lib/modern_treasury/models/ledger_transaction_update_params.rbi +0 -274
  991. data/rbi/lib/modern_treasury/models/ledgerable_event_retrieve_params.rbi +0 -19
  992. data/rbi/lib/modern_treasury/models/legal_entity.rbi +0 -562
  993. data/rbi/lib/modern_treasury/models/legal_entity_association.rbi +0 -901
  994. data/rbi/lib/modern_treasury/models/legal_entity_association_create_params.rbi +0 -915
  995. data/rbi/lib/modern_treasury/models/legal_entity_create_params.rbi +0 -1460
  996. data/rbi/lib/modern_treasury/models/legal_entity_industry_classification.rbi +0 -136
  997. data/rbi/lib/modern_treasury/models/legal_entity_list_params.rbi +0 -90
  998. data/rbi/lib/modern_treasury/models/legal_entity_retrieve_params.rbi +0 -19
  999. data/rbi/lib/modern_treasury/models/legal_entity_update_params.rbi +0 -509
  1000. data/rbi/lib/modern_treasury/models/line_item.rbi +0 -156
  1001. data/rbi/lib/modern_treasury/models/line_item_list_params.rbi +0 -62
  1002. data/rbi/lib/modern_treasury/models/line_item_retrieve_params.rbi +0 -55
  1003. data/rbi/lib/modern_treasury/models/line_item_update_params.rbi +0 -65
  1004. data/rbi/lib/modern_treasury/models/paper_item_retrieve_params.rbi +0 -19
  1005. data/rbi/lib/modern_treasury/models/payment_flow.rbi +0 -280
  1006. data/rbi/lib/modern_treasury/models/payment_flow_create_params.rbi +0 -95
  1007. data/rbi/lib/modern_treasury/models/payment_flow_retrieve_params.rbi +0 -19
  1008. data/rbi/lib/modern_treasury/models/payment_flow_update_params.rbi +0 -50
  1009. data/rbi/lib/modern_treasury/models/payment_order.rbi +0 -1145
  1010. data/rbi/lib/modern_treasury/models/payment_order_create_async_params.rbi +0 -1984
  1011. data/rbi/lib/modern_treasury/models/payment_order_create_params.rbi +0 -2083
  1012. data/rbi/lib/modern_treasury/models/payment_order_list_params.rbi +0 -276
  1013. data/rbi/lib/modern_treasury/models/payment_order_retrieve_params.rbi +0 -19
  1014. data/rbi/lib/modern_treasury/models/payment_order_subtype.rbi +0 -50
  1015. data/rbi/lib/modern_treasury/models/payment_order_type.rbi +0 -49
  1016. data/rbi/lib/modern_treasury/models/payment_order_update_params.rbi +0 -1642
  1017. data/rbi/lib/modern_treasury/models/payment_orders/reversal.rbi +0 -140
  1018. data/rbi/lib/modern_treasury/models/payment_orders/reversal_retrieve_params.rbi +0 -27
  1019. data/rbi/lib/modern_treasury/models/payment_reference.rbi +0 -378
  1020. data/rbi/lib/modern_treasury/models/payment_reference_list_params.rbi +0 -105
  1021. data/rbi/lib/modern_treasury/models/payment_reference_retireve_params.rbi +0 -19
  1022. data/rbi/lib/modern_treasury/models/payment_reference_retrieve_params.rbi +0 -19
  1023. data/rbi/lib/modern_treasury/models/reconciliation_rule.rbi +0 -160
  1024. data/rbi/lib/modern_treasury/models/return_create_params.rbi +0 -164
  1025. data/rbi/lib/modern_treasury/models/return_list_params.rbi +0 -108
  1026. data/rbi/lib/modern_treasury/models/return_object.rbi +0 -799
  1027. data/rbi/lib/modern_treasury/models/return_retrieve_params.rbi +0 -19
  1028. data/rbi/lib/modern_treasury/models/routing_detail.rbi +0 -289
  1029. data/rbi/lib/modern_treasury/models/routing_detail_create_params.rbi +0 -209
  1030. data/rbi/lib/modern_treasury/models/routing_detail_delete_params.rbi +0 -53
  1031. data/rbi/lib/modern_treasury/models/routing_detail_list_params.rbi +0 -46
  1032. data/rbi/lib/modern_treasury/models/routing_detail_retrieve_params.rbi +0 -38
  1033. data/rbi/lib/modern_treasury/models/routing_number_lookup_request.rbi +0 -295
  1034. data/rbi/lib/modern_treasury/models/transaction.rbi +0 -388
  1035. data/rbi/lib/modern_treasury/models/transaction_create_params.rbi +0 -158
  1036. data/rbi/lib/modern_treasury/models/transaction_delete_params.rbi +0 -19
  1037. data/rbi/lib/modern_treasury/models/transaction_direction.rbi +0 -19
  1038. data/rbi/lib/modern_treasury/models/transaction_retrieve_params.rbi +0 -19
  1039. data/rbi/lib/modern_treasury/models/transactions/line_item_delete_params.rbi +0 -21
  1040. data/rbi/lib/modern_treasury/models/transactions/line_item_list_params.rbi +0 -89
  1041. data/rbi/lib/modern_treasury/models/transactions/line_item_retrieve_params.rbi +0 -21
  1042. data/rbi/lib/modern_treasury/models/transactions/transaction_line_item.rbi +0 -213
  1043. data/rbi/lib/modern_treasury/models/validation_validate_routing_number_params.rbi +0 -176
  1044. data/rbi/lib/modern_treasury/models/virtual_account_create_params.rbi +0 -769
  1045. data/rbi/lib/modern_treasury/models/virtual_account_delete_params.rbi +0 -19
  1046. data/rbi/lib/modern_treasury/models/virtual_account_retrieve_params.rbi +0 -19
  1047. data/rbi/lib/modern_treasury/models/wealth_and_employment_details.rbi +0 -401
  1048. data/rbi/lib/modern_treasury/resources/bulk_requests.rbi +0 -89
  1049. /data/rbi/{lib/modern_treasury → modern_treasury}/version.rbi +0 -0
@@ -0,0 +1,3527 @@
1
+ # typed: strong
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ class CounterpartyCreateParams < ModernTreasury::Internal::Type::BaseModel
6
+ extend ModernTreasury::Internal::Type::RequestParameters::Converter
7
+ include ModernTreasury::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ ModernTreasury::CounterpartyCreateParams,
13
+ ModernTreasury::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # A human friendly name for this counterparty.
18
+ sig { returns(T.nilable(String)) }
19
+ attr_accessor :name
20
+
21
+ sig do
22
+ returns(T.nilable(ModernTreasury::CounterpartyCreateParams::Accounting))
23
+ end
24
+ attr_reader :accounting
25
+
26
+ sig do
27
+ params(
28
+ accounting:
29
+ ModernTreasury::CounterpartyCreateParams::Accounting::OrHash
30
+ ).void
31
+ end
32
+ attr_writer :accounting
33
+
34
+ # The accounts for this counterparty.
35
+ sig do
36
+ returns(
37
+ T.nilable(T::Array[ModernTreasury::CounterpartyCreateParams::Account])
38
+ )
39
+ end
40
+ attr_reader :accounts
41
+
42
+ sig do
43
+ params(
44
+ accounts:
45
+ T::Array[ModernTreasury::CounterpartyCreateParams::Account::OrHash]
46
+ ).void
47
+ end
48
+ attr_writer :accounts
49
+
50
+ # The counterparty's email.
51
+ sig { returns(T.nilable(String)) }
52
+ attr_accessor :email
53
+
54
+ # An optional type to auto-sync the counterparty to your ledger. Either `customer`
55
+ # or `vendor`.
56
+ sig do
57
+ returns(
58
+ T.nilable(
59
+ ModernTreasury::CounterpartyCreateParams::LedgerType::OrSymbol
60
+ )
61
+ )
62
+ end
63
+ attr_reader :ledger_type
64
+
65
+ sig do
66
+ params(
67
+ ledger_type:
68
+ ModernTreasury::CounterpartyCreateParams::LedgerType::OrSymbol
69
+ ).void
70
+ end
71
+ attr_writer :ledger_type
72
+
73
+ sig do
74
+ returns(
75
+ T.nilable(ModernTreasury::CounterpartyCreateParams::LegalEntity)
76
+ )
77
+ end
78
+ attr_reader :legal_entity
79
+
80
+ sig do
81
+ params(
82
+ legal_entity:
83
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::OrHash
84
+ ).void
85
+ end
86
+ attr_writer :legal_entity
87
+
88
+ # The id of the legal entity.
89
+ sig { returns(T.nilable(String)) }
90
+ attr_accessor :legal_entity_id
91
+
92
+ # Additional data represented as key-value pairs. Both the key and value must be
93
+ # strings.
94
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
95
+ attr_reader :metadata
96
+
97
+ sig { params(metadata: T::Hash[Symbol, String]).void }
98
+ attr_writer :metadata
99
+
100
+ # Send an email to the counterparty whenever an associated payment order is sent
101
+ # to the bank.
102
+ sig { returns(T.nilable(T::Boolean)) }
103
+ attr_reader :send_remittance_advice
104
+
105
+ sig { params(send_remittance_advice: T::Boolean).void }
106
+ attr_writer :send_remittance_advice
107
+
108
+ # Either a valid SSN or EIN.
109
+ sig { returns(T.nilable(String)) }
110
+ attr_reader :taxpayer_identifier
111
+
112
+ sig { params(taxpayer_identifier: String).void }
113
+ attr_writer :taxpayer_identifier
114
+
115
+ # The verification status of the counterparty.
116
+ sig do
117
+ returns(
118
+ T.nilable(
119
+ ModernTreasury::CounterpartyCreateParams::VerificationStatus::OrSymbol
120
+ )
121
+ )
122
+ end
123
+ attr_reader :verification_status
124
+
125
+ sig do
126
+ params(
127
+ verification_status:
128
+ ModernTreasury::CounterpartyCreateParams::VerificationStatus::OrSymbol
129
+ ).void
130
+ end
131
+ attr_writer :verification_status
132
+
133
+ sig do
134
+ params(
135
+ name: T.nilable(String),
136
+ accounting:
137
+ ModernTreasury::CounterpartyCreateParams::Accounting::OrHash,
138
+ accounts:
139
+ T::Array[ModernTreasury::CounterpartyCreateParams::Account::OrHash],
140
+ email: T.nilable(String),
141
+ ledger_type:
142
+ ModernTreasury::CounterpartyCreateParams::LedgerType::OrSymbol,
143
+ legal_entity:
144
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::OrHash,
145
+ legal_entity_id: T.nilable(String),
146
+ metadata: T::Hash[Symbol, String],
147
+ send_remittance_advice: T::Boolean,
148
+ taxpayer_identifier: String,
149
+ verification_status:
150
+ ModernTreasury::CounterpartyCreateParams::VerificationStatus::OrSymbol,
151
+ request_options: ModernTreasury::RequestOptions::OrHash
152
+ ).returns(T.attached_class)
153
+ end
154
+ def self.new(
155
+ # A human friendly name for this counterparty.
156
+ name:,
157
+ accounting: nil,
158
+ # The accounts for this counterparty.
159
+ accounts: nil,
160
+ # The counterparty's email.
161
+ email: nil,
162
+ # An optional type to auto-sync the counterparty to your ledger. Either `customer`
163
+ # or `vendor`.
164
+ ledger_type: nil,
165
+ legal_entity: nil,
166
+ # The id of the legal entity.
167
+ legal_entity_id: nil,
168
+ # Additional data represented as key-value pairs. Both the key and value must be
169
+ # strings.
170
+ metadata: nil,
171
+ # Send an email to the counterparty whenever an associated payment order is sent
172
+ # to the bank.
173
+ send_remittance_advice: nil,
174
+ # Either a valid SSN or EIN.
175
+ taxpayer_identifier: nil,
176
+ # The verification status of the counterparty.
177
+ verification_status: nil,
178
+ request_options: {}
179
+ )
180
+ end
181
+
182
+ sig do
183
+ override.returns(
184
+ {
185
+ name: T.nilable(String),
186
+ accounting: ModernTreasury::CounterpartyCreateParams::Accounting,
187
+ accounts:
188
+ T::Array[ModernTreasury::CounterpartyCreateParams::Account],
189
+ email: T.nilable(String),
190
+ ledger_type:
191
+ ModernTreasury::CounterpartyCreateParams::LedgerType::OrSymbol,
192
+ legal_entity: ModernTreasury::CounterpartyCreateParams::LegalEntity,
193
+ legal_entity_id: T.nilable(String),
194
+ metadata: T::Hash[Symbol, String],
195
+ send_remittance_advice: T::Boolean,
196
+ taxpayer_identifier: String,
197
+ verification_status:
198
+ ModernTreasury::CounterpartyCreateParams::VerificationStatus::OrSymbol,
199
+ request_options: ModernTreasury::RequestOptions
200
+ }
201
+ )
202
+ end
203
+ def to_hash
204
+ end
205
+
206
+ class Accounting < ModernTreasury::Internal::Type::BaseModel
207
+ OrHash =
208
+ T.type_alias do
209
+ T.any(
210
+ ModernTreasury::CounterpartyCreateParams::Accounting,
211
+ ModernTreasury::Internal::AnyHash
212
+ )
213
+ end
214
+
215
+ # An optional type to auto-sync the counterparty to your ledger. Either `customer`
216
+ # or `vendor`.
217
+ sig do
218
+ returns(
219
+ T.nilable(
220
+ ModernTreasury::CounterpartyCreateParams::Accounting::Type::OrSymbol
221
+ )
222
+ )
223
+ end
224
+ attr_reader :type
225
+
226
+ sig do
227
+ params(
228
+ type:
229
+ ModernTreasury::CounterpartyCreateParams::Accounting::Type::OrSymbol
230
+ ).void
231
+ end
232
+ attr_writer :type
233
+
234
+ sig do
235
+ params(
236
+ type:
237
+ ModernTreasury::CounterpartyCreateParams::Accounting::Type::OrSymbol
238
+ ).returns(T.attached_class)
239
+ end
240
+ def self.new(
241
+ # An optional type to auto-sync the counterparty to your ledger. Either `customer`
242
+ # or `vendor`.
243
+ type: nil
244
+ )
245
+ end
246
+
247
+ sig do
248
+ override.returns(
249
+ {
250
+ type:
251
+ ModernTreasury::CounterpartyCreateParams::Accounting::Type::OrSymbol
252
+ }
253
+ )
254
+ end
255
+ def to_hash
256
+ end
257
+
258
+ # An optional type to auto-sync the counterparty to your ledger. Either `customer`
259
+ # or `vendor`.
260
+ module Type
261
+ extend ModernTreasury::Internal::Type::Enum
262
+
263
+ TaggedSymbol =
264
+ T.type_alias do
265
+ T.all(
266
+ Symbol,
267
+ ModernTreasury::CounterpartyCreateParams::Accounting::Type
268
+ )
269
+ end
270
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
271
+
272
+ CUSTOMER =
273
+ T.let(
274
+ :customer,
275
+ ModernTreasury::CounterpartyCreateParams::Accounting::Type::TaggedSymbol
276
+ )
277
+ VENDOR =
278
+ T.let(
279
+ :vendor,
280
+ ModernTreasury::CounterpartyCreateParams::Accounting::Type::TaggedSymbol
281
+ )
282
+
283
+ sig do
284
+ override.returns(
285
+ T::Array[
286
+ ModernTreasury::CounterpartyCreateParams::Accounting::Type::TaggedSymbol
287
+ ]
288
+ )
289
+ end
290
+ def self.values
291
+ end
292
+ end
293
+ end
294
+
295
+ class Account < ModernTreasury::Internal::Type::BaseModel
296
+ OrHash =
297
+ T.type_alias do
298
+ T.any(
299
+ ModernTreasury::CounterpartyCreateParams::Account,
300
+ ModernTreasury::Internal::AnyHash
301
+ )
302
+ end
303
+
304
+ sig do
305
+ returns(
306
+ T.nilable(
307
+ T::Array[
308
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail
309
+ ]
310
+ )
311
+ )
312
+ end
313
+ attr_reader :account_details
314
+
315
+ sig do
316
+ params(
317
+ account_details:
318
+ T::Array[
319
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::OrHash
320
+ ]
321
+ ).void
322
+ end
323
+ attr_writer :account_details
324
+
325
+ # Can be `checking`, `savings` or `other`.
326
+ sig do
327
+ returns(T.nilable(ModernTreasury::ExternalAccountType::OrSymbol))
328
+ end
329
+ attr_reader :account_type
330
+
331
+ sig do
332
+ params(
333
+ account_type: ModernTreasury::ExternalAccountType::OrSymbol
334
+ ).void
335
+ end
336
+ attr_writer :account_type
337
+
338
+ sig do
339
+ returns(
340
+ T.nilable(
341
+ T::Array[
342
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail
343
+ ]
344
+ )
345
+ )
346
+ end
347
+ attr_reader :contact_details
348
+
349
+ sig do
350
+ params(
351
+ contact_details:
352
+ T::Array[
353
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::OrHash
354
+ ]
355
+ ).void
356
+ end
357
+ attr_writer :contact_details
358
+
359
+ # Specifies a ledger account object that will be created with the external
360
+ # account. The resulting ledger account is linked to the external account for
361
+ # auto-ledgering Payment objects. See
362
+ # https://docs.moderntreasury.com/docs/linking-to-other-modern-treasury-objects
363
+ # for more details.
364
+ sig do
365
+ returns(
366
+ T.nilable(
367
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount
368
+ )
369
+ )
370
+ end
371
+ attr_reader :ledger_account
372
+
373
+ sig do
374
+ params(
375
+ ledger_account:
376
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::OrHash
377
+ ).void
378
+ end
379
+ attr_writer :ledger_account
380
+
381
+ # Additional data represented as key-value pairs. Both the key and value must be
382
+ # strings.
383
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
384
+ attr_reader :metadata
385
+
386
+ sig { params(metadata: T::Hash[Symbol, String]).void }
387
+ attr_writer :metadata
388
+
389
+ # A nickname for the external account. This is only for internal usage and won't
390
+ # affect any payments
391
+ sig { returns(T.nilable(String)) }
392
+ attr_accessor :name
393
+
394
+ # Required if receiving wire payments.
395
+ sig do
396
+ returns(
397
+ T.nilable(
398
+ ModernTreasury::CounterpartyCreateParams::Account::PartyAddress
399
+ )
400
+ )
401
+ end
402
+ attr_reader :party_address
403
+
404
+ sig do
405
+ params(
406
+ party_address:
407
+ ModernTreasury::CounterpartyCreateParams::Account::PartyAddress::OrHash
408
+ ).void
409
+ end
410
+ attr_writer :party_address
411
+
412
+ sig { returns(T.nilable(String)) }
413
+ attr_reader :party_identifier
414
+
415
+ sig { params(party_identifier: String).void }
416
+ attr_writer :party_identifier
417
+
418
+ # If this value isn't provided, it will be inherited from the counterparty's name.
419
+ sig { returns(T.nilable(String)) }
420
+ attr_reader :party_name
421
+
422
+ sig { params(party_name: String).void }
423
+ attr_writer :party_name
424
+
425
+ # Either `individual` or `business`.
426
+ sig do
427
+ returns(
428
+ T.nilable(
429
+ ModernTreasury::CounterpartyCreateParams::Account::PartyType::OrSymbol
430
+ )
431
+ )
432
+ end
433
+ attr_accessor :party_type
434
+
435
+ # If you've enabled the Modern Treasury + Plaid integration in your Plaid account,
436
+ # you can pass the processor token in this field.
437
+ sig { returns(T.nilable(String)) }
438
+ attr_reader :plaid_processor_token
439
+
440
+ sig { params(plaid_processor_token: String).void }
441
+ attr_writer :plaid_processor_token
442
+
443
+ sig do
444
+ returns(
445
+ T.nilable(
446
+ T::Array[
447
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail
448
+ ]
449
+ )
450
+ )
451
+ end
452
+ attr_reader :routing_details
453
+
454
+ sig do
455
+ params(
456
+ routing_details:
457
+ T::Array[
458
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::OrHash
459
+ ]
460
+ ).void
461
+ end
462
+ attr_writer :routing_details
463
+
464
+ sig do
465
+ params(
466
+ account_details:
467
+ T::Array[
468
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::OrHash
469
+ ],
470
+ account_type: ModernTreasury::ExternalAccountType::OrSymbol,
471
+ contact_details:
472
+ T::Array[
473
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::OrHash
474
+ ],
475
+ ledger_account:
476
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::OrHash,
477
+ metadata: T::Hash[Symbol, String],
478
+ name: T.nilable(String),
479
+ party_address:
480
+ ModernTreasury::CounterpartyCreateParams::Account::PartyAddress::OrHash,
481
+ party_identifier: String,
482
+ party_name: String,
483
+ party_type:
484
+ T.nilable(
485
+ ModernTreasury::CounterpartyCreateParams::Account::PartyType::OrSymbol
486
+ ),
487
+ plaid_processor_token: String,
488
+ routing_details:
489
+ T::Array[
490
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::OrHash
491
+ ]
492
+ ).returns(T.attached_class)
493
+ end
494
+ def self.new(
495
+ account_details: nil,
496
+ # Can be `checking`, `savings` or `other`.
497
+ account_type: nil,
498
+ contact_details: nil,
499
+ # Specifies a ledger account object that will be created with the external
500
+ # account. The resulting ledger account is linked to the external account for
501
+ # auto-ledgering Payment objects. See
502
+ # https://docs.moderntreasury.com/docs/linking-to-other-modern-treasury-objects
503
+ # for more details.
504
+ ledger_account: nil,
505
+ # Additional data represented as key-value pairs. Both the key and value must be
506
+ # strings.
507
+ metadata: nil,
508
+ # A nickname for the external account. This is only for internal usage and won't
509
+ # affect any payments
510
+ name: nil,
511
+ # Required if receiving wire payments.
512
+ party_address: nil,
513
+ party_identifier: nil,
514
+ # If this value isn't provided, it will be inherited from the counterparty's name.
515
+ party_name: nil,
516
+ # Either `individual` or `business`.
517
+ party_type: nil,
518
+ # If you've enabled the Modern Treasury + Plaid integration in your Plaid account,
519
+ # you can pass the processor token in this field.
520
+ plaid_processor_token: nil,
521
+ routing_details: nil
522
+ )
523
+ end
524
+
525
+ sig do
526
+ override.returns(
527
+ {
528
+ account_details:
529
+ T::Array[
530
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail
531
+ ],
532
+ account_type: ModernTreasury::ExternalAccountType::OrSymbol,
533
+ contact_details:
534
+ T::Array[
535
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail
536
+ ],
537
+ ledger_account:
538
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount,
539
+ metadata: T::Hash[Symbol, String],
540
+ name: T.nilable(String),
541
+ party_address:
542
+ ModernTreasury::CounterpartyCreateParams::Account::PartyAddress,
543
+ party_identifier: String,
544
+ party_name: String,
545
+ party_type:
546
+ T.nilable(
547
+ ModernTreasury::CounterpartyCreateParams::Account::PartyType::OrSymbol
548
+ ),
549
+ plaid_processor_token: String,
550
+ routing_details:
551
+ T::Array[
552
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail
553
+ ]
554
+ }
555
+ )
556
+ end
557
+ def to_hash
558
+ end
559
+
560
+ class AccountDetail < ModernTreasury::Internal::Type::BaseModel
561
+ OrHash =
562
+ T.type_alias do
563
+ T.any(
564
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail,
565
+ ModernTreasury::Internal::AnyHash
566
+ )
567
+ end
568
+
569
+ sig { returns(String) }
570
+ attr_accessor :account_number
571
+
572
+ sig do
573
+ returns(
574
+ T.nilable(
575
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::OrSymbol
576
+ )
577
+ )
578
+ end
579
+ attr_reader :account_number_type
580
+
581
+ sig do
582
+ params(
583
+ account_number_type:
584
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::OrSymbol
585
+ ).void
586
+ end
587
+ attr_writer :account_number_type
588
+
589
+ sig do
590
+ params(
591
+ account_number: String,
592
+ account_number_type:
593
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::OrSymbol
594
+ ).returns(T.attached_class)
595
+ end
596
+ def self.new(account_number:, account_number_type: nil)
597
+ end
598
+
599
+ sig do
600
+ override.returns(
601
+ {
602
+ account_number: String,
603
+ account_number_type:
604
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::OrSymbol
605
+ }
606
+ )
607
+ end
608
+ def to_hash
609
+ end
610
+
611
+ module AccountNumberType
612
+ extend ModernTreasury::Internal::Type::Enum
613
+
614
+ TaggedSymbol =
615
+ T.type_alias do
616
+ T.all(
617
+ Symbol,
618
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType
619
+ )
620
+ end
621
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
622
+
623
+ AU_NUMBER =
624
+ T.let(
625
+ :au_number,
626
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
627
+ )
628
+ BASE_ADDRESS =
629
+ T.let(
630
+ :base_address,
631
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
632
+ )
633
+ CLABE =
634
+ T.let(
635
+ :clabe,
636
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
637
+ )
638
+ ETHEREUM_ADDRESS =
639
+ T.let(
640
+ :ethereum_address,
641
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
642
+ )
643
+ HK_NUMBER =
644
+ T.let(
645
+ :hk_number,
646
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
647
+ )
648
+ IBAN =
649
+ T.let(
650
+ :iban,
651
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
652
+ )
653
+ ID_NUMBER =
654
+ T.let(
655
+ :id_number,
656
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
657
+ )
658
+ NZ_NUMBER =
659
+ T.let(
660
+ :nz_number,
661
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
662
+ )
663
+ OTHER =
664
+ T.let(
665
+ :other,
666
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
667
+ )
668
+ PAN =
669
+ T.let(
670
+ :pan,
671
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
672
+ )
673
+ POLYGON_ADDRESS =
674
+ T.let(
675
+ :polygon_address,
676
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
677
+ )
678
+ SG_NUMBER =
679
+ T.let(
680
+ :sg_number,
681
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
682
+ )
683
+ SOLANA_ADDRESS =
684
+ T.let(
685
+ :solana_address,
686
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
687
+ )
688
+ WALLET_ADDRESS =
689
+ T.let(
690
+ :wallet_address,
691
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
692
+ )
693
+
694
+ sig do
695
+ override.returns(
696
+ T::Array[
697
+ ModernTreasury::CounterpartyCreateParams::Account::AccountDetail::AccountNumberType::TaggedSymbol
698
+ ]
699
+ )
700
+ end
701
+ def self.values
702
+ end
703
+ end
704
+ end
705
+
706
+ class ContactDetail < ModernTreasury::Internal::Type::BaseModel
707
+ OrHash =
708
+ T.type_alias do
709
+ T.any(
710
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail,
711
+ ModernTreasury::Internal::AnyHash
712
+ )
713
+ end
714
+
715
+ sig { returns(T.nilable(String)) }
716
+ attr_reader :contact_identifier
717
+
718
+ sig { params(contact_identifier: String).void }
719
+ attr_writer :contact_identifier
720
+
721
+ sig do
722
+ returns(
723
+ T.nilable(
724
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::ContactIdentifierType::OrSymbol
725
+ )
726
+ )
727
+ end
728
+ attr_reader :contact_identifier_type
729
+
730
+ sig do
731
+ params(
732
+ contact_identifier_type:
733
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::ContactIdentifierType::OrSymbol
734
+ ).void
735
+ end
736
+ attr_writer :contact_identifier_type
737
+
738
+ sig do
739
+ params(
740
+ contact_identifier: String,
741
+ contact_identifier_type:
742
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::ContactIdentifierType::OrSymbol
743
+ ).returns(T.attached_class)
744
+ end
745
+ def self.new(contact_identifier: nil, contact_identifier_type: nil)
746
+ end
747
+
748
+ sig do
749
+ override.returns(
750
+ {
751
+ contact_identifier: String,
752
+ contact_identifier_type:
753
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::ContactIdentifierType::OrSymbol
754
+ }
755
+ )
756
+ end
757
+ def to_hash
758
+ end
759
+
760
+ module ContactIdentifierType
761
+ extend ModernTreasury::Internal::Type::Enum
762
+
763
+ TaggedSymbol =
764
+ T.type_alias do
765
+ T.all(
766
+ Symbol,
767
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::ContactIdentifierType
768
+ )
769
+ end
770
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
771
+
772
+ EMAIL =
773
+ T.let(
774
+ :email,
775
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::ContactIdentifierType::TaggedSymbol
776
+ )
777
+ PHONE_NUMBER =
778
+ T.let(
779
+ :phone_number,
780
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::ContactIdentifierType::TaggedSymbol
781
+ )
782
+ WEBSITE =
783
+ T.let(
784
+ :website,
785
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::ContactIdentifierType::TaggedSymbol
786
+ )
787
+
788
+ sig do
789
+ override.returns(
790
+ T::Array[
791
+ ModernTreasury::CounterpartyCreateParams::Account::ContactDetail::ContactIdentifierType::TaggedSymbol
792
+ ]
793
+ )
794
+ end
795
+ def self.values
796
+ end
797
+ end
798
+ end
799
+
800
+ class LedgerAccount < ModernTreasury::Internal::Type::BaseModel
801
+ OrHash =
802
+ T.type_alias do
803
+ T.any(
804
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount,
805
+ ModernTreasury::Internal::AnyHash
806
+ )
807
+ end
808
+
809
+ # The currency of the ledger account.
810
+ sig { returns(String) }
811
+ attr_accessor :currency
812
+
813
+ # The id of the ledger that this account belongs to.
814
+ sig { returns(String) }
815
+ attr_accessor :ledger_id
816
+
817
+ # The name of the ledger account.
818
+ sig { returns(String) }
819
+ attr_accessor :name
820
+
821
+ # The normal balance of the ledger account.
822
+ sig { returns(ModernTreasury::TransactionDirection::OrSymbol) }
823
+ attr_accessor :normal_balance
824
+
825
+ # The currency exponent of the ledger account.
826
+ sig { returns(T.nilable(Integer)) }
827
+ attr_accessor :currency_exponent
828
+
829
+ # The description of the ledger account.
830
+ sig { returns(T.nilable(String)) }
831
+ attr_accessor :description
832
+
833
+ # The array of ledger account category ids that this ledger account should be a
834
+ # child of.
835
+ sig { returns(T.nilable(T::Array[String])) }
836
+ attr_reader :ledger_account_category_ids
837
+
838
+ sig { params(ledger_account_category_ids: T::Array[String]).void }
839
+ attr_writer :ledger_account_category_ids
840
+
841
+ # If the ledger account links to another object in Modern Treasury, the id will be
842
+ # populated here, otherwise null.
843
+ sig { returns(T.nilable(String)) }
844
+ attr_reader :ledgerable_id
845
+
846
+ sig { params(ledgerable_id: String).void }
847
+ attr_writer :ledgerable_id
848
+
849
+ # If the ledger account links to another object in Modern Treasury, the type will
850
+ # be populated here, otherwise null. The value is one of internal_account or
851
+ # external_account.
852
+ sig do
853
+ returns(
854
+ T.nilable(
855
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::LedgerableType::OrSymbol
856
+ )
857
+ )
858
+ end
859
+ attr_reader :ledgerable_type
860
+
861
+ sig do
862
+ params(
863
+ ledgerable_type:
864
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::LedgerableType::OrSymbol
865
+ ).void
866
+ end
867
+ attr_writer :ledgerable_type
868
+
869
+ # Additional data represented as key-value pairs. Both the key and value must be
870
+ # strings.
871
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
872
+ attr_reader :metadata
873
+
874
+ sig { params(metadata: T::Hash[Symbol, String]).void }
875
+ attr_writer :metadata
876
+
877
+ # Specifies a ledger account object that will be created with the external
878
+ # account. The resulting ledger account is linked to the external account for
879
+ # auto-ledgering Payment objects. See
880
+ # https://docs.moderntreasury.com/docs/linking-to-other-modern-treasury-objects
881
+ # for more details.
882
+ sig do
883
+ params(
884
+ currency: String,
885
+ ledger_id: String,
886
+ name: String,
887
+ normal_balance: ModernTreasury::TransactionDirection::OrSymbol,
888
+ currency_exponent: T.nilable(Integer),
889
+ description: T.nilable(String),
890
+ ledger_account_category_ids: T::Array[String],
891
+ ledgerable_id: String,
892
+ ledgerable_type:
893
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::LedgerableType::OrSymbol,
894
+ metadata: T::Hash[Symbol, String]
895
+ ).returns(T.attached_class)
896
+ end
897
+ def self.new(
898
+ # The currency of the ledger account.
899
+ currency:,
900
+ # The id of the ledger that this account belongs to.
901
+ ledger_id:,
902
+ # The name of the ledger account.
903
+ name:,
904
+ # The normal balance of the ledger account.
905
+ normal_balance:,
906
+ # The currency exponent of the ledger account.
907
+ currency_exponent: nil,
908
+ # The description of the ledger account.
909
+ description: nil,
910
+ # The array of ledger account category ids that this ledger account should be a
911
+ # child of.
912
+ ledger_account_category_ids: nil,
913
+ # If the ledger account links to another object in Modern Treasury, the id will be
914
+ # populated here, otherwise null.
915
+ ledgerable_id: nil,
916
+ # If the ledger account links to another object in Modern Treasury, the type will
917
+ # be populated here, otherwise null. The value is one of internal_account or
918
+ # external_account.
919
+ ledgerable_type: nil,
920
+ # Additional data represented as key-value pairs. Both the key and value must be
921
+ # strings.
922
+ metadata: nil
923
+ )
924
+ end
925
+
926
+ sig do
927
+ override.returns(
928
+ {
929
+ currency: String,
930
+ ledger_id: String,
931
+ name: String,
932
+ normal_balance: ModernTreasury::TransactionDirection::OrSymbol,
933
+ currency_exponent: T.nilable(Integer),
934
+ description: T.nilable(String),
935
+ ledger_account_category_ids: T::Array[String],
936
+ ledgerable_id: String,
937
+ ledgerable_type:
938
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::LedgerableType::OrSymbol,
939
+ metadata: T::Hash[Symbol, String]
940
+ }
941
+ )
942
+ end
943
+ def to_hash
944
+ end
945
+
946
+ # If the ledger account links to another object in Modern Treasury, the type will
947
+ # be populated here, otherwise null. The value is one of internal_account or
948
+ # external_account.
949
+ module LedgerableType
950
+ extend ModernTreasury::Internal::Type::Enum
951
+
952
+ TaggedSymbol =
953
+ T.type_alias do
954
+ T.all(
955
+ Symbol,
956
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::LedgerableType
957
+ )
958
+ end
959
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
960
+
961
+ COUNTERPARTY =
962
+ T.let(
963
+ :counterparty,
964
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::LedgerableType::TaggedSymbol
965
+ )
966
+ EXTERNAL_ACCOUNT =
967
+ T.let(
968
+ :external_account,
969
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::LedgerableType::TaggedSymbol
970
+ )
971
+ INTERNAL_ACCOUNT =
972
+ T.let(
973
+ :internal_account,
974
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::LedgerableType::TaggedSymbol
975
+ )
976
+ VIRTUAL_ACCOUNT =
977
+ T.let(
978
+ :virtual_account,
979
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::LedgerableType::TaggedSymbol
980
+ )
981
+
982
+ sig do
983
+ override.returns(
984
+ T::Array[
985
+ ModernTreasury::CounterpartyCreateParams::Account::LedgerAccount::LedgerableType::TaggedSymbol
986
+ ]
987
+ )
988
+ end
989
+ def self.values
990
+ end
991
+ end
992
+ end
993
+
994
+ class PartyAddress < ModernTreasury::Internal::Type::BaseModel
995
+ OrHash =
996
+ T.type_alias do
997
+ T.any(
998
+ ModernTreasury::CounterpartyCreateParams::Account::PartyAddress,
999
+ ModernTreasury::Internal::AnyHash
1000
+ )
1001
+ end
1002
+
1003
+ # Country code conforms to [ISO 3166-1 alpha-2]
1004
+ sig { returns(T.nilable(String)) }
1005
+ attr_accessor :country
1006
+
1007
+ sig { returns(T.nilable(String)) }
1008
+ attr_accessor :line1
1009
+
1010
+ sig { returns(T.nilable(String)) }
1011
+ attr_accessor :line2
1012
+
1013
+ # Locality or City.
1014
+ sig { returns(T.nilable(String)) }
1015
+ attr_accessor :locality
1016
+
1017
+ # The postal code of the address.
1018
+ sig { returns(T.nilable(String)) }
1019
+ attr_accessor :postal_code
1020
+
1021
+ # Region or State.
1022
+ sig { returns(T.nilable(String)) }
1023
+ attr_accessor :region
1024
+
1025
+ # Required if receiving wire payments.
1026
+ sig do
1027
+ params(
1028
+ country: T.nilable(String),
1029
+ line1: T.nilable(String),
1030
+ line2: T.nilable(String),
1031
+ locality: T.nilable(String),
1032
+ postal_code: T.nilable(String),
1033
+ region: T.nilable(String)
1034
+ ).returns(T.attached_class)
1035
+ end
1036
+ def self.new(
1037
+ # Country code conforms to [ISO 3166-1 alpha-2]
1038
+ country: nil,
1039
+ line1: nil,
1040
+ line2: nil,
1041
+ # Locality or City.
1042
+ locality: nil,
1043
+ # The postal code of the address.
1044
+ postal_code: nil,
1045
+ # Region or State.
1046
+ region: nil
1047
+ )
1048
+ end
1049
+
1050
+ sig do
1051
+ override.returns(
1052
+ {
1053
+ country: T.nilable(String),
1054
+ line1: T.nilable(String),
1055
+ line2: T.nilable(String),
1056
+ locality: T.nilable(String),
1057
+ postal_code: T.nilable(String),
1058
+ region: T.nilable(String)
1059
+ }
1060
+ )
1061
+ end
1062
+ def to_hash
1063
+ end
1064
+ end
1065
+
1066
+ # Either `individual` or `business`.
1067
+ module PartyType
1068
+ extend ModernTreasury::Internal::Type::Enum
1069
+
1070
+ TaggedSymbol =
1071
+ T.type_alias do
1072
+ T.all(
1073
+ Symbol,
1074
+ ModernTreasury::CounterpartyCreateParams::Account::PartyType
1075
+ )
1076
+ end
1077
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1078
+
1079
+ BUSINESS =
1080
+ T.let(
1081
+ :business,
1082
+ ModernTreasury::CounterpartyCreateParams::Account::PartyType::TaggedSymbol
1083
+ )
1084
+ INDIVIDUAL =
1085
+ T.let(
1086
+ :individual,
1087
+ ModernTreasury::CounterpartyCreateParams::Account::PartyType::TaggedSymbol
1088
+ )
1089
+
1090
+ sig do
1091
+ override.returns(
1092
+ T::Array[
1093
+ ModernTreasury::CounterpartyCreateParams::Account::PartyType::TaggedSymbol
1094
+ ]
1095
+ )
1096
+ end
1097
+ def self.values
1098
+ end
1099
+ end
1100
+
1101
+ class RoutingDetail < ModernTreasury::Internal::Type::BaseModel
1102
+ OrHash =
1103
+ T.type_alias do
1104
+ T.any(
1105
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail,
1106
+ ModernTreasury::Internal::AnyHash
1107
+ )
1108
+ end
1109
+
1110
+ sig { returns(String) }
1111
+ attr_accessor :routing_number
1112
+
1113
+ sig do
1114
+ returns(
1115
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::OrSymbol
1116
+ )
1117
+ end
1118
+ attr_accessor :routing_number_type
1119
+
1120
+ sig do
1121
+ returns(
1122
+ T.nilable(
1123
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::OrSymbol
1124
+ )
1125
+ )
1126
+ end
1127
+ attr_reader :payment_type
1128
+
1129
+ sig do
1130
+ params(
1131
+ payment_type:
1132
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::OrSymbol
1133
+ ).void
1134
+ end
1135
+ attr_writer :payment_type
1136
+
1137
+ sig do
1138
+ params(
1139
+ routing_number: String,
1140
+ routing_number_type:
1141
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::OrSymbol,
1142
+ payment_type:
1143
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::OrSymbol
1144
+ ).returns(T.attached_class)
1145
+ end
1146
+ def self.new(routing_number:, routing_number_type:, payment_type: nil)
1147
+ end
1148
+
1149
+ sig do
1150
+ override.returns(
1151
+ {
1152
+ routing_number: String,
1153
+ routing_number_type:
1154
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::OrSymbol,
1155
+ payment_type:
1156
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::OrSymbol
1157
+ }
1158
+ )
1159
+ end
1160
+ def to_hash
1161
+ end
1162
+
1163
+ module RoutingNumberType
1164
+ extend ModernTreasury::Internal::Type::Enum
1165
+
1166
+ TaggedSymbol =
1167
+ T.type_alias do
1168
+ T.all(
1169
+ Symbol,
1170
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType
1171
+ )
1172
+ end
1173
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1174
+
1175
+ ABA =
1176
+ T.let(
1177
+ :aba,
1178
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1179
+ )
1180
+ AU_BSB =
1181
+ T.let(
1182
+ :au_bsb,
1183
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1184
+ )
1185
+ BR_CODIGO =
1186
+ T.let(
1187
+ :br_codigo,
1188
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1189
+ )
1190
+ CA_CPA =
1191
+ T.let(
1192
+ :ca_cpa,
1193
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1194
+ )
1195
+ CHIPS =
1196
+ T.let(
1197
+ :chips,
1198
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1199
+ )
1200
+ CNAPS =
1201
+ T.let(
1202
+ :cnaps,
1203
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1204
+ )
1205
+ DK_INTERBANK_CLEARING_CODE =
1206
+ T.let(
1207
+ :dk_interbank_clearing_code,
1208
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1209
+ )
1210
+ GB_SORT_CODE =
1211
+ T.let(
1212
+ :gb_sort_code,
1213
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1214
+ )
1215
+ HK_INTERBANK_CLEARING_CODE =
1216
+ T.let(
1217
+ :hk_interbank_clearing_code,
1218
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1219
+ )
1220
+ HU_INTERBANK_CLEARING_CODE =
1221
+ T.let(
1222
+ :hu_interbank_clearing_code,
1223
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1224
+ )
1225
+ ID_SKNBI_CODE =
1226
+ T.let(
1227
+ :id_sknbi_code,
1228
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1229
+ )
1230
+ IN_IFSC =
1231
+ T.let(
1232
+ :in_ifsc,
1233
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1234
+ )
1235
+ JP_ZENGIN_CODE =
1236
+ T.let(
1237
+ :jp_zengin_code,
1238
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1239
+ )
1240
+ MY_BRANCH_CODE =
1241
+ T.let(
1242
+ :my_branch_code,
1243
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1244
+ )
1245
+ MX_BANK_IDENTIFIER =
1246
+ T.let(
1247
+ :mx_bank_identifier,
1248
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1249
+ )
1250
+ NZ_NATIONAL_CLEARING_CODE =
1251
+ T.let(
1252
+ :nz_national_clearing_code,
1253
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1254
+ )
1255
+ PL_NATIONAL_CLEARING_CODE =
1256
+ T.let(
1257
+ :pl_national_clearing_code,
1258
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1259
+ )
1260
+ SE_BANKGIRO_CLEARING_CODE =
1261
+ T.let(
1262
+ :se_bankgiro_clearing_code,
1263
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1264
+ )
1265
+ SG_INTERBANK_CLEARING_CODE =
1266
+ T.let(
1267
+ :sg_interbank_clearing_code,
1268
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1269
+ )
1270
+ SWIFT =
1271
+ T.let(
1272
+ :swift,
1273
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1274
+ )
1275
+ ZA_NATIONAL_CLEARING_CODE =
1276
+ T.let(
1277
+ :za_national_clearing_code,
1278
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1279
+ )
1280
+
1281
+ sig do
1282
+ override.returns(
1283
+ T::Array[
1284
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::RoutingNumberType::TaggedSymbol
1285
+ ]
1286
+ )
1287
+ end
1288
+ def self.values
1289
+ end
1290
+ end
1291
+
1292
+ module PaymentType
1293
+ extend ModernTreasury::Internal::Type::Enum
1294
+
1295
+ TaggedSymbol =
1296
+ T.type_alias do
1297
+ T.all(
1298
+ Symbol,
1299
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType
1300
+ )
1301
+ end
1302
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1303
+
1304
+ ACH =
1305
+ T.let(
1306
+ :ach,
1307
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1308
+ )
1309
+ AU_BECS =
1310
+ T.let(
1311
+ :au_becs,
1312
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1313
+ )
1314
+ BACS =
1315
+ T.let(
1316
+ :bacs,
1317
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1318
+ )
1319
+ BASE =
1320
+ T.let(
1321
+ :base,
1322
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1323
+ )
1324
+ BOOK =
1325
+ T.let(
1326
+ :book,
1327
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1328
+ )
1329
+ CARD =
1330
+ T.let(
1331
+ :card,
1332
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1333
+ )
1334
+ CHATS =
1335
+ T.let(
1336
+ :chats,
1337
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1338
+ )
1339
+ CHECK =
1340
+ T.let(
1341
+ :check,
1342
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1343
+ )
1344
+ CROSS_BORDER =
1345
+ T.let(
1346
+ :cross_border,
1347
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1348
+ )
1349
+ DK_NETS =
1350
+ T.let(
1351
+ :dk_nets,
1352
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1353
+ )
1354
+ EFT =
1355
+ T.let(
1356
+ :eft,
1357
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1358
+ )
1359
+ ETHEREUM =
1360
+ T.let(
1361
+ :ethereum,
1362
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1363
+ )
1364
+ HU_ICS =
1365
+ T.let(
1366
+ :hu_ics,
1367
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1368
+ )
1369
+ INTERAC =
1370
+ T.let(
1371
+ :interac,
1372
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1373
+ )
1374
+ MASAV =
1375
+ T.let(
1376
+ :masav,
1377
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1378
+ )
1379
+ MX_CCEN =
1380
+ T.let(
1381
+ :mx_ccen,
1382
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1383
+ )
1384
+ NEFT =
1385
+ T.let(
1386
+ :neft,
1387
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1388
+ )
1389
+ NICS =
1390
+ T.let(
1391
+ :nics,
1392
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1393
+ )
1394
+ NZ_BECS =
1395
+ T.let(
1396
+ :nz_becs,
1397
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1398
+ )
1399
+ PL_ELIXIR =
1400
+ T.let(
1401
+ :pl_elixir,
1402
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1403
+ )
1404
+ POLYGON =
1405
+ T.let(
1406
+ :polygon,
1407
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1408
+ )
1409
+ PROVXCHANGE =
1410
+ T.let(
1411
+ :provxchange,
1412
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1413
+ )
1414
+ RO_SENT =
1415
+ T.let(
1416
+ :ro_sent,
1417
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1418
+ )
1419
+ RTP =
1420
+ T.let(
1421
+ :rtp,
1422
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1423
+ )
1424
+ SE_BANKGIROT =
1425
+ T.let(
1426
+ :se_bankgirot,
1427
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1428
+ )
1429
+ SEN =
1430
+ T.let(
1431
+ :sen,
1432
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1433
+ )
1434
+ SEPA =
1435
+ T.let(
1436
+ :sepa,
1437
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1438
+ )
1439
+ SG_GIRO =
1440
+ T.let(
1441
+ :sg_giro,
1442
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1443
+ )
1444
+ SIC =
1445
+ T.let(
1446
+ :sic,
1447
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1448
+ )
1449
+ SIGNET =
1450
+ T.let(
1451
+ :signet,
1452
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1453
+ )
1454
+ SKNBI =
1455
+ T.let(
1456
+ :sknbi,
1457
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1458
+ )
1459
+ SOLANA =
1460
+ T.let(
1461
+ :solana,
1462
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1463
+ )
1464
+ WIRE =
1465
+ T.let(
1466
+ :wire,
1467
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1468
+ )
1469
+ ZENGIN =
1470
+ T.let(
1471
+ :zengin,
1472
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1473
+ )
1474
+
1475
+ sig do
1476
+ override.returns(
1477
+ T::Array[
1478
+ ModernTreasury::CounterpartyCreateParams::Account::RoutingDetail::PaymentType::TaggedSymbol
1479
+ ]
1480
+ )
1481
+ end
1482
+ def self.values
1483
+ end
1484
+ end
1485
+ end
1486
+ end
1487
+
1488
+ # An optional type to auto-sync the counterparty to your ledger. Either `customer`
1489
+ # or `vendor`.
1490
+ module LedgerType
1491
+ extend ModernTreasury::Internal::Type::Enum
1492
+
1493
+ TaggedSymbol =
1494
+ T.type_alias do
1495
+ T.all(Symbol, ModernTreasury::CounterpartyCreateParams::LedgerType)
1496
+ end
1497
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1498
+
1499
+ CUSTOMER =
1500
+ T.let(
1501
+ :customer,
1502
+ ModernTreasury::CounterpartyCreateParams::LedgerType::TaggedSymbol
1503
+ )
1504
+ VENDOR =
1505
+ T.let(
1506
+ :vendor,
1507
+ ModernTreasury::CounterpartyCreateParams::LedgerType::TaggedSymbol
1508
+ )
1509
+
1510
+ sig do
1511
+ override.returns(
1512
+ T::Array[
1513
+ ModernTreasury::CounterpartyCreateParams::LedgerType::TaggedSymbol
1514
+ ]
1515
+ )
1516
+ end
1517
+ def self.values
1518
+ end
1519
+ end
1520
+
1521
+ class LegalEntity < ModernTreasury::Internal::Type::BaseModel
1522
+ OrHash =
1523
+ T.type_alias do
1524
+ T.any(
1525
+ ModernTreasury::CounterpartyCreateParams::LegalEntity,
1526
+ ModernTreasury::Internal::AnyHash
1527
+ )
1528
+ end
1529
+
1530
+ # The type of legal entity.
1531
+ sig do
1532
+ returns(
1533
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityType::OrSymbol
1534
+ )
1535
+ end
1536
+ attr_accessor :legal_entity_type
1537
+
1538
+ # A list of addresses for the entity.
1539
+ sig do
1540
+ returns(
1541
+ T.nilable(
1542
+ T::Array[
1543
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address
1544
+ ]
1545
+ )
1546
+ )
1547
+ end
1548
+ attr_reader :addresses
1549
+
1550
+ sig do
1551
+ params(
1552
+ addresses:
1553
+ T::Array[
1554
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::OrHash
1555
+ ]
1556
+ ).void
1557
+ end
1558
+ attr_writer :addresses
1559
+
1560
+ sig { returns(T.nilable(ModernTreasury::BankSettings)) }
1561
+ attr_reader :bank_settings
1562
+
1563
+ sig do
1564
+ params(
1565
+ bank_settings: T.nilable(ModernTreasury::BankSettings::OrHash)
1566
+ ).void
1567
+ end
1568
+ attr_writer :bank_settings
1569
+
1570
+ # The business's legal business name.
1571
+ sig { returns(T.nilable(String)) }
1572
+ attr_accessor :business_name
1573
+
1574
+ # The country of citizenship for an individual.
1575
+ sig { returns(T.nilable(String)) }
1576
+ attr_accessor :citizenship_country
1577
+
1578
+ sig { returns(T.nilable(ModernTreasury::LegalEntityComplianceDetail)) }
1579
+ attr_reader :compliance_details
1580
+
1581
+ sig do
1582
+ params(
1583
+ compliance_details:
1584
+ T.nilable(ModernTreasury::LegalEntityComplianceDetail::OrHash)
1585
+ ).void
1586
+ end
1587
+ attr_writer :compliance_details
1588
+
1589
+ # A business's formation date (YYYY-MM-DD).
1590
+ sig { returns(T.nilable(Date)) }
1591
+ attr_accessor :date_formed
1592
+
1593
+ # An individual's date of birth (YYYY-MM-DD).
1594
+ sig { returns(T.nilable(Date)) }
1595
+ attr_accessor :date_of_birth
1596
+
1597
+ sig { returns(T.nilable(T::Array[String])) }
1598
+ attr_reader :doing_business_as_names
1599
+
1600
+ sig { params(doing_business_as_names: T::Array[String]).void }
1601
+ attr_writer :doing_business_as_names
1602
+
1603
+ # The entity's primary email.
1604
+ sig { returns(T.nilable(String)) }
1605
+ attr_accessor :email
1606
+
1607
+ # An individual's first name.
1608
+ sig { returns(T.nilable(String)) }
1609
+ attr_accessor :first_name
1610
+
1611
+ # A list of identifications for the legal entity.
1612
+ sig do
1613
+ returns(
1614
+ T.nilable(
1615
+ T::Array[
1616
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification
1617
+ ]
1618
+ )
1619
+ )
1620
+ end
1621
+ attr_reader :identifications
1622
+
1623
+ sig do
1624
+ params(
1625
+ identifications:
1626
+ T::Array[
1627
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::OrHash
1628
+ ]
1629
+ ).void
1630
+ end
1631
+ attr_writer :identifications
1632
+
1633
+ # A list of industry classifications for the legal entity.
1634
+ sig do
1635
+ returns(
1636
+ T.nilable(
1637
+ T::Array[ModernTreasury::LegalEntityIndustryClassification]
1638
+ )
1639
+ )
1640
+ end
1641
+ attr_reader :industry_classifications
1642
+
1643
+ sig do
1644
+ params(
1645
+ industry_classifications:
1646
+ T::Array[
1647
+ ModernTreasury::LegalEntityIndustryClassification::OrHash
1648
+ ]
1649
+ ).void
1650
+ end
1651
+ attr_writer :industry_classifications
1652
+
1653
+ # An individual's last name.
1654
+ sig { returns(T.nilable(String)) }
1655
+ attr_accessor :last_name
1656
+
1657
+ # The legal entity associations and its child legal entities.
1658
+ sig do
1659
+ returns(
1660
+ T.nilable(
1661
+ T::Array[
1662
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation
1663
+ ]
1664
+ )
1665
+ )
1666
+ end
1667
+ attr_accessor :legal_entity_associations
1668
+
1669
+ # The business's legal structure.
1670
+ sig do
1671
+ returns(
1672
+ T.nilable(
1673
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure::OrSymbol
1674
+ )
1675
+ )
1676
+ end
1677
+ attr_accessor :legal_structure
1678
+
1679
+ # Additional data represented as key-value pairs. Both the key and value must be
1680
+ # strings.
1681
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
1682
+ attr_reader :metadata
1683
+
1684
+ sig { params(metadata: T::Hash[Symbol, String]).void }
1685
+ attr_writer :metadata
1686
+
1687
+ # An individual's middle name.
1688
+ sig { returns(T.nilable(String)) }
1689
+ attr_accessor :middle_name
1690
+
1691
+ sig do
1692
+ returns(
1693
+ T.nilable(
1694
+ T::Array[
1695
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::PhoneNumber
1696
+ ]
1697
+ )
1698
+ )
1699
+ end
1700
+ attr_reader :phone_numbers
1701
+
1702
+ sig do
1703
+ params(
1704
+ phone_numbers:
1705
+ T::Array[
1706
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::PhoneNumber::OrHash
1707
+ ]
1708
+ ).void
1709
+ end
1710
+ attr_writer :phone_numbers
1711
+
1712
+ # Whether the individual is a politically exposed person.
1713
+ sig { returns(T.nilable(T::Boolean)) }
1714
+ attr_accessor :politically_exposed_person
1715
+
1716
+ # An individual's preferred name.
1717
+ sig { returns(T.nilable(String)) }
1718
+ attr_accessor :preferred_name
1719
+
1720
+ # An individual's prefix.
1721
+ sig { returns(T.nilable(String)) }
1722
+ attr_accessor :prefix
1723
+
1724
+ # The risk rating of the legal entity. One of low, medium, high.
1725
+ sig do
1726
+ returns(
1727
+ T.nilable(
1728
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::RiskRating::OrSymbol
1729
+ )
1730
+ )
1731
+ end
1732
+ attr_accessor :risk_rating
1733
+
1734
+ # An individual's suffix.
1735
+ sig { returns(T.nilable(String)) }
1736
+ attr_accessor :suffix
1737
+
1738
+ sig { returns(T.nilable(ModernTreasury::WealthAndEmploymentDetails)) }
1739
+ attr_reader :wealth_and_employment_details
1740
+
1741
+ sig do
1742
+ params(
1743
+ wealth_and_employment_details:
1744
+ T.nilable(ModernTreasury::WealthAndEmploymentDetails::OrHash)
1745
+ ).void
1746
+ end
1747
+ attr_writer :wealth_and_employment_details
1748
+
1749
+ # The entity's primary website URL.
1750
+ sig { returns(T.nilable(String)) }
1751
+ attr_accessor :website
1752
+
1753
+ sig do
1754
+ params(
1755
+ legal_entity_type:
1756
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityType::OrSymbol,
1757
+ addresses:
1758
+ T::Array[
1759
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::OrHash
1760
+ ],
1761
+ bank_settings: T.nilable(ModernTreasury::BankSettings::OrHash),
1762
+ business_name: T.nilable(String),
1763
+ citizenship_country: T.nilable(String),
1764
+ compliance_details:
1765
+ T.nilable(ModernTreasury::LegalEntityComplianceDetail::OrHash),
1766
+ date_formed: T.nilable(Date),
1767
+ date_of_birth: T.nilable(Date),
1768
+ doing_business_as_names: T::Array[String],
1769
+ email: T.nilable(String),
1770
+ first_name: T.nilable(String),
1771
+ identifications:
1772
+ T::Array[
1773
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::OrHash
1774
+ ],
1775
+ industry_classifications:
1776
+ T::Array[
1777
+ ModernTreasury::LegalEntityIndustryClassification::OrHash
1778
+ ],
1779
+ last_name: T.nilable(String),
1780
+ legal_entity_associations:
1781
+ T.nilable(
1782
+ T::Array[
1783
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::OrHash
1784
+ ]
1785
+ ),
1786
+ legal_structure:
1787
+ T.nilable(
1788
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure::OrSymbol
1789
+ ),
1790
+ metadata: T::Hash[Symbol, String],
1791
+ middle_name: T.nilable(String),
1792
+ phone_numbers:
1793
+ T::Array[
1794
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::PhoneNumber::OrHash
1795
+ ],
1796
+ politically_exposed_person: T.nilable(T::Boolean),
1797
+ preferred_name: T.nilable(String),
1798
+ prefix: T.nilable(String),
1799
+ risk_rating:
1800
+ T.nilable(
1801
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::RiskRating::OrSymbol
1802
+ ),
1803
+ suffix: T.nilable(String),
1804
+ wealth_and_employment_details:
1805
+ T.nilable(ModernTreasury::WealthAndEmploymentDetails::OrHash),
1806
+ website: T.nilable(String)
1807
+ ).returns(T.attached_class)
1808
+ end
1809
+ def self.new(
1810
+ # The type of legal entity.
1811
+ legal_entity_type:,
1812
+ # A list of addresses for the entity.
1813
+ addresses: nil,
1814
+ bank_settings: nil,
1815
+ # The business's legal business name.
1816
+ business_name: nil,
1817
+ # The country of citizenship for an individual.
1818
+ citizenship_country: nil,
1819
+ compliance_details: nil,
1820
+ # A business's formation date (YYYY-MM-DD).
1821
+ date_formed: nil,
1822
+ # An individual's date of birth (YYYY-MM-DD).
1823
+ date_of_birth: nil,
1824
+ doing_business_as_names: nil,
1825
+ # The entity's primary email.
1826
+ email: nil,
1827
+ # An individual's first name.
1828
+ first_name: nil,
1829
+ # A list of identifications for the legal entity.
1830
+ identifications: nil,
1831
+ # A list of industry classifications for the legal entity.
1832
+ industry_classifications: nil,
1833
+ # An individual's last name.
1834
+ last_name: nil,
1835
+ # The legal entity associations and its child legal entities.
1836
+ legal_entity_associations: nil,
1837
+ # The business's legal structure.
1838
+ legal_structure: nil,
1839
+ # Additional data represented as key-value pairs. Both the key and value must be
1840
+ # strings.
1841
+ metadata: nil,
1842
+ # An individual's middle name.
1843
+ middle_name: nil,
1844
+ phone_numbers: nil,
1845
+ # Whether the individual is a politically exposed person.
1846
+ politically_exposed_person: nil,
1847
+ # An individual's preferred name.
1848
+ preferred_name: nil,
1849
+ # An individual's prefix.
1850
+ prefix: nil,
1851
+ # The risk rating of the legal entity. One of low, medium, high.
1852
+ risk_rating: nil,
1853
+ # An individual's suffix.
1854
+ suffix: nil,
1855
+ wealth_and_employment_details: nil,
1856
+ # The entity's primary website URL.
1857
+ website: nil
1858
+ )
1859
+ end
1860
+
1861
+ sig do
1862
+ override.returns(
1863
+ {
1864
+ legal_entity_type:
1865
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityType::OrSymbol,
1866
+ addresses:
1867
+ T::Array[
1868
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address
1869
+ ],
1870
+ bank_settings: T.nilable(ModernTreasury::BankSettings),
1871
+ business_name: T.nilable(String),
1872
+ citizenship_country: T.nilable(String),
1873
+ compliance_details:
1874
+ T.nilable(ModernTreasury::LegalEntityComplianceDetail),
1875
+ date_formed: T.nilable(Date),
1876
+ date_of_birth: T.nilable(Date),
1877
+ doing_business_as_names: T::Array[String],
1878
+ email: T.nilable(String),
1879
+ first_name: T.nilable(String),
1880
+ identifications:
1881
+ T::Array[
1882
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification
1883
+ ],
1884
+ industry_classifications:
1885
+ T::Array[ModernTreasury::LegalEntityIndustryClassification],
1886
+ last_name: T.nilable(String),
1887
+ legal_entity_associations:
1888
+ T.nilable(
1889
+ T::Array[
1890
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation
1891
+ ]
1892
+ ),
1893
+ legal_structure:
1894
+ T.nilable(
1895
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure::OrSymbol
1896
+ ),
1897
+ metadata: T::Hash[Symbol, String],
1898
+ middle_name: T.nilable(String),
1899
+ phone_numbers:
1900
+ T::Array[
1901
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::PhoneNumber
1902
+ ],
1903
+ politically_exposed_person: T.nilable(T::Boolean),
1904
+ preferred_name: T.nilable(String),
1905
+ prefix: T.nilable(String),
1906
+ risk_rating:
1907
+ T.nilable(
1908
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::RiskRating::OrSymbol
1909
+ ),
1910
+ suffix: T.nilable(String),
1911
+ wealth_and_employment_details:
1912
+ T.nilable(ModernTreasury::WealthAndEmploymentDetails),
1913
+ website: T.nilable(String)
1914
+ }
1915
+ )
1916
+ end
1917
+ def to_hash
1918
+ end
1919
+
1920
+ # The type of legal entity.
1921
+ module LegalEntityType
1922
+ extend ModernTreasury::Internal::Type::Enum
1923
+
1924
+ TaggedSymbol =
1925
+ T.type_alias do
1926
+ T.all(
1927
+ Symbol,
1928
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityType
1929
+ )
1930
+ end
1931
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1932
+
1933
+ BUSINESS =
1934
+ T.let(
1935
+ :business,
1936
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityType::TaggedSymbol
1937
+ )
1938
+ INDIVIDUAL =
1939
+ T.let(
1940
+ :individual,
1941
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityType::TaggedSymbol
1942
+ )
1943
+
1944
+ sig do
1945
+ override.returns(
1946
+ T::Array[
1947
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityType::TaggedSymbol
1948
+ ]
1949
+ )
1950
+ end
1951
+ def self.values
1952
+ end
1953
+ end
1954
+
1955
+ class Address < ModernTreasury::Internal::Type::BaseModel
1956
+ OrHash =
1957
+ T.type_alias do
1958
+ T.any(
1959
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address,
1960
+ ModernTreasury::Internal::AnyHash
1961
+ )
1962
+ end
1963
+
1964
+ # Country code conforms to [ISO 3166-1 alpha-2]
1965
+ sig { returns(T.nilable(String)) }
1966
+ attr_accessor :country
1967
+
1968
+ sig { returns(T.nilable(String)) }
1969
+ attr_accessor :line1
1970
+
1971
+ # Locality or City.
1972
+ sig { returns(T.nilable(String)) }
1973
+ attr_accessor :locality
1974
+
1975
+ # The postal code of the address.
1976
+ sig { returns(T.nilable(String)) }
1977
+ attr_accessor :postal_code
1978
+
1979
+ # Region or State.
1980
+ sig { returns(T.nilable(String)) }
1981
+ attr_accessor :region
1982
+
1983
+ # The types of this address.
1984
+ sig do
1985
+ returns(
1986
+ T.nilable(
1987
+ T::Array[
1988
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType::OrSymbol
1989
+ ]
1990
+ )
1991
+ )
1992
+ end
1993
+ attr_reader :address_types
1994
+
1995
+ sig do
1996
+ params(
1997
+ address_types:
1998
+ T::Array[
1999
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType::OrSymbol
2000
+ ]
2001
+ ).void
2002
+ end
2003
+ attr_writer :address_types
2004
+
2005
+ sig { returns(T.nilable(String)) }
2006
+ attr_accessor :line2
2007
+
2008
+ sig do
2009
+ params(
2010
+ country: T.nilable(String),
2011
+ line1: T.nilable(String),
2012
+ locality: T.nilable(String),
2013
+ postal_code: T.nilable(String),
2014
+ region: T.nilable(String),
2015
+ address_types:
2016
+ T::Array[
2017
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType::OrSymbol
2018
+ ],
2019
+ line2: T.nilable(String)
2020
+ ).returns(T.attached_class)
2021
+ end
2022
+ def self.new(
2023
+ # Country code conforms to [ISO 3166-1 alpha-2]
2024
+ country:,
2025
+ line1:,
2026
+ # Locality or City.
2027
+ locality:,
2028
+ # The postal code of the address.
2029
+ postal_code:,
2030
+ # Region or State.
2031
+ region:,
2032
+ # The types of this address.
2033
+ address_types: nil,
2034
+ line2: nil
2035
+ )
2036
+ end
2037
+
2038
+ sig do
2039
+ override.returns(
2040
+ {
2041
+ country: T.nilable(String),
2042
+ line1: T.nilable(String),
2043
+ locality: T.nilable(String),
2044
+ postal_code: T.nilable(String),
2045
+ region: T.nilable(String),
2046
+ address_types:
2047
+ T::Array[
2048
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType::OrSymbol
2049
+ ],
2050
+ line2: T.nilable(String)
2051
+ }
2052
+ )
2053
+ end
2054
+ def to_hash
2055
+ end
2056
+
2057
+ module AddressType
2058
+ extend ModernTreasury::Internal::Type::Enum
2059
+
2060
+ TaggedSymbol =
2061
+ T.type_alias do
2062
+ T.all(
2063
+ Symbol,
2064
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType
2065
+ )
2066
+ end
2067
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2068
+
2069
+ BUSINESS =
2070
+ T.let(
2071
+ :business,
2072
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType::TaggedSymbol
2073
+ )
2074
+ MAILING =
2075
+ T.let(
2076
+ :mailing,
2077
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType::TaggedSymbol
2078
+ )
2079
+ OTHER =
2080
+ T.let(
2081
+ :other,
2082
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType::TaggedSymbol
2083
+ )
2084
+ PO_BOX =
2085
+ T.let(
2086
+ :po_box,
2087
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType::TaggedSymbol
2088
+ )
2089
+ RESIDENTIAL =
2090
+ T.let(
2091
+ :residential,
2092
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType::TaggedSymbol
2093
+ )
2094
+
2095
+ sig do
2096
+ override.returns(
2097
+ T::Array[
2098
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Address::AddressType::TaggedSymbol
2099
+ ]
2100
+ )
2101
+ end
2102
+ def self.values
2103
+ end
2104
+ end
2105
+ end
2106
+
2107
+ class Identification < ModernTreasury::Internal::Type::BaseModel
2108
+ OrHash =
2109
+ T.type_alias do
2110
+ T.any(
2111
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification,
2112
+ ModernTreasury::Internal::AnyHash
2113
+ )
2114
+ end
2115
+
2116
+ # The ID number of identification document.
2117
+ sig { returns(String) }
2118
+ attr_accessor :id_number
2119
+
2120
+ # The type of ID number.
2121
+ sig do
2122
+ returns(
2123
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::OrSymbol
2124
+ )
2125
+ end
2126
+ attr_accessor :id_type
2127
+
2128
+ # The date when the Identification is no longer considered valid by the issuing
2129
+ # authority.
2130
+ sig { returns(T.nilable(Date)) }
2131
+ attr_accessor :expiration_date
2132
+
2133
+ # The ISO 3166-1 alpha-2 country code of the country that issued the
2134
+ # identification
2135
+ sig { returns(T.nilable(String)) }
2136
+ attr_accessor :issuing_country
2137
+
2138
+ # The region in which the identifcation was issued.
2139
+ sig { returns(T.nilable(String)) }
2140
+ attr_accessor :issuing_region
2141
+
2142
+ sig do
2143
+ params(
2144
+ id_number: String,
2145
+ id_type:
2146
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::OrSymbol,
2147
+ expiration_date: T.nilable(Date),
2148
+ issuing_country: T.nilable(String),
2149
+ issuing_region: T.nilable(String)
2150
+ ).returns(T.attached_class)
2151
+ end
2152
+ def self.new(
2153
+ # The ID number of identification document.
2154
+ id_number:,
2155
+ # The type of ID number.
2156
+ id_type:,
2157
+ # The date when the Identification is no longer considered valid by the issuing
2158
+ # authority.
2159
+ expiration_date: nil,
2160
+ # The ISO 3166-1 alpha-2 country code of the country that issued the
2161
+ # identification
2162
+ issuing_country: nil,
2163
+ # The region in which the identifcation was issued.
2164
+ issuing_region: nil
2165
+ )
2166
+ end
2167
+
2168
+ sig do
2169
+ override.returns(
2170
+ {
2171
+ id_number: String,
2172
+ id_type:
2173
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::OrSymbol,
2174
+ expiration_date: T.nilable(Date),
2175
+ issuing_country: T.nilable(String),
2176
+ issuing_region: T.nilable(String)
2177
+ }
2178
+ )
2179
+ end
2180
+ def to_hash
2181
+ end
2182
+
2183
+ # The type of ID number.
2184
+ module IDType
2185
+ extend ModernTreasury::Internal::Type::Enum
2186
+
2187
+ TaggedSymbol =
2188
+ T.type_alias do
2189
+ T.all(
2190
+ Symbol,
2191
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType
2192
+ )
2193
+ end
2194
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2195
+
2196
+ AR_CUIL =
2197
+ T.let(
2198
+ :ar_cuil,
2199
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2200
+ )
2201
+ AR_CUIT =
2202
+ T.let(
2203
+ :ar_cuit,
2204
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2205
+ )
2206
+ BR_CNPJ =
2207
+ T.let(
2208
+ :br_cnpj,
2209
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2210
+ )
2211
+ BR_CPF =
2212
+ T.let(
2213
+ :br_cpf,
2214
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2215
+ )
2216
+ CL_RUN =
2217
+ T.let(
2218
+ :cl_run,
2219
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2220
+ )
2221
+ CL_RUT =
2222
+ T.let(
2223
+ :cl_rut,
2224
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2225
+ )
2226
+ CO_CEDULAS =
2227
+ T.let(
2228
+ :co_cedulas,
2229
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2230
+ )
2231
+ CO_NIT =
2232
+ T.let(
2233
+ :co_nit,
2234
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2235
+ )
2236
+ DRIVERS_LICENSE =
2237
+ T.let(
2238
+ :drivers_license,
2239
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2240
+ )
2241
+ HN_ID =
2242
+ T.let(
2243
+ :hn_id,
2244
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2245
+ )
2246
+ HN_RTN =
2247
+ T.let(
2248
+ :hn_rtn,
2249
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2250
+ )
2251
+ IN_LEI =
2252
+ T.let(
2253
+ :in_lei,
2254
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2255
+ )
2256
+ KR_BRN =
2257
+ T.let(
2258
+ :kr_brn,
2259
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2260
+ )
2261
+ KR_CRN =
2262
+ T.let(
2263
+ :kr_crn,
2264
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2265
+ )
2266
+ KR_RRN =
2267
+ T.let(
2268
+ :kr_rrn,
2269
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2270
+ )
2271
+ PASSPORT =
2272
+ T.let(
2273
+ :passport,
2274
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2275
+ )
2276
+ SA_TIN =
2277
+ T.let(
2278
+ :sa_tin,
2279
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2280
+ )
2281
+ SA_VAT =
2282
+ T.let(
2283
+ :sa_vat,
2284
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2285
+ )
2286
+ US_EIN =
2287
+ T.let(
2288
+ :us_ein,
2289
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2290
+ )
2291
+ US_ITIN =
2292
+ T.let(
2293
+ :us_itin,
2294
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2295
+ )
2296
+ US_SSN =
2297
+ T.let(
2298
+ :us_ssn,
2299
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2300
+ )
2301
+ VN_TIN =
2302
+ T.let(
2303
+ :vn_tin,
2304
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2305
+ )
2306
+
2307
+ sig do
2308
+ override.returns(
2309
+ T::Array[
2310
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::Identification::IDType::TaggedSymbol
2311
+ ]
2312
+ )
2313
+ end
2314
+ def self.values
2315
+ end
2316
+ end
2317
+ end
2318
+
2319
+ class LegalEntityAssociation < ModernTreasury::Internal::Type::BaseModel
2320
+ OrHash =
2321
+ T.type_alias do
2322
+ T.any(
2323
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation,
2324
+ ModernTreasury::Internal::AnyHash
2325
+ )
2326
+ end
2327
+
2328
+ sig do
2329
+ returns(
2330
+ T::Array[
2331
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::RelationshipType::OrSymbol
2332
+ ]
2333
+ )
2334
+ end
2335
+ attr_accessor :relationship_types
2336
+
2337
+ # The child legal entity.
2338
+ sig do
2339
+ returns(
2340
+ T.nilable(
2341
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity
2342
+ )
2343
+ )
2344
+ end
2345
+ attr_reader :child_legal_entity
2346
+
2347
+ sig do
2348
+ params(
2349
+ child_legal_entity:
2350
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::OrHash
2351
+ ).void
2352
+ end
2353
+ attr_writer :child_legal_entity
2354
+
2355
+ # The ID of the child legal entity.
2356
+ sig { returns(T.nilable(String)) }
2357
+ attr_reader :child_legal_entity_id
2358
+
2359
+ sig { params(child_legal_entity_id: String).void }
2360
+ attr_writer :child_legal_entity_id
2361
+
2362
+ # The child entity's ownership percentage iff they are a beneficial owner.
2363
+ sig { returns(T.nilable(Integer)) }
2364
+ attr_accessor :ownership_percentage
2365
+
2366
+ # The job title of the child entity at the parent entity.
2367
+ sig { returns(T.nilable(String)) }
2368
+ attr_accessor :title
2369
+
2370
+ sig do
2371
+ params(
2372
+ relationship_types:
2373
+ T::Array[
2374
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::RelationshipType::OrSymbol
2375
+ ],
2376
+ child_legal_entity:
2377
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::OrHash,
2378
+ child_legal_entity_id: String,
2379
+ ownership_percentage: T.nilable(Integer),
2380
+ title: T.nilable(String)
2381
+ ).returns(T.attached_class)
2382
+ end
2383
+ def self.new(
2384
+ relationship_types:,
2385
+ # The child legal entity.
2386
+ child_legal_entity: nil,
2387
+ # The ID of the child legal entity.
2388
+ child_legal_entity_id: nil,
2389
+ # The child entity's ownership percentage iff they are a beneficial owner.
2390
+ ownership_percentage: nil,
2391
+ # The job title of the child entity at the parent entity.
2392
+ title: nil
2393
+ )
2394
+ end
2395
+
2396
+ sig do
2397
+ override.returns(
2398
+ {
2399
+ relationship_types:
2400
+ T::Array[
2401
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::RelationshipType::OrSymbol
2402
+ ],
2403
+ child_legal_entity:
2404
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity,
2405
+ child_legal_entity_id: String,
2406
+ ownership_percentage: T.nilable(Integer),
2407
+ title: T.nilable(String)
2408
+ }
2409
+ )
2410
+ end
2411
+ def to_hash
2412
+ end
2413
+
2414
+ # A list of relationship types for how the child entity relates to parent entity.
2415
+ module RelationshipType
2416
+ extend ModernTreasury::Internal::Type::Enum
2417
+
2418
+ TaggedSymbol =
2419
+ T.type_alias do
2420
+ T.all(
2421
+ Symbol,
2422
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::RelationshipType
2423
+ )
2424
+ end
2425
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2426
+
2427
+ BENEFICIAL_OWNER =
2428
+ T.let(
2429
+ :beneficial_owner,
2430
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::RelationshipType::TaggedSymbol
2431
+ )
2432
+ CONTROL_PERSON =
2433
+ T.let(
2434
+ :control_person,
2435
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::RelationshipType::TaggedSymbol
2436
+ )
2437
+
2438
+ sig do
2439
+ override.returns(
2440
+ T::Array[
2441
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::RelationshipType::TaggedSymbol
2442
+ ]
2443
+ )
2444
+ end
2445
+ def self.values
2446
+ end
2447
+ end
2448
+
2449
+ class ChildLegalEntity < ModernTreasury::Internal::Type::BaseModel
2450
+ OrHash =
2451
+ T.type_alias do
2452
+ T.any(
2453
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity,
2454
+ ModernTreasury::Internal::AnyHash
2455
+ )
2456
+ end
2457
+
2458
+ # A list of addresses for the entity.
2459
+ sig do
2460
+ returns(
2461
+ T.nilable(
2462
+ T::Array[
2463
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address
2464
+ ]
2465
+ )
2466
+ )
2467
+ end
2468
+ attr_reader :addresses
2469
+
2470
+ sig do
2471
+ params(
2472
+ addresses:
2473
+ T::Array[
2474
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::OrHash
2475
+ ]
2476
+ ).void
2477
+ end
2478
+ attr_writer :addresses
2479
+
2480
+ sig { returns(T.nilable(ModernTreasury::BankSettings)) }
2481
+ attr_reader :bank_settings
2482
+
2483
+ sig do
2484
+ params(
2485
+ bank_settings: T.nilable(ModernTreasury::BankSettings::OrHash)
2486
+ ).void
2487
+ end
2488
+ attr_writer :bank_settings
2489
+
2490
+ # The business's legal business name.
2491
+ sig { returns(T.nilable(String)) }
2492
+ attr_accessor :business_name
2493
+
2494
+ # The country of citizenship for an individual.
2495
+ sig { returns(T.nilable(String)) }
2496
+ attr_accessor :citizenship_country
2497
+
2498
+ sig do
2499
+ returns(T.nilable(ModernTreasury::LegalEntityComplianceDetail))
2500
+ end
2501
+ attr_reader :compliance_details
2502
+
2503
+ sig do
2504
+ params(
2505
+ compliance_details:
2506
+ T.nilable(ModernTreasury::LegalEntityComplianceDetail::OrHash)
2507
+ ).void
2508
+ end
2509
+ attr_writer :compliance_details
2510
+
2511
+ # A business's formation date (YYYY-MM-DD).
2512
+ sig { returns(T.nilable(Date)) }
2513
+ attr_accessor :date_formed
2514
+
2515
+ # An individual's date of birth (YYYY-MM-DD).
2516
+ sig { returns(T.nilable(Date)) }
2517
+ attr_accessor :date_of_birth
2518
+
2519
+ sig { returns(T.nilable(T::Array[String])) }
2520
+ attr_reader :doing_business_as_names
2521
+
2522
+ sig { params(doing_business_as_names: T::Array[String]).void }
2523
+ attr_writer :doing_business_as_names
2524
+
2525
+ # The entity's primary email.
2526
+ sig { returns(T.nilable(String)) }
2527
+ attr_accessor :email
2528
+
2529
+ # An individual's first name.
2530
+ sig { returns(T.nilable(String)) }
2531
+ attr_accessor :first_name
2532
+
2533
+ # A list of identifications for the legal entity.
2534
+ sig do
2535
+ returns(
2536
+ T.nilable(
2537
+ T::Array[
2538
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification
2539
+ ]
2540
+ )
2541
+ )
2542
+ end
2543
+ attr_reader :identifications
2544
+
2545
+ sig do
2546
+ params(
2547
+ identifications:
2548
+ T::Array[
2549
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::OrHash
2550
+ ]
2551
+ ).void
2552
+ end
2553
+ attr_writer :identifications
2554
+
2555
+ # A list of industry classifications for the legal entity.
2556
+ sig do
2557
+ returns(
2558
+ T.nilable(
2559
+ T::Array[ModernTreasury::LegalEntityIndustryClassification]
2560
+ )
2561
+ )
2562
+ end
2563
+ attr_reader :industry_classifications
2564
+
2565
+ sig do
2566
+ params(
2567
+ industry_classifications:
2568
+ T::Array[
2569
+ ModernTreasury::LegalEntityIndustryClassification::OrHash
2570
+ ]
2571
+ ).void
2572
+ end
2573
+ attr_writer :industry_classifications
2574
+
2575
+ # An individual's last name.
2576
+ sig { returns(T.nilable(String)) }
2577
+ attr_accessor :last_name
2578
+
2579
+ # The type of legal entity.
2580
+ sig do
2581
+ returns(
2582
+ T.nilable(
2583
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalEntityType::OrSymbol
2584
+ )
2585
+ )
2586
+ end
2587
+ attr_reader :legal_entity_type
2588
+
2589
+ sig do
2590
+ params(
2591
+ legal_entity_type:
2592
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalEntityType::OrSymbol
2593
+ ).void
2594
+ end
2595
+ attr_writer :legal_entity_type
2596
+
2597
+ # The business's legal structure.
2598
+ sig do
2599
+ returns(
2600
+ T.nilable(
2601
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure::OrSymbol
2602
+ )
2603
+ )
2604
+ end
2605
+ attr_accessor :legal_structure
2606
+
2607
+ # Additional data represented as key-value pairs. Both the key and value must be
2608
+ # strings.
2609
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
2610
+ attr_reader :metadata
2611
+
2612
+ sig { params(metadata: T::Hash[Symbol, String]).void }
2613
+ attr_writer :metadata
2614
+
2615
+ # An individual's middle name.
2616
+ sig { returns(T.nilable(String)) }
2617
+ attr_accessor :middle_name
2618
+
2619
+ sig do
2620
+ returns(
2621
+ T.nilable(
2622
+ T::Array[
2623
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::PhoneNumber
2624
+ ]
2625
+ )
2626
+ )
2627
+ end
2628
+ attr_reader :phone_numbers
2629
+
2630
+ sig do
2631
+ params(
2632
+ phone_numbers:
2633
+ T::Array[
2634
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::PhoneNumber::OrHash
2635
+ ]
2636
+ ).void
2637
+ end
2638
+ attr_writer :phone_numbers
2639
+
2640
+ # Whether the individual is a politically exposed person.
2641
+ sig { returns(T.nilable(T::Boolean)) }
2642
+ attr_accessor :politically_exposed_person
2643
+
2644
+ # An individual's preferred name.
2645
+ sig { returns(T.nilable(String)) }
2646
+ attr_accessor :preferred_name
2647
+
2648
+ # An individual's prefix.
2649
+ sig { returns(T.nilable(String)) }
2650
+ attr_accessor :prefix
2651
+
2652
+ # The risk rating of the legal entity. One of low, medium, high.
2653
+ sig do
2654
+ returns(
2655
+ T.nilable(
2656
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::RiskRating::OrSymbol
2657
+ )
2658
+ )
2659
+ end
2660
+ attr_accessor :risk_rating
2661
+
2662
+ # An individual's suffix.
2663
+ sig { returns(T.nilable(String)) }
2664
+ attr_accessor :suffix
2665
+
2666
+ sig do
2667
+ returns(T.nilable(ModernTreasury::WealthAndEmploymentDetails))
2668
+ end
2669
+ attr_reader :wealth_and_employment_details
2670
+
2671
+ sig do
2672
+ params(
2673
+ wealth_and_employment_details:
2674
+ T.nilable(ModernTreasury::WealthAndEmploymentDetails::OrHash)
2675
+ ).void
2676
+ end
2677
+ attr_writer :wealth_and_employment_details
2678
+
2679
+ # The entity's primary website URL.
2680
+ sig { returns(T.nilable(String)) }
2681
+ attr_accessor :website
2682
+
2683
+ # The child legal entity.
2684
+ sig do
2685
+ params(
2686
+ addresses:
2687
+ T::Array[
2688
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::OrHash
2689
+ ],
2690
+ bank_settings: T.nilable(ModernTreasury::BankSettings::OrHash),
2691
+ business_name: T.nilable(String),
2692
+ citizenship_country: T.nilable(String),
2693
+ compliance_details:
2694
+ T.nilable(
2695
+ ModernTreasury::LegalEntityComplianceDetail::OrHash
2696
+ ),
2697
+ date_formed: T.nilable(Date),
2698
+ date_of_birth: T.nilable(Date),
2699
+ doing_business_as_names: T::Array[String],
2700
+ email: T.nilable(String),
2701
+ first_name: T.nilable(String),
2702
+ identifications:
2703
+ T::Array[
2704
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::OrHash
2705
+ ],
2706
+ industry_classifications:
2707
+ T::Array[
2708
+ ModernTreasury::LegalEntityIndustryClassification::OrHash
2709
+ ],
2710
+ last_name: T.nilable(String),
2711
+ legal_entity_type:
2712
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalEntityType::OrSymbol,
2713
+ legal_structure:
2714
+ T.nilable(
2715
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure::OrSymbol
2716
+ ),
2717
+ metadata: T::Hash[Symbol, String],
2718
+ middle_name: T.nilable(String),
2719
+ phone_numbers:
2720
+ T::Array[
2721
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::PhoneNumber::OrHash
2722
+ ],
2723
+ politically_exposed_person: T.nilable(T::Boolean),
2724
+ preferred_name: T.nilable(String),
2725
+ prefix: T.nilable(String),
2726
+ risk_rating:
2727
+ T.nilable(
2728
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::RiskRating::OrSymbol
2729
+ ),
2730
+ suffix: T.nilable(String),
2731
+ wealth_and_employment_details:
2732
+ T.nilable(ModernTreasury::WealthAndEmploymentDetails::OrHash),
2733
+ website: T.nilable(String)
2734
+ ).returns(T.attached_class)
2735
+ end
2736
+ def self.new(
2737
+ # A list of addresses for the entity.
2738
+ addresses: nil,
2739
+ bank_settings: nil,
2740
+ # The business's legal business name.
2741
+ business_name: nil,
2742
+ # The country of citizenship for an individual.
2743
+ citizenship_country: nil,
2744
+ compliance_details: nil,
2745
+ # A business's formation date (YYYY-MM-DD).
2746
+ date_formed: nil,
2747
+ # An individual's date of birth (YYYY-MM-DD).
2748
+ date_of_birth: nil,
2749
+ doing_business_as_names: nil,
2750
+ # The entity's primary email.
2751
+ email: nil,
2752
+ # An individual's first name.
2753
+ first_name: nil,
2754
+ # A list of identifications for the legal entity.
2755
+ identifications: nil,
2756
+ # A list of industry classifications for the legal entity.
2757
+ industry_classifications: nil,
2758
+ # An individual's last name.
2759
+ last_name: nil,
2760
+ # The type of legal entity.
2761
+ legal_entity_type: nil,
2762
+ # The business's legal structure.
2763
+ legal_structure: nil,
2764
+ # Additional data represented as key-value pairs. Both the key and value must be
2765
+ # strings.
2766
+ metadata: nil,
2767
+ # An individual's middle name.
2768
+ middle_name: nil,
2769
+ phone_numbers: nil,
2770
+ # Whether the individual is a politically exposed person.
2771
+ politically_exposed_person: nil,
2772
+ # An individual's preferred name.
2773
+ preferred_name: nil,
2774
+ # An individual's prefix.
2775
+ prefix: nil,
2776
+ # The risk rating of the legal entity. One of low, medium, high.
2777
+ risk_rating: nil,
2778
+ # An individual's suffix.
2779
+ suffix: nil,
2780
+ wealth_and_employment_details: nil,
2781
+ # The entity's primary website URL.
2782
+ website: nil
2783
+ )
2784
+ end
2785
+
2786
+ sig do
2787
+ override.returns(
2788
+ {
2789
+ addresses:
2790
+ T::Array[
2791
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address
2792
+ ],
2793
+ bank_settings: T.nilable(ModernTreasury::BankSettings),
2794
+ business_name: T.nilable(String),
2795
+ citizenship_country: T.nilable(String),
2796
+ compliance_details:
2797
+ T.nilable(ModernTreasury::LegalEntityComplianceDetail),
2798
+ date_formed: T.nilable(Date),
2799
+ date_of_birth: T.nilable(Date),
2800
+ doing_business_as_names: T::Array[String],
2801
+ email: T.nilable(String),
2802
+ first_name: T.nilable(String),
2803
+ identifications:
2804
+ T::Array[
2805
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification
2806
+ ],
2807
+ industry_classifications:
2808
+ T::Array[ModernTreasury::LegalEntityIndustryClassification],
2809
+ last_name: T.nilable(String),
2810
+ legal_entity_type:
2811
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalEntityType::OrSymbol,
2812
+ legal_structure:
2813
+ T.nilable(
2814
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure::OrSymbol
2815
+ ),
2816
+ metadata: T::Hash[Symbol, String],
2817
+ middle_name: T.nilable(String),
2818
+ phone_numbers:
2819
+ T::Array[
2820
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::PhoneNumber
2821
+ ],
2822
+ politically_exposed_person: T.nilable(T::Boolean),
2823
+ preferred_name: T.nilable(String),
2824
+ prefix: T.nilable(String),
2825
+ risk_rating:
2826
+ T.nilable(
2827
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::RiskRating::OrSymbol
2828
+ ),
2829
+ suffix: T.nilable(String),
2830
+ wealth_and_employment_details:
2831
+ T.nilable(ModernTreasury::WealthAndEmploymentDetails),
2832
+ website: T.nilable(String)
2833
+ }
2834
+ )
2835
+ end
2836
+ def to_hash
2837
+ end
2838
+
2839
+ class Address < ModernTreasury::Internal::Type::BaseModel
2840
+ OrHash =
2841
+ T.type_alias do
2842
+ T.any(
2843
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address,
2844
+ ModernTreasury::Internal::AnyHash
2845
+ )
2846
+ end
2847
+
2848
+ # Country code conforms to [ISO 3166-1 alpha-2]
2849
+ sig { returns(T.nilable(String)) }
2850
+ attr_accessor :country
2851
+
2852
+ sig { returns(T.nilable(String)) }
2853
+ attr_accessor :line1
2854
+
2855
+ # Locality or City.
2856
+ sig { returns(T.nilable(String)) }
2857
+ attr_accessor :locality
2858
+
2859
+ # The postal code of the address.
2860
+ sig { returns(T.nilable(String)) }
2861
+ attr_accessor :postal_code
2862
+
2863
+ # Region or State.
2864
+ sig { returns(T.nilable(String)) }
2865
+ attr_accessor :region
2866
+
2867
+ # The types of this address.
2868
+ sig do
2869
+ returns(
2870
+ T.nilable(
2871
+ T::Array[
2872
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType::OrSymbol
2873
+ ]
2874
+ )
2875
+ )
2876
+ end
2877
+ attr_reader :address_types
2878
+
2879
+ sig do
2880
+ params(
2881
+ address_types:
2882
+ T::Array[
2883
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType::OrSymbol
2884
+ ]
2885
+ ).void
2886
+ end
2887
+ attr_writer :address_types
2888
+
2889
+ sig { returns(T.nilable(String)) }
2890
+ attr_accessor :line2
2891
+
2892
+ sig do
2893
+ params(
2894
+ country: T.nilable(String),
2895
+ line1: T.nilable(String),
2896
+ locality: T.nilable(String),
2897
+ postal_code: T.nilable(String),
2898
+ region: T.nilable(String),
2899
+ address_types:
2900
+ T::Array[
2901
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType::OrSymbol
2902
+ ],
2903
+ line2: T.nilable(String)
2904
+ ).returns(T.attached_class)
2905
+ end
2906
+ def self.new(
2907
+ # Country code conforms to [ISO 3166-1 alpha-2]
2908
+ country:,
2909
+ line1:,
2910
+ # Locality or City.
2911
+ locality:,
2912
+ # The postal code of the address.
2913
+ postal_code:,
2914
+ # Region or State.
2915
+ region:,
2916
+ # The types of this address.
2917
+ address_types: nil,
2918
+ line2: nil
2919
+ )
2920
+ end
2921
+
2922
+ sig do
2923
+ override.returns(
2924
+ {
2925
+ country: T.nilable(String),
2926
+ line1: T.nilable(String),
2927
+ locality: T.nilable(String),
2928
+ postal_code: T.nilable(String),
2929
+ region: T.nilable(String),
2930
+ address_types:
2931
+ T::Array[
2932
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType::OrSymbol
2933
+ ],
2934
+ line2: T.nilable(String)
2935
+ }
2936
+ )
2937
+ end
2938
+ def to_hash
2939
+ end
2940
+
2941
+ module AddressType
2942
+ extend ModernTreasury::Internal::Type::Enum
2943
+
2944
+ TaggedSymbol =
2945
+ T.type_alias do
2946
+ T.all(
2947
+ Symbol,
2948
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType
2949
+ )
2950
+ end
2951
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2952
+
2953
+ BUSINESS =
2954
+ T.let(
2955
+ :business,
2956
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType::TaggedSymbol
2957
+ )
2958
+ MAILING =
2959
+ T.let(
2960
+ :mailing,
2961
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType::TaggedSymbol
2962
+ )
2963
+ OTHER =
2964
+ T.let(
2965
+ :other,
2966
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType::TaggedSymbol
2967
+ )
2968
+ PO_BOX =
2969
+ T.let(
2970
+ :po_box,
2971
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType::TaggedSymbol
2972
+ )
2973
+ RESIDENTIAL =
2974
+ T.let(
2975
+ :residential,
2976
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType::TaggedSymbol
2977
+ )
2978
+
2979
+ sig do
2980
+ override.returns(
2981
+ T::Array[
2982
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Address::AddressType::TaggedSymbol
2983
+ ]
2984
+ )
2985
+ end
2986
+ def self.values
2987
+ end
2988
+ end
2989
+ end
2990
+
2991
+ class Identification < ModernTreasury::Internal::Type::BaseModel
2992
+ OrHash =
2993
+ T.type_alias do
2994
+ T.any(
2995
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification,
2996
+ ModernTreasury::Internal::AnyHash
2997
+ )
2998
+ end
2999
+
3000
+ # The ID number of identification document.
3001
+ sig { returns(String) }
3002
+ attr_accessor :id_number
3003
+
3004
+ # The type of ID number.
3005
+ sig do
3006
+ returns(
3007
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::OrSymbol
3008
+ )
3009
+ end
3010
+ attr_accessor :id_type
3011
+
3012
+ # The date when the Identification is no longer considered valid by the issuing
3013
+ # authority.
3014
+ sig { returns(T.nilable(Date)) }
3015
+ attr_accessor :expiration_date
3016
+
3017
+ # The ISO 3166-1 alpha-2 country code of the country that issued the
3018
+ # identification
3019
+ sig { returns(T.nilable(String)) }
3020
+ attr_accessor :issuing_country
3021
+
3022
+ # The region in which the identifcation was issued.
3023
+ sig { returns(T.nilable(String)) }
3024
+ attr_accessor :issuing_region
3025
+
3026
+ sig do
3027
+ params(
3028
+ id_number: String,
3029
+ id_type:
3030
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::OrSymbol,
3031
+ expiration_date: T.nilable(Date),
3032
+ issuing_country: T.nilable(String),
3033
+ issuing_region: T.nilable(String)
3034
+ ).returns(T.attached_class)
3035
+ end
3036
+ def self.new(
3037
+ # The ID number of identification document.
3038
+ id_number:,
3039
+ # The type of ID number.
3040
+ id_type:,
3041
+ # The date when the Identification is no longer considered valid by the issuing
3042
+ # authority.
3043
+ expiration_date: nil,
3044
+ # The ISO 3166-1 alpha-2 country code of the country that issued the
3045
+ # identification
3046
+ issuing_country: nil,
3047
+ # The region in which the identifcation was issued.
3048
+ issuing_region: nil
3049
+ )
3050
+ end
3051
+
3052
+ sig do
3053
+ override.returns(
3054
+ {
3055
+ id_number: String,
3056
+ id_type:
3057
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::OrSymbol,
3058
+ expiration_date: T.nilable(Date),
3059
+ issuing_country: T.nilable(String),
3060
+ issuing_region: T.nilable(String)
3061
+ }
3062
+ )
3063
+ end
3064
+ def to_hash
3065
+ end
3066
+
3067
+ # The type of ID number.
3068
+ module IDType
3069
+ extend ModernTreasury::Internal::Type::Enum
3070
+
3071
+ TaggedSymbol =
3072
+ T.type_alias do
3073
+ T.all(
3074
+ Symbol,
3075
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType
3076
+ )
3077
+ end
3078
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3079
+
3080
+ AR_CUIL =
3081
+ T.let(
3082
+ :ar_cuil,
3083
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3084
+ )
3085
+ AR_CUIT =
3086
+ T.let(
3087
+ :ar_cuit,
3088
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3089
+ )
3090
+ BR_CNPJ =
3091
+ T.let(
3092
+ :br_cnpj,
3093
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3094
+ )
3095
+ BR_CPF =
3096
+ T.let(
3097
+ :br_cpf,
3098
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3099
+ )
3100
+ CL_RUN =
3101
+ T.let(
3102
+ :cl_run,
3103
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3104
+ )
3105
+ CL_RUT =
3106
+ T.let(
3107
+ :cl_rut,
3108
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3109
+ )
3110
+ CO_CEDULAS =
3111
+ T.let(
3112
+ :co_cedulas,
3113
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3114
+ )
3115
+ CO_NIT =
3116
+ T.let(
3117
+ :co_nit,
3118
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3119
+ )
3120
+ DRIVERS_LICENSE =
3121
+ T.let(
3122
+ :drivers_license,
3123
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3124
+ )
3125
+ HN_ID =
3126
+ T.let(
3127
+ :hn_id,
3128
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3129
+ )
3130
+ HN_RTN =
3131
+ T.let(
3132
+ :hn_rtn,
3133
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3134
+ )
3135
+ IN_LEI =
3136
+ T.let(
3137
+ :in_lei,
3138
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3139
+ )
3140
+ KR_BRN =
3141
+ T.let(
3142
+ :kr_brn,
3143
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3144
+ )
3145
+ KR_CRN =
3146
+ T.let(
3147
+ :kr_crn,
3148
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3149
+ )
3150
+ KR_RRN =
3151
+ T.let(
3152
+ :kr_rrn,
3153
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3154
+ )
3155
+ PASSPORT =
3156
+ T.let(
3157
+ :passport,
3158
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3159
+ )
3160
+ SA_TIN =
3161
+ T.let(
3162
+ :sa_tin,
3163
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3164
+ )
3165
+ SA_VAT =
3166
+ T.let(
3167
+ :sa_vat,
3168
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3169
+ )
3170
+ US_EIN =
3171
+ T.let(
3172
+ :us_ein,
3173
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3174
+ )
3175
+ US_ITIN =
3176
+ T.let(
3177
+ :us_itin,
3178
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3179
+ )
3180
+ US_SSN =
3181
+ T.let(
3182
+ :us_ssn,
3183
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3184
+ )
3185
+ VN_TIN =
3186
+ T.let(
3187
+ :vn_tin,
3188
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3189
+ )
3190
+
3191
+ sig do
3192
+ override.returns(
3193
+ T::Array[
3194
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::Identification::IDType::TaggedSymbol
3195
+ ]
3196
+ )
3197
+ end
3198
+ def self.values
3199
+ end
3200
+ end
3201
+ end
3202
+
3203
+ # The type of legal entity.
3204
+ module LegalEntityType
3205
+ extend ModernTreasury::Internal::Type::Enum
3206
+
3207
+ TaggedSymbol =
3208
+ T.type_alias do
3209
+ T.all(
3210
+ Symbol,
3211
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalEntityType
3212
+ )
3213
+ end
3214
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3215
+
3216
+ BUSINESS =
3217
+ T.let(
3218
+ :business,
3219
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalEntityType::TaggedSymbol
3220
+ )
3221
+ INDIVIDUAL =
3222
+ T.let(
3223
+ :individual,
3224
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalEntityType::TaggedSymbol
3225
+ )
3226
+
3227
+ sig do
3228
+ override.returns(
3229
+ T::Array[
3230
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalEntityType::TaggedSymbol
3231
+ ]
3232
+ )
3233
+ end
3234
+ def self.values
3235
+ end
3236
+ end
3237
+
3238
+ # The business's legal structure.
3239
+ module LegalStructure
3240
+ extend ModernTreasury::Internal::Type::Enum
3241
+
3242
+ TaggedSymbol =
3243
+ T.type_alias do
3244
+ T.all(
3245
+ Symbol,
3246
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure
3247
+ )
3248
+ end
3249
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3250
+
3251
+ CORPORATION =
3252
+ T.let(
3253
+ :corporation,
3254
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure::TaggedSymbol
3255
+ )
3256
+ LLC =
3257
+ T.let(
3258
+ :llc,
3259
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure::TaggedSymbol
3260
+ )
3261
+ NON_PROFIT =
3262
+ T.let(
3263
+ :non_profit,
3264
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure::TaggedSymbol
3265
+ )
3266
+ PARTNERSHIP =
3267
+ T.let(
3268
+ :partnership,
3269
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure::TaggedSymbol
3270
+ )
3271
+ SOLE_PROPRIETORSHIP =
3272
+ T.let(
3273
+ :sole_proprietorship,
3274
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure::TaggedSymbol
3275
+ )
3276
+ TRUST =
3277
+ T.let(
3278
+ :trust,
3279
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure::TaggedSymbol
3280
+ )
3281
+
3282
+ sig do
3283
+ override.returns(
3284
+ T::Array[
3285
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::LegalStructure::TaggedSymbol
3286
+ ]
3287
+ )
3288
+ end
3289
+ def self.values
3290
+ end
3291
+ end
3292
+
3293
+ class PhoneNumber < ModernTreasury::Internal::Type::BaseModel
3294
+ OrHash =
3295
+ T.type_alias do
3296
+ T.any(
3297
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::PhoneNumber,
3298
+ ModernTreasury::Internal::AnyHash
3299
+ )
3300
+ end
3301
+
3302
+ sig { returns(T.nilable(String)) }
3303
+ attr_reader :phone_number
3304
+
3305
+ sig { params(phone_number: String).void }
3306
+ attr_writer :phone_number
3307
+
3308
+ # A list of phone numbers in E.164 format.
3309
+ sig { params(phone_number: String).returns(T.attached_class) }
3310
+ def self.new(phone_number: nil)
3311
+ end
3312
+
3313
+ sig { override.returns({ phone_number: String }) }
3314
+ def to_hash
3315
+ end
3316
+ end
3317
+
3318
+ # The risk rating of the legal entity. One of low, medium, high.
3319
+ module RiskRating
3320
+ extend ModernTreasury::Internal::Type::Enum
3321
+
3322
+ TaggedSymbol =
3323
+ T.type_alias do
3324
+ T.all(
3325
+ Symbol,
3326
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::RiskRating
3327
+ )
3328
+ end
3329
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3330
+
3331
+ LOW =
3332
+ T.let(
3333
+ :low,
3334
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::RiskRating::TaggedSymbol
3335
+ )
3336
+ MEDIUM =
3337
+ T.let(
3338
+ :medium,
3339
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::RiskRating::TaggedSymbol
3340
+ )
3341
+ HIGH =
3342
+ T.let(
3343
+ :high,
3344
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::RiskRating::TaggedSymbol
3345
+ )
3346
+
3347
+ sig do
3348
+ override.returns(
3349
+ T::Array[
3350
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalEntityAssociation::ChildLegalEntity::RiskRating::TaggedSymbol
3351
+ ]
3352
+ )
3353
+ end
3354
+ def self.values
3355
+ end
3356
+ end
3357
+ end
3358
+ end
3359
+
3360
+ # The business's legal structure.
3361
+ module LegalStructure
3362
+ extend ModernTreasury::Internal::Type::Enum
3363
+
3364
+ TaggedSymbol =
3365
+ T.type_alias do
3366
+ T.all(
3367
+ Symbol,
3368
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure
3369
+ )
3370
+ end
3371
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3372
+
3373
+ CORPORATION =
3374
+ T.let(
3375
+ :corporation,
3376
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure::TaggedSymbol
3377
+ )
3378
+ LLC =
3379
+ T.let(
3380
+ :llc,
3381
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure::TaggedSymbol
3382
+ )
3383
+ NON_PROFIT =
3384
+ T.let(
3385
+ :non_profit,
3386
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure::TaggedSymbol
3387
+ )
3388
+ PARTNERSHIP =
3389
+ T.let(
3390
+ :partnership,
3391
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure::TaggedSymbol
3392
+ )
3393
+ SOLE_PROPRIETORSHIP =
3394
+ T.let(
3395
+ :sole_proprietorship,
3396
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure::TaggedSymbol
3397
+ )
3398
+ TRUST =
3399
+ T.let(
3400
+ :trust,
3401
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure::TaggedSymbol
3402
+ )
3403
+
3404
+ sig do
3405
+ override.returns(
3406
+ T::Array[
3407
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::LegalStructure::TaggedSymbol
3408
+ ]
3409
+ )
3410
+ end
3411
+ def self.values
3412
+ end
3413
+ end
3414
+
3415
+ class PhoneNumber < ModernTreasury::Internal::Type::BaseModel
3416
+ OrHash =
3417
+ T.type_alias do
3418
+ T.any(
3419
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::PhoneNumber,
3420
+ ModernTreasury::Internal::AnyHash
3421
+ )
3422
+ end
3423
+
3424
+ sig { returns(T.nilable(String)) }
3425
+ attr_reader :phone_number
3426
+
3427
+ sig { params(phone_number: String).void }
3428
+ attr_writer :phone_number
3429
+
3430
+ # A list of phone numbers in E.164 format.
3431
+ sig { params(phone_number: String).returns(T.attached_class) }
3432
+ def self.new(phone_number: nil)
3433
+ end
3434
+
3435
+ sig { override.returns({ phone_number: String }) }
3436
+ def to_hash
3437
+ end
3438
+ end
3439
+
3440
+ # The risk rating of the legal entity. One of low, medium, high.
3441
+ module RiskRating
3442
+ extend ModernTreasury::Internal::Type::Enum
3443
+
3444
+ TaggedSymbol =
3445
+ T.type_alias do
3446
+ T.all(
3447
+ Symbol,
3448
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::RiskRating
3449
+ )
3450
+ end
3451
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3452
+
3453
+ LOW =
3454
+ T.let(
3455
+ :low,
3456
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::RiskRating::TaggedSymbol
3457
+ )
3458
+ MEDIUM =
3459
+ T.let(
3460
+ :medium,
3461
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::RiskRating::TaggedSymbol
3462
+ )
3463
+ HIGH =
3464
+ T.let(
3465
+ :high,
3466
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::RiskRating::TaggedSymbol
3467
+ )
3468
+
3469
+ sig do
3470
+ override.returns(
3471
+ T::Array[
3472
+ ModernTreasury::CounterpartyCreateParams::LegalEntity::RiskRating::TaggedSymbol
3473
+ ]
3474
+ )
3475
+ end
3476
+ def self.values
3477
+ end
3478
+ end
3479
+ end
3480
+
3481
+ # The verification status of the counterparty.
3482
+ module VerificationStatus
3483
+ extend ModernTreasury::Internal::Type::Enum
3484
+
3485
+ TaggedSymbol =
3486
+ T.type_alias do
3487
+ T.all(
3488
+ Symbol,
3489
+ ModernTreasury::CounterpartyCreateParams::VerificationStatus
3490
+ )
3491
+ end
3492
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3493
+
3494
+ DENIED =
3495
+ T.let(
3496
+ :denied,
3497
+ ModernTreasury::CounterpartyCreateParams::VerificationStatus::TaggedSymbol
3498
+ )
3499
+ NEEDS_APPROVAL =
3500
+ T.let(
3501
+ :needs_approval,
3502
+ ModernTreasury::CounterpartyCreateParams::VerificationStatus::TaggedSymbol
3503
+ )
3504
+ UNVERIFIED =
3505
+ T.let(
3506
+ :unverified,
3507
+ ModernTreasury::CounterpartyCreateParams::VerificationStatus::TaggedSymbol
3508
+ )
3509
+ VERIFIED =
3510
+ T.let(
3511
+ :verified,
3512
+ ModernTreasury::CounterpartyCreateParams::VerificationStatus::TaggedSymbol
3513
+ )
3514
+
3515
+ sig do
3516
+ override.returns(
3517
+ T::Array[
3518
+ ModernTreasury::CounterpartyCreateParams::VerificationStatus::TaggedSymbol
3519
+ ]
3520
+ )
3521
+ end
3522
+ def self.values
3523
+ end
3524
+ end
3525
+ end
3526
+ end
3527
+ end