lithic 0.1.0.pre.alpha.53 → 0.1.0.pre.alpha.55

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 (157) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/internal/transport/base_client.rb +7 -1
  5. data/lib/lithic/internal/transport/pooled_net_requester.rb +6 -2
  6. data/lib/lithic/models/account_activity_list_response.rb +1 -0
  7. data/lib/lithic/models/account_activity_retrieve_transaction_response.rb +1 -0
  8. data/lib/lithic/models/account_holder_simulate_enrollment_review_response.rb +2 -2
  9. data/lib/lithic/models/account_holder_update_response.rb +4 -4
  10. data/lib/lithic/models/auth_rules/conditional_authorization_action_parameters.rb +252 -0
  11. data/lib/lithic/models/auth_rules/v2_create_params.rb +38 -284
  12. data/lib/lithic/models/auth_rules/v2_create_response.rb +8 -508
  13. data/lib/lithic/models/auth_rules/v2_draft_params.rb +4 -250
  14. data/lib/lithic/models/auth_rules/v2_draft_response.rb +8 -508
  15. data/lib/lithic/models/auth_rules/v2_list_response.rb +8 -508
  16. data/lib/lithic/models/auth_rules/v2_promote_response.rb +8 -508
  17. data/lib/lithic/models/auth_rules/v2_retrieve_features_response.rb +4 -11
  18. data/lib/lithic/models/auth_rules/v2_retrieve_response.rb +8 -508
  19. data/lib/lithic/models/auth_rules/v2_update_response.rb +8 -508
  20. data/lib/lithic/models/auth_rules/velocity_limit_params.rb +4 -7
  21. data/lib/lithic/models/auth_rules/velocity_limit_period.rb +154 -0
  22. data/lib/lithic/models/book_transfer_response.rb +5 -5
  23. data/lib/lithic/models/dispute.rb +510 -242
  24. data/lib/lithic/models/dispute_create_response.rb +326 -0
  25. data/lib/lithic/models/dispute_delete_response.rb +326 -0
  26. data/lib/lithic/models/dispute_list_response.rb +326 -0
  27. data/lib/lithic/models/dispute_retrieve_response.rb +326 -0
  28. data/lib/lithic/models/dispute_update_response.rb +326 -0
  29. data/lib/lithic/models/event.rb +213 -69
  30. data/lib/lithic/models/event_list_params.rb +112 -6
  31. data/lib/lithic/models/event_subscription.rb +112 -6
  32. data/lib/lithic/models/events/subscription_create_params.rb +112 -6
  33. data/lib/lithic/models/events/subscription_send_simulated_example_params.rb +12 -6
  34. data/lib/lithic/models/events/subscription_update_params.rb +112 -6
  35. data/lib/lithic/models/financial_account.rb +1 -65
  36. data/lib/lithic/models/financial_accounts/financial_account_credit_config.rb +1 -64
  37. data/lib/lithic/models/financial_accounts/loan_tape.rb +99 -3
  38. data/lib/lithic/models/financial_accounts/statement.rb +66 -2
  39. data/lib/lithic/models/financial_accounts/statements/statement_line_items.rb +1 -0
  40. data/lib/lithic/models/financial_transaction.rb +1 -0
  41. data/lib/lithic/models/payment.rb +29 -18
  42. data/lib/lithic/models/payment_simulate_action_params.rb +17 -1
  43. data/lib/lithic/models/tokenization.rb +189 -23
  44. data/lib/lithic/models/transaction.rb +12 -116
  45. data/lib/lithic/models/transactions/events/enhanced_data.rb +9 -9
  46. data/lib/lithic/models/transfer.rb +1 -0
  47. data/lib/lithic/resources/auth_rules/v2/backtests.rb +3 -5
  48. data/lib/lithic/resources/auth_rules/v2.rb +13 -56
  49. data/lib/lithic/resources/disputes.rb +10 -10
  50. data/lib/lithic/resources/payments.rb +5 -1
  51. data/lib/lithic/version.rb +1 -1
  52. data/lib/lithic.rb +8 -3
  53. data/manifest.yaml +1 -0
  54. data/rbi/lithic/internal/transport/base_client.rbi +5 -0
  55. data/rbi/lithic/internal/transport/pooled_net_requester.rbi +6 -2
  56. data/rbi/lithic/internal/type/base_model.rbi +8 -4
  57. data/rbi/lithic/models/account_activity_list_response.rbi +5 -0
  58. data/rbi/lithic/models/account_activity_retrieve_transaction_response.rbi +5 -0
  59. data/rbi/lithic/models/account_holder_simulate_enrollment_review_response.rbi +3 -6
  60. data/rbi/lithic/models/account_holder_update_response.rbi +6 -12
  61. data/rbi/lithic/models/auth_rules/conditional_authorization_action_parameters.rbi +577 -0
  62. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +85 -679
  63. data/rbi/lithic/models/auth_rules/v2_create_response.rbi +4 -1146
  64. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +4 -575
  65. data/rbi/lithic/models/auth_rules/v2_draft_response.rbi +4 -1146
  66. data/rbi/lithic/models/auth_rules/v2_list_response.rbi +4 -1146
  67. data/rbi/lithic/models/auth_rules/v2_promote_response.rbi +4 -1146
  68. data/rbi/lithic/models/auth_rules/v2_retrieve_features_response.rbi +9 -22
  69. data/rbi/lithic/models/auth_rules/v2_retrieve_response.rbi +4 -1146
  70. data/rbi/lithic/models/auth_rules/v2_update_response.rbi +4 -1146
  71. data/rbi/lithic/models/auth_rules/velocity_limit_params.rbi +17 -29
  72. data/rbi/lithic/models/auth_rules/velocity_limit_period.rbi +223 -0
  73. data/rbi/lithic/models/book_transfer_response.rbi +14 -11
  74. data/rbi/lithic/models/dispute.rbi +942 -395
  75. data/rbi/lithic/models/dispute_create_response.rbi +599 -0
  76. data/rbi/lithic/models/dispute_delete_response.rbi +599 -0
  77. data/rbi/lithic/models/dispute_list_response.rbi +582 -0
  78. data/rbi/lithic/models/dispute_retrieve_response.rbi +601 -0
  79. data/rbi/lithic/models/dispute_update_response.rbi +599 -0
  80. data/rbi/lithic/models/event.rbi +348 -111
  81. data/rbi/lithic/models/event_list_params.rbi +155 -25
  82. data/rbi/lithic/models/event_subscription.rbi +155 -25
  83. data/rbi/lithic/models/events/subscription_create_params.rbi +155 -25
  84. data/rbi/lithic/models/events/subscription_send_simulated_example_params.rbi +55 -25
  85. data/rbi/lithic/models/events/subscription_update_params.rbi +155 -25
  86. data/rbi/lithic/models/financial_account.rbi +3 -132
  87. data/rbi/lithic/models/financial_accounts/financial_account_credit_config.rbi +3 -136
  88. data/rbi/lithic/models/financial_accounts/loan_tape.rbi +132 -9
  89. data/rbi/lithic/models/financial_accounts/statement.rbi +88 -6
  90. data/rbi/lithic/models/financial_accounts/statements/statement_line_items.rbi +5 -0
  91. data/rbi/lithic/models/financial_transaction.rbi +5 -0
  92. data/rbi/lithic/models/payment.rbi +52 -28
  93. data/rbi/lithic/models/payment_simulate_action_params.rbi +22 -0
  94. data/rbi/lithic/models/tokenization.rbi +429 -34
  95. data/rbi/lithic/models/transaction.rbi +22 -246
  96. data/rbi/lithic/models/transactions/events/enhanced_data.rbi +12 -12
  97. data/rbi/lithic/models/transfer.rbi +5 -0
  98. data/rbi/lithic/resources/auth_rules/v2/backtests.rbi +0 -3
  99. data/rbi/lithic/resources/auth_rules/v2.rbi +24 -72
  100. data/rbi/lithic/resources/disputes.rbi +7 -5
  101. data/rbi/lithic/resources/payments.rbi +6 -0
  102. data/sig/lithic/internal/transport/base_client.rbs +2 -0
  103. data/sig/lithic/internal/transport/pooled_net_requester.rbs +4 -1
  104. data/sig/lithic/models/account_activity_list_response.rbs +2 -0
  105. data/sig/lithic/models/account_activity_retrieve_transaction_response.rbs +2 -0
  106. data/sig/lithic/models/account_holder_simulate_enrollment_review_response.rbs +4 -6
  107. data/sig/lithic/models/account_holder_update_response.rbs +8 -12
  108. data/sig/lithic/models/auth_rules/conditional_authorization_action_parameters.rbs +163 -0
  109. data/sig/lithic/models/auth_rules/v2_create_params.rbs +22 -188
  110. data/sig/lithic/models/auth_rules/v2_create_response.rbs +2 -318
  111. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +1 -159
  112. data/sig/lithic/models/auth_rules/v2_draft_response.rbs +2 -318
  113. data/sig/lithic/models/auth_rules/v2_list_response.rbs +2 -318
  114. data/sig/lithic/models/auth_rules/v2_promote_response.rbs +2 -318
  115. data/sig/lithic/models/auth_rules/v2_retrieve_features_response.rbs +4 -4
  116. data/sig/lithic/models/auth_rules/v2_retrieve_response.rbs +2 -318
  117. data/sig/lithic/models/auth_rules/v2_update_response.rbs +2 -318
  118. data/sig/lithic/models/auth_rules/velocity_limit_params.rbs +4 -4
  119. data/sig/lithic/models/auth_rules/velocity_limit_period.rbs +91 -0
  120. data/sig/lithic/models/book_transfer_response.rbs +7 -7
  121. data/sig/lithic/models/dispute.rbs +417 -157
  122. data/sig/lithic/models/dispute_create_response.rbs +210 -0
  123. data/sig/lithic/models/dispute_delete_response.rbs +210 -0
  124. data/sig/lithic/models/dispute_list_response.rbs +210 -0
  125. data/sig/lithic/models/dispute_retrieve_response.rbs +210 -0
  126. data/sig/lithic/models/dispute_update_response.rbs +210 -0
  127. data/sig/lithic/models/event.rbs +25 -13
  128. data/sig/lithic/models/event_list_params.rbs +25 -13
  129. data/sig/lithic/models/event_subscription.rbs +25 -13
  130. data/sig/lithic/models/events/subscription_create_params.rbs +25 -13
  131. data/sig/lithic/models/events/subscription_send_simulated_example_params.rbs +25 -13
  132. data/sig/lithic/models/events/subscription_update_params.rbs +25 -13
  133. data/sig/lithic/models/financial_account.rbs +3 -45
  134. data/sig/lithic/models/financial_accounts/financial_account_credit_config.rbs +3 -49
  135. data/sig/lithic/models/financial_accounts/loan_tape.rbs +87 -9
  136. data/sig/lithic/models/financial_accounts/statement.rbs +58 -6
  137. data/sig/lithic/models/financial_accounts/statements/statement_line_items.rbs +2 -0
  138. data/sig/lithic/models/financial_transaction.rbs +2 -0
  139. data/sig/lithic/models/payment.rbs +16 -12
  140. data/sig/lithic/models/payment_simulate_action_params.rbs +14 -0
  141. data/sig/lithic/models/tokenization.rbs +160 -13
  142. data/sig/lithic/models/transaction.rbs +13 -94
  143. data/sig/lithic/models/transactions/events/enhanced_data.rbs +15 -15
  144. data/sig/lithic/models/transfer.rbs +2 -0
  145. data/sig/lithic/resources/auth_rules/v2.rbs +2 -12
  146. data/sig/lithic/resources/disputes.rbs +5 -5
  147. data/sig/lithic/resources/payments.rbs +2 -0
  148. metadata +23 -11
  149. data/lib/lithic/models/auth_rules/v2_apply_params.rb +0 -56
  150. data/lib/lithic/models/auth_rules/v2_apply_response.rb +0 -766
  151. data/lib/lithic/models/auth_rules/velocity_limit_params_period_window.rb +0 -248
  152. data/rbi/lithic/models/auth_rules/v2_apply_params.rbi +0 -86
  153. data/rbi/lithic/models/auth_rules/v2_apply_response.rbi +0 -1638
  154. data/rbi/lithic/models/auth_rules/velocity_limit_params_period_window.rbi +0 -557
  155. data/sig/lithic/models/auth_rules/v2_apply_params.rbs +0 -54
  156. data/sig/lithic/models/auth_rules/v2_apply_response.rbs +0 -509
  157. data/sig/lithic/models/auth_rules/velocity_limit_params_period_window.rbs +0 -223
@@ -2,323 +2,591 @@
2
2
 
3
3
  module Lithic
4
4
  module Models
5
- # @see Lithic::Resources::Disputes#create
6
5
  class Dispute < Lithic::Internal::Type::BaseModel
7
6
  # @!attribute token
8
- # Globally unique identifier.
7
+ # Token assigned by Lithic for the dispute, in UUID format.
9
8
  #
10
9
  # @return [String]
11
10
  required :token, String
12
11
 
13
- # @!attribute amount
14
- # Amount under dispute. May be different from the original transaction amount.
12
+ # @!attribute account_token
13
+ # Token for the account associated with the dispute, in UUID format.
15
14
  #
16
- # @return [Integer]
17
- required :amount, Integer
15
+ # @return [String]
16
+ required :account_token, String
17
+
18
+ # @!attribute card_token
19
+ # Token for the card used in the dispute, in UUID format.
20
+ #
21
+ # @return [String]
22
+ required :card_token, String
18
23
 
19
- # @!attribute arbitration_date
20
- # Date dispute entered arbitration.
24
+ # @!attribute case_id
25
+ # Identifier assigned by the network for this dispute.
21
26
  #
22
- # @return [Time, nil]
23
- required :arbitration_date, Time, nil?: true
27
+ # @return [String, nil]
28
+ required :case_id, String, nil?: true
24
29
 
25
30
  # @!attribute created
26
- # Timestamp of when first Dispute was reported.
31
+ # When the dispute was created.
27
32
  #
28
33
  # @return [Time]
29
34
  required :created, Time
30
35
 
31
- # @!attribute customer_filed_date
32
- # Date that the dispute was filed by the customer making the dispute.
33
- #
34
- # @return [Time, nil]
35
- required :customer_filed_date, Time, nil?: true
36
-
37
- # @!attribute customer_note
38
- # End customer description of the reason for the dispute.
36
+ # @!attribute currency
37
+ # Three-letter ISO 4217 currency code.
39
38
  #
40
- # @return [String, nil]
41
- required :customer_note, String, nil?: true
39
+ # @return [String]
40
+ required :currency, String
42
41
 
43
- # @!attribute network_claim_ids
44
- # Unique identifiers for the dispute from the network.
42
+ # @!attribute disposition
43
+ # Dispute resolution outcome
45
44
  #
46
- # @return [Array<String>, nil]
47
- required :network_claim_ids, Lithic::Internal::Type::ArrayOf[String], nil?: true
45
+ # @return [Symbol, Lithic::Models::Dispute::Disposition, nil]
46
+ required :disposition, enum: -> { Lithic::Dispute::Disposition }, nil?: true
48
47
 
49
- # @!attribute network_filed_date
50
- # Date that the dispute was submitted to the network.
48
+ # @!attribute events
49
+ # Chronological list of events that have occurred in the dispute lifecycle
51
50
  #
52
- # @return [Time, nil]
53
- required :network_filed_date, Time, nil?: true
51
+ # @return [Array<Lithic::Models::Dispute::Event>]
52
+ required :events, -> { Lithic::Internal::Type::ArrayOf[Lithic::Dispute::Event] }
54
53
 
55
- # @!attribute network_reason_code
56
- # Network reason code used to file the dispute.
54
+ # @!attribute liability_allocation
55
+ # Current breakdown of how liability is allocated for the disputed amount
57
56
  #
58
- # @return [String, nil]
59
- required :network_reason_code, String, nil?: true
57
+ # @return [Lithic::Models::Dispute::LiabilityAllocation]
58
+ required :liability_allocation, -> { Lithic::Dispute::LiabilityAllocation }
60
59
 
61
- # @!attribute prearbitration_date
62
- # Date dispute entered pre-arbitration.
60
+ # @!attribute merchant
63
61
  #
64
- # @return [Time, nil]
65
- required :prearbitration_date, Time, nil?: true
62
+ # @return [Lithic::Models::Dispute::Merchant]
63
+ required :merchant, -> { Lithic::Dispute::Merchant }
66
64
 
67
- # @!attribute primary_claim_id
68
- # Unique identifier for the dispute from the network. If there are multiple, this
69
- # will be the first claim id set by the network
70
- #
71
- # @return [String, nil]
72
- required :primary_claim_id, String, nil?: true
73
-
74
- # @!attribute reason
75
- # Dispute reason:
76
- #
77
- # - `ATM_CASH_MISDISPENSE`: ATM cash misdispense.
78
- # - `CANCELLED`: Transaction was cancelled by the customer.
79
- # - `DUPLICATED`: The transaction was a duplicate.
80
- # - `FRAUD_CARD_NOT_PRESENT`: Fraudulent transaction, card not present.
81
- # - `FRAUD_CARD_PRESENT`: Fraudulent transaction, card present.
82
- # - `FRAUD_OTHER`: Fraudulent transaction, other types such as questionable
83
- # merchant activity.
84
- # - `GOODS_SERVICES_NOT_AS_DESCRIBED`: The goods or services were not as
85
- # described.
86
- # - `GOODS_SERVICES_NOT_RECEIVED`: The goods or services were not received.
87
- # - `INCORRECT_AMOUNT`: The transaction amount was incorrect.
88
- # - `MISSING_AUTH`: The transaction was missing authorization.
89
- # - `OTHER`: Other reason.
90
- # - `PROCESSING_ERROR`: Processing error.
91
- # - `REFUND_NOT_PROCESSED`: The refund was not processed.
92
- # - `RECURRING_TRANSACTION_NOT_CANCELLED`: The recurring transaction was not
93
- # cancelled.
94
- #
95
- # @return [Symbol, Lithic::Models::Dispute::Reason]
96
- required :reason, enum: -> { Lithic::Dispute::Reason }
97
-
98
- # @!attribute representment_date
99
- # Date the representment was received.
100
- #
101
- # @return [Time, nil]
102
- required :representment_date, Time, nil?: true
103
-
104
- # @!attribute resolution_date
105
- # Date that the dispute was resolved.
106
- #
107
- # @return [Time, nil]
108
- required :resolution_date, Time, nil?: true
109
-
110
- # @!attribute resolution_note
111
- # Note by Dispute team on the case resolution.
65
+ # @!attribute network
66
+ # Card network handling the dispute.
112
67
  #
113
- # @return [String, nil]
114
- required :resolution_note, String, nil?: true
115
-
116
- # @!attribute resolution_reason
117
- # Reason for the dispute resolution:
118
- #
119
- # - `CASE_LOST`: This case was lost at final arbitration.
120
- # - `NETWORK_REJECTED`: Network rejected.
121
- # - `NO_DISPUTE_RIGHTS_3DS`: No dispute rights, 3DS.
122
- # - `NO_DISPUTE_RIGHTS_BELOW_THRESHOLD`: No dispute rights, below threshold.
123
- # - `NO_DISPUTE_RIGHTS_CONTACTLESS`: No dispute rights, contactless.
124
- # - `NO_DISPUTE_RIGHTS_HYBRID`: No dispute rights, hybrid.
125
- # - `NO_DISPUTE_RIGHTS_MAX_CHARGEBACKS`: No dispute rights, max chargebacks.
126
- # - `NO_DISPUTE_RIGHTS_OTHER`: No dispute rights, other.
127
- # - `PAST_FILING_DATE`: Past filing date.
128
- # - `PREARBITRATION_REJECTED`: Prearbitration rejected.
129
- # - `PROCESSOR_REJECTED_OTHER`: Processor rejected, other.
130
- # - `REFUNDED`: Refunded.
131
- # - `REFUNDED_AFTER_CHARGEBACK`: Refunded after chargeback.
132
- # - `WITHDRAWN`: Withdrawn.
133
- # - `WON_ARBITRATION`: Won arbitration.
134
- # - `WON_FIRST_CHARGEBACK`: Won first chargeback.
135
- # - `WON_PREARBITRATION`: Won prearbitration.
136
- #
137
- # @return [Symbol, Lithic::Models::Dispute::ResolutionReason, nil]
138
- required :resolution_reason, enum: -> { Lithic::Dispute::ResolutionReason }, nil?: true
68
+ # @return [Symbol, Lithic::Models::Dispute::Network]
69
+ required :network, enum: -> { Lithic::Dispute::Network }
139
70
 
140
71
  # @!attribute status
141
- # Status types:
72
+ # Current status of the dispute.
142
73
  #
143
- # - `NEW` - New dispute case is opened.
144
- # - `PENDING_CUSTOMER` - Lithic is waiting for customer to provide more
145
- # information.
146
- # - `SUBMITTED` - Dispute is submitted to the card network.
147
- # - `REPRESENTMENT` - Case has entered second presentment.
148
- # - `PREARBITRATION` - Case has entered prearbitration.
149
- # - `ARBITRATION` - Case has entered arbitration.
150
- # - `CASE_WON` - Case was won and credit will be issued.
151
- # - `CASE_CLOSED` - Case was lost or withdrawn.
74
+ # @return [Symbol, Lithic::Models::Dispute::Status, nil]
75
+ required :status, enum: -> { Lithic::Dispute::Status }, nil?: true
76
+
77
+ # @!attribute transaction_series
78
+ # Contains identifiers for the transaction and specific event within being
79
+ # disputed; null if no transaction can be identified
152
80
  #
153
- # @return [Symbol, Lithic::Models::Dispute::Status]
154
- required :status, enum: -> { Lithic::Dispute::Status }
81
+ # @return [Lithic::Models::Dispute::TransactionSeries, nil]
82
+ required :transaction_series, -> { Lithic::Dispute::TransactionSeries }, nil?: true
155
83
 
156
- # @!attribute transaction_token
157
- # The transaction that is being disputed. A transaction can only be disputed once
158
- # but may have multiple dispute cases.
84
+ # @!attribute updated
85
+ # When the dispute was last updated.
159
86
  #
160
- # @return [String]
161
- required :transaction_token, String
87
+ # @return [Time]
88
+ required :updated, Time
162
89
 
163
- # @!method initialize(token:, amount:, arbitration_date:, created:, customer_filed_date:, customer_note:, network_claim_ids:, network_filed_date:, network_reason_code:, prearbitration_date:, primary_claim_id:, reason:, representment_date:, resolution_date:, resolution_note:, resolution_reason:, status:, transaction_token:)
90
+ # @!method initialize(token:, account_token:, card_token:, case_id:, created:, currency:, disposition:, events:, liability_allocation:, merchant:, network:, status:, transaction_series:, updated:)
164
91
  # Some parameter documentations has been truncated, see {Lithic::Models::Dispute}
165
92
  # for more details.
166
93
  #
167
- # Dispute.
168
- #
169
- # @param token [String] Globally unique identifier.
170
- #
171
- # @param amount [Integer] Amount under dispute. May be different from the original transaction amount.
94
+ # The Dispute object tracks the progression of a dispute throughout its lifecycle.
172
95
  #
173
- # @param arbitration_date [Time, nil] Date dispute entered arbitration.
96
+ # @param token [String] Token assigned by Lithic for the dispute, in UUID format.
174
97
  #
175
- # @param created [Time] Timestamp of when first Dispute was reported.
98
+ # @param account_token [String] Token for the account associated with the dispute, in UUID format.
176
99
  #
177
- # @param customer_filed_date [Time, nil] Date that the dispute was filed by the customer making the dispute.
100
+ # @param card_token [String] Token for the card used in the dispute, in UUID format.
178
101
  #
179
- # @param customer_note [String, nil] End customer description of the reason for the dispute.
102
+ # @param case_id [String, nil] Identifier assigned by the network for this dispute.
180
103
  #
181
- # @param network_claim_ids [Array<String>, nil] Unique identifiers for the dispute from the network.
104
+ # @param created [Time] When the dispute was created.
182
105
  #
183
- # @param network_filed_date [Time, nil] Date that the dispute was submitted to the network.
106
+ # @param currency [String] Three-letter ISO 4217 currency code.
184
107
  #
185
- # @param network_reason_code [String, nil] Network reason code used to file the dispute.
108
+ # @param disposition [Symbol, Lithic::Models::Dispute::Disposition, nil] Dispute resolution outcome
186
109
  #
187
- # @param prearbitration_date [Time, nil] Date dispute entered pre-arbitration.
110
+ # @param events [Array<Lithic::Models::Dispute::Event>] Chronological list of events that have occurred in the dispute lifecycle
188
111
  #
189
- # @param primary_claim_id [String, nil] Unique identifier for the dispute from the network. If there are multiple, this
112
+ # @param liability_allocation [Lithic::Models::Dispute::LiabilityAllocation] Current breakdown of how liability is allocated for the disputed amount
190
113
  #
191
- # @param reason [Symbol, Lithic::Models::Dispute::Reason] Dispute reason:
114
+ # @param merchant [Lithic::Models::Dispute::Merchant]
192
115
  #
193
- # @param representment_date [Time, nil] Date the representment was received.
116
+ # @param network [Symbol, Lithic::Models::Dispute::Network] Card network handling the dispute.
194
117
  #
195
- # @param resolution_date [Time, nil] Date that the dispute was resolved.
118
+ # @param status [Symbol, Lithic::Models::Dispute::Status, nil] Current status of the dispute.
196
119
  #
197
- # @param resolution_note [String, nil] Note by Dispute team on the case resolution.
120
+ # @param transaction_series [Lithic::Models::Dispute::TransactionSeries, nil] Contains identifiers for the transaction and specific event within being dispute
198
121
  #
199
- # @param resolution_reason [Symbol, Lithic::Models::Dispute::ResolutionReason, nil] Reason for the dispute resolution:
200
- #
201
- # @param status [Symbol, Lithic::Models::Dispute::Status] Status types:
202
- #
203
- # @param transaction_token [String] The transaction that is being disputed. A transaction can only be disputed once
122
+ # @param updated [Time] When the dispute was last updated.
204
123
 
205
- # Dispute reason:
206
- #
207
- # - `ATM_CASH_MISDISPENSE`: ATM cash misdispense.
208
- # - `CANCELLED`: Transaction was cancelled by the customer.
209
- # - `DUPLICATED`: The transaction was a duplicate.
210
- # - `FRAUD_CARD_NOT_PRESENT`: Fraudulent transaction, card not present.
211
- # - `FRAUD_CARD_PRESENT`: Fraudulent transaction, card present.
212
- # - `FRAUD_OTHER`: Fraudulent transaction, other types such as questionable
213
- # merchant activity.
214
- # - `GOODS_SERVICES_NOT_AS_DESCRIBED`: The goods or services were not as
215
- # described.
216
- # - `GOODS_SERVICES_NOT_RECEIVED`: The goods or services were not received.
217
- # - `INCORRECT_AMOUNT`: The transaction amount was incorrect.
218
- # - `MISSING_AUTH`: The transaction was missing authorization.
219
- # - `OTHER`: Other reason.
220
- # - `PROCESSING_ERROR`: Processing error.
221
- # - `REFUND_NOT_PROCESSED`: The refund was not processed.
222
- # - `RECURRING_TRANSACTION_NOT_CANCELLED`: The recurring transaction was not
223
- # cancelled.
124
+ # Dispute resolution outcome
224
125
  #
225
- # @see Lithic::Models::Dispute#reason
226
- module Reason
126
+ # @see Lithic::Models::Dispute#disposition
127
+ module Disposition
227
128
  extend Lithic::Internal::Type::Enum
228
129
 
229
- ATM_CASH_MISDISPENSE = :ATM_CASH_MISDISPENSE
230
- CANCELLED = :CANCELLED
231
- DUPLICATED = :DUPLICATED
232
- FRAUD_CARD_NOT_PRESENT = :FRAUD_CARD_NOT_PRESENT
233
- FRAUD_CARD_PRESENT = :FRAUD_CARD_PRESENT
234
- FRAUD_OTHER = :FRAUD_OTHER
235
- GOODS_SERVICES_NOT_AS_DESCRIBED = :GOODS_SERVICES_NOT_AS_DESCRIBED
236
- GOODS_SERVICES_NOT_RECEIVED = :GOODS_SERVICES_NOT_RECEIVED
237
- INCORRECT_AMOUNT = :INCORRECT_AMOUNT
238
- MISSING_AUTH = :MISSING_AUTH
239
- OTHER = :OTHER
240
- PROCESSING_ERROR = :PROCESSING_ERROR
241
- RECURRING_TRANSACTION_NOT_CANCELLED = :RECURRING_TRANSACTION_NOT_CANCELLED
242
- REFUND_NOT_PROCESSED = :REFUND_NOT_PROCESSED
130
+ WON = :WON
131
+ LOST = :LOST
132
+ PARTIALLY_WON = :PARTIALLY_WON
133
+ WITHDRAWN = :WITHDRAWN
134
+ DENIED = :DENIED
243
135
 
244
136
  # @!method self.values
245
137
  # @return [Array<Symbol>]
246
138
  end
247
139
 
248
- # Reason for the dispute resolution:
249
- #
250
- # - `CASE_LOST`: This case was lost at final arbitration.
251
- # - `NETWORK_REJECTED`: Network rejected.
252
- # - `NO_DISPUTE_RIGHTS_3DS`: No dispute rights, 3DS.
253
- # - `NO_DISPUTE_RIGHTS_BELOW_THRESHOLD`: No dispute rights, below threshold.
254
- # - `NO_DISPUTE_RIGHTS_CONTACTLESS`: No dispute rights, contactless.
255
- # - `NO_DISPUTE_RIGHTS_HYBRID`: No dispute rights, hybrid.
256
- # - `NO_DISPUTE_RIGHTS_MAX_CHARGEBACKS`: No dispute rights, max chargebacks.
257
- # - `NO_DISPUTE_RIGHTS_OTHER`: No dispute rights, other.
258
- # - `PAST_FILING_DATE`: Past filing date.
259
- # - `PREARBITRATION_REJECTED`: Prearbitration rejected.
260
- # - `PROCESSOR_REJECTED_OTHER`: Processor rejected, other.
261
- # - `REFUNDED`: Refunded.
262
- # - `REFUNDED_AFTER_CHARGEBACK`: Refunded after chargeback.
263
- # - `WITHDRAWN`: Withdrawn.
264
- # - `WON_ARBITRATION`: Won arbitration.
265
- # - `WON_FIRST_CHARGEBACK`: Won first chargeback.
266
- # - `WON_PREARBITRATION`: Won prearbitration.
267
- #
268
- # @see Lithic::Models::Dispute#resolution_reason
269
- module ResolutionReason
140
+ class Event < Lithic::Internal::Type::BaseModel
141
+ # @!attribute token
142
+ # Unique identifier for the event, in UUID format
143
+ #
144
+ # @return [String]
145
+ required :token, String
146
+
147
+ # @!attribute created
148
+ # When the event occurred
149
+ #
150
+ # @return [Time]
151
+ required :created, Time
152
+
153
+ # @!attribute data
154
+ # Details specific to the event type
155
+ #
156
+ # @return [Lithic::Models::Dispute::Event::Data::WorkflowEventData, Lithic::Models::Dispute::Event::Data::FinancialEventData, Lithic::Models::Dispute::Event::Data::CardholderLiabilityEventData]
157
+ required :data, union: -> { Lithic::Dispute::Event::Data }
158
+
159
+ # @!attribute type
160
+ # Type of event
161
+ #
162
+ # @return [Symbol, Lithic::Models::Dispute::Event::Type]
163
+ required :type, enum: -> { Lithic::Dispute::Event::Type }
164
+
165
+ # @!method initialize(token:, created:, data:, type:)
166
+ # Event that occurred in the dispute lifecycle
167
+ #
168
+ # @param token [String] Unique identifier for the event, in UUID format
169
+ #
170
+ # @param created [Time] When the event occurred
171
+ #
172
+ # @param data [Lithic::Models::Dispute::Event::Data::WorkflowEventData, Lithic::Models::Dispute::Event::Data::FinancialEventData, Lithic::Models::Dispute::Event::Data::CardholderLiabilityEventData] Details specific to the event type
173
+ #
174
+ # @param type [Symbol, Lithic::Models::Dispute::Event::Type] Type of event
175
+
176
+ # Details specific to the event type
177
+ #
178
+ # @see Lithic::Models::Dispute::Event#data
179
+ module Data
180
+ extend Lithic::Internal::Type::Union
181
+
182
+ # Details specific to workflow events
183
+ variant -> { Lithic::Dispute::Event::Data::WorkflowEventData }
184
+
185
+ # Details specific to financial events
186
+ variant -> { Lithic::Dispute::Event::Data::FinancialEventData }
187
+
188
+ # Details specific to cardholder liability events
189
+ variant -> { Lithic::Dispute::Event::Data::CardholderLiabilityEventData }
190
+
191
+ class WorkflowEventData < Lithic::Internal::Type::BaseModel
192
+ # @!attribute action
193
+ # Action taken in this stage
194
+ #
195
+ # @return [Symbol, Lithic::Models::Dispute::Event::Data::WorkflowEventData::Action]
196
+ required :action, enum: -> { Lithic::Dispute::Event::Data::WorkflowEventData::Action }
197
+
198
+ # @!attribute amount
199
+ # Amount in minor units
200
+ #
201
+ # @return [Integer, nil]
202
+ required :amount, Integer, nil?: true
203
+
204
+ # @!attribute disposition
205
+ # Dispute resolution outcome
206
+ #
207
+ # @return [Symbol, Lithic::Models::Dispute::Event::Data::WorkflowEventData::Disposition, nil]
208
+ required :disposition,
209
+ enum: -> { Lithic::Dispute::Event::Data::WorkflowEventData::Disposition },
210
+ nil?: true
211
+
212
+ # @!attribute reason
213
+ # Reason for the action
214
+ #
215
+ # @return [String, nil]
216
+ required :reason, String, nil?: true
217
+
218
+ # @!attribute stage
219
+ # Current stage of the dispute workflow
220
+ #
221
+ # @return [Symbol, Lithic::Models::Dispute::Event::Data::WorkflowEventData::Stage]
222
+ required :stage, enum: -> { Lithic::Dispute::Event::Data::WorkflowEventData::Stage }
223
+
224
+ # @!method initialize(action:, amount:, disposition:, reason:, stage:)
225
+ # Details specific to workflow events
226
+ #
227
+ # @param action [Symbol, Lithic::Models::Dispute::Event::Data::WorkflowEventData::Action] Action taken in this stage
228
+ #
229
+ # @param amount [Integer, nil] Amount in minor units
230
+ #
231
+ # @param disposition [Symbol, Lithic::Models::Dispute::Event::Data::WorkflowEventData::Disposition, nil] Dispute resolution outcome
232
+ #
233
+ # @param reason [String, nil] Reason for the action
234
+ #
235
+ # @param stage [Symbol, Lithic::Models::Dispute::Event::Data::WorkflowEventData::Stage] Current stage of the dispute workflow
236
+
237
+ # Action taken in this stage
238
+ #
239
+ # @see Lithic::Models::Dispute::Event::Data::WorkflowEventData#action
240
+ module Action
241
+ extend Lithic::Internal::Type::Enum
242
+
243
+ OPENED = :OPENED
244
+ CLOSED = :CLOSED
245
+ REOPENED = :REOPENED
246
+
247
+ # @!method self.values
248
+ # @return [Array<Symbol>]
249
+ end
250
+
251
+ # Dispute resolution outcome
252
+ #
253
+ # @see Lithic::Models::Dispute::Event::Data::WorkflowEventData#disposition
254
+ module Disposition
255
+ extend Lithic::Internal::Type::Enum
256
+
257
+ WON = :WON
258
+ LOST = :LOST
259
+ PARTIALLY_WON = :PARTIALLY_WON
260
+ WITHDRAWN = :WITHDRAWN
261
+ DENIED = :DENIED
262
+
263
+ # @!method self.values
264
+ # @return [Array<Symbol>]
265
+ end
266
+
267
+ # Current stage of the dispute workflow
268
+ #
269
+ # @see Lithic::Models::Dispute::Event::Data::WorkflowEventData#stage
270
+ module Stage
271
+ extend Lithic::Internal::Type::Enum
272
+
273
+ CLAIM = :CLAIM
274
+
275
+ # @!method self.values
276
+ # @return [Array<Symbol>]
277
+ end
278
+ end
279
+
280
+ class FinancialEventData < Lithic::Internal::Type::BaseModel
281
+ # @!attribute amount
282
+ # Amount in minor units
283
+ #
284
+ # @return [Integer]
285
+ required :amount, Integer
286
+
287
+ # @!attribute polarity
288
+ # Direction of funds flow
289
+ #
290
+ # @return [Symbol, Lithic::Models::Dispute::Event::Data::FinancialEventData::Polarity]
291
+ required :polarity, enum: -> { Lithic::Dispute::Event::Data::FinancialEventData::Polarity }
292
+
293
+ # @!attribute stage
294
+ # Stage at which the financial event occurred
295
+ #
296
+ # @return [Symbol, Lithic::Models::Dispute::Event::Data::FinancialEventData::Stage]
297
+ required :stage, enum: -> { Lithic::Dispute::Event::Data::FinancialEventData::Stage }
298
+
299
+ # @!method initialize(amount:, polarity:, stage:)
300
+ # Details specific to financial events
301
+ #
302
+ # @param amount [Integer] Amount in minor units
303
+ #
304
+ # @param polarity [Symbol, Lithic::Models::Dispute::Event::Data::FinancialEventData::Polarity] Direction of funds flow
305
+ #
306
+ # @param stage [Symbol, Lithic::Models::Dispute::Event::Data::FinancialEventData::Stage] Stage at which the financial event occurred
307
+
308
+ # Direction of funds flow
309
+ #
310
+ # @see Lithic::Models::Dispute::Event::Data::FinancialEventData#polarity
311
+ module Polarity
312
+ extend Lithic::Internal::Type::Enum
313
+
314
+ CREDIT = :CREDIT
315
+ DEBIT = :DEBIT
316
+
317
+ # @!method self.values
318
+ # @return [Array<Symbol>]
319
+ end
320
+
321
+ # Stage at which the financial event occurred
322
+ #
323
+ # @see Lithic::Models::Dispute::Event::Data::FinancialEventData#stage
324
+ module Stage
325
+ extend Lithic::Internal::Type::Enum
326
+
327
+ CHARGEBACK = :CHARGEBACK
328
+ REPRESENTMENT = :REPRESENTMENT
329
+ PREARBITRATION = :PREARBITRATION
330
+ ARBITRATION = :ARBITRATION
331
+ COLLABORATION = :COLLABORATION
332
+
333
+ # @!method self.values
334
+ # @return [Array<Symbol>]
335
+ end
336
+ end
337
+
338
+ class CardholderLiabilityEventData < Lithic::Internal::Type::BaseModel
339
+ # @!attribute action
340
+ # Action taken regarding cardholder liability
341
+ #
342
+ # @return [Symbol, Lithic::Models::Dispute::Event::Data::CardholderLiabilityEventData::Action]
343
+ required :action, enum: -> { Lithic::Dispute::Event::Data::CardholderLiabilityEventData::Action }
344
+
345
+ # @!attribute amount
346
+ # Amount in minor units
347
+ #
348
+ # @return [Integer]
349
+ required :amount, Integer
350
+
351
+ # @!attribute reason
352
+ # Reason for the action
353
+ #
354
+ # @return [String]
355
+ required :reason, String
356
+
357
+ # @!method initialize(action:, amount:, reason:)
358
+ # Details specific to cardholder liability events
359
+ #
360
+ # @param action [Symbol, Lithic::Models::Dispute::Event::Data::CardholderLiabilityEventData::Action] Action taken regarding cardholder liability
361
+ #
362
+ # @param amount [Integer] Amount in minor units
363
+ #
364
+ # @param reason [String] Reason for the action
365
+
366
+ # Action taken regarding cardholder liability
367
+ #
368
+ # @see Lithic::Models::Dispute::Event::Data::CardholderLiabilityEventData#action
369
+ module Action
370
+ extend Lithic::Internal::Type::Enum
371
+
372
+ PROVISIONAL_CREDIT_GRANTED = :PROVISIONAL_CREDIT_GRANTED
373
+ PROVISIONAL_CREDIT_REVERSED = :PROVISIONAL_CREDIT_REVERSED
374
+ WRITTEN_OFF = :WRITTEN_OFF
375
+
376
+ # @!method self.values
377
+ # @return [Array<Symbol>]
378
+ end
379
+ end
380
+
381
+ # @!method self.variants
382
+ # @return [Array(Lithic::Models::Dispute::Event::Data::WorkflowEventData, Lithic::Models::Dispute::Event::Data::FinancialEventData, Lithic::Models::Dispute::Event::Data::CardholderLiabilityEventData)]
383
+ end
384
+
385
+ # Type of event
386
+ #
387
+ # @see Lithic::Models::Dispute::Event#type
388
+ module Type
389
+ extend Lithic::Internal::Type::Enum
390
+
391
+ WORKFLOW = :WORKFLOW
392
+ FINANCIAL = :FINANCIAL
393
+ CARDHOLDER_LIABILITY = :CARDHOLDER_LIABILITY
394
+
395
+ # @!method self.values
396
+ # @return [Array<Symbol>]
397
+ end
398
+ end
399
+
400
+ # @see Lithic::Models::Dispute#liability_allocation
401
+ class LiabilityAllocation < Lithic::Internal::Type::BaseModel
402
+ # @!attribute denied_amount
403
+ # The amount that has been denied to the cardholder
404
+ #
405
+ # @return [Integer]
406
+ required :denied_amount, Integer
407
+
408
+ # @!attribute original_amount
409
+ # The initial amount disputed
410
+ #
411
+ # @return [Integer]
412
+ required :original_amount, Integer
413
+
414
+ # @!attribute recovered_amount
415
+ # The amount that has been recovered from the merchant through the dispute process
416
+ #
417
+ # @return [Integer]
418
+ required :recovered_amount, Integer
419
+
420
+ # @!attribute remaining_amount
421
+ # Any disputed amount that is still outstanding, i.e. has not been recovered,
422
+ # written off, or denied
423
+ #
424
+ # @return [Integer]
425
+ required :remaining_amount, Integer
426
+
427
+ # @!attribute written_off_amount
428
+ # The amount the issuer has chosen to write off
429
+ #
430
+ # @return [Integer]
431
+ required :written_off_amount, Integer
432
+
433
+ # @!method initialize(denied_amount:, original_amount:, recovered_amount:, remaining_amount:, written_off_amount:)
434
+ # Some parameter documentations has been truncated, see
435
+ # {Lithic::Models::Dispute::LiabilityAllocation} for more details.
436
+ #
437
+ # Current breakdown of how liability is allocated for the disputed amount
438
+ #
439
+ # @param denied_amount [Integer] The amount that has been denied to the cardholder
440
+ #
441
+ # @param original_amount [Integer] The initial amount disputed
442
+ #
443
+ # @param recovered_amount [Integer] The amount that has been recovered from the merchant through the dispute process
444
+ #
445
+ # @param remaining_amount [Integer] Any disputed amount that is still outstanding, i.e. has not been recovered, writ
446
+ #
447
+ # @param written_off_amount [Integer] The amount the issuer has chosen to write off
448
+ end
449
+
450
+ # @see Lithic::Models::Dispute#merchant
451
+ class Merchant < Lithic::Internal::Type::BaseModel
452
+ # @!attribute acceptor_id
453
+ # Unique alphanumeric identifier for the payment card acceptor (merchant).
454
+ #
455
+ # @return [String]
456
+ required :acceptor_id, String
457
+
458
+ # @!attribute acquiring_institution_id
459
+ # Unique numeric identifier of the acquiring institution.
460
+ #
461
+ # @return [String]
462
+ required :acquiring_institution_id, String
463
+
464
+ # @!attribute city
465
+ # City of card acceptor. Note that in many cases, particularly in card-not-present
466
+ # transactions, merchants may send through a phone number or URL in this field.
467
+ #
468
+ # @return [String]
469
+ required :city, String
470
+
471
+ # @!attribute country
472
+ # Country or entity of card acceptor. Possible values are: (1) all ISO 3166-1
473
+ # alpha-3 country codes, (2) QZZ for Kosovo, and (3) ANT for Netherlands Antilles.
474
+ #
475
+ # @return [String]
476
+ required :country, String
477
+
478
+ # @!attribute descriptor
479
+ # Short description of card acceptor.
480
+ #
481
+ # @return [String]
482
+ required :descriptor, String
483
+
484
+ # @!attribute mcc
485
+ # Merchant category code (MCC). A four-digit number listed in ISO 18245. An MCC is
486
+ # used to classify a business by the types of goods or services it provides.
487
+ #
488
+ # @return [String]
489
+ required :mcc, String
490
+
491
+ # @!attribute state
492
+ # Geographic state of card acceptor.
493
+ #
494
+ # @return [String]
495
+ required :state, String
496
+
497
+ # @!method initialize(acceptor_id:, acquiring_institution_id:, city:, country:, descriptor:, mcc:, state:)
498
+ # Some parameter documentations has been truncated, see
499
+ # {Lithic::Models::Dispute::Merchant} for more details.
500
+ #
501
+ # @param acceptor_id [String] Unique alphanumeric identifier for the payment card acceptor (merchant).
502
+ #
503
+ # @param acquiring_institution_id [String] Unique numeric identifier of the acquiring institution.
504
+ #
505
+ # @param city [String] City of card acceptor. Note that in many cases, particularly in card-not-present
506
+ #
507
+ # @param country [String] Country or entity of card acceptor. Possible values are: (1) all ISO 3166-1 alph
508
+ #
509
+ # @param descriptor [String] Short description of card acceptor.
510
+ #
511
+ # @param mcc [String] Merchant category code (MCC). A four-digit number listed in ISO 18245. An MCC is
512
+ #
513
+ # @param state [String] Geographic state of card acceptor.
514
+ end
515
+
516
+ # Card network handling the dispute.
517
+ #
518
+ # @see Lithic::Models::Dispute#network
519
+ module Network
270
520
  extend Lithic::Internal::Type::Enum
271
521
 
272
- CASE_LOST = :CASE_LOST
273
- NETWORK_REJECTED = :NETWORK_REJECTED
274
- NO_DISPUTE_RIGHTS_3DS = :NO_DISPUTE_RIGHTS_3DS
275
- NO_DISPUTE_RIGHTS_BELOW_THRESHOLD = :NO_DISPUTE_RIGHTS_BELOW_THRESHOLD
276
- NO_DISPUTE_RIGHTS_CONTACTLESS = :NO_DISPUTE_RIGHTS_CONTACTLESS
277
- NO_DISPUTE_RIGHTS_HYBRID = :NO_DISPUTE_RIGHTS_HYBRID
278
- NO_DISPUTE_RIGHTS_MAX_CHARGEBACKS = :NO_DISPUTE_RIGHTS_MAX_CHARGEBACKS
279
- NO_DISPUTE_RIGHTS_OTHER = :NO_DISPUTE_RIGHTS_OTHER
280
- PAST_FILING_DATE = :PAST_FILING_DATE
281
- PREARBITRATION_REJECTED = :PREARBITRATION_REJECTED
282
- PROCESSOR_REJECTED_OTHER = :PROCESSOR_REJECTED_OTHER
283
- REFUNDED = :REFUNDED
284
- REFUNDED_AFTER_CHARGEBACK = :REFUNDED_AFTER_CHARGEBACK
285
- WITHDRAWN = :WITHDRAWN
286
- WON_ARBITRATION = :WON_ARBITRATION
287
- WON_FIRST_CHARGEBACK = :WON_FIRST_CHARGEBACK
288
- WON_PREARBITRATION = :WON_PREARBITRATION
522
+ VISA = :VISA
523
+ MASTERCARD = :MASTERCARD
289
524
 
290
525
  # @!method self.values
291
526
  # @return [Array<Symbol>]
292
527
  end
293
528
 
294
- # Status types:
295
- #
296
- # - `NEW` - New dispute case is opened.
297
- # - `PENDING_CUSTOMER` - Lithic is waiting for customer to provide more
298
- # information.
299
- # - `SUBMITTED` - Dispute is submitted to the card network.
300
- # - `REPRESENTMENT` - Case has entered second presentment.
301
- # - `PREARBITRATION` - Case has entered prearbitration.
302
- # - `ARBITRATION` - Case has entered arbitration.
303
- # - `CASE_WON` - Case was won and credit will be issued.
304
- # - `CASE_CLOSED` - Case was lost or withdrawn.
529
+ # Current status of the dispute.
305
530
  #
306
531
  # @see Lithic::Models::Dispute#status
307
532
  module Status
308
533
  extend Lithic::Internal::Type::Enum
309
534
 
310
- ARBITRATION = :ARBITRATION
311
- CASE_CLOSED = :CASE_CLOSED
312
- CASE_WON = :CASE_WON
313
- NEW = :NEW
314
- PENDING_CUSTOMER = :PENDING_CUSTOMER
315
- PREARBITRATION = :PREARBITRATION
316
- REPRESENTMENT = :REPRESENTMENT
317
- SUBMITTED = :SUBMITTED
535
+ OPEN = :OPEN
536
+ CLOSED = :CLOSED
318
537
 
319
538
  # @!method self.values
320
539
  # @return [Array<Symbol>]
321
540
  end
541
+
542
+ # @see Lithic::Models::Dispute#transaction_series
543
+ class TransactionSeries < Lithic::Internal::Type::BaseModel
544
+ # @!attribute related_transaction_event_token
545
+ # Token of the specific event in the original transaction being disputed, in UUID
546
+ # format; null if no event can be identified
547
+ #
548
+ # @return [String, nil]
549
+ required :related_transaction_event_token, String, nil?: true
550
+
551
+ # @!attribute related_transaction_token
552
+ # Token of the original transaction being disputed, in UUID format
553
+ #
554
+ # @return [String]
555
+ required :related_transaction_token, String
556
+
557
+ # @!attribute type
558
+ # The type of transaction series associating the dispute and the original
559
+ # transaction. Always set to DISPUTE
560
+ #
561
+ # @return [Symbol, Lithic::Models::Dispute::TransactionSeries::Type]
562
+ required :type, enum: -> { Lithic::Dispute::TransactionSeries::Type }
563
+
564
+ # @!method initialize(related_transaction_event_token:, related_transaction_token:, type:)
565
+ # Some parameter documentations has been truncated, see
566
+ # {Lithic::Models::Dispute::TransactionSeries} for more details.
567
+ #
568
+ # Contains identifiers for the transaction and specific event within being
569
+ # disputed; null if no transaction can be identified
570
+ #
571
+ # @param related_transaction_event_token [String, nil] Token of the specific event in the original transaction being disputed, in UUID
572
+ #
573
+ # @param related_transaction_token [String] Token of the original transaction being disputed, in UUID format
574
+ #
575
+ # @param type [Symbol, Lithic::Models::Dispute::TransactionSeries::Type] The type of transaction series associating the dispute and the original transact
576
+
577
+ # The type of transaction series associating the dispute and the original
578
+ # transaction. Always set to DISPUTE
579
+ #
580
+ # @see Lithic::Models::Dispute::TransactionSeries#type
581
+ module Type
582
+ extend Lithic::Internal::Type::Enum
583
+
584
+ DISPUTE = :DISPUTE
585
+
586
+ # @!method self.values
587
+ # @return [Array<Symbol>]
588
+ end
589
+ end
322
590
  end
323
591
  end
324
592
  end