modern_treasury 0.11.0 → 0.12.0

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 (116) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +31 -0
  3. data/README.md +10 -1
  4. data/lib/modern_treasury/internal/transport/pooled_net_requester.rb +12 -10
  5. data/lib/modern_treasury/internal/util.rb +7 -2
  6. data/lib/modern_treasury/models/bulk_request_create_params.rb +146 -2
  7. data/lib/modern_treasury/models/child_legal_entity.rb +609 -0
  8. data/lib/modern_treasury/models/child_legal_entity_create.rb +63 -1
  9. data/lib/modern_treasury/models/connection_legal_entity.rb +2 -0
  10. data/lib/modern_treasury/models/connection_legal_entity_create_params.rb +54 -63
  11. data/lib/modern_treasury/models/connection_legal_entity_list_params.rb +2 -0
  12. data/lib/modern_treasury/models/counterparty_create_params.rb +54 -59
  13. data/lib/modern_treasury/models/expected_payment.rb +69 -1
  14. data/lib/modern_treasury/models/expected_payment_create_params.rb +65 -1
  15. data/lib/modern_treasury/models/expected_payment_update_params.rb +65 -1
  16. data/lib/modern_treasury/models/incoming_payment_detail.rb +5 -0
  17. data/lib/modern_treasury/models/incoming_payment_detail_create_async_params.rb +5 -0
  18. data/lib/modern_treasury/models/incoming_payment_detail_list_params.rb +5 -0
  19. data/lib/modern_treasury/models/internal_account.rb +10 -1
  20. data/lib/modern_treasury/models/internal_account_update_params.rb +9 -1
  21. data/lib/modern_treasury/models/invoice.rb +2 -0
  22. data/lib/modern_treasury/models/invoice_create_params.rb +1 -19
  23. data/lib/modern_treasury/models/invoice_update_params.rb +1 -19
  24. data/lib/modern_treasury/models/ledger_entry.rb +10 -1
  25. data/lib/modern_treasury/models/ledger_entry_create_request.rb +10 -1
  26. data/lib/modern_treasury/models/ledger_transactions/ledger_transaction_version.rb +10 -1
  27. data/lib/modern_treasury/models/legal_entity.rb +61 -11
  28. data/lib/modern_treasury/models/legal_entity_association.rb +3 -559
  29. data/lib/modern_treasury/models/legal_entity_association_inline_create.rb +60 -0
  30. data/lib/modern_treasury/models/legal_entity_create_params.rb +54 -59
  31. data/lib/modern_treasury/models/legal_entity_update_params.rb +51 -1
  32. data/lib/modern_treasury/models/payment_order.rb +4 -0
  33. data/lib/modern_treasury/models/payment_reference.rb +4 -0
  34. data/lib/modern_treasury/models/return_object.rb +5 -0
  35. data/lib/modern_treasury/models/transaction.rb +1 -0
  36. data/lib/modern_treasury/models.rb +4 -0
  37. data/lib/modern_treasury/resources/expected_payments.rb +18 -2
  38. data/lib/modern_treasury/resources/internal_accounts.rb +3 -1
  39. data/lib/modern_treasury/resources/invoices.rb +2 -10
  40. data/lib/modern_treasury/resources/ledger_accounts.rb +3 -3
  41. data/lib/modern_treasury/resources/ledger_transactions.rb +5 -2
  42. data/lib/modern_treasury/resources/legal_entities.rb +27 -3
  43. data/lib/modern_treasury/version.rb +1 -1
  44. data/lib/modern_treasury.rb +3 -0
  45. data/manifest.yaml +1 -0
  46. data/rbi/modern_treasury/models/bulk_request_create_params.rbi +272 -0
  47. data/rbi/modern_treasury/models/child_legal_entity.rbi +969 -0
  48. data/rbi/modern_treasury/models/child_legal_entity_create.rbi +78 -0
  49. data/rbi/modern_treasury/models/connection_legal_entity.rbi +10 -0
  50. data/rbi/modern_treasury/models/connection_legal_entity_create_params.rbi +61 -135
  51. data/rbi/modern_treasury/models/connection_legal_entity_list_params.rbi +10 -0
  52. data/rbi/modern_treasury/models/counterparty_create_params.rbi +61 -135
  53. data/rbi/modern_treasury/models/expected_payment.rbi +136 -0
  54. data/rbi/modern_treasury/models/expected_payment_create_params.rbi +136 -0
  55. data/rbi/modern_treasury/models/expected_payment_update_params.rbi +136 -0
  56. data/rbi/modern_treasury/models/incoming_payment_detail.rbi +25 -0
  57. data/rbi/modern_treasury/models/incoming_payment_detail_create_async_params.rbi +25 -0
  58. data/rbi/modern_treasury/models/incoming_payment_detail_list_params.rbi +25 -0
  59. data/rbi/modern_treasury/models/internal_account.rbi +10 -0
  60. data/rbi/modern_treasury/models/internal_account_update_params.rbi +11 -0
  61. data/rbi/modern_treasury/models/invoice_create_params.rbi +0 -20
  62. data/rbi/modern_treasury/models/invoice_update_params.rbi +0 -20
  63. data/rbi/modern_treasury/models/ledger_entry.rbi +10 -0
  64. data/rbi/modern_treasury/models/ledger_entry_create_request.rbi +13 -0
  65. data/rbi/modern_treasury/models/ledger_transactions/ledger_transaction_version.rbi +10 -0
  66. data/rbi/modern_treasury/models/legal_entity.rbi +67 -15
  67. data/rbi/modern_treasury/models/legal_entity_association.rbi +4 -962
  68. data/rbi/modern_treasury/models/legal_entity_association_inline_create.rbi +130 -0
  69. data/rbi/modern_treasury/models/legal_entity_create_params.rbi +61 -134
  70. data/rbi/modern_treasury/models/legal_entity_update_params.rbi +58 -0
  71. data/rbi/modern_treasury/models/payment_order.rbi +20 -0
  72. data/rbi/modern_treasury/models/payment_reference.rbi +20 -0
  73. data/rbi/modern_treasury/models/return_object.rbi +22 -0
  74. data/rbi/modern_treasury/models/transaction.rbi +5 -0
  75. data/rbi/modern_treasury/models.rbi +5 -0
  76. data/rbi/modern_treasury/resources/expected_payments.rbi +44 -0
  77. data/rbi/modern_treasury/resources/internal_accounts.rbi +3 -0
  78. data/rbi/modern_treasury/resources/invoices.rbi +0 -16
  79. data/rbi/modern_treasury/resources/ledger_accounts.rbi +3 -3
  80. data/rbi/modern_treasury/resources/ledger_transactions.rbi +3 -2
  81. data/rbi/modern_treasury/resources/legal_entities.rbi +41 -1
  82. data/sig/modern_treasury/models/bulk_request_create_params.rbs +84 -0
  83. data/sig/modern_treasury/models/child_legal_entity.rbs +469 -0
  84. data/sig/modern_treasury/models/child_legal_entity_create.rbs +39 -0
  85. data/sig/modern_treasury/models/connection_legal_entity.rbs +4 -1
  86. data/sig/modern_treasury/models/connection_legal_entity_create_params.rbs +38 -60
  87. data/sig/modern_treasury/models/connection_legal_entity_list_params.rbs +4 -1
  88. data/sig/modern_treasury/models/counterparty_create_params.rbs +38 -60
  89. data/sig/modern_treasury/models/expected_payment.rbs +42 -0
  90. data/sig/modern_treasury/models/expected_payment_create_params.rbs +42 -0
  91. data/sig/modern_treasury/models/expected_payment_update_params.rbs +42 -0
  92. data/sig/modern_treasury/models/incoming_payment_detail.rbs +10 -0
  93. data/sig/modern_treasury/models/incoming_payment_detail_create_async_params.rbs +10 -0
  94. data/sig/modern_treasury/models/incoming_payment_detail_list_params.rbs +10 -0
  95. data/sig/modern_treasury/models/internal_account.rbs +5 -0
  96. data/sig/modern_treasury/models/internal_account_update_params.rbs +7 -0
  97. data/sig/modern_treasury/models/invoice_create_params.rbs +0 -10
  98. data/sig/modern_treasury/models/invoice_update_params.rbs +0 -10
  99. data/sig/modern_treasury/models/ledger_entry.rbs +5 -0
  100. data/sig/modern_treasury/models/ledger_entry_create_request.rbs +7 -0
  101. data/sig/modern_treasury/models/ledger_transactions/ledger_transaction_version.rbs +5 -0
  102. data/sig/modern_treasury/models/legal_entity.rbs +38 -8
  103. data/sig/modern_treasury/models/legal_entity_association.rbs +4 -435
  104. data/sig/modern_treasury/models/legal_entity_association_inline_create.rbs +59 -0
  105. data/sig/modern_treasury/models/legal_entity_create_params.rbs +38 -60
  106. data/sig/modern_treasury/models/legal_entity_update_params.rbs +34 -0
  107. data/sig/modern_treasury/models/payment_order.rbs +8 -0
  108. data/sig/modern_treasury/models/payment_reference.rbs +8 -0
  109. data/sig/modern_treasury/models/return_object.rbs +10 -0
  110. data/sig/modern_treasury/models/transaction.rbs +2 -0
  111. data/sig/modern_treasury/models.rbs +4 -0
  112. data/sig/modern_treasury/resources/expected_payments.rbs +8 -0
  113. data/sig/modern_treasury/resources/internal_accounts.rbs +1 -0
  114. data/sig/modern_treasury/resources/invoices.rbs +0 -4
  115. data/sig/modern_treasury/resources/legal_entities.rbs +13 -1
  116. metadata +8 -2
@@ -789,6 +789,10 @@ module ModernTreasury
789
789
  type expected_payment_create_request =
790
790
  {
791
791
  amount_lower_bound: Integer?,
792
+ amount_reconciled: Integer?,
793
+ amount_reconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::amount_reconciled_direction?,
794
+ amount_unreconciled: Integer?,
795
+ amount_unreconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::amount_unreconciled_direction?,
792
796
  amount_upper_bound: Integer?,
793
797
  counterparty_id: String?,
794
798
  currency: ModernTreasury::Models::currency?,
@@ -813,6 +817,14 @@ module ModernTreasury
813
817
  class ExpectedPaymentCreateRequest < ModernTreasury::Internal::Type::BaseModel
814
818
  attr_accessor amount_lower_bound: Integer?
815
819
 
820
+ attr_accessor amount_reconciled: Integer?
821
+
822
+ attr_accessor amount_reconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::amount_reconciled_direction?
823
+
824
+ attr_accessor amount_unreconciled: Integer?
825
+
826
+ attr_accessor amount_unreconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::amount_unreconciled_direction?
827
+
816
828
  attr_accessor amount_upper_bound: Integer?
817
829
 
818
830
  attr_accessor counterparty_id: String?
@@ -865,6 +877,10 @@ module ModernTreasury
865
877
 
866
878
  def initialize: (
867
879
  ?amount_lower_bound: Integer?,
880
+ ?amount_reconciled: Integer?,
881
+ ?amount_reconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::amount_reconciled_direction?,
882
+ ?amount_unreconciled: Integer?,
883
+ ?amount_unreconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::amount_unreconciled_direction?,
868
884
  ?amount_upper_bound: Integer?,
869
885
  ?counterparty_id: String?,
870
886
  ?currency: ModernTreasury::Models::currency?,
@@ -888,6 +904,10 @@ module ModernTreasury
888
904
 
889
905
  def to_hash: -> {
890
906
  amount_lower_bound: Integer?,
907
+ amount_reconciled: Integer?,
908
+ amount_reconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::amount_reconciled_direction?,
909
+ amount_unreconciled: Integer?,
910
+ amount_unreconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::amount_unreconciled_direction?,
891
911
  amount_upper_bound: Integer?,
892
912
  counterparty_id: String?,
893
913
  currency: ModernTreasury::Models::currency?,
@@ -909,6 +929,28 @@ module ModernTreasury
909
929
  type: ModernTreasury::Models::expected_payment_type?
910
930
  }
911
931
 
932
+ type amount_reconciled_direction = :credit | :debit
933
+
934
+ module AmountReconciledDirection
935
+ extend ModernTreasury::Internal::Type::Enum
936
+
937
+ CREDIT: :credit
938
+ DEBIT: :debit
939
+
940
+ def self?.values: -> ::Array[ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::amount_reconciled_direction]
941
+ end
942
+
943
+ type amount_unreconciled_direction = :credit | :debit
944
+
945
+ module AmountUnreconciledDirection
946
+ extend ModernTreasury::Internal::Type::Enum
947
+
948
+ CREDIT: :credit
949
+ DEBIT: :debit
950
+
951
+ def self?.values: -> ::Array[ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentCreateRequest::amount_unreconciled_direction]
952
+ end
953
+
912
954
  type direction = :credit | :debit
913
955
 
914
956
  module Direction
@@ -1865,6 +1907,10 @@ module ModernTreasury
1865
1907
  {
1866
1908
  id: String,
1867
1909
  amount_lower_bound: Integer?,
1910
+ amount_reconciled: Integer?,
1911
+ amount_reconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentUpdateRequestWithID::amount_reconciled_direction?,
1912
+ amount_unreconciled: Integer?,
1913
+ amount_unreconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentUpdateRequestWithID::amount_unreconciled_direction?,
1868
1914
  amount_upper_bound: Integer?,
1869
1915
  counterparty_id: String?,
1870
1916
  currency: ModernTreasury::Models::currency?,
@@ -1891,6 +1937,14 @@ module ModernTreasury
1891
1937
 
1892
1938
  attr_accessor amount_lower_bound: Integer?
1893
1939
 
1940
+ attr_accessor amount_reconciled: Integer?
1941
+
1942
+ attr_accessor amount_reconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentUpdateRequestWithID::amount_reconciled_direction?
1943
+
1944
+ attr_accessor amount_unreconciled: Integer?
1945
+
1946
+ attr_accessor amount_unreconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentUpdateRequestWithID::amount_unreconciled_direction?
1947
+
1894
1948
  attr_accessor amount_upper_bound: Integer?
1895
1949
 
1896
1950
  attr_accessor counterparty_id: String?
@@ -1930,6 +1984,10 @@ module ModernTreasury
1930
1984
  def initialize: (
1931
1985
  ?id: String,
1932
1986
  ?amount_lower_bound: Integer?,
1987
+ ?amount_reconciled: Integer?,
1988
+ ?amount_reconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentUpdateRequestWithID::amount_reconciled_direction?,
1989
+ ?amount_unreconciled: Integer?,
1990
+ ?amount_unreconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentUpdateRequestWithID::amount_unreconciled_direction?,
1933
1991
  ?amount_upper_bound: Integer?,
1934
1992
  ?counterparty_id: String?,
1935
1993
  ?currency: ModernTreasury::Models::currency?,
@@ -1952,6 +2010,10 @@ module ModernTreasury
1952
2010
  def to_hash: -> {
1953
2011
  id: String,
1954
2012
  amount_lower_bound: Integer?,
2013
+ amount_reconciled: Integer?,
2014
+ amount_reconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentUpdateRequestWithID::amount_reconciled_direction?,
2015
+ amount_unreconciled: Integer?,
2016
+ amount_unreconciled_direction: ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentUpdateRequestWithID::amount_unreconciled_direction?,
1955
2017
  amount_upper_bound: Integer?,
1956
2018
  counterparty_id: String?,
1957
2019
  currency: ModernTreasury::Models::currency?,
@@ -1971,6 +2033,28 @@ module ModernTreasury
1971
2033
  type: ModernTreasury::Models::expected_payment_type?
1972
2034
  }
1973
2035
 
2036
+ type amount_reconciled_direction = :credit | :debit
2037
+
2038
+ module AmountReconciledDirection
2039
+ extend ModernTreasury::Internal::Type::Enum
2040
+
2041
+ CREDIT: :credit
2042
+ DEBIT: :debit
2043
+
2044
+ def self?.values: -> ::Array[ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentUpdateRequestWithID::amount_reconciled_direction]
2045
+ end
2046
+
2047
+ type amount_unreconciled_direction = :credit | :debit
2048
+
2049
+ module AmountUnreconciledDirection
2050
+ extend ModernTreasury::Internal::Type::Enum
2051
+
2052
+ CREDIT: :credit
2053
+ DEBIT: :debit
2054
+
2055
+ def self?.values: -> ::Array[ModernTreasury::Models::BulkRequestCreateParams::Resource::ExpectedPaymentUpdateRequestWithID::amount_unreconciled_direction]
2056
+ end
2057
+
1974
2058
  type direction = :credit | :debit
1975
2059
 
1976
2060
  module Direction
@@ -0,0 +1,469 @@
1
+ module ModernTreasury
2
+ module Models
3
+ type child_legal_entity =
4
+ {
5
+ id: String,
6
+ addresses: ::Array[ModernTreasury::ChildLegalEntity::Address],
7
+ bank_settings: ModernTreasury::LegalEntityBankSettings?,
8
+ business_description: String?,
9
+ business_name: String?,
10
+ citizenship_country: String?,
11
+ compliance_details: ModernTreasury::LegalEntityComplianceDetail?,
12
+ country_of_incorporation: String?,
13
+ created_at: Time,
14
+ date_formed: Date?,
15
+ date_of_birth: Date?,
16
+ discarded_at: Time?,
17
+ doing_business_as_names: ::Array[String],
18
+ email: String?,
19
+ expected_activity_volume: Integer?,
20
+ first_name: String?,
21
+ identifications: ::Array[ModernTreasury::ChildLegalEntity::Identification],
22
+ industry_classifications: ::Array[ModernTreasury::LegalEntityIndustryClassification],
23
+ intended_use: String?,
24
+ last_name: String?,
25
+ legal_entity_associations: ::Array[ModernTreasury::LegalEntityAssociation]?,
26
+ legal_entity_type: ModernTreasury::Models::ChildLegalEntity::legal_entity_type,
27
+ legal_structure: ModernTreasury::Models::ChildLegalEntity::legal_structure?,
28
+ live_mode: bool,
29
+ metadata: ::Hash[Symbol, String],
30
+ middle_name: String?,
31
+ object: String,
32
+ operating_jurisdictions: ::Array[String],
33
+ phone_numbers: ::Array[ModernTreasury::ChildLegalEntity::PhoneNumber],
34
+ politically_exposed_person: bool?,
35
+ preferred_name: String?,
36
+ prefix: String?,
37
+ primary_social_media_sites: ::Array[String],
38
+ risk_rating: ModernTreasury::Models::ChildLegalEntity::risk_rating?,
39
+ suffix: String?,
40
+ updated_at: Time,
41
+ wealth_and_employment_details: ModernTreasury::LegalEntityWealthEmploymentDetail?,
42
+ website: String?
43
+ }
44
+
45
+ class ChildLegalEntity < ModernTreasury::Internal::Type::BaseModel
46
+ attr_accessor id: String
47
+
48
+ attr_accessor addresses: ::Array[ModernTreasury::ChildLegalEntity::Address]
49
+
50
+ attr_accessor bank_settings: ModernTreasury::LegalEntityBankSettings?
51
+
52
+ attr_accessor business_description: String?
53
+
54
+ attr_accessor business_name: String?
55
+
56
+ attr_accessor citizenship_country: String?
57
+
58
+ attr_accessor compliance_details: ModernTreasury::LegalEntityComplianceDetail?
59
+
60
+ attr_accessor country_of_incorporation: String?
61
+
62
+ attr_accessor created_at: Time
63
+
64
+ attr_accessor date_formed: Date?
65
+
66
+ attr_accessor date_of_birth: Date?
67
+
68
+ attr_accessor discarded_at: Time?
69
+
70
+ attr_accessor doing_business_as_names: ::Array[String]
71
+
72
+ attr_accessor email: String?
73
+
74
+ attr_accessor expected_activity_volume: Integer?
75
+
76
+ attr_accessor first_name: String?
77
+
78
+ attr_accessor identifications: ::Array[ModernTreasury::ChildLegalEntity::Identification]
79
+
80
+ attr_accessor industry_classifications: ::Array[ModernTreasury::LegalEntityIndustryClassification]
81
+
82
+ attr_accessor intended_use: String?
83
+
84
+ attr_accessor last_name: String?
85
+
86
+ attr_accessor legal_entity_associations: ::Array[ModernTreasury::LegalEntityAssociation]?
87
+
88
+ attr_accessor legal_entity_type: ModernTreasury::Models::ChildLegalEntity::legal_entity_type
89
+
90
+ attr_accessor legal_structure: ModernTreasury::Models::ChildLegalEntity::legal_structure?
91
+
92
+ attr_accessor live_mode: bool
93
+
94
+ attr_accessor metadata: ::Hash[Symbol, String]
95
+
96
+ attr_accessor middle_name: String?
97
+
98
+ attr_accessor object: String
99
+
100
+ attr_accessor operating_jurisdictions: ::Array[String]
101
+
102
+ attr_accessor phone_numbers: ::Array[ModernTreasury::ChildLegalEntity::PhoneNumber]
103
+
104
+ attr_accessor politically_exposed_person: bool?
105
+
106
+ attr_accessor preferred_name: String?
107
+
108
+ attr_accessor prefix: String?
109
+
110
+ attr_accessor primary_social_media_sites: ::Array[String]
111
+
112
+ attr_accessor risk_rating: ModernTreasury::Models::ChildLegalEntity::risk_rating?
113
+
114
+ attr_accessor suffix: String?
115
+
116
+ attr_accessor updated_at: Time
117
+
118
+ attr_accessor wealth_and_employment_details: ModernTreasury::LegalEntityWealthEmploymentDetail?
119
+
120
+ attr_accessor website: String?
121
+
122
+ def initialize: (
123
+ id: String,
124
+ addresses: ::Array[ModernTreasury::ChildLegalEntity::Address],
125
+ bank_settings: ModernTreasury::LegalEntityBankSettings?,
126
+ business_description: String?,
127
+ business_name: String?,
128
+ citizenship_country: String?,
129
+ compliance_details: ModernTreasury::LegalEntityComplianceDetail?,
130
+ country_of_incorporation: String?,
131
+ created_at: Time,
132
+ date_formed: Date?,
133
+ date_of_birth: Date?,
134
+ discarded_at: Time?,
135
+ doing_business_as_names: ::Array[String],
136
+ email: String?,
137
+ expected_activity_volume: Integer?,
138
+ first_name: String?,
139
+ identifications: ::Array[ModernTreasury::ChildLegalEntity::Identification],
140
+ industry_classifications: ::Array[ModernTreasury::LegalEntityIndustryClassification],
141
+ intended_use: String?,
142
+ last_name: String?,
143
+ legal_entity_associations: ::Array[ModernTreasury::LegalEntityAssociation]?,
144
+ legal_entity_type: ModernTreasury::Models::ChildLegalEntity::legal_entity_type,
145
+ legal_structure: ModernTreasury::Models::ChildLegalEntity::legal_structure?,
146
+ live_mode: bool,
147
+ metadata: ::Hash[Symbol, String],
148
+ middle_name: String?,
149
+ object: String,
150
+ operating_jurisdictions: ::Array[String],
151
+ phone_numbers: ::Array[ModernTreasury::ChildLegalEntity::PhoneNumber],
152
+ politically_exposed_person: bool?,
153
+ preferred_name: String?,
154
+ prefix: String?,
155
+ primary_social_media_sites: ::Array[String],
156
+ risk_rating: ModernTreasury::Models::ChildLegalEntity::risk_rating?,
157
+ suffix: String?,
158
+ updated_at: Time,
159
+ wealth_and_employment_details: ModernTreasury::LegalEntityWealthEmploymentDetail?,
160
+ website: String?
161
+ ) -> void
162
+
163
+ def to_hash: -> {
164
+ id: String,
165
+ addresses: ::Array[ModernTreasury::ChildLegalEntity::Address],
166
+ bank_settings: ModernTreasury::LegalEntityBankSettings?,
167
+ business_description: String?,
168
+ business_name: String?,
169
+ citizenship_country: String?,
170
+ compliance_details: ModernTreasury::LegalEntityComplianceDetail?,
171
+ country_of_incorporation: String?,
172
+ created_at: Time,
173
+ date_formed: Date?,
174
+ date_of_birth: Date?,
175
+ discarded_at: Time?,
176
+ doing_business_as_names: ::Array[String],
177
+ email: String?,
178
+ expected_activity_volume: Integer?,
179
+ first_name: String?,
180
+ identifications: ::Array[ModernTreasury::ChildLegalEntity::Identification],
181
+ industry_classifications: ::Array[ModernTreasury::LegalEntityIndustryClassification],
182
+ intended_use: String?,
183
+ last_name: String?,
184
+ legal_entity_associations: ::Array[ModernTreasury::LegalEntityAssociation]?,
185
+ legal_entity_type: ModernTreasury::Models::ChildLegalEntity::legal_entity_type,
186
+ legal_structure: ModernTreasury::Models::ChildLegalEntity::legal_structure?,
187
+ live_mode: bool,
188
+ metadata: ::Hash[Symbol, String],
189
+ middle_name: String?,
190
+ object: String,
191
+ operating_jurisdictions: ::Array[String],
192
+ phone_numbers: ::Array[ModernTreasury::ChildLegalEntity::PhoneNumber],
193
+ politically_exposed_person: bool?,
194
+ preferred_name: String?,
195
+ prefix: String?,
196
+ primary_social_media_sites: ::Array[String],
197
+ risk_rating: ModernTreasury::Models::ChildLegalEntity::risk_rating?,
198
+ suffix: String?,
199
+ updated_at: Time,
200
+ wealth_and_employment_details: ModernTreasury::LegalEntityWealthEmploymentDetail?,
201
+ website: String?
202
+ }
203
+
204
+ type address =
205
+ {
206
+ id: String,
207
+ address_types: ::Array[ModernTreasury::Models::ChildLegalEntity::Address::address_type],
208
+ country: String?,
209
+ created_at: Time,
210
+ discarded_at: Time?,
211
+ :line1 => String?,
212
+ :line2 => String?,
213
+ live_mode: bool,
214
+ locality: String?,
215
+ object: String,
216
+ postal_code: String?,
217
+ region: String?,
218
+ updated_at: Time
219
+ }
220
+
221
+ class Address < ModernTreasury::Internal::Type::BaseModel
222
+ attr_accessor id: String
223
+
224
+ attr_accessor address_types: ::Array[ModernTreasury::Models::ChildLegalEntity::Address::address_type]
225
+
226
+ attr_accessor country: String?
227
+
228
+ attr_accessor created_at: Time
229
+
230
+ attr_accessor discarded_at: Time?
231
+
232
+ attr_accessor line1: String?
233
+
234
+ attr_accessor line2: String?
235
+
236
+ attr_accessor live_mode: bool
237
+
238
+ attr_accessor locality: String?
239
+
240
+ attr_accessor object: String
241
+
242
+ attr_accessor postal_code: String?
243
+
244
+ attr_accessor region: String?
245
+
246
+ attr_accessor updated_at: Time
247
+
248
+ def initialize: (
249
+ id: String,
250
+ address_types: ::Array[ModernTreasury::Models::ChildLegalEntity::Address::address_type],
251
+ country: String?,
252
+ created_at: Time,
253
+ discarded_at: Time?,
254
+ line1: String?,
255
+ line2: String?,
256
+ live_mode: bool,
257
+ locality: String?,
258
+ object: String,
259
+ postal_code: String?,
260
+ region: String?,
261
+ updated_at: Time
262
+ ) -> void
263
+
264
+ def to_hash: -> {
265
+ id: String,
266
+ address_types: ::Array[ModernTreasury::Models::ChildLegalEntity::Address::address_type],
267
+ country: String?,
268
+ created_at: Time,
269
+ discarded_at: Time?,
270
+ :line1 => String?,
271
+ :line2 => String?,
272
+ live_mode: bool,
273
+ locality: String?,
274
+ object: String,
275
+ postal_code: String?,
276
+ region: String?,
277
+ updated_at: Time
278
+ }
279
+
280
+ type address_type =
281
+ :business | :mailing | :other | :po_box | :residential
282
+
283
+ module AddressType
284
+ extend ModernTreasury::Internal::Type::Enum
285
+
286
+ BUSINESS: :business
287
+ MAILING: :mailing
288
+ OTHER: :other
289
+ PO_BOX: :po_box
290
+ RESIDENTIAL: :residential
291
+
292
+ def self?.values: -> ::Array[ModernTreasury::Models::ChildLegalEntity::Address::address_type]
293
+ end
294
+ end
295
+
296
+ type identification =
297
+ {
298
+ id: String,
299
+ created_at: Time,
300
+ discarded_at: Time?,
301
+ expiration_date: Date?,
302
+ id_type: ModernTreasury::Models::ChildLegalEntity::Identification::id_type,
303
+ issuing_country: String?,
304
+ issuing_region: String?,
305
+ live_mode: bool,
306
+ object: String,
307
+ updated_at: Time
308
+ }
309
+
310
+ class Identification < ModernTreasury::Internal::Type::BaseModel
311
+ attr_accessor id: String
312
+
313
+ attr_accessor created_at: Time
314
+
315
+ attr_accessor discarded_at: Time?
316
+
317
+ attr_accessor expiration_date: Date?
318
+
319
+ attr_accessor id_type: ModernTreasury::Models::ChildLegalEntity::Identification::id_type
320
+
321
+ attr_accessor issuing_country: String?
322
+
323
+ attr_accessor issuing_region: String?
324
+
325
+ attr_accessor live_mode: bool
326
+
327
+ attr_accessor object: String
328
+
329
+ attr_accessor updated_at: Time
330
+
331
+ def initialize: (
332
+ id: String,
333
+ created_at: Time,
334
+ discarded_at: Time?,
335
+ expiration_date: Date?,
336
+ id_type: ModernTreasury::Models::ChildLegalEntity::Identification::id_type,
337
+ issuing_country: String?,
338
+ issuing_region: String?,
339
+ live_mode: bool,
340
+ object: String,
341
+ updated_at: Time
342
+ ) -> void
343
+
344
+ def to_hash: -> {
345
+ id: String,
346
+ created_at: Time,
347
+ discarded_at: Time?,
348
+ expiration_date: Date?,
349
+ id_type: ModernTreasury::Models::ChildLegalEntity::Identification::id_type,
350
+ issuing_country: String?,
351
+ issuing_region: String?,
352
+ live_mode: bool,
353
+ object: String,
354
+ updated_at: Time
355
+ }
356
+
357
+ type id_type =
358
+ :ar_cuil
359
+ | :ar_cuit
360
+ | :br_cnpj
361
+ | :br_cpf
362
+ | :cl_run
363
+ | :cl_rut
364
+ | :co_cedulas
365
+ | :co_nit
366
+ | :drivers_license
367
+ | :hn_id
368
+ | :hn_rtn
369
+ | :in_lei
370
+ | :kr_brn
371
+ | :kr_crn
372
+ | :kr_rrn
373
+ | :passport
374
+ | :sa_tin
375
+ | :sa_vat
376
+ | :us_ein
377
+ | :us_itin
378
+ | :us_ssn
379
+ | :vn_tin
380
+
381
+ module IDType
382
+ extend ModernTreasury::Internal::Type::Enum
383
+
384
+ AR_CUIL: :ar_cuil
385
+ AR_CUIT: :ar_cuit
386
+ BR_CNPJ: :br_cnpj
387
+ BR_CPF: :br_cpf
388
+ CL_RUN: :cl_run
389
+ CL_RUT: :cl_rut
390
+ CO_CEDULAS: :co_cedulas
391
+ CO_NIT: :co_nit
392
+ DRIVERS_LICENSE: :drivers_license
393
+ HN_ID: :hn_id
394
+ HN_RTN: :hn_rtn
395
+ IN_LEI: :in_lei
396
+ KR_BRN: :kr_brn
397
+ KR_CRN: :kr_crn
398
+ KR_RRN: :kr_rrn
399
+ PASSPORT: :passport
400
+ SA_TIN: :sa_tin
401
+ SA_VAT: :sa_vat
402
+ US_EIN: :us_ein
403
+ US_ITIN: :us_itin
404
+ US_SSN: :us_ssn
405
+ VN_TIN: :vn_tin
406
+
407
+ def self?.values: -> ::Array[ModernTreasury::Models::ChildLegalEntity::Identification::id_type]
408
+ end
409
+ end
410
+
411
+ type legal_entity_type = :business | :individual | :joint
412
+
413
+ module LegalEntityType
414
+ extend ModernTreasury::Internal::Type::Enum
415
+
416
+ BUSINESS: :business
417
+ INDIVIDUAL: :individual
418
+ JOINT: :joint
419
+
420
+ def self?.values: -> ::Array[ModernTreasury::Models::ChildLegalEntity::legal_entity_type]
421
+ end
422
+
423
+ type legal_structure =
424
+ :corporation
425
+ | :llc
426
+ | :non_profit
427
+ | :partnership
428
+ | :sole_proprietorship
429
+ | :trust
430
+
431
+ module LegalStructure
432
+ extend ModernTreasury::Internal::Type::Enum
433
+
434
+ CORPORATION: :corporation
435
+ LLC: :llc
436
+ NON_PROFIT: :non_profit
437
+ PARTNERSHIP: :partnership
438
+ SOLE_PROPRIETORSHIP: :sole_proprietorship
439
+ TRUST: :trust
440
+
441
+ def self?.values: -> ::Array[ModernTreasury::Models::ChildLegalEntity::legal_structure]
442
+ end
443
+
444
+ type phone_number = { phone_number: String }
445
+
446
+ class PhoneNumber < ModernTreasury::Internal::Type::BaseModel
447
+ attr_reader phone_number: String?
448
+
449
+ def phone_number=: (String) -> String
450
+
451
+ def initialize: (?phone_number: String) -> void
452
+
453
+ def to_hash: -> { phone_number: String }
454
+ end
455
+
456
+ type risk_rating = :low | :medium | :high
457
+
458
+ module RiskRating
459
+ extend ModernTreasury::Internal::Type::Enum
460
+
461
+ LOW: :low
462
+ MEDIUM: :medium
463
+ HIGH: :high
464
+
465
+ def self?.values: -> ::Array[ModernTreasury::Models::ChildLegalEntity::risk_rating]
466
+ end
467
+ end
468
+ end
469
+ end