lithic 0.16.0 → 0.17.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 (37) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +9 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/models/auth_rules/ach_payment_update_action.rb +108 -0
  5. data/lib/lithic/models/auth_rules/auth_rule.rb +18 -14
  6. data/lib/lithic/models/auth_rules/auth_rule_version.rb +5 -3
  7. data/lib/lithic/models/auth_rules/conditional_ach_payment_update_action_parameters.rb +142 -0
  8. data/lib/lithic/models/auth_rules/event_stream.rb +1 -0
  9. data/lib/lithic/models/auth_rules/rule_feature.rb +26 -4
  10. data/lib/lithic/models/auth_rules/typescript_code_parameters.rb +2 -2
  11. data/lib/lithic/models/auth_rules/v2_create_params.rb +39 -33
  12. data/lib/lithic/models/auth_rules/v2_draft_params.rb +5 -3
  13. data/lib/lithic/models/auth_rules/v2_list_results_response.rb +426 -1
  14. data/lib/lithic/resources/auth_rules/v2.rb +2 -2
  15. data/lib/lithic/version.rb +1 -1
  16. data/lib/lithic.rb +2 -0
  17. data/rbi/lithic/models/auth_rules/ach_payment_update_action.rbi +237 -0
  18. data/rbi/lithic/models/auth_rules/auth_rule.rbi +16 -12
  19. data/rbi/lithic/models/auth_rules/auth_rule_version.rbi +2 -0
  20. data/rbi/lithic/models/auth_rules/conditional_ach_payment_update_action_parameters.rbi +298 -0
  21. data/rbi/lithic/models/auth_rules/event_stream.rbi +5 -0
  22. data/rbi/lithic/models/auth_rules/rule_feature.rbi +38 -3
  23. data/rbi/lithic/models/auth_rules/typescript_code_parameters.rbi +3 -0
  24. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +48 -36
  25. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +4 -0
  26. data/rbi/lithic/models/auth_rules/v2_list_results_response.rbi +826 -1
  27. data/rbi/lithic/resources/auth_rules/v2.rbi +1 -0
  28. data/sig/lithic/models/auth_rules/ach_payment_update_action.rbs +99 -0
  29. data/sig/lithic/models/auth_rules/auth_rule.rbs +2 -0
  30. data/sig/lithic/models/auth_rules/auth_rule_version.rbs +1 -0
  31. data/sig/lithic/models/auth_rules/conditional_ach_payment_update_action_parameters.rbs +81 -0
  32. data/sig/lithic/models/auth_rules/event_stream.rbs +2 -0
  33. data/sig/lithic/models/auth_rules/rule_feature.rbs +15 -0
  34. data/sig/lithic/models/auth_rules/v2_create_params.rbs +3 -0
  35. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +1 -0
  36. data/sig/lithic/models/auth_rules/v2_list_results_response.rbs +355 -0
  37. metadata +8 -2
@@ -0,0 +1,237 @@
1
+ # typed: strong
2
+
3
+ module Lithic
4
+ module Models
5
+ module AuthRules
6
+ module ACHPaymentUpdateAction
7
+ extend Lithic::Internal::Type::Union
8
+
9
+ Variants =
10
+ T.type_alias do
11
+ T.any(
12
+ Lithic::AuthRules::ACHPaymentUpdateAction::TagAction,
13
+ Lithic::AuthRules::ACHPaymentUpdateAction::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::ACHPaymentUpdateAction::TagAction,
22
+ Lithic::Internal::AnyHash
23
+ )
24
+ end
25
+
26
+ # The key of the tag to apply to the payment
27
+ sig { returns(String) }
28
+ attr_accessor :key
29
+
30
+ # Tag the payment with key-value metadata
31
+ sig do
32
+ returns(
33
+ Lithic::AuthRules::ACHPaymentUpdateAction::TagAction::Type::OrSymbol
34
+ )
35
+ end
36
+ attr_accessor :type
37
+
38
+ # The value of the tag to apply to the payment
39
+ sig { returns(String) }
40
+ attr_accessor :value
41
+
42
+ sig do
43
+ params(
44
+ key: String,
45
+ type:
46
+ Lithic::AuthRules::ACHPaymentUpdateAction::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 payment
52
+ key:,
53
+ # Tag the payment with key-value metadata
54
+ type:,
55
+ # The value of the tag to apply to the payment
56
+ value:
57
+ )
58
+ end
59
+
60
+ sig do
61
+ override.returns(
62
+ {
63
+ key: String,
64
+ type:
65
+ Lithic::AuthRules::ACHPaymentUpdateAction::TagAction::Type::OrSymbol,
66
+ value: String
67
+ }
68
+ )
69
+ end
70
+ def to_hash
71
+ end
72
+
73
+ # Tag the payment 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::ACHPaymentUpdateAction::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::ACHPaymentUpdateAction::TagAction::Type::TaggedSymbol
90
+ )
91
+
92
+ sig do
93
+ override.returns(
94
+ T::Array[
95
+ Lithic::AuthRules::ACHPaymentUpdateAction::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::ACHPaymentUpdateAction::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::ACHPaymentUpdateAction::CreateCaseAction::Scope::OrSymbol
121
+ )
122
+ end
123
+ attr_accessor :scope
124
+
125
+ # Create a case for the payment
126
+ sig do
127
+ returns(
128
+ Lithic::AuthRules::ACHPaymentUpdateAction::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::ACHPaymentUpdateAction::CreateCaseAction::Scope::OrSymbol,
138
+ type:
139
+ Lithic::AuthRules::ACHPaymentUpdateAction::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 payment
148
+ type:
149
+ )
150
+ end
151
+
152
+ sig do
153
+ override.returns(
154
+ {
155
+ queue_token: String,
156
+ scope:
157
+ Lithic::AuthRules::ACHPaymentUpdateAction::CreateCaseAction::Scope::OrSymbol,
158
+ type:
159
+ Lithic::AuthRules::ACHPaymentUpdateAction::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::ACHPaymentUpdateAction::CreateCaseAction::Scope
175
+ )
176
+ end
177
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
178
+
179
+ FINANCIAL_ACCOUNT =
180
+ T.let(
181
+ :FINANCIAL_ACCOUNT,
182
+ Lithic::AuthRules::ACHPaymentUpdateAction::CreateCaseAction::Scope::TaggedSymbol
183
+ )
184
+
185
+ sig do
186
+ override.returns(
187
+ T::Array[
188
+ Lithic::AuthRules::ACHPaymentUpdateAction::CreateCaseAction::Scope::TaggedSymbol
189
+ ]
190
+ )
191
+ end
192
+ def self.values
193
+ end
194
+ end
195
+
196
+ # Create a case for the payment
197
+ module Type
198
+ extend Lithic::Internal::Type::Enum
199
+
200
+ TaggedSymbol =
201
+ T.type_alias do
202
+ T.all(
203
+ Symbol,
204
+ Lithic::AuthRules::ACHPaymentUpdateAction::CreateCaseAction::Type
205
+ )
206
+ end
207
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
208
+
209
+ CREATE_CASE =
210
+ T.let(
211
+ :CREATE_CASE,
212
+ Lithic::AuthRules::ACHPaymentUpdateAction::CreateCaseAction::Type::TaggedSymbol
213
+ )
214
+
215
+ sig do
216
+ override.returns(
217
+ T::Array[
218
+ Lithic::AuthRules::ACHPaymentUpdateAction::CreateCaseAction::Type::TaggedSymbol
219
+ ]
220
+ )
221
+ end
222
+ def self.values
223
+ end
224
+ end
225
+ end
226
+
227
+ sig do
228
+ override.returns(
229
+ T::Array[Lithic::AuthRules::ACHPaymentUpdateAction::Variants]
230
+ )
231
+ end
232
+ def self.variants
233
+ end
234
+ end
235
+ end
236
+ end
237
+ end
@@ -80,11 +80,11 @@ 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, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
84
- # stream.
83
+ # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
84
+ # ACH_PAYMENT_UPDATE event stream.
85
85
  # - `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
86
- # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
87
- # stream.
86
+ # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
87
+ # ACH_PAYMENT_UPDATE event stream.
88
88
  sig { returns(Lithic::AuthRules::AuthRule::Type::TaggedSymbol) }
89
89
  attr_accessor :type
90
90
 
@@ -162,11 +162,11 @@ module Lithic
162
162
  # - `VELOCITY_LIMIT`: AUTHORIZATION event stream.
163
163
  # - `MERCHANT_LOCK`: AUTHORIZATION event stream.
164
164
  # - `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
165
- # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
166
- # stream.
165
+ # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
166
+ # ACH_PAYMENT_UPDATE event stream.
167
167
  # - `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
168
- # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
169
- # stream.
168
+ # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
169
+ # ACH_PAYMENT_UPDATE event stream.
170
170
  type:,
171
171
  # Account tokens to which the Auth Rule does not apply.
172
172
  excluded_account_tokens: nil,
@@ -237,6 +237,7 @@ module Lithic
237
237
  Lithic::AuthRules::ConditionalACHActionParameters::OrHash,
238
238
  Lithic::AuthRules::ConditionalTokenizationActionParameters::OrHash,
239
239
  Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::OrHash,
240
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::OrHash,
240
241
  Lithic::AuthRules::TypescriptCodeParameters::OrHash,
241
242
  Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::OrHash
242
243
  ),
@@ -279,6 +280,7 @@ module Lithic
279
280
  Lithic::AuthRules::ConditionalACHActionParameters,
280
281
  Lithic::AuthRules::ConditionalTokenizationActionParameters,
281
282
  Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters,
283
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters,
282
284
  Lithic::AuthRules::TypescriptCodeParameters,
283
285
  Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters
284
286
  )
@@ -353,6 +355,7 @@ module Lithic
353
355
  Lithic::AuthRules::ConditionalACHActionParameters::OrHash,
354
356
  Lithic::AuthRules::ConditionalTokenizationActionParameters::OrHash,
355
357
  Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::OrHash,
358
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::OrHash,
356
359
  Lithic::AuthRules::TypescriptCodeParameters::OrHash,
357
360
  Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::OrHash
358
361
  ),
@@ -413,6 +416,7 @@ module Lithic
413
416
  Lithic::AuthRules::ConditionalACHActionParameters,
414
417
  Lithic::AuthRules::ConditionalTokenizationActionParameters,
415
418
  Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters,
419
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters,
416
420
  Lithic::AuthRules::TypescriptCodeParameters,
417
421
  Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters
418
422
  )
@@ -508,11 +512,11 @@ module Lithic
508
512
  # - `VELOCITY_LIMIT`: AUTHORIZATION event stream.
509
513
  # - `MERCHANT_LOCK`: AUTHORIZATION event stream.
510
514
  # - `CONDITIONAL_ACTION`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
511
- # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
512
- # stream.
515
+ # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
516
+ # ACH_PAYMENT_UPDATE event stream.
513
517
  # - `TYPESCRIPT_CODE`: AUTHORIZATION, THREE_DS_AUTHENTICATION, TOKENIZATION,
514
- # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, or CARD_TRANSACTION_UPDATE event
515
- # stream.
518
+ # ACH_CREDIT_RECEIPT, ACH_DEBIT_RECEIPT, CARD_TRANSACTION_UPDATE, or
519
+ # ACH_PAYMENT_UPDATE event stream.
516
520
  module Type
517
521
  extend Lithic::Internal::Type::Enum
518
522
 
@@ -43,6 +43,7 @@ module Lithic
43
43
  Lithic::AuthRules::ConditionalACHActionParameters::OrHash,
44
44
  Lithic::AuthRules::ConditionalTokenizationActionParameters::OrHash,
45
45
  Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::OrHash,
46
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::OrHash,
46
47
  Lithic::AuthRules::TypescriptCodeParameters::OrHash,
47
48
  Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::OrHash
48
49
  ),
@@ -92,6 +93,7 @@ module Lithic
92
93
  Lithic::AuthRules::ConditionalACHActionParameters,
93
94
  Lithic::AuthRules::ConditionalTokenizationActionParameters,
94
95
  Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters,
96
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters,
95
97
  Lithic::AuthRules::TypescriptCodeParameters,
96
98
  Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters
97
99
  )
@@ -0,0 +1,298 @@
1
+ # typed: strong
2
+
3
+ module Lithic
4
+ module Models
5
+ module AuthRules
6
+ class ConditionalACHPaymentUpdateActionParameters < Lithic::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters,
11
+ Lithic::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ # The action to take if the conditions are met.
16
+ sig do
17
+ returns(
18
+ T.any(
19
+ Lithic::AuthRules::ACHPaymentUpdateAction::TagAction,
20
+ Lithic::AuthRules::ACHPaymentUpdateAction::CreateCaseAction
21
+ )
22
+ )
23
+ end
24
+ attr_accessor :action
25
+
26
+ sig do
27
+ returns(
28
+ T::Array[
29
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition
30
+ ]
31
+ )
32
+ end
33
+ attr_accessor :conditions
34
+
35
+ sig do
36
+ params(
37
+ action:
38
+ T.any(
39
+ Lithic::AuthRules::ACHPaymentUpdateAction::TagAction::OrHash,
40
+ Lithic::AuthRules::ACHPaymentUpdateAction::CreateCaseAction::OrHash
41
+ ),
42
+ conditions:
43
+ T::Array[
44
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::OrHash
45
+ ]
46
+ ).returns(T.attached_class)
47
+ end
48
+ def self.new(
49
+ # The action to take if the conditions are met.
50
+ action:,
51
+ conditions:
52
+ )
53
+ end
54
+
55
+ sig do
56
+ override.returns(
57
+ {
58
+ action:
59
+ T.any(
60
+ Lithic::AuthRules::ACHPaymentUpdateAction::TagAction,
61
+ Lithic::AuthRules::ACHPaymentUpdateAction::CreateCaseAction
62
+ ),
63
+ conditions:
64
+ T::Array[
65
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition
66
+ ]
67
+ }
68
+ )
69
+ end
70
+ def to_hash
71
+ end
72
+
73
+ class Condition < Lithic::Internal::Type::BaseModel
74
+ OrHash =
75
+ T.type_alias do
76
+ T.any(
77
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition,
78
+ Lithic::Internal::AnyHash
79
+ )
80
+ end
81
+
82
+ # The attribute to target.
83
+ #
84
+ # The following attributes may be targeted:
85
+ #
86
+ # - `TRANSACTION_AMOUNT`: The total amount of the ACH payment in minor units
87
+ # (cents), calculated as the sum of the settled and pending amounts. Use an
88
+ # integer value.
89
+ # - `SEC_CODE`: Standard Entry Class code indicating the type of ACH transaction.
90
+ # Valid values include PPD (Prearranged Payment and Deposit Entry), CCD
91
+ # (Corporate Credit or Debit Entry), WEB (Internet-Initiated/Mobile Entry), TEL
92
+ # (Telephone-Initiated Entry), and others.
93
+ # - `RETURN_REASON_CODE`: NACHA return reason code associated with the payment
94
+ # (for example, `R01`).
95
+ # - `ACCOUNT_AGE`: The age of the account in seconds at the time of the payment.
96
+ # Use an integer value. For programs where Lithic does not manage or retain
97
+ # account holder data, this attribute does not evaluate.
98
+ # - `EXTERNAL_BANK_ACCOUNT_AGE`: The age of the external bank account in seconds
99
+ # at the time of the payment. Use an integer value.
100
+ # - `EXTERNAL_BANK_ACCOUNT_VERIFICATION_METHOD`: The method used to verify the
101
+ # external bank account. Valid values are `MANUAL`, `MICRO_DEPOSIT`, `PRENOTE`,
102
+ # `EXTERNALLY_VERIFIED`, or `UNVERIFIED`.
103
+ # - `EXTERNAL_BANK_ACCOUNT_VERIFICATION_STATE`: The verification state of the
104
+ # external bank account. Valid values are `PENDING`, `ENABLED`,
105
+ # `FAILED_VERIFICATION`, or `INSUFFICIENT_FUNDS`.
106
+ # - `EXTERNAL_BANK_ACCOUNT_OWNER_TYPE`: The owner type of the external bank
107
+ # account. Valid values are `INDIVIDUAL` or `BUSINESS`.
108
+ # - `ACH_EVENT_TYPE`: The type of ACH payment event being evaluated. Valid values
109
+ # include `ACH_ORIGINATION_INITIATED`, `ACH_ORIGINATION_REVIEWED`,
110
+ # `ACH_ORIGINATION_CANCELLED`, `ACH_ORIGINATION_PROCESSED`,
111
+ # `ACH_ORIGINATION_SETTLED`, `ACH_ORIGINATION_RELEASED`,
112
+ # `ACH_ORIGINATION_REJECTED`, `ACH_RECEIPT_PROCESSED`, `ACH_RECEIPT_SETTLED`,
113
+ # `ACH_RECEIPT_RELEASED`, `ACH_RECEIPT_RELEASED_EARLY`, `ACH_RETURN_INITIATED`,
114
+ # `ACH_RETURN_PROCESSED`, `ACH_RETURN_SETTLED`, and `ACH_RETURN_REJECTED`.
115
+ sig do
116
+ returns(
117
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::OrSymbol
118
+ )
119
+ end
120
+ attr_accessor :attribute
121
+
122
+ # The operation to apply to the attribute
123
+ sig { returns(Lithic::AuthRules::ConditionalOperation::OrSymbol) }
124
+ attr_accessor :operation
125
+
126
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
127
+ sig { returns(Lithic::AuthRules::ConditionalValue::Variants) }
128
+ attr_accessor :value
129
+
130
+ sig do
131
+ params(
132
+ attribute:
133
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::OrSymbol,
134
+ operation: Lithic::AuthRules::ConditionalOperation::OrSymbol,
135
+ value: Lithic::AuthRules::ConditionalValue::Variants
136
+ ).returns(T.attached_class)
137
+ end
138
+ def self.new(
139
+ # The attribute to target.
140
+ #
141
+ # The following attributes may be targeted:
142
+ #
143
+ # - `TRANSACTION_AMOUNT`: The total amount of the ACH payment in minor units
144
+ # (cents), calculated as the sum of the settled and pending amounts. Use an
145
+ # integer value.
146
+ # - `SEC_CODE`: Standard Entry Class code indicating the type of ACH transaction.
147
+ # Valid values include PPD (Prearranged Payment and Deposit Entry), CCD
148
+ # (Corporate Credit or Debit Entry), WEB (Internet-Initiated/Mobile Entry), TEL
149
+ # (Telephone-Initiated Entry), and others.
150
+ # - `RETURN_REASON_CODE`: NACHA return reason code associated with the payment
151
+ # (for example, `R01`).
152
+ # - `ACCOUNT_AGE`: The age of the account in seconds at the time of the payment.
153
+ # Use an integer value. For programs where Lithic does not manage or retain
154
+ # account holder data, this attribute does not evaluate.
155
+ # - `EXTERNAL_BANK_ACCOUNT_AGE`: The age of the external bank account in seconds
156
+ # at the time of the payment. Use an integer value.
157
+ # - `EXTERNAL_BANK_ACCOUNT_VERIFICATION_METHOD`: The method used to verify the
158
+ # external bank account. Valid values are `MANUAL`, `MICRO_DEPOSIT`, `PRENOTE`,
159
+ # `EXTERNALLY_VERIFIED`, or `UNVERIFIED`.
160
+ # - `EXTERNAL_BANK_ACCOUNT_VERIFICATION_STATE`: The verification state of the
161
+ # external bank account. Valid values are `PENDING`, `ENABLED`,
162
+ # `FAILED_VERIFICATION`, or `INSUFFICIENT_FUNDS`.
163
+ # - `EXTERNAL_BANK_ACCOUNT_OWNER_TYPE`: The owner type of the external bank
164
+ # account. Valid values are `INDIVIDUAL` or `BUSINESS`.
165
+ # - `ACH_EVENT_TYPE`: The type of ACH payment event being evaluated. Valid values
166
+ # include `ACH_ORIGINATION_INITIATED`, `ACH_ORIGINATION_REVIEWED`,
167
+ # `ACH_ORIGINATION_CANCELLED`, `ACH_ORIGINATION_PROCESSED`,
168
+ # `ACH_ORIGINATION_SETTLED`, `ACH_ORIGINATION_RELEASED`,
169
+ # `ACH_ORIGINATION_REJECTED`, `ACH_RECEIPT_PROCESSED`, `ACH_RECEIPT_SETTLED`,
170
+ # `ACH_RECEIPT_RELEASED`, `ACH_RECEIPT_RELEASED_EARLY`, `ACH_RETURN_INITIATED`,
171
+ # `ACH_RETURN_PROCESSED`, `ACH_RETURN_SETTLED`, and `ACH_RETURN_REJECTED`.
172
+ attribute:,
173
+ # The operation to apply to the attribute
174
+ operation:,
175
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
176
+ value:
177
+ )
178
+ end
179
+
180
+ sig do
181
+ override.returns(
182
+ {
183
+ attribute:
184
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::OrSymbol,
185
+ operation: Lithic::AuthRules::ConditionalOperation::OrSymbol,
186
+ value: Lithic::AuthRules::ConditionalValue::Variants
187
+ }
188
+ )
189
+ end
190
+ def to_hash
191
+ end
192
+
193
+ # The attribute to target.
194
+ #
195
+ # The following attributes may be targeted:
196
+ #
197
+ # - `TRANSACTION_AMOUNT`: The total amount of the ACH payment in minor units
198
+ # (cents), calculated as the sum of the settled and pending amounts. Use an
199
+ # integer value.
200
+ # - `SEC_CODE`: Standard Entry Class code indicating the type of ACH transaction.
201
+ # Valid values include PPD (Prearranged Payment and Deposit Entry), CCD
202
+ # (Corporate Credit or Debit Entry), WEB (Internet-Initiated/Mobile Entry), TEL
203
+ # (Telephone-Initiated Entry), and others.
204
+ # - `RETURN_REASON_CODE`: NACHA return reason code associated with the payment
205
+ # (for example, `R01`).
206
+ # - `ACCOUNT_AGE`: The age of the account in seconds at the time of the payment.
207
+ # Use an integer value. For programs where Lithic does not manage or retain
208
+ # account holder data, this attribute does not evaluate.
209
+ # - `EXTERNAL_BANK_ACCOUNT_AGE`: The age of the external bank account in seconds
210
+ # at the time of the payment. Use an integer value.
211
+ # - `EXTERNAL_BANK_ACCOUNT_VERIFICATION_METHOD`: The method used to verify the
212
+ # external bank account. Valid values are `MANUAL`, `MICRO_DEPOSIT`, `PRENOTE`,
213
+ # `EXTERNALLY_VERIFIED`, or `UNVERIFIED`.
214
+ # - `EXTERNAL_BANK_ACCOUNT_VERIFICATION_STATE`: The verification state of the
215
+ # external bank account. Valid values are `PENDING`, `ENABLED`,
216
+ # `FAILED_VERIFICATION`, or `INSUFFICIENT_FUNDS`.
217
+ # - `EXTERNAL_BANK_ACCOUNT_OWNER_TYPE`: The owner type of the external bank
218
+ # account. Valid values are `INDIVIDUAL` or `BUSINESS`.
219
+ # - `ACH_EVENT_TYPE`: The type of ACH payment event being evaluated. Valid values
220
+ # include `ACH_ORIGINATION_INITIATED`, `ACH_ORIGINATION_REVIEWED`,
221
+ # `ACH_ORIGINATION_CANCELLED`, `ACH_ORIGINATION_PROCESSED`,
222
+ # `ACH_ORIGINATION_SETTLED`, `ACH_ORIGINATION_RELEASED`,
223
+ # `ACH_ORIGINATION_REJECTED`, `ACH_RECEIPT_PROCESSED`, `ACH_RECEIPT_SETTLED`,
224
+ # `ACH_RECEIPT_RELEASED`, `ACH_RECEIPT_RELEASED_EARLY`, `ACH_RETURN_INITIATED`,
225
+ # `ACH_RETURN_PROCESSED`, `ACH_RETURN_SETTLED`, and `ACH_RETURN_REJECTED`.
226
+ module Attribute
227
+ extend Lithic::Internal::Type::Enum
228
+
229
+ TaggedSymbol =
230
+ T.type_alias do
231
+ T.all(
232
+ Symbol,
233
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute
234
+ )
235
+ end
236
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
237
+
238
+ TRANSACTION_AMOUNT =
239
+ T.let(
240
+ :TRANSACTION_AMOUNT,
241
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::TaggedSymbol
242
+ )
243
+ SEC_CODE =
244
+ T.let(
245
+ :SEC_CODE,
246
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::TaggedSymbol
247
+ )
248
+ RETURN_REASON_CODE =
249
+ T.let(
250
+ :RETURN_REASON_CODE,
251
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::TaggedSymbol
252
+ )
253
+ ACCOUNT_AGE =
254
+ T.let(
255
+ :ACCOUNT_AGE,
256
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::TaggedSymbol
257
+ )
258
+ EXTERNAL_BANK_ACCOUNT_AGE =
259
+ T.let(
260
+ :EXTERNAL_BANK_ACCOUNT_AGE,
261
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::TaggedSymbol
262
+ )
263
+ EXTERNAL_BANK_ACCOUNT_VERIFICATION_METHOD =
264
+ T.let(
265
+ :EXTERNAL_BANK_ACCOUNT_VERIFICATION_METHOD,
266
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::TaggedSymbol
267
+ )
268
+ EXTERNAL_BANK_ACCOUNT_VERIFICATION_STATE =
269
+ T.let(
270
+ :EXTERNAL_BANK_ACCOUNT_VERIFICATION_STATE,
271
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::TaggedSymbol
272
+ )
273
+ EXTERNAL_BANK_ACCOUNT_OWNER_TYPE =
274
+ T.let(
275
+ :EXTERNAL_BANK_ACCOUNT_OWNER_TYPE,
276
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::TaggedSymbol
277
+ )
278
+ ACH_EVENT_TYPE =
279
+ T.let(
280
+ :ACH_EVENT_TYPE,
281
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::TaggedSymbol
282
+ )
283
+
284
+ sig do
285
+ override.returns(
286
+ T::Array[
287
+ Lithic::AuthRules::ConditionalACHPaymentUpdateActionParameters::Condition::Attribute::TaggedSymbol
288
+ ]
289
+ )
290
+ end
291
+ def self.values
292
+ end
293
+ end
294
+ end
295
+ end
296
+ end
297
+ end
298
+ end
@@ -35,6 +35,11 @@ module Lithic
35
35
  :CARD_TRANSACTION_UPDATE,
36
36
  Lithic::AuthRules::EventStream::TaggedSymbol
37
37
  )
38
+ ACH_PAYMENT_UPDATE =
39
+ T.let(
40
+ :ACH_PAYMENT_UPDATE,
41
+ Lithic::AuthRules::EventStream::TaggedSymbol
42
+ )
38
43
 
39
44
  sig do
40
45
  override.returns(