mt-sdk 0.0.1 → 0.0.4

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 (306) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +67 -60
  3. data/lib/modern_treasury/client.rb +9 -7
  4. data/lib/modern_treasury/configuration.rb +18 -47
  5. data/lib/modern_treasury/controllers/account_collection_flow_controller.rb +17 -11
  6. data/lib/modern_treasury/controllers/account_detail_controller.rb +23 -9
  7. data/lib/modern_treasury/controllers/balance_report_controller.rb +9 -4
  8. data/lib/modern_treasury/controllers/base_controller.rb +8 -1
  9. data/lib/modern_treasury/controllers/connection_controller.rb +8 -7
  10. data/lib/modern_treasury/controllers/counterparty_controller.rb +23 -13
  11. data/lib/modern_treasury/controllers/document_controller.rb +50 -26
  12. data/lib/modern_treasury/controllers/event_controller.rb +11 -8
  13. data/lib/modern_treasury/controllers/expected_payment_controller.rb +24 -17
  14. data/lib/modern_treasury/controllers/external_account_controller.rb +26 -14
  15. data/lib/modern_treasury/controllers/incoming_payment_detail_controller.rb +20 -14
  16. data/lib/modern_treasury/controllers/internal_account_controller.rb +19 -13
  17. data/lib/modern_treasury/controllers/invoice_controller.rb +18 -12
  18. data/lib/modern_treasury/controllers/invoice_line_item_controller.rb +22 -9
  19. data/lib/modern_treasury/controllers/ledger_account_category_controller.rb +35 -15
  20. data/lib/modern_treasury/controllers/ledger_account_controller.rb +19 -11
  21. data/lib/modern_treasury/controllers/ledger_account_payout_controller.rb +16 -10
  22. data/lib/modern_treasury/controllers/ledger_account_statement_controller.rb +5 -2
  23. data/lib/modern_treasury/controllers/ledger_controller.rb +19 -11
  24. data/lib/modern_treasury/controllers/ledger_entry_controller.rb +15 -13
  25. data/lib/modern_treasury/controllers/ledger_event_handler_controller.rb +16 -10
  26. data/lib/modern_treasury/controllers/ledger_transaction_controller.rb +32 -22
  27. data/lib/modern_treasury/controllers/ledgerable_event_controller.rb +5 -2
  28. data/lib/modern_treasury/controllers/line_item_controller.rb +18 -7
  29. data/lib/modern_treasury/controllers/paper_item_controller.rb +10 -7
  30. data/lib/modern_treasury/controllers/payment_flow_controller.rb +17 -11
  31. data/lib/modern_treasury/controllers/payment_order_controller.rb +45 -34
  32. data/lib/modern_treasury/controllers/payment_reference_controller.rb +14 -11
  33. data/lib/modern_treasury/controllers/ping_controller.rb +2 -1
  34. data/lib/modern_treasury/controllers/return_controller.rb +14 -10
  35. data/lib/modern_treasury/controllers/reversal_controller.rb +10 -3
  36. data/lib/modern_treasury/controllers/routing_detail_controller.rb +23 -9
  37. data/lib/modern_treasury/controllers/transaction_controller.rb +14 -9
  38. data/lib/modern_treasury/controllers/transaction_line_item_controller.rb +4 -2
  39. data/lib/modern_treasury/controllers/validation_controller.rb +8 -5
  40. data/lib/modern_treasury/controllers/virtual_account_controller.rb +21 -13
  41. data/lib/modern_treasury/http/api_response.rb +19 -0
  42. data/lib/modern_treasury/logging/configuration/api_logging_configuration.rb +186 -0
  43. data/lib/modern_treasury/logging/sdk_logger.rb +17 -0
  44. data/lib/modern_treasury/models/account.rb +26 -26
  45. data/lib/modern_treasury/models/account1.rb +34 -21
  46. data/lib/modern_treasury/models/account_collection_flow.rb +15 -16
  47. data/lib/modern_treasury/models/account_collection_flow_create_request.rb +18 -5
  48. data/lib/modern_treasury/models/account_collection_flow_update_request.rb +16 -4
  49. data/lib/modern_treasury/models/account_detail.rb +15 -16
  50. data/lib/modern_treasury/models/account_detail1.rb +19 -6
  51. data/lib/modern_treasury/models/account_detail_create_request.rb +19 -6
  52. data/lib/modern_treasury/models/{account_number_type_enum.rb → account_number_type.rb} +3 -3
  53. data/lib/modern_treasury/models/{account_number_type2_enum.rb → account_number_type2.rb} +3 -3
  54. data/lib/modern_treasury/models/{account_type_enum.rb → account_type.rb} +3 -3
  55. data/lib/modern_treasury/models/{account_type5_enum.rb → account_type5.rb} +3 -3
  56. data/lib/modern_treasury/models/accounting.rb +19 -5
  57. data/lib/modern_treasury/models/accounting1.rb +17 -5
  58. data/lib/modern_treasury/models/{accounts_type_enum.rb → accounts_type.rb} +3 -3
  59. data/lib/modern_treasury/models/{accounts_type1_enum.rb → accounts_type1.rb} +3 -3
  60. data/lib/modern_treasury/models/address.rb +13 -14
  61. data/lib/modern_treasury/models/address_request.rb +23 -10
  62. data/lib/modern_treasury/models/async_response.rb +3 -3
  63. data/lib/modern_treasury/models/balance.rb +15 -17
  64. data/lib/modern_treasury/models/balance_report.rb +14 -15
  65. data/lib/modern_treasury/models/{balance_report_type_enum.rb → balance_report_type.rb} +3 -3
  66. data/lib/modern_treasury/models/{balance_report_type1_enum.rb → balance_report_type1.rb} +3 -3
  67. data/lib/modern_treasury/models/{balance_type_enum.rb → balance_type.rb} +3 -3
  68. data/lib/modern_treasury/models/balances.rb +2 -2
  69. data/lib/modern_treasury/models/balances1.rb +3 -3
  70. data/lib/modern_treasury/models/balances2.rb +7 -7
  71. data/lib/modern_treasury/models/balances3.rb +8 -8
  72. data/lib/modern_treasury/models/{charge_bearer_enum.rb → charge_bearer.rb} +3 -3
  73. data/lib/modern_treasury/models/{code_enum.rb → code.rb} +3 -3
  74. data/lib/modern_treasury/models/{code1_enum.rb → code1.rb} +3 -3
  75. data/lib/modern_treasury/models/connection.rb +11 -12
  76. data/lib/modern_treasury/models/contact_detail.rb +13 -14
  77. data/lib/modern_treasury/models/contact_detail_create_request.rb +20 -6
  78. data/lib/modern_treasury/models/{contact_identifier_type_enum.rb → contact_identifier_type.rb} +3 -3
  79. data/lib/modern_treasury/models/{content_type_enum.rb → content_type.rb} +3 -3
  80. data/lib/modern_treasury/models/counterparty.rb +16 -17
  81. data/lib/modern_treasury/models/counterparty_billing_address.rb +23 -10
  82. data/lib/modern_treasury/models/counterparty_collect_account_request.rb +23 -10
  83. data/lib/modern_treasury/models/counterparty_collect_account_response.rb +4 -4
  84. data/lib/modern_treasury/models/counterparty_create_request.rb +31 -17
  85. data/lib/modern_treasury/models/counterparty_shipping_address.rb +23 -10
  86. data/lib/modern_treasury/models/counterparty_update_request.rb +23 -9
  87. data/lib/modern_treasury/models/{created_at_enum.rb → created_at.rb} +3 -3
  88. data/lib/modern_treasury/models/{currency_enum.rb → currency.rb} +3 -3
  89. data/lib/modern_treasury/models/{currency1_enum.rb → currency1.rb} +3 -3
  90. data/lib/modern_treasury/models/{direction_enum.rb → direction.rb} +3 -3
  91. data/lib/modern_treasury/models/{direction1_enum.rb → direction1.rb} +3 -3
  92. data/lib/modern_treasury/models/{direction10_enum.rb → direction10.rb} +3 -3
  93. data/lib/modern_treasury/models/{direction14_enum.rb → direction14.rb} +3 -3
  94. data/lib/modern_treasury/models/{direction15_enum.rb → direction15.rb} +3 -3
  95. data/lib/modern_treasury/models/{direction4_enum.rb → direction4.rb} +3 -3
  96. data/lib/modern_treasury/models/{direction5_enum.rb → direction5.rb} +3 -3
  97. data/lib/modern_treasury/models/{direction9_enum.rb → direction9.rb} +3 -3
  98. data/lib/modern_treasury/models/document.rb +16 -17
  99. data/lib/modern_treasury/models/document_create_request.rb +22 -9
  100. data/lib/modern_treasury/models/document_detail.rb +11 -11
  101. data/lib/modern_treasury/models/{documentable_type_enum.rb → documentable_type.rb} +3 -3
  102. data/lib/modern_treasury/models/{documentable_type1_enum.rb → documentable_type1.rb} +3 -3
  103. data/lib/modern_treasury/models/{documentable_type2_enum.rb → documentable_type2.rb} +3 -3
  104. data/lib/modern_treasury/models/{effective_at_enum.rb → effective_at.rb} +3 -3
  105. data/lib/modern_treasury/models/errors.rb +21 -7
  106. data/lib/modern_treasury/models/event.rb +12 -13
  107. data/lib/modern_treasury/models/expected_payment.rb +38 -41
  108. data/lib/modern_treasury/models/expected_payment_create_request.rb +43 -29
  109. data/lib/modern_treasury/models/expected_payment_update_request.rb +40 -27
  110. data/lib/modern_treasury/models/external_account.rb +26 -28
  111. data/lib/modern_treasury/models/external_account_complete_verification_request.rb +17 -4
  112. data/lib/modern_treasury/models/external_account_create_request.rb +36 -23
  113. data/lib/modern_treasury/models/external_account_update_request.rb +27 -14
  114. data/lib/modern_treasury/models/external_account_verify_request.rb +23 -9
  115. data/lib/modern_treasury/models/{fallback_type_enum.rb → fallback_type.rb} +3 -3
  116. data/lib/modern_treasury/models/{field_enum.rb → field.rb} +3 -3
  117. data/lib/modern_treasury/models/file.rb +4 -4
  118. data/lib/modern_treasury/models/{foreign_exchange_indicator_enum.rb → foreign_exchange_indicator.rb} +3 -3
  119. data/lib/modern_treasury/models/incoming_payment_detail.rb +41 -43
  120. data/lib/modern_treasury/models/incoming_payment_detail_create_request.rb +31 -17
  121. data/lib/modern_treasury/models/incoming_payment_detail_update_request.rb +17 -4
  122. data/lib/modern_treasury/models/internal_account.rb +32 -34
  123. data/lib/modern_treasury/models/internal_account_create_request.rb +28 -15
  124. data/lib/modern_treasury/models/internal_account_update_request.rb +22 -8
  125. data/lib/modern_treasury/models/invoice.rb +36 -38
  126. data/lib/modern_treasury/models/invoice_create_request.rb +38 -25
  127. data/lib/modern_treasury/models/invoice_line_item.rb +13 -15
  128. data/lib/modern_treasury/models/invoice_line_item_create_request.rb +22 -9
  129. data/lib/modern_treasury/models/invoice_line_item_update_request.rb +38 -25
  130. data/lib/modern_treasury/models/invoice_update_request.rb +40 -26
  131. data/lib/modern_treasury/models/invoicer_address.rb +23 -10
  132. data/lib/modern_treasury/models/{itemizable_type_enum.rb → itemizable_type.rb} +3 -3
  133. data/lib/modern_treasury/models/{itemizable_type1_enum.rb → itemizable_type1.rb} +3 -3
  134. data/lib/modern_treasury/models/ledger.rb +28 -14
  135. data/lib/modern_treasury/models/ledger_account.rb +21 -22
  136. data/lib/modern_treasury/models/ledger_account_category.rb +16 -17
  137. data/lib/modern_treasury/models/ledger_account_category_create_request.rb +26 -13
  138. data/lib/modern_treasury/models/ledger_account_category_update_request.rb +20 -6
  139. data/lib/modern_treasury/models/ledger_account_create_request.rb +30 -17
  140. data/lib/modern_treasury/models/{ledger_account_normal_balance_enum.rb → ledger_account_normal_balance.rb} +3 -3
  141. data/lib/modern_treasury/models/ledger_account_payout.rb +22 -24
  142. data/lib/modern_treasury/models/ledger_account_payout_create_request.rb +29 -14
  143. data/lib/modern_treasury/models/ledger_account_payout_update_request.rb +21 -7
  144. data/lib/modern_treasury/models/ledger_account_statement.rb +21 -23
  145. data/lib/modern_treasury/models/ledger_account_statement_create_request.rb +24 -10
  146. data/lib/modern_treasury/models/ledger_account_update_request.rb +20 -6
  147. data/lib/modern_treasury/models/ledger_balance.rb +6 -7
  148. data/lib/modern_treasury/models/ledger_balances.rb +4 -5
  149. data/lib/modern_treasury/models/ledger_balances_with_effective_at.rb +7 -8
  150. data/lib/modern_treasury/models/ledger_create_request.rb +20 -6
  151. data/lib/modern_treasury/models/ledger_entry.rb +24 -26
  152. data/lib/modern_treasury/models/ledger_entry_create_request.rb +30 -18
  153. data/lib/modern_treasury/models/ledger_entry_of_transaction_version.rb +21 -23
  154. data/lib/modern_treasury/models/ledger_event_handler.rb +14 -15
  155. data/lib/modern_treasury/models/ledger_event_handler_conditions.rb +4 -4
  156. data/lib/modern_treasury/models/ledger_event_handler_create_request.rb +23 -11
  157. data/lib/modern_treasury/models/ledger_event_handler_ledger_entries.rb +4 -4
  158. data/lib/modern_treasury/models/ledger_event_handler_ledger_transaction_template.rb +5 -6
  159. data/lib/modern_treasury/models/ledger_transaction.rb +24 -25
  160. data/lib/modern_treasury/models/ledger_transaction_create_request.rb +29 -17
  161. data/lib/modern_treasury/models/ledger_transaction_reversal_create_request.rb +27 -14
  162. data/lib/modern_treasury/models/ledger_transaction_update_request.rb +24 -10
  163. data/lib/modern_treasury/models/ledger_transaction_version.rb +24 -25
  164. data/lib/modern_treasury/models/{ledger_type_enum.rb → ledger_type.rb} +3 -3
  165. data/lib/modern_treasury/models/ledger_update_request.rb +20 -6
  166. data/lib/modern_treasury/models/ledgerable_event.rb +18 -19
  167. data/lib/modern_treasury/models/ledgerable_event_create_request.rb +26 -13
  168. data/lib/modern_treasury/models/{ledgerable_type_enum.rb → ledgerable_type.rb} +3 -3
  169. data/lib/modern_treasury/models/{ledgerable_type2_enum.rb → ledgerable_type2.rb} +3 -3
  170. data/lib/modern_treasury/models/{ledgerable_type5_enum.rb → ledgerable_type5.rb} +3 -3
  171. data/lib/modern_treasury/models/{ledgerable_type6_enum.rb → ledgerable_type6.rb} +3 -3
  172. data/lib/modern_treasury/models/legacy_document_create_request.rb +19 -5
  173. data/lib/modern_treasury/models/line_item.rb +18 -19
  174. data/lib/modern_treasury/models/line_item_request.rb +22 -8
  175. data/lib/modern_treasury/models/line_item_update_request.rb +17 -4
  176. data/lib/modern_treasury/models/mreturn.rb +48 -50
  177. data/lib/modern_treasury/models/{normal_balance_enum.rb → normal_balance.rb} +3 -3
  178. data/lib/modern_treasury/models/{normal_balance2_enum.rb → normal_balance2.rb} +3 -3
  179. data/lib/modern_treasury/models/order_by.rb +5 -5
  180. data/lib/modern_treasury/models/{originating_account_number_type_enum.rb → originating_account_number_type.rb} +3 -3
  181. data/lib/modern_treasury/models/{originating_routing_number_type_enum.rb → originating_routing_number_type.rb} +3 -3
  182. data/lib/modern_treasury/models/paper_item.rb +25 -27
  183. data/lib/modern_treasury/models/party_address.rb +23 -10
  184. data/lib/modern_treasury/models/{party_type_enum.rb → party_type.rb} +3 -3
  185. data/lib/modern_treasury/models/{party_type5_enum.rb → party_type5.rb} +3 -3
  186. data/lib/modern_treasury/models/{payment_direction_enum.rb → payment_direction.rb} +3 -3
  187. data/lib/modern_treasury/models/payment_flow.rb +21 -22
  188. data/lib/modern_treasury/models/payment_flow_create_request.rb +24 -10
  189. data/lib/modern_treasury/models/payment_flow_update_request.rb +16 -4
  190. data/lib/modern_treasury/models/{payment_method_enum.rb → payment_method.rb} +3 -3
  191. data/lib/modern_treasury/models/{payment_method1_enum.rb → payment_method1.rb} +3 -3
  192. data/lib/modern_treasury/models/payment_order.rb +90 -95
  193. data/lib/modern_treasury/models/payment_order_async_create_request.rb +75 -62
  194. data/lib/modern_treasury/models/payment_order_create_request.rb +77 -63
  195. data/lib/modern_treasury/models/payment_order_update_request.rb +77 -62
  196. data/lib/modern_treasury/models/payment_reference.rb +12 -13
  197. data/lib/modern_treasury/models/payment_reference_object.rb +14 -15
  198. data/lib/modern_treasury/models/{payment_type_enum.rb → payment_type.rb} +3 -3
  199. data/lib/modern_treasury/models/{payment_type1_enum.rb → payment_type1.rb} +3 -3
  200. data/lib/modern_treasury/models/{payment_type13_enum.rb → payment_type13.rb} +3 -3
  201. data/lib/modern_treasury/models/{payment_type2_enum.rb → payment_type2.rb} +3 -3
  202. data/lib/modern_treasury/models/{payment_type4_enum.rb → payment_type4.rb} +3 -3
  203. data/lib/modern_treasury/models/{payment_type5_enum.rb → payment_type5.rb} +3 -3
  204. data/lib/modern_treasury/models/{payment_type6_enum.rb → payment_type6.rb} +3 -3
  205. data/lib/modern_treasury/models/ping_response.rb +2 -2
  206. data/lib/modern_treasury/models/{priority_enum.rb → priority.rb} +3 -3
  207. data/lib/modern_treasury/models/{priority4_enum.rb → priority4.rb} +3 -3
  208. data/lib/modern_treasury/models/{reason_enum.rb → reason.rb} +3 -3
  209. data/lib/modern_treasury/models/{reason1_enum.rb → reason1.rb} +3 -3
  210. data/lib/modern_treasury/models/receiving_account.rb +43 -28
  211. data/lib/modern_treasury/models/receiving_account1.rb +34 -21
  212. data/lib/modern_treasury/models/{receiving_account_type_enum.rb → receiving_account_type.rb} +3 -3
  213. data/lib/modern_treasury/models/{reconciliation_method_enum.rb → reconciliation_method.rb} +3 -3
  214. data/lib/modern_treasury/models/{reference_number_type_enum.rb → reference_number_type.rb} +3 -3
  215. data/lib/modern_treasury/models/{reference_number_type1_enum.rb → reference_number_type1.rb} +3 -3
  216. data/lib/modern_treasury/models/{referenceable_type_enum.rb → referenceable_type.rb} +3 -3
  217. data/lib/modern_treasury/models/{referenceable_type1_enum.rb → referenceable_type1.rb} +3 -3
  218. data/lib/modern_treasury/models/return_create_request.rb +24 -10
  219. data/lib/modern_treasury/models/{returnable_type_enum.rb → returnable_type.rb} +3 -3
  220. data/lib/modern_treasury/models/{returnable_type1_enum.rb → returnable_type1.rb} +3 -3
  221. data/lib/modern_treasury/models/reversal.rb +13 -14
  222. data/lib/modern_treasury/models/reversal_create_request.rb +21 -7
  223. data/lib/modern_treasury/models/{role_enum.rb → role.rb} +3 -3
  224. data/lib/modern_treasury/models/routing_detail.rb +20 -21
  225. data/lib/modern_treasury/models/routing_detail1.rb +23 -9
  226. data/lib/modern_treasury/models/routing_detail_create_request.rb +23 -9
  227. data/lib/modern_treasury/models/routing_number_lookup_request.rb +11 -11
  228. data/lib/modern_treasury/models/{routing_number_type_enum.rb → routing_number_type.rb} +3 -3
  229. data/lib/modern_treasury/models/{routing_number_type1_enum.rb → routing_number_type1.rb} +3 -3
  230. data/lib/modern_treasury/models/{routing_number_type7_enum.rb → routing_number_type7.rb} +3 -3
  231. data/lib/modern_treasury/models/{routing_number_type8_enum.rb → routing_number_type8.rb} +3 -3
  232. data/lib/modern_treasury/models/{status_enum.rb → status.rb} +3 -3
  233. data/lib/modern_treasury/models/{status1_enum.rb → status1.rb} +3 -3
  234. data/lib/modern_treasury/models/{status11_enum.rb → status11.rb} +3 -3
  235. data/lib/modern_treasury/models/{status12_enum.rb → status12.rb} +3 -3
  236. data/lib/modern_treasury/models/{status15_enum.rb → status15.rb} +3 -3
  237. data/lib/modern_treasury/models/{status16_enum.rb → status16.rb} +3 -3
  238. data/lib/modern_treasury/models/{status17_enum.rb → status17.rb} +3 -3
  239. data/lib/modern_treasury/models/{status18_enum.rb → status18.rb} +3 -3
  240. data/lib/modern_treasury/models/{status19_enum.rb → status19.rb} +3 -3
  241. data/lib/modern_treasury/models/{status2_enum.rb → status2.rb} +3 -3
  242. data/lib/modern_treasury/models/{status20_enum.rb → status20.rb} +3 -3
  243. data/lib/modern_treasury/models/{status21_enum.rb → status21.rb} +3 -3
  244. data/lib/modern_treasury/models/{status22_enum.rb → status22.rb} +3 -3
  245. data/lib/modern_treasury/models/{status24_enum.rb → status24.rb} +3 -3
  246. data/lib/modern_treasury/models/{status3_enum.rb → status3.rb} +3 -3
  247. data/lib/modern_treasury/models/{status4_enum.rb → status4.rb} +3 -3
  248. data/lib/modern_treasury/models/{status5_enum.rb → status5.rb} +3 -3
  249. data/lib/modern_treasury/models/{status6_enum.rb → status6.rb} +3 -3
  250. data/lib/modern_treasury/models/{status7_enum.rb → status7.rb} +3 -3
  251. data/lib/modern_treasury/models/{status8_enum.rb → status8.rb} +3 -3
  252. data/lib/modern_treasury/models/{status9_enum.rb → status9.rb} +3 -3
  253. data/lib/modern_treasury/models/{subtype_enum.rb → subtype.rb} +3 -3
  254. data/lib/modern_treasury/models/{supported_payment_type_enum.rb → supported_payment_type.rb} +3 -3
  255. data/lib/modern_treasury/models/{transactable_type_enum.rb → transactable_type.rb} +3 -3
  256. data/lib/modern_treasury/models/transaction.rb +31 -33
  257. data/lib/modern_treasury/models/transaction_line_item.rb +19 -20
  258. data/lib/modern_treasury/models/{type_enum.rb → type.rb} +3 -3
  259. data/lib/modern_treasury/models/{type1_enum.rb → type1.rb} +3 -3
  260. data/lib/modern_treasury/models/{type10_enum.rb → type10.rb} +3 -3
  261. data/lib/modern_treasury/models/{type11_enum.rb → type11.rb} +3 -3
  262. data/lib/modern_treasury/models/{type12_enum.rb → type12.rb} +3 -3
  263. data/lib/modern_treasury/models/{type13_enum.rb → type13.rb} +3 -3
  264. data/lib/modern_treasury/models/{type14_enum.rb → type14.rb} +3 -3
  265. data/lib/modern_treasury/models/{type16_enum.rb → type16.rb} +3 -3
  266. data/lib/modern_treasury/models/{type4_enum.rb → type4.rb} +3 -3
  267. data/lib/modern_treasury/models/{type5_enum.rb → type5.rb} +3 -3
  268. data/lib/modern_treasury/models/{type6_enum.rb → type6.rb} +3 -3
  269. data/lib/modern_treasury/models/{vendor_code_type_enum.rb → vendor_code_type.rb} +3 -3
  270. data/lib/modern_treasury/models/{vendor_code_type1_enum.rb → vendor_code_type1.rb} +3 -3
  271. data/lib/modern_treasury/models/{verification_status_enum.rb → verification_status.rb} +3 -3
  272. data/lib/modern_treasury/models/{verification_status1_enum.rb → verification_status1.rb} +3 -3
  273. data/lib/modern_treasury/models/virtual_account.rb +20 -21
  274. data/lib/modern_treasury/models/virtual_account_create_request.rb +29 -15
  275. data/lib/modern_treasury/models/virtual_account_update_request.rb +19 -6
  276. data/lib/modern_treasury.rb +117 -112
  277. metadata +116 -170
  278. data/test/controllers/controller_test_base.rb +0 -23
  279. data/test/controllers/test_account_collection_flow_controller.rb +0 -64
  280. data/test/controllers/test_connection_controller.rb +0 -41
  281. data/test/controllers/test_counterparty_controller.rb +0 -65
  282. data/test/controllers/test_document_controller.rb +0 -41
  283. data/test/controllers/test_event_controller.rb +0 -46
  284. data/test/controllers/test_expected_payment_controller.rb +0 -71
  285. data/test/controllers/test_external_account_controller.rb +0 -63
  286. data/test/controllers/test_incoming_payment_detail_controller.rb +0 -68
  287. data/test/controllers/test_internal_account_controller.rb +0 -65
  288. data/test/controllers/test_invoice_controller.rb +0 -56
  289. data/test/controllers/test_ledger_account_category_controller.rb +0 -67
  290. data/test/controllers/test_ledger_account_controller.rb +0 -70
  291. data/test/controllers/test_ledger_account_payout_controller.rb +0 -62
  292. data/test/controllers/test_ledger_account_statement_controller.rb +0 -36
  293. data/test/controllers/test_ledger_controller.rb +0 -59
  294. data/test/controllers/test_ledger_entry_controller.rb +0 -65
  295. data/test/controllers/test_ledger_event_handler_controller.rb +0 -63
  296. data/test/controllers/test_ledger_transaction_controller.rb +0 -112
  297. data/test/controllers/test_ledgerable_event_controller.rb +0 -36
  298. data/test/controllers/test_paper_item_controller.rb +0 -43
  299. data/test/controllers/test_payment_flow_controller.rb +0 -67
  300. data/test/controllers/test_payment_order_controller.rb +0 -76
  301. data/test/controllers/test_payment_reference_controller.rb +0 -43
  302. data/test/controllers/test_ping_controller.rb +0 -31
  303. data/test/controllers/test_return_controller.rb +0 -64
  304. data/test/controllers/test_transaction_controller.rb +0 -56
  305. data/test/controllers/test_virtual_account_controller.rb +0 -63
  306. data/test/http_response_catcher.rb +0 -19
@@ -5,8 +5,8 @@
5
5
 
6
6
  module ModernTreasury
7
7
  # One of `credit` or `debit`.
8
- class Direction4Enum
9
- DIRECTION4_ENUM = [
8
+ class Direction4
9
+ DIRECTION4 = [
10
10
  # TODO: Write general description for CREDIT
11
11
  CREDIT = 'credit'.freeze,
12
12
 
@@ -17,7 +17,7 @@ module ModernTreasury
17
17
  def self.validate(value)
18
18
  return false if value.nil?
19
19
 
20
- DIRECTION4_ENUM.include?(value)
20
+ DIRECTION4.include?(value)
21
21
  end
22
22
 
23
23
  def self.from_value(value, default_value = CREDIT)
@@ -8,8 +8,8 @@ module ModernTreasury
8
8
  # transaction. A `credit` moves money from your account to someone else's. A
9
9
  # `debit` pulls money from someone else's account to your own. Note that wire,
10
10
  # rtp, and check payments will always be `credit`.
11
- class Direction5Enum
12
- DIRECTION5_ENUM = [
11
+ class Direction5
12
+ DIRECTION5 = [
13
13
  # TODO: Write general description for CREDIT
14
14
  CREDIT = 'credit'.freeze,
15
15
 
@@ -20,7 +20,7 @@ module ModernTreasury
20
20
  def self.validate(value)
21
21
  return false if value.nil?
22
22
 
23
- DIRECTION5_ENUM.include?(value)
23
+ DIRECTION5.include?(value)
24
24
  end
25
25
 
26
26
  def self.from_value(value, default_value = CREDIT)
@@ -6,8 +6,8 @@
6
6
  module ModernTreasury
7
7
  # Describes the direction money is flowing in the transaction. Can only be
8
8
  # `debit`. A `debit` pulls money from someone else's account to your own.
9
- class Direction9Enum
10
- DIRECTION9_ENUM = [
9
+ class Direction9
10
+ DIRECTION9 = [
11
11
  # TODO: Write general description for CREDIT
12
12
  CREDIT = 'credit'.freeze,
13
13
 
@@ -18,7 +18,7 @@ module ModernTreasury
18
18
  def self.validate(value)
19
19
  return false if value.nil?
20
20
 
21
- DIRECTION9_ENUM.include?(value)
21
+ DIRECTION9.include?(value)
22
22
  end
23
23
 
24
24
  def self.from_value(value, default_value = CREDIT)
@@ -55,7 +55,7 @@ module ModernTreasury
55
55
  # `payment_order`, `transaction`, `paper_item`, `expected_payment`,
56
56
  # `counterparty`, `organization`, `case`, `internal_account`, `decision`, or
57
57
  # `external_account`.
58
- # @return [DocumentableTypeEnum]
58
+ # @return [DocumentableType]
59
59
  attr_accessor :documentable_type
60
60
 
61
61
  # The type of the associated object. Currently can be one of
@@ -103,10 +103,9 @@ module ModernTreasury
103
103
  ]
104
104
  end
105
105
 
106
- def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
107
- updated_at = nil, discarded_at = nil, document_type = nil,
108
- source = nil, documentable_id = nil, documentable_type = nil,
109
- document_details = nil, file = nil)
106
+ def initialize(id:, object:, live_mode:, created_at:, updated_at:,
107
+ discarded_at:, document_type:, source:, documentable_id:,
108
+ documentable_type:, document_details:, file:)
110
109
  @id = id
111
110
  @object = object
112
111
  @live_mode = live_mode
@@ -157,18 +156,18 @@ module ModernTreasury
157
156
  file = File.from_hash(hash['file']) if hash['file']
158
157
 
159
158
  # Create object from extracted values.
160
- Document.new(id,
161
- object,
162
- live_mode,
163
- created_at,
164
- updated_at,
165
- discarded_at,
166
- document_type,
167
- source,
168
- documentable_id,
169
- documentable_type,
170
- document_details,
171
- file)
159
+ Document.new(id: id,
160
+ object: object,
161
+ live_mode: live_mode,
162
+ created_at: created_at,
163
+ updated_at: updated_at,
164
+ discarded_at: discarded_at,
165
+ document_type: document_type,
166
+ source: source,
167
+ documentable_id: documentable_id,
168
+ documentable_type: documentable_type,
169
+ document_details: document_details,
170
+ file: file)
172
171
  end
173
172
 
174
173
  def to_custom_created_at
@@ -14,7 +14,7 @@ module ModernTreasury
14
14
  attr_accessor :documentable_id
15
15
 
16
16
  # The unique identifier for the associated object.
17
- # @return [DocumentableType1Enum]
17
+ # @return [DocumentableType1]
18
18
  attr_accessor :documentable_type
19
19
 
20
20
  # A category given to the document, can be `null`.
@@ -47,12 +47,16 @@ module ModernTreasury
47
47
  []
48
48
  end
49
49
 
50
- def initialize(documentable_id = nil, documentable_type = nil, file = nil,
51
- document_type = SKIP)
50
+ def initialize(documentable_id:, documentable_type:, file:,
51
+ document_type: SKIP, additional_properties: nil)
52
+ # Add additional model properties to the instance
53
+ additional_properties = {} if additional_properties.nil?
54
+
52
55
  @documentable_id = documentable_id
53
56
  @documentable_type = documentable_type
54
57
  @document_type = document_type unless document_type == SKIP
55
58
  @file = file
59
+ @additional_properties = additional_properties
56
60
  end
57
61
 
58
62
  # Creates an instance of the object from a hash.
@@ -67,18 +71,27 @@ module ModernTreasury
67
71
  file = hash.key?('file') ? hash['file'] : nil
68
72
  document_type = hash.key?('document_type') ? hash['document_type'] : SKIP
69
73
 
74
+ # Create a new hash for additional properties, removing known properties.
75
+ new_hash = hash.reject { |k, _| names.value?(k) }
76
+
77
+ additional_properties = APIHelper.get_additional_properties(
78
+ new_hash, proc { |value| value }
79
+ )
80
+
70
81
  # Create object from extracted values.
71
- DocumentCreateRequest.new(documentable_id,
72
- documentable_type,
73
- file,
74
- document_type)
82
+ DocumentCreateRequest.new(documentable_id: documentable_id,
83
+ documentable_type: documentable_type,
84
+ file: file,
85
+ document_type: document_type,
86
+ additional_properties: additional_properties)
75
87
  end
76
88
 
77
89
  # Provides a human-readable string representation of the object.
78
90
  def to_s
79
91
  class_name = self.class.name.split('::').last
80
92
  "<#{class_name} documentable_id: #{@documentable_id}, documentable_type:"\
81
- " #{@documentable_type}, document_type: #{@document_type}, file: #{@file}>"
93
+ " #{@documentable_type}, document_type: #{@document_type}, file: #{@file},"\
94
+ " additional_properties: #{@additional_properties}>"
82
95
  end
83
96
 
84
97
  # Provides a debugging-friendly string with detailed object information.
@@ -86,7 +99,7 @@ module ModernTreasury
86
99
  class_name = self.class.name.split('::').last
87
100
  "<#{class_name} documentable_id: #{@documentable_id.inspect}, documentable_type:"\
88
101
  " #{@documentable_type.inspect}, document_type: #{@document_type.inspect}, file:"\
89
- " #{@file.inspect}>"
102
+ " #{@file.inspect}, additional_properties: #{@additional_properties}>"
90
103
  end
91
104
  end
92
105
  end
@@ -74,9 +74,9 @@ module ModernTreasury
74
74
  ]
75
75
  end
76
76
 
77
- def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
78
- updated_at = nil, discarded_at = nil,
79
- document_identifier_type = nil, document_identifier = nil)
77
+ def initialize(id:, object:, live_mode:, created_at:, updated_at:,
78
+ discarded_at:, document_identifier_type:,
79
+ document_identifier:)
80
80
  @id = id
81
81
  @object = object
82
82
  @live_mode = live_mode
@@ -110,14 +110,14 @@ module ModernTreasury
110
110
  hash.key?('document_identifier') ? hash['document_identifier'] : nil
111
111
 
112
112
  # Create object from extracted values.
113
- DocumentDetail.new(id,
114
- object,
115
- live_mode,
116
- created_at,
117
- updated_at,
118
- discarded_at,
119
- document_identifier_type,
120
- document_identifier)
113
+ DocumentDetail.new(id: id,
114
+ object: object,
115
+ live_mode: live_mode,
116
+ created_at: created_at,
117
+ updated_at: updated_at,
118
+ discarded_at: discarded_at,
119
+ document_identifier_type: document_identifier_type,
120
+ document_identifier: document_identifier)
121
121
  end
122
122
 
123
123
  def to_custom_created_at
@@ -8,8 +8,8 @@ module ModernTreasury
8
8
  # `transaction`, `paper_item`, `expected_payment`, `counterparty`,
9
9
  # `organization`, `case`, `internal_account`, `decision`, or
10
10
  # `external_account`.
11
- class DocumentableTypeEnum
12
- DOCUMENTABLE_TYPE_ENUM = [
11
+ class DocumentableType
12
+ DOCUMENTABLE_TYPE = [
13
13
  # TODO: Write general description for ENUM_CASE
14
14
  ENUM_CASE = 'case'.freeze,
15
15
 
@@ -47,7 +47,7 @@ module ModernTreasury
47
47
  def self.validate(value)
48
48
  return false if value.nil?
49
49
 
50
- DOCUMENTABLE_TYPE_ENUM.include?(value)
50
+ DOCUMENTABLE_TYPE.include?(value)
51
51
  end
52
52
 
53
53
  def self.from_value(value, default_value = ENUM_CASE)
@@ -5,8 +5,8 @@
5
5
 
6
6
  module ModernTreasury
7
7
  # DocumentableType1.
8
- class DocumentableType1Enum
9
- DOCUMENTABLE_TYPE1_ENUM = [
8
+ class DocumentableType1
9
+ DOCUMENTABLE_TYPE1 = [
10
10
  # TODO: Write general description for CASES
11
11
  CASES = 'cases'.freeze,
12
12
 
@@ -44,7 +44,7 @@ module ModernTreasury
44
44
  def self.validate(value)
45
45
  return false if value.nil?
46
46
 
47
- DOCUMENTABLE_TYPE1_ENUM.include?(value)
47
+ DOCUMENTABLE_TYPE1.include?(value)
48
48
  end
49
49
 
50
50
  def self.from_value(value, default_value = CASES)
@@ -5,8 +5,8 @@
5
5
 
6
6
  module ModernTreasury
7
7
  # documentable_type2.
8
- class DocumentableType2Enum
9
- DOCUMENTABLE_TYPE2_ENUM = [
8
+ class DocumentableType2
9
+ DOCUMENTABLE_TYPE2 = [
10
10
  # TODO: Write general description for CASES
11
11
  CASES = 'cases'.freeze,
12
12
 
@@ -44,7 +44,7 @@ module ModernTreasury
44
44
  def self.validate(value)
45
45
  return false if value.nil?
46
46
 
47
- DOCUMENTABLE_TYPE2_ENUM.include?(value)
47
+ DOCUMENTABLE_TYPE2.include?(value)
48
48
  end
49
49
 
50
50
  def self.from_value(value, default_value = CASES)
@@ -5,8 +5,8 @@
5
5
 
6
6
  module ModernTreasury
7
7
  # EffectiveAt.
8
- class EffectiveAtEnum
9
- EFFECTIVE_AT_ENUM = [
8
+ class EffectiveAt
9
+ EFFECTIVE_AT = [
10
10
  # TODO: Write general description for ASC
11
11
  ASC = 'asc'.freeze,
12
12
 
@@ -17,7 +17,7 @@ module ModernTreasury
17
17
  def self.validate(value)
18
18
  return false if value.nil?
19
19
 
20
- EFFECTIVE_AT_ENUM.include?(value)
20
+ EFFECTIVE_AT.include?(value)
21
21
  end
22
22
 
23
23
  def self.from_value(value, default_value = ASC)
@@ -10,7 +10,7 @@ module ModernTreasury
10
10
  private_constant :SKIP
11
11
 
12
12
  # TODO: Write general description for this method
13
- # @return [CodeEnum]
13
+ # @return [Code]
14
14
  attr_accessor :code
15
15
 
16
16
  # TODO: Write general description for this method
@@ -44,10 +44,15 @@ module ModernTreasury
44
44
  []
45
45
  end
46
46
 
47
- def initialize(code = SKIP, message = SKIP, parameter = SKIP)
47
+ def initialize(code: SKIP, message: SKIP, parameter: SKIP,
48
+ additional_properties: nil)
49
+ # Add additional model properties to the instance
50
+ additional_properties = {} if additional_properties.nil?
51
+
48
52
  @code = code unless code == SKIP
49
53
  @message = message unless message == SKIP
50
54
  @parameter = parameter unless parameter == SKIP
55
+ @additional_properties = additional_properties
51
56
  end
52
57
 
53
58
  # Creates an instance of the object from a hash.
@@ -59,23 +64,32 @@ module ModernTreasury
59
64
  message = hash.key?('message') ? hash['message'] : SKIP
60
65
  parameter = hash.key?('parameter') ? hash['parameter'] : SKIP
61
66
 
67
+ # Create a new hash for additional properties, removing known properties.
68
+ new_hash = hash.reject { |k, _| names.value?(k) }
69
+
70
+ additional_properties = APIHelper.get_additional_properties(
71
+ new_hash, proc { |value| value }
72
+ )
73
+
62
74
  # Create object from extracted values.
63
- Errors.new(code,
64
- message,
65
- parameter)
75
+ Errors.new(code: code,
76
+ message: message,
77
+ parameter: parameter,
78
+ additional_properties: additional_properties)
66
79
  end
67
80
 
68
81
  # Provides a human-readable string representation of the object.
69
82
  def to_s
70
83
  class_name = self.class.name.split('::').last
71
- "<#{class_name} code: #{@code}, message: #{@message}, parameter: #{@parameter}>"
84
+ "<#{class_name} code: #{@code}, message: #{@message}, parameter: #{@parameter},"\
85
+ " additional_properties: #{@additional_properties}>"
72
86
  end
73
87
 
74
88
  # Provides a debugging-friendly string with detailed object information.
75
89
  def inspect
76
90
  class_name = self.class.name.split('::').last
77
91
  "<#{class_name} code: #{@code.inspect}, message: #{@message.inspect}, parameter:"\
78
- " #{@parameter.inspect}>"
92
+ " #{@parameter.inspect}, additional_properties: #{@additional_properties}>"
79
93
  end
80
94
  end
81
95
  end
@@ -79,9 +79,8 @@ module ModernTreasury
79
79
  []
80
80
  end
81
81
 
82
- def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
83
- updated_at = nil, resource = nil, event_name = nil,
84
- event_time = nil, data = nil, entity_id = nil)
82
+ def initialize(id:, object:, live_mode:, created_at:, updated_at:,
83
+ resource:, event_name:, event_time:, data:, entity_id:)
85
84
  @id = id
86
85
  @object = object
87
86
  @live_mode = live_mode
@@ -117,16 +116,16 @@ module ModernTreasury
117
116
  entity_id = hash.key?('entity_id') ? hash['entity_id'] : nil
118
117
 
119
118
  # Create object from extracted values.
120
- Event.new(id,
121
- object,
122
- live_mode,
123
- created_at,
124
- updated_at,
125
- resource,
126
- event_name,
127
- event_time,
128
- data,
129
- entity_id)
119
+ Event.new(id: id,
120
+ object: object,
121
+ live_mode: live_mode,
122
+ created_at: created_at,
123
+ updated_at: updated_at,
124
+ resource: resource,
125
+ event_name: event_name,
126
+ event_time: event_time,
127
+ data: data,
128
+ entity_id: entity_id)
130
129
  end
131
130
 
132
131
  def to_custom_created_at
@@ -45,7 +45,7 @@ module ModernTreasury
45
45
 
46
46
  # One of credit or debit. When you are receiving money, use credit. When you
47
47
  # are being charged, use debit.
48
- # @return [Direction1Enum]
48
+ # @return [Direction1]
49
49
  attr_accessor :direction
50
50
 
51
51
  # The ID of the Internal Account for the expected payment.
@@ -54,11 +54,11 @@ module ModernTreasury
54
54
 
55
55
  # One of: ach, au_becs, bacs, book, check, eft, interac, provxchange, rtp,
56
56
  # sen, sepa, signet, wire.
57
- # @return [Type1Enum]
57
+ # @return [Type1]
58
58
  attr_accessor :type
59
59
 
60
60
  # Three-letter ISO currency code.
61
- # @return [CurrencyEnum]
61
+ # @return [Currency]
62
62
  attr_accessor :currency
63
63
 
64
64
  # The latest date the payment may come in. Format: yyyy-mm-dd
@@ -114,13 +114,13 @@ module ModernTreasury
114
114
  attr_accessor :transaction_line_item_id
115
115
 
116
116
  # One of unreconciled, reconciled, or archived.
117
- # @return [Status1Enum]
117
+ # @return [Status1]
118
118
  attr_accessor :status
119
119
 
120
120
  # One of manual if this expected payment was manually reconciled in the
121
121
  # dashboard, automatic if it was automatically reconciled by Modern
122
122
  # Treasury, or null if it is unreconciled.
123
- # @return [ReconciliationMethodEnum]
123
+ # @return [ReconciliationMethod]
124
124
  attr_accessor :reconciliation_method
125
125
 
126
126
  # The ID of the ledger transaction linked to the expected payment.
@@ -182,17 +182,14 @@ module ModernTreasury
182
182
  ]
183
183
  end
184
184
 
185
- def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
186
- updated_at = nil, amount_upper_bound = nil,
187
- amount_lower_bound = nil, direction = nil,
188
- internal_account_id = nil, type = nil, currency = nil,
189
- date_upper_bound = nil, date_lower_bound = nil,
190
- description = nil, statement_descriptor = nil,
191
- metadata = nil, counterparty_id = nil,
192
- remittance_information = nil, reconciliation_groups = nil,
193
- reconciliation_filters = nil, transaction_id = nil,
194
- transaction_line_item_id = nil, status = nil,
195
- reconciliation_method = nil, ledger_transaction_id = nil)
185
+ def initialize(id:, object:, live_mode:, created_at:, updated_at:,
186
+ amount_upper_bound:, amount_lower_bound:, direction:,
187
+ internal_account_id:, type:, currency:, date_upper_bound:,
188
+ date_lower_bound:, description:, statement_descriptor:,
189
+ metadata:, counterparty_id:, remittance_information:,
190
+ reconciliation_groups:, reconciliation_filters:,
191
+ transaction_id:, transaction_line_item_id:, status:,
192
+ reconciliation_method:, ledger_transaction_id:)
196
193
  @id = id
197
194
  @object = object
198
195
  @live_mode = live_mode
@@ -270,31 +267,31 @@ module ModernTreasury
270
267
  hash.key?('ledger_transaction_id') ? hash['ledger_transaction_id'] : nil
271
268
 
272
269
  # Create object from extracted values.
273
- ExpectedPayment.new(id,
274
- object,
275
- live_mode,
276
- created_at,
277
- updated_at,
278
- amount_upper_bound,
279
- amount_lower_bound,
280
- direction,
281
- internal_account_id,
282
- type,
283
- currency,
284
- date_upper_bound,
285
- date_lower_bound,
286
- description,
287
- statement_descriptor,
288
- metadata,
289
- counterparty_id,
290
- remittance_information,
291
- reconciliation_groups,
292
- reconciliation_filters,
293
- transaction_id,
294
- transaction_line_item_id,
295
- status,
296
- reconciliation_method,
297
- ledger_transaction_id)
270
+ ExpectedPayment.new(id: id,
271
+ object: object,
272
+ live_mode: live_mode,
273
+ created_at: created_at,
274
+ updated_at: updated_at,
275
+ amount_upper_bound: amount_upper_bound,
276
+ amount_lower_bound: amount_lower_bound,
277
+ direction: direction,
278
+ internal_account_id: internal_account_id,
279
+ type: type,
280
+ currency: currency,
281
+ date_upper_bound: date_upper_bound,
282
+ date_lower_bound: date_lower_bound,
283
+ description: description,
284
+ statement_descriptor: statement_descriptor,
285
+ metadata: metadata,
286
+ counterparty_id: counterparty_id,
287
+ remittance_information: remittance_information,
288
+ reconciliation_groups: reconciliation_groups,
289
+ reconciliation_filters: reconciliation_filters,
290
+ transaction_id: transaction_id,
291
+ transaction_line_item_id: transaction_line_item_id,
292
+ status: status,
293
+ reconciliation_method: reconciliation_method,
294
+ ledger_transaction_id: ledger_transaction_id)
298
295
  end
299
296
 
300
297
  def to_custom_created_at
@@ -21,7 +21,7 @@ module ModernTreasury
21
21
 
22
22
  # One of credit or debit. When you are receiving money, use credit. When you
23
23
  # are being charged, use debit.
24
- # @return [Direction1Enum]
24
+ # @return [Direction1]
25
25
  attr_accessor :direction
26
26
 
27
27
  # The ID of the Internal Account for the expected payment.
@@ -30,11 +30,11 @@ module ModernTreasury
30
30
 
31
31
  # One of: ach, au_becs, bacs, book, check, eft, interac, provxchange, rtp,
32
32
  # sen, sepa, signet, wire.
33
- # @return [Type1Enum]
33
+ # @return [Type1]
34
34
  attr_accessor :type
35
35
 
36
36
  # Three-letter ISO currency code.
37
- # @return [CurrencyEnum]
37
+ # @return [Currency]
38
38
  attr_accessor :currency
39
39
 
40
40
  # The latest date the payment may come in. Format: yyyy-mm-dd
@@ -138,14 +138,17 @@ module ModernTreasury
138
138
  ]
139
139
  end
140
140
 
141
- def initialize(amount_upper_bound = nil, amount_lower_bound = nil,
142
- direction = nil, internal_account_id = nil, type = SKIP,
143
- currency = SKIP, date_upper_bound = SKIP,
144
- date_lower_bound = SKIP, description = SKIP,
145
- statement_descriptor = SKIP, metadata = SKIP,
146
- counterparty_id = SKIP, remittance_information = SKIP,
147
- reconciliation_groups = SKIP, reconciliation_filters = SKIP,
148
- line_items = SKIP)
141
+ def initialize(amount_upper_bound:, amount_lower_bound:, direction:,
142
+ internal_account_id:, type: SKIP, currency: SKIP,
143
+ date_upper_bound: SKIP, date_lower_bound: SKIP,
144
+ description: SKIP, statement_descriptor: SKIP,
145
+ metadata: SKIP, counterparty_id: SKIP,
146
+ remittance_information: SKIP, reconciliation_groups: SKIP,
147
+ reconciliation_filters: SKIP, line_items: SKIP,
148
+ additional_properties: nil)
149
+ # Add additional model properties to the instance
150
+ additional_properties = {} if additional_properties.nil?
151
+
149
152
  @amount_upper_bound = amount_upper_bound
150
153
  @amount_lower_bound = amount_lower_bound
151
154
  @direction = direction
@@ -162,6 +165,7 @@ module ModernTreasury
162
165
  @reconciliation_groups = reconciliation_groups unless reconciliation_groups == SKIP
163
166
  @reconciliation_filters = reconciliation_filters unless reconciliation_filters == SKIP
164
167
  @line_items = line_items unless line_items == SKIP
168
+ @additional_properties = additional_properties
165
169
  end
166
170
 
167
171
  # Creates an instance of the object from a hash.
@@ -205,23 +209,31 @@ module ModernTreasury
205
209
 
206
210
  line_items = SKIP unless hash.key?('line_items')
207
211
 
212
+ # Create a new hash for additional properties, removing known properties.
213
+ new_hash = hash.reject { |k, _| names.value?(k) }
214
+
215
+ additional_properties = APIHelper.get_additional_properties(
216
+ new_hash, proc { |value| value }
217
+ )
218
+
208
219
  # Create object from extracted values.
209
- ExpectedPaymentCreateRequest.new(amount_upper_bound,
210
- amount_lower_bound,
211
- direction,
212
- internal_account_id,
213
- type,
214
- currency,
215
- date_upper_bound,
216
- date_lower_bound,
217
- description,
218
- statement_descriptor,
219
- metadata,
220
- counterparty_id,
221
- remittance_information,
222
- reconciliation_groups,
223
- reconciliation_filters,
224
- line_items)
220
+ ExpectedPaymentCreateRequest.new(amount_upper_bound: amount_upper_bound,
221
+ amount_lower_bound: amount_lower_bound,
222
+ direction: direction,
223
+ internal_account_id: internal_account_id,
224
+ type: type,
225
+ currency: currency,
226
+ date_upper_bound: date_upper_bound,
227
+ date_lower_bound: date_lower_bound,
228
+ description: description,
229
+ statement_descriptor: statement_descriptor,
230
+ metadata: metadata,
231
+ counterparty_id: counterparty_id,
232
+ remittance_information: remittance_information,
233
+ reconciliation_groups: reconciliation_groups,
234
+ reconciliation_filters: reconciliation_filters,
235
+ line_items: line_items,
236
+ additional_properties: additional_properties)
225
237
  end
226
238
 
227
239
  # Provides a human-readable string representation of the object.
@@ -234,7 +246,8 @@ module ModernTreasury
234
246
  " #{@description}, statement_descriptor: #{@statement_descriptor}, metadata: #{@metadata},"\
235
247
  " counterparty_id: #{@counterparty_id}, remittance_information: #{@remittance_information},"\
236
248
  " reconciliation_groups: #{@reconciliation_groups}, reconciliation_filters:"\
237
- " #{@reconciliation_filters}, line_items: #{@line_items}>"
249
+ " #{@reconciliation_filters}, line_items: #{@line_items}, additional_properties:"\
250
+ " #{@additional_properties}>"
238
251
  end
239
252
 
240
253
  # Provides a debugging-friendly string with detailed object information.
@@ -248,7 +261,8 @@ module ModernTreasury
248
261
  " #{@statement_descriptor.inspect}, metadata: #{@metadata.inspect}, counterparty_id:"\
249
262
  " #{@counterparty_id.inspect}, remittance_information: #{@remittance_information.inspect},"\
250
263
  " reconciliation_groups: #{@reconciliation_groups.inspect}, reconciliation_filters:"\
251
- " #{@reconciliation_filters.inspect}, line_items: #{@line_items.inspect}>"
264
+ " #{@reconciliation_filters.inspect}, line_items: #{@line_items.inspect},"\
265
+ " additional_properties: #{@additional_properties}>"
252
266
  end
253
267
  end
254
268
  end