modern_treasury 0.1.0.pre.alpha.21 → 0.1.0.pre.alpha.22

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 (167) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +27 -0
  3. data/README.md +1 -1
  4. data/lib/modern_treasury/errors.rb +22 -0
  5. data/lib/modern_treasury/internal/transport/base_client.rb +10 -2
  6. data/lib/modern_treasury/internal/type/array_of.rb +6 -1
  7. data/lib/modern_treasury/internal/type/base_model.rb +77 -23
  8. data/lib/modern_treasury/internal/type/boolean.rb +7 -1
  9. data/lib/modern_treasury/internal/type/converter.rb +42 -34
  10. data/lib/modern_treasury/internal/type/enum.rb +10 -2
  11. data/lib/modern_treasury/internal/type/file_input.rb +6 -1
  12. data/lib/modern_treasury/internal/type/hash_of.rb +6 -1
  13. data/lib/modern_treasury/internal/type/union.rb +12 -7
  14. data/lib/modern_treasury/internal/type/unknown.rb +7 -1
  15. data/lib/modern_treasury/models/bulk_request_create_params.rb +143 -18
  16. data/lib/modern_treasury/models/bulk_result.rb +5 -3
  17. data/lib/modern_treasury/models/counterparty_create_params.rb +1 -0
  18. data/lib/modern_treasury/models/external_account_create_params.rb +1 -0
  19. data/lib/modern_treasury/models/incoming_payment_detail.rb +1 -0
  20. data/lib/modern_treasury/models/internal_account.rb +146 -3
  21. data/lib/modern_treasury/models/internal_account_create_params.rb +138 -1
  22. data/lib/modern_treasury/models/internal_accounts/balance_report_retrieve_params.rb +23 -0
  23. data/lib/modern_treasury/models/invoice.rb +10 -1
  24. data/lib/modern_treasury/models/ledger_account.rb +9 -1
  25. data/lib/modern_treasury/models/ledger_account_category.rb +9 -1
  26. data/lib/modern_treasury/models/ledger_account_category_list_params.rb +8 -1
  27. data/lib/modern_treasury/models/ledger_account_list_params.rb +15 -1
  28. data/lib/modern_treasury/models/payment_order.rb +21 -9
  29. data/lib/modern_treasury/models/payment_order_create_async_params.rb +8 -7
  30. data/lib/modern_treasury/models/payment_order_create_params.rb +8 -7
  31. data/lib/modern_treasury/models/payment_order_list_params.rb +9 -1
  32. data/lib/modern_treasury/models/payment_order_update_params.rb +9 -7
  33. data/lib/modern_treasury/models/payment_reference.rb +4 -1
  34. data/lib/modern_treasury/models/return_create_params.rb +75 -1
  35. data/lib/modern_treasury/models/return_object.rb +80 -2
  36. data/lib/modern_treasury/models/routing_detail.rb +1 -0
  37. data/lib/modern_treasury/models/routing_detail_create_params.rb +1 -0
  38. data/lib/modern_treasury/models/transaction.rb +1 -0
  39. data/lib/modern_treasury/models/transaction_create_params.rb +9 -1
  40. data/lib/modern_treasury/models/transactions/transaction_line_item.rb +9 -1
  41. data/lib/modern_treasury/models/validation_validate_routing_number_params.rb +1 -0
  42. data/lib/modern_treasury/models/virtual_account_create_params.rb +1 -0
  43. data/lib/modern_treasury/models.rb +0 -18
  44. data/lib/modern_treasury/resources/bulk_requests.rb +1 -1
  45. data/lib/modern_treasury/resources/internal_accounts/balance_reports.rb +2 -2
  46. data/lib/modern_treasury/resources/internal_accounts.rb +3 -1
  47. data/lib/modern_treasury/resources/ledger_account_categories.rb +3 -1
  48. data/lib/modern_treasury/resources/ledger_accounts.rb +5 -1
  49. data/lib/modern_treasury/resources/ledger_event_handlers.rb +0 -111
  50. data/lib/modern_treasury/resources/ledgerable_events.rb +0 -51
  51. data/lib/modern_treasury/resources/payment_orders.rb +6 -4
  52. data/lib/modern_treasury/resources/returns.rb +3 -1
  53. data/lib/modern_treasury/resources/transactions.rb +3 -1
  54. data/lib/modern_treasury/version.rb +1 -1
  55. data/lib/modern_treasury.rb +0 -9
  56. data/rbi/modern_treasury/errors.rbi +16 -0
  57. data/rbi/modern_treasury/internal/type/boolean.rbi +2 -0
  58. data/rbi/modern_treasury/internal/type/converter.rbi +15 -15
  59. data/rbi/modern_treasury/internal/type/union.rbi +5 -0
  60. data/rbi/modern_treasury/internal/type/unknown.rbi +2 -0
  61. data/rbi/modern_treasury/models/bulk_request_create_params.rbi +234 -18
  62. data/rbi/modern_treasury/models/bulk_result.rbi +2 -0
  63. data/rbi/modern_treasury/models/counterparty_create_params.rbi +5 -0
  64. data/rbi/modern_treasury/models/external_account_create_params.rbi +5 -0
  65. data/rbi/modern_treasury/models/incoming_payment_detail.rbi +5 -0
  66. data/rbi/modern_treasury/models/internal_account.rbi +328 -5
  67. data/rbi/modern_treasury/models/internal_account_create_params.rbi +333 -0
  68. data/rbi/modern_treasury/models/internal_accounts/balance_report_retrieve_params.rbi +37 -0
  69. data/rbi/modern_treasury/models/invoice.rbi +10 -0
  70. data/rbi/modern_treasury/models/ledger_account.rbi +8 -0
  71. data/rbi/modern_treasury/models/ledger_account_category.rbi +8 -0
  72. data/rbi/modern_treasury/models/ledger_account_category_list_params.rbi +9 -0
  73. data/rbi/modern_treasury/models/ledger_account_list_params.rbi +22 -0
  74. data/rbi/modern_treasury/models/payment_order.rbi +39 -14
  75. data/rbi/modern_treasury/models/payment_order_create_async_params.rbi +14 -9
  76. data/rbi/modern_treasury/models/payment_order_create_params.rbi +14 -9
  77. data/rbi/modern_treasury/models/payment_order_list_params.rbi +14 -0
  78. data/rbi/modern_treasury/models/payment_order_update_params.rbi +19 -9
  79. data/rbi/modern_treasury/models/payment_reference.rbi +20 -5
  80. data/rbi/modern_treasury/models/return_create_params.rbi +114 -0
  81. data/rbi/modern_treasury/models/return_object.rbi +131 -5
  82. data/rbi/modern_treasury/models/routing_detail.rbi +5 -0
  83. data/rbi/modern_treasury/models/routing_detail_create_params.rbi +5 -0
  84. data/rbi/modern_treasury/models/transaction.rbi +5 -0
  85. data/rbi/modern_treasury/models/transaction_create_params.rbi +8 -0
  86. data/rbi/modern_treasury/models/transactions/transaction_line_item.rbi +8 -0
  87. data/rbi/modern_treasury/models/validation_validate_routing_number_params.rbi +5 -0
  88. data/rbi/modern_treasury/models/virtual_account_create_params.rbi +5 -0
  89. data/rbi/modern_treasury/models.rbi +0 -25
  90. data/rbi/modern_treasury/resources/bulk_requests.rbi +1 -0
  91. data/rbi/modern_treasury/resources/internal_accounts/balance_reports.rbi +7 -3
  92. data/rbi/modern_treasury/resources/internal_accounts.rbi +7 -0
  93. data/rbi/modern_treasury/resources/ledger_account_categories.rbi +2 -0
  94. data/rbi/modern_treasury/resources/ledger_accounts.rbi +4 -0
  95. data/rbi/modern_treasury/resources/ledger_event_handlers.rbi +0 -97
  96. data/rbi/modern_treasury/resources/ledgerable_events.rbi +0 -38
  97. data/rbi/modern_treasury/resources/payment_orders.rbi +11 -9
  98. data/rbi/modern_treasury/resources/returns.rbi +6 -0
  99. data/rbi/modern_treasury/resources/transactions.rbi +3 -0
  100. data/sig/modern_treasury/errors.rbs +9 -0
  101. data/sig/modern_treasury/internal/type/converter.rbs +7 -1
  102. data/sig/modern_treasury/models/bulk_request_create_params.rbs +101 -0
  103. data/sig/modern_treasury/models/bulk_result.rbs +1 -0
  104. data/sig/modern_treasury/models/counterparty_create_params.rbs +2 -0
  105. data/sig/modern_treasury/models/external_account_create_params.rbs +2 -0
  106. data/sig/modern_treasury/models/incoming_payment_detail.rbs +2 -0
  107. data/sig/modern_treasury/models/internal_account.rbs +147 -3
  108. data/sig/modern_treasury/models/internal_account_create_params.rbs +143 -0
  109. data/sig/modern_treasury/models/internal_accounts/balance_report_retrieve_params.rbs +10 -0
  110. data/sig/modern_treasury/models/invoice.rbs +5 -0
  111. data/sig/modern_treasury/models/ledger_account.rbs +5 -0
  112. data/sig/modern_treasury/models/ledger_account_category.rbs +5 -0
  113. data/sig/modern_treasury/models/ledger_account_category_list_params.rbs +7 -0
  114. data/sig/modern_treasury/models/ledger_account_list_params.rbs +16 -0
  115. data/sig/modern_treasury/models/payment_order.rbs +15 -2
  116. data/sig/modern_treasury/models/payment_order_create_async_params.rbs +2 -0
  117. data/sig/modern_treasury/models/payment_order_create_params.rbs +2 -0
  118. data/sig/modern_treasury/models/payment_order_list_params.rbs +9 -0
  119. data/sig/modern_treasury/models/payment_order_update_params.rbs +4 -0
  120. data/sig/modern_treasury/models/payment_reference.rbs +8 -2
  121. data/sig/modern_treasury/models/return_create_params.rbs +47 -0
  122. data/sig/modern_treasury/models/return_object.rbs +55 -2
  123. data/sig/modern_treasury/models/routing_detail.rbs +2 -0
  124. data/sig/modern_treasury/models/routing_detail_create_params.rbs +2 -0
  125. data/sig/modern_treasury/models/transaction.rbs +2 -0
  126. data/sig/modern_treasury/models/transaction_create_params.rbs +5 -0
  127. data/sig/modern_treasury/models/transactions/transaction_line_item.rbs +5 -0
  128. data/sig/modern_treasury/models/validation_validate_routing_number_params.rbs +2 -0
  129. data/sig/modern_treasury/models/virtual_account_create_params.rbs +2 -0
  130. data/sig/modern_treasury/models.rbs +0 -18
  131. data/sig/modern_treasury/resources/internal_accounts/balance_reports.rbs +1 -1
  132. data/sig/modern_treasury/resources/internal_accounts.rbs +1 -0
  133. data/sig/modern_treasury/resources/ledger_account_categories.rbs +1 -0
  134. data/sig/modern_treasury/resources/ledger_accounts.rbs +2 -0
  135. data/sig/modern_treasury/resources/ledger_event_handlers.rbs +0 -30
  136. data/sig/modern_treasury/resources/ledgerable_events.rbs +0 -13
  137. data/sig/modern_treasury/resources/payment_orders.rbs +1 -0
  138. data/sig/modern_treasury/resources/returns.rbs +1 -0
  139. data/sig/modern_treasury/resources/transactions.rbs +1 -0
  140. metadata +2 -29
  141. data/lib/modern_treasury/models/ledger_event_handler.rb +0 -222
  142. data/lib/modern_treasury/models/ledger_event_handler_create_params.rb +0 -177
  143. data/lib/modern_treasury/models/ledger_event_handler_delete_params.rb +0 -14
  144. data/lib/modern_treasury/models/ledger_event_handler_list_params.rb +0 -58
  145. data/lib/modern_treasury/models/ledger_event_handler_retrieve_params.rb +0 -14
  146. data/lib/modern_treasury/models/ledger_event_handler_variable.rb +0 -59
  147. data/lib/modern_treasury/models/ledgerable_event.rb +0 -92
  148. data/lib/modern_treasury/models/ledgerable_event_create_params.rb +0 -50
  149. data/lib/modern_treasury/models/ledgerable_event_retrieve_params.rb +0 -14
  150. data/rbi/modern_treasury/models/ledger_event_handler.rbi +0 -322
  151. data/rbi/modern_treasury/models/ledger_event_handler_create_params.rbi +0 -303
  152. data/rbi/modern_treasury/models/ledger_event_handler_delete_params.rbi +0 -32
  153. data/rbi/modern_treasury/models/ledger_event_handler_list_params.rbi +0 -92
  154. data/rbi/modern_treasury/models/ledger_event_handler_retrieve_params.rbi +0 -32
  155. data/rbi/modern_treasury/models/ledger_event_handler_variable.rbi +0 -98
  156. data/rbi/modern_treasury/models/ledgerable_event.rbi +0 -108
  157. data/rbi/modern_treasury/models/ledgerable_event_create_params.rbi +0 -75
  158. data/rbi/modern_treasury/models/ledgerable_event_retrieve_params.rbi +0 -32
  159. data/sig/modern_treasury/models/ledger_event_handler.rbs +0 -149
  160. data/sig/modern_treasury/models/ledger_event_handler_create_params.rbs +0 -127
  161. data/sig/modern_treasury/models/ledger_event_handler_delete_params.rbs +0 -15
  162. data/sig/modern_treasury/models/ledger_event_handler_list_params.rbs +0 -54
  163. data/sig/modern_treasury/models/ledger_event_handler_retrieve_params.rbs +0 -15
  164. data/sig/modern_treasury/models/ledger_event_handler_variable.rbs +0 -36
  165. data/sig/modern_treasury/models/ledgerable_event.rbs +0 -65
  166. data/sig/modern_treasury/models/ledgerable_event_create_params.rbs +0 -43
  167. data/sig/modern_treasury/models/ledgerable_event_retrieve_params.rbs +0 -15
@@ -22,6 +22,20 @@ module ModernTreasury
22
22
  end
23
23
  attr_accessor :code
24
24
 
25
+ # Only relevant for ACH NOC returns. This is an object containing all of the new
26
+ # and corrected information provided by the bank that was previously incorrect on
27
+ # the original outgoing payment.
28
+ sig { returns(T.nilable(ModernTreasury::ReturnObject::Corrections)) }
29
+ attr_reader :corrections
30
+
31
+ sig do
32
+ params(
33
+ corrections:
34
+ T.nilable(ModernTreasury::ReturnObject::Corrections::OrHash)
35
+ ).void
36
+ end
37
+ attr_writer :corrections
38
+
25
39
  sig { returns(Time) }
26
40
  attr_accessor :created_at
27
41
 
@@ -127,6 +141,8 @@ module ModernTreasury
127
141
  id: String,
128
142
  amount: Integer,
129
143
  code: T.nilable(ModernTreasury::ReturnObject::Code::OrSymbol),
144
+ corrections:
145
+ T.nilable(ModernTreasury::ReturnObject::Corrections::OrHash),
130
146
  created_at: Time,
131
147
  currency: ModernTreasury::Currency::OrSymbol,
132
148
  current_return: T.nilable(ModernTreasury::ReturnObject),
@@ -160,6 +176,10 @@ module ModernTreasury
160
176
  amount:,
161
177
  # The return code. For ACH returns, this is the required ACH return code.
162
178
  code:,
179
+ # Only relevant for ACH NOC returns. This is an object containing all of the new
180
+ # and corrected information provided by the bank that was previously incorrect on
181
+ # the original outgoing payment.
182
+ corrections:,
163
183
  created_at:,
164
184
  # Currency that this transaction is denominated in.
165
185
  currency:,
@@ -216,6 +236,7 @@ module ModernTreasury
216
236
  id: String,
217
237
  amount: Integer,
218
238
  code: T.nilable(ModernTreasury::ReturnObject::Code::TaggedSymbol),
239
+ corrections: T.nilable(ModernTreasury::ReturnObject::Corrections),
219
240
  created_at: Time,
220
241
  currency: ModernTreasury::Currency::TaggedSymbol,
221
242
  current_return: T.nilable(ModernTreasury::ReturnObject),
@@ -375,6 +396,96 @@ module ModernTreasury
375
396
  end
376
397
  end
377
398
 
399
+ class Corrections < ModernTreasury::Internal::Type::BaseModel
400
+ OrHash =
401
+ T.type_alias do
402
+ T.any(
403
+ ModernTreasury::ReturnObject::Corrections,
404
+ ModernTreasury::Internal::AnyHash
405
+ )
406
+ end
407
+
408
+ # The updated account number that should replace the one originally used on the
409
+ # outgoing payment.
410
+ sig { returns(T.nilable(String)) }
411
+ attr_accessor :account_number
412
+
413
+ # The updated company ID that should replace the one originally used on the
414
+ # outgoing payment.
415
+ sig { returns(T.nilable(String)) }
416
+ attr_accessor :company_id
417
+
418
+ # The updated company name that should replace the one originally used on the
419
+ # outgoing payment.
420
+ sig { returns(T.nilable(String)) }
421
+ attr_accessor :company_name
422
+
423
+ # The updated individual identification number that should replace the one
424
+ # originally used on the outgoing payment.
425
+ sig { returns(T.nilable(String)) }
426
+ attr_accessor :individual_identification_number
427
+
428
+ # The updated routing number that should replace the one originally used on the
429
+ # outgoing payment.
430
+ sig { returns(T.nilable(String)) }
431
+ attr_accessor :routing_number
432
+
433
+ # The updated account type code that should replace the one originally used on the
434
+ # outgoing payment.
435
+ sig { returns(T.nilable(String)) }
436
+ attr_accessor :transaction_code
437
+
438
+ # Only relevant for ACH NOC returns. This is an object containing all of the new
439
+ # and corrected information provided by the bank that was previously incorrect on
440
+ # the original outgoing payment.
441
+ sig do
442
+ params(
443
+ account_number: T.nilable(String),
444
+ company_id: T.nilable(String),
445
+ company_name: T.nilable(String),
446
+ individual_identification_number: T.nilable(String),
447
+ routing_number: T.nilable(String),
448
+ transaction_code: T.nilable(String)
449
+ ).returns(T.attached_class)
450
+ end
451
+ def self.new(
452
+ # The updated account number that should replace the one originally used on the
453
+ # outgoing payment.
454
+ account_number: nil,
455
+ # The updated company ID that should replace the one originally used on the
456
+ # outgoing payment.
457
+ company_id: nil,
458
+ # The updated company name that should replace the one originally used on the
459
+ # outgoing payment.
460
+ company_name: nil,
461
+ # The updated individual identification number that should replace the one
462
+ # originally used on the outgoing payment.
463
+ individual_identification_number: nil,
464
+ # The updated routing number that should replace the one originally used on the
465
+ # outgoing payment.
466
+ routing_number: nil,
467
+ # The updated account type code that should replace the one originally used on the
468
+ # outgoing payment.
469
+ transaction_code: nil
470
+ )
471
+ end
472
+
473
+ sig do
474
+ override.returns(
475
+ {
476
+ account_number: T.nilable(String),
477
+ company_id: T.nilable(String),
478
+ company_name: T.nilable(String),
479
+ individual_identification_number: T.nilable(String),
480
+ routing_number: T.nilable(String),
481
+ transaction_code: T.nilable(String)
482
+ }
483
+ )
484
+ end
485
+ def to_hash
486
+ end
487
+ end
488
+
378
489
  class ReferenceNumber < ModernTreasury::Internal::Type::BaseModel
379
490
  OrHash =
380
491
  T.type_alias do
@@ -560,6 +671,16 @@ module ModernTreasury
560
671
  :column_transfer_id,
561
672
  ModernTreasury::ReturnObject::ReferenceNumber::ReferenceNumberType::TaggedSymbol
562
673
  )
674
+ CROSS_RIVER_CORE_TRANSACTION_ID =
675
+ T.let(
676
+ :cross_river_core_transaction_id,
677
+ ModernTreasury::ReturnObject::ReferenceNumber::ReferenceNumberType::TaggedSymbol
678
+ )
679
+ CROSS_RIVER_FED_BATCH_ID =
680
+ T.let(
681
+ :cross_river_fed_batch_id,
682
+ ModernTreasury::ReturnObject::ReferenceNumber::ReferenceNumberType::TaggedSymbol
683
+ )
563
684
  CROSS_RIVER_PAYMENT_ID =
564
685
  T.let(
565
686
  :cross_river_payment_id,
@@ -590,11 +711,6 @@ module ModernTreasury
590
711
  :dc_bank_transaction_id,
591
712
  ModernTreasury::ReturnObject::ReferenceNumber::ReferenceNumberType::TaggedSymbol
592
713
  )
593
- DWOLLA_TRANSACTION_ID =
594
- T.let(
595
- :dwolla_transaction_id,
596
- ModernTreasury::ReturnObject::ReferenceNumber::ReferenceNumberType::TaggedSymbol
597
- )
598
714
  EFT_TRACE_NUMBER =
599
715
  T.let(
600
716
  :eft_trace_number,
@@ -645,6 +761,16 @@ module ModernTreasury
645
761
  :goldman_sachs_unique_payment_id,
646
762
  ModernTreasury::ReturnObject::ReferenceNumber::ReferenceNumberType::TaggedSymbol
647
763
  )
764
+ HIFI_OFFRAMP_ID =
765
+ T.let(
766
+ :hifi_offramp_id,
767
+ ModernTreasury::ReturnObject::ReferenceNumber::ReferenceNumberType::TaggedSymbol
768
+ )
769
+ HIFI_TRANSFER_ID =
770
+ T.let(
771
+ :hifi_transfer_id,
772
+ ModernTreasury::ReturnObject::ReferenceNumber::ReferenceNumberType::TaggedSymbol
773
+ )
648
774
  INTERAC_MESSAGE_ID =
649
775
  T.let(
650
776
  :interac_message_id,
@@ -457,6 +457,11 @@ module ModernTreasury
457
457
  :id_sknbi_code,
458
458
  ModernTreasury::RoutingDetail::RoutingNumberType::TaggedSymbol
459
459
  )
460
+ IL_BANK_CODE =
461
+ T.let(
462
+ :il_bank_code,
463
+ ModernTreasury::RoutingDetail::RoutingNumberType::TaggedSymbol
464
+ )
460
465
  IN_IFSC =
461
466
  T.let(
462
467
  :in_ifsc,
@@ -193,6 +193,11 @@ module ModernTreasury
193
193
  :id_sknbi_code,
194
194
  ModernTreasury::RoutingDetailCreateParams::RoutingNumberType::TaggedSymbol
195
195
  )
196
+ IL_BANK_CODE =
197
+ T.let(
198
+ :il_bank_code,
199
+ ModernTreasury::RoutingDetailCreateParams::RoutingNumberType::TaggedSymbol
200
+ )
196
201
  IN_IFSC =
197
202
  T.let(
198
203
  :in_ifsc,
@@ -520,6 +520,11 @@ module ModernTreasury
520
520
  :goldman_sachs,
521
521
  ModernTreasury::Transaction::VendorCodeType::TaggedSymbol
522
522
  )
523
+ HIFI =
524
+ T.let(
525
+ :hifi,
526
+ ModernTreasury::Transaction::VendorCodeType::TaggedSymbol
527
+ )
523
528
  ISO20022 =
524
529
  T.let(
525
530
  :iso20022,
@@ -67,6 +67,10 @@ module ModernTreasury
67
67
  end
68
68
  attr_accessor :type
69
69
 
70
+ # An identifier given to this transaction by the bank, often `null`.
71
+ sig { returns(T.nilable(String)) }
72
+ attr_accessor :vendor_customer_id
73
+
70
74
  # The transaction detail text that often appears in on your bank statement and in
71
75
  # your banking portal.
72
76
  sig { returns(T.nilable(String)) }
@@ -84,6 +88,7 @@ module ModernTreasury
84
88
  posted: T::Boolean,
85
89
  type:
86
90
  T.nilable(ModernTreasury::TransactionCreateParams::Type::OrSymbol),
91
+ vendor_customer_id: T.nilable(String),
87
92
  vendor_description: T.nilable(String),
88
93
  request_options: ModernTreasury::RequestOptions::OrHash
89
94
  ).returns(T.attached_class)
@@ -114,6 +119,8 @@ module ModernTreasury
114
119
  # The type of the transaction. Examples could be
115
120
  # `card, `ach`, `wire`, `check`, `rtp`, `book`, or `sen`.
116
121
  type: nil,
122
+ # An identifier given to this transaction by the bank, often `null`.
123
+ vendor_customer_id: nil,
117
124
  # The transaction detail text that often appears in on your bank statement and in
118
125
  # your banking portal.
119
126
  vendor_description: nil,
@@ -136,6 +143,7 @@ module ModernTreasury
136
143
  T.nilable(
137
144
  ModernTreasury::TransactionCreateParams::Type::OrSymbol
138
145
  ),
146
+ vendor_customer_id: T.nilable(String),
139
147
  vendor_description: T.nilable(String),
140
148
  request_options: ModernTreasury::RequestOptions
141
149
  }
@@ -57,6 +57,10 @@ module ModernTreasury
57
57
  sig { returns(T::Boolean) }
58
58
  attr_accessor :reconcilable
59
59
 
60
+ # The ID of the reconciliation group this line item belongs to, otherwise `null`.
61
+ sig { returns(T.nilable(String)) }
62
+ attr_accessor :reconciliation_group_id
63
+
60
64
  # If a matching object exists in Modern Treasury, the ID will be populated here,
61
65
  # otherwise `null`.
62
66
  sig { returns(T.nilable(String)) }
@@ -101,6 +105,7 @@ module ModernTreasury
101
105
  live_mode: T::Boolean,
102
106
  object: String,
103
107
  reconcilable: T::Boolean,
108
+ reconciliation_group_id: T.nilable(String),
104
109
  transactable_id: T.nilable(String),
105
110
  transactable_type:
106
111
  T.nilable(
@@ -136,6 +141,8 @@ module ModernTreasury
136
141
  # Describes whether this line item should be counted towards the corresponding
137
142
  # transaction’s reconciliation.
138
143
  reconcilable:,
144
+ # The ID of the reconciliation group this line item belongs to, otherwise `null`.
145
+ reconciliation_group_id:,
139
146
  # If a matching object exists in Modern Treasury, the ID will be populated here,
140
147
  # otherwise `null`.
141
148
  transactable_id:,
@@ -164,6 +171,7 @@ module ModernTreasury
164
171
  live_mode: T::Boolean,
165
172
  object: String,
166
173
  reconcilable: T::Boolean,
174
+ reconciliation_group_id: T.nilable(String),
167
175
  transactable_id: T.nilable(String),
168
176
  transactable_type:
169
177
  T.nilable(
@@ -133,6 +133,11 @@ module ModernTreasury
133
133
  :id_sknbi_code,
134
134
  ModernTreasury::ValidationValidateRoutingNumberParams::RoutingNumberType::TaggedSymbol
135
135
  )
136
+ IL_BANK_CODE =
137
+ T.let(
138
+ :il_bank_code,
139
+ ModernTreasury::ValidationValidateRoutingNumberParams::RoutingNumberType::TaggedSymbol
140
+ )
136
141
  IN_IFSC =
137
142
  T.let(
138
143
  :in_ifsc,
@@ -694,6 +694,11 @@ module ModernTreasury
694
694
  :id_sknbi_code,
695
695
  ModernTreasury::VirtualAccountCreateParams::RoutingDetail::RoutingNumberType::TaggedSymbol
696
696
  )
697
+ IL_BANK_CODE =
698
+ T.let(
699
+ :il_bank_code,
700
+ ModernTreasury::VirtualAccountCreateParams::RoutingDetail::RoutingNumberType::TaggedSymbol
701
+ )
697
702
  IN_IFSC =
698
703
  T.let(
699
704
  :in_ifsc,
@@ -200,14 +200,6 @@ module ModernTreasury
200
200
 
201
201
  Ledger = ModernTreasury::Models::Ledger
202
202
 
203
- LedgerableEvent = ModernTreasury::Models::LedgerableEvent
204
-
205
- LedgerableEventCreateParams =
206
- ModernTreasury::Models::LedgerableEventCreateParams
207
-
208
- LedgerableEventRetrieveParams =
209
- ModernTreasury::Models::LedgerableEventRetrieveParams
210
-
211
203
  LedgerAccount = ModernTreasury::Models::LedgerAccount
212
204
 
213
205
  LedgerAccountBalanceMonitor =
@@ -302,23 +294,6 @@ module ModernTreasury
302
294
 
303
295
  LedgerEntryUpdateParams = ModernTreasury::Models::LedgerEntryUpdateParams
304
296
 
305
- LedgerEventHandler = ModernTreasury::Models::LedgerEventHandler
306
-
307
- LedgerEventHandlerCreateParams =
308
- ModernTreasury::Models::LedgerEventHandlerCreateParams
309
-
310
- LedgerEventHandlerDeleteParams =
311
- ModernTreasury::Models::LedgerEventHandlerDeleteParams
312
-
313
- LedgerEventHandlerListParams =
314
- ModernTreasury::Models::LedgerEventHandlerListParams
315
-
316
- LedgerEventHandlerRetrieveParams =
317
- ModernTreasury::Models::LedgerEventHandlerRetrieveParams
318
-
319
- LedgerEventHandlerVariable =
320
- ModernTreasury::Models::LedgerEventHandlerVariable
321
-
322
297
  LedgerListParams = ModernTreasury::Models::LedgerListParams
323
298
 
324
299
  LedgerRetrieveParams = ModernTreasury::Models::LedgerRetrieveParams
@@ -16,6 +16,7 @@ module ModernTreasury
16
16
  ModernTreasury::BulkRequestCreateParams::Resource::PaymentOrderAsyncCreateRequest::OrHash,
17
17
  ModernTreasury::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::OrHash,
18
18
  ModernTreasury::BulkRequestCreateParams::Resource::LedgerTransactionCreateRequest::OrHash,
19
+ ModernTreasury::BulkRequestCreateParams::Resource::LedgerAccountCreateRequest::OrHash,
19
20
  ModernTreasury::BulkRequestCreateParams::Resource::TransactionCreateRequest::OrHash,
20
21
  ModernTreasury::BulkRequestCreateParams::Resource::ID::OrHash,
21
22
  ModernTreasury::BulkRequestCreateParams::Resource::PaymentOrderUpdateRequestWithID::OrHash,
@@ -37,13 +37,17 @@ module ModernTreasury
37
37
  # Get a single balance report for a given internal account.
38
38
  sig do
39
39
  params(
40
- id: String,
40
+ id:
41
+ T.any(
42
+ String,
43
+ ModernTreasury::InternalAccounts::BalanceReportRetrieveParams::ID::OrSymbol
44
+ ),
41
45
  internal_account_id: String,
42
46
  request_options: ModernTreasury::RequestOptions::OrHash
43
47
  ).returns(ModernTreasury::InternalAccounts::BalanceReport)
44
48
  end
45
49
  def retrieve(
46
- # Either the unique identifier of the balance report or latest for the latest
50
+ # Either the unique identifier of the balance report or 'latest' for the latest
47
51
  # balance report.
48
52
  id,
49
53
  internal_account_id:,
@@ -89,7 +93,7 @@ module ModernTreasury
89
93
  ).void
90
94
  end
91
95
  def delete(
92
- # Either the unique identifier of the balance report or latest for the latest
96
+ # Either the unique identifier of the balance report or 'latest' for the latest
93
97
  # balance report.
94
98
  id,
95
99
  internal_account_id:,
@@ -16,6 +16,10 @@ module ModernTreasury
16
16
  ModernTreasury::InternalAccountCreateParams::Currency::OrSymbol,
17
17
  name: String,
18
18
  party_name: String,
19
+ account_capabilities:
20
+ T::Array[
21
+ ModernTreasury::InternalAccountCreateParams::AccountCapability::OrHash
22
+ ],
19
23
  account_type:
20
24
  ModernTreasury::InternalAccountCreateParams::AccountType::OrSymbol,
21
25
  counterparty_id: String,
@@ -37,6 +41,9 @@ module ModernTreasury
37
41
  name:,
38
42
  # The legal name of the entity which owns the account.
39
43
  party_name:,
44
+ # An array of AccountCapability objects that list the originating abilities of the
45
+ # internal account and any relevant information for them.
46
+ account_capabilities: nil,
40
47
  # The account type, used to provision the appropriate account at the financial
41
48
  # institution.
42
49
  account_type: nil,
@@ -92,6 +92,7 @@ module ModernTreasury
92
92
  balances:
93
93
  ModernTreasury::LedgerAccountCategoryListParams::Balances::OrHash,
94
94
  currency: String,
95
+ external_id: String,
95
96
  ledger_account_id: String,
96
97
  ledger_id: String,
97
98
  metadata: T::Hash[Symbol, String],
@@ -113,6 +114,7 @@ module ModernTreasury
113
114
  # The balances as of a time are inclusive of entries with that exact time.
114
115
  balances: nil,
115
116
  currency: nil,
117
+ external_id: nil,
116
118
  # Query categories which contain a ledger account directly or through child
117
119
  # categories.
118
120
  ledger_account_id: nil,
@@ -107,10 +107,12 @@ module ModernTreasury
107
107
  balances: ModernTreasury::LedgerAccountListParams::Balances::OrHash,
108
108
  created_at: T::Hash[Symbol, Time],
109
109
  currency: String,
110
+ external_id: String,
110
111
  ledger_account_category_id: String,
111
112
  ledger_id: String,
112
113
  metadata: T::Hash[Symbol, String],
113
114
  name: T::Array[String],
115
+ normal_balance: ModernTreasury::TransactionDirection::OrSymbol,
114
116
  pending_balance_amount:
115
117
  ModernTreasury::LedgerAccountListParams::PendingBalanceAmount::OrHash,
116
118
  per_page: Integer,
@@ -139,6 +141,7 @@ module ModernTreasury
139
141
  # created_at%5Bgt%5D=2000-01-01T12:00:00Z.
140
142
  created_at: nil,
141
143
  currency: nil,
144
+ external_id: nil,
142
145
  ledger_account_category_id: nil,
143
146
  ledger_id: nil,
144
147
  # For example, if you want to query for records with metadata key `Type` and value
@@ -148,6 +151,7 @@ module ModernTreasury
148
151
  # If you have specific names to retrieve in bulk, you can pass them as query
149
152
  # parameters delimited with `name[]=`, for example `?name[]=123&name[]=abc`.
150
153
  name: nil,
154
+ normal_balance: nil,
151
155
  # Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), `eq` (=), or `not_eq` (!=) to
152
156
  # filter by balance amount.
153
157
  pending_balance_amount: nil,
@@ -3,103 +3,6 @@
3
3
  module ModernTreasury
4
4
  module Resources
5
5
  class LedgerEventHandlers
6
- # create ledger_event_handler
7
- sig do
8
- params(
9
- ledger_transaction_template:
10
- ModernTreasury::LedgerEventHandlerCreateParams::LedgerTransactionTemplate::OrHash,
11
- name: String,
12
- conditions:
13
- T.nilable(
14
- ModernTreasury::LedgerEventHandlerCreateParams::Conditions::OrHash
15
- ),
16
- description: T.nilable(String),
17
- ledger_id: String,
18
- metadata: T.nilable(T::Hash[Symbol, String]),
19
- variables:
20
- T.nilable(
21
- T::Hash[
22
- Symbol,
23
- ModernTreasury::LedgerEventHandlerVariable::OrHash
24
- ]
25
- ),
26
- request_options: ModernTreasury::RequestOptions::OrHash
27
- ).returns(ModernTreasury::LedgerEventHandler)
28
- end
29
- def create(
30
- ledger_transaction_template:,
31
- # Name of the ledger event handler.
32
- name:,
33
- conditions: nil,
34
- # An optional description.
35
- description: nil,
36
- # The id of the ledger that this account belongs to.
37
- ledger_id: nil,
38
- # Additional data represented as key-value pairs. Both the key and value must be
39
- # strings.
40
- metadata: nil,
41
- variables: nil,
42
- request_options: {}
43
- )
44
- end
45
-
46
- # Get details on a single ledger event handler.
47
- sig do
48
- params(
49
- id: String,
50
- request_options: ModernTreasury::RequestOptions::OrHash
51
- ).returns(ModernTreasury::LedgerEventHandler)
52
- end
53
- def retrieve(
54
- # id
55
- id,
56
- request_options: {}
57
- )
58
- end
59
-
60
- # Get a list of ledger event handlers.
61
- sig do
62
- params(
63
- after_cursor: T.nilable(String),
64
- created_at: T::Hash[Symbol, Time],
65
- metadata: T::Hash[Symbol, String],
66
- name: String,
67
- per_page: Integer,
68
- request_options: ModernTreasury::RequestOptions::OrHash
69
- ).returns(
70
- ModernTreasury::Internal::Page[ModernTreasury::LedgerEventHandler]
71
- )
72
- end
73
- def list(
74
- after_cursor: nil,
75
- # Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the
76
- # posted at timestamp. For example, for all times after Jan 1 2000 12:00 UTC, use
77
- # created_at%5Bgt%5D=2000-01-01T12:00:00Z.
78
- created_at: nil,
79
- # For example, if you want to query for records with metadata key `Type` and value
80
- # `Loan`, the query would be `metadata%5BType%5D=Loan`. This encodes the query
81
- # parameters.
82
- metadata: nil,
83
- name: nil,
84
- per_page: nil,
85
- request_options: {}
86
- )
87
- end
88
-
89
- # Archive a ledger event handler.
90
- sig do
91
- params(
92
- id: String,
93
- request_options: ModernTreasury::RequestOptions::OrHash
94
- ).returns(ModernTreasury::LedgerEventHandler)
95
- end
96
- def delete(
97
- # id
98
- id,
99
- request_options: {}
100
- )
101
- end
102
-
103
6
  # @api private
104
7
  sig { params(client: ModernTreasury::Client).returns(T.attached_class) }
105
8
  def self.new(client:)
@@ -3,44 +3,6 @@
3
3
  module ModernTreasury
4
4
  module Resources
5
5
  class LedgerableEvents
6
- # Create a ledgerable event.
7
- sig do
8
- params(
9
- name: String,
10
- custom_data: T.nilable(T.anything),
11
- description: T.nilable(String),
12
- metadata: T::Hash[Symbol, String],
13
- request_options: ModernTreasury::RequestOptions::OrHash
14
- ).returns(ModernTreasury::LedgerableEvent)
15
- end
16
- def create(
17
- # Name of the ledgerable event.
18
- name:,
19
- # Additionally data to be used by the Ledger Event Handler.
20
- custom_data: nil,
21
- # Description of the ledgerable event.
22
- description: nil,
23
- # Additional data represented as key-value pairs. Both the key and value must be
24
- # strings.
25
- metadata: nil,
26
- request_options: {}
27
- )
28
- end
29
-
30
- # Get details on a single ledgerable event.
31
- sig do
32
- params(
33
- id: String,
34
- request_options: ModernTreasury::RequestOptions::OrHash
35
- ).returns(ModernTreasury::LedgerableEvent)
36
- end
37
- def retrieve(
38
- # id
39
- id,
40
- request_options: {}
41
- )
42
- end
43
-
44
6
  # @api private
45
7
  sig { params(client: ModernTreasury::Client).returns(T.attached_class) }
46
8
  def self.new(client:)
@@ -88,9 +88,9 @@ module ModernTreasury
88
88
  # The ID of one of your accounting ledger classes. Note that these will only be
89
89
  # accessible if your accounting system has been connected.
90
90
  accounting_ledger_class_id: nil,
91
- # The party that will pay the fees for the payment order. Only applies to wire
92
- # payment orders. Can be one of shared, sender, or receiver, which correspond
93
- # respectively with the SWIFT 71A values `SHA`, `OUR`, `BEN`.
91
+ # The party that will pay the fees for the payment order. See
92
+ # https://docs.moderntreasury.com/payments/docs/charge-bearer to understand the
93
+ # differences between the options.
94
94
  charge_bearer: nil,
95
95
  # Defaults to the currency of the originating account.
96
96
  currency: nil,
@@ -272,9 +272,9 @@ module ModernTreasury
272
272
  # Value in specified currency's smallest unit. e.g. $10 would be represented as
273
273
  # 1000 (cents). For RTP, the maximum amount allowed by the network is $100,000.
274
274
  amount: nil,
275
- # The party that will pay the fees for the payment order. Only applies to wire
276
- # payment orders. Can be one of shared, sender, or receiver, which correspond
277
- # respectively with the SWIFT 71A values `SHA`, `OUR`, `BEN`.
275
+ # The party that will pay the fees for the payment order. See
276
+ # https://docs.moderntreasury.com/payments/docs/charge-bearer to understand the
277
+ # differences between the options.
278
278
  charge_bearer: nil,
279
279
  # Required when receiving_account_id is passed the ID of an external account.
280
280
  counterparty_id: nil,
@@ -398,6 +398,7 @@ module ModernTreasury
398
398
  direction: ModernTreasury::TransactionDirection::OrSymbol,
399
399
  effective_date_end: Date,
400
400
  effective_date_start: Date,
401
+ external_id: String,
401
402
  metadata: T::Hash[Symbol, String],
402
403
  originating_account_id: String,
403
404
  per_page: Integer,
@@ -423,6 +424,7 @@ module ModernTreasury
423
424
  effective_date_end: nil,
424
425
  # An inclusive lower bound for searching effective_date
425
426
  effective_date_start: nil,
427
+ external_id: nil,
426
428
  # For example, if you want to query for records with metadata key `Type` and value
427
429
  # `Loan`, the query would be `metadata%5BType%5D=Loan`. This encodes the query
428
430
  # parameters.
@@ -525,9 +527,9 @@ module ModernTreasury
525
527
  # The ID of one of your accounting ledger classes. Note that these will only be
526
528
  # accessible if your accounting system has been connected.
527
529
  accounting_ledger_class_id: nil,
528
- # The party that will pay the fees for the payment order. Only applies to wire
529
- # payment orders. Can be one of shared, sender, or receiver, which correspond
530
- # respectively with the SWIFT 71A values `SHA`, `OUR`, `BEN`.
530
+ # The party that will pay the fees for the payment order. See
531
+ # https://docs.moderntreasury.com/payments/docs/charge-bearer to understand the
532
+ # differences between the options.
531
533
  charge_bearer: nil,
532
534
  # Defaults to the currency of the originating account.
533
535
  currency: nil,