modern_treasury 0.18.0 → 0.19.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8a497656ee9ede65d8a627a065f5d1961e5723f9d8d4d98420fd6cb1ddd997a3
4
- data.tar.gz: 16ca7e3a4608b25dd7b43a134defa34ab4c63fecd9dd1e0fc3bd9b8d08f71a78
3
+ metadata.gz: 82ee69a584e5131ba64176772b793b808a848db1991272143b65b7296d37a1d2
4
+ data.tar.gz: 80dfcd02e45c83831a4efbc44249a188281e7ea3d36a57c33e75bf4e21b1d302
5
5
  SHA512:
6
- metadata.gz: dee8ca22f46f59df8fd38e926281b0474393c487205885194fbf81fb699b1a49cea790ec1217617f8ac880473041598c7435b1a3dd725727960f80d0988fb2f5
7
- data.tar.gz: fedc86882bac6b15883ac0e3e315c29659d8a3399133c9774b981c1c6fbe8a5a454f829816adbcb5d6a47ae9d5698cc487c65717b13216ee087b30c548de6717
6
+ metadata.gz: 04e09a2cedbaed6841a3b25e74f1483b1f1c04e02d924339aff2b5606baa0e9aee8e2e21c5326d4823a3c4166fc54de3be8708144a3320c8578073db4d171614
7
+ data.tar.gz: 73d8bdc38812777d4981fc7c432757c27c34b08bd34c9cb08440a56fa7cfbfab1d23a6c441ffb04bbd0c2b751e58c9d1d8caf4d711620d0206bf57a16f4f5947
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.19.0 (2026-03-10)
4
+
5
+ Full Changelog: [v0.18.0...v0.19.0](https://github.com/Modern-Treasury/modern-treasury-ruby/compare/v0.18.0...v0.19.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([c4fac1f](https://github.com/Modern-Treasury/modern-treasury-ruby/commit/c4fac1fe01f9ce00604089640699a732cffe0f70))
10
+
3
11
  ## 0.18.0 (2026-03-07)
4
12
 
5
13
  Full Changelog: [v0.17.0...v0.18.0](https://github.com/Modern-Treasury/modern-treasury-ruby/compare/v0.17.0...v0.18.0)
data/README.md CHANGED
@@ -24,7 +24,7 @@ To use this gem, install via Bundler by adding the following to your application
24
24
  <!-- x-release-please-start-version -->
25
25
 
26
26
  ```ruby
27
- gem "modern_treasury", "~> 0.18.0"
27
+ gem "modern_treasury", "~> 0.19.0"
28
28
  ```
29
29
 
30
30
  <!-- x-release-please-end -->
@@ -62,6 +62,14 @@ module ModernTreasury
62
62
  # @return [Date, nil]
63
63
  optional :date_of_birth, Date, nil?: true
64
64
 
65
+ # @!attribute documents
66
+ # A list of documents to attach to the legal entity (e.g. articles of
67
+ # incorporation, certificate of good standing, proof of address).
68
+ #
69
+ # @return [Array<ModernTreasury::Models::ChildLegalEntityCreate::Document>, nil]
70
+ optional :documents,
71
+ -> { ModernTreasury::Internal::Type::ArrayOf[ModernTreasury::ChildLegalEntityCreate::Document] }
72
+
65
73
  # @!attribute doing_business_as_names
66
74
  #
67
75
  # @return [Array<String>, nil]
@@ -255,7 +263,7 @@ module ModernTreasury
255
263
  # @return [String, nil]
256
264
  optional :website, String, nil?: true
257
265
 
258
- # @!method initialize(addresses: nil, bank_settings: nil, business_description: nil, business_name: nil, citizenship_country: nil, connection_id: nil, country_of_incorporation: nil, date_formed: nil, date_of_birth: nil, doing_business_as_names: nil, email: nil, expected_activity_volume: nil, external_id: nil, first_name: nil, identifications: nil, industry_classifications: nil, intended_use: nil, last_name: nil, legal_entity_associations: nil, legal_entity_type: nil, legal_structure: nil, listed_exchange: nil, metadata: nil, middle_name: nil, operating_jurisdictions: nil, phone_numbers: nil, politically_exposed_person: nil, preferred_name: nil, prefix: nil, primary_social_media_sites: nil, regulators: nil, risk_rating: nil, status: nil, suffix: nil, third_party_verification: nil, ticker_symbol: nil, wealth_and_employment_details: nil, website: nil)
266
+ # @!method initialize(addresses: nil, bank_settings: nil, business_description: nil, business_name: nil, citizenship_country: nil, connection_id: nil, country_of_incorporation: nil, date_formed: nil, date_of_birth: nil, documents: nil, doing_business_as_names: nil, email: nil, expected_activity_volume: nil, external_id: nil, first_name: nil, identifications: nil, industry_classifications: nil, intended_use: nil, last_name: nil, legal_entity_associations: nil, legal_entity_type: nil, legal_structure: nil, listed_exchange: nil, metadata: nil, middle_name: nil, operating_jurisdictions: nil, phone_numbers: nil, politically_exposed_person: nil, preferred_name: nil, prefix: nil, primary_social_media_sites: nil, regulators: nil, risk_rating: nil, status: nil, suffix: nil, third_party_verification: nil, ticker_symbol: nil, wealth_and_employment_details: nil, website: nil)
259
267
  # Some parameter documentations has been truncated, see
260
268
  # {ModernTreasury::Models::ChildLegalEntityCreate} for more details.
261
269
  #
@@ -277,6 +285,8 @@ module ModernTreasury
277
285
  #
278
286
  # @param date_of_birth [Date, nil] An individual's date of birth (YYYY-MM-DD).
279
287
  #
288
+ # @param documents [Array<ModernTreasury::Models::ChildLegalEntityCreate::Document>] A list of documents to attach to the legal entity (e.g. articles of incorporatio
289
+ #
280
290
  # @param doing_business_as_names [Array<String>]
281
291
  #
282
292
  # @param email [String, nil] The entity's primary email.
@@ -335,6 +345,50 @@ module ModernTreasury
335
345
  #
336
346
  # @param website [String, nil] The entity's primary website URL.
337
347
 
348
+ class Document < ModernTreasury::Internal::Type::BaseModel
349
+ # @!attribute document_type
350
+ # A category given to the document, can be `null`.
351
+ #
352
+ # @return [Symbol, ModernTreasury::Models::ChildLegalEntityCreate::Document::DocumentType]
353
+ required :document_type, enum: -> { ModernTreasury::ChildLegalEntityCreate::Document::DocumentType }
354
+
355
+ # @!attribute file_data
356
+ # Base64-encoded file content for the document.
357
+ #
358
+ # @return [String]
359
+ required :file_data, String
360
+
361
+ # @!attribute filename
362
+ # The original filename of the document.
363
+ #
364
+ # @return [String, nil]
365
+ optional :filename, String
366
+
367
+ # @!method initialize(document_type:, file_data:, filename: nil)
368
+ # @param document_type [Symbol, ModernTreasury::Models::ChildLegalEntityCreate::Document::DocumentType] A category given to the document, can be `null`.
369
+ #
370
+ # @param file_data [String] Base64-encoded file content for the document.
371
+ #
372
+ # @param filename [String] The original filename of the document.
373
+
374
+ # A category given to the document, can be `null`.
375
+ #
376
+ # @see ModernTreasury::Models::ChildLegalEntityCreate::Document#document_type
377
+ module DocumentType
378
+ extend ModernTreasury::Internal::Type::Enum
379
+
380
+ ARTICLES_OF_INCORPORATION = :articles_of_incorporation
381
+ CERTIFICATE_OF_GOOD_STANDING = :certificate_of_good_standing
382
+ EIN_LETTER = :ein_letter
383
+ IDENTIFICATION_BACK = :identification_back
384
+ IDENTIFICATION_FRONT = :identification_front
385
+ PROOF_OF_ADDRESS = :proof_of_address
386
+
387
+ # @!method self.values
388
+ # @return [Array<Symbol>]
389
+ end
390
+ end
391
+
338
392
  # The type of legal entity.
339
393
  #
340
394
  # @see ModernTreasury::Models::ChildLegalEntityCreate#legal_entity_type
@@ -94,6 +94,14 @@ module ModernTreasury
94
94
  # @return [Date, nil]
95
95
  optional :date_of_birth, Date, nil?: true
96
96
 
97
+ # @!attribute documents
98
+ # A list of documents to attach to the legal entity (e.g. articles of
99
+ # incorporation, certificate of good standing, proof of address).
100
+ #
101
+ # @return [Array<ModernTreasury::Models::ConnectionLegalEntityCreateParams::LegalEntity::Document>, nil]
102
+ optional :documents,
103
+ -> { ModernTreasury::Internal::Type::ArrayOf[ModernTreasury::ConnectionLegalEntityCreateParams::LegalEntity::Document] }
104
+
97
105
  # @!attribute doing_business_as_names
98
106
  #
99
107
  # @return [Array<String>, nil]
@@ -292,7 +300,7 @@ module ModernTreasury
292
300
  # @return [String, nil]
293
301
  optional :website, String, nil?: true
294
302
 
295
- # @!method initialize(addresses: nil, bank_settings: nil, business_description: nil, business_name: nil, citizenship_country: nil, connection_id: nil, country_of_incorporation: nil, date_formed: nil, date_of_birth: nil, doing_business_as_names: nil, email: nil, expected_activity_volume: nil, external_id: nil, first_name: nil, identifications: nil, industry_classifications: nil, intended_use: nil, last_name: nil, legal_entity_associations: nil, legal_entity_type: nil, legal_structure: nil, listed_exchange: nil, metadata: nil, middle_name: nil, operating_jurisdictions: nil, phone_numbers: nil, politically_exposed_person: nil, preferred_name: nil, prefix: nil, primary_social_media_sites: nil, regulators: nil, risk_rating: nil, status: nil, suffix: nil, third_party_verification: nil, ticker_symbol: nil, wealth_and_employment_details: nil, website: nil)
303
+ # @!method initialize(addresses: nil, bank_settings: nil, business_description: nil, business_name: nil, citizenship_country: nil, connection_id: nil, country_of_incorporation: nil, date_formed: nil, date_of_birth: nil, documents: nil, doing_business_as_names: nil, email: nil, expected_activity_volume: nil, external_id: nil, first_name: nil, identifications: nil, industry_classifications: nil, intended_use: nil, last_name: nil, legal_entity_associations: nil, legal_entity_type: nil, legal_structure: nil, listed_exchange: nil, metadata: nil, middle_name: nil, operating_jurisdictions: nil, phone_numbers: nil, politically_exposed_person: nil, preferred_name: nil, prefix: nil, primary_social_media_sites: nil, regulators: nil, risk_rating: nil, status: nil, suffix: nil, third_party_verification: nil, ticker_symbol: nil, wealth_and_employment_details: nil, website: nil)
296
304
  # Some parameter documentations has been truncated, see
297
305
  # {ModernTreasury::Models::ConnectionLegalEntityCreateParams::LegalEntity} for
298
306
  # more details.
@@ -317,6 +325,8 @@ module ModernTreasury
317
325
  #
318
326
  # @param date_of_birth [Date, nil] An individual's date of birth (YYYY-MM-DD).
319
327
  #
328
+ # @param documents [Array<ModernTreasury::Models::ConnectionLegalEntityCreateParams::LegalEntity::Document>] A list of documents to attach to the legal entity (e.g. articles of incorporatio
329
+ #
320
330
  # @param doing_business_as_names [Array<String>]
321
331
  #
322
332
  # @param email [String, nil] The entity's primary email.
@@ -375,6 +385,51 @@ module ModernTreasury
375
385
  #
376
386
  # @param website [String, nil] The entity's primary website URL.
377
387
 
388
+ class Document < ModernTreasury::Internal::Type::BaseModel
389
+ # @!attribute document_type
390
+ # A category given to the document, can be `null`.
391
+ #
392
+ # @return [Symbol, ModernTreasury::Models::ConnectionLegalEntityCreateParams::LegalEntity::Document::DocumentType]
393
+ required :document_type,
394
+ enum: -> { ModernTreasury::ConnectionLegalEntityCreateParams::LegalEntity::Document::DocumentType }
395
+
396
+ # @!attribute file_data
397
+ # Base64-encoded file content for the document.
398
+ #
399
+ # @return [String]
400
+ required :file_data, String
401
+
402
+ # @!attribute filename
403
+ # The original filename of the document.
404
+ #
405
+ # @return [String, nil]
406
+ optional :filename, String
407
+
408
+ # @!method initialize(document_type:, file_data:, filename: nil)
409
+ # @param document_type [Symbol, ModernTreasury::Models::ConnectionLegalEntityCreateParams::LegalEntity::Document::DocumentType] A category given to the document, can be `null`.
410
+ #
411
+ # @param file_data [String] Base64-encoded file content for the document.
412
+ #
413
+ # @param filename [String] The original filename of the document.
414
+
415
+ # A category given to the document, can be `null`.
416
+ #
417
+ # @see ModernTreasury::Models::ConnectionLegalEntityCreateParams::LegalEntity::Document#document_type
418
+ module DocumentType
419
+ extend ModernTreasury::Internal::Type::Enum
420
+
421
+ ARTICLES_OF_INCORPORATION = :articles_of_incorporation
422
+ CERTIFICATE_OF_GOOD_STANDING = :certificate_of_good_standing
423
+ EIN_LETTER = :ein_letter
424
+ IDENTIFICATION_BACK = :identification_back
425
+ IDENTIFICATION_FRONT = :identification_front
426
+ PROOF_OF_ADDRESS = :proof_of_address
427
+
428
+ # @!method self.values
429
+ # @return [Array<Symbol>]
430
+ end
431
+ end
432
+
378
433
  # The type of legal entity.
379
434
  #
380
435
  # @see ModernTreasury::Models::ConnectionLegalEntityCreateParams::LegalEntity#legal_entity_type
@@ -498,6 +498,14 @@ module ModernTreasury
498
498
  # @return [Date, nil]
499
499
  optional :date_of_birth, Date, nil?: true
500
500
 
501
+ # @!attribute documents
502
+ # A list of documents to attach to the legal entity (e.g. articles of
503
+ # incorporation, certificate of good standing, proof of address).
504
+ #
505
+ # @return [Array<ModernTreasury::Models::CounterpartyCreateParams::LegalEntity::Document>, nil]
506
+ optional :documents,
507
+ -> { ModernTreasury::Internal::Type::ArrayOf[ModernTreasury::CounterpartyCreateParams::LegalEntity::Document] }
508
+
501
509
  # @!attribute doing_business_as_names
502
510
  #
503
511
  # @return [Array<String>, nil]
@@ -689,7 +697,7 @@ module ModernTreasury
689
697
  # @return [String, nil]
690
698
  optional :website, String, nil?: true
691
699
 
692
- # @!method initialize(legal_entity_type:, addresses: nil, bank_settings: nil, business_description: nil, business_name: nil, citizenship_country: nil, connection_id: nil, country_of_incorporation: nil, date_formed: nil, date_of_birth: nil, doing_business_as_names: nil, email: nil, expected_activity_volume: nil, external_id: nil, first_name: nil, identifications: nil, industry_classifications: nil, intended_use: nil, last_name: nil, legal_entity_associations: nil, legal_structure: nil, listed_exchange: nil, metadata: nil, middle_name: nil, operating_jurisdictions: nil, phone_numbers: nil, politically_exposed_person: nil, preferred_name: nil, prefix: nil, primary_social_media_sites: nil, regulators: nil, risk_rating: nil, status: nil, suffix: nil, third_party_verification: nil, ticker_symbol: nil, wealth_and_employment_details: nil, website: nil)
700
+ # @!method initialize(legal_entity_type:, addresses: nil, bank_settings: nil, business_description: nil, business_name: nil, citizenship_country: nil, connection_id: nil, country_of_incorporation: nil, date_formed: nil, date_of_birth: nil, documents: nil, doing_business_as_names: nil, email: nil, expected_activity_volume: nil, external_id: nil, first_name: nil, identifications: nil, industry_classifications: nil, intended_use: nil, last_name: nil, legal_entity_associations: nil, legal_structure: nil, listed_exchange: nil, metadata: nil, middle_name: nil, operating_jurisdictions: nil, phone_numbers: nil, politically_exposed_person: nil, preferred_name: nil, prefix: nil, primary_social_media_sites: nil, regulators: nil, risk_rating: nil, status: nil, suffix: nil, third_party_verification: nil, ticker_symbol: nil, wealth_and_employment_details: nil, website: nil)
693
701
  # Some parameter documentations has been truncated, see
694
702
  # {ModernTreasury::Models::CounterpartyCreateParams::LegalEntity} for more
695
703
  # details.
@@ -714,6 +722,8 @@ module ModernTreasury
714
722
  #
715
723
  # @param date_of_birth [Date, nil] An individual's date of birth (YYYY-MM-DD).
716
724
  #
725
+ # @param documents [Array<ModernTreasury::Models::CounterpartyCreateParams::LegalEntity::Document>] A list of documents to attach to the legal entity (e.g. articles of incorporatio
726
+ #
717
727
  # @param doing_business_as_names [Array<String>]
718
728
  #
719
729
  # @param email [String, nil] The entity's primary email.
@@ -783,6 +793,51 @@ module ModernTreasury
783
793
  # @return [Array<Symbol>]
784
794
  end
785
795
 
796
+ class Document < ModernTreasury::Internal::Type::BaseModel
797
+ # @!attribute document_type
798
+ # A category given to the document, can be `null`.
799
+ #
800
+ # @return [Symbol, ModernTreasury::Models::CounterpartyCreateParams::LegalEntity::Document::DocumentType]
801
+ required :document_type,
802
+ enum: -> { ModernTreasury::CounterpartyCreateParams::LegalEntity::Document::DocumentType }
803
+
804
+ # @!attribute file_data
805
+ # Base64-encoded file content for the document.
806
+ #
807
+ # @return [String]
808
+ required :file_data, String
809
+
810
+ # @!attribute filename
811
+ # The original filename of the document.
812
+ #
813
+ # @return [String, nil]
814
+ optional :filename, String
815
+
816
+ # @!method initialize(document_type:, file_data:, filename: nil)
817
+ # @param document_type [Symbol, ModernTreasury::Models::CounterpartyCreateParams::LegalEntity::Document::DocumentType] A category given to the document, can be `null`.
818
+ #
819
+ # @param file_data [String] Base64-encoded file content for the document.
820
+ #
821
+ # @param filename [String] The original filename of the document.
822
+
823
+ # A category given to the document, can be `null`.
824
+ #
825
+ # @see ModernTreasury::Models::CounterpartyCreateParams::LegalEntity::Document#document_type
826
+ module DocumentType
827
+ extend ModernTreasury::Internal::Type::Enum
828
+
829
+ ARTICLES_OF_INCORPORATION = :articles_of_incorporation
830
+ CERTIFICATE_OF_GOOD_STANDING = :certificate_of_good_standing
831
+ EIN_LETTER = :ein_letter
832
+ IDENTIFICATION_BACK = :identification_back
833
+ IDENTIFICATION_FRONT = :identification_front
834
+ PROOF_OF_ADDRESS = :proof_of_address
835
+
836
+ # @!method self.values
837
+ # @return [Array<Symbol>]
838
+ end
839
+ end
840
+
786
841
  # The business's legal structure.
787
842
  #
788
843
  # @see ModernTreasury::Models::CounterpartyCreateParams::LegalEntity#legal_structure
@@ -15,6 +15,13 @@ module ModernTreasury
15
15
  # @return [Symbol, ModernTreasury::Models::IdentificationCreateRequest::IDType]
16
16
  required :id_type, enum: -> { ModernTreasury::IdentificationCreateRequest::IDType }
17
17
 
18
+ # @!attribute documents
19
+ # A list of documents to attach to the identification.
20
+ #
21
+ # @return [Array<ModernTreasury::Models::IdentificationCreateRequest::Document>, nil]
22
+ optional :documents,
23
+ -> { ModernTreasury::Internal::Type::ArrayOf[ModernTreasury::IdentificationCreateRequest::Document] }
24
+
18
25
  # @!attribute expiration_date
19
26
  # The date when the Identification is no longer considered valid by the issuing
20
27
  # authority.
@@ -35,7 +42,7 @@ module ModernTreasury
35
42
  # @return [String, nil]
36
43
  optional :issuing_region, String, nil?: true
37
44
 
38
- # @!method initialize(id_number:, id_type:, expiration_date: nil, issuing_country: nil, issuing_region: nil)
45
+ # @!method initialize(id_number:, id_type:, documents: nil, expiration_date: nil, issuing_country: nil, issuing_region: nil)
39
46
  # Some parameter documentations has been truncated, see
40
47
  # {ModernTreasury::Models::IdentificationCreateRequest} for more details.
41
48
  #
@@ -43,6 +50,8 @@ module ModernTreasury
43
50
  #
44
51
  # @param id_type [Symbol, ModernTreasury::Models::IdentificationCreateRequest::IDType] The type of ID number.
45
52
  #
53
+ # @param documents [Array<ModernTreasury::Models::IdentificationCreateRequest::Document>] A list of documents to attach to the identification.
54
+ #
46
55
  # @param expiration_date [Date, nil] The date when the Identification is no longer considered valid by the issuing au
47
56
  #
48
57
  # @param issuing_country [String, nil] The ISO 3166-1 alpha-2 country code of the country that issued the identificatio
@@ -82,6 +91,50 @@ module ModernTreasury
82
91
  # @!method self.values
83
92
  # @return [Array<Symbol>]
84
93
  end
94
+
95
+ class Document < ModernTreasury::Internal::Type::BaseModel
96
+ # @!attribute document_type
97
+ # A category given to the document, can be `null`.
98
+ #
99
+ # @return [Symbol, ModernTreasury::Models::IdentificationCreateRequest::Document::DocumentType]
100
+ required :document_type, enum: -> { ModernTreasury::IdentificationCreateRequest::Document::DocumentType }
101
+
102
+ # @!attribute file_data
103
+ # Base64-encoded file content for the document.
104
+ #
105
+ # @return [String]
106
+ required :file_data, String
107
+
108
+ # @!attribute filename
109
+ # The original filename of the document.
110
+ #
111
+ # @return [String, nil]
112
+ optional :filename, String
113
+
114
+ # @!method initialize(document_type:, file_data:, filename: nil)
115
+ # @param document_type [Symbol, ModernTreasury::Models::IdentificationCreateRequest::Document::DocumentType] A category given to the document, can be `null`.
116
+ #
117
+ # @param file_data [String] Base64-encoded file content for the document.
118
+ #
119
+ # @param filename [String] The original filename of the document.
120
+
121
+ # A category given to the document, can be `null`.
122
+ #
123
+ # @see ModernTreasury::Models::IdentificationCreateRequest::Document#document_type
124
+ module DocumentType
125
+ extend ModernTreasury::Internal::Type::Enum
126
+
127
+ ARTICLES_OF_INCORPORATION = :articles_of_incorporation
128
+ CERTIFICATE_OF_GOOD_STANDING = :certificate_of_good_standing
129
+ EIN_LETTER = :ein_letter
130
+ IDENTIFICATION_BACK = :identification_back
131
+ IDENTIFICATION_FRONT = :identification_front
132
+ PROOF_OF_ADDRESS = :proof_of_address
133
+
134
+ # @!method self.values
135
+ # @return [Array<Symbol>]
136
+ end
137
+ end
85
138
  end
86
139
  end
87
140
  end
@@ -72,6 +72,14 @@ module ModernTreasury
72
72
  # @return [Date, nil]
73
73
  optional :date_of_birth, Date, nil?: true
74
74
 
75
+ # @!attribute documents
76
+ # A list of documents to attach to the legal entity (e.g. articles of
77
+ # incorporation, certificate of good standing, proof of address).
78
+ #
79
+ # @return [Array<ModernTreasury::Models::LegalEntityCreateParams::Document>, nil]
80
+ optional :documents,
81
+ -> { ModernTreasury::Internal::Type::ArrayOf[ModernTreasury::LegalEntityCreateParams::Document] }
82
+
75
83
  # @!attribute doing_business_as_names
76
84
  #
77
85
  # @return [Array<String>, nil]
@@ -257,7 +265,7 @@ module ModernTreasury
257
265
  # @return [String, nil]
258
266
  optional :website, String, nil?: true
259
267
 
260
- # @!method initialize(legal_entity_type:, addresses: nil, bank_settings: nil, business_description: nil, business_name: nil, citizenship_country: nil, connection_id: nil, country_of_incorporation: nil, date_formed: nil, date_of_birth: nil, doing_business_as_names: nil, email: nil, expected_activity_volume: nil, external_id: nil, first_name: nil, identifications: nil, industry_classifications: nil, intended_use: nil, last_name: nil, legal_entity_associations: nil, legal_structure: nil, listed_exchange: nil, metadata: nil, middle_name: nil, operating_jurisdictions: nil, phone_numbers: nil, politically_exposed_person: nil, preferred_name: nil, prefix: nil, primary_social_media_sites: nil, regulators: nil, risk_rating: nil, status: nil, suffix: nil, third_party_verification: nil, ticker_symbol: nil, wealth_and_employment_details: nil, website: nil, request_options: {})
268
+ # @!method initialize(legal_entity_type:, addresses: nil, bank_settings: nil, business_description: nil, business_name: nil, citizenship_country: nil, connection_id: nil, country_of_incorporation: nil, date_formed: nil, date_of_birth: nil, documents: nil, doing_business_as_names: nil, email: nil, expected_activity_volume: nil, external_id: nil, first_name: nil, identifications: nil, industry_classifications: nil, intended_use: nil, last_name: nil, legal_entity_associations: nil, legal_structure: nil, listed_exchange: nil, metadata: nil, middle_name: nil, operating_jurisdictions: nil, phone_numbers: nil, politically_exposed_person: nil, preferred_name: nil, prefix: nil, primary_social_media_sites: nil, regulators: nil, risk_rating: nil, status: nil, suffix: nil, third_party_verification: nil, ticker_symbol: nil, wealth_and_employment_details: nil, website: nil, request_options: {})
261
269
  # Some parameter documentations has been truncated, see
262
270
  # {ModernTreasury::Models::LegalEntityCreateParams} for more details.
263
271
  #
@@ -281,6 +289,8 @@ module ModernTreasury
281
289
  #
282
290
  # @param date_of_birth [Date, nil] An individual's date of birth (YYYY-MM-DD).
283
291
  #
292
+ # @param documents [Array<ModernTreasury::Models::LegalEntityCreateParams::Document>] A list of documents to attach to the legal entity (e.g. articles of incorporatio
293
+ #
284
294
  # @param doing_business_as_names [Array<String>]
285
295
  #
286
296
  # @param email [String, nil] The entity's primary email.
@@ -350,6 +360,50 @@ module ModernTreasury
350
360
  # @return [Array<Symbol>]
351
361
  end
352
362
 
363
+ class Document < ModernTreasury::Internal::Type::BaseModel
364
+ # @!attribute document_type
365
+ # A category given to the document, can be `null`.
366
+ #
367
+ # @return [Symbol, ModernTreasury::Models::LegalEntityCreateParams::Document::DocumentType]
368
+ required :document_type, enum: -> { ModernTreasury::LegalEntityCreateParams::Document::DocumentType }
369
+
370
+ # @!attribute file_data
371
+ # Base64-encoded file content for the document.
372
+ #
373
+ # @return [String]
374
+ required :file_data, String
375
+
376
+ # @!attribute filename
377
+ # The original filename of the document.
378
+ #
379
+ # @return [String, nil]
380
+ optional :filename, String
381
+
382
+ # @!method initialize(document_type:, file_data:, filename: nil)
383
+ # @param document_type [Symbol, ModernTreasury::Models::LegalEntityCreateParams::Document::DocumentType] A category given to the document, can be `null`.
384
+ #
385
+ # @param file_data [String] Base64-encoded file content for the document.
386
+ #
387
+ # @param filename [String] The original filename of the document.
388
+
389
+ # A category given to the document, can be `null`.
390
+ #
391
+ # @see ModernTreasury::Models::LegalEntityCreateParams::Document#document_type
392
+ module DocumentType
393
+ extend ModernTreasury::Internal::Type::Enum
394
+
395
+ ARTICLES_OF_INCORPORATION = :articles_of_incorporation
396
+ CERTIFICATE_OF_GOOD_STANDING = :certificate_of_good_standing
397
+ EIN_LETTER = :ein_letter
398
+ IDENTIFICATION_BACK = :identification_back
399
+ IDENTIFICATION_FRONT = :identification_front
400
+ PROOF_OF_ADDRESS = :proof_of_address
401
+
402
+ # @!method self.values
403
+ # @return [Array<Symbol>]
404
+ end
405
+ end
406
+
353
407
  # The business's legal structure.
354
408
  module LegalStructure
355
409
  extend ModernTreasury::Internal::Type::Enum
@@ -8,7 +8,7 @@ module ModernTreasury
8
8
  #
9
9
  # create legal_entity
10
10
  #
11
- # @overload create(legal_entity_type:, addresses: nil, bank_settings: nil, business_description: nil, business_name: nil, citizenship_country: nil, connection_id: nil, country_of_incorporation: nil, date_formed: nil, date_of_birth: nil, doing_business_as_names: nil, email: nil, expected_activity_volume: nil, external_id: nil, first_name: nil, identifications: nil, industry_classifications: nil, intended_use: nil, last_name: nil, legal_entity_associations: nil, legal_structure: nil, listed_exchange: nil, metadata: nil, middle_name: nil, operating_jurisdictions: nil, phone_numbers: nil, politically_exposed_person: nil, preferred_name: nil, prefix: nil, primary_social_media_sites: nil, regulators: nil, risk_rating: nil, status: nil, suffix: nil, third_party_verification: nil, ticker_symbol: nil, wealth_and_employment_details: nil, website: nil, request_options: {})
11
+ # @overload create(legal_entity_type:, addresses: nil, bank_settings: nil, business_description: nil, business_name: nil, citizenship_country: nil, connection_id: nil, country_of_incorporation: nil, date_formed: nil, date_of_birth: nil, documents: nil, doing_business_as_names: nil, email: nil, expected_activity_volume: nil, external_id: nil, first_name: nil, identifications: nil, industry_classifications: nil, intended_use: nil, last_name: nil, legal_entity_associations: nil, legal_structure: nil, listed_exchange: nil, metadata: nil, middle_name: nil, operating_jurisdictions: nil, phone_numbers: nil, politically_exposed_person: nil, preferred_name: nil, prefix: nil, primary_social_media_sites: nil, regulators: nil, risk_rating: nil, status: nil, suffix: nil, third_party_verification: nil, ticker_symbol: nil, wealth_and_employment_details: nil, website: nil, request_options: {})
12
12
  #
13
13
  # @param legal_entity_type [Symbol, ModernTreasury::Models::LegalEntityCreateParams::LegalEntityType] The type of legal entity.
14
14
  #
@@ -30,6 +30,8 @@ module ModernTreasury
30
30
  #
31
31
  # @param date_of_birth [Date, nil] An individual's date of birth (YYYY-MM-DD).
32
32
  #
33
+ # @param documents [Array<ModernTreasury::Models::LegalEntityCreateParams::Document>] A list of documents to attach to the legal entity (e.g. articles of incorporatio
34
+ #
33
35
  # @param doing_business_as_names [Array<String>]
34
36
  #
35
37
  # @param email [String, nil] The entity's primary email.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ModernTreasury
4
- VERSION = "0.18.0"
4
+ VERSION = "0.19.0"
5
5
  end
@@ -71,6 +71,23 @@ module ModernTreasury
71
71
  sig { returns(T.nilable(Date)) }
72
72
  attr_accessor :date_of_birth
73
73
 
74
+ # A list of documents to attach to the legal entity (e.g. articles of
75
+ # incorporation, certificate of good standing, proof of address).
76
+ sig do
77
+ returns(
78
+ T.nilable(T::Array[ModernTreasury::ChildLegalEntityCreate::Document])
79
+ )
80
+ end
81
+ attr_reader :documents
82
+
83
+ sig do
84
+ params(
85
+ documents:
86
+ T::Array[ModernTreasury::ChildLegalEntityCreate::Document::OrHash]
87
+ ).void
88
+ end
89
+ attr_writer :documents
90
+
74
91
  sig { returns(T.nilable(T::Array[String])) }
75
92
  attr_reader :doing_business_as_names
76
93
 
@@ -318,6 +335,8 @@ module ModernTreasury
318
335
  country_of_incorporation: T.nilable(String),
319
336
  date_formed: T.nilable(Date),
320
337
  date_of_birth: T.nilable(Date),
338
+ documents:
339
+ T::Array[ModernTreasury::ChildLegalEntityCreate::Document::OrHash],
321
340
  doing_business_as_names: T::Array[String],
322
341
  email: T.nilable(String),
323
342
  expected_activity_volume: T.nilable(Integer),
@@ -399,6 +418,9 @@ module ModernTreasury
399
418
  date_formed: nil,
400
419
  # An individual's date of birth (YYYY-MM-DD).
401
420
  date_of_birth: nil,
421
+ # A list of documents to attach to the legal entity (e.g. articles of
422
+ # incorporation, certificate of good standing, proof of address).
423
+ documents: nil,
402
424
  doing_business_as_names: nil,
403
425
  # The entity's primary email.
404
426
  email: nil,
@@ -473,6 +495,8 @@ module ModernTreasury
473
495
  country_of_incorporation: T.nilable(String),
474
496
  date_formed: T.nilable(Date),
475
497
  date_of_birth: T.nilable(Date),
498
+ documents:
499
+ T::Array[ModernTreasury::ChildLegalEntityCreate::Document],
476
500
  doing_business_as_names: T::Array[String],
477
501
  email: T.nilable(String),
478
502
  expected_activity_volume: T.nilable(Integer),
@@ -531,6 +555,121 @@ module ModernTreasury
531
555
  def to_hash
532
556
  end
533
557
 
558
+ class Document < ModernTreasury::Internal::Type::BaseModel
559
+ OrHash =
560
+ T.type_alias do
561
+ T.any(
562
+ ModernTreasury::ChildLegalEntityCreate::Document,
563
+ ModernTreasury::Internal::AnyHash
564
+ )
565
+ end
566
+
567
+ # A category given to the document, can be `null`.
568
+ sig do
569
+ returns(
570
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType::OrSymbol
571
+ )
572
+ end
573
+ attr_accessor :document_type
574
+
575
+ # Base64-encoded file content for the document.
576
+ sig { returns(String) }
577
+ attr_accessor :file_data
578
+
579
+ # The original filename of the document.
580
+ sig { returns(T.nilable(String)) }
581
+ attr_reader :filename
582
+
583
+ sig { params(filename: String).void }
584
+ attr_writer :filename
585
+
586
+ sig do
587
+ params(
588
+ document_type:
589
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType::OrSymbol,
590
+ file_data: String,
591
+ filename: String
592
+ ).returns(T.attached_class)
593
+ end
594
+ def self.new(
595
+ # A category given to the document, can be `null`.
596
+ document_type:,
597
+ # Base64-encoded file content for the document.
598
+ file_data:,
599
+ # The original filename of the document.
600
+ filename: nil
601
+ )
602
+ end
603
+
604
+ sig do
605
+ override.returns(
606
+ {
607
+ document_type:
608
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType::OrSymbol,
609
+ file_data: String,
610
+ filename: String
611
+ }
612
+ )
613
+ end
614
+ def to_hash
615
+ end
616
+
617
+ # A category given to the document, can be `null`.
618
+ module DocumentType
619
+ extend ModernTreasury::Internal::Type::Enum
620
+
621
+ TaggedSymbol =
622
+ T.type_alias do
623
+ T.all(
624
+ Symbol,
625
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType
626
+ )
627
+ end
628
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
629
+
630
+ ARTICLES_OF_INCORPORATION =
631
+ T.let(
632
+ :articles_of_incorporation,
633
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType::TaggedSymbol
634
+ )
635
+ CERTIFICATE_OF_GOOD_STANDING =
636
+ T.let(
637
+ :certificate_of_good_standing,
638
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType::TaggedSymbol
639
+ )
640
+ EIN_LETTER =
641
+ T.let(
642
+ :ein_letter,
643
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType::TaggedSymbol
644
+ )
645
+ IDENTIFICATION_BACK =
646
+ T.let(
647
+ :identification_back,
648
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType::TaggedSymbol
649
+ )
650
+ IDENTIFICATION_FRONT =
651
+ T.let(
652
+ :identification_front,
653
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType::TaggedSymbol
654
+ )
655
+ PROOF_OF_ADDRESS =
656
+ T.let(
657
+ :proof_of_address,
658
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType::TaggedSymbol
659
+ )
660
+
661
+ sig do
662
+ override.returns(
663
+ T::Array[
664
+ ModernTreasury::ChildLegalEntityCreate::Document::DocumentType::TaggedSymbol
665
+ ]
666
+ )
667
+ end
668
+ def self.values
669
+ end
670
+ end
671
+ end
672
+
534
673
  # The type of legal entity.
535
674
  module LegalEntityType
536
675
  extend ModernTreasury::Internal::Type::Enum