increase 1.98.0 → 1.100.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 (45) 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 +4 -0
  5. data/lib/increase/models/card_dispute.rb +5021 -0
  6. data/lib/increase/models/card_dispute_create_params.rb +3265 -0
  7. data/lib/increase/models/card_dispute_list_params.rb +147 -0
  8. data/lib/increase/models/card_dispute_retrieve_params.rb +14 -0
  9. data/lib/increase/models/card_dispute_submit_user_submission_params.rb +3469 -0
  10. data/lib/increase/models/card_dispute_withdraw_params.rb +14 -0
  11. data/lib/increase/models/card_payment.rb +13 -4
  12. data/lib/increase/models/simulations/card_dispute_action_params.rb +214 -0
  13. data/lib/increase/models.rb +12 -0
  14. data/lib/increase/resources/card_disputes.rb +154 -0
  15. data/lib/increase/resources/simulations/card_disputes.rb +48 -0
  16. data/lib/increase/resources/simulations.rb +4 -0
  17. data/lib/increase/version.rb +1 -1
  18. data/lib/increase.rb +9 -0
  19. data/rbi/increase/client.rbi +3 -0
  20. data/rbi/increase/models/card_dispute.rbi +10100 -0
  21. data/rbi/increase/models/card_dispute_create_params.rbi +6745 -0
  22. data/rbi/increase/models/card_dispute_list_params.rbi +296 -0
  23. data/rbi/increase/models/card_dispute_retrieve_params.rbi +30 -0
  24. data/rbi/increase/models/card_dispute_submit_user_submission_params.rbi +7253 -0
  25. data/rbi/increase/models/card_dispute_withdraw_params.rbi +30 -0
  26. data/rbi/increase/models/card_payment.rbi +14 -4
  27. data/rbi/increase/models/simulations/card_dispute_action_params.rbi +419 -0
  28. data/rbi/increase/models.rbi +13 -0
  29. data/rbi/increase/resources/card_disputes.rbi +136 -0
  30. data/rbi/increase/resources/simulations/card_disputes.rbi +40 -0
  31. data/rbi/increase/resources/simulations.rbi +3 -0
  32. data/sig/increase/client.rbs +2 -0
  33. data/sig/increase/models/card_dispute.rbs +3913 -0
  34. data/sig/increase/models/card_dispute_create_params.rbs +2889 -0
  35. data/sig/increase/models/card_dispute_list_params.rbs +150 -0
  36. data/sig/increase/models/card_dispute_retrieve_params.rbs +15 -0
  37. data/sig/increase/models/card_dispute_submit_user_submission_params.rbs +3089 -0
  38. data/sig/increase/models/card_dispute_withdraw_params.rbs +15 -0
  39. data/sig/increase/models/card_payment.rbs +5 -0
  40. data/sig/increase/models/simulations/card_dispute_action_params.rbs +195 -0
  41. data/sig/increase/models.rbs +12 -0
  42. data/sig/increase/resources/card_disputes.rbs +44 -0
  43. data/sig/increase/resources/simulations/card_disputes.rbs +16 -0
  44. data/sig/increase/resources/simulations.rbs +2 -0
  45. metadata +29 -2
@@ -0,0 +1,30 @@
1
+ # typed: strong
2
+
3
+ module Increase
4
+ module Models
5
+ class CardDisputeWithdrawParams < Increase::Internal::Type::BaseModel
6
+ extend Increase::Internal::Type::RequestParameters::Converter
7
+ include Increase::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Increase::CardDisputeWithdrawParams,
13
+ Increase::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig do
18
+ params(request_options: Increase::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
23
+ end
24
+
25
+ sig { override.returns({ request_options: Increase::RequestOptions }) }
26
+ def to_hash
27
+ end
28
+ end
29
+ end
30
+ end
@@ -14918,13 +14918,18 @@ module Increase
14918
14918
  sig { returns(Integer) }
14919
14919
  attr_accessor :incremented_amount
14920
14920
 
14921
+ # The total refunded amount in the minor unit of the transaction's currency. For
14922
+ # dollars, for example, this is cents.
14923
+ sig { returns(Integer) }
14924
+ attr_accessor :refunded_amount
14925
+
14921
14926
  # The total reversed amount in the minor unit of the transaction's currency. For
14922
14927
  # dollars, for example, this is cents.
14923
14928
  sig { returns(Integer) }
14924
14929
  attr_accessor :reversed_amount
14925
14930
 
14926
- # The total settled or refunded amount in the minor unit of the transaction's
14927
- # currency. For dollars, for example, this is cents.
14931
+ # The total settled amount in the minor unit of the transaction's currency. For
14932
+ # dollars, for example, this is cents.
14928
14933
  sig { returns(Integer) }
14929
14934
  attr_accessor :settled_amount
14930
14935
 
@@ -14934,6 +14939,7 @@ module Increase
14934
14939
  authorized_amount: Integer,
14935
14940
  fuel_confirmed_amount: Integer,
14936
14941
  incremented_amount: Integer,
14942
+ refunded_amount: Integer,
14937
14943
  reversed_amount: Integer,
14938
14944
  settled_amount: Integer
14939
14945
  ).returns(T.attached_class)
@@ -14948,11 +14954,14 @@ module Increase
14948
14954
  # The total incrementally updated authorized amount in the minor unit of the
14949
14955
  # transaction's currency. For dollars, for example, this is cents.
14950
14956
  incremented_amount:,
14957
+ # The total refunded amount in the minor unit of the transaction's currency. For
14958
+ # dollars, for example, this is cents.
14959
+ refunded_amount:,
14951
14960
  # The total reversed amount in the minor unit of the transaction's currency. For
14952
14961
  # dollars, for example, this is cents.
14953
14962
  reversed_amount:,
14954
- # The total settled or refunded amount in the minor unit of the transaction's
14955
- # currency. For dollars, for example, this is cents.
14963
+ # The total settled amount in the minor unit of the transaction's currency. For
14964
+ # dollars, for example, this is cents.
14956
14965
  settled_amount:
14957
14966
  )
14958
14967
  end
@@ -14963,6 +14972,7 @@ module Increase
14963
14972
  authorized_amount: Integer,
14964
14973
  fuel_confirmed_amount: Integer,
14965
14974
  incremented_amount: Integer,
14975
+ refunded_amount: Integer,
14966
14976
  reversed_amount: Integer,
14967
14977
  settled_amount: Integer
14968
14978
  }
@@ -0,0 +1,419 @@
1
+ # typed: strong
2
+
3
+ module Increase
4
+ module Models
5
+ module Simulations
6
+ class CardDisputeActionParams < Increase::Internal::Type::BaseModel
7
+ extend Increase::Internal::Type::RequestParameters::Converter
8
+ include Increase::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ Increase::Simulations::CardDisputeActionParams,
14
+ Increase::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ # The network of the Card Dispute. Details specific to the network are required
19
+ # under the sub-object with the same identifier as the network.
20
+ sig do
21
+ returns(
22
+ Increase::Simulations::CardDisputeActionParams::Network::OrSymbol
23
+ )
24
+ end
25
+ attr_accessor :network
26
+
27
+ # The Visa-specific parameters for the taking action on the dispute. Required if
28
+ # and only if `network` is `visa`.
29
+ sig do
30
+ returns(
31
+ T.nilable(Increase::Simulations::CardDisputeActionParams::Visa)
32
+ )
33
+ end
34
+ attr_reader :visa
35
+
36
+ sig do
37
+ params(
38
+ visa: Increase::Simulations::CardDisputeActionParams::Visa::OrHash
39
+ ).void
40
+ end
41
+ attr_writer :visa
42
+
43
+ sig do
44
+ params(
45
+ network:
46
+ Increase::Simulations::CardDisputeActionParams::Network::OrSymbol,
47
+ visa: Increase::Simulations::CardDisputeActionParams::Visa::OrHash,
48
+ request_options: Increase::RequestOptions::OrHash
49
+ ).returns(T.attached_class)
50
+ end
51
+ def self.new(
52
+ # The network of the Card Dispute. Details specific to the network are required
53
+ # under the sub-object with the same identifier as the network.
54
+ network:,
55
+ # The Visa-specific parameters for the taking action on the dispute. Required if
56
+ # and only if `network` is `visa`.
57
+ visa: nil,
58
+ request_options: {}
59
+ )
60
+ end
61
+
62
+ sig do
63
+ override.returns(
64
+ {
65
+ network:
66
+ Increase::Simulations::CardDisputeActionParams::Network::OrSymbol,
67
+ visa: Increase::Simulations::CardDisputeActionParams::Visa,
68
+ request_options: Increase::RequestOptions
69
+ }
70
+ )
71
+ end
72
+ def to_hash
73
+ end
74
+
75
+ # The network of the Card Dispute. Details specific to the network are required
76
+ # under the sub-object with the same identifier as the network.
77
+ module Network
78
+ extend Increase::Internal::Type::Enum
79
+
80
+ TaggedSymbol =
81
+ T.type_alias do
82
+ T.all(
83
+ Symbol,
84
+ Increase::Simulations::CardDisputeActionParams::Network
85
+ )
86
+ end
87
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
88
+
89
+ # Visa
90
+ VISA =
91
+ T.let(
92
+ :visa,
93
+ Increase::Simulations::CardDisputeActionParams::Network::TaggedSymbol
94
+ )
95
+
96
+ sig do
97
+ override.returns(
98
+ T::Array[
99
+ Increase::Simulations::CardDisputeActionParams::Network::TaggedSymbol
100
+ ]
101
+ )
102
+ end
103
+ def self.values
104
+ end
105
+ end
106
+
107
+ class Visa < Increase::Internal::Type::BaseModel
108
+ OrHash =
109
+ T.type_alias do
110
+ T.any(
111
+ Increase::Simulations::CardDisputeActionParams::Visa,
112
+ Increase::Internal::AnyHash
113
+ )
114
+ end
115
+
116
+ # The action to take. Details specific to the action are required under the
117
+ # sub-object with the same identifier as the action.
118
+ sig do
119
+ returns(
120
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::OrSymbol
121
+ )
122
+ end
123
+ attr_accessor :action
124
+
125
+ # The parameters for accepting the chargeback. Required if and only if `action` is
126
+ # `accept_chargeback`.
127
+ sig { returns(T.nilable(T.anything)) }
128
+ attr_reader :accept_chargeback
129
+
130
+ sig { params(accept_chargeback: T.anything).void }
131
+ attr_writer :accept_chargeback
132
+
133
+ # The parameters for accepting the user submission. Required if and only if
134
+ # `action` is `accept_user_submission`.
135
+ sig { returns(T.nilable(T.anything)) }
136
+ attr_reader :accept_user_submission
137
+
138
+ sig { params(accept_user_submission: T.anything).void }
139
+ attr_writer :accept_user_submission
140
+
141
+ # The parameters for declining the prearbitration. Required if and only if
142
+ # `action` is `decline_user_prearbitration`.
143
+ sig { returns(T.nilable(T.anything)) }
144
+ attr_reader :decline_user_prearbitration
145
+
146
+ sig { params(decline_user_prearbitration: T.anything).void }
147
+ attr_writer :decline_user_prearbitration
148
+
149
+ # The parameters for receiving the prearbitration. Required if and only if
150
+ # `action` is `receive_merchant_prearbitration`.
151
+ sig { returns(T.nilable(T.anything)) }
152
+ attr_reader :receive_merchant_prearbitration
153
+
154
+ sig { params(receive_merchant_prearbitration: T.anything).void }
155
+ attr_writer :receive_merchant_prearbitration
156
+
157
+ # The parameters for re-presenting the dispute. Required if and only if `action`
158
+ # is `represent`.
159
+ sig { returns(T.nilable(T.anything)) }
160
+ attr_reader :represent
161
+
162
+ sig { params(represent: T.anything).void }
163
+ attr_writer :represent
164
+
165
+ # The parameters for requesting further information from the user. Required if and
166
+ # only if `action` is `request_further_information`.
167
+ sig do
168
+ returns(
169
+ T.nilable(
170
+ Increase::Simulations::CardDisputeActionParams::Visa::RequestFurtherInformation
171
+ )
172
+ )
173
+ end
174
+ attr_reader :request_further_information
175
+
176
+ sig do
177
+ params(
178
+ request_further_information:
179
+ Increase::Simulations::CardDisputeActionParams::Visa::RequestFurtherInformation::OrHash
180
+ ).void
181
+ end
182
+ attr_writer :request_further_information
183
+
184
+ # The parameters for timing out the chargeback. Required if and only if `action`
185
+ # is `time_out_chargeback`.
186
+ sig { returns(T.nilable(T.anything)) }
187
+ attr_reader :time_out_chargeback
188
+
189
+ sig { params(time_out_chargeback: T.anything).void }
190
+ attr_writer :time_out_chargeback
191
+
192
+ # The parameters for timing out the merchant prearbitration. Required if and only
193
+ # if `action` is `time_out_merchant_prearbitration`.
194
+ sig { returns(T.nilable(T.anything)) }
195
+ attr_reader :time_out_merchant_prearbitration
196
+
197
+ sig { params(time_out_merchant_prearbitration: T.anything).void }
198
+ attr_writer :time_out_merchant_prearbitration
199
+
200
+ # The parameters for timing out the re-presentment. Required if and only if
201
+ # `action` is `time_out_representment`.
202
+ sig { returns(T.nilable(T.anything)) }
203
+ attr_reader :time_out_representment
204
+
205
+ sig { params(time_out_representment: T.anything).void }
206
+ attr_writer :time_out_representment
207
+
208
+ # The parameters for timing out the user prearbitration. Required if and only if
209
+ # `action` is `time_out_user_prearbitration`.
210
+ sig { returns(T.nilable(T.anything)) }
211
+ attr_reader :time_out_user_prearbitration
212
+
213
+ sig { params(time_out_user_prearbitration: T.anything).void }
214
+ attr_writer :time_out_user_prearbitration
215
+
216
+ # The Visa-specific parameters for the taking action on the dispute. Required if
217
+ # and only if `network` is `visa`.
218
+ sig do
219
+ params(
220
+ action:
221
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::OrSymbol,
222
+ accept_chargeback: T.anything,
223
+ accept_user_submission: T.anything,
224
+ decline_user_prearbitration: T.anything,
225
+ receive_merchant_prearbitration: T.anything,
226
+ represent: T.anything,
227
+ request_further_information:
228
+ Increase::Simulations::CardDisputeActionParams::Visa::RequestFurtherInformation::OrHash,
229
+ time_out_chargeback: T.anything,
230
+ time_out_merchant_prearbitration: T.anything,
231
+ time_out_representment: T.anything,
232
+ time_out_user_prearbitration: T.anything
233
+ ).returns(T.attached_class)
234
+ end
235
+ def self.new(
236
+ # The action to take. Details specific to the action are required under the
237
+ # sub-object with the same identifier as the action.
238
+ action:,
239
+ # The parameters for accepting the chargeback. Required if and only if `action` is
240
+ # `accept_chargeback`.
241
+ accept_chargeback: nil,
242
+ # The parameters for accepting the user submission. Required if and only if
243
+ # `action` is `accept_user_submission`.
244
+ accept_user_submission: nil,
245
+ # The parameters for declining the prearbitration. Required if and only if
246
+ # `action` is `decline_user_prearbitration`.
247
+ decline_user_prearbitration: nil,
248
+ # The parameters for receiving the prearbitration. Required if and only if
249
+ # `action` is `receive_merchant_prearbitration`.
250
+ receive_merchant_prearbitration: nil,
251
+ # The parameters for re-presenting the dispute. Required if and only if `action`
252
+ # is `represent`.
253
+ represent: nil,
254
+ # The parameters for requesting further information from the user. Required if and
255
+ # only if `action` is `request_further_information`.
256
+ request_further_information: nil,
257
+ # The parameters for timing out the chargeback. Required if and only if `action`
258
+ # is `time_out_chargeback`.
259
+ time_out_chargeback: nil,
260
+ # The parameters for timing out the merchant prearbitration. Required if and only
261
+ # if `action` is `time_out_merchant_prearbitration`.
262
+ time_out_merchant_prearbitration: nil,
263
+ # The parameters for timing out the re-presentment. Required if and only if
264
+ # `action` is `time_out_representment`.
265
+ time_out_representment: nil,
266
+ # The parameters for timing out the user prearbitration. Required if and only if
267
+ # `action` is `time_out_user_prearbitration`.
268
+ time_out_user_prearbitration: nil
269
+ )
270
+ end
271
+
272
+ sig do
273
+ override.returns(
274
+ {
275
+ action:
276
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::OrSymbol,
277
+ accept_chargeback: T.anything,
278
+ accept_user_submission: T.anything,
279
+ decline_user_prearbitration: T.anything,
280
+ receive_merchant_prearbitration: T.anything,
281
+ represent: T.anything,
282
+ request_further_information:
283
+ Increase::Simulations::CardDisputeActionParams::Visa::RequestFurtherInformation,
284
+ time_out_chargeback: T.anything,
285
+ time_out_merchant_prearbitration: T.anything,
286
+ time_out_representment: T.anything,
287
+ time_out_user_prearbitration: T.anything
288
+ }
289
+ )
290
+ end
291
+ def to_hash
292
+ end
293
+
294
+ # The action to take. Details specific to the action are required under the
295
+ # sub-object with the same identifier as the action.
296
+ module Action
297
+ extend Increase::Internal::Type::Enum
298
+
299
+ TaggedSymbol =
300
+ T.type_alias do
301
+ T.all(
302
+ Symbol,
303
+ Increase::Simulations::CardDisputeActionParams::Visa::Action
304
+ )
305
+ end
306
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
307
+
308
+ # Simulate the merchant accepting the chargeback. This will move the dispute to a `won` state.
309
+ ACCEPT_CHARGEBACK =
310
+ T.let(
311
+ :accept_chargeback,
312
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
313
+ )
314
+
315
+ # Accept the user's submission and transmit it to the network. This will move the dispute to a `pending_response` state.
316
+ ACCEPT_USER_SUBMISSION =
317
+ T.let(
318
+ :accept_user_submission,
319
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
320
+ )
321
+
322
+ # Simulate the merchant declining the user's pre-arbitration. This will move the dispute to a `lost` state.
323
+ DECLINE_USER_PREARBITRATION =
324
+ T.let(
325
+ :decline_user_prearbitration,
326
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
327
+ )
328
+
329
+ # Simulate the merchant issuing pre-arbitration. This will move the dispute to a `user_submission_required` state.
330
+ RECEIVE_MERCHANT_PREARBITRATION =
331
+ T.let(
332
+ :receive_merchant_prearbitration,
333
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
334
+ )
335
+
336
+ # Simulate the merchant re-presenting the dispute. This will move the dispute to a `user_submission_required` state.
337
+ REPRESENT =
338
+ T.let(
339
+ :represent,
340
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
341
+ )
342
+
343
+ # Simulate further information being requested from the user. This will move the dispute to a `user_submission_required` state.
344
+ REQUEST_FURTHER_INFORMATION =
345
+ T.let(
346
+ :request_further_information,
347
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
348
+ )
349
+
350
+ # Simulate the merchant timing out responding to the chargeback. This will move the dispute to a `won` state.
351
+ TIME_OUT_CHARGEBACK =
352
+ T.let(
353
+ :time_out_chargeback,
354
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
355
+ )
356
+
357
+ # Simulate the user timing out responding to a merchant pre-arbitration. This will move the dispute to a `lost` state.
358
+ TIME_OUT_MERCHANT_PREARBITRATION =
359
+ T.let(
360
+ :time_out_merchant_prearbitration,
361
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
362
+ )
363
+
364
+ # Simulate the user timing out responding to a merchant re-presentment. This will move the dispute to a `lost` state.
365
+ TIME_OUT_REPRESENTMENT =
366
+ T.let(
367
+ :time_out_representment,
368
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
369
+ )
370
+
371
+ # Simulate the merchant timing out responding to a user pre-arbitration. This will move the dispute to a `win` state.
372
+ TIME_OUT_USER_PREARBITRATION =
373
+ T.let(
374
+ :time_out_user_prearbitration,
375
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
376
+ )
377
+
378
+ sig do
379
+ override.returns(
380
+ T::Array[
381
+ Increase::Simulations::CardDisputeActionParams::Visa::Action::TaggedSymbol
382
+ ]
383
+ )
384
+ end
385
+ def self.values
386
+ end
387
+ end
388
+
389
+ class RequestFurtherInformation < Increase::Internal::Type::BaseModel
390
+ OrHash =
391
+ T.type_alias do
392
+ T.any(
393
+ Increase::Simulations::CardDisputeActionParams::Visa::RequestFurtherInformation,
394
+ Increase::Internal::AnyHash
395
+ )
396
+ end
397
+
398
+ # The reason for requesting further information from the user.
399
+ sig { returns(String) }
400
+ attr_accessor :reason
401
+
402
+ # The parameters for requesting further information from the user. Required if and
403
+ # only if `action` is `request_further_information`.
404
+ sig { params(reason: String).returns(T.attached_class) }
405
+ def self.new(
406
+ # The reason for requesting further information from the user.
407
+ reason:
408
+ )
409
+ end
410
+
411
+ sig { override.returns({ reason: String }) }
412
+ def to_hash
413
+ end
414
+ end
415
+ end
416
+ end
417
+ end
418
+ end
419
+ end
@@ -113,6 +113,19 @@ module Increase
113
113
 
114
114
  CardDetailsParams = Increase::Models::CardDetailsParams
115
115
 
116
+ CardDispute = Increase::Models::CardDispute
117
+
118
+ CardDisputeCreateParams = Increase::Models::CardDisputeCreateParams
119
+
120
+ CardDisputeListParams = Increase::Models::CardDisputeListParams
121
+
122
+ CardDisputeRetrieveParams = Increase::Models::CardDisputeRetrieveParams
123
+
124
+ CardDisputeSubmitUserSubmissionParams =
125
+ Increase::Models::CardDisputeSubmitUserSubmissionParams
126
+
127
+ CardDisputeWithdrawParams = Increase::Models::CardDisputeWithdrawParams
128
+
116
129
  CardIframeURL = Increase::Models::CardIframeURL
117
130
 
118
131
  CardListParams = Increase::Models::CardListParams
@@ -0,0 +1,136 @@
1
+ # typed: strong
2
+
3
+ module Increase
4
+ module Resources
5
+ class CardDisputes
6
+ # Create a Card Dispute
7
+ sig do
8
+ params(
9
+ disputed_transaction_id: String,
10
+ network: Increase::CardDisputeCreateParams::Network::OrSymbol,
11
+ amount: Integer,
12
+ attachment_files:
13
+ T::Array[Increase::CardDisputeCreateParams::AttachmentFile::OrHash],
14
+ visa: Increase::CardDisputeCreateParams::Visa::OrHash,
15
+ request_options: Increase::RequestOptions::OrHash
16
+ ).returns(Increase::CardDispute)
17
+ end
18
+ def create(
19
+ # The Transaction you wish to dispute. This Transaction must have a `source_type`
20
+ # of `card_settlement`.
21
+ disputed_transaction_id:,
22
+ # The network of the disputed transaction. Details specific to the network are
23
+ # required under the sub-object with the same identifier as the network.
24
+ network:,
25
+ # The monetary amount of the part of the transaction that is being disputed. This
26
+ # is optional and will default to the full amount of the transaction if not
27
+ # provided. If provided, the amount must be less than or equal to the amount of
28
+ # the transaction.
29
+ amount: nil,
30
+ # The files to be attached to the initial dispute submission.
31
+ attachment_files: nil,
32
+ # The Visa-specific parameters for the dispute. Required if and only if `network`
33
+ # is `visa`.
34
+ visa: nil,
35
+ request_options: {}
36
+ )
37
+ end
38
+
39
+ # Retrieve a Card Dispute
40
+ sig do
41
+ params(
42
+ card_dispute_id: String,
43
+ request_options: Increase::RequestOptions::OrHash
44
+ ).returns(Increase::CardDispute)
45
+ end
46
+ def retrieve(
47
+ # The identifier of the Card Dispute.
48
+ card_dispute_id,
49
+ request_options: {}
50
+ )
51
+ end
52
+
53
+ # List Card Disputes
54
+ sig do
55
+ params(
56
+ created_at: Increase::CardDisputeListParams::CreatedAt::OrHash,
57
+ cursor: String,
58
+ idempotency_key: String,
59
+ limit: Integer,
60
+ status: Increase::CardDisputeListParams::Status::OrHash,
61
+ request_options: Increase::RequestOptions::OrHash
62
+ ).returns(Increase::Internal::Page[Increase::CardDispute])
63
+ end
64
+ def list(
65
+ created_at: nil,
66
+ # Return the page of entries after this one.
67
+ cursor: nil,
68
+ # Filter records to the one with the specified `idempotency_key` you chose for
69
+ # that object. This value is unique across Increase and is used to ensure that a
70
+ # request is only processed once. Learn more about
71
+ # [idempotency](https://increase.com/documentation/idempotency-keys).
72
+ idempotency_key: nil,
73
+ # Limit the size of the list that is returned. The default (and maximum) is 100
74
+ # objects.
75
+ limit: nil,
76
+ status: nil,
77
+ request_options: {}
78
+ )
79
+ end
80
+
81
+ # Submit a User Submission for a Card Dispute
82
+ sig do
83
+ params(
84
+ card_dispute_id: String,
85
+ network:
86
+ Increase::CardDisputeSubmitUserSubmissionParams::Network::OrSymbol,
87
+ amount: Integer,
88
+ attachment_files:
89
+ T::Array[
90
+ Increase::CardDisputeSubmitUserSubmissionParams::AttachmentFile::OrHash
91
+ ],
92
+ visa: Increase::CardDisputeSubmitUserSubmissionParams::Visa::OrHash,
93
+ request_options: Increase::RequestOptions::OrHash
94
+ ).returns(Increase::CardDispute)
95
+ end
96
+ def submit_user_submission(
97
+ # The identifier of the Card Dispute to submit a user submission for.
98
+ card_dispute_id,
99
+ # The network of the Card Dispute. Details specific to the network are required
100
+ # under the sub-object with the same identifier as the network.
101
+ network:,
102
+ # The adjusted monetary amount of the part of the transaction that is being
103
+ # disputed. This is optional and will default to the most recent amount provided.
104
+ # If provided, the amount must be less than or equal to the amount of the
105
+ # transaction.
106
+ amount: nil,
107
+ # The files to be attached to the user submission.
108
+ attachment_files: nil,
109
+ # The Visa-specific parameters for the dispute. Required if and only if `network`
110
+ # is `visa`.
111
+ visa: nil,
112
+ request_options: {}
113
+ )
114
+ end
115
+
116
+ # Withdraw a Card Dispute
117
+ sig do
118
+ params(
119
+ card_dispute_id: String,
120
+ request_options: Increase::RequestOptions::OrHash
121
+ ).returns(Increase::CardDispute)
122
+ end
123
+ def withdraw(
124
+ # The identifier of the Card Dispute to withdraw.
125
+ card_dispute_id,
126
+ request_options: {}
127
+ )
128
+ end
129
+
130
+ # @api private
131
+ sig { params(client: Increase::Client).returns(T.attached_class) }
132
+ def self.new(client:)
133
+ end
134
+ end
135
+ end
136
+ end
@@ -0,0 +1,40 @@
1
+ # typed: strong
2
+
3
+ module Increase
4
+ module Resources
5
+ class Simulations
6
+ class CardDisputes
7
+ # After a [Card Dispute](#card-disputes) is created in production, the dispute
8
+ # will initially be in a `pending_user_submission_reviewing` state. Since no
9
+ # review or further action happens in sandbox, this endpoint simulates moving a
10
+ # Card Dispute through its various states.
11
+ sig do
12
+ params(
13
+ card_dispute_id: String,
14
+ network:
15
+ Increase::Simulations::CardDisputeActionParams::Network::OrSymbol,
16
+ visa: Increase::Simulations::CardDisputeActionParams::Visa::OrHash,
17
+ request_options: Increase::RequestOptions::OrHash
18
+ ).returns(Increase::CardDispute)
19
+ end
20
+ def action(
21
+ # The dispute you would like to action.
22
+ card_dispute_id,
23
+ # The network of the Card Dispute. Details specific to the network are required
24
+ # under the sub-object with the same identifier as the network.
25
+ network:,
26
+ # The Visa-specific parameters for the taking action on the dispute. Required if
27
+ # and only if `network` is `visa`.
28
+ visa: nil,
29
+ request_options: {}
30
+ )
31
+ end
32
+
33
+ # @api private
34
+ sig { params(client: Increase::Client).returns(T.attached_class) }
35
+ def self.new(client:)
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end