lithic 0.11.0 → 0.13.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 (108) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +38 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/client.rb +15 -1
  5. data/lib/lithic/models/account.rb +2 -2
  6. data/lib/lithic/models/account_holder_simulate_enrollment_review_response.rb +5 -4
  7. data/lib/lithic/models/account_holder_update_response.rb +3 -3
  8. data/lib/lithic/models/account_update_params.rb +2 -2
  9. data/lib/lithic/models/auth_rules/auth_rule.rb +14 -8
  10. data/lib/lithic/models/auth_rules/auth_rule_version.rb +5 -3
  11. data/lib/lithic/models/auth_rules/card_transaction_update_action.rb +109 -0
  12. data/lib/lithic/models/auth_rules/conditional_authorization_action_parameters.rb +152 -1
  13. data/lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb +244 -0
  14. data/lib/lithic/models/auth_rules/event_stream.rb +1 -0
  15. data/lib/lithic/models/auth_rules/rule_feature.rb +47 -1
  16. data/lib/lithic/models/auth_rules/spend_velocity_filters.rb +33 -0
  17. data/lib/lithic/models/auth_rules/typescript_code_parameters.rb +2 -2
  18. data/lib/lithic/models/auth_rules/v2_create_params.rb +27 -15
  19. data/lib/lithic/models/auth_rules/v2_draft_params.rb +5 -3
  20. data/lib/lithic/models/card_authorization_challenge_response_webhook_event.rb +103 -0
  21. data/lib/lithic/models/card_create_params.rb +4 -2
  22. data/lib/lithic/models/card_renew_params.rb +4 -2
  23. data/lib/lithic/models/event.rb +5 -0
  24. data/lib/lithic/models/event_list_params.rb +3 -0
  25. data/lib/lithic/models/event_subscription.rb +3 -0
  26. data/lib/lithic/models/events/subscription_create_params.rb +3 -0
  27. data/lib/lithic/models/events/subscription_send_simulated_example_params.rb +1 -0
  28. data/lib/lithic/models/events/subscription_update_params.rb +3 -0
  29. data/lib/lithic/models/external_bank_account_set_verification_method_params.rb +55 -0
  30. data/lib/lithic/models/non_pci_card.rb +13 -13
  31. data/lib/lithic/models/parsed_webhook_event.rb +3 -1
  32. data/lib/lithic/models/reports/settlement/network_total_list_params.rb +1 -0
  33. data/lib/lithic/models/settlement_detail.rb +11 -4
  34. data/lib/lithic/models/settlement_summary_details.rb +1 -0
  35. data/lib/lithic/models.rb +6 -0
  36. data/lib/lithic/resources/accounts.rb +1 -1
  37. data/lib/lithic/resources/auth_rules/v2.rb +1 -1
  38. data/lib/lithic/resources/external_bank_accounts.rb +31 -0
  39. data/lib/lithic/resources/webhooks.rb +1 -1
  40. data/lib/lithic/version.rb +1 -1
  41. data/lib/lithic.rb +6 -1
  42. data/rbi/lithic/models/account.rbi +3 -6
  43. data/rbi/lithic/models/account_holder_simulate_enrollment_review_response.rbi +10 -14
  44. data/rbi/lithic/models/account_holder_update_response.rbi +3 -3
  45. data/rbi/lithic/models/account_update_params.rbi +5 -8
  46. data/rbi/lithic/models/auth_rules/auth_rule.rbi +10 -3
  47. data/rbi/lithic/models/auth_rules/auth_rule_version.rbi +2 -0
  48. data/rbi/lithic/models/auth_rules/card_transaction_update_action.rbi +242 -0
  49. data/rbi/lithic/models/auth_rules/conditional_authorization_action_parameters.rbi +354 -3
  50. data/rbi/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rbi +573 -0
  51. data/rbi/lithic/models/auth_rules/event_stream.rbi +5 -0
  52. data/rbi/lithic/models/auth_rules/rule_feature.rbi +104 -1
  53. data/rbi/lithic/models/auth_rules/spend_velocity_filters.rbi +58 -0
  54. data/rbi/lithic/models/auth_rules/typescript_code_parameters.rbi +6 -3
  55. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +30 -9
  56. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +4 -0
  57. data/rbi/lithic/models/card_authorization_challenge_response_webhook_event.rbi +175 -0
  58. data/rbi/lithic/models/card_create_params.rbi +8 -4
  59. data/rbi/lithic/models/card_renew_params.rbi +8 -4
  60. data/rbi/lithic/models/event.rbi +11 -0
  61. data/rbi/lithic/models/event_list_params.rbi +7 -0
  62. data/rbi/lithic/models/event_subscription.rbi +7 -0
  63. data/rbi/lithic/models/events/subscription_create_params.rbi +7 -0
  64. data/rbi/lithic/models/events/subscription_send_simulated_example_params.rbi +5 -0
  65. data/rbi/lithic/models/events/subscription_update_params.rbi +7 -0
  66. data/rbi/lithic/models/external_bank_account_set_verification_method_params.rbi +111 -0
  67. data/rbi/lithic/models/non_pci_card.rbi +21 -31
  68. data/rbi/lithic/models/parsed_webhook_event.rbi +1 -0
  69. data/rbi/lithic/models/reports/settlement/network_total_list_params.rbi +5 -0
  70. data/rbi/lithic/models/settlement_detail.rbi +17 -4
  71. data/rbi/lithic/models/settlement_summary_details.rbi +2 -0
  72. data/rbi/lithic/models.rbi +6 -0
  73. data/rbi/lithic/resources/accounts.rbi +2 -1
  74. data/rbi/lithic/resources/auth_rules/v2.rbi +1 -0
  75. data/rbi/lithic/resources/cards.rbi +8 -4
  76. data/rbi/lithic/resources/external_bank_accounts.rbi +22 -0
  77. data/rbi/lithic/resources/webhooks.rbi +1 -0
  78. data/sig/lithic/models/account.rbs +4 -8
  79. data/sig/lithic/models/account_holder_simulate_enrollment_review_response.rbs +4 -8
  80. data/sig/lithic/models/account_update_params.rbs +4 -8
  81. data/sig/lithic/models/auth_rules/auth_rule.rbs +2 -0
  82. data/sig/lithic/models/auth_rules/auth_rule_version.rbs +1 -0
  83. data/sig/lithic/models/auth_rules/card_transaction_update_action.rbs +100 -0
  84. data/sig/lithic/models/auth_rules/conditional_authorization_action_parameters.rbs +89 -3
  85. data/sig/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rbs +155 -0
  86. data/sig/lithic/models/auth_rules/event_stream.rbs +2 -0
  87. data/sig/lithic/models/auth_rules/rule_feature.rbs +42 -0
  88. data/sig/lithic/models/auth_rules/spend_velocity_filters.rbs +35 -0
  89. data/sig/lithic/models/auth_rules/v2_create_params.rbs +3 -0
  90. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +1 -0
  91. data/sig/lithic/models/card_authorization_challenge_response_webhook_event.rbs +76 -0
  92. data/sig/lithic/models/event.rbs +2 -0
  93. data/sig/lithic/models/event_list_params.rbs +2 -0
  94. data/sig/lithic/models/event_subscription.rbs +2 -0
  95. data/sig/lithic/models/events/subscription_create_params.rbs +2 -0
  96. data/sig/lithic/models/events/subscription_send_simulated_example_params.rbs +2 -0
  97. data/sig/lithic/models/events/subscription_update_params.rbs +2 -0
  98. data/sig/lithic/models/external_bank_account_set_verification_method_params.rbs +51 -0
  99. data/sig/lithic/models/non_pci_card.rbs +20 -30
  100. data/sig/lithic/models/parsed_webhook_event.rbs +1 -0
  101. data/sig/lithic/models/reports/settlement/network_total_list_params.rbs +2 -1
  102. data/sig/lithic/models/settlement_detail.rbs +3 -1
  103. data/sig/lithic/models/settlement_summary_details.rbs +3 -1
  104. data/sig/lithic/models.rbs +4 -0
  105. data/sig/lithic/resources/accounts.rbs +1 -1
  106. data/sig/lithic/resources/external_bank_accounts.rbs +7 -0
  107. data/sig/lithic/resources/webhooks.rbs +1 -0
  108. metadata +17 -2
@@ -29,6 +29,8 @@ module Lithic
29
29
  # created.
30
30
  # - book_transfer_transaction.updated: Occurs when a book transfer transaction is
31
31
  # updated.
32
+ # - card_authorization.challenge_response: Occurs when a cardholder responds to an
33
+ # SMS challenge during card authorization.
32
34
  # - card_transaction.enhanced_data.created: Occurs when L2/L3 enhanced commercial
33
35
  # data is processed for a transaction event.
34
36
  # - card_transaction.enhanced_data.updated: Occurs when L2/L3 enhanced commercial
@@ -149,6 +151,8 @@ module Lithic
149
151
  # created.
150
152
  # - book_transfer_transaction.updated: Occurs when a book transfer transaction is
151
153
  # updated.
154
+ # - card_authorization.challenge_response: Occurs when a cardholder responds to an
155
+ # SMS challenge during card authorization.
152
156
  # - card_transaction.enhanced_data.created: Occurs when L2/L3 enhanced commercial
153
157
  # data is processed for a transaction event.
154
158
  # - card_transaction.enhanced_data.updated: Occurs when L2/L3 enhanced commercial
@@ -265,6 +269,8 @@ module Lithic
265
269
  # created.
266
270
  # - book_transfer_transaction.updated: Occurs when a book transfer transaction is
267
271
  # updated.
272
+ # - card_authorization.challenge_response: Occurs when a cardholder responds to an
273
+ # SMS challenge during card authorization.
268
274
  # - card_transaction.enhanced_data.created: Occurs when L2/L3 enhanced commercial
269
275
  # data is processed for a transaction event.
270
276
  # - card_transaction.enhanced_data.updated: Occurs when L2/L3 enhanced commercial
@@ -392,6 +398,11 @@ module Lithic
392
398
  :"book_transfer_transaction.updated",
393
399
  Lithic::Event::EventType::TaggedSymbol
394
400
  )
401
+ CARD_AUTHORIZATION_CHALLENGE_RESPONSE =
402
+ T.let(
403
+ :"card_authorization.challenge_response",
404
+ Lithic::Event::EventType::TaggedSymbol
405
+ )
395
406
  CARD_TRANSACTION_ENHANCED_DATA_CREATED =
396
407
  T.let(
397
408
  :"card_transaction.enhanced_data.created",
@@ -138,6 +138,8 @@ module Lithic
138
138
  # created.
139
139
  # - book_transfer_transaction.updated: Occurs when a book transfer transaction is
140
140
  # updated.
141
+ # - card_authorization.challenge_response: Occurs when a cardholder responds to an
142
+ # SMS challenge during card authorization.
141
143
  # - card_transaction.enhanced_data.created: Occurs when L2/L3 enhanced commercial
142
144
  # data is processed for a transaction event.
143
145
  # - card_transaction.enhanced_data.updated: Occurs when L2/L3 enhanced commercial
@@ -269,6 +271,11 @@ module Lithic
269
271
  :"book_transfer_transaction.updated",
270
272
  Lithic::EventListParams::EventType::TaggedSymbol
271
273
  )
274
+ CARD_AUTHORIZATION_CHALLENGE_RESPONSE =
275
+ T.let(
276
+ :"card_authorization.challenge_response",
277
+ Lithic::EventListParams::EventType::TaggedSymbol
278
+ )
272
279
  CARD_TRANSACTION_ENHANCED_DATA_CREATED =
273
280
  T.let(
274
281
  :"card_transaction.enhanced_data.created",
@@ -86,6 +86,8 @@ module Lithic
86
86
  # created.
87
87
  # - book_transfer_transaction.updated: Occurs when a book transfer transaction is
88
88
  # updated.
89
+ # - card_authorization.challenge_response: Occurs when a cardholder responds to an
90
+ # SMS challenge during card authorization.
89
91
  # - card_transaction.enhanced_data.created: Occurs when L2/L3 enhanced commercial
90
92
  # data is processed for a transaction event.
91
93
  # - card_transaction.enhanced_data.updated: Occurs when L2/L3 enhanced commercial
@@ -217,6 +219,11 @@ module Lithic
217
219
  :"book_transfer_transaction.updated",
218
220
  Lithic::EventSubscription::EventType::TaggedSymbol
219
221
  )
222
+ CARD_AUTHORIZATION_CHALLENGE_RESPONSE =
223
+ T.let(
224
+ :"card_authorization.challenge_response",
225
+ Lithic::EventSubscription::EventType::TaggedSymbol
226
+ )
220
227
  CARD_TRANSACTION_ENHANCED_DATA_CREATED =
221
228
  T.let(
222
229
  :"card_transaction.enhanced_data.created",
@@ -113,6 +113,8 @@ module Lithic
113
113
  # created.
114
114
  # - book_transfer_transaction.updated: Occurs when a book transfer transaction is
115
115
  # updated.
116
+ # - card_authorization.challenge_response: Occurs when a cardholder responds to an
117
+ # SMS challenge during card authorization.
116
118
  # - card_transaction.enhanced_data.created: Occurs when L2/L3 enhanced commercial
117
119
  # data is processed for a transaction event.
118
120
  # - card_transaction.enhanced_data.updated: Occurs when L2/L3 enhanced commercial
@@ -246,6 +248,11 @@ module Lithic
246
248
  :"book_transfer_transaction.updated",
247
249
  Lithic::Events::SubscriptionCreateParams::EventType::TaggedSymbol
248
250
  )
251
+ CARD_AUTHORIZATION_CHALLENGE_RESPONSE =
252
+ T.let(
253
+ :"card_authorization.challenge_response",
254
+ Lithic::Events::SubscriptionCreateParams::EventType::TaggedSymbol
255
+ )
249
256
  CARD_TRANSACTION_ENHANCED_DATA_CREATED =
250
257
  T.let(
251
258
  :"card_transaction.enhanced_data.created",
@@ -118,6 +118,11 @@ module Lithic
118
118
  :"book_transfer_transaction.updated",
119
119
  Lithic::Events::SubscriptionSendSimulatedExampleParams::EventType::TaggedSymbol
120
120
  )
121
+ CARD_AUTHORIZATION_CHALLENGE_RESPONSE =
122
+ T.let(
123
+ :"card_authorization.challenge_response",
124
+ Lithic::Events::SubscriptionSendSimulatedExampleParams::EventType::TaggedSymbol
125
+ )
121
126
  CARD_TRANSACTION_ENHANCED_DATA_CREATED =
122
127
  T.let(
123
128
  :"card_transaction.enhanced_data.created",
@@ -119,6 +119,8 @@ module Lithic
119
119
  # created.
120
120
  # - book_transfer_transaction.updated: Occurs when a book transfer transaction is
121
121
  # updated.
122
+ # - card_authorization.challenge_response: Occurs when a cardholder responds to an
123
+ # SMS challenge during card authorization.
122
124
  # - card_transaction.enhanced_data.created: Occurs when L2/L3 enhanced commercial
123
125
  # data is processed for a transaction event.
124
126
  # - card_transaction.enhanced_data.updated: Occurs when L2/L3 enhanced commercial
@@ -252,6 +254,11 @@ module Lithic
252
254
  :"book_transfer_transaction.updated",
253
255
  Lithic::Events::SubscriptionUpdateParams::EventType::TaggedSymbol
254
256
  )
257
+ CARD_AUTHORIZATION_CHALLENGE_RESPONSE =
258
+ T.let(
259
+ :"card_authorization.challenge_response",
260
+ Lithic::Events::SubscriptionUpdateParams::EventType::TaggedSymbol
261
+ )
255
262
  CARD_TRANSACTION_ENHANCED_DATA_CREATED =
256
263
  T.let(
257
264
  :"card_transaction.enhanced_data.created",
@@ -0,0 +1,111 @@
1
+ # typed: strong
2
+
3
+ module Lithic
4
+ module Models
5
+ class ExternalBankAccountSetVerificationMethodParams < Lithic::Internal::Type::BaseModel
6
+ extend Lithic::Internal::Type::RequestParameters::Converter
7
+ include Lithic::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Lithic::ExternalBankAccountSetVerificationMethodParams,
13
+ Lithic::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :external_bank_account_token
19
+
20
+ # The verification method to set for the external bank account
21
+ sig do
22
+ returns(
23
+ Lithic::ExternalBankAccountSetVerificationMethodParams::VerificationMethod::OrSymbol
24
+ )
25
+ end
26
+ attr_accessor :verification_method
27
+
28
+ # The financial account token of the operating account to fund the micro deposits.
29
+ # Required when verification_method is MICRO_DEPOSIT or PRENOTE.
30
+ sig { returns(T.nilable(String)) }
31
+ attr_reader :financial_account_token
32
+
33
+ sig { params(financial_account_token: String).void }
34
+ attr_writer :financial_account_token
35
+
36
+ sig do
37
+ params(
38
+ external_bank_account_token: String,
39
+ verification_method:
40
+ Lithic::ExternalBankAccountSetVerificationMethodParams::VerificationMethod::OrSymbol,
41
+ financial_account_token: String,
42
+ request_options: Lithic::RequestOptions::OrHash
43
+ ).returns(T.attached_class)
44
+ end
45
+ def self.new(
46
+ external_bank_account_token:,
47
+ # The verification method to set for the external bank account
48
+ verification_method:,
49
+ # The financial account token of the operating account to fund the micro deposits.
50
+ # Required when verification_method is MICRO_DEPOSIT or PRENOTE.
51
+ financial_account_token: nil,
52
+ request_options: {}
53
+ )
54
+ end
55
+
56
+ sig do
57
+ override.returns(
58
+ {
59
+ external_bank_account_token: String,
60
+ verification_method:
61
+ Lithic::ExternalBankAccountSetVerificationMethodParams::VerificationMethod::OrSymbol,
62
+ financial_account_token: String,
63
+ request_options: Lithic::RequestOptions
64
+ }
65
+ )
66
+ end
67
+ def to_hash
68
+ end
69
+
70
+ # The verification method to set for the external bank account
71
+ module VerificationMethod
72
+ extend Lithic::Internal::Type::Enum
73
+
74
+ TaggedSymbol =
75
+ T.type_alias do
76
+ T.all(
77
+ Symbol,
78
+ Lithic::ExternalBankAccountSetVerificationMethodParams::VerificationMethod
79
+ )
80
+ end
81
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
82
+
83
+ MICRO_DEPOSIT =
84
+ T.let(
85
+ :MICRO_DEPOSIT,
86
+ Lithic::ExternalBankAccountSetVerificationMethodParams::VerificationMethod::TaggedSymbol
87
+ )
88
+ PRENOTE =
89
+ T.let(
90
+ :PRENOTE,
91
+ Lithic::ExternalBankAccountSetVerificationMethodParams::VerificationMethod::TaggedSymbol
92
+ )
93
+ EXTERNALLY_VERIFIED =
94
+ T.let(
95
+ :EXTERNALLY_VERIFIED,
96
+ Lithic::ExternalBankAccountSetVerificationMethodParams::VerificationMethod::TaggedSymbol
97
+ )
98
+
99
+ sig do
100
+ override.returns(
101
+ T::Array[
102
+ Lithic::ExternalBankAccountSetVerificationMethodParams::VerificationMethod::TaggedSymbol
103
+ ]
104
+ )
105
+ end
106
+ def self.values
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end
@@ -22,11 +22,13 @@ module Lithic
22
22
  sig { returns(Time) }
23
23
  attr_accessor :created
24
24
 
25
- # Deprecated: Funding account for the card.
26
- sig { returns(Lithic::NonPCICard::Funding) }
25
+ # Funding account for a card
26
+ sig { returns(T.nilable(Lithic::NonPCICard::Funding)) }
27
27
  attr_reader :funding
28
28
 
29
- sig { params(funding: Lithic::NonPCICard::Funding::OrHash).void }
29
+ sig do
30
+ params(funding: T.nilable(Lithic::NonPCICard::Funding::OrHash)).void
31
+ end
30
32
  attr_writer :funding
31
33
 
32
34
  # Last four digits of the card number.
@@ -121,10 +123,7 @@ module Lithic
121
123
  # after tokenization. This artwork must be approved by Mastercard and configured
122
124
  # by Lithic to use.
123
125
  sig { returns(T.nilable(String)) }
124
- attr_reader :digital_card_art_token
125
-
126
- sig { params(digital_card_art_token: String).void }
127
- attr_writer :digital_card_art_token
126
+ attr_accessor :digital_card_art_token
128
127
 
129
128
  # Two digit (MM) expiry month.
130
129
  sig { returns(T.nilable(String)) }
@@ -173,10 +172,7 @@ module Lithic
173
172
  # before use. Specifies the configuration (i.e., physical card art) that the card
174
173
  # should be manufactured with.
175
174
  sig { returns(T.nilable(String)) }
176
- attr_reader :product_id
177
-
178
- sig { params(product_id: String).void }
179
- attr_writer :product_id
175
+ attr_accessor :product_id
180
176
 
181
177
  # If the card is a replacement for another card, the globally unique identifier
182
178
  # for the card that was replaced.
@@ -204,10 +200,7 @@ module Lithic
204
200
  # has been returned. \* `OTHER` - The reason for the status does not fall into any
205
201
  # of the above categories. A comment can be provided to specify the reason.
206
202
  sig { returns(T.nilable(Lithic::NonPCICard::Substatus::TaggedSymbol)) }
207
- attr_reader :substatus
208
-
209
- sig { params(substatus: Lithic::NonPCICard::Substatus::OrSymbol).void }
210
- attr_writer :substatus
203
+ attr_accessor :substatus
211
204
 
212
205
  # Card details without PCI information
213
206
  sig do
@@ -216,7 +209,7 @@ module Lithic
216
209
  account_token: String,
217
210
  card_program_token: String,
218
211
  created: Time,
219
- funding: Lithic::NonPCICard::Funding::OrHash,
212
+ funding: T.nilable(Lithic::NonPCICard::Funding::OrHash),
220
213
  last_four: String,
221
214
  pin_status: Lithic::NonPCICard::PinStatus::OrSymbol,
222
215
  spend_limit: Integer,
@@ -227,16 +220,16 @@ module Lithic
227
220
  bulk_order_token: T.nilable(String),
228
221
  cardholder_currency: String,
229
222
  comment: String,
230
- digital_card_art_token: String,
223
+ digital_card_art_token: T.nilable(String),
231
224
  exp_month: String,
232
225
  exp_year: String,
233
226
  hostname: String,
234
227
  memo: String,
235
228
  network_program_token: T.nilable(String),
236
229
  pending_commands: T::Array[String],
237
- product_id: String,
230
+ product_id: T.nilable(String),
238
231
  replacement_for: T.nilable(String),
239
- substatus: Lithic::NonPCICard::Substatus::OrSymbol
232
+ substatus: T.nilable(Lithic::NonPCICard::Substatus::OrSymbol)
240
233
  ).returns(T.attached_class)
241
234
  end
242
235
  def self.new(
@@ -248,7 +241,7 @@ module Lithic
248
241
  card_program_token:,
249
242
  # An RFC 3339 timestamp for when the card was created. UTC time zone.
250
243
  created:,
251
- # Deprecated: Funding account for the card.
244
+ # Funding account for a card
252
245
  funding:,
253
246
  # Last four digits of the card number.
254
247
  last_four:,
@@ -367,7 +360,7 @@ module Lithic
367
360
  account_token: String,
368
361
  card_program_token: String,
369
362
  created: Time,
370
- funding: Lithic::NonPCICard::Funding,
363
+ funding: T.nilable(Lithic::NonPCICard::Funding),
371
364
  last_four: String,
372
365
  pin_status: Lithic::NonPCICard::PinStatus::TaggedSymbol,
373
366
  spend_limit: Integer,
@@ -378,16 +371,16 @@ module Lithic
378
371
  bulk_order_token: T.nilable(String),
379
372
  cardholder_currency: String,
380
373
  comment: String,
381
- digital_card_art_token: String,
374
+ digital_card_art_token: T.nilable(String),
382
375
  exp_month: String,
383
376
  exp_year: String,
384
377
  hostname: String,
385
378
  memo: String,
386
379
  network_program_token: T.nilable(String),
387
380
  pending_commands: T::Array[String],
388
- product_id: String,
381
+ product_id: T.nilable(String),
389
382
  replacement_for: T.nilable(String),
390
- substatus: Lithic::NonPCICard::Substatus::TaggedSymbol
383
+ substatus: T.nilable(Lithic::NonPCICard::Substatus::TaggedSymbol)
391
384
  }
392
385
  )
393
386
  end
@@ -435,12 +428,9 @@ module Lithic
435
428
 
436
429
  # The nickname given to the `FundingAccount` or `null` if it has no nickname.
437
430
  sig { returns(T.nilable(String)) }
438
- attr_reader :nickname
439
-
440
- sig { params(nickname: String).void }
441
- attr_writer :nickname
431
+ attr_accessor :nickname
442
432
 
443
- # Deprecated: Funding account for the card.
433
+ # Funding account for a card
444
434
  sig do
445
435
  params(
446
436
  token: String,
@@ -449,7 +439,7 @@ module Lithic
449
439
  state: Lithic::NonPCICard::Funding::State::OrSymbol,
450
440
  type: Lithic::NonPCICard::Funding::Type::OrSymbol,
451
441
  account_name: String,
452
- nickname: String
442
+ nickname: T.nilable(String)
453
443
  ).returns(T.attached_class)
454
444
  end
455
445
  def self.new(
@@ -485,7 +475,7 @@ module Lithic
485
475
  state: Lithic::NonPCICard::Funding::State::TaggedSymbol,
486
476
  type: Lithic::NonPCICard::Funding::Type::TaggedSymbol,
487
477
  account_name: String,
488
- nickname: String
478
+ nickname: T.nilable(String)
489
479
  }
490
480
  )
491
481
  end
@@ -16,6 +16,7 @@ module Lithic
16
16
  Lithic::AccountHolderVerificationWebhookEvent,
17
17
  Lithic::AccountHolderDocumentUpdatedWebhookEvent,
18
18
  Lithic::CardAuthorizationApprovalRequestWebhookEvent,
19
+ Lithic::CardAuthorizationChallengeResponseWebhookEvent,
19
20
  Lithic::AuthRulesBacktestReportCreatedWebhookEvent,
20
21
  Lithic::BalanceUpdatedWebhookEvent,
21
22
  Lithic::BookTransferTransactionCreatedWebhookEvent,
@@ -193,6 +193,11 @@ module Lithic
193
193
  end
194
194
  OrSymbol = T.type_alias { T.any(Symbol, String) }
195
195
 
196
+ AMEX =
197
+ T.let(
198
+ :AMEX,
199
+ Lithic::Reports::Settlement::NetworkTotalListParams::Network::TaggedSymbol
200
+ )
196
201
  VISA =
197
202
  T.let(
198
203
  :VISA,
@@ -39,7 +39,8 @@ module Lithic
39
39
  sig { returns(Integer) }
40
40
  attr_accessor :disputes_gross_amount
41
41
 
42
- # Globally unique identifiers denoting the Events associated with this settlement.
42
+ # Array of globally unique identifiers for the financial events that comprise this
43
+ # settlement. Use these tokens to access detailed event-level information.
43
44
  sig { returns(T::Array[String]) }
44
45
  attr_accessor :event_tokens
45
46
 
@@ -85,7 +86,12 @@ module Lithic
85
86
  sig { returns(String) }
86
87
  attr_accessor :settlement_date
87
88
 
88
- # Globally unique identifier denoting the associated Transaction object.
89
+ # Globally unique identifier denoting the associated transaction. For settlement
90
+ # records with type `CLEARING`, `FINANCIAL`, or `NON-FINANCIAL`, this references a
91
+ # card transaction token. For settlement records with type `CHARGEBACK`,
92
+ # `REPRESENTMENT`, `PREARBITRATION`, `ARBITRATION`, or `COLLABORATION`, this
93
+ # references the dispute transaction token. May be null for certain settlement
94
+ # types.
89
95
  sig { returns(String) }
90
96
  attr_accessor :transaction_token
91
97
 
@@ -153,7 +159,8 @@ module Lithic
153
159
  currency:,
154
160
  # The total gross amount of disputes settlements.
155
161
  disputes_gross_amount:,
156
- # Globally unique identifiers denoting the Events associated with this settlement.
162
+ # Array of globally unique identifiers for the financial events that comprise this
163
+ # settlement. Use these tokens to access detailed event-level information.
157
164
  event_tokens:,
158
165
  # The most granular ID the network settles with (e.g., ICA for Mastercard, FTSRE
159
166
  # for Visa).
@@ -174,7 +181,12 @@ module Lithic
174
181
  # applies - for Mastercard dual message settlement, this is the settlement
175
182
  # advisement date, which is distinct from the date of money movement.
176
183
  settlement_date:,
177
- # Globally unique identifier denoting the associated Transaction object.
184
+ # Globally unique identifier denoting the associated transaction. For settlement
185
+ # records with type `CLEARING`, `FINANCIAL`, or `NON-FINANCIAL`, this references a
186
+ # card transaction token. For settlement records with type `CHARGEBACK`,
187
+ # `REPRESENTMENT`, `PREARBITRATION`, `ARBITRATION`, or `COLLABORATION`, this
188
+ # references the dispute transaction token. May be null for certain settlement
189
+ # types.
178
190
  transaction_token:,
179
191
  # The total amount of settlement impacting transactions (excluding interchange,
180
192
  # fees, and disputes).
@@ -226,6 +238,7 @@ module Lithic
226
238
  T.type_alias { T.all(Symbol, Lithic::SettlementDetail::Network) }
227
239
  OrSymbol = T.type_alias { T.any(Symbol, String) }
228
240
 
241
+ AMEX = T.let(:AMEX, Lithic::SettlementDetail::Network::TaggedSymbol)
229
242
  INTERLINK =
230
243
  T.let(:INTERLINK, Lithic::SettlementDetail::Network::TaggedSymbol)
231
244
  MAESTRO =
@@ -137,6 +137,8 @@ module Lithic
137
137
  end
138
138
  OrSymbol = T.type_alias { T.any(Symbol, String) }
139
139
 
140
+ AMEX =
141
+ T.let(:AMEX, Lithic::SettlementSummaryDetails::Network::TaggedSymbol)
140
142
  INTERLINK =
141
143
  T.let(
142
144
  :INTERLINK,
@@ -108,6 +108,9 @@ module Lithic
108
108
  CardAuthorizationApprovalRequestWebhookEvent =
109
109
  Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent
110
110
 
111
+ CardAuthorizationChallengeResponseWebhookEvent =
112
+ Lithic::Models::CardAuthorizationChallengeResponseWebhookEvent
113
+
111
114
  CardBulkOrder = Lithic::Models::CardBulkOrder
112
115
 
113
116
  CardBulkOrderCreateParams = Lithic::Models::CardBulkOrderCreateParams
@@ -285,6 +288,9 @@ module Lithic
285
288
 
286
289
  ExternalBankAccounts = Lithic::Models::ExternalBankAccounts
287
290
 
291
+ ExternalBankAccountSetVerificationMethodParams =
292
+ Lithic::Models::ExternalBankAccountSetVerificationMethodParams
293
+
288
294
  ExternalBankAccountUnpauseParams =
289
295
  Lithic::Models::ExternalBankAccountUnpauseParams
290
296
 
@@ -28,7 +28,8 @@ module Lithic
28
28
  lifetime_spend_limit: Integer,
29
29
  monthly_spend_limit: Integer,
30
30
  state: Lithic::AccountUpdateParams::State::OrSymbol,
31
- substatus: Lithic::AccountUpdateParams::Substatus::OrSymbol,
31
+ substatus:
32
+ T.nilable(Lithic::AccountUpdateParams::Substatus::OrSymbol),
32
33
  verification_address:
33
34
  Lithic::AccountUpdateParams::VerificationAddress::OrHash,
34
35
  request_options: Lithic::RequestOptions::OrHash
@@ -122,6 +122,7 @@ module Lithic
122
122
  Lithic::AuthRules::ConditionalAuthorizationActionParameters::OrHash,
123
123
  Lithic::AuthRules::ConditionalACHActionParameters::OrHash,
124
124
  Lithic::AuthRules::ConditionalTokenizationActionParameters::OrHash,
125
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::OrHash,
125
126
  Lithic::AuthRules::TypescriptCodeParameters::OrHash
126
127
  )
127
128
  ),
@@ -80,10 +80,12 @@ module Lithic
80
80
  # [Flexible Card Art Guide](https://docs.lithic.com/docs/about-digital-wallets#flexible-card-art).
81
81
  digital_card_art_token: nil,
82
82
  # Body param: Two digit (MM) expiry month. If neither `exp_month` nor `exp_year`
83
- # is provided, an expiration date will be generated.
83
+ # is provided, an expiration date five years in the future will be generated. Five
84
+ # years is the maximum expiration date.
84
85
  exp_month: nil,
85
86
  # Body param: Four digit (yyyy) expiry year. If neither `exp_month` nor `exp_year`
86
- # is provided, an expiration date will be generated.
87
+ # is provided, an expiration date five years in the future will be generated. Five
88
+ # years is the maximum expiration date.
87
89
  exp_year: nil,
88
90
  # Body param: Friendly name to identify the card.
89
91
  memo: nil,
@@ -556,10 +558,12 @@ module Lithic
556
558
  # If omitted, the previous carrier will be used.
557
559
  carrier: nil,
558
560
  # Two digit (MM) expiry month. If neither `exp_month` nor `exp_year` is provided,
559
- # an expiration date six years in the future will be generated.
561
+ # an expiration date five years in the future will be generated. Five years is the
562
+ # maximum expiration date.
560
563
  exp_month: nil,
561
564
  # Four digit (yyyy) expiry year. If neither `exp_month` nor `exp_year` is
562
- # provided, an expiration date six years in the future will be generated.
565
+ # provided, an expiration date five years in the future will be generated. Five
566
+ # years is the maximum expiration date.
563
567
  exp_year: nil,
564
568
  # Specifies the configuration (e.g. physical card art) that the card should be
565
569
  # manufactured with, and only applies to cards of type `PHYSICAL`. This must be
@@ -146,6 +146,28 @@ module Lithic
146
146
  )
147
147
  end
148
148
 
149
+ # Update the verification method for an external bank account. Verification method
150
+ # can only be updated if the `verification_state` is `PENDING`.
151
+ sig do
152
+ params(
153
+ external_bank_account_token: String,
154
+ verification_method:
155
+ Lithic::ExternalBankAccountSetVerificationMethodParams::VerificationMethod::OrSymbol,
156
+ financial_account_token: String,
157
+ request_options: Lithic::RequestOptions::OrHash
158
+ ).returns(Lithic::ExternalBankAccount)
159
+ end
160
+ def set_verification_method(
161
+ external_bank_account_token,
162
+ # The verification method to set for the external bank account
163
+ verification_method:,
164
+ # The financial account token of the operating account to fund the micro deposits.
165
+ # Required when verification_method is MICRO_DEPOSIT or PRENOTE.
166
+ financial_account_token: nil,
167
+ request_options: {}
168
+ )
169
+ end
170
+
149
171
  # Unpause an external bank account
150
172
  sig do
151
173
  params(
@@ -17,6 +17,7 @@ module Lithic
17
17
  Lithic::AccountHolderVerificationWebhookEvent,
18
18
  Lithic::AccountHolderDocumentUpdatedWebhookEvent,
19
19
  Lithic::CardAuthorizationApprovalRequestWebhookEvent,
20
+ Lithic::CardAuthorizationChallengeResponseWebhookEvent,
20
21
  Lithic::AuthRulesBacktestReportCreatedWebhookEvent,
21
22
  Lithic::BalanceUpdatedWebhookEvent,
22
23
  Lithic::BookTransferTransactionCreatedWebhookEvent,
@@ -10,7 +10,7 @@ module Lithic
10
10
  auth_rule_tokens: ::Array[String],
11
11
  cardholder_currency: String,
12
12
  comment: String,
13
- substatus: Lithic::Models::Account::substatus,
13
+ substatus: Lithic::Models::Account::substatus?,
14
14
  verification_address: Lithic::Account::VerificationAddress
15
15
  }
16
16
 
@@ -41,11 +41,7 @@ module Lithic
41
41
 
42
42
  def comment=: (String) -> String
43
43
 
44
- attr_reader substatus: Lithic::Models::Account::substatus?
45
-
46
- def substatus=: (
47
- Lithic::Models::Account::substatus
48
- ) -> Lithic::Models::Account::substatus
44
+ attr_accessor substatus: Lithic::Models::Account::substatus?
49
45
 
50
46
  attr_reader verification_address: Lithic::Account::VerificationAddress?
51
47
 
@@ -62,7 +58,7 @@ module Lithic
62
58
  ?auth_rule_tokens: ::Array[String],
63
59
  ?cardholder_currency: String,
64
60
  ?comment: String,
65
- ?substatus: Lithic::Models::Account::substatus,
61
+ ?substatus: Lithic::Models::Account::substatus?,
66
62
  ?verification_address: Lithic::Account::VerificationAddress
67
63
  ) -> void
68
64
 
@@ -75,7 +71,7 @@ module Lithic
75
71
  auth_rule_tokens: ::Array[String],
76
72
  cardholder_currency: String,
77
73
  comment: String,
78
- substatus: Lithic::Models::Account::substatus,
74
+ substatus: Lithic::Models::Account::substatus?,
79
75
  verification_address: Lithic::Account::VerificationAddress
80
76
  }
81
77