increase 1.33.0 → 1.35.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 (84) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/increase/client.rb +12 -0
  5. data/lib/increase/models/card_push_transfer.rb +824 -0
  6. data/lib/increase/models/card_push_transfer_approve_params.rb +14 -0
  7. data/lib/increase/models/card_push_transfer_cancel_params.rb +14 -0
  8. data/lib/increase/models/card_push_transfer_create_params.rb +215 -0
  9. data/lib/increase/models/card_push_transfer_list_params.rb +159 -0
  10. data/lib/increase/models/card_push_transfer_retrieve_params.rb +14 -0
  11. data/lib/increase/models/card_token.rb +87 -0
  12. data/lib/increase/models/card_token_capabilities.rb +123 -0
  13. data/lib/increase/models/card_token_capabilities_params.rb +14 -0
  14. data/lib/increase/models/card_token_list_params.rb +83 -0
  15. data/lib/increase/models/card_token_retrieve_params.rb +14 -0
  16. data/lib/increase/models/card_validation.rb +759 -0
  17. data/lib/increase/models/card_validation_create_params.rb +116 -0
  18. data/lib/increase/models/card_validation_list_params.rb +150 -0
  19. data/lib/increase/models/card_validation_retrieve_params.rb +14 -0
  20. data/lib/increase/models/external_account.rb +3 -0
  21. data/lib/increase/models/external_account_create_params.rb +3 -0
  22. data/lib/increase/models/external_account_update_params.rb +3 -0
  23. data/lib/increase/models/simulations/card_token_create_params.rb +140 -0
  24. data/lib/increase/models.rb +30 -0
  25. data/lib/increase/resources/card_push_transfers.rb +167 -0
  26. data/lib/increase/resources/card_tokens.rb +86 -0
  27. data/lib/increase/resources/card_validations.rb +117 -0
  28. data/lib/increase/resources/simulations/card_tokens.rb +46 -0
  29. data/lib/increase/resources/simulations.rb +4 -0
  30. data/lib/increase/version.rb +1 -1
  31. data/lib/increase.rb +20 -0
  32. data/rbi/increase/client.rbi +9 -0
  33. data/rbi/increase/models/card_push_transfer.rbi +1450 -0
  34. data/rbi/increase/models/card_push_transfer_approve_params.rbi +30 -0
  35. data/rbi/increase/models/card_push_transfer_cancel_params.rbi +30 -0
  36. data/rbi/increase/models/card_push_transfer_create_params.rbi +325 -0
  37. data/rbi/increase/models/card_push_transfer_list_params.rbi +329 -0
  38. data/rbi/increase/models/card_push_transfer_retrieve_params.rbi +30 -0
  39. data/rbi/increase/models/card_token.rbi +108 -0
  40. data/rbi/increase/models/card_token_capabilities.rbi +250 -0
  41. data/rbi/increase/models/card_token_capabilities_params.rbi +30 -0
  42. data/rbi/increase/models/card_token_list_params.rbi +146 -0
  43. data/rbi/increase/models/card_token_retrieve_params.rbi +27 -0
  44. data/rbi/increase/models/card_validation.rbi +1438 -0
  45. data/rbi/increase/models/card_validation_create_params.rbi +155 -0
  46. data/rbi/increase/models/card_validation_list_params.rbi +295 -0
  47. data/rbi/increase/models/card_validation_retrieve_params.rbi +30 -0
  48. data/rbi/increase/models/external_account.rbi +7 -0
  49. data/rbi/increase/models/external_account_create_params.rbi +7 -0
  50. data/rbi/increase/models/external_account_update_params.rbi +7 -0
  51. data/rbi/increase/models/simulations/card_token_create_params.rbi +297 -0
  52. data/rbi/increase/models.rbi +32 -0
  53. data/rbi/increase/resources/card_push_transfers.rbi +157 -0
  54. data/rbi/increase/resources/card_tokens.rbi +62 -0
  55. data/rbi/increase/resources/card_validations.rbi +107 -0
  56. data/rbi/increase/resources/simulations/card_tokens.rbi +43 -0
  57. data/rbi/increase/resources/simulations.rbi +3 -0
  58. data/sig/increase/client.rbs +6 -0
  59. data/sig/increase/models/card_push_transfer.rbs +679 -0
  60. data/sig/increase/models/card_push_transfer_approve_params.rbs +15 -0
  61. data/sig/increase/models/card_push_transfer_cancel_params.rbs +15 -0
  62. data/sig/increase/models/card_push_transfer_create_params.rbs +172 -0
  63. data/sig/increase/models/card_push_transfer_list_params.rbs +163 -0
  64. data/sig/increase/models/card_push_transfer_retrieve_params.rbs +15 -0
  65. data/sig/increase/models/card_token.rbs +60 -0
  66. data/sig/increase/models/card_token_capabilities.rbs +104 -0
  67. data/sig/increase/models/card_token_capabilities_params.rbs +15 -0
  68. data/sig/increase/models/card_token_list_params.rbs +79 -0
  69. data/sig/increase/models/card_token_retrieve_params.rbs +15 -0
  70. data/sig/increase/models/card_validation.rbs +634 -0
  71. data/sig/increase/models/card_validation_create_params.rbs +91 -0
  72. data/sig/increase/models/card_validation_list_params.rbs +151 -0
  73. data/sig/increase/models/card_validation_retrieve_params.rbs +15 -0
  74. data/sig/increase/models/external_account.rbs +4 -1
  75. data/sig/increase/models/external_account_create_params.rbs +4 -1
  76. data/sig/increase/models/external_account_update_params.rbs +4 -1
  77. data/sig/increase/models/simulations/card_token_create_params.rbs +129 -0
  78. data/sig/increase/models.rbs +30 -0
  79. data/sig/increase/resources/card_push_transfers.rbs +53 -0
  80. data/sig/increase/resources/card_tokens.rbs +24 -0
  81. data/sig/increase/resources/card_validations.rbs +38 -0
  82. data/sig/increase/resources/simulations/card_tokens.rbs +18 -0
  83. data/sig/increase/resources/simulations.rbs +2 -0
  84. metadata +62 -2
@@ -0,0 +1,1438 @@
1
+ # typed: strong
2
+
3
+ module Increase
4
+ module Models
5
+ class CardValidation < Increase::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Increase::CardValidation, Increase::Internal::AnyHash)
9
+ end
10
+
11
+ # The Card Validation's identifier.
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ # If the validation is accepted by the recipient bank, this will contain
16
+ # supplemental details.
17
+ sig { returns(T.nilable(Increase::CardValidation::Acceptance)) }
18
+ attr_reader :acceptance
19
+
20
+ sig do
21
+ params(
22
+ acceptance: T.nilable(Increase::CardValidation::Acceptance::OrHash)
23
+ ).void
24
+ end
25
+ attr_writer :acceptance
26
+
27
+ # The identifier of the Account from which to send the validation.
28
+ sig { returns(String) }
29
+ attr_accessor :account_id
30
+
31
+ # The cardholder's first name.
32
+ sig { returns(T.nilable(String)) }
33
+ attr_accessor :cardholder_first_name
34
+
35
+ # The cardholder's last name.
36
+ sig { returns(T.nilable(String)) }
37
+ attr_accessor :cardholder_last_name
38
+
39
+ # The cardholder's middle name.
40
+ sig { returns(T.nilable(String)) }
41
+ attr_accessor :cardholder_middle_name
42
+
43
+ # The postal code of the cardholder's address.
44
+ sig { returns(T.nilable(String)) }
45
+ attr_accessor :cardholder_postal_code
46
+
47
+ # The cardholder's street address.
48
+ sig { returns(T.nilable(String)) }
49
+ attr_accessor :cardholder_street_address
50
+
51
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
52
+ # the validation was created.
53
+ sig { returns(Time) }
54
+ attr_accessor :created_at
55
+
56
+ # What object created the validation, either via the API or the dashboard.
57
+ sig { returns(T.nilable(Increase::CardValidation::CreatedBy)) }
58
+ attr_reader :created_by
59
+
60
+ sig do
61
+ params(
62
+ created_by: T.nilable(Increase::CardValidation::CreatedBy::OrHash)
63
+ ).void
64
+ end
65
+ attr_writer :created_by
66
+
67
+ # If the validation is rejected by the card network or the destination financial
68
+ # institution, this will contain supplemental details.
69
+ sig { returns(T.nilable(Increase::CardValidation::Decline)) }
70
+ attr_reader :decline
71
+
72
+ sig do
73
+ params(
74
+ decline: T.nilable(Increase::CardValidation::Decline::OrHash)
75
+ ).void
76
+ end
77
+ attr_writer :decline
78
+
79
+ # The idempotency key you chose for this object. This value is unique across
80
+ # Increase and is used to ensure that a request is only processed once. Learn more
81
+ # about [idempotency](https://increase.com/documentation/idempotency-keys).
82
+ sig { returns(T.nilable(String)) }
83
+ attr_accessor :idempotency_key
84
+
85
+ # A four-digit code (MCC) identifying the type of business or service provided by
86
+ # the merchant.
87
+ sig { returns(String) }
88
+ attr_accessor :merchant_category_code
89
+
90
+ # The city where the merchant (typically your business) is located.
91
+ sig { returns(String) }
92
+ attr_accessor :merchant_city_name
93
+
94
+ # The merchant name that will appear in the cardholder’s statement descriptor.
95
+ # Typically your business name.
96
+ sig { returns(String) }
97
+ attr_accessor :merchant_name
98
+
99
+ # The postal code for the merchant’s (typically your business’s) location.
100
+ sig { returns(String) }
101
+ attr_accessor :merchant_postal_code
102
+
103
+ # The U.S. state where the merchant (typically your business) is located.
104
+ sig { returns(String) }
105
+ attr_accessor :merchant_state
106
+
107
+ # The lifecycle status of the validation.
108
+ sig { returns(Increase::CardValidation::Status::TaggedSymbol) }
109
+ attr_accessor :status
110
+
111
+ # After the validation is submitted to the card network, this will contain
112
+ # supplemental details.
113
+ sig { returns(T.nilable(Increase::CardValidation::Submission)) }
114
+ attr_reader :submission
115
+
116
+ sig do
117
+ params(
118
+ submission: T.nilable(Increase::CardValidation::Submission::OrHash)
119
+ ).void
120
+ end
121
+ attr_writer :submission
122
+
123
+ # A constant representing the object's type. For this resource it will always be
124
+ # `card_validation`.
125
+ sig { returns(Increase::CardValidation::Type::TaggedSymbol) }
126
+ attr_accessor :type
127
+
128
+ # Card Validations are used to validate a card and its cardholder before sending
129
+ # funds to or pulling funds from a card.
130
+ sig do
131
+ params(
132
+ id: String,
133
+ acceptance: T.nilable(Increase::CardValidation::Acceptance::OrHash),
134
+ account_id: String,
135
+ cardholder_first_name: T.nilable(String),
136
+ cardholder_last_name: T.nilable(String),
137
+ cardholder_middle_name: T.nilable(String),
138
+ cardholder_postal_code: T.nilable(String),
139
+ cardholder_street_address: T.nilable(String),
140
+ created_at: Time,
141
+ created_by: T.nilable(Increase::CardValidation::CreatedBy::OrHash),
142
+ decline: T.nilable(Increase::CardValidation::Decline::OrHash),
143
+ idempotency_key: T.nilable(String),
144
+ merchant_category_code: String,
145
+ merchant_city_name: String,
146
+ merchant_name: String,
147
+ merchant_postal_code: String,
148
+ merchant_state: String,
149
+ status: Increase::CardValidation::Status::OrSymbol,
150
+ submission: T.nilable(Increase::CardValidation::Submission::OrHash),
151
+ type: Increase::CardValidation::Type::OrSymbol
152
+ ).returns(T.attached_class)
153
+ end
154
+ def self.new(
155
+ # The Card Validation's identifier.
156
+ id:,
157
+ # If the validation is accepted by the recipient bank, this will contain
158
+ # supplemental details.
159
+ acceptance:,
160
+ # The identifier of the Account from which to send the validation.
161
+ account_id:,
162
+ # The cardholder's first name.
163
+ cardholder_first_name:,
164
+ # The cardholder's last name.
165
+ cardholder_last_name:,
166
+ # The cardholder's middle name.
167
+ cardholder_middle_name:,
168
+ # The postal code of the cardholder's address.
169
+ cardholder_postal_code:,
170
+ # The cardholder's street address.
171
+ cardholder_street_address:,
172
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
173
+ # the validation was created.
174
+ created_at:,
175
+ # What object created the validation, either via the API or the dashboard.
176
+ created_by:,
177
+ # If the validation is rejected by the card network or the destination financial
178
+ # institution, this will contain supplemental details.
179
+ decline:,
180
+ # The idempotency key you chose for this object. This value is unique across
181
+ # Increase and is used to ensure that a request is only processed once. Learn more
182
+ # about [idempotency](https://increase.com/documentation/idempotency-keys).
183
+ idempotency_key:,
184
+ # A four-digit code (MCC) identifying the type of business or service provided by
185
+ # the merchant.
186
+ merchant_category_code:,
187
+ # The city where the merchant (typically your business) is located.
188
+ merchant_city_name:,
189
+ # The merchant name that will appear in the cardholder’s statement descriptor.
190
+ # Typically your business name.
191
+ merchant_name:,
192
+ # The postal code for the merchant’s (typically your business’s) location.
193
+ merchant_postal_code:,
194
+ # The U.S. state where the merchant (typically your business) is located.
195
+ merchant_state:,
196
+ # The lifecycle status of the validation.
197
+ status:,
198
+ # After the validation is submitted to the card network, this will contain
199
+ # supplemental details.
200
+ submission:,
201
+ # A constant representing the object's type. For this resource it will always be
202
+ # `card_validation`.
203
+ type:
204
+ )
205
+ end
206
+
207
+ sig do
208
+ override.returns(
209
+ {
210
+ id: String,
211
+ acceptance: T.nilable(Increase::CardValidation::Acceptance),
212
+ account_id: String,
213
+ cardholder_first_name: T.nilable(String),
214
+ cardholder_last_name: T.nilable(String),
215
+ cardholder_middle_name: T.nilable(String),
216
+ cardholder_postal_code: T.nilable(String),
217
+ cardholder_street_address: T.nilable(String),
218
+ created_at: Time,
219
+ created_by: T.nilable(Increase::CardValidation::CreatedBy),
220
+ decline: T.nilable(Increase::CardValidation::Decline),
221
+ idempotency_key: T.nilable(String),
222
+ merchant_category_code: String,
223
+ merchant_city_name: String,
224
+ merchant_name: String,
225
+ merchant_postal_code: String,
226
+ merchant_state: String,
227
+ status: Increase::CardValidation::Status::TaggedSymbol,
228
+ submission: T.nilable(Increase::CardValidation::Submission),
229
+ type: Increase::CardValidation::Type::TaggedSymbol
230
+ }
231
+ )
232
+ end
233
+ def to_hash
234
+ end
235
+
236
+ class Acceptance < Increase::Internal::Type::BaseModel
237
+ OrHash =
238
+ T.type_alias do
239
+ T.any(
240
+ Increase::CardValidation::Acceptance,
241
+ Increase::Internal::AnyHash
242
+ )
243
+ end
244
+
245
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
246
+ # the validation was accepted by the issuing bank.
247
+ sig { returns(Time) }
248
+ attr_accessor :accepted_at
249
+
250
+ # The authorization identification response from the issuing bank.
251
+ sig { returns(String) }
252
+ attr_accessor :authorization_identification_response
253
+
254
+ # The result of the Card Verification Value 2 match.
255
+ sig do
256
+ returns(
257
+ T.nilable(
258
+ Increase::CardValidation::Acceptance::CardVerificationValue2Result::TaggedSymbol
259
+ )
260
+ )
261
+ end
262
+ attr_accessor :card_verification_value2_result
263
+
264
+ # The result of the cardholder first name match.
265
+ sig do
266
+ returns(
267
+ T.nilable(
268
+ Increase::CardValidation::Acceptance::CardholderFirstNameResult::TaggedSymbol
269
+ )
270
+ )
271
+ end
272
+ attr_accessor :cardholder_first_name_result
273
+
274
+ # The result of the cardholder full name match.
275
+ sig do
276
+ returns(
277
+ T.nilable(
278
+ Increase::CardValidation::Acceptance::CardholderFullNameResult::TaggedSymbol
279
+ )
280
+ )
281
+ end
282
+ attr_accessor :cardholder_full_name_result
283
+
284
+ # The result of the cardholder last name match.
285
+ sig do
286
+ returns(
287
+ T.nilable(
288
+ Increase::CardValidation::Acceptance::CardholderLastNameResult::TaggedSymbol
289
+ )
290
+ )
291
+ end
292
+ attr_accessor :cardholder_last_name_result
293
+
294
+ # The result of the cardholder middle name match.
295
+ sig do
296
+ returns(
297
+ T.nilable(
298
+ Increase::CardValidation::Acceptance::CardholderMiddleNameResult::TaggedSymbol
299
+ )
300
+ )
301
+ end
302
+ attr_accessor :cardholder_middle_name_result
303
+
304
+ # The result of the cardholder postal code match.
305
+ sig do
306
+ returns(
307
+ T.nilable(
308
+ Increase::CardValidation::Acceptance::CardholderPostalCodeResult::TaggedSymbol
309
+ )
310
+ )
311
+ end
312
+ attr_accessor :cardholder_postal_code_result
313
+
314
+ # The result of the cardholder street address match.
315
+ sig do
316
+ returns(
317
+ T.nilable(
318
+ Increase::CardValidation::Acceptance::CardholderStreetAddressResult::TaggedSymbol
319
+ )
320
+ )
321
+ end
322
+ attr_accessor :cardholder_street_address_result
323
+
324
+ # A unique identifier for the transaction on the card network.
325
+ sig { returns(T.nilable(String)) }
326
+ attr_accessor :network_transaction_identifier
327
+
328
+ # If the validation is accepted by the recipient bank, this will contain
329
+ # supplemental details.
330
+ sig do
331
+ params(
332
+ accepted_at: Time,
333
+ authorization_identification_response: String,
334
+ card_verification_value2_result:
335
+ T.nilable(
336
+ Increase::CardValidation::Acceptance::CardVerificationValue2Result::OrSymbol
337
+ ),
338
+ cardholder_first_name_result:
339
+ T.nilable(
340
+ Increase::CardValidation::Acceptance::CardholderFirstNameResult::OrSymbol
341
+ ),
342
+ cardholder_full_name_result:
343
+ T.nilable(
344
+ Increase::CardValidation::Acceptance::CardholderFullNameResult::OrSymbol
345
+ ),
346
+ cardholder_last_name_result:
347
+ T.nilable(
348
+ Increase::CardValidation::Acceptance::CardholderLastNameResult::OrSymbol
349
+ ),
350
+ cardholder_middle_name_result:
351
+ T.nilable(
352
+ Increase::CardValidation::Acceptance::CardholderMiddleNameResult::OrSymbol
353
+ ),
354
+ cardholder_postal_code_result:
355
+ T.nilable(
356
+ Increase::CardValidation::Acceptance::CardholderPostalCodeResult::OrSymbol
357
+ ),
358
+ cardholder_street_address_result:
359
+ T.nilable(
360
+ Increase::CardValidation::Acceptance::CardholderStreetAddressResult::OrSymbol
361
+ ),
362
+ network_transaction_identifier: T.nilable(String)
363
+ ).returns(T.attached_class)
364
+ end
365
+ def self.new(
366
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
367
+ # the validation was accepted by the issuing bank.
368
+ accepted_at:,
369
+ # The authorization identification response from the issuing bank.
370
+ authorization_identification_response:,
371
+ # The result of the Card Verification Value 2 match.
372
+ card_verification_value2_result:,
373
+ # The result of the cardholder first name match.
374
+ cardholder_first_name_result:,
375
+ # The result of the cardholder full name match.
376
+ cardholder_full_name_result:,
377
+ # The result of the cardholder last name match.
378
+ cardholder_last_name_result:,
379
+ # The result of the cardholder middle name match.
380
+ cardholder_middle_name_result:,
381
+ # The result of the cardholder postal code match.
382
+ cardholder_postal_code_result:,
383
+ # The result of the cardholder street address match.
384
+ cardholder_street_address_result:,
385
+ # A unique identifier for the transaction on the card network.
386
+ network_transaction_identifier:
387
+ )
388
+ end
389
+
390
+ sig do
391
+ override.returns(
392
+ {
393
+ accepted_at: Time,
394
+ authorization_identification_response: String,
395
+ card_verification_value2_result:
396
+ T.nilable(
397
+ Increase::CardValidation::Acceptance::CardVerificationValue2Result::TaggedSymbol
398
+ ),
399
+ cardholder_first_name_result:
400
+ T.nilable(
401
+ Increase::CardValidation::Acceptance::CardholderFirstNameResult::TaggedSymbol
402
+ ),
403
+ cardholder_full_name_result:
404
+ T.nilable(
405
+ Increase::CardValidation::Acceptance::CardholderFullNameResult::TaggedSymbol
406
+ ),
407
+ cardholder_last_name_result:
408
+ T.nilable(
409
+ Increase::CardValidation::Acceptance::CardholderLastNameResult::TaggedSymbol
410
+ ),
411
+ cardholder_middle_name_result:
412
+ T.nilable(
413
+ Increase::CardValidation::Acceptance::CardholderMiddleNameResult::TaggedSymbol
414
+ ),
415
+ cardholder_postal_code_result:
416
+ T.nilable(
417
+ Increase::CardValidation::Acceptance::CardholderPostalCodeResult::TaggedSymbol
418
+ ),
419
+ cardholder_street_address_result:
420
+ T.nilable(
421
+ Increase::CardValidation::Acceptance::CardholderStreetAddressResult::TaggedSymbol
422
+ ),
423
+ network_transaction_identifier: T.nilable(String)
424
+ }
425
+ )
426
+ end
427
+ def to_hash
428
+ end
429
+
430
+ # The result of the Card Verification Value 2 match.
431
+ module CardVerificationValue2Result
432
+ extend Increase::Internal::Type::Enum
433
+
434
+ TaggedSymbol =
435
+ T.type_alias do
436
+ T.all(
437
+ Symbol,
438
+ Increase::CardValidation::Acceptance::CardVerificationValue2Result
439
+ )
440
+ end
441
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
442
+
443
+ # The Card Verification Value 2 (CVV2) matches the expected value.
444
+ MATCH =
445
+ T.let(
446
+ :match,
447
+ Increase::CardValidation::Acceptance::CardVerificationValue2Result::TaggedSymbol
448
+ )
449
+
450
+ # The Card Verification Value 2 (CVV2) does not match the expected value.
451
+ NO_MATCH =
452
+ T.let(
453
+ :no_match,
454
+ Increase::CardValidation::Acceptance::CardVerificationValue2Result::TaggedSymbol
455
+ )
456
+
457
+ sig do
458
+ override.returns(
459
+ T::Array[
460
+ Increase::CardValidation::Acceptance::CardVerificationValue2Result::TaggedSymbol
461
+ ]
462
+ )
463
+ end
464
+ def self.values
465
+ end
466
+ end
467
+
468
+ # The result of the cardholder first name match.
469
+ module CardholderFirstNameResult
470
+ extend Increase::Internal::Type::Enum
471
+
472
+ TaggedSymbol =
473
+ T.type_alias do
474
+ T.all(
475
+ Symbol,
476
+ Increase::CardValidation::Acceptance::CardholderFirstNameResult
477
+ )
478
+ end
479
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
480
+
481
+ # The cardholder name component matches the expected value.
482
+ MATCH =
483
+ T.let(
484
+ :match,
485
+ Increase::CardValidation::Acceptance::CardholderFirstNameResult::TaggedSymbol
486
+ )
487
+
488
+ # The cardholder name component does not match the expected value.
489
+ NO_MATCH =
490
+ T.let(
491
+ :no_match,
492
+ Increase::CardValidation::Acceptance::CardholderFirstNameResult::TaggedSymbol
493
+ )
494
+
495
+ # The cardholder name component partially matches the expected value.
496
+ PARTIAL_MATCH =
497
+ T.let(
498
+ :partial_match,
499
+ Increase::CardValidation::Acceptance::CardholderFirstNameResult::TaggedSymbol
500
+ )
501
+
502
+ sig do
503
+ override.returns(
504
+ T::Array[
505
+ Increase::CardValidation::Acceptance::CardholderFirstNameResult::TaggedSymbol
506
+ ]
507
+ )
508
+ end
509
+ def self.values
510
+ end
511
+ end
512
+
513
+ # The result of the cardholder full name match.
514
+ module CardholderFullNameResult
515
+ extend Increase::Internal::Type::Enum
516
+
517
+ TaggedSymbol =
518
+ T.type_alias do
519
+ T.all(
520
+ Symbol,
521
+ Increase::CardValidation::Acceptance::CardholderFullNameResult
522
+ )
523
+ end
524
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
525
+
526
+ # The cardholder name component matches the expected value.
527
+ MATCH =
528
+ T.let(
529
+ :match,
530
+ Increase::CardValidation::Acceptance::CardholderFullNameResult::TaggedSymbol
531
+ )
532
+
533
+ # The cardholder name component does not match the expected value.
534
+ NO_MATCH =
535
+ T.let(
536
+ :no_match,
537
+ Increase::CardValidation::Acceptance::CardholderFullNameResult::TaggedSymbol
538
+ )
539
+
540
+ # The cardholder name component partially matches the expected value.
541
+ PARTIAL_MATCH =
542
+ T.let(
543
+ :partial_match,
544
+ Increase::CardValidation::Acceptance::CardholderFullNameResult::TaggedSymbol
545
+ )
546
+
547
+ sig do
548
+ override.returns(
549
+ T::Array[
550
+ Increase::CardValidation::Acceptance::CardholderFullNameResult::TaggedSymbol
551
+ ]
552
+ )
553
+ end
554
+ def self.values
555
+ end
556
+ end
557
+
558
+ # The result of the cardholder last name match.
559
+ module CardholderLastNameResult
560
+ extend Increase::Internal::Type::Enum
561
+
562
+ TaggedSymbol =
563
+ T.type_alias do
564
+ T.all(
565
+ Symbol,
566
+ Increase::CardValidation::Acceptance::CardholderLastNameResult
567
+ )
568
+ end
569
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
570
+
571
+ # The cardholder name component matches the expected value.
572
+ MATCH =
573
+ T.let(
574
+ :match,
575
+ Increase::CardValidation::Acceptance::CardholderLastNameResult::TaggedSymbol
576
+ )
577
+
578
+ # The cardholder name component does not match the expected value.
579
+ NO_MATCH =
580
+ T.let(
581
+ :no_match,
582
+ Increase::CardValidation::Acceptance::CardholderLastNameResult::TaggedSymbol
583
+ )
584
+
585
+ # The cardholder name component partially matches the expected value.
586
+ PARTIAL_MATCH =
587
+ T.let(
588
+ :partial_match,
589
+ Increase::CardValidation::Acceptance::CardholderLastNameResult::TaggedSymbol
590
+ )
591
+
592
+ sig do
593
+ override.returns(
594
+ T::Array[
595
+ Increase::CardValidation::Acceptance::CardholderLastNameResult::TaggedSymbol
596
+ ]
597
+ )
598
+ end
599
+ def self.values
600
+ end
601
+ end
602
+
603
+ # The result of the cardholder middle name match.
604
+ module CardholderMiddleNameResult
605
+ extend Increase::Internal::Type::Enum
606
+
607
+ TaggedSymbol =
608
+ T.type_alias do
609
+ T.all(
610
+ Symbol,
611
+ Increase::CardValidation::Acceptance::CardholderMiddleNameResult
612
+ )
613
+ end
614
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
615
+
616
+ # The cardholder name component matches the expected value.
617
+ MATCH =
618
+ T.let(
619
+ :match,
620
+ Increase::CardValidation::Acceptance::CardholderMiddleNameResult::TaggedSymbol
621
+ )
622
+
623
+ # The cardholder name component does not match the expected value.
624
+ NO_MATCH =
625
+ T.let(
626
+ :no_match,
627
+ Increase::CardValidation::Acceptance::CardholderMiddleNameResult::TaggedSymbol
628
+ )
629
+
630
+ # The cardholder name component partially matches the expected value.
631
+ PARTIAL_MATCH =
632
+ T.let(
633
+ :partial_match,
634
+ Increase::CardValidation::Acceptance::CardholderMiddleNameResult::TaggedSymbol
635
+ )
636
+
637
+ sig do
638
+ override.returns(
639
+ T::Array[
640
+ Increase::CardValidation::Acceptance::CardholderMiddleNameResult::TaggedSymbol
641
+ ]
642
+ )
643
+ end
644
+ def self.values
645
+ end
646
+ end
647
+
648
+ # The result of the cardholder postal code match.
649
+ module CardholderPostalCodeResult
650
+ extend Increase::Internal::Type::Enum
651
+
652
+ TaggedSymbol =
653
+ T.type_alias do
654
+ T.all(
655
+ Symbol,
656
+ Increase::CardValidation::Acceptance::CardholderPostalCodeResult
657
+ )
658
+ end
659
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
660
+
661
+ # The cardholder address component matches the expected value.
662
+ MATCH =
663
+ T.let(
664
+ :match,
665
+ Increase::CardValidation::Acceptance::CardholderPostalCodeResult::TaggedSymbol
666
+ )
667
+
668
+ # The cardholder address component does not match the expected value.
669
+ NO_MATCH =
670
+ T.let(
671
+ :no_match,
672
+ Increase::CardValidation::Acceptance::CardholderPostalCodeResult::TaggedSymbol
673
+ )
674
+
675
+ sig do
676
+ override.returns(
677
+ T::Array[
678
+ Increase::CardValidation::Acceptance::CardholderPostalCodeResult::TaggedSymbol
679
+ ]
680
+ )
681
+ end
682
+ def self.values
683
+ end
684
+ end
685
+
686
+ # The result of the cardholder street address match.
687
+ module CardholderStreetAddressResult
688
+ extend Increase::Internal::Type::Enum
689
+
690
+ TaggedSymbol =
691
+ T.type_alias do
692
+ T.all(
693
+ Symbol,
694
+ Increase::CardValidation::Acceptance::CardholderStreetAddressResult
695
+ )
696
+ end
697
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
698
+
699
+ # The cardholder address component matches the expected value.
700
+ MATCH =
701
+ T.let(
702
+ :match,
703
+ Increase::CardValidation::Acceptance::CardholderStreetAddressResult::TaggedSymbol
704
+ )
705
+
706
+ # The cardholder address component does not match the expected value.
707
+ NO_MATCH =
708
+ T.let(
709
+ :no_match,
710
+ Increase::CardValidation::Acceptance::CardholderStreetAddressResult::TaggedSymbol
711
+ )
712
+
713
+ sig do
714
+ override.returns(
715
+ T::Array[
716
+ Increase::CardValidation::Acceptance::CardholderStreetAddressResult::TaggedSymbol
717
+ ]
718
+ )
719
+ end
720
+ def self.values
721
+ end
722
+ end
723
+ end
724
+
725
+ class CreatedBy < Increase::Internal::Type::BaseModel
726
+ OrHash =
727
+ T.type_alias do
728
+ T.any(
729
+ Increase::CardValidation::CreatedBy,
730
+ Increase::Internal::AnyHash
731
+ )
732
+ end
733
+
734
+ # If present, details about the API key that created the transfer.
735
+ sig { returns(T.nilable(Increase::CardValidation::CreatedBy::APIKey)) }
736
+ attr_reader :api_key
737
+
738
+ sig do
739
+ params(
740
+ api_key:
741
+ T.nilable(Increase::CardValidation::CreatedBy::APIKey::OrHash)
742
+ ).void
743
+ end
744
+ attr_writer :api_key
745
+
746
+ # The type of object that created this transfer.
747
+ sig do
748
+ returns(Increase::CardValidation::CreatedBy::Category::TaggedSymbol)
749
+ end
750
+ attr_accessor :category
751
+
752
+ # If present, details about the OAuth Application that created the transfer.
753
+ sig do
754
+ returns(
755
+ T.nilable(Increase::CardValidation::CreatedBy::OAuthApplication)
756
+ )
757
+ end
758
+ attr_reader :oauth_application
759
+
760
+ sig do
761
+ params(
762
+ oauth_application:
763
+ T.nilable(
764
+ Increase::CardValidation::CreatedBy::OAuthApplication::OrHash
765
+ )
766
+ ).void
767
+ end
768
+ attr_writer :oauth_application
769
+
770
+ # If present, details about the User that created the transfer.
771
+ sig { returns(T.nilable(Increase::CardValidation::CreatedBy::User)) }
772
+ attr_reader :user
773
+
774
+ sig do
775
+ params(
776
+ user: T.nilable(Increase::CardValidation::CreatedBy::User::OrHash)
777
+ ).void
778
+ end
779
+ attr_writer :user
780
+
781
+ # What object created the validation, either via the API or the dashboard.
782
+ sig do
783
+ params(
784
+ api_key:
785
+ T.nilable(Increase::CardValidation::CreatedBy::APIKey::OrHash),
786
+ category: Increase::CardValidation::CreatedBy::Category::OrSymbol,
787
+ oauth_application:
788
+ T.nilable(
789
+ Increase::CardValidation::CreatedBy::OAuthApplication::OrHash
790
+ ),
791
+ user: T.nilable(Increase::CardValidation::CreatedBy::User::OrHash)
792
+ ).returns(T.attached_class)
793
+ end
794
+ def self.new(
795
+ # If present, details about the API key that created the transfer.
796
+ api_key:,
797
+ # The type of object that created this transfer.
798
+ category:,
799
+ # If present, details about the OAuth Application that created the transfer.
800
+ oauth_application:,
801
+ # If present, details about the User that created the transfer.
802
+ user:
803
+ )
804
+ end
805
+
806
+ sig do
807
+ override.returns(
808
+ {
809
+ api_key: T.nilable(Increase::CardValidation::CreatedBy::APIKey),
810
+ category:
811
+ Increase::CardValidation::CreatedBy::Category::TaggedSymbol,
812
+ oauth_application:
813
+ T.nilable(
814
+ Increase::CardValidation::CreatedBy::OAuthApplication
815
+ ),
816
+ user: T.nilable(Increase::CardValidation::CreatedBy::User)
817
+ }
818
+ )
819
+ end
820
+ def to_hash
821
+ end
822
+
823
+ class APIKey < Increase::Internal::Type::BaseModel
824
+ OrHash =
825
+ T.type_alias do
826
+ T.any(
827
+ Increase::CardValidation::CreatedBy::APIKey,
828
+ Increase::Internal::AnyHash
829
+ )
830
+ end
831
+
832
+ # The description set for the API key when it was created.
833
+ sig { returns(T.nilable(String)) }
834
+ attr_accessor :description
835
+
836
+ # If present, details about the API key that created the transfer.
837
+ sig do
838
+ params(description: T.nilable(String)).returns(T.attached_class)
839
+ end
840
+ def self.new(
841
+ # The description set for the API key when it was created.
842
+ description:
843
+ )
844
+ end
845
+
846
+ sig { override.returns({ description: T.nilable(String) }) }
847
+ def to_hash
848
+ end
849
+ end
850
+
851
+ # The type of object that created this transfer.
852
+ module Category
853
+ extend Increase::Internal::Type::Enum
854
+
855
+ TaggedSymbol =
856
+ T.type_alias do
857
+ T.all(Symbol, Increase::CardValidation::CreatedBy::Category)
858
+ end
859
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
860
+
861
+ # An API key. Details will be under the `api_key` object.
862
+ API_KEY =
863
+ T.let(
864
+ :api_key,
865
+ Increase::CardValidation::CreatedBy::Category::TaggedSymbol
866
+ )
867
+
868
+ # An OAuth application you connected to Increase. Details will be under the `oauth_application` object.
869
+ OAUTH_APPLICATION =
870
+ T.let(
871
+ :oauth_application,
872
+ Increase::CardValidation::CreatedBy::Category::TaggedSymbol
873
+ )
874
+
875
+ # A User in the Increase dashboard. Details will be under the `user` object.
876
+ USER =
877
+ T.let(
878
+ :user,
879
+ Increase::CardValidation::CreatedBy::Category::TaggedSymbol
880
+ )
881
+
882
+ sig do
883
+ override.returns(
884
+ T::Array[
885
+ Increase::CardValidation::CreatedBy::Category::TaggedSymbol
886
+ ]
887
+ )
888
+ end
889
+ def self.values
890
+ end
891
+ end
892
+
893
+ class OAuthApplication < Increase::Internal::Type::BaseModel
894
+ OrHash =
895
+ T.type_alias do
896
+ T.any(
897
+ Increase::CardValidation::CreatedBy::OAuthApplication,
898
+ Increase::Internal::AnyHash
899
+ )
900
+ end
901
+
902
+ # The name of the OAuth Application.
903
+ sig { returns(String) }
904
+ attr_accessor :name
905
+
906
+ # If present, details about the OAuth Application that created the transfer.
907
+ sig { params(name: String).returns(T.attached_class) }
908
+ def self.new(
909
+ # The name of the OAuth Application.
910
+ name:
911
+ )
912
+ end
913
+
914
+ sig { override.returns({ name: String }) }
915
+ def to_hash
916
+ end
917
+ end
918
+
919
+ class User < Increase::Internal::Type::BaseModel
920
+ OrHash =
921
+ T.type_alias do
922
+ T.any(
923
+ Increase::CardValidation::CreatedBy::User,
924
+ Increase::Internal::AnyHash
925
+ )
926
+ end
927
+
928
+ # The email address of the User.
929
+ sig { returns(String) }
930
+ attr_accessor :email
931
+
932
+ # If present, details about the User that created the transfer.
933
+ sig { params(email: String).returns(T.attached_class) }
934
+ def self.new(
935
+ # The email address of the User.
936
+ email:
937
+ )
938
+ end
939
+
940
+ sig { override.returns({ email: String }) }
941
+ def to_hash
942
+ end
943
+ end
944
+ end
945
+
946
+ class Decline < Increase::Internal::Type::BaseModel
947
+ OrHash =
948
+ T.type_alias do
949
+ T.any(
950
+ Increase::CardValidation::Decline,
951
+ Increase::Internal::AnyHash
952
+ )
953
+ end
954
+
955
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
956
+ # the validation was declined.
957
+ sig { returns(Time) }
958
+ attr_accessor :declined_at
959
+
960
+ # A unique identifier for the transaction on the card network.
961
+ sig { returns(T.nilable(String)) }
962
+ attr_accessor :network_transaction_identifier
963
+
964
+ # The reason why the validation was declined.
965
+ sig { returns(Increase::CardValidation::Decline::Reason::TaggedSymbol) }
966
+ attr_accessor :reason
967
+
968
+ # If the validation is rejected by the card network or the destination financial
969
+ # institution, this will contain supplemental details.
970
+ sig do
971
+ params(
972
+ declined_at: Time,
973
+ network_transaction_identifier: T.nilable(String),
974
+ reason: Increase::CardValidation::Decline::Reason::OrSymbol
975
+ ).returns(T.attached_class)
976
+ end
977
+ def self.new(
978
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
979
+ # the validation was declined.
980
+ declined_at:,
981
+ # A unique identifier for the transaction on the card network.
982
+ network_transaction_identifier:,
983
+ # The reason why the validation was declined.
984
+ reason:
985
+ )
986
+ end
987
+
988
+ sig do
989
+ override.returns(
990
+ {
991
+ declined_at: Time,
992
+ network_transaction_identifier: T.nilable(String),
993
+ reason: Increase::CardValidation::Decline::Reason::TaggedSymbol
994
+ }
995
+ )
996
+ end
997
+ def to_hash
998
+ end
999
+
1000
+ # The reason why the validation was declined.
1001
+ module Reason
1002
+ extend Increase::Internal::Type::Enum
1003
+
1004
+ TaggedSymbol =
1005
+ T.type_alias do
1006
+ T.all(Symbol, Increase::CardValidation::Decline::Reason)
1007
+ end
1008
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1009
+
1010
+ # The card issuer has declined the transaction without providing a specific reason.
1011
+ DO_NOT_HONOR =
1012
+ T.let(
1013
+ :do_not_honor,
1014
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1015
+ )
1016
+
1017
+ # The number of transactions for the card has exceeded the limit set by the issuer.
1018
+ ACTIVITY_COUNT_LIMIT_EXCEEDED =
1019
+ T.let(
1020
+ :activity_count_limit_exceeded,
1021
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1022
+ )
1023
+
1024
+ # The card issuer requires the cardholder to contact them for further information regarding the transaction.
1025
+ REFER_TO_CARD_ISSUER =
1026
+ T.let(
1027
+ :refer_to_card_issuer,
1028
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1029
+ )
1030
+
1031
+ # The card issuer requires the cardholder to contact them due to a special condition related to the transaction.
1032
+ REFER_TO_CARD_ISSUER_SPECIAL_CONDITION =
1033
+ T.let(
1034
+ :refer_to_card_issuer_special_condition,
1035
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1036
+ )
1037
+
1038
+ # The merchant is not valid for this transaction.
1039
+ INVALID_MERCHANT =
1040
+ T.let(
1041
+ :invalid_merchant,
1042
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1043
+ )
1044
+
1045
+ # The card should be retained by the terminal.
1046
+ PICK_UP_CARD =
1047
+ T.let(
1048
+ :pick_up_card,
1049
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1050
+ )
1051
+
1052
+ # An error occurred during processing of the transaction.
1053
+ ERROR =
1054
+ T.let(
1055
+ :error,
1056
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1057
+ )
1058
+
1059
+ # The card should be retained by the terminal due to a special condition.
1060
+ PICK_UP_CARD_SPECIAL =
1061
+ T.let(
1062
+ :pick_up_card_special,
1063
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1064
+ )
1065
+
1066
+ # The transaction is invalid and cannot be processed.
1067
+ INVALID_TRANSACTION =
1068
+ T.let(
1069
+ :invalid_transaction,
1070
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1071
+ )
1072
+
1073
+ # The amount of the transaction is invalid.
1074
+ INVALID_AMOUNT =
1075
+ T.let(
1076
+ :invalid_amount,
1077
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1078
+ )
1079
+
1080
+ # The account number provided is invalid.
1081
+ INVALID_ACCOUNT_NUMBER =
1082
+ T.let(
1083
+ :invalid_account_number,
1084
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1085
+ )
1086
+
1087
+ # The issuer of the card could not be found.
1088
+ NO_SUCH_ISSUER =
1089
+ T.let(
1090
+ :no_such_issuer,
1091
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1092
+ )
1093
+
1094
+ # The transaction should be re-entered for processing.
1095
+ RE_ENTER_TRANSACTION =
1096
+ T.let(
1097
+ :re_enter_transaction,
1098
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1099
+ )
1100
+
1101
+ # There is no credit account associated with the card.
1102
+ NO_CREDIT_ACCOUNT =
1103
+ T.let(
1104
+ :no_credit_account,
1105
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1106
+ )
1107
+
1108
+ # The card should be retained by the terminal because it has been reported lost.
1109
+ PICK_UP_CARD_LOST =
1110
+ T.let(
1111
+ :pick_up_card_lost,
1112
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1113
+ )
1114
+
1115
+ # The card should be retained by the terminal because it has been reported stolen.
1116
+ PICK_UP_CARD_STOLEN =
1117
+ T.let(
1118
+ :pick_up_card_stolen,
1119
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1120
+ )
1121
+
1122
+ # The account associated with the card has been closed.
1123
+ CLOSED_ACCOUNT =
1124
+ T.let(
1125
+ :closed_account,
1126
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1127
+ )
1128
+
1129
+ # There are insufficient funds in the account to complete the transaction.
1130
+ INSUFFICIENT_FUNDS =
1131
+ T.let(
1132
+ :insufficient_funds,
1133
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1134
+ )
1135
+
1136
+ # There is no checking account associated with the card.
1137
+ NO_CHECKING_ACCOUNT =
1138
+ T.let(
1139
+ :no_checking_account,
1140
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1141
+ )
1142
+
1143
+ # There is no savings account associated with the card.
1144
+ NO_SAVINGS_ACCOUNT =
1145
+ T.let(
1146
+ :no_savings_account,
1147
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1148
+ )
1149
+
1150
+ # The card has expired and cannot be used for transactions.
1151
+ EXPIRED_CARD =
1152
+ T.let(
1153
+ :expired_card,
1154
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1155
+ )
1156
+
1157
+ # The transaction is not permitted for this cardholder.
1158
+ TRANSACTION_NOT_PERMITTED_TO_CARDHOLDER =
1159
+ T.let(
1160
+ :transaction_not_permitted_to_cardholder,
1161
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1162
+ )
1163
+
1164
+ # The transaction is not allowed at this terminal.
1165
+ TRANSACTION_NOT_ALLOWED_AT_TERMINAL =
1166
+ T.let(
1167
+ :transaction_not_allowed_at_terminal,
1168
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1169
+ )
1170
+
1171
+ # The transaction has been flagged as suspected fraud and cannot be processed.
1172
+ SUSPECTED_FRAUD =
1173
+ T.let(
1174
+ :suspected_fraud,
1175
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1176
+ )
1177
+
1178
+ # The amount of activity on the card has exceeded the limit set by the issuer.
1179
+ ACTIVITY_AMOUNT_LIMIT_EXCEEDED =
1180
+ T.let(
1181
+ :activity_amount_limit_exceeded,
1182
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1183
+ )
1184
+
1185
+ # The card has restrictions that prevent it from being used for this transaction.
1186
+ RESTRICTED_CARD =
1187
+ T.let(
1188
+ :restricted_card,
1189
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1190
+ )
1191
+
1192
+ # A security violation has occurred, preventing the transaction from being processed.
1193
+ SECURITY_VIOLATION =
1194
+ T.let(
1195
+ :security_violation,
1196
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1197
+ )
1198
+
1199
+ # The transaction does not meet the anti-money laundering requirements set by the issuer.
1200
+ TRANSACTION_DOES_NOT_FULFILL_ANTI_MONEY_LAUNDERING_REQUIREMENT =
1201
+ T.let(
1202
+ :transaction_does_not_fulfill_anti_money_laundering_requirement,
1203
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1204
+ )
1205
+
1206
+ # The first use of the card has been blocked by the issuer.
1207
+ BLOCKED_FIRST_USE =
1208
+ T.let(
1209
+ :blocked_first_use,
1210
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1211
+ )
1212
+
1213
+ # The credit issuer is currently unavailable to process the transaction.
1214
+ CREDIT_ISSUER_UNAVAILABLE =
1215
+ T.let(
1216
+ :credit_issuer_unavailable,
1217
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1218
+ )
1219
+
1220
+ # The card verification value (CVV) results were negative, indicating a potential issue with the card.
1221
+ NEGATIVE_CARD_VERIFICATION_VALUE_RESULTS =
1222
+ T.let(
1223
+ :negative_card_verification_value_results,
1224
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1225
+ )
1226
+
1227
+ # The issuer of the card is currently unavailable to process the transaction.
1228
+ ISSUER_UNAVAILABLE =
1229
+ T.let(
1230
+ :issuer_unavailable,
1231
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1232
+ )
1233
+
1234
+ # The financial institution associated with the card could not be found.
1235
+ FINANCIAL_INSTITUTION_CANNOT_BE_FOUND =
1236
+ T.let(
1237
+ :financial_institution_cannot_be_found,
1238
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1239
+ )
1240
+
1241
+ # The transaction cannot be completed due to an unspecified reason.
1242
+ TRANSACTION_CANNOT_BE_COMPLETED =
1243
+ T.let(
1244
+ :transaction_cannot_be_completed,
1245
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1246
+ )
1247
+
1248
+ # The transaction is a duplicate of a previous transaction and cannot be processed again.
1249
+ DUPLICATE_TRANSACTION =
1250
+ T.let(
1251
+ :duplicate_transaction,
1252
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1253
+ )
1254
+
1255
+ # A system malfunction occurred, preventing the transaction from being processed.
1256
+ SYSTEM_MALFUNCTION =
1257
+ T.let(
1258
+ :system_malfunction,
1259
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1260
+ )
1261
+
1262
+ # Additional customer authentication is required to complete the transaction.
1263
+ ADDITIONAL_CUSTOMER_AUTHENTICATION_REQUIRED =
1264
+ T.let(
1265
+ :additional_customer_authentication_required,
1266
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1267
+ )
1268
+
1269
+ # The surcharge amount applied to the transaction is not permitted by the issuer.
1270
+ SURCHARGE_AMOUNT_NOT_PERMITTED =
1271
+ T.let(
1272
+ :surcharge_amount_not_permitted,
1273
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1274
+ )
1275
+
1276
+ # The transaction was declined due to a failure in verifying the CVV2 code.
1277
+ DECLINE_FOR_CVV2_FAILURE =
1278
+ T.let(
1279
+ :decline_for_cvv2_failure,
1280
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1281
+ )
1282
+
1283
+ # A stop payment order has been placed on this transaction.
1284
+ STOP_PAYMENT_ORDER =
1285
+ T.let(
1286
+ :stop_payment_order,
1287
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1288
+ )
1289
+
1290
+ # An order has been placed to revoke authorization for this transaction.
1291
+ REVOCATION_OF_AUTHORIZATION_ORDER =
1292
+ T.let(
1293
+ :revocation_of_authorization_order,
1294
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1295
+ )
1296
+
1297
+ # An order has been placed to revoke all authorizations for this cardholder.
1298
+ REVOCATION_OF_ALL_AUTHORIZATIONS_ORDER =
1299
+ T.let(
1300
+ :revocation_of_all_authorizations_order,
1301
+ Increase::CardValidation::Decline::Reason::TaggedSymbol
1302
+ )
1303
+
1304
+ sig do
1305
+ override.returns(
1306
+ T::Array[Increase::CardValidation::Decline::Reason::TaggedSymbol]
1307
+ )
1308
+ end
1309
+ def self.values
1310
+ end
1311
+ end
1312
+ end
1313
+
1314
+ # The lifecycle status of the validation.
1315
+ module Status
1316
+ extend Increase::Internal::Type::Enum
1317
+
1318
+ TaggedSymbol =
1319
+ T.type_alias { T.all(Symbol, Increase::CardValidation::Status) }
1320
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1321
+
1322
+ # The validation requires attention from an Increase operator.
1323
+ REQUIRES_ATTENTION =
1324
+ T.let(
1325
+ :requires_attention,
1326
+ Increase::CardValidation::Status::TaggedSymbol
1327
+ )
1328
+
1329
+ # The validation is queued to be submitted to the card network.
1330
+ PENDING_SUBMISSION =
1331
+ T.let(
1332
+ :pending_submission,
1333
+ Increase::CardValidation::Status::TaggedSymbol
1334
+ )
1335
+
1336
+ # The validation has been submitted and is pending a response from the card network.
1337
+ SUBMITTED =
1338
+ T.let(:submitted, Increase::CardValidation::Status::TaggedSymbol)
1339
+
1340
+ # The validation has been sent successfully and is complete.
1341
+ COMPLETE =
1342
+ T.let(:complete, Increase::CardValidation::Status::TaggedSymbol)
1343
+
1344
+ # The validation was declined by the network or the recipient's bank.
1345
+ DECLINED =
1346
+ T.let(:declined, Increase::CardValidation::Status::TaggedSymbol)
1347
+
1348
+ sig do
1349
+ override.returns(
1350
+ T::Array[Increase::CardValidation::Status::TaggedSymbol]
1351
+ )
1352
+ end
1353
+ def self.values
1354
+ end
1355
+ end
1356
+
1357
+ class Submission < Increase::Internal::Type::BaseModel
1358
+ OrHash =
1359
+ T.type_alias do
1360
+ T.any(
1361
+ Increase::CardValidation::Submission,
1362
+ Increase::Internal::AnyHash
1363
+ )
1364
+ end
1365
+
1366
+ # A 12-digit retrieval reference number that identifies the validation. Usually a
1367
+ # combination of a timestamp and the trace number.
1368
+ sig { returns(String) }
1369
+ attr_accessor :retrieval_reference_number
1370
+
1371
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
1372
+ # the validation was submitted to the card network.
1373
+ sig { returns(Time) }
1374
+ attr_accessor :submitted_at
1375
+
1376
+ # A 6-digit trace number that identifies the validation within a short time
1377
+ # window.
1378
+ sig { returns(String) }
1379
+ attr_accessor :trace_number
1380
+
1381
+ # After the validation is submitted to the card network, this will contain
1382
+ # supplemental details.
1383
+ sig do
1384
+ params(
1385
+ retrieval_reference_number: String,
1386
+ submitted_at: Time,
1387
+ trace_number: String
1388
+ ).returns(T.attached_class)
1389
+ end
1390
+ def self.new(
1391
+ # A 12-digit retrieval reference number that identifies the validation. Usually a
1392
+ # combination of a timestamp and the trace number.
1393
+ retrieval_reference_number:,
1394
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
1395
+ # the validation was submitted to the card network.
1396
+ submitted_at:,
1397
+ # A 6-digit trace number that identifies the validation within a short time
1398
+ # window.
1399
+ trace_number:
1400
+ )
1401
+ end
1402
+
1403
+ sig do
1404
+ override.returns(
1405
+ {
1406
+ retrieval_reference_number: String,
1407
+ submitted_at: Time,
1408
+ trace_number: String
1409
+ }
1410
+ )
1411
+ end
1412
+ def to_hash
1413
+ end
1414
+ end
1415
+
1416
+ # A constant representing the object's type. For this resource it will always be
1417
+ # `card_validation`.
1418
+ module Type
1419
+ extend Increase::Internal::Type::Enum
1420
+
1421
+ TaggedSymbol =
1422
+ T.type_alias { T.all(Symbol, Increase::CardValidation::Type) }
1423
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1424
+
1425
+ CARD_VALIDATION =
1426
+ T.let(:card_validation, Increase::CardValidation::Type::TaggedSymbol)
1427
+
1428
+ sig do
1429
+ override.returns(
1430
+ T::Array[Increase::CardValidation::Type::TaggedSymbol]
1431
+ )
1432
+ end
1433
+ def self.values
1434
+ end
1435
+ end
1436
+ end
1437
+ end
1438
+ end