lithic 0.1.0 → 0.2.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 (186) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +36 -1
  4. data/lib/lithic/client.rb +4 -0
  5. data/lib/lithic/errors.rb +15 -0
  6. data/lib/lithic/models/account_holder_created_webhook_event.rb +75 -0
  7. data/lib/lithic/models/account_holder_document_updated_webhook_event.rb +191 -0
  8. data/lib/lithic/models/account_holder_updated_webhook_event.rb +702 -0
  9. data/lib/lithic/models/account_holder_verification_webhook_event.rb +69 -0
  10. data/lib/lithic/models/asa_request_webhook_event.rb +1010 -0
  11. data/lib/lithic/models/auth_rules_backtest_report_created_webhook_event.rb +16 -0
  12. data/lib/lithic/models/balance_updated_webhook_event.rb +23 -0
  13. data/lib/lithic/models/book_transfer_transaction_created_webhook_event.rb +18 -0
  14. data/lib/lithic/models/book_transfer_transaction_updated_webhook_event.rb +18 -0
  15. data/lib/lithic/models/card_converted_webhook_event.rb +24 -0
  16. data/lib/lithic/models/card_created_webhook_event.rb +32 -0
  17. data/lib/lithic/models/card_reissued_webhook_event.rb +24 -0
  18. data/lib/lithic/models/card_renewed_webhook_event.rb +56 -0
  19. data/lib/lithic/models/card_shipped_webhook_event.rb +70 -0
  20. data/lib/lithic/models/card_transaction_enhanced_data_created_webhook_event.rb +16 -0
  21. data/lib/lithic/models/card_transaction_enhanced_data_updated_webhook_event.rb +16 -0
  22. data/lib/lithic/models/card_transaction_updated_webhook_event.rb +16 -0
  23. data/lib/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rb +253 -0
  24. data/lib/lithic/models/digital_wallet_tokenization_result_webhook_event.rb +145 -0
  25. data/lib/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_sent_webhook_event.rb +100 -0
  26. data/lib/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_webhook_event.rb +108 -0
  27. data/lib/lithic/models/digital_wallet_tokenization_updated_webhook_event.rb +47 -0
  28. data/lib/lithic/models/dispute_evidence_upload_failed_webhook_event.rb +18 -0
  29. data/lib/lithic/models/dispute_transaction_created_webhook_event.rb +18 -0
  30. data/lib/lithic/models/dispute_transaction_updated_webhook_event.rb +18 -0
  31. data/lib/lithic/models/dispute_updated_webhook_event.rb +18 -0
  32. data/lib/lithic/models/external_bank_account_created_webhook_event.rb +16 -0
  33. data/lib/lithic/models/external_bank_account_updated_webhook_event.rb +16 -0
  34. data/lib/lithic/models/external_payment_created_webhook_event.rb +16 -0
  35. data/lib/lithic/models/external_payment_updated_webhook_event.rb +16 -0
  36. data/lib/lithic/models/financial_account_created_webhook_event.rb +16 -0
  37. data/lib/lithic/models/financial_account_updated_webhook_event.rb +16 -0
  38. data/lib/lithic/models/funding_event_created_webhook_event.rb +16 -0
  39. data/lib/lithic/models/internal_transaction_created_webhook_event.rb +16 -0
  40. data/lib/lithic/models/internal_transaction_updated_webhook_event.rb +16 -0
  41. data/lib/lithic/models/loan_tape_created_webhook_event.rb +16 -0
  42. data/lib/lithic/models/loan_tape_updated_webhook_event.rb +16 -0
  43. data/lib/lithic/models/management_operation_created_webhook_event.rb +16 -0
  44. data/lib/lithic/models/management_operation_updated_webhook_event.rb +16 -0
  45. data/lib/lithic/models/network_total_created_webhook_event.rb +16 -0
  46. data/lib/lithic/models/network_total_updated_webhook_event.rb +16 -0
  47. data/lib/lithic/models/parsed_webhook_event.rb +818 -0
  48. data/lib/lithic/models/payment_transaction_created_webhook_event.rb +18 -0
  49. data/lib/lithic/models/payment_transaction_updated_webhook_event.rb +18 -0
  50. data/lib/lithic/models/settlement_report_updated_webhook_event.rb +16 -0
  51. data/lib/lithic/models/statements_created_webhook_event.rb +16 -0
  52. data/lib/lithic/models/three_ds_authentication_challenge_webhook_event.rb +89 -0
  53. data/lib/lithic/models/three_ds_authentication_created_webhook_event.rb +18 -0
  54. data/lib/lithic/models/three_ds_authentication_updated_webhook_event.rb +18 -0
  55. data/lib/lithic/models/tokenization_approval_request_webhook_event.rb +249 -0
  56. data/lib/lithic/models/tokenization_decisioning_request_webhook_event.rb +159 -0
  57. data/lib/lithic/models/tokenization_result_webhook_event.rb +141 -0
  58. data/lib/lithic/models/tokenization_two_factor_authentication_code_sent_webhook_event.rb +100 -0
  59. data/lib/lithic/models/tokenization_two_factor_authentication_code_webhook_event.rb +108 -0
  60. data/lib/lithic/models/tokenization_updated_webhook_event.rb +47 -0
  61. data/lib/lithic/models/webhook_parsed_params.rb +14 -0
  62. data/lib/lithic/models.rb +120 -0
  63. data/lib/lithic/resources/webhooks.rb +87 -0
  64. data/lib/lithic/version.rb +1 -1
  65. data/lib/lithic.rb +74 -17
  66. data/rbi/lithic/client.rbi +3 -0
  67. data/rbi/lithic/models/account_holder_created_webhook_event.rbi +149 -0
  68. data/rbi/lithic/models/account_holder_document_updated_webhook_event.rbi +479 -0
  69. data/rbi/lithic/models/account_holder_updated_webhook_event.rbi +1274 -0
  70. data/rbi/lithic/models/account_holder_verification_webhook_event.rbi +143 -0
  71. data/rbi/lithic/models/asa_request_webhook_event.rbi +2229 -0
  72. data/rbi/lithic/models/auth_rules_backtest_report_created_webhook_event.rbi +30 -0
  73. data/rbi/lithic/models/balance_updated_webhook_event.rbi +43 -0
  74. data/rbi/lithic/models/book_transfer_transaction_created_webhook_event.rbi +31 -0
  75. data/rbi/lithic/models/book_transfer_transaction_updated_webhook_event.rbi +31 -0
  76. data/rbi/lithic/models/card_converted_webhook_event.rbi +35 -0
  77. data/rbi/lithic/models/card_created_webhook_event.rbi +53 -0
  78. data/rbi/lithic/models/card_reissued_webhook_event.rbi +38 -0
  79. data/rbi/lithic/models/card_renewed_webhook_event.rbi +92 -0
  80. data/rbi/lithic/models/card_shipped_webhook_event.rbi +150 -0
  81. data/rbi/lithic/models/card_transaction_enhanced_data_created_webhook_event.rbi +30 -0
  82. data/rbi/lithic/models/card_transaction_enhanced_data_updated_webhook_event.rbi +30 -0
  83. data/rbi/lithic/models/card_transaction_updated_webhook_event.rbi +30 -0
  84. data/rbi/lithic/models/digital_wallet_token_metadata.rbi +2 -2
  85. data/rbi/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rbi +548 -0
  86. data/rbi/lithic/models/digital_wallet_tokenization_result_webhook_event.rbi +295 -0
  87. data/rbi/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_sent_webhook_event.rbi +186 -0
  88. data/rbi/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_webhook_event.rbi +194 -0
  89. data/rbi/lithic/models/digital_wallet_tokenization_updated_webhook_event.rbi +73 -0
  90. data/rbi/lithic/models/dispute_evidence_upload_failed_webhook_event.rbi +31 -0
  91. data/rbi/lithic/models/dispute_transaction_created_webhook_event.rbi +31 -0
  92. data/rbi/lithic/models/dispute_transaction_updated_webhook_event.rbi +31 -0
  93. data/rbi/lithic/models/dispute_updated_webhook_event.rbi +28 -0
  94. data/rbi/lithic/models/external_bank_account_created_webhook_event.rbi +30 -0
  95. data/rbi/lithic/models/external_bank_account_updated_webhook_event.rbi +30 -0
  96. data/rbi/lithic/models/external_payment_created_webhook_event.rbi +30 -0
  97. data/rbi/lithic/models/external_payment_updated_webhook_event.rbi +30 -0
  98. data/rbi/lithic/models/financial_account_created_webhook_event.rbi +30 -0
  99. data/rbi/lithic/models/financial_account_updated_webhook_event.rbi +30 -0
  100. data/rbi/lithic/models/funding_event_created_webhook_event.rbi +30 -0
  101. data/rbi/lithic/models/internal_transaction.rbi +15 -10
  102. data/rbi/lithic/models/internal_transaction_created_webhook_event.rbi +30 -0
  103. data/rbi/lithic/models/internal_transaction_updated_webhook_event.rbi +30 -0
  104. data/rbi/lithic/models/loan_tape_created_webhook_event.rbi +27 -0
  105. data/rbi/lithic/models/loan_tape_updated_webhook_event.rbi +27 -0
  106. data/rbi/lithic/models/management_operation_created_webhook_event.rbi +30 -0
  107. data/rbi/lithic/models/management_operation_updated_webhook_event.rbi +30 -0
  108. data/rbi/lithic/models/network_total_created_webhook_event.rbi +30 -0
  109. data/rbi/lithic/models/network_total_updated_webhook_event.rbi +30 -0
  110. data/rbi/lithic/models/parsed_webhook_event.rbi +1310 -0
  111. data/rbi/lithic/models/payment_transaction_created_webhook_event.rbi +31 -0
  112. data/rbi/lithic/models/payment_transaction_updated_webhook_event.rbi +31 -0
  113. data/rbi/lithic/models/settlement_report_updated_webhook_event.rbi +30 -0
  114. data/rbi/lithic/models/statements_created_webhook_event.rbi +30 -0
  115. data/rbi/lithic/models/three_ds_authentication_challenge_webhook_event.rbi +175 -0
  116. data/rbi/lithic/models/three_ds_authentication_created_webhook_event.rbi +31 -0
  117. data/rbi/lithic/models/three_ds_authentication_updated_webhook_event.rbi +31 -0
  118. data/rbi/lithic/models/tokenization_approval_request_webhook_event.rbi +548 -0
  119. data/rbi/lithic/models/tokenization_decisioning_request_webhook_event.rbi +333 -0
  120. data/rbi/lithic/models/tokenization_result_webhook_event.rbi +295 -0
  121. data/rbi/lithic/models/tokenization_two_factor_authentication_code_sent_webhook_event.rbi +186 -0
  122. data/rbi/lithic/models/tokenization_two_factor_authentication_code_webhook_event.rbi +194 -0
  123. data/rbi/lithic/models/tokenization_updated_webhook_event.rbi +73 -0
  124. data/rbi/lithic/models/webhook_parsed_params.rbi +27 -0
  125. data/rbi/lithic/models.rbi +155 -0
  126. data/rbi/lithic/resources/webhooks.rbi +158 -0
  127. data/sig/lithic/client.rbs +2 -0
  128. data/sig/lithic/models/account_holder_created_webhook_event.rbs +77 -0
  129. data/sig/lithic/models/account_holder_document_updated_webhook_event.rbs +219 -0
  130. data/sig/lithic/models/account_holder_updated_webhook_event.rbs +587 -0
  131. data/sig/lithic/models/account_holder_verification_webhook_event.rbs +69 -0
  132. data/sig/lithic/models/asa_request_webhook_event.rbs +881 -0
  133. data/sig/lithic/models/auth_rules_backtest_report_created_webhook_event.rbs +20 -0
  134. data/sig/lithic/models/balance_updated_webhook_event.rbs +25 -0
  135. data/sig/lithic/models/book_transfer_transaction_created_webhook_event.rbs +20 -0
  136. data/sig/lithic/models/book_transfer_transaction_updated_webhook_event.rbs +20 -0
  137. data/sig/lithic/models/card_converted_webhook_event.rbs +19 -0
  138. data/sig/lithic/models/card_created_webhook_event.rbs +30 -0
  139. data/sig/lithic/models/card_reissued_webhook_event.rbs +21 -0
  140. data/sig/lithic/models/card_renewed_webhook_event.rbs +55 -0
  141. data/sig/lithic/models/card_shipped_webhook_event.rbs +71 -0
  142. data/sig/lithic/models/card_transaction_enhanced_data_created_webhook_event.rbs +20 -0
  143. data/sig/lithic/models/card_transaction_enhanced_data_updated_webhook_event.rbs +20 -0
  144. data/sig/lithic/models/card_transaction_updated_webhook_event.rbs +18 -0
  145. data/sig/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rbs +223 -0
  146. data/sig/lithic/models/digital_wallet_tokenization_result_webhook_event.rbs +133 -0
  147. data/sig/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_sent_webhook_event.rbs +78 -0
  148. data/sig/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_webhook_event.rbs +83 -0
  149. data/sig/lithic/models/digital_wallet_tokenization_updated_webhook_event.rbs +40 -0
  150. data/sig/lithic/models/dispute_evidence_upload_failed_webhook_event.rbs +18 -0
  151. data/sig/lithic/models/dispute_transaction_created_webhook_event.rbs +18 -0
  152. data/sig/lithic/models/dispute_transaction_updated_webhook_event.rbs +18 -0
  153. data/sig/lithic/models/dispute_updated_webhook_event.rbs +15 -0
  154. data/sig/lithic/models/external_bank_account_created_webhook_event.rbs +18 -0
  155. data/sig/lithic/models/external_bank_account_updated_webhook_event.rbs +18 -0
  156. data/sig/lithic/models/external_payment_created_webhook_event.rbs +18 -0
  157. data/sig/lithic/models/external_payment_updated_webhook_event.rbs +18 -0
  158. data/sig/lithic/models/financial_account_created_webhook_event.rbs +18 -0
  159. data/sig/lithic/models/financial_account_updated_webhook_event.rbs +18 -0
  160. data/sig/lithic/models/funding_event_created_webhook_event.rbs +16 -0
  161. data/sig/lithic/models/internal_transaction_created_webhook_event.rbs +18 -0
  162. data/sig/lithic/models/internal_transaction_updated_webhook_event.rbs +18 -0
  163. data/sig/lithic/models/loan_tape_created_webhook_event.rbs +15 -0
  164. data/sig/lithic/models/loan_tape_updated_webhook_event.rbs +15 -0
  165. data/sig/lithic/models/management_operation_created_webhook_event.rbs +18 -0
  166. data/sig/lithic/models/management_operation_updated_webhook_event.rbs +18 -0
  167. data/sig/lithic/models/network_total_created_webhook_event.rbs +16 -0
  168. data/sig/lithic/models/network_total_updated_webhook_event.rbs +16 -0
  169. data/sig/lithic/models/parsed_webhook_event.rbs +641 -0
  170. data/sig/lithic/models/payment_transaction_created_webhook_event.rbs +18 -0
  171. data/sig/lithic/models/payment_transaction_updated_webhook_event.rbs +18 -0
  172. data/sig/lithic/models/settlement_report_updated_webhook_event.rbs +18 -0
  173. data/sig/lithic/models/statements_created_webhook_event.rbs +16 -0
  174. data/sig/lithic/models/three_ds_authentication_challenge_webhook_event.rbs +72 -0
  175. data/sig/lithic/models/three_ds_authentication_created_webhook_event.rbs +18 -0
  176. data/sig/lithic/models/three_ds_authentication_updated_webhook_event.rbs +18 -0
  177. data/sig/lithic/models/tokenization_approval_request_webhook_event.rbs +223 -0
  178. data/sig/lithic/models/tokenization_decisioning_request_webhook_event.rbs +134 -0
  179. data/sig/lithic/models/tokenization_result_webhook_event.rbs +133 -0
  180. data/sig/lithic/models/tokenization_two_factor_authentication_code_sent_webhook_event.rbs +78 -0
  181. data/sig/lithic/models/tokenization_two_factor_authentication_code_webhook_event.rbs +83 -0
  182. data/sig/lithic/models/tokenization_updated_webhook_event.rbs +40 -0
  183. data/sig/lithic/models/webhook_parsed_params.rbs +15 -0
  184. data/sig/lithic/models.rbs +112 -0
  185. data/sig/lithic/resources/webhooks.rbs +135 -0
  186. metadata +173 -2
@@ -0,0 +1,2229 @@
1
+ # typed: strong
2
+
3
+ module Lithic
4
+ module Models
5
+ class AsaRequestWebhookEvent < Lithic::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Lithic::AsaRequestWebhookEvent, Lithic::Internal::AnyHash)
9
+ end
10
+
11
+ # The provisional transaction group uuid associated with the authorization
12
+ sig { returns(String) }
13
+ attr_accessor :token
14
+
15
+ # Fee (in cents) assessed by the merchant and paid for by the cardholder. Will be
16
+ # zero if no fee is assessed. Rebates may be transmitted as a negative value to
17
+ # indicate credited fees.
18
+ sig { returns(Integer) }
19
+ attr_accessor :acquirer_fee
20
+
21
+ # Authorization amount of the transaction (in cents), including any acquirer fees.
22
+ # The contents of this field are identical to `authorization_amount`.
23
+ sig { returns(Integer) }
24
+ attr_accessor :amount
25
+
26
+ # The base transaction amount (in cents) plus the acquirer fee field. This is the
27
+ # amount the issuer should authorize against unless the issuer is paying the
28
+ # acquirer fee on behalf of the cardholder.
29
+ sig { returns(Integer) }
30
+ attr_accessor :authorization_amount
31
+
32
+ sig { returns(Lithic::AsaRequestWebhookEvent::Avs) }
33
+ attr_reader :avs
34
+
35
+ sig { params(avs: Lithic::AsaRequestWebhookEvent::Avs::OrHash).void }
36
+ attr_writer :avs
37
+
38
+ # Card object in ASA
39
+ sig { returns(Lithic::AsaRequestWebhookEvent::Card) }
40
+ attr_reader :card
41
+
42
+ sig { params(card: Lithic::AsaRequestWebhookEvent::Card::OrHash).void }
43
+ attr_writer :card
44
+
45
+ # 3-character alphabetic ISO 4217 code for cardholder's billing currency.
46
+ sig { returns(String) }
47
+ attr_accessor :cardholder_currency
48
+
49
+ # The portion of the transaction requested as cash back by the cardholder, and
50
+ # does not include any acquirer fees. The amount field includes the purchase
51
+ # amount, the requested cash back amount, and any acquirer fees.
52
+ #
53
+ # If no cash back was requested, the value of this field will be 0, and the field
54
+ # will always be present.
55
+ sig { returns(Integer) }
56
+ attr_accessor :cash_amount
57
+
58
+ # Date and time when the transaction first occurred in UTC.
59
+ sig { returns(Time) }
60
+ attr_accessor :created
61
+
62
+ sig { returns(Lithic::Merchant) }
63
+ attr_reader :merchant
64
+
65
+ sig { params(merchant: Lithic::Merchant::OrHash).void }
66
+ attr_writer :merchant
67
+
68
+ # The amount that the merchant will receive, denominated in `merchant_currency`
69
+ # and in the smallest currency unit. Note the amount includes `acquirer_fee`,
70
+ # similar to `authorization_amount`. It will be different from
71
+ # `authorization_amount` if the merchant is taking payment in a different
72
+ # currency.
73
+ sig { returns(Integer) }
74
+ attr_accessor :merchant_amount
75
+
76
+ # 3-character alphabetic ISO 4217 code for the local currency of the transaction.
77
+ sig { returns(String) }
78
+ attr_accessor :merchant_currency
79
+
80
+ # Amount (in cents) of the transaction that has been settled, including any
81
+ # acquirer fees
82
+ sig { returns(Integer) }
83
+ attr_accessor :settled_amount
84
+
85
+ # The type of authorization request that this request is for. Note that
86
+ # `CREDIT_AUTHORIZATION` and `FINANCIAL_CREDIT_AUTHORIZATION` is only available to
87
+ # users with credit decisioning via ASA enabled.
88
+ sig { returns(Lithic::AsaRequestWebhookEvent::Status::TaggedSymbol) }
89
+ attr_accessor :status
90
+
91
+ # The entity that initiated the transaction.
92
+ sig do
93
+ returns(
94
+ Lithic::AsaRequestWebhookEvent::TransactionInitiator::TaggedSymbol
95
+ )
96
+ end
97
+ attr_accessor :transaction_initiator
98
+
99
+ sig do
100
+ returns(
101
+ T.nilable(Lithic::AsaRequestWebhookEvent::AccountType::TaggedSymbol)
102
+ )
103
+ end
104
+ attr_reader :account_type
105
+
106
+ sig do
107
+ params(
108
+ account_type: Lithic::AsaRequestWebhookEvent::AccountType::OrSymbol
109
+ ).void
110
+ end
111
+ attr_writer :account_type
112
+
113
+ sig { returns(T.nilable(Lithic::CardholderAuthentication)) }
114
+ attr_reader :cardholder_authentication
115
+
116
+ sig do
117
+ params(
118
+ cardholder_authentication: Lithic::CardholderAuthentication::OrHash
119
+ ).void
120
+ end
121
+ attr_writer :cardholder_authentication
122
+
123
+ # Deprecated, use `cash_amount`.
124
+ sig { returns(T.nilable(Integer)) }
125
+ attr_reader :cashback
126
+
127
+ sig { params(cashback: Integer).void }
128
+ attr_writer :cashback
129
+
130
+ # If the transaction was requested in a currency other than the settlement
131
+ # currency, this field will be populated to indicate the rate used to translate
132
+ # the merchant_amount to the amount (i.e., `merchant_amount` x `conversion_rate` =
133
+ # `amount`). Note that the `merchant_amount` is in the local currency and the
134
+ # amount is in the settlement currency.
135
+ sig { returns(T.nilable(Float)) }
136
+ attr_reader :conversion_rate
137
+
138
+ sig { params(conversion_rate: Float).void }
139
+ attr_writer :conversion_rate
140
+
141
+ # The event token associated with the authorization. This field is only set for
142
+ # programs enrolled into the beta.
143
+ sig { returns(T.nilable(String)) }
144
+ attr_reader :event_token
145
+
146
+ sig { params(event_token: String).void }
147
+ attr_writer :event_token
148
+
149
+ # Optional Object containing information if the Card is a part of a Fleet managed
150
+ # program
151
+ sig { returns(T.nilable(Lithic::AsaRequestWebhookEvent::FleetInfo)) }
152
+ attr_reader :fleet_info
153
+
154
+ sig do
155
+ params(
156
+ fleet_info:
157
+ T.nilable(Lithic::AsaRequestWebhookEvent::FleetInfo::OrHash)
158
+ ).void
159
+ end
160
+ attr_writer :fleet_info
161
+
162
+ # The latest Authorization Challenge that was issued to the cardholder for this
163
+ # merchant.
164
+ sig do
165
+ returns(T.nilable(Lithic::AsaRequestWebhookEvent::LatestChallenge))
166
+ end
167
+ attr_reader :latest_challenge
168
+
169
+ sig do
170
+ params(
171
+ latest_challenge:
172
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::OrHash
173
+ ).void
174
+ end
175
+ attr_writer :latest_challenge
176
+
177
+ # Card network of the authorization.
178
+ sig do
179
+ returns(
180
+ T.nilable(Lithic::AsaRequestWebhookEvent::Network::TaggedSymbol)
181
+ )
182
+ end
183
+ attr_reader :network
184
+
185
+ sig do
186
+ params(network: Lithic::AsaRequestWebhookEvent::Network::OrSymbol).void
187
+ end
188
+ attr_writer :network
189
+
190
+ # Network-provided score assessing risk level associated with a given
191
+ # authorization. Scores are on a range of 0-999, with 0 representing the lowest
192
+ # risk and 999 representing the highest risk. For Visa transactions, where the raw
193
+ # score has a range of 0-99, Lithic will normalize the score by multiplying the
194
+ # raw score by 10x.
195
+ sig { returns(T.nilable(Integer)) }
196
+ attr_accessor :network_risk_score
197
+
198
+ # Contains raw data provided by the card network, including attributes that
199
+ # provide further context about the authorization. If populated by the network,
200
+ # data is organized by Lithic and passed through without further modification.
201
+ # Please consult the official network documentation for more details about these
202
+ # values and how to use them. This object is only available to certain programs-
203
+ # contact your Customer Success Manager to discuss enabling access.
204
+ sig do
205
+ returns(T.nilable(Lithic::AsaRequestWebhookEvent::NetworkSpecificData))
206
+ end
207
+ attr_reader :network_specific_data
208
+
209
+ sig do
210
+ params(
211
+ network_specific_data:
212
+ T.nilable(
213
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::OrHash
214
+ )
215
+ ).void
216
+ end
217
+ attr_writer :network_specific_data
218
+
219
+ sig { returns(T.nilable(Lithic::AsaRequestWebhookEvent::Pos)) }
220
+ attr_reader :pos
221
+
222
+ sig { params(pos: Lithic::AsaRequestWebhookEvent::Pos::OrHash).void }
223
+ attr_writer :pos
224
+
225
+ sig { returns(T.nilable(Lithic::TokenInfo)) }
226
+ attr_reader :token_info
227
+
228
+ sig { params(token_info: T.nilable(Lithic::TokenInfo::OrHash)).void }
229
+ attr_writer :token_info
230
+
231
+ # Deprecated: approximate time-to-live for the authorization.
232
+ sig { returns(T.nilable(Time)) }
233
+ attr_reader :ttl
234
+
235
+ sig { params(ttl: Time).void }
236
+ attr_writer :ttl
237
+
238
+ # The Auth Stream Access request payload that was sent to the ASA responder.
239
+ sig do
240
+ params(
241
+ token: String,
242
+ acquirer_fee: Integer,
243
+ amount: Integer,
244
+ authorization_amount: Integer,
245
+ avs: Lithic::AsaRequestWebhookEvent::Avs::OrHash,
246
+ card: Lithic::AsaRequestWebhookEvent::Card::OrHash,
247
+ cardholder_currency: String,
248
+ cash_amount: Integer,
249
+ created: Time,
250
+ merchant: Lithic::Merchant::OrHash,
251
+ merchant_amount: Integer,
252
+ merchant_currency: String,
253
+ settled_amount: Integer,
254
+ status: Lithic::AsaRequestWebhookEvent::Status::OrSymbol,
255
+ transaction_initiator:
256
+ Lithic::AsaRequestWebhookEvent::TransactionInitiator::OrSymbol,
257
+ account_type: Lithic::AsaRequestWebhookEvent::AccountType::OrSymbol,
258
+ cardholder_authentication: Lithic::CardholderAuthentication::OrHash,
259
+ cashback: Integer,
260
+ conversion_rate: Float,
261
+ event_token: String,
262
+ fleet_info:
263
+ T.nilable(Lithic::AsaRequestWebhookEvent::FleetInfo::OrHash),
264
+ latest_challenge:
265
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::OrHash,
266
+ network: Lithic::AsaRequestWebhookEvent::Network::OrSymbol,
267
+ network_risk_score: T.nilable(Integer),
268
+ network_specific_data:
269
+ T.nilable(
270
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::OrHash
271
+ ),
272
+ pos: Lithic::AsaRequestWebhookEvent::Pos::OrHash,
273
+ token_info: T.nilable(Lithic::TokenInfo::OrHash),
274
+ ttl: Time
275
+ ).returns(T.attached_class)
276
+ end
277
+ def self.new(
278
+ # The provisional transaction group uuid associated with the authorization
279
+ token:,
280
+ # Fee (in cents) assessed by the merchant and paid for by the cardholder. Will be
281
+ # zero if no fee is assessed. Rebates may be transmitted as a negative value to
282
+ # indicate credited fees.
283
+ acquirer_fee:,
284
+ # Authorization amount of the transaction (in cents), including any acquirer fees.
285
+ # The contents of this field are identical to `authorization_amount`.
286
+ amount:,
287
+ # The base transaction amount (in cents) plus the acquirer fee field. This is the
288
+ # amount the issuer should authorize against unless the issuer is paying the
289
+ # acquirer fee on behalf of the cardholder.
290
+ authorization_amount:,
291
+ avs:,
292
+ # Card object in ASA
293
+ card:,
294
+ # 3-character alphabetic ISO 4217 code for cardholder's billing currency.
295
+ cardholder_currency:,
296
+ # The portion of the transaction requested as cash back by the cardholder, and
297
+ # does not include any acquirer fees. The amount field includes the purchase
298
+ # amount, the requested cash back amount, and any acquirer fees.
299
+ #
300
+ # If no cash back was requested, the value of this field will be 0, and the field
301
+ # will always be present.
302
+ cash_amount:,
303
+ # Date and time when the transaction first occurred in UTC.
304
+ created:,
305
+ merchant:,
306
+ # The amount that the merchant will receive, denominated in `merchant_currency`
307
+ # and in the smallest currency unit. Note the amount includes `acquirer_fee`,
308
+ # similar to `authorization_amount`. It will be different from
309
+ # `authorization_amount` if the merchant is taking payment in a different
310
+ # currency.
311
+ merchant_amount:,
312
+ # 3-character alphabetic ISO 4217 code for the local currency of the transaction.
313
+ merchant_currency:,
314
+ # Amount (in cents) of the transaction that has been settled, including any
315
+ # acquirer fees
316
+ settled_amount:,
317
+ # The type of authorization request that this request is for. Note that
318
+ # `CREDIT_AUTHORIZATION` and `FINANCIAL_CREDIT_AUTHORIZATION` is only available to
319
+ # users with credit decisioning via ASA enabled.
320
+ status:,
321
+ # The entity that initiated the transaction.
322
+ transaction_initiator:,
323
+ account_type: nil,
324
+ cardholder_authentication: nil,
325
+ # Deprecated, use `cash_amount`.
326
+ cashback: nil,
327
+ # If the transaction was requested in a currency other than the settlement
328
+ # currency, this field will be populated to indicate the rate used to translate
329
+ # the merchant_amount to the amount (i.e., `merchant_amount` x `conversion_rate` =
330
+ # `amount`). Note that the `merchant_amount` is in the local currency and the
331
+ # amount is in the settlement currency.
332
+ conversion_rate: nil,
333
+ # The event token associated with the authorization. This field is only set for
334
+ # programs enrolled into the beta.
335
+ event_token: nil,
336
+ # Optional Object containing information if the Card is a part of a Fleet managed
337
+ # program
338
+ fleet_info: nil,
339
+ # The latest Authorization Challenge that was issued to the cardholder for this
340
+ # merchant.
341
+ latest_challenge: nil,
342
+ # Card network of the authorization.
343
+ network: nil,
344
+ # Network-provided score assessing risk level associated with a given
345
+ # authorization. Scores are on a range of 0-999, with 0 representing the lowest
346
+ # risk and 999 representing the highest risk. For Visa transactions, where the raw
347
+ # score has a range of 0-99, Lithic will normalize the score by multiplying the
348
+ # raw score by 10x.
349
+ network_risk_score: nil,
350
+ # Contains raw data provided by the card network, including attributes that
351
+ # provide further context about the authorization. If populated by the network,
352
+ # data is organized by Lithic and passed through without further modification.
353
+ # Please consult the official network documentation for more details about these
354
+ # values and how to use them. This object is only available to certain programs-
355
+ # contact your Customer Success Manager to discuss enabling access.
356
+ network_specific_data: nil,
357
+ pos: nil,
358
+ token_info: nil,
359
+ # Deprecated: approximate time-to-live for the authorization.
360
+ ttl: nil
361
+ )
362
+ end
363
+
364
+ sig do
365
+ override.returns(
366
+ {
367
+ token: String,
368
+ acquirer_fee: Integer,
369
+ amount: Integer,
370
+ authorization_amount: Integer,
371
+ avs: Lithic::AsaRequestWebhookEvent::Avs,
372
+ card: Lithic::AsaRequestWebhookEvent::Card,
373
+ cardholder_currency: String,
374
+ cash_amount: Integer,
375
+ created: Time,
376
+ merchant: Lithic::Merchant,
377
+ merchant_amount: Integer,
378
+ merchant_currency: String,
379
+ settled_amount: Integer,
380
+ status: Lithic::AsaRequestWebhookEvent::Status::TaggedSymbol,
381
+ transaction_initiator:
382
+ Lithic::AsaRequestWebhookEvent::TransactionInitiator::TaggedSymbol,
383
+ account_type:
384
+ Lithic::AsaRequestWebhookEvent::AccountType::TaggedSymbol,
385
+ cardholder_authentication: Lithic::CardholderAuthentication,
386
+ cashback: Integer,
387
+ conversion_rate: Float,
388
+ event_token: String,
389
+ fleet_info: T.nilable(Lithic::AsaRequestWebhookEvent::FleetInfo),
390
+ latest_challenge: Lithic::AsaRequestWebhookEvent::LatestChallenge,
391
+ network: Lithic::AsaRequestWebhookEvent::Network::TaggedSymbol,
392
+ network_risk_score: T.nilable(Integer),
393
+ network_specific_data:
394
+ T.nilable(Lithic::AsaRequestWebhookEvent::NetworkSpecificData),
395
+ pos: Lithic::AsaRequestWebhookEvent::Pos,
396
+ token_info: T.nilable(Lithic::TokenInfo),
397
+ ttl: Time
398
+ }
399
+ )
400
+ end
401
+ def to_hash
402
+ end
403
+
404
+ class Avs < Lithic::Internal::Type::BaseModel
405
+ OrHash =
406
+ T.type_alias do
407
+ T.any(
408
+ Lithic::AsaRequestWebhookEvent::Avs,
409
+ Lithic::Internal::AnyHash
410
+ )
411
+ end
412
+
413
+ # Cardholder address
414
+ sig { returns(String) }
415
+ attr_accessor :address
416
+
417
+ # Lithic's evaluation result comparing the transaction's address data with the
418
+ # cardholder KYC data if it exists. In the event Lithic does not have any
419
+ # Cardholder KYC data, or the transaction does not contain any address data,
420
+ # NOT_PRESENT will be returned
421
+ sig do
422
+ returns(
423
+ Lithic::AsaRequestWebhookEvent::Avs::AddressOnFileMatch::TaggedSymbol
424
+ )
425
+ end
426
+ attr_accessor :address_on_file_match
427
+
428
+ # Cardholder ZIP code
429
+ sig { returns(String) }
430
+ attr_accessor :zipcode
431
+
432
+ sig do
433
+ params(
434
+ address: String,
435
+ address_on_file_match:
436
+ Lithic::AsaRequestWebhookEvent::Avs::AddressOnFileMatch::OrSymbol,
437
+ zipcode: String
438
+ ).returns(T.attached_class)
439
+ end
440
+ def self.new(
441
+ # Cardholder address
442
+ address:,
443
+ # Lithic's evaluation result comparing the transaction's address data with the
444
+ # cardholder KYC data if it exists. In the event Lithic does not have any
445
+ # Cardholder KYC data, or the transaction does not contain any address data,
446
+ # NOT_PRESENT will be returned
447
+ address_on_file_match:,
448
+ # Cardholder ZIP code
449
+ zipcode:
450
+ )
451
+ end
452
+
453
+ sig do
454
+ override.returns(
455
+ {
456
+ address: String,
457
+ address_on_file_match:
458
+ Lithic::AsaRequestWebhookEvent::Avs::AddressOnFileMatch::TaggedSymbol,
459
+ zipcode: String
460
+ }
461
+ )
462
+ end
463
+ def to_hash
464
+ end
465
+
466
+ # Lithic's evaluation result comparing the transaction's address data with the
467
+ # cardholder KYC data if it exists. In the event Lithic does not have any
468
+ # Cardholder KYC data, or the transaction does not contain any address data,
469
+ # NOT_PRESENT will be returned
470
+ module AddressOnFileMatch
471
+ extend Lithic::Internal::Type::Enum
472
+
473
+ TaggedSymbol =
474
+ T.type_alias do
475
+ T.all(
476
+ Symbol,
477
+ Lithic::AsaRequestWebhookEvent::Avs::AddressOnFileMatch
478
+ )
479
+ end
480
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
481
+
482
+ MATCH =
483
+ T.let(
484
+ :MATCH,
485
+ Lithic::AsaRequestWebhookEvent::Avs::AddressOnFileMatch::TaggedSymbol
486
+ )
487
+ MATCH_ADDRESS_ONLY =
488
+ T.let(
489
+ :MATCH_ADDRESS_ONLY,
490
+ Lithic::AsaRequestWebhookEvent::Avs::AddressOnFileMatch::TaggedSymbol
491
+ )
492
+ MATCH_ZIP_ONLY =
493
+ T.let(
494
+ :MATCH_ZIP_ONLY,
495
+ Lithic::AsaRequestWebhookEvent::Avs::AddressOnFileMatch::TaggedSymbol
496
+ )
497
+ MISMATCH =
498
+ T.let(
499
+ :MISMATCH,
500
+ Lithic::AsaRequestWebhookEvent::Avs::AddressOnFileMatch::TaggedSymbol
501
+ )
502
+ NOT_PRESENT =
503
+ T.let(
504
+ :NOT_PRESENT,
505
+ Lithic::AsaRequestWebhookEvent::Avs::AddressOnFileMatch::TaggedSymbol
506
+ )
507
+
508
+ sig do
509
+ override.returns(
510
+ T::Array[
511
+ Lithic::AsaRequestWebhookEvent::Avs::AddressOnFileMatch::TaggedSymbol
512
+ ]
513
+ )
514
+ end
515
+ def self.values
516
+ end
517
+ end
518
+ end
519
+
520
+ class Card < Lithic::Internal::Type::BaseModel
521
+ OrHash =
522
+ T.type_alias do
523
+ T.any(
524
+ Lithic::AsaRequestWebhookEvent::Card,
525
+ Lithic::Internal::AnyHash
526
+ )
527
+ end
528
+
529
+ # Globally unique identifier for the card.
530
+ sig { returns(T.nilable(String)) }
531
+ attr_reader :token
532
+
533
+ sig { params(token: String).void }
534
+ attr_writer :token
535
+
536
+ # Hostname of card’s locked merchant (will be empty if not applicable)
537
+ sig { returns(T.nilable(String)) }
538
+ attr_reader :hostname
539
+
540
+ sig { params(hostname: String).void }
541
+ attr_writer :hostname
542
+
543
+ # Last four digits of the card number
544
+ sig { returns(T.nilable(String)) }
545
+ attr_reader :last_four
546
+
547
+ sig { params(last_four: String).void }
548
+ attr_writer :last_four
549
+
550
+ # Customizable name to identify the card. We recommend against using this field to
551
+ # store JSON data as it can cause unexpected behavior.
552
+ sig { returns(T.nilable(String)) }
553
+ attr_reader :memo
554
+
555
+ sig { params(memo: String).void }
556
+ attr_writer :memo
557
+
558
+ # Amount (in cents) to limit approved authorizations. Purchase requests above the
559
+ # spend limit will be declined (refunds and credits will be approved).
560
+ #
561
+ # Note that while spend limits are enforced based on authorized and settled volume
562
+ # on a card, they are not recommended to be used for balance or
563
+ # reconciliation-level accuracy. Spend limits also cannot block force posted
564
+ # charges (i.e., when a merchant sends a clearing message without a prior
565
+ # authorization).
566
+ sig { returns(T.nilable(Integer)) }
567
+ attr_reader :spend_limit
568
+
569
+ sig { params(spend_limit: Integer).void }
570
+ attr_writer :spend_limit
571
+
572
+ # Note that to support recurring monthly payments, which can occur on different
573
+ # day every month, the time window we consider for MONTHLY velocity starts 6 days
574
+ # after the current calendar date one month prior.
575
+ sig do
576
+ returns(
577
+ T.nilable(
578
+ Lithic::AsaRequestWebhookEvent::Card::SpendLimitDuration::TaggedSymbol
579
+ )
580
+ )
581
+ end
582
+ attr_reader :spend_limit_duration
583
+
584
+ sig do
585
+ params(
586
+ spend_limit_duration:
587
+ Lithic::AsaRequestWebhookEvent::Card::SpendLimitDuration::OrSymbol
588
+ ).void
589
+ end
590
+ attr_writer :spend_limit_duration
591
+
592
+ sig do
593
+ returns(
594
+ T.nilable(Lithic::AsaRequestWebhookEvent::Card::State::TaggedSymbol)
595
+ )
596
+ end
597
+ attr_reader :state
598
+
599
+ sig do
600
+ params(
601
+ state: Lithic::AsaRequestWebhookEvent::Card::State::OrSymbol
602
+ ).void
603
+ end
604
+ attr_writer :state
605
+
606
+ sig do
607
+ returns(
608
+ T.nilable(Lithic::AsaRequestWebhookEvent::Card::Type::TaggedSymbol)
609
+ )
610
+ end
611
+ attr_reader :type
612
+
613
+ sig do
614
+ params(
615
+ type: Lithic::AsaRequestWebhookEvent::Card::Type::OrSymbol
616
+ ).void
617
+ end
618
+ attr_writer :type
619
+
620
+ # Card object in ASA
621
+ sig do
622
+ params(
623
+ token: String,
624
+ hostname: String,
625
+ last_four: String,
626
+ memo: String,
627
+ spend_limit: Integer,
628
+ spend_limit_duration:
629
+ Lithic::AsaRequestWebhookEvent::Card::SpendLimitDuration::OrSymbol,
630
+ state: Lithic::AsaRequestWebhookEvent::Card::State::OrSymbol,
631
+ type: Lithic::AsaRequestWebhookEvent::Card::Type::OrSymbol
632
+ ).returns(T.attached_class)
633
+ end
634
+ def self.new(
635
+ # Globally unique identifier for the card.
636
+ token: nil,
637
+ # Hostname of card’s locked merchant (will be empty if not applicable)
638
+ hostname: nil,
639
+ # Last four digits of the card number
640
+ last_four: nil,
641
+ # Customizable name to identify the card. We recommend against using this field to
642
+ # store JSON data as it can cause unexpected behavior.
643
+ memo: nil,
644
+ # Amount (in cents) to limit approved authorizations. Purchase requests above the
645
+ # spend limit will be declined (refunds and credits will be approved).
646
+ #
647
+ # Note that while spend limits are enforced based on authorized and settled volume
648
+ # on a card, they are not recommended to be used for balance or
649
+ # reconciliation-level accuracy. Spend limits also cannot block force posted
650
+ # charges (i.e., when a merchant sends a clearing message without a prior
651
+ # authorization).
652
+ spend_limit: nil,
653
+ # Note that to support recurring monthly payments, which can occur on different
654
+ # day every month, the time window we consider for MONTHLY velocity starts 6 days
655
+ # after the current calendar date one month prior.
656
+ spend_limit_duration: nil,
657
+ state: nil,
658
+ type: nil
659
+ )
660
+ end
661
+
662
+ sig do
663
+ override.returns(
664
+ {
665
+ token: String,
666
+ hostname: String,
667
+ last_four: String,
668
+ memo: String,
669
+ spend_limit: Integer,
670
+ spend_limit_duration:
671
+ Lithic::AsaRequestWebhookEvent::Card::SpendLimitDuration::TaggedSymbol,
672
+ state: Lithic::AsaRequestWebhookEvent::Card::State::TaggedSymbol,
673
+ type: Lithic::AsaRequestWebhookEvent::Card::Type::TaggedSymbol
674
+ }
675
+ )
676
+ end
677
+ def to_hash
678
+ end
679
+
680
+ # Note that to support recurring monthly payments, which can occur on different
681
+ # day every month, the time window we consider for MONTHLY velocity starts 6 days
682
+ # after the current calendar date one month prior.
683
+ module SpendLimitDuration
684
+ extend Lithic::Internal::Type::Enum
685
+
686
+ TaggedSymbol =
687
+ T.type_alias do
688
+ T.all(
689
+ Symbol,
690
+ Lithic::AsaRequestWebhookEvent::Card::SpendLimitDuration
691
+ )
692
+ end
693
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
694
+
695
+ ANNUALLY =
696
+ T.let(
697
+ :ANNUALLY,
698
+ Lithic::AsaRequestWebhookEvent::Card::SpendLimitDuration::TaggedSymbol
699
+ )
700
+ FOREVER =
701
+ T.let(
702
+ :FOREVER,
703
+ Lithic::AsaRequestWebhookEvent::Card::SpendLimitDuration::TaggedSymbol
704
+ )
705
+ MONTHLY =
706
+ T.let(
707
+ :MONTHLY,
708
+ Lithic::AsaRequestWebhookEvent::Card::SpendLimitDuration::TaggedSymbol
709
+ )
710
+ TRANSACTION =
711
+ T.let(
712
+ :TRANSACTION,
713
+ Lithic::AsaRequestWebhookEvent::Card::SpendLimitDuration::TaggedSymbol
714
+ )
715
+
716
+ sig do
717
+ override.returns(
718
+ T::Array[
719
+ Lithic::AsaRequestWebhookEvent::Card::SpendLimitDuration::TaggedSymbol
720
+ ]
721
+ )
722
+ end
723
+ def self.values
724
+ end
725
+ end
726
+
727
+ module State
728
+ extend Lithic::Internal::Type::Enum
729
+
730
+ TaggedSymbol =
731
+ T.type_alias do
732
+ T.all(Symbol, Lithic::AsaRequestWebhookEvent::Card::State)
733
+ end
734
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
735
+
736
+ CLOSED =
737
+ T.let(
738
+ :CLOSED,
739
+ Lithic::AsaRequestWebhookEvent::Card::State::TaggedSymbol
740
+ )
741
+ OPEN =
742
+ T.let(
743
+ :OPEN,
744
+ Lithic::AsaRequestWebhookEvent::Card::State::TaggedSymbol
745
+ )
746
+ PAUSED =
747
+ T.let(
748
+ :PAUSED,
749
+ Lithic::AsaRequestWebhookEvent::Card::State::TaggedSymbol
750
+ )
751
+ PENDING_ACTIVATION =
752
+ T.let(
753
+ :PENDING_ACTIVATION,
754
+ Lithic::AsaRequestWebhookEvent::Card::State::TaggedSymbol
755
+ )
756
+ PENDING_FULFILLMENT =
757
+ T.let(
758
+ :PENDING_FULFILLMENT,
759
+ Lithic::AsaRequestWebhookEvent::Card::State::TaggedSymbol
760
+ )
761
+
762
+ sig do
763
+ override.returns(
764
+ T::Array[
765
+ Lithic::AsaRequestWebhookEvent::Card::State::TaggedSymbol
766
+ ]
767
+ )
768
+ end
769
+ def self.values
770
+ end
771
+ end
772
+
773
+ module Type
774
+ extend Lithic::Internal::Type::Enum
775
+
776
+ TaggedSymbol =
777
+ T.type_alias do
778
+ T.all(Symbol, Lithic::AsaRequestWebhookEvent::Card::Type)
779
+ end
780
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
781
+
782
+ SINGLE_USE =
783
+ T.let(
784
+ :SINGLE_USE,
785
+ Lithic::AsaRequestWebhookEvent::Card::Type::TaggedSymbol
786
+ )
787
+ MERCHANT_LOCKED =
788
+ T.let(
789
+ :MERCHANT_LOCKED,
790
+ Lithic::AsaRequestWebhookEvent::Card::Type::TaggedSymbol
791
+ )
792
+ UNLOCKED =
793
+ T.let(
794
+ :UNLOCKED,
795
+ Lithic::AsaRequestWebhookEvent::Card::Type::TaggedSymbol
796
+ )
797
+ PHYSICAL =
798
+ T.let(
799
+ :PHYSICAL,
800
+ Lithic::AsaRequestWebhookEvent::Card::Type::TaggedSymbol
801
+ )
802
+ DIGITAL_WALLET =
803
+ T.let(
804
+ :DIGITAL_WALLET,
805
+ Lithic::AsaRequestWebhookEvent::Card::Type::TaggedSymbol
806
+ )
807
+ VIRTUAL =
808
+ T.let(
809
+ :VIRTUAL,
810
+ Lithic::AsaRequestWebhookEvent::Card::Type::TaggedSymbol
811
+ )
812
+
813
+ sig do
814
+ override.returns(
815
+ T::Array[Lithic::AsaRequestWebhookEvent::Card::Type::TaggedSymbol]
816
+ )
817
+ end
818
+ def self.values
819
+ end
820
+ end
821
+ end
822
+
823
+ # The type of authorization request that this request is for. Note that
824
+ # `CREDIT_AUTHORIZATION` and `FINANCIAL_CREDIT_AUTHORIZATION` is only available to
825
+ # users with credit decisioning via ASA enabled.
826
+ module Status
827
+ extend Lithic::Internal::Type::Enum
828
+
829
+ TaggedSymbol =
830
+ T.type_alias { T.all(Symbol, Lithic::AsaRequestWebhookEvent::Status) }
831
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
832
+
833
+ AUTHORIZATION =
834
+ T.let(
835
+ :AUTHORIZATION,
836
+ Lithic::AsaRequestWebhookEvent::Status::TaggedSymbol
837
+ )
838
+ CREDIT_AUTHORIZATION =
839
+ T.let(
840
+ :CREDIT_AUTHORIZATION,
841
+ Lithic::AsaRequestWebhookEvent::Status::TaggedSymbol
842
+ )
843
+ FINANCIAL_AUTHORIZATION =
844
+ T.let(
845
+ :FINANCIAL_AUTHORIZATION,
846
+ Lithic::AsaRequestWebhookEvent::Status::TaggedSymbol
847
+ )
848
+ FINANCIAL_CREDIT_AUTHORIZATION =
849
+ T.let(
850
+ :FINANCIAL_CREDIT_AUTHORIZATION,
851
+ Lithic::AsaRequestWebhookEvent::Status::TaggedSymbol
852
+ )
853
+ BALANCE_INQUIRY =
854
+ T.let(
855
+ :BALANCE_INQUIRY,
856
+ Lithic::AsaRequestWebhookEvent::Status::TaggedSymbol
857
+ )
858
+
859
+ sig do
860
+ override.returns(
861
+ T::Array[Lithic::AsaRequestWebhookEvent::Status::TaggedSymbol]
862
+ )
863
+ end
864
+ def self.values
865
+ end
866
+ end
867
+
868
+ # The entity that initiated the transaction.
869
+ module TransactionInitiator
870
+ extend Lithic::Internal::Type::Enum
871
+
872
+ TaggedSymbol =
873
+ T.type_alias do
874
+ T.all(Symbol, Lithic::AsaRequestWebhookEvent::TransactionInitiator)
875
+ end
876
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
877
+
878
+ CARDHOLDER =
879
+ T.let(
880
+ :CARDHOLDER,
881
+ Lithic::AsaRequestWebhookEvent::TransactionInitiator::TaggedSymbol
882
+ )
883
+ MERCHANT =
884
+ T.let(
885
+ :MERCHANT,
886
+ Lithic::AsaRequestWebhookEvent::TransactionInitiator::TaggedSymbol
887
+ )
888
+ UNKNOWN =
889
+ T.let(
890
+ :UNKNOWN,
891
+ Lithic::AsaRequestWebhookEvent::TransactionInitiator::TaggedSymbol
892
+ )
893
+
894
+ sig do
895
+ override.returns(
896
+ T::Array[
897
+ Lithic::AsaRequestWebhookEvent::TransactionInitiator::TaggedSymbol
898
+ ]
899
+ )
900
+ end
901
+ def self.values
902
+ end
903
+ end
904
+
905
+ module AccountType
906
+ extend Lithic::Internal::Type::Enum
907
+
908
+ TaggedSymbol =
909
+ T.type_alias do
910
+ T.all(Symbol, Lithic::AsaRequestWebhookEvent::AccountType)
911
+ end
912
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
913
+
914
+ CHECKING =
915
+ T.let(
916
+ :CHECKING,
917
+ Lithic::AsaRequestWebhookEvent::AccountType::TaggedSymbol
918
+ )
919
+ SAVINGS =
920
+ T.let(
921
+ :SAVINGS,
922
+ Lithic::AsaRequestWebhookEvent::AccountType::TaggedSymbol
923
+ )
924
+
925
+ sig do
926
+ override.returns(
927
+ T::Array[Lithic::AsaRequestWebhookEvent::AccountType::TaggedSymbol]
928
+ )
929
+ end
930
+ def self.values
931
+ end
932
+ end
933
+
934
+ class FleetInfo < Lithic::Internal::Type::BaseModel
935
+ OrHash =
936
+ T.type_alias do
937
+ T.any(
938
+ Lithic::AsaRequestWebhookEvent::FleetInfo,
939
+ Lithic::Internal::AnyHash
940
+ )
941
+ end
942
+
943
+ # Code indicating what the driver was prompted to enter at time of purchase. This
944
+ # is configured at a program level and is a static configuration, and does not
945
+ # change on a request to request basis
946
+ sig do
947
+ returns(
948
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetPromptCode::TaggedSymbol
949
+ )
950
+ end
951
+ attr_accessor :fleet_prompt_code
952
+
953
+ # Code indicating which restrictions, if any, there are on purchase. This is
954
+ # configured at a program level and is a static configuration, and does not change
955
+ # on a request to request basis
956
+ sig do
957
+ returns(
958
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetRestrictionCode::TaggedSymbol
959
+ )
960
+ end
961
+ attr_accessor :fleet_restriction_code
962
+
963
+ # Number representing the driver
964
+ sig { returns(T.nilable(String)) }
965
+ attr_accessor :driver_number
966
+
967
+ # Number associated with the vehicle
968
+ sig { returns(T.nilable(String)) }
969
+ attr_accessor :vehicle_number
970
+
971
+ # Optional Object containing information if the Card is a part of a Fleet managed
972
+ # program
973
+ sig do
974
+ params(
975
+ fleet_prompt_code:
976
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetPromptCode::OrSymbol,
977
+ fleet_restriction_code:
978
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetRestrictionCode::OrSymbol,
979
+ driver_number: T.nilable(String),
980
+ vehicle_number: T.nilable(String)
981
+ ).returns(T.attached_class)
982
+ end
983
+ def self.new(
984
+ # Code indicating what the driver was prompted to enter at time of purchase. This
985
+ # is configured at a program level and is a static configuration, and does not
986
+ # change on a request to request basis
987
+ fleet_prompt_code:,
988
+ # Code indicating which restrictions, if any, there are on purchase. This is
989
+ # configured at a program level and is a static configuration, and does not change
990
+ # on a request to request basis
991
+ fleet_restriction_code:,
992
+ # Number representing the driver
993
+ driver_number: nil,
994
+ # Number associated with the vehicle
995
+ vehicle_number: nil
996
+ )
997
+ end
998
+
999
+ sig do
1000
+ override.returns(
1001
+ {
1002
+ fleet_prompt_code:
1003
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetPromptCode::TaggedSymbol,
1004
+ fleet_restriction_code:
1005
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetRestrictionCode::TaggedSymbol,
1006
+ driver_number: T.nilable(String),
1007
+ vehicle_number: T.nilable(String)
1008
+ }
1009
+ )
1010
+ end
1011
+ def to_hash
1012
+ end
1013
+
1014
+ # Code indicating what the driver was prompted to enter at time of purchase. This
1015
+ # is configured at a program level and is a static configuration, and does not
1016
+ # change on a request to request basis
1017
+ module FleetPromptCode
1018
+ extend Lithic::Internal::Type::Enum
1019
+
1020
+ TaggedSymbol =
1021
+ T.type_alias do
1022
+ T.all(
1023
+ Symbol,
1024
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetPromptCode
1025
+ )
1026
+ end
1027
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1028
+
1029
+ NO_PROMPT =
1030
+ T.let(
1031
+ :NO_PROMPT,
1032
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetPromptCode::TaggedSymbol
1033
+ )
1034
+ VEHICLE_NUMBER =
1035
+ T.let(
1036
+ :VEHICLE_NUMBER,
1037
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetPromptCode::TaggedSymbol
1038
+ )
1039
+ DRIVER_NUMBER =
1040
+ T.let(
1041
+ :DRIVER_NUMBER,
1042
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetPromptCode::TaggedSymbol
1043
+ )
1044
+
1045
+ sig do
1046
+ override.returns(
1047
+ T::Array[
1048
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetPromptCode::TaggedSymbol
1049
+ ]
1050
+ )
1051
+ end
1052
+ def self.values
1053
+ end
1054
+ end
1055
+
1056
+ # Code indicating which restrictions, if any, there are on purchase. This is
1057
+ # configured at a program level and is a static configuration, and does not change
1058
+ # on a request to request basis
1059
+ module FleetRestrictionCode
1060
+ extend Lithic::Internal::Type::Enum
1061
+
1062
+ TaggedSymbol =
1063
+ T.type_alias do
1064
+ T.all(
1065
+ Symbol,
1066
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetRestrictionCode
1067
+ )
1068
+ end
1069
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1070
+
1071
+ NO_RESTRICTIONS =
1072
+ T.let(
1073
+ :NO_RESTRICTIONS,
1074
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetRestrictionCode::TaggedSymbol
1075
+ )
1076
+ FUEL_ONLY =
1077
+ T.let(
1078
+ :FUEL_ONLY,
1079
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetRestrictionCode::TaggedSymbol
1080
+ )
1081
+
1082
+ sig do
1083
+ override.returns(
1084
+ T::Array[
1085
+ Lithic::AsaRequestWebhookEvent::FleetInfo::FleetRestrictionCode::TaggedSymbol
1086
+ ]
1087
+ )
1088
+ end
1089
+ def self.values
1090
+ end
1091
+ end
1092
+ end
1093
+
1094
+ class LatestChallenge < Lithic::Internal::Type::BaseModel
1095
+ OrHash =
1096
+ T.type_alias do
1097
+ T.any(
1098
+ Lithic::AsaRequestWebhookEvent::LatestChallenge,
1099
+ Lithic::Internal::AnyHash
1100
+ )
1101
+ end
1102
+
1103
+ # The phone number used for sending Authorization Challenge SMS.
1104
+ sig { returns(String) }
1105
+ attr_accessor :phone_number
1106
+
1107
+ # The status of the Authorization Challenge
1108
+ #
1109
+ # - `COMPLETED` - Challenge was successfully completed by the cardholder
1110
+ # - `PENDING` - Challenge is still open
1111
+ # - `EXPIRED` - Challenge has expired without being completed
1112
+ # - `ERROR` - There was an error processing the challenge
1113
+ sig do
1114
+ returns(
1115
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::Status::TaggedSymbol
1116
+ )
1117
+ end
1118
+ attr_accessor :status
1119
+
1120
+ # The date and time when the Authorization Challenge was completed in UTC. Present
1121
+ # only if the status is `COMPLETED`.
1122
+ sig { returns(T.nilable(Time)) }
1123
+ attr_reader :completed_at
1124
+
1125
+ sig { params(completed_at: Time).void }
1126
+ attr_writer :completed_at
1127
+
1128
+ # The latest Authorization Challenge that was issued to the cardholder for this
1129
+ # merchant.
1130
+ sig do
1131
+ params(
1132
+ phone_number: String,
1133
+ status:
1134
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::Status::OrSymbol,
1135
+ completed_at: Time
1136
+ ).returns(T.attached_class)
1137
+ end
1138
+ def self.new(
1139
+ # The phone number used for sending Authorization Challenge SMS.
1140
+ phone_number:,
1141
+ # The status of the Authorization Challenge
1142
+ #
1143
+ # - `COMPLETED` - Challenge was successfully completed by the cardholder
1144
+ # - `PENDING` - Challenge is still open
1145
+ # - `EXPIRED` - Challenge has expired without being completed
1146
+ # - `ERROR` - There was an error processing the challenge
1147
+ status:,
1148
+ # The date and time when the Authorization Challenge was completed in UTC. Present
1149
+ # only if the status is `COMPLETED`.
1150
+ completed_at: nil
1151
+ )
1152
+ end
1153
+
1154
+ sig do
1155
+ override.returns(
1156
+ {
1157
+ phone_number: String,
1158
+ status:
1159
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::Status::TaggedSymbol,
1160
+ completed_at: Time
1161
+ }
1162
+ )
1163
+ end
1164
+ def to_hash
1165
+ end
1166
+
1167
+ # The status of the Authorization Challenge
1168
+ #
1169
+ # - `COMPLETED` - Challenge was successfully completed by the cardholder
1170
+ # - `PENDING` - Challenge is still open
1171
+ # - `EXPIRED` - Challenge has expired without being completed
1172
+ # - `ERROR` - There was an error processing the challenge
1173
+ module Status
1174
+ extend Lithic::Internal::Type::Enum
1175
+
1176
+ TaggedSymbol =
1177
+ T.type_alias do
1178
+ T.all(
1179
+ Symbol,
1180
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::Status
1181
+ )
1182
+ end
1183
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1184
+
1185
+ COMPLETED =
1186
+ T.let(
1187
+ :COMPLETED,
1188
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::Status::TaggedSymbol
1189
+ )
1190
+ PENDING =
1191
+ T.let(
1192
+ :PENDING,
1193
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::Status::TaggedSymbol
1194
+ )
1195
+ EXPIRED =
1196
+ T.let(
1197
+ :EXPIRED,
1198
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::Status::TaggedSymbol
1199
+ )
1200
+ ERROR =
1201
+ T.let(
1202
+ :ERROR,
1203
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::Status::TaggedSymbol
1204
+ )
1205
+
1206
+ sig do
1207
+ override.returns(
1208
+ T::Array[
1209
+ Lithic::AsaRequestWebhookEvent::LatestChallenge::Status::TaggedSymbol
1210
+ ]
1211
+ )
1212
+ end
1213
+ def self.values
1214
+ end
1215
+ end
1216
+ end
1217
+
1218
+ # Card network of the authorization.
1219
+ module Network
1220
+ extend Lithic::Internal::Type::Enum
1221
+
1222
+ TaggedSymbol =
1223
+ T.type_alias do
1224
+ T.all(Symbol, Lithic::AsaRequestWebhookEvent::Network)
1225
+ end
1226
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1227
+
1228
+ AMEX =
1229
+ T.let(:AMEX, Lithic::AsaRequestWebhookEvent::Network::TaggedSymbol)
1230
+ INTERLINK =
1231
+ T.let(
1232
+ :INTERLINK,
1233
+ Lithic::AsaRequestWebhookEvent::Network::TaggedSymbol
1234
+ )
1235
+ MAESTRO =
1236
+ T.let(:MAESTRO, Lithic::AsaRequestWebhookEvent::Network::TaggedSymbol)
1237
+ MASTERCARD =
1238
+ T.let(
1239
+ :MASTERCARD,
1240
+ Lithic::AsaRequestWebhookEvent::Network::TaggedSymbol
1241
+ )
1242
+ UNKNOWN =
1243
+ T.let(:UNKNOWN, Lithic::AsaRequestWebhookEvent::Network::TaggedSymbol)
1244
+ VISA =
1245
+ T.let(:VISA, Lithic::AsaRequestWebhookEvent::Network::TaggedSymbol)
1246
+
1247
+ sig do
1248
+ override.returns(
1249
+ T::Array[Lithic::AsaRequestWebhookEvent::Network::TaggedSymbol]
1250
+ )
1251
+ end
1252
+ def self.values
1253
+ end
1254
+ end
1255
+
1256
+ class NetworkSpecificData < Lithic::Internal::Type::BaseModel
1257
+ OrHash =
1258
+ T.type_alias do
1259
+ T.any(
1260
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData,
1261
+ Lithic::Internal::AnyHash
1262
+ )
1263
+ end
1264
+
1265
+ sig do
1266
+ returns(
1267
+ T.nilable(
1268
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Mastercard
1269
+ )
1270
+ )
1271
+ end
1272
+ attr_reader :mastercard
1273
+
1274
+ sig do
1275
+ params(
1276
+ mastercard:
1277
+ T.nilable(
1278
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Mastercard::OrHash
1279
+ )
1280
+ ).void
1281
+ end
1282
+ attr_writer :mastercard
1283
+
1284
+ sig do
1285
+ returns(
1286
+ T.nilable(Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Visa)
1287
+ )
1288
+ end
1289
+ attr_reader :visa
1290
+
1291
+ sig do
1292
+ params(
1293
+ visa:
1294
+ T.nilable(
1295
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Visa::OrHash
1296
+ )
1297
+ ).void
1298
+ end
1299
+ attr_writer :visa
1300
+
1301
+ # Contains raw data provided by the card network, including attributes that
1302
+ # provide further context about the authorization. If populated by the network,
1303
+ # data is organized by Lithic and passed through without further modification.
1304
+ # Please consult the official network documentation for more details about these
1305
+ # values and how to use them. This object is only available to certain programs-
1306
+ # contact your Customer Success Manager to discuss enabling access.
1307
+ sig do
1308
+ params(
1309
+ mastercard:
1310
+ T.nilable(
1311
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Mastercard::OrHash
1312
+ ),
1313
+ visa:
1314
+ T.nilable(
1315
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Visa::OrHash
1316
+ )
1317
+ ).returns(T.attached_class)
1318
+ end
1319
+ def self.new(mastercard: nil, visa: nil)
1320
+ end
1321
+
1322
+ sig do
1323
+ override.returns(
1324
+ {
1325
+ mastercard:
1326
+ T.nilable(
1327
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Mastercard
1328
+ ),
1329
+ visa:
1330
+ T.nilable(
1331
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Visa
1332
+ )
1333
+ }
1334
+ )
1335
+ end
1336
+ def to_hash
1337
+ end
1338
+
1339
+ class Mastercard < Lithic::Internal::Type::BaseModel
1340
+ OrHash =
1341
+ T.type_alias do
1342
+ T.any(
1343
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Mastercard,
1344
+ Lithic::Internal::AnyHash
1345
+ )
1346
+ end
1347
+
1348
+ # Indicates the electronic commerce security level and UCAF collection.
1349
+ sig { returns(T.nilable(String)) }
1350
+ attr_accessor :ecommerce_security_level_indicator
1351
+
1352
+ # The On-behalf Service performed on the transaction and the results. Contains all
1353
+ # applicable, on-behalf service results that were performed on a given
1354
+ # transaction.
1355
+ sig do
1356
+ returns(
1357
+ T.nilable(
1358
+ T::Array[
1359
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Mastercard::OnBehalfServiceResult
1360
+ ]
1361
+ )
1362
+ )
1363
+ end
1364
+ attr_accessor :on_behalf_service_result
1365
+
1366
+ # Indicates the type of additional transaction purpose.
1367
+ sig { returns(T.nilable(String)) }
1368
+ attr_accessor :transaction_type_identifier
1369
+
1370
+ sig do
1371
+ params(
1372
+ ecommerce_security_level_indicator: T.nilable(String),
1373
+ on_behalf_service_result:
1374
+ T.nilable(
1375
+ T::Array[
1376
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Mastercard::OnBehalfServiceResult::OrHash
1377
+ ]
1378
+ ),
1379
+ transaction_type_identifier: T.nilable(String)
1380
+ ).returns(T.attached_class)
1381
+ end
1382
+ def self.new(
1383
+ # Indicates the electronic commerce security level and UCAF collection.
1384
+ ecommerce_security_level_indicator: nil,
1385
+ # The On-behalf Service performed on the transaction and the results. Contains all
1386
+ # applicable, on-behalf service results that were performed on a given
1387
+ # transaction.
1388
+ on_behalf_service_result: nil,
1389
+ # Indicates the type of additional transaction purpose.
1390
+ transaction_type_identifier: nil
1391
+ )
1392
+ end
1393
+
1394
+ sig do
1395
+ override.returns(
1396
+ {
1397
+ ecommerce_security_level_indicator: T.nilable(String),
1398
+ on_behalf_service_result:
1399
+ T.nilable(
1400
+ T::Array[
1401
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Mastercard::OnBehalfServiceResult
1402
+ ]
1403
+ ),
1404
+ transaction_type_identifier: T.nilable(String)
1405
+ }
1406
+ )
1407
+ end
1408
+ def to_hash
1409
+ end
1410
+
1411
+ class OnBehalfServiceResult < Lithic::Internal::Type::BaseModel
1412
+ OrHash =
1413
+ T.type_alias do
1414
+ T.any(
1415
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Mastercard::OnBehalfServiceResult,
1416
+ Lithic::Internal::AnyHash
1417
+ )
1418
+ end
1419
+
1420
+ # Indicates the results of the service processing.
1421
+ sig { returns(String) }
1422
+ attr_accessor :result_1
1423
+
1424
+ # Identifies the results of the service processing.
1425
+ sig { returns(String) }
1426
+ attr_accessor :result_2
1427
+
1428
+ # Indicates the service performed on the transaction.
1429
+ sig { returns(String) }
1430
+ attr_accessor :service
1431
+
1432
+ sig do
1433
+ params(
1434
+ result_1: String,
1435
+ result_2: String,
1436
+ service: String
1437
+ ).returns(T.attached_class)
1438
+ end
1439
+ def self.new(
1440
+ # Indicates the results of the service processing.
1441
+ result_1:,
1442
+ # Identifies the results of the service processing.
1443
+ result_2:,
1444
+ # Indicates the service performed on the transaction.
1445
+ service:
1446
+ )
1447
+ end
1448
+
1449
+ sig do
1450
+ override.returns(
1451
+ { result_1: String, result_2: String, service: String }
1452
+ )
1453
+ end
1454
+ def to_hash
1455
+ end
1456
+ end
1457
+ end
1458
+
1459
+ class Visa < Lithic::Internal::Type::BaseModel
1460
+ OrHash =
1461
+ T.type_alias do
1462
+ T.any(
1463
+ Lithic::AsaRequestWebhookEvent::NetworkSpecificData::Visa,
1464
+ Lithic::Internal::AnyHash
1465
+ )
1466
+ end
1467
+
1468
+ # Identifies the purpose or category of a transaction, used to classify and
1469
+ # process transactions according to Visa’s rules.
1470
+ sig { returns(T.nilable(String)) }
1471
+ attr_accessor :business_application_identifier
1472
+
1473
+ sig do
1474
+ params(business_application_identifier: T.nilable(String)).returns(
1475
+ T.attached_class
1476
+ )
1477
+ end
1478
+ def self.new(
1479
+ # Identifies the purpose or category of a transaction, used to classify and
1480
+ # process transactions according to Visa’s rules.
1481
+ business_application_identifier: nil
1482
+ )
1483
+ end
1484
+
1485
+ sig do
1486
+ override.returns(
1487
+ { business_application_identifier: T.nilable(String) }
1488
+ )
1489
+ end
1490
+ def to_hash
1491
+ end
1492
+ end
1493
+ end
1494
+
1495
+ class Pos < Lithic::Internal::Type::BaseModel
1496
+ OrHash =
1497
+ T.type_alias do
1498
+ T.any(
1499
+ Lithic::AsaRequestWebhookEvent::Pos,
1500
+ Lithic::Internal::AnyHash
1501
+ )
1502
+ end
1503
+
1504
+ # POS > Entry Mode object in ASA
1505
+ sig do
1506
+ returns(T.nilable(Lithic::AsaRequestWebhookEvent::Pos::EntryMode))
1507
+ end
1508
+ attr_reader :entry_mode
1509
+
1510
+ sig do
1511
+ params(
1512
+ entry_mode: Lithic::AsaRequestWebhookEvent::Pos::EntryMode::OrHash
1513
+ ).void
1514
+ end
1515
+ attr_writer :entry_mode
1516
+
1517
+ sig do
1518
+ returns(T.nilable(Lithic::AsaRequestWebhookEvent::Pos::Terminal))
1519
+ end
1520
+ attr_reader :terminal
1521
+
1522
+ sig do
1523
+ params(
1524
+ terminal: Lithic::AsaRequestWebhookEvent::Pos::Terminal::OrHash
1525
+ ).void
1526
+ end
1527
+ attr_writer :terminal
1528
+
1529
+ sig do
1530
+ params(
1531
+ entry_mode: Lithic::AsaRequestWebhookEvent::Pos::EntryMode::OrHash,
1532
+ terminal: Lithic::AsaRequestWebhookEvent::Pos::Terminal::OrHash
1533
+ ).returns(T.attached_class)
1534
+ end
1535
+ def self.new(
1536
+ # POS > Entry Mode object in ASA
1537
+ entry_mode: nil,
1538
+ terminal: nil
1539
+ )
1540
+ end
1541
+
1542
+ sig do
1543
+ override.returns(
1544
+ {
1545
+ entry_mode: Lithic::AsaRequestWebhookEvent::Pos::EntryMode,
1546
+ terminal: Lithic::AsaRequestWebhookEvent::Pos::Terminal
1547
+ }
1548
+ )
1549
+ end
1550
+ def to_hash
1551
+ end
1552
+
1553
+ class EntryMode < Lithic::Internal::Type::BaseModel
1554
+ OrHash =
1555
+ T.type_alias do
1556
+ T.any(
1557
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode,
1558
+ Lithic::Internal::AnyHash
1559
+ )
1560
+ end
1561
+
1562
+ # Card Presence Indicator
1563
+ sig do
1564
+ returns(
1565
+ T.nilable(
1566
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Card::TaggedSymbol
1567
+ )
1568
+ )
1569
+ end
1570
+ attr_reader :card
1571
+
1572
+ sig do
1573
+ params(
1574
+ card:
1575
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Card::OrSymbol
1576
+ ).void
1577
+ end
1578
+ attr_writer :card
1579
+
1580
+ # Cardholder Presence Indicator
1581
+ sig do
1582
+ returns(
1583
+ T.nilable(
1584
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1585
+ )
1586
+ )
1587
+ end
1588
+ attr_reader :cardholder
1589
+
1590
+ sig do
1591
+ params(
1592
+ cardholder:
1593
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::OrSymbol
1594
+ ).void
1595
+ end
1596
+ attr_writer :cardholder
1597
+
1598
+ # Method of entry for the PAN
1599
+ sig do
1600
+ returns(
1601
+ T.nilable(
1602
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1603
+ )
1604
+ )
1605
+ end
1606
+ attr_reader :pan
1607
+
1608
+ sig do
1609
+ params(
1610
+ pan: Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::OrSymbol
1611
+ ).void
1612
+ end
1613
+ attr_writer :pan
1614
+
1615
+ # Indicates whether the cardholder entered the PIN. True if the PIN was entered.
1616
+ sig { returns(T.nilable(T::Boolean)) }
1617
+ attr_reader :pin_entered
1618
+
1619
+ sig { params(pin_entered: T::Boolean).void }
1620
+ attr_writer :pin_entered
1621
+
1622
+ # POS > Entry Mode object in ASA
1623
+ sig do
1624
+ params(
1625
+ card:
1626
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Card::OrSymbol,
1627
+ cardholder:
1628
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::OrSymbol,
1629
+ pan:
1630
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::OrSymbol,
1631
+ pin_entered: T::Boolean
1632
+ ).returns(T.attached_class)
1633
+ end
1634
+ def self.new(
1635
+ # Card Presence Indicator
1636
+ card: nil,
1637
+ # Cardholder Presence Indicator
1638
+ cardholder: nil,
1639
+ # Method of entry for the PAN
1640
+ pan: nil,
1641
+ # Indicates whether the cardholder entered the PIN. True if the PIN was entered.
1642
+ pin_entered: nil
1643
+ )
1644
+ end
1645
+
1646
+ sig do
1647
+ override.returns(
1648
+ {
1649
+ card:
1650
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Card::TaggedSymbol,
1651
+ cardholder:
1652
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol,
1653
+ pan:
1654
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol,
1655
+ pin_entered: T::Boolean
1656
+ }
1657
+ )
1658
+ end
1659
+ def to_hash
1660
+ end
1661
+
1662
+ # Card Presence Indicator
1663
+ module Card
1664
+ extend Lithic::Internal::Type::Enum
1665
+
1666
+ TaggedSymbol =
1667
+ T.type_alias do
1668
+ T.all(
1669
+ Symbol,
1670
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Card
1671
+ )
1672
+ end
1673
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1674
+
1675
+ PRESENT =
1676
+ T.let(
1677
+ :PRESENT,
1678
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Card::TaggedSymbol
1679
+ )
1680
+ NOT_PRESENT =
1681
+ T.let(
1682
+ :NOT_PRESENT,
1683
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Card::TaggedSymbol
1684
+ )
1685
+ UNKNOWN =
1686
+ T.let(
1687
+ :UNKNOWN,
1688
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Card::TaggedSymbol
1689
+ )
1690
+
1691
+ sig do
1692
+ override.returns(
1693
+ T::Array[
1694
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Card::TaggedSymbol
1695
+ ]
1696
+ )
1697
+ end
1698
+ def self.values
1699
+ end
1700
+ end
1701
+
1702
+ # Cardholder Presence Indicator
1703
+ module Cardholder
1704
+ extend Lithic::Internal::Type::Enum
1705
+
1706
+ TaggedSymbol =
1707
+ T.type_alias do
1708
+ T.all(
1709
+ Symbol,
1710
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder
1711
+ )
1712
+ end
1713
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1714
+
1715
+ DEFERRED_BILLING =
1716
+ T.let(
1717
+ :DEFERRED_BILLING,
1718
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1719
+ )
1720
+ ELECTRONIC_ORDER =
1721
+ T.let(
1722
+ :ELECTRONIC_ORDER,
1723
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1724
+ )
1725
+ INSTALLMENT =
1726
+ T.let(
1727
+ :INSTALLMENT,
1728
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1729
+ )
1730
+ MAIL_ORDER =
1731
+ T.let(
1732
+ :MAIL_ORDER,
1733
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1734
+ )
1735
+ NOT_PRESENT =
1736
+ T.let(
1737
+ :NOT_PRESENT,
1738
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1739
+ )
1740
+ PRESENT =
1741
+ T.let(
1742
+ :PRESENT,
1743
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1744
+ )
1745
+ REOCCURRING =
1746
+ T.let(
1747
+ :REOCCURRING,
1748
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1749
+ )
1750
+ TELEPHONE_ORDER =
1751
+ T.let(
1752
+ :TELEPHONE_ORDER,
1753
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1754
+ )
1755
+ UNKNOWN =
1756
+ T.let(
1757
+ :UNKNOWN,
1758
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1759
+ )
1760
+
1761
+ sig do
1762
+ override.returns(
1763
+ T::Array[
1764
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Cardholder::TaggedSymbol
1765
+ ]
1766
+ )
1767
+ end
1768
+ def self.values
1769
+ end
1770
+ end
1771
+
1772
+ # Method of entry for the PAN
1773
+ module Pan
1774
+ extend Lithic::Internal::Type::Enum
1775
+
1776
+ TaggedSymbol =
1777
+ T.type_alias do
1778
+ T.all(
1779
+ Symbol,
1780
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan
1781
+ )
1782
+ end
1783
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1784
+
1785
+ AUTO_ENTRY =
1786
+ T.let(
1787
+ :AUTO_ENTRY,
1788
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1789
+ )
1790
+ BAR_CODE =
1791
+ T.let(
1792
+ :BAR_CODE,
1793
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1794
+ )
1795
+ CONTACTLESS =
1796
+ T.let(
1797
+ :CONTACTLESS,
1798
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1799
+ )
1800
+ ECOMMERCE =
1801
+ T.let(
1802
+ :ECOMMERCE,
1803
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1804
+ )
1805
+ ERROR_KEYED =
1806
+ T.let(
1807
+ :ERROR_KEYED,
1808
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1809
+ )
1810
+ ERROR_MAGNETIC_STRIPE =
1811
+ T.let(
1812
+ :ERROR_MAGNETIC_STRIPE,
1813
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1814
+ )
1815
+ ICC =
1816
+ T.let(
1817
+ :ICC,
1818
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1819
+ )
1820
+ KEY_ENTERED =
1821
+ T.let(
1822
+ :KEY_ENTERED,
1823
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1824
+ )
1825
+ MAGNETIC_STRIPE =
1826
+ T.let(
1827
+ :MAGNETIC_STRIPE,
1828
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1829
+ )
1830
+ MANUAL =
1831
+ T.let(
1832
+ :MANUAL,
1833
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1834
+ )
1835
+ OCR =
1836
+ T.let(
1837
+ :OCR,
1838
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1839
+ )
1840
+ SECURE_CARDLESS =
1841
+ T.let(
1842
+ :SECURE_CARDLESS,
1843
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1844
+ )
1845
+ UNSPECIFIED =
1846
+ T.let(
1847
+ :UNSPECIFIED,
1848
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1849
+ )
1850
+ UNKNOWN =
1851
+ T.let(
1852
+ :UNKNOWN,
1853
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1854
+ )
1855
+ CREDENTIAL_ON_FILE =
1856
+ T.let(
1857
+ :CREDENTIAL_ON_FILE,
1858
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1859
+ )
1860
+
1861
+ sig do
1862
+ override.returns(
1863
+ T::Array[
1864
+ Lithic::AsaRequestWebhookEvent::Pos::EntryMode::Pan::TaggedSymbol
1865
+ ]
1866
+ )
1867
+ end
1868
+ def self.values
1869
+ end
1870
+ end
1871
+ end
1872
+
1873
+ class Terminal < Lithic::Internal::Type::BaseModel
1874
+ OrHash =
1875
+ T.type_alias do
1876
+ T.any(
1877
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal,
1878
+ Lithic::Internal::AnyHash
1879
+ )
1880
+ end
1881
+
1882
+ # True if a clerk is present at the sale.
1883
+ sig { returns(T::Boolean) }
1884
+ attr_accessor :attended
1885
+
1886
+ # True if the terminal is capable of retaining the card.
1887
+ sig { returns(T::Boolean) }
1888
+ attr_accessor :card_retention_capable
1889
+
1890
+ # True if the sale was made at the place of business (vs. mobile).
1891
+ sig { returns(T::Boolean) }
1892
+ attr_accessor :on_premise
1893
+
1894
+ # The person that is designated to swipe the card
1895
+ sig do
1896
+ returns(
1897
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Operator::TaggedSymbol
1898
+ )
1899
+ end
1900
+ attr_accessor :operator
1901
+
1902
+ # True if the terminal is capable of partial approval. Partial approval is when
1903
+ # part of a transaction is approved and another payment must be used for the
1904
+ # remainder. Example scenario: A $40 transaction is attempted on a prepaid card
1905
+ # with a $25 balance. If partial approval is enabled, $25 can be authorized, at
1906
+ # which point the POS will prompt the user for an additional payment of $15.
1907
+ sig { returns(T::Boolean) }
1908
+ attr_accessor :partial_approval_capable
1909
+
1910
+ # Status of whether the POS is able to accept PINs
1911
+ sig do
1912
+ returns(
1913
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::PinCapability::TaggedSymbol
1914
+ )
1915
+ end
1916
+ attr_accessor :pin_capability
1917
+
1918
+ # POS Type
1919
+ sig do
1920
+ returns(
1921
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
1922
+ )
1923
+ end
1924
+ attr_accessor :type
1925
+
1926
+ # Uniquely identifies a terminal at the card acceptor location of acquiring
1927
+ # institutions or merchant POS Systems. Left justified with trailing spaces.
1928
+ sig { returns(T.nilable(String)) }
1929
+ attr_accessor :acceptor_terminal_id
1930
+
1931
+ sig do
1932
+ params(
1933
+ attended: T::Boolean,
1934
+ card_retention_capable: T::Boolean,
1935
+ on_premise: T::Boolean,
1936
+ operator:
1937
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Operator::OrSymbol,
1938
+ partial_approval_capable: T::Boolean,
1939
+ pin_capability:
1940
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::PinCapability::OrSymbol,
1941
+ type:
1942
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::OrSymbol,
1943
+ acceptor_terminal_id: T.nilable(String)
1944
+ ).returns(T.attached_class)
1945
+ end
1946
+ def self.new(
1947
+ # True if a clerk is present at the sale.
1948
+ attended:,
1949
+ # True if the terminal is capable of retaining the card.
1950
+ card_retention_capable:,
1951
+ # True if the sale was made at the place of business (vs. mobile).
1952
+ on_premise:,
1953
+ # The person that is designated to swipe the card
1954
+ operator:,
1955
+ # True if the terminal is capable of partial approval. Partial approval is when
1956
+ # part of a transaction is approved and another payment must be used for the
1957
+ # remainder. Example scenario: A $40 transaction is attempted on a prepaid card
1958
+ # with a $25 balance. If partial approval is enabled, $25 can be authorized, at
1959
+ # which point the POS will prompt the user for an additional payment of $15.
1960
+ partial_approval_capable:,
1961
+ # Status of whether the POS is able to accept PINs
1962
+ pin_capability:,
1963
+ # POS Type
1964
+ type:,
1965
+ # Uniquely identifies a terminal at the card acceptor location of acquiring
1966
+ # institutions or merchant POS Systems. Left justified with trailing spaces.
1967
+ acceptor_terminal_id: nil
1968
+ )
1969
+ end
1970
+
1971
+ sig do
1972
+ override.returns(
1973
+ {
1974
+ attended: T::Boolean,
1975
+ card_retention_capable: T::Boolean,
1976
+ on_premise: T::Boolean,
1977
+ operator:
1978
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Operator::TaggedSymbol,
1979
+ partial_approval_capable: T::Boolean,
1980
+ pin_capability:
1981
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::PinCapability::TaggedSymbol,
1982
+ type:
1983
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol,
1984
+ acceptor_terminal_id: T.nilable(String)
1985
+ }
1986
+ )
1987
+ end
1988
+ def to_hash
1989
+ end
1990
+
1991
+ # The person that is designated to swipe the card
1992
+ module Operator
1993
+ extend Lithic::Internal::Type::Enum
1994
+
1995
+ TaggedSymbol =
1996
+ T.type_alias do
1997
+ T.all(
1998
+ Symbol,
1999
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Operator
2000
+ )
2001
+ end
2002
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2003
+
2004
+ ADMINISTRATIVE =
2005
+ T.let(
2006
+ :ADMINISTRATIVE,
2007
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Operator::TaggedSymbol
2008
+ )
2009
+ CARDHOLDER =
2010
+ T.let(
2011
+ :CARDHOLDER,
2012
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Operator::TaggedSymbol
2013
+ )
2014
+ CARD_ACCEPTOR =
2015
+ T.let(
2016
+ :CARD_ACCEPTOR,
2017
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Operator::TaggedSymbol
2018
+ )
2019
+ UNKNOWN =
2020
+ T.let(
2021
+ :UNKNOWN,
2022
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Operator::TaggedSymbol
2023
+ )
2024
+
2025
+ sig do
2026
+ override.returns(
2027
+ T::Array[
2028
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Operator::TaggedSymbol
2029
+ ]
2030
+ )
2031
+ end
2032
+ def self.values
2033
+ end
2034
+ end
2035
+
2036
+ # Status of whether the POS is able to accept PINs
2037
+ module PinCapability
2038
+ extend Lithic::Internal::Type::Enum
2039
+
2040
+ TaggedSymbol =
2041
+ T.type_alias do
2042
+ T.all(
2043
+ Symbol,
2044
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::PinCapability
2045
+ )
2046
+ end
2047
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2048
+
2049
+ CAPABLE =
2050
+ T.let(
2051
+ :CAPABLE,
2052
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::PinCapability::TaggedSymbol
2053
+ )
2054
+ INOPERATIVE =
2055
+ T.let(
2056
+ :INOPERATIVE,
2057
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::PinCapability::TaggedSymbol
2058
+ )
2059
+ NOT_CAPABLE =
2060
+ T.let(
2061
+ :NOT_CAPABLE,
2062
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::PinCapability::TaggedSymbol
2063
+ )
2064
+ UNSPECIFIED =
2065
+ T.let(
2066
+ :UNSPECIFIED,
2067
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::PinCapability::TaggedSymbol
2068
+ )
2069
+
2070
+ sig do
2071
+ override.returns(
2072
+ T::Array[
2073
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::PinCapability::TaggedSymbol
2074
+ ]
2075
+ )
2076
+ end
2077
+ def self.values
2078
+ end
2079
+ end
2080
+
2081
+ # POS Type
2082
+ module Type
2083
+ extend Lithic::Internal::Type::Enum
2084
+
2085
+ TaggedSymbol =
2086
+ T.type_alias do
2087
+ T.all(
2088
+ Symbol,
2089
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type
2090
+ )
2091
+ end
2092
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2093
+
2094
+ ADMINISTRATIVE =
2095
+ T.let(
2096
+ :ADMINISTRATIVE,
2097
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2098
+ )
2099
+ ATM =
2100
+ T.let(
2101
+ :ATM,
2102
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2103
+ )
2104
+ AUTHORIZATION =
2105
+ T.let(
2106
+ :AUTHORIZATION,
2107
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2108
+ )
2109
+ COUPON_MACHINE =
2110
+ T.let(
2111
+ :COUPON_MACHINE,
2112
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2113
+ )
2114
+ DIAL_TERMINAL =
2115
+ T.let(
2116
+ :DIAL_TERMINAL,
2117
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2118
+ )
2119
+ ECOMMERCE =
2120
+ T.let(
2121
+ :ECOMMERCE,
2122
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2123
+ )
2124
+ ECR =
2125
+ T.let(
2126
+ :ECR,
2127
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2128
+ )
2129
+ FUEL_MACHINE =
2130
+ T.let(
2131
+ :FUEL_MACHINE,
2132
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2133
+ )
2134
+ HOME_TERMINAL =
2135
+ T.let(
2136
+ :HOME_TERMINAL,
2137
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2138
+ )
2139
+ MICR =
2140
+ T.let(
2141
+ :MICR,
2142
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2143
+ )
2144
+ OFF_PREMISE =
2145
+ T.let(
2146
+ :OFF_PREMISE,
2147
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2148
+ )
2149
+ PAYMENT =
2150
+ T.let(
2151
+ :PAYMENT,
2152
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2153
+ )
2154
+ PDA =
2155
+ T.let(
2156
+ :PDA,
2157
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2158
+ )
2159
+ PHONE =
2160
+ T.let(
2161
+ :PHONE,
2162
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2163
+ )
2164
+ POINT =
2165
+ T.let(
2166
+ :POINT,
2167
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2168
+ )
2169
+ POS_TERMINAL =
2170
+ T.let(
2171
+ :POS_TERMINAL,
2172
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2173
+ )
2174
+ PUBLIC_UTILITY =
2175
+ T.let(
2176
+ :PUBLIC_UTILITY,
2177
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2178
+ )
2179
+ SELF_SERVICE =
2180
+ T.let(
2181
+ :SELF_SERVICE,
2182
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2183
+ )
2184
+ TELEVISION =
2185
+ T.let(
2186
+ :TELEVISION,
2187
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2188
+ )
2189
+ TELLER =
2190
+ T.let(
2191
+ :TELLER,
2192
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2193
+ )
2194
+ TRAVELERS_CHECK_MACHINE =
2195
+ T.let(
2196
+ :TRAVELERS_CHECK_MACHINE,
2197
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2198
+ )
2199
+ VENDING =
2200
+ T.let(
2201
+ :VENDING,
2202
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2203
+ )
2204
+ VOICE =
2205
+ T.let(
2206
+ :VOICE,
2207
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2208
+ )
2209
+ UNKNOWN =
2210
+ T.let(
2211
+ :UNKNOWN,
2212
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2213
+ )
2214
+
2215
+ sig do
2216
+ override.returns(
2217
+ T::Array[
2218
+ Lithic::AsaRequestWebhookEvent::Pos::Terminal::Type::TaggedSymbol
2219
+ ]
2220
+ )
2221
+ end
2222
+ def self.values
2223
+ end
2224
+ end
2225
+ end
2226
+ end
2227
+ end
2228
+ end
2229
+ end