lithic 0.12.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 (67) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -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 +9 -0
  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/spend_velocity_filters.rb +33 -0
  16. data/lib/lithic/models/auth_rules/v2_create_params.rb +27 -15
  17. data/lib/lithic/models/auth_rules/v2_draft_params.rb +5 -3
  18. data/lib/lithic/models/card_create_params.rb +4 -2
  19. data/lib/lithic/models/card_renew_params.rb +4 -2
  20. data/lib/lithic/models/non_pci_card.rb +13 -13
  21. data/lib/lithic/models/reports/settlement/network_total_list_params.rb +1 -0
  22. data/lib/lithic/models/settlement_detail.rb +11 -4
  23. data/lib/lithic/models/settlement_summary_details.rb +1 -0
  24. data/lib/lithic/resources/accounts.rb +1 -1
  25. data/lib/lithic/resources/auth_rules/v2.rb +1 -1
  26. data/lib/lithic/version.rb +1 -1
  27. data/lib/lithic.rb +4 -1
  28. data/rbi/lithic/models/account.rbi +3 -6
  29. data/rbi/lithic/models/account_holder_simulate_enrollment_review_response.rbi +10 -14
  30. data/rbi/lithic/models/account_holder_update_response.rbi +3 -3
  31. data/rbi/lithic/models/account_update_params.rbi +5 -8
  32. data/rbi/lithic/models/auth_rules/auth_rule.rbi +10 -3
  33. data/rbi/lithic/models/auth_rules/auth_rule_version.rbi +2 -0
  34. data/rbi/lithic/models/auth_rules/card_transaction_update_action.rbi +242 -0
  35. data/rbi/lithic/models/auth_rules/conditional_authorization_action_parameters.rbi +17 -0
  36. data/rbi/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rbi +573 -0
  37. data/rbi/lithic/models/auth_rules/event_stream.rbi +5 -0
  38. data/rbi/lithic/models/auth_rules/spend_velocity_filters.rbi +58 -0
  39. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +30 -9
  40. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +4 -0
  41. data/rbi/lithic/models/card_create_params.rbi +8 -4
  42. data/rbi/lithic/models/card_renew_params.rbi +8 -4
  43. data/rbi/lithic/models/non_pci_card.rbi +21 -31
  44. data/rbi/lithic/models/reports/settlement/network_total_list_params.rbi +5 -0
  45. data/rbi/lithic/models/settlement_detail.rbi +17 -4
  46. data/rbi/lithic/models/settlement_summary_details.rbi +2 -0
  47. data/rbi/lithic/resources/accounts.rbi +2 -1
  48. data/rbi/lithic/resources/auth_rules/v2.rbi +1 -0
  49. data/rbi/lithic/resources/cards.rbi +8 -4
  50. data/sig/lithic/models/account.rbs +4 -8
  51. data/sig/lithic/models/account_holder_simulate_enrollment_review_response.rbs +4 -8
  52. data/sig/lithic/models/account_update_params.rbs +4 -8
  53. data/sig/lithic/models/auth_rules/auth_rule.rbs +2 -0
  54. data/sig/lithic/models/auth_rules/auth_rule_version.rbs +1 -0
  55. data/sig/lithic/models/auth_rules/card_transaction_update_action.rbs +100 -0
  56. data/sig/lithic/models/auth_rules/conditional_authorization_action_parameters.rbs +2 -0
  57. data/sig/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rbs +155 -0
  58. data/sig/lithic/models/auth_rules/event_stream.rbs +2 -0
  59. data/sig/lithic/models/auth_rules/spend_velocity_filters.rbs +35 -0
  60. data/sig/lithic/models/auth_rules/v2_create_params.rbs +3 -0
  61. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +1 -0
  62. data/sig/lithic/models/non_pci_card.rbs +20 -30
  63. data/sig/lithic/models/reports/settlement/network_total_list_params.rbs +2 -1
  64. data/sig/lithic/models/settlement_detail.rbs +3 -1
  65. data/sig/lithic/models/settlement_summary_details.rbs +3 -1
  66. data/sig/lithic/resources/accounts.rbs +1 -1
  67. metadata +11 -2
@@ -49,7 +49,8 @@ module Lithic
49
49
  required :disputes_gross_amount, Integer
50
50
 
51
51
  # @!attribute event_tokens
52
- # Globally unique identifiers denoting the Events associated with this settlement.
52
+ # Array of globally unique identifiers for the financial events that comprise this
53
+ # settlement. Use these tokens to access detailed event-level information.
53
54
  #
54
55
  # @return [Array<String>]
55
56
  required :event_tokens, Lithic::Internal::Type::ArrayOf[String]
@@ -106,7 +107,12 @@ module Lithic
106
107
  required :settlement_date, String
107
108
 
108
109
  # @!attribute transaction_token
109
- # Globally unique identifier denoting the associated Transaction object.
110
+ # Globally unique identifier denoting the associated transaction. For settlement
111
+ # records with type `CLEARING`, `FINANCIAL`, or `NON-FINANCIAL`, this references a
112
+ # card transaction token. For settlement records with type `CHARGEBACK`,
113
+ # `REPRESENTMENT`, `PREARBITRATION`, `ARBITRATION`, or `COLLABORATION`, this
114
+ # references the dispute transaction token. May be null for certain settlement
115
+ # types.
110
116
  #
111
117
  # @return [String]
112
118
  required :transaction_token, String
@@ -154,7 +160,7 @@ module Lithic
154
160
  #
155
161
  # @param disputes_gross_amount [Integer] The total gross amount of disputes settlements.
156
162
  #
157
- # @param event_tokens [Array<String>] Globally unique identifiers denoting the Events associated with this settlement.
163
+ # @param event_tokens [Array<String>] Array of globally unique identifiers for the financial events that comprise this
158
164
  #
159
165
  # @param institution [String] The most granular ID the network settles with (e.g., ICA for Mastercard, FTSRE f
160
166
  #
@@ -172,7 +178,7 @@ module Lithic
172
178
  #
173
179
  # @param settlement_date [String] Date of when money movement is triggered for the transaction. One exception appl
174
180
  #
175
- # @param transaction_token [String] Globally unique identifier denoting the associated Transaction object.
181
+ # @param transaction_token [String] Globally unique identifier denoting the associated transaction. For settlement r
176
182
  #
177
183
  # @param transactions_gross_amount [Integer] The total amount of settlement impacting transactions (excluding interchange, fe
178
184
  #
@@ -188,6 +194,7 @@ module Lithic
188
194
  module Network
189
195
  extend Lithic::Internal::Type::Enum
190
196
 
197
+ AMEX = :AMEX
191
198
  INTERLINK = :INTERLINK
192
199
  MAESTRO = :MAESTRO
193
200
  MASTERCARD = :MASTERCARD
@@ -80,6 +80,7 @@ module Lithic
80
80
  module Network
81
81
  extend Lithic::Internal::Type::Enum
82
82
 
83
+ AMEX = :AMEX
83
84
  INTERLINK = :INTERLINK
84
85
  MAESTRO = :MAESTRO
85
86
  MASTERCARD = :MASTERCARD
@@ -44,7 +44,7 @@ module Lithic
44
44
  #
45
45
  # @param state [Symbol, Lithic::Models::AccountUpdateParams::State] Account states.
46
46
  #
47
- # @param substatus [Symbol, Lithic::Models::AccountUpdateParams::Substatus] Account state substatus values:
47
+ # @param substatus [Symbol, Lithic::Models::AccountUpdateParams::Substatus, nil] Account state substatus values:
48
48
  #
49
49
  # @param verification_address [Lithic::Models::AccountUpdateParams::VerificationAddress] Address used during Address Verification Service (AVS) checks during transaction
50
50
  #
@@ -144,7 +144,7 @@ module Lithic
144
144
  #
145
145
  # @param auth_rule_token [String]
146
146
  #
147
- # @param parameters [Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::MerchantLockParameters, Lithic::Models::AuthRules::Conditional3DSActionParameters, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters, Lithic::Models::AuthRules::ConditionalACHActionParameters, Lithic::Models::AuthRules::ConditionalTokenizationActionParameters, Lithic::Models::AuthRules::TypescriptCodeParameters, nil] Parameters for the Auth Rule
147
+ # @param parameters [Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::MerchantLockParameters, Lithic::Models::AuthRules::Conditional3DSActionParameters, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters, Lithic::Models::AuthRules::ConditionalACHActionParameters, Lithic::Models::AuthRules::ConditionalTokenizationActionParameters, Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters, Lithic::Models::AuthRules::TypescriptCodeParameters, nil] Parameters for the Auth Rule
148
148
  #
149
149
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
150
150
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lithic
4
- VERSION = "0.12.0"
4
+ VERSION = "0.13.0"
5
5
  end
data/lib/lithic.rb CHANGED
@@ -57,6 +57,7 @@ require_relative "lithic/internal/cursor_page"
57
57
  require_relative "lithic/internal/single_page"
58
58
  require_relative "lithic/models/merchant"
59
59
  require_relative "lithic/models/transaction"
60
+ require_relative "lithic/models/auth_rules/velocity_limit_filters"
60
61
  require_relative "lithic/models/auth_rules/v2/backtest_results"
61
62
  require_relative "lithic/models/book_transfer_response"
62
63
  require_relative "lithic/models/non_pci_card"
@@ -118,11 +119,13 @@ require_relative "lithic/models/auth_rules/auth_rule"
118
119
  require_relative "lithic/models/auth_rules/auth_rule_condition"
119
120
  require_relative "lithic/models/auth_rules/auth_rule_version"
120
121
  require_relative "lithic/models/auth_rules/backtest_stats"
122
+ require_relative "lithic/models/auth_rules/card_transaction_update_action"
121
123
  require_relative "lithic/models/auth_rules/conditional_3ds_action_parameters"
122
124
  require_relative "lithic/models/auth_rules/conditional_ach_action_parameters"
123
125
  require_relative "lithic/models/auth_rules/conditional_attribute"
124
126
  require_relative "lithic/models/auth_rules/conditional_authorization_action_parameters"
125
127
  require_relative "lithic/models/auth_rules/conditional_block_parameters"
128
+ require_relative "lithic/models/auth_rules/conditional_card_transaction_update_action_parameters"
126
129
  require_relative "lithic/models/auth_rules/conditional_operation"
127
130
  require_relative "lithic/models/auth_rules/conditional_tokenization_action_parameters"
128
131
  require_relative "lithic/models/auth_rules/conditional_value"
@@ -130,6 +133,7 @@ require_relative "lithic/models/auth_rules/event_stream"
130
133
  require_relative "lithic/models/auth_rules/merchant_lock_parameters"
131
134
  require_relative "lithic/models/auth_rules/report_stats"
132
135
  require_relative "lithic/models/auth_rules/rule_feature"
136
+ require_relative "lithic/models/auth_rules/spend_velocity_filters"
133
137
  require_relative "lithic/models/auth_rules/typescript_code_parameters"
134
138
  require_relative "lithic/models/auth_rules/v2/backtest_create_params"
135
139
  require_relative "lithic/models/auth_rules/v2/backtest_create_response"
@@ -149,7 +153,6 @@ require_relative "lithic/models/auth_rules/v2_retrieve_params"
149
153
  require_relative "lithic/models/auth_rules/v2_retrieve_report_params"
150
154
  require_relative "lithic/models/auth_rules/v2_retrieve_report_response"
151
155
  require_relative "lithic/models/auth_rules/v2_update_params"
152
- require_relative "lithic/models/auth_rules/velocity_limit_filters"
153
156
  require_relative "lithic/models/auth_rules/velocity_limit_params"
154
157
  require_relative "lithic/models/auth_rules/velocity_limit_period"
155
158
  require_relative "lithic/models/auth_rules_backtest_report_created_webhook_event"
@@ -101,10 +101,7 @@ module Lithic
101
101
  # of the above categories. A comment should be provided to specify the
102
102
  # particular reason.
103
103
  sig { returns(T.nilable(Lithic::Account::Substatus::TaggedSymbol)) }
104
- attr_reader :substatus
105
-
106
- sig { params(substatus: Lithic::Account::Substatus::OrSymbol).void }
107
- attr_writer :substatus
104
+ attr_accessor :substatus
108
105
 
109
106
  sig { returns(T.nilable(Lithic::Account::VerificationAddress)) }
110
107
  attr_reader :verification_address
@@ -126,7 +123,7 @@ module Lithic
126
123
  auth_rule_tokens: T::Array[String],
127
124
  cardholder_currency: String,
128
125
  comment: String,
129
- substatus: Lithic::Account::Substatus::OrSymbol,
126
+ substatus: T.nilable(Lithic::Account::Substatus::OrSymbol),
130
127
  verification_address: Lithic::Account::VerificationAddress::OrHash
131
128
  ).returns(T.attached_class)
132
129
  end
@@ -208,7 +205,7 @@ module Lithic
208
205
  auth_rule_tokens: T::Array[String],
209
206
  cardholder_currency: String,
210
207
  comment: String,
211
- substatus: Lithic::Account::Substatus::TaggedSymbol,
208
+ substatus: T.nilable(Lithic::Account::Substatus::TaggedSymbol),
212
209
  verification_address: Lithic::Account::VerificationAddress
213
210
  }
214
211
  )
@@ -110,7 +110,7 @@ module Lithic
110
110
  sig { params(email: String).void }
111
111
  attr_writer :email
112
112
 
113
- # The type of KYC exemption for a KYC-Exempt Account Holder. "None" if the account
113
+ # The type of KYC exemption for a KYC-Exempt Account Holder. `null` if the account
114
114
  # holder is not KYC-Exempt.
115
115
  sig do
116
116
  returns(
@@ -119,15 +119,7 @@ module Lithic
119
119
  )
120
120
  )
121
121
  end
122
- attr_reader :exemption_type
123
-
124
- sig do
125
- params(
126
- exemption_type:
127
- Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::ExemptionType::OrSymbol
128
- ).void
129
- end
130
- attr_writer :exemption_type
122
+ attr_accessor :exemption_type
131
123
 
132
124
  # Customer-provided token that indicates a relationship with an object outside of
133
125
  # the Lithic ecosystem.
@@ -301,7 +293,9 @@ module Lithic
301
293
  created: Time,
302
294
  email: String,
303
295
  exemption_type:
304
- Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::ExemptionType::OrSymbol,
296
+ T.nilable(
297
+ Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::ExemptionType::OrSymbol
298
+ ),
305
299
  external_id: String,
306
300
  individual:
307
301
  Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::Individual::OrHash,
@@ -359,7 +353,7 @@ module Lithic
359
353
  # individual.phone_number when user_type == "INDIVIDUAL".) Primary email of
360
354
  # Account Holder.
361
355
  email: nil,
362
- # The type of KYC exemption for a KYC-Exempt Account Holder. "None" if the account
356
+ # The type of KYC exemption for a KYC-Exempt Account Holder. `null` if the account
363
357
  # holder is not KYC-Exempt.
364
358
  exemption_type: nil,
365
359
  # Customer-provided token that indicates a relationship with an object outside of
@@ -420,7 +414,9 @@ module Lithic
420
414
  created: Time,
421
415
  email: String,
422
416
  exemption_type:
423
- Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::ExemptionType::TaggedSymbol,
417
+ T.nilable(
418
+ Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::ExemptionType::TaggedSymbol
419
+ ),
424
420
  external_id: String,
425
421
  individual:
426
422
  Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::Individual,
@@ -850,7 +846,7 @@ module Lithic
850
846
  end
851
847
  end
852
848
 
853
- # The type of KYC exemption for a KYC-Exempt Account Holder. "None" if the account
849
+ # The type of KYC exemption for a KYC-Exempt Account Holder. `null` if the account
854
850
  # holder is not KYC-Exempt.
855
851
  module ExemptionType
856
852
  extend Lithic::Internal::Type::Enum
@@ -121,7 +121,7 @@ module Lithic
121
121
  sig { params(email: String).void }
122
122
  attr_writer :email
123
123
 
124
- # The type of KYC exemption for a KYC-Exempt Account Holder. "None" if the account
124
+ # The type of KYC exemption for a KYC-Exempt Account Holder. `null` if the account
125
125
  # holder is not KYC-Exempt.
126
126
  sig do
127
127
  returns(
@@ -370,7 +370,7 @@ module Lithic
370
370
  # individual.phone_number when user_type == "INDIVIDUAL".) Primary email of
371
371
  # Account Holder.
372
372
  email: nil,
373
- # The type of KYC exemption for a KYC-Exempt Account Holder. "None" if the account
373
+ # The type of KYC exemption for a KYC-Exempt Account Holder. `null` if the account
374
374
  # holder is not KYC-Exempt.
375
375
  exemption_type: nil,
376
376
  # Customer-provided token that indicates a relationship with an object outside of
@@ -861,7 +861,7 @@ module Lithic
861
861
  end
862
862
  end
863
863
 
864
- # The type of KYC exemption for a KYC-Exempt Account Holder. "None" if the account
864
+ # The type of KYC exemption for a KYC-Exempt Account Holder. `null` if the account
865
865
  # holder is not KYC-Exempt.
866
866
  module ExemptionType
867
867
  extend Lithic::Internal::Type::Enum
@@ -87,12 +87,7 @@ module Lithic
87
87
  sig do
88
88
  returns(T.nilable(Lithic::AccountUpdateParams::Substatus::OrSymbol))
89
89
  end
90
- attr_reader :substatus
91
-
92
- sig do
93
- params(substatus: Lithic::AccountUpdateParams::Substatus::OrSymbol).void
94
- end
95
- attr_writer :substatus
90
+ attr_accessor :substatus
96
91
 
97
92
  # Address used during Address Verification Service (AVS) checks during
98
93
  # transactions if enabled via Auth Rules. This field is deprecated as AVS checks
@@ -119,7 +114,8 @@ module Lithic
119
114
  lifetime_spend_limit: Integer,
120
115
  monthly_spend_limit: Integer,
121
116
  state: Lithic::AccountUpdateParams::State::OrSymbol,
122
- substatus: Lithic::AccountUpdateParams::Substatus::OrSymbol,
117
+ substatus:
118
+ T.nilable(Lithic::AccountUpdateParams::Substatus::OrSymbol),
123
119
  verification_address:
124
120
  Lithic::AccountUpdateParams::VerificationAddress::OrHash,
125
121
  request_options: Lithic::RequestOptions::OrHash
@@ -191,7 +187,8 @@ module Lithic
191
187
  lifetime_spend_limit: Integer,
192
188
  monthly_spend_limit: Integer,
193
189
  state: Lithic::AccountUpdateParams::State::OrSymbol,
194
- substatus: Lithic::AccountUpdateParams::Substatus::OrSymbol,
190
+ substatus:
191
+ T.nilable(Lithic::AccountUpdateParams::Substatus::OrSymbol),
195
192
  verification_address:
196
193
  Lithic::AccountUpdateParams::VerificationAddress,
197
194
  request_options: Lithic::RequestOptions
@@ -80,7 +80,8 @@ module Lithic
80
80
  # - `VELOCITY_LIMIT`: AUTHORIZATION event stream.
81
81
  # - `MERCHANT_LOCK`: AUTHORIZATION event stream.
82
82
  # - `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
83
- # ACH_CREDIT_RECEIPT, or ACH_DEBIT_RECEIPT event stream.
83
+ # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
84
+ # stream.
84
85
  # - `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
85
86
  # ACH_CREDIT_RECEIPT, or ACH_DEBIT_RECEIPT event stream.
86
87
  sig { returns(Lithic::AuthRules::AuthRule::Type::TaggedSymbol) }
@@ -160,7 +161,8 @@ module Lithic
160
161
  # - `VELOCITY_LIMIT`: AUTHORIZATION event stream.
161
162
  # - `MERCHANT_LOCK`: AUTHORIZATION event stream.
162
163
  # - `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
163
- # ACH_CREDIT_RECEIPT, or ACH_DEBIT_RECEIPT event stream.
164
+ # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
165
+ # stream.
164
166
  # - `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
165
167
  # ACH_CREDIT_RECEIPT, or ACH_DEBIT_RECEIPT event stream.
166
168
  type:,
@@ -232,6 +234,7 @@ module Lithic
232
234
  Lithic::AuthRules::ConditionalAuthorizationActionParameters::OrHash,
233
235
  Lithic::AuthRules::ConditionalACHActionParameters::OrHash,
234
236
  Lithic::AuthRules::ConditionalTokenizationActionParameters::OrHash,
237
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::OrHash,
235
238
  Lithic::AuthRules::TypescriptCodeParameters::OrHash
236
239
  ),
237
240
  version: Integer
@@ -272,6 +275,7 @@ module Lithic
272
275
  Lithic::AuthRules::ConditionalAuthorizationActionParameters,
273
276
  Lithic::AuthRules::ConditionalACHActionParameters,
274
277
  Lithic::AuthRules::ConditionalTokenizationActionParameters,
278
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters,
275
279
  Lithic::AuthRules::TypescriptCodeParameters
276
280
  )
277
281
  end
@@ -344,6 +348,7 @@ module Lithic
344
348
  Lithic::AuthRules::ConditionalAuthorizationActionParameters::OrHash,
345
349
  Lithic::AuthRules::ConditionalACHActionParameters::OrHash,
346
350
  Lithic::AuthRules::ConditionalTokenizationActionParameters::OrHash,
351
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::OrHash,
347
352
  Lithic::AuthRules::TypescriptCodeParameters::OrHash
348
353
  ),
349
354
  state: Lithic::AuthRules::AuthRule::DraftVersion::State::OrSymbol,
@@ -402,6 +407,7 @@ module Lithic
402
407
  Lithic::AuthRules::ConditionalAuthorizationActionParameters,
403
408
  Lithic::AuthRules::ConditionalACHActionParameters,
404
409
  Lithic::AuthRules::ConditionalTokenizationActionParameters,
410
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters,
405
411
  Lithic::AuthRules::TypescriptCodeParameters
406
412
  )
407
413
  end
@@ -496,7 +502,8 @@ module Lithic
496
502
  # - `VELOCITY_LIMIT`: AUTHORIZATION event stream.
497
503
  # - `MERCHANT_LOCK`: AUTHORIZATION event stream.
498
504
  # - `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
499
- # ACH_CREDIT_RECEIPT, or ACH_DEBIT_RECEIPT event stream.
505
+ # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
506
+ # stream.
500
507
  # - `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
501
508
  # ACH_CREDIT_RECEIPT, or ACH_DEBIT_RECEIPT event stream.
502
509
  module Type
@@ -42,6 +42,7 @@ module Lithic
42
42
  Lithic::AuthRules::ConditionalAuthorizationActionParameters::OrHash,
43
43
  Lithic::AuthRules::ConditionalACHActionParameters::OrHash,
44
44
  Lithic::AuthRules::ConditionalTokenizationActionParameters::OrHash,
45
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::OrHash,
45
46
  Lithic::AuthRules::TypescriptCodeParameters::OrHash
46
47
  ),
47
48
  state: Lithic::AuthRules::AuthRuleVersion::State::OrSymbol,
@@ -89,6 +90,7 @@ module Lithic
89
90
  Lithic::AuthRules::ConditionalAuthorizationActionParameters,
90
91
  Lithic::AuthRules::ConditionalACHActionParameters,
91
92
  Lithic::AuthRules::ConditionalTokenizationActionParameters,
93
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters,
92
94
  Lithic::AuthRules::TypescriptCodeParameters
93
95
  )
94
96
  end
@@ -0,0 +1,242 @@
1
+ # typed: strong
2
+
3
+ module Lithic
4
+ module Models
5
+ module AuthRules
6
+ module CardTransactionUpdateAction
7
+ extend Lithic::Internal::Type::Union
8
+
9
+ Variants =
10
+ T.type_alias do
11
+ T.any(
12
+ Lithic::AuthRules::CardTransactionUpdateAction::TagAction,
13
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction
14
+ )
15
+ end
16
+
17
+ class TagAction < Lithic::Internal::Type::BaseModel
18
+ OrHash =
19
+ T.type_alias do
20
+ T.any(
21
+ Lithic::AuthRules::CardTransactionUpdateAction::TagAction,
22
+ Lithic::Internal::AnyHash
23
+ )
24
+ end
25
+
26
+ # The key of the tag to apply to the transaction
27
+ sig { returns(String) }
28
+ attr_accessor :key
29
+
30
+ # Tag the transaction with key-value metadata
31
+ sig do
32
+ returns(
33
+ Lithic::AuthRules::CardTransactionUpdateAction::TagAction::Type::OrSymbol
34
+ )
35
+ end
36
+ attr_accessor :type
37
+
38
+ # The value of the tag to apply to the transaction
39
+ sig { returns(String) }
40
+ attr_accessor :value
41
+
42
+ sig do
43
+ params(
44
+ key: String,
45
+ type:
46
+ Lithic::AuthRules::CardTransactionUpdateAction::TagAction::Type::OrSymbol,
47
+ value: String
48
+ ).returns(T.attached_class)
49
+ end
50
+ def self.new(
51
+ # The key of the tag to apply to the transaction
52
+ key:,
53
+ # Tag the transaction with key-value metadata
54
+ type:,
55
+ # The value of the tag to apply to the transaction
56
+ value:
57
+ )
58
+ end
59
+
60
+ sig do
61
+ override.returns(
62
+ {
63
+ key: String,
64
+ type:
65
+ Lithic::AuthRules::CardTransactionUpdateAction::TagAction::Type::OrSymbol,
66
+ value: String
67
+ }
68
+ )
69
+ end
70
+ def to_hash
71
+ end
72
+
73
+ # Tag the transaction with key-value metadata
74
+ module Type
75
+ extend Lithic::Internal::Type::Enum
76
+
77
+ TaggedSymbol =
78
+ T.type_alias do
79
+ T.all(
80
+ Symbol,
81
+ Lithic::AuthRules::CardTransactionUpdateAction::TagAction::Type
82
+ )
83
+ end
84
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
85
+
86
+ TAG =
87
+ T.let(
88
+ :TAG,
89
+ Lithic::AuthRules::CardTransactionUpdateAction::TagAction::Type::TaggedSymbol
90
+ )
91
+
92
+ sig do
93
+ override.returns(
94
+ T::Array[
95
+ Lithic::AuthRules::CardTransactionUpdateAction::TagAction::Type::TaggedSymbol
96
+ ]
97
+ )
98
+ end
99
+ def self.values
100
+ end
101
+ end
102
+ end
103
+
104
+ class CreateCaseAction < Lithic::Internal::Type::BaseModel
105
+ OrHash =
106
+ T.type_alias do
107
+ T.any(
108
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction,
109
+ Lithic::Internal::AnyHash
110
+ )
111
+ end
112
+
113
+ # The token of the queue to create the case in
114
+ sig { returns(String) }
115
+ attr_accessor :queue_token
116
+
117
+ # The scope of the case to create
118
+ sig do
119
+ returns(
120
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Scope::OrSymbol
121
+ )
122
+ end
123
+ attr_accessor :scope
124
+
125
+ # Create a case for the transaction
126
+ sig do
127
+ returns(
128
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Type::OrSymbol
129
+ )
130
+ end
131
+ attr_accessor :type
132
+
133
+ sig do
134
+ params(
135
+ queue_token: String,
136
+ scope:
137
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Scope::OrSymbol,
138
+ type:
139
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Type::OrSymbol
140
+ ).returns(T.attached_class)
141
+ end
142
+ def self.new(
143
+ # The token of the queue to create the case in
144
+ queue_token:,
145
+ # The scope of the case to create
146
+ scope:,
147
+ # Create a case for the transaction
148
+ type:
149
+ )
150
+ end
151
+
152
+ sig do
153
+ override.returns(
154
+ {
155
+ queue_token: String,
156
+ scope:
157
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Scope::OrSymbol,
158
+ type:
159
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Type::OrSymbol
160
+ }
161
+ )
162
+ end
163
+ def to_hash
164
+ end
165
+
166
+ # The scope of the case to create
167
+ module Scope
168
+ extend Lithic::Internal::Type::Enum
169
+
170
+ TaggedSymbol =
171
+ T.type_alias do
172
+ T.all(
173
+ Symbol,
174
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Scope
175
+ )
176
+ end
177
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
178
+
179
+ CARD =
180
+ T.let(
181
+ :CARD,
182
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Scope::TaggedSymbol
183
+ )
184
+ ACCOUNT =
185
+ T.let(
186
+ :ACCOUNT,
187
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Scope::TaggedSymbol
188
+ )
189
+
190
+ sig do
191
+ override.returns(
192
+ T::Array[
193
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Scope::TaggedSymbol
194
+ ]
195
+ )
196
+ end
197
+ def self.values
198
+ end
199
+ end
200
+
201
+ # Create a case for the transaction
202
+ module Type
203
+ extend Lithic::Internal::Type::Enum
204
+
205
+ TaggedSymbol =
206
+ T.type_alias do
207
+ T.all(
208
+ Symbol,
209
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Type
210
+ )
211
+ end
212
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
213
+
214
+ CREATE_CASE =
215
+ T.let(
216
+ :CREATE_CASE,
217
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Type::TaggedSymbol
218
+ )
219
+
220
+ sig do
221
+ override.returns(
222
+ T::Array[
223
+ Lithic::AuthRules::CardTransactionUpdateAction::CreateCaseAction::Type::TaggedSymbol
224
+ ]
225
+ )
226
+ end
227
+ def self.values
228
+ end
229
+ end
230
+ end
231
+
232
+ sig do
233
+ override.returns(
234
+ T::Array[Lithic::AuthRules::CardTransactionUpdateAction::Variants]
235
+ )
236
+ end
237
+ def self.variants
238
+ end
239
+ end
240
+ end
241
+ end
242
+ end
@@ -201,6 +201,10 @@ module Lithic
201
201
  # transaction for the entity. Requires `parameters.scope`.
202
202
  # - `DISTINCT_COUNTRY_COUNT`: The number of distinct merchant countries seen in
203
203
  # the entity's transaction history. Requires `parameters.scope`.
204
+ # - `IS_NEW_MERCHANT`: Whether the card acceptor ID has not been seen in the
205
+ # card's approved transaction history (capped at the 1000 most recently seen
206
+ # merchants). Valid values are `TRUE`, `FALSE`. Card-scoped only; no
207
+ # `parameters` required.
204
208
  # - `THREE_DS_SUCCESS_RATE`: The 3DS authentication success rate for the card, as
205
209
  # a percentage from 0.0 to 100.0. Card-scoped only; no `parameters` required.
206
210
  sig do
@@ -347,6 +351,10 @@ module Lithic
347
351
  # transaction for the entity. Requires `parameters.scope`.
348
352
  # - `DISTINCT_COUNTRY_COUNT`: The number of distinct merchant countries seen in
349
353
  # the entity's transaction history. Requires `parameters.scope`.
354
+ # - `IS_NEW_MERCHANT`: Whether the card acceptor ID has not been seen in the
355
+ # card's approved transaction history (capped at the 1000 most recently seen
356
+ # merchants). Valid values are `TRUE`, `FALSE`. Card-scoped only; no
357
+ # `parameters` required.
350
358
  # - `THREE_DS_SUCCESS_RATE`: The 3DS authentication success rate for the card, as
351
359
  # a percentage from 0.0 to 100.0. Card-scoped only; no `parameters` required.
352
360
  attribute:,
@@ -474,6 +482,10 @@ module Lithic
474
482
  # transaction for the entity. Requires `parameters.scope`.
475
483
  # - `DISTINCT_COUNTRY_COUNT`: The number of distinct merchant countries seen in
476
484
  # the entity's transaction history. Requires `parameters.scope`.
485
+ # - `IS_NEW_MERCHANT`: Whether the card acceptor ID has not been seen in the
486
+ # card's approved transaction history (capped at the 1000 most recently seen
487
+ # merchants). Valid values are `TRUE`, `FALSE`. Card-scoped only; no
488
+ # `parameters` required.
477
489
  # - `THREE_DS_SUCCESS_RATE`: The 3DS authentication success rate for the card, as
478
490
  # a percentage from 0.0 to 100.0. Card-scoped only; no `parameters` required.
479
491
  module Attribute
@@ -663,6 +675,11 @@ module Lithic
663
675
  :DISTINCT_COUNTRY_COUNT,
664
676
  Lithic::AuthRules::ConditionalAuthorizationActionParameters::Condition::Attribute::TaggedSymbol
665
677
  )
678
+ IS_NEW_MERCHANT =
679
+ T.let(
680
+ :IS_NEW_MERCHANT,
681
+ Lithic::AuthRules::ConditionalAuthorizationActionParameters::Condition::Attribute::TaggedSymbol
682
+ )
666
683
  THREE_DS_SUCCESS_RATE =
667
684
  T.let(
668
685
  :THREE_DS_SUCCESS_RATE,