lithic 0.5.0 → 0.6.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 +4 -4
- data/CHANGELOG.md +26 -0
- data/README.md +1 -1
- data/lib/lithic/models/account_holders/account_holder_entity.rb +183 -0
- data/lib/lithic/models/account_holders/entity_create_params.rb +159 -0
- data/lib/lithic/models/account_holders/entity_create_response.rb +113 -0
- data/lib/lithic/models/account_holders/entity_delete_params.rb +22 -0
- data/lib/lithic/models/auth_rules/auth_rule.rb +6 -2
- data/lib/lithic/models/auth_rules/conditional_block_parameters.rb +3 -0
- data/lib/lithic/models/auth_rules/v2_create_params.rb +5 -2
- data/lib/lithic/models/auth_rules/v2_draft_params.rb +1 -0
- data/lib/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rb +9 -9
- data/lib/lithic/models/financial_account.rb +1 -0
- data/lib/lithic/models/financial_account_update_status_params.rb +1 -0
- data/lib/lithic/models/financial_accounts/category_tier.rb +28 -0
- data/lib/lithic/models/financial_accounts/interest_tier_schedule.rb +50 -0
- data/lib/lithic/models/financial_accounts/interest_tier_schedule_create_params.rb +16 -0
- data/lib/lithic/models/financial_accounts/interest_tier_schedule_delete_params.rb +22 -0
- data/lib/lithic/models/financial_accounts/interest_tier_schedule_list_params.rb +40 -0
- data/lib/lithic/models/financial_accounts/interest_tier_schedule_retrieve_params.rb +22 -0
- data/lib/lithic/models/financial_accounts/interest_tier_schedule_update_params.rb +44 -0
- data/lib/lithic/models/financial_accounts/loan_tape.rb +1 -0
- data/lib/lithic/models/financial_accounts/loan_tape_configuration.rb +63 -0
- data/lib/lithic/models/financial_accounts/loan_tape_configuration_retrieve_params.rb +16 -0
- data/lib/lithic/models/financial_accounts/loan_tape_rebuild_configuration.rb +36 -0
- data/lib/lithic/models/financial_accounts/statement.rb +1 -0
- data/lib/lithic/models/{digital_wallet_token_metadata.rb → token_metadata.rb} +18 -19
- data/lib/lithic/models/tokenization_approval_request_webhook_event.rb +9 -9
- data/lib/lithic/models/tokenization_decisioning_request_webhook_event.rb +9 -9
- data/lib/lithic/models.rb +4 -2
- data/lib/lithic/resources/account_holders/entities.rb +89 -0
- data/lib/lithic/resources/account_holders.rb +4 -0
- data/lib/lithic/resources/financial_accounts/interest_tier_schedule.rb +205 -0
- data/lib/lithic/resources/financial_accounts/loan_tape_configuration.rb +36 -0
- data/lib/lithic/resources/financial_accounts.rb +9 -0
- data/lib/lithic/version.rb +1 -1
- data/lib/lithic.rb +18 -1
- data/rbi/lithic/models/account_holders/account_holder_entity.rbi +296 -0
- data/rbi/lithic/models/account_holders/entity_create_params.rbi +242 -0
- data/rbi/lithic/models/account_holders/entity_create_response.rbi +292 -0
- data/rbi/lithic/models/account_holders/entity_delete_params.rbi +43 -0
- data/rbi/lithic/models/auth_rules/auth_rule.rbi +6 -3
- data/rbi/lithic/models/auth_rules/conditional_block_parameters.rbi +1 -0
- data/rbi/lithic/models/auth_rules/v2_create_params.rbi +6 -3
- data/rbi/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rbi +15 -17
- data/rbi/lithic/models/financial_account.rbi +5 -0
- data/rbi/lithic/models/financial_account_update_status_params.rbi +5 -0
- data/rbi/lithic/models/financial_accounts/category_tier.rbi +45 -0
- data/rbi/lithic/models/financial_accounts/interest_tier_schedule.rbi +75 -0
- data/rbi/lithic/models/financial_accounts/interest_tier_schedule_create_params.rbi +32 -0
- data/rbi/lithic/models/financial_accounts/interest_tier_schedule_delete_params.rbi +43 -0
- data/rbi/lithic/models/financial_accounts/interest_tier_schedule_list_params.rbi +73 -0
- data/rbi/lithic/models/financial_accounts/interest_tier_schedule_retrieve_params.rbi +43 -0
- data/rbi/lithic/models/financial_accounts/interest_tier_schedule_update_params.rbi +70 -0
- data/rbi/lithic/models/financial_accounts/loan_tape.rbi +5 -0
- data/rbi/lithic/models/financial_accounts/loan_tape_configuration.rbi +99 -0
- data/rbi/lithic/models/financial_accounts/loan_tape_configuration_retrieve_params.rbi +32 -0
- data/rbi/lithic/models/financial_accounts/loan_tape_rebuild_configuration.rbi +65 -0
- data/rbi/lithic/models/financial_accounts/statement.rbi +5 -0
- data/rbi/lithic/models/{digital_wallet_token_metadata.rbi → token_metadata.rbi} +34 -41
- data/rbi/lithic/models/tokenization_approval_request_webhook_event.rbi +11 -17
- data/rbi/lithic/models/tokenization_decisioning_request_webhook_event.rbi +15 -17
- data/rbi/lithic/models.rbi +4 -2
- data/rbi/lithic/resources/account_holders/entities.rbi +80 -0
- data/rbi/lithic/resources/account_holders.rbi +3 -0
- data/rbi/lithic/resources/auth_rules/v2.rbi +2 -1
- data/rbi/lithic/resources/financial_accounts/interest_tier_schedule.rbi +156 -0
- data/rbi/lithic/resources/financial_accounts/loan_tape_configuration.rbi +30 -0
- data/rbi/lithic/resources/financial_accounts.rbi +10 -0
- data/sig/lithic/models/account_holders/account_holder_entity.rbs +137 -0
- data/sig/lithic/models/account_holders/entity_create_params.rbs +118 -0
- data/sig/lithic/models/account_holders/entity_create_response.rbs +117 -0
- data/sig/lithic/models/account_holders/entity_delete_params.rbs +26 -0
- data/sig/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rbs +5 -9
- data/sig/lithic/models/financial_account.rbs +2 -0
- data/sig/lithic/models/financial_account_update_status_params.rbs +2 -0
- data/sig/lithic/models/financial_accounts/category_tier.rbs +21 -0
- data/sig/lithic/models/financial_accounts/interest_tier_schedule.rbs +41 -0
- data/sig/lithic/models/financial_accounts/interest_tier_schedule_create_params.rbs +17 -0
- data/sig/lithic/models/financial_accounts/interest_tier_schedule_delete_params.rbs +26 -0
- data/sig/lithic/models/financial_accounts/interest_tier_schedule_list_params.rbs +40 -0
- data/sig/lithic/models/financial_accounts/interest_tier_schedule_retrieve_params.rbs +26 -0
- data/sig/lithic/models/financial_accounts/interest_tier_schedule_update_params.rbs +38 -0
- data/sig/lithic/models/financial_accounts/loan_tape.rbs +2 -0
- data/sig/lithic/models/financial_accounts/loan_tape_configuration.rbs +60 -0
- data/sig/lithic/models/financial_accounts/loan_tape_configuration_retrieve_params.rbs +17 -0
- data/sig/lithic/models/financial_accounts/loan_tape_rebuild_configuration.rbs +32 -0
- data/sig/lithic/models/financial_accounts/statement.rbs +2 -0
- data/sig/lithic/models/{digital_wallet_token_metadata.rbs → token_metadata.rbs} +19 -17
- data/sig/lithic/models/tokenization_approval_request_webhook_event.rbs +5 -9
- data/sig/lithic/models/tokenization_decisioning_request_webhook_event.rbs +5 -9
- data/sig/lithic/models.rbs +4 -2
- data/sig/lithic/resources/account_holders/entities.rbs +28 -0
- data/sig/lithic/resources/account_holders.rbs +2 -0
- data/sig/lithic/resources/financial_accounts/interest_tier_schedule.rbs +46 -0
- data/sig/lithic/resources/financial_accounts/loan_tape_configuration.rbs +14 -0
- data/sig/lithic/resources/financial_accounts.rbs +4 -0
- metadata +56 -5
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Lithic
|
|
4
|
+
module Models
|
|
5
|
+
AccountHolderEntity = AccountHolders::AccountHolderEntity
|
|
6
|
+
|
|
7
|
+
module AccountHolders
|
|
8
|
+
class AccountHolderEntity < Lithic::Internal::Type::BaseModel
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
Lithic::AccountHolders::AccountHolderEntity,
|
|
13
|
+
Lithic::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Globally unique identifier for the entity
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :token
|
|
20
|
+
|
|
21
|
+
# Globally unique identifier for the account holder
|
|
22
|
+
sig { returns(String) }
|
|
23
|
+
attr_accessor :account_holder_token
|
|
24
|
+
|
|
25
|
+
# Individual's current address
|
|
26
|
+
sig { returns(Lithic::AccountHolders::AccountHolderEntity::Address) }
|
|
27
|
+
attr_reader :address
|
|
28
|
+
|
|
29
|
+
sig do
|
|
30
|
+
params(
|
|
31
|
+
address:
|
|
32
|
+
Lithic::AccountHolders::AccountHolderEntity::Address::OrHash
|
|
33
|
+
).void
|
|
34
|
+
end
|
|
35
|
+
attr_writer :address
|
|
36
|
+
|
|
37
|
+
# Individual's date of birth, as an RFC 3339 date
|
|
38
|
+
sig { returns(T.nilable(String)) }
|
|
39
|
+
attr_accessor :dob
|
|
40
|
+
|
|
41
|
+
# Individual's email address
|
|
42
|
+
sig { returns(T.nilable(String)) }
|
|
43
|
+
attr_accessor :email
|
|
44
|
+
|
|
45
|
+
# Individual's first name, as it appears on government-issued identity documents
|
|
46
|
+
sig { returns(T.nilable(String)) }
|
|
47
|
+
attr_accessor :first_name
|
|
48
|
+
|
|
49
|
+
# Individual's last name, as it appears on government-issued identity documents
|
|
50
|
+
sig { returns(T.nilable(String)) }
|
|
51
|
+
attr_accessor :last_name
|
|
52
|
+
|
|
53
|
+
# Individual's phone number, entered in E.164 format
|
|
54
|
+
sig { returns(T.nilable(String)) }
|
|
55
|
+
attr_accessor :phone_number
|
|
56
|
+
|
|
57
|
+
# The status of the entity
|
|
58
|
+
sig do
|
|
59
|
+
returns(
|
|
60
|
+
Lithic::AccountHolders::AccountHolderEntity::Status::TaggedSymbol
|
|
61
|
+
)
|
|
62
|
+
end
|
|
63
|
+
attr_accessor :status
|
|
64
|
+
|
|
65
|
+
# The type of entity
|
|
66
|
+
sig do
|
|
67
|
+
returns(
|
|
68
|
+
Lithic::AccountHolders::AccountHolderEntity::Type::TaggedSymbol
|
|
69
|
+
)
|
|
70
|
+
end
|
|
71
|
+
attr_accessor :type
|
|
72
|
+
|
|
73
|
+
# Information about an entity associated with an account holder
|
|
74
|
+
sig do
|
|
75
|
+
params(
|
|
76
|
+
token: String,
|
|
77
|
+
account_holder_token: String,
|
|
78
|
+
address:
|
|
79
|
+
Lithic::AccountHolders::AccountHolderEntity::Address::OrHash,
|
|
80
|
+
dob: T.nilable(String),
|
|
81
|
+
email: T.nilable(String),
|
|
82
|
+
first_name: T.nilable(String),
|
|
83
|
+
last_name: T.nilable(String),
|
|
84
|
+
phone_number: T.nilable(String),
|
|
85
|
+
status:
|
|
86
|
+
Lithic::AccountHolders::AccountHolderEntity::Status::OrSymbol,
|
|
87
|
+
type: Lithic::AccountHolders::AccountHolderEntity::Type::OrSymbol
|
|
88
|
+
).returns(T.attached_class)
|
|
89
|
+
end
|
|
90
|
+
def self.new(
|
|
91
|
+
# Globally unique identifier for the entity
|
|
92
|
+
token:,
|
|
93
|
+
# Globally unique identifier for the account holder
|
|
94
|
+
account_holder_token:,
|
|
95
|
+
# Individual's current address
|
|
96
|
+
address:,
|
|
97
|
+
# Individual's date of birth, as an RFC 3339 date
|
|
98
|
+
dob:,
|
|
99
|
+
# Individual's email address
|
|
100
|
+
email:,
|
|
101
|
+
# Individual's first name, as it appears on government-issued identity documents
|
|
102
|
+
first_name:,
|
|
103
|
+
# Individual's last name, as it appears on government-issued identity documents
|
|
104
|
+
last_name:,
|
|
105
|
+
# Individual's phone number, entered in E.164 format
|
|
106
|
+
phone_number:,
|
|
107
|
+
# The status of the entity
|
|
108
|
+
status:,
|
|
109
|
+
# The type of entity
|
|
110
|
+
type:
|
|
111
|
+
)
|
|
112
|
+
end
|
|
113
|
+
|
|
114
|
+
sig do
|
|
115
|
+
override.returns(
|
|
116
|
+
{
|
|
117
|
+
token: String,
|
|
118
|
+
account_holder_token: String,
|
|
119
|
+
address: Lithic::AccountHolders::AccountHolderEntity::Address,
|
|
120
|
+
dob: T.nilable(String),
|
|
121
|
+
email: T.nilable(String),
|
|
122
|
+
first_name: T.nilable(String),
|
|
123
|
+
last_name: T.nilable(String),
|
|
124
|
+
phone_number: T.nilable(String),
|
|
125
|
+
status:
|
|
126
|
+
Lithic::AccountHolders::AccountHolderEntity::Status::TaggedSymbol,
|
|
127
|
+
type:
|
|
128
|
+
Lithic::AccountHolders::AccountHolderEntity::Type::TaggedSymbol
|
|
129
|
+
}
|
|
130
|
+
)
|
|
131
|
+
end
|
|
132
|
+
def to_hash
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
class Address < Lithic::Internal::Type::BaseModel
|
|
136
|
+
OrHash =
|
|
137
|
+
T.type_alias do
|
|
138
|
+
T.any(
|
|
139
|
+
Lithic::AccountHolders::AccountHolderEntity::Address,
|
|
140
|
+
Lithic::Internal::AnyHash
|
|
141
|
+
)
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
# Valid deliverable address (no PO boxes).
|
|
145
|
+
sig { returns(String) }
|
|
146
|
+
attr_accessor :address1
|
|
147
|
+
|
|
148
|
+
# Name of city.
|
|
149
|
+
sig { returns(String) }
|
|
150
|
+
attr_accessor :city
|
|
151
|
+
|
|
152
|
+
# Valid country code. Only USA is currently supported, entered in uppercase ISO
|
|
153
|
+
# 3166-1 alpha-3 three-character format.
|
|
154
|
+
sig { returns(String) }
|
|
155
|
+
attr_accessor :country
|
|
156
|
+
|
|
157
|
+
# Valid postal code. Only USA ZIP codes are currently supported, entered as a
|
|
158
|
+
# five-digit ZIP or nine-digit ZIP+4.
|
|
159
|
+
sig { returns(String) }
|
|
160
|
+
attr_accessor :postal_code
|
|
161
|
+
|
|
162
|
+
# Valid state code. Only USA state codes are currently supported, entered in
|
|
163
|
+
# uppercase ISO 3166-2 two-character format.
|
|
164
|
+
sig { returns(String) }
|
|
165
|
+
attr_accessor :state
|
|
166
|
+
|
|
167
|
+
# Unit or apartment number (if applicable).
|
|
168
|
+
sig { returns(T.nilable(String)) }
|
|
169
|
+
attr_reader :address2
|
|
170
|
+
|
|
171
|
+
sig { params(address2: String).void }
|
|
172
|
+
attr_writer :address2
|
|
173
|
+
|
|
174
|
+
# Individual's current address
|
|
175
|
+
sig do
|
|
176
|
+
params(
|
|
177
|
+
address1: String,
|
|
178
|
+
city: String,
|
|
179
|
+
country: String,
|
|
180
|
+
postal_code: String,
|
|
181
|
+
state: String,
|
|
182
|
+
address2: String
|
|
183
|
+
).returns(T.attached_class)
|
|
184
|
+
end
|
|
185
|
+
def self.new(
|
|
186
|
+
# Valid deliverable address (no PO boxes).
|
|
187
|
+
address1:,
|
|
188
|
+
# Name of city.
|
|
189
|
+
city:,
|
|
190
|
+
# Valid country code. Only USA is currently supported, entered in uppercase ISO
|
|
191
|
+
# 3166-1 alpha-3 three-character format.
|
|
192
|
+
country:,
|
|
193
|
+
# Valid postal code. Only USA ZIP codes are currently supported, entered as a
|
|
194
|
+
# five-digit ZIP or nine-digit ZIP+4.
|
|
195
|
+
postal_code:,
|
|
196
|
+
# Valid state code. Only USA state codes are currently supported, entered in
|
|
197
|
+
# uppercase ISO 3166-2 two-character format.
|
|
198
|
+
state:,
|
|
199
|
+
# Unit or apartment number (if applicable).
|
|
200
|
+
address2: nil
|
|
201
|
+
)
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
sig do
|
|
205
|
+
override.returns(
|
|
206
|
+
{
|
|
207
|
+
address1: String,
|
|
208
|
+
city: String,
|
|
209
|
+
country: String,
|
|
210
|
+
postal_code: String,
|
|
211
|
+
state: String,
|
|
212
|
+
address2: String
|
|
213
|
+
}
|
|
214
|
+
)
|
|
215
|
+
end
|
|
216
|
+
def to_hash
|
|
217
|
+
end
|
|
218
|
+
end
|
|
219
|
+
|
|
220
|
+
# The status of the entity
|
|
221
|
+
module Status
|
|
222
|
+
extend Lithic::Internal::Type::Enum
|
|
223
|
+
|
|
224
|
+
TaggedSymbol =
|
|
225
|
+
T.type_alias do
|
|
226
|
+
T.all(Symbol, Lithic::AccountHolders::AccountHolderEntity::Status)
|
|
227
|
+
end
|
|
228
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
229
|
+
|
|
230
|
+
ACCEPTED =
|
|
231
|
+
T.let(
|
|
232
|
+
:ACCEPTED,
|
|
233
|
+
Lithic::AccountHolders::AccountHolderEntity::Status::TaggedSymbol
|
|
234
|
+
)
|
|
235
|
+
INACTIVE =
|
|
236
|
+
T.let(
|
|
237
|
+
:INACTIVE,
|
|
238
|
+
Lithic::AccountHolders::AccountHolderEntity::Status::TaggedSymbol
|
|
239
|
+
)
|
|
240
|
+
PENDING_REVIEW =
|
|
241
|
+
T.let(
|
|
242
|
+
:PENDING_REVIEW,
|
|
243
|
+
Lithic::AccountHolders::AccountHolderEntity::Status::TaggedSymbol
|
|
244
|
+
)
|
|
245
|
+
REJECTED =
|
|
246
|
+
T.let(
|
|
247
|
+
:REJECTED,
|
|
248
|
+
Lithic::AccountHolders::AccountHolderEntity::Status::TaggedSymbol
|
|
249
|
+
)
|
|
250
|
+
|
|
251
|
+
sig do
|
|
252
|
+
override.returns(
|
|
253
|
+
T::Array[
|
|
254
|
+
Lithic::AccountHolders::AccountHolderEntity::Status::TaggedSymbol
|
|
255
|
+
]
|
|
256
|
+
)
|
|
257
|
+
end
|
|
258
|
+
def self.values
|
|
259
|
+
end
|
|
260
|
+
end
|
|
261
|
+
|
|
262
|
+
# The type of entity
|
|
263
|
+
module Type
|
|
264
|
+
extend Lithic::Internal::Type::Enum
|
|
265
|
+
|
|
266
|
+
TaggedSymbol =
|
|
267
|
+
T.type_alias do
|
|
268
|
+
T.all(Symbol, Lithic::AccountHolders::AccountHolderEntity::Type)
|
|
269
|
+
end
|
|
270
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
271
|
+
|
|
272
|
+
BENEFICIAL_OWNER_INDIVIDUAL =
|
|
273
|
+
T.let(
|
|
274
|
+
:BENEFICIAL_OWNER_INDIVIDUAL,
|
|
275
|
+
Lithic::AccountHolders::AccountHolderEntity::Type::TaggedSymbol
|
|
276
|
+
)
|
|
277
|
+
CONTROL_PERSON =
|
|
278
|
+
T.let(
|
|
279
|
+
:CONTROL_PERSON,
|
|
280
|
+
Lithic::AccountHolders::AccountHolderEntity::Type::TaggedSymbol
|
|
281
|
+
)
|
|
282
|
+
|
|
283
|
+
sig do
|
|
284
|
+
override.returns(
|
|
285
|
+
T::Array[
|
|
286
|
+
Lithic::AccountHolders::AccountHolderEntity::Type::TaggedSymbol
|
|
287
|
+
]
|
|
288
|
+
)
|
|
289
|
+
end
|
|
290
|
+
def self.values
|
|
291
|
+
end
|
|
292
|
+
end
|
|
293
|
+
end
|
|
294
|
+
end
|
|
295
|
+
end
|
|
296
|
+
end
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Lithic
|
|
4
|
+
module Models
|
|
5
|
+
module AccountHolders
|
|
6
|
+
class EntityCreateParams < Lithic::Internal::Type::BaseModel
|
|
7
|
+
extend Lithic::Internal::Type::RequestParameters::Converter
|
|
8
|
+
include Lithic::Internal::Type::RequestParameters
|
|
9
|
+
|
|
10
|
+
OrHash =
|
|
11
|
+
T.type_alias do
|
|
12
|
+
T.any(
|
|
13
|
+
Lithic::AccountHolders::EntityCreateParams,
|
|
14
|
+
Lithic::Internal::AnyHash
|
|
15
|
+
)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
# Individual's current address - PO boxes, UPS drops, and FedEx drops are not
|
|
19
|
+
# acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
|
|
20
|
+
sig { returns(Lithic::AccountHolders::EntityCreateParams::Address) }
|
|
21
|
+
attr_reader :address
|
|
22
|
+
|
|
23
|
+
sig do
|
|
24
|
+
params(
|
|
25
|
+
address: Lithic::AccountHolders::EntityCreateParams::Address::OrHash
|
|
26
|
+
).void
|
|
27
|
+
end
|
|
28
|
+
attr_writer :address
|
|
29
|
+
|
|
30
|
+
# Individual's date of birth, as an RFC 3339 date.
|
|
31
|
+
sig { returns(String) }
|
|
32
|
+
attr_accessor :dob
|
|
33
|
+
|
|
34
|
+
# Individual's email address. If utilizing Lithic for chargeback processing, this
|
|
35
|
+
# customer email address may be used to communicate dispute status and resolution.
|
|
36
|
+
sig { returns(String) }
|
|
37
|
+
attr_accessor :email
|
|
38
|
+
|
|
39
|
+
# Individual's first name, as it appears on government-issued identity documents.
|
|
40
|
+
sig { returns(String) }
|
|
41
|
+
attr_accessor :first_name
|
|
42
|
+
|
|
43
|
+
# Government-issued identification number (required for identity verification and
|
|
44
|
+
# compliance with banking regulations). Social Security Numbers (SSN) and
|
|
45
|
+
# Individual Taxpayer Identification Numbers (ITIN) are currently supported,
|
|
46
|
+
# entered as full nine-digits, with or without hyphens
|
|
47
|
+
sig { returns(String) }
|
|
48
|
+
attr_accessor :government_id
|
|
49
|
+
|
|
50
|
+
# Individual's last name, as it appears on government-issued identity documents.
|
|
51
|
+
sig { returns(String) }
|
|
52
|
+
attr_accessor :last_name
|
|
53
|
+
|
|
54
|
+
# Individual's phone number, entered in E.164 format.
|
|
55
|
+
sig { returns(String) }
|
|
56
|
+
attr_accessor :phone_number
|
|
57
|
+
|
|
58
|
+
# The type of entity to create on the account holder
|
|
59
|
+
sig do
|
|
60
|
+
returns(Lithic::AccountHolders::EntityCreateParams::Type::OrSymbol)
|
|
61
|
+
end
|
|
62
|
+
attr_accessor :type
|
|
63
|
+
|
|
64
|
+
sig do
|
|
65
|
+
params(
|
|
66
|
+
address:
|
|
67
|
+
Lithic::AccountHolders::EntityCreateParams::Address::OrHash,
|
|
68
|
+
dob: String,
|
|
69
|
+
email: String,
|
|
70
|
+
first_name: String,
|
|
71
|
+
government_id: String,
|
|
72
|
+
last_name: String,
|
|
73
|
+
phone_number: String,
|
|
74
|
+
type: Lithic::AccountHolders::EntityCreateParams::Type::OrSymbol,
|
|
75
|
+
request_options: Lithic::RequestOptions::OrHash
|
|
76
|
+
).returns(T.attached_class)
|
|
77
|
+
end
|
|
78
|
+
def self.new(
|
|
79
|
+
# Individual's current address - PO boxes, UPS drops, and FedEx drops are not
|
|
80
|
+
# acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
|
|
81
|
+
address:,
|
|
82
|
+
# Individual's date of birth, as an RFC 3339 date.
|
|
83
|
+
dob:,
|
|
84
|
+
# Individual's email address. If utilizing Lithic for chargeback processing, this
|
|
85
|
+
# customer email address may be used to communicate dispute status and resolution.
|
|
86
|
+
email:,
|
|
87
|
+
# Individual's first name, as it appears on government-issued identity documents.
|
|
88
|
+
first_name:,
|
|
89
|
+
# Government-issued identification number (required for identity verification and
|
|
90
|
+
# compliance with banking regulations). Social Security Numbers (SSN) and
|
|
91
|
+
# Individual Taxpayer Identification Numbers (ITIN) are currently supported,
|
|
92
|
+
# entered as full nine-digits, with or without hyphens
|
|
93
|
+
government_id:,
|
|
94
|
+
# Individual's last name, as it appears on government-issued identity documents.
|
|
95
|
+
last_name:,
|
|
96
|
+
# Individual's phone number, entered in E.164 format.
|
|
97
|
+
phone_number:,
|
|
98
|
+
# The type of entity to create on the account holder
|
|
99
|
+
type:,
|
|
100
|
+
request_options: {}
|
|
101
|
+
)
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
sig do
|
|
105
|
+
override.returns(
|
|
106
|
+
{
|
|
107
|
+
address: Lithic::AccountHolders::EntityCreateParams::Address,
|
|
108
|
+
dob: String,
|
|
109
|
+
email: String,
|
|
110
|
+
first_name: String,
|
|
111
|
+
government_id: String,
|
|
112
|
+
last_name: String,
|
|
113
|
+
phone_number: String,
|
|
114
|
+
type: Lithic::AccountHolders::EntityCreateParams::Type::OrSymbol,
|
|
115
|
+
request_options: Lithic::RequestOptions
|
|
116
|
+
}
|
|
117
|
+
)
|
|
118
|
+
end
|
|
119
|
+
def to_hash
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
class Address < Lithic::Internal::Type::BaseModel
|
|
123
|
+
OrHash =
|
|
124
|
+
T.type_alias do
|
|
125
|
+
T.any(
|
|
126
|
+
Lithic::AccountHolders::EntityCreateParams::Address,
|
|
127
|
+
Lithic::Internal::AnyHash
|
|
128
|
+
)
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
# Valid deliverable address (no PO boxes).
|
|
132
|
+
sig { returns(String) }
|
|
133
|
+
attr_accessor :address1
|
|
134
|
+
|
|
135
|
+
# Name of city.
|
|
136
|
+
sig { returns(String) }
|
|
137
|
+
attr_accessor :city
|
|
138
|
+
|
|
139
|
+
# Valid country code. Only USA is currently supported, entered in uppercase ISO
|
|
140
|
+
# 3166-1 alpha-3 three-character format.
|
|
141
|
+
sig { returns(String) }
|
|
142
|
+
attr_accessor :country
|
|
143
|
+
|
|
144
|
+
# Valid postal code. Only USA ZIP codes are currently supported, entered as a
|
|
145
|
+
# five-digit ZIP or nine-digit ZIP+4.
|
|
146
|
+
sig { returns(String) }
|
|
147
|
+
attr_accessor :postal_code
|
|
148
|
+
|
|
149
|
+
# Valid state code. Only USA state codes are currently supported, entered in
|
|
150
|
+
# uppercase ISO 3166-2 two-character format.
|
|
151
|
+
sig { returns(String) }
|
|
152
|
+
attr_accessor :state
|
|
153
|
+
|
|
154
|
+
# Unit or apartment number (if applicable).
|
|
155
|
+
sig { returns(T.nilable(String)) }
|
|
156
|
+
attr_reader :address2
|
|
157
|
+
|
|
158
|
+
sig { params(address2: String).void }
|
|
159
|
+
attr_writer :address2
|
|
160
|
+
|
|
161
|
+
# Individual's current address - PO boxes, UPS drops, and FedEx drops are not
|
|
162
|
+
# acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
|
|
163
|
+
sig do
|
|
164
|
+
params(
|
|
165
|
+
address1: String,
|
|
166
|
+
city: String,
|
|
167
|
+
country: String,
|
|
168
|
+
postal_code: String,
|
|
169
|
+
state: String,
|
|
170
|
+
address2: String
|
|
171
|
+
).returns(T.attached_class)
|
|
172
|
+
end
|
|
173
|
+
def self.new(
|
|
174
|
+
# Valid deliverable address (no PO boxes).
|
|
175
|
+
address1:,
|
|
176
|
+
# Name of city.
|
|
177
|
+
city:,
|
|
178
|
+
# Valid country code. Only USA is currently supported, entered in uppercase ISO
|
|
179
|
+
# 3166-1 alpha-3 three-character format.
|
|
180
|
+
country:,
|
|
181
|
+
# Valid postal code. Only USA ZIP codes are currently supported, entered as a
|
|
182
|
+
# five-digit ZIP or nine-digit ZIP+4.
|
|
183
|
+
postal_code:,
|
|
184
|
+
# Valid state code. Only USA state codes are currently supported, entered in
|
|
185
|
+
# uppercase ISO 3166-2 two-character format.
|
|
186
|
+
state:,
|
|
187
|
+
# Unit or apartment number (if applicable).
|
|
188
|
+
address2: nil
|
|
189
|
+
)
|
|
190
|
+
end
|
|
191
|
+
|
|
192
|
+
sig do
|
|
193
|
+
override.returns(
|
|
194
|
+
{
|
|
195
|
+
address1: String,
|
|
196
|
+
city: String,
|
|
197
|
+
country: String,
|
|
198
|
+
postal_code: String,
|
|
199
|
+
state: String,
|
|
200
|
+
address2: String
|
|
201
|
+
}
|
|
202
|
+
)
|
|
203
|
+
end
|
|
204
|
+
def to_hash
|
|
205
|
+
end
|
|
206
|
+
end
|
|
207
|
+
|
|
208
|
+
# The type of entity to create on the account holder
|
|
209
|
+
module Type
|
|
210
|
+
extend Lithic::Internal::Type::Enum
|
|
211
|
+
|
|
212
|
+
TaggedSymbol =
|
|
213
|
+
T.type_alias do
|
|
214
|
+
T.all(Symbol, Lithic::AccountHolders::EntityCreateParams::Type)
|
|
215
|
+
end
|
|
216
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
217
|
+
|
|
218
|
+
BENEFICIAL_OWNER_INDIVIDUAL =
|
|
219
|
+
T.let(
|
|
220
|
+
:BENEFICIAL_OWNER_INDIVIDUAL,
|
|
221
|
+
Lithic::AccountHolders::EntityCreateParams::Type::TaggedSymbol
|
|
222
|
+
)
|
|
223
|
+
CONTROL_PERSON =
|
|
224
|
+
T.let(
|
|
225
|
+
:CONTROL_PERSON,
|
|
226
|
+
Lithic::AccountHolders::EntityCreateParams::Type::TaggedSymbol
|
|
227
|
+
)
|
|
228
|
+
|
|
229
|
+
sig do
|
|
230
|
+
override.returns(
|
|
231
|
+
T::Array[
|
|
232
|
+
Lithic::AccountHolders::EntityCreateParams::Type::TaggedSymbol
|
|
233
|
+
]
|
|
234
|
+
)
|
|
235
|
+
end
|
|
236
|
+
def self.values
|
|
237
|
+
end
|
|
238
|
+
end
|
|
239
|
+
end
|
|
240
|
+
end
|
|
241
|
+
end
|
|
242
|
+
end
|