lithic 0.1.0 → 0.3.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 (256) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +51 -0
  3. data/README.md +36 -1
  4. data/lib/lithic/client.rb +9 -10
  5. data/lib/lithic/errors.rb +15 -0
  6. data/lib/lithic/internal/transport/pooled_net_requester.rb +12 -10
  7. data/lib/lithic/internal/util.rb +7 -2
  8. data/lib/lithic/models/account_holder_created_webhook_event.rb +75 -0
  9. data/lib/lithic/models/account_holder_document_updated_webhook_event.rb +191 -0
  10. data/lib/lithic/models/account_holder_updated_webhook_event.rb +702 -0
  11. data/lib/lithic/models/account_holder_verification_webhook_event.rb +69 -0
  12. data/lib/lithic/models/auth_rules/conditional_tokenization_action_parameters.rb +5 -0
  13. data/lib/lithic/models/auth_rules_backtest_report_created_webhook_event.rb +16 -0
  14. data/lib/lithic/models/balance_updated_webhook_event.rb +23 -0
  15. data/lib/lithic/models/book_transfer_retry_params.rb +26 -0
  16. data/lib/lithic/models/book_transfer_transaction_created_webhook_event.rb +18 -0
  17. data/lib/lithic/models/book_transfer_transaction_updated_webhook_event.rb +18 -0
  18. data/lib/lithic/models/card_authorization_approval_request_webhook_event.rb +1032 -0
  19. data/lib/lithic/models/card_converted_webhook_event.rb +24 -0
  20. data/lib/lithic/models/card_created_webhook_event.rb +32 -0
  21. data/lib/lithic/models/card_reissued_webhook_event.rb +24 -0
  22. data/lib/lithic/models/card_renewed_webhook_event.rb +56 -0
  23. data/lib/lithic/models/card_shipped_webhook_event.rb +70 -0
  24. data/lib/lithic/models/card_transaction_enhanced_data_created_webhook_event.rb +16 -0
  25. data/lib/lithic/models/card_transaction_enhanced_data_updated_webhook_event.rb +16 -0
  26. data/lib/lithic/models/card_transaction_updated_webhook_event.rb +16 -0
  27. data/lib/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rb +253 -0
  28. data/lib/lithic/models/digital_wallet_tokenization_result_webhook_event.rb +145 -0
  29. data/lib/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_sent_webhook_event.rb +100 -0
  30. data/lib/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_webhook_event.rb +108 -0
  31. data/lib/lithic/models/digital_wallet_tokenization_updated_webhook_event.rb +47 -0
  32. data/lib/lithic/models/dispute_evidence_upload_failed_webhook_event.rb +18 -0
  33. data/lib/lithic/models/dispute_transaction_created_webhook_event.rb +18 -0
  34. data/lib/lithic/models/dispute_transaction_updated_webhook_event.rb +18 -0
  35. data/lib/lithic/models/dispute_updated_webhook_event.rb +18 -0
  36. data/lib/lithic/models/external_bank_account_created_webhook_event.rb +16 -0
  37. data/lib/lithic/models/external_bank_account_updated_webhook_event.rb +16 -0
  38. data/lib/lithic/models/external_payment_create_params.rb +15 -1
  39. data/lib/lithic/models/external_payment_created_webhook_event.rb +16 -0
  40. data/lib/lithic/models/external_payment_updated_webhook_event.rb +16 -0
  41. data/lib/lithic/models/financial_account.rb +33 -25
  42. data/lib/lithic/models/financial_account_created_webhook_event.rb +16 -0
  43. data/lib/lithic/models/financial_account_update_status_params.rb +9 -1
  44. data/lib/lithic/models/financial_account_updated_webhook_event.rb +16 -0
  45. data/lib/lithic/models/financial_accounts/loan_tape.rb +52 -3
  46. data/lib/lithic/models/funding_event_created_webhook_event.rb +16 -0
  47. data/lib/lithic/models/internal_transaction_created_webhook_event.rb +16 -0
  48. data/lib/lithic/models/internal_transaction_updated_webhook_event.rb +16 -0
  49. data/lib/lithic/models/loan_tape_created_webhook_event.rb +16 -0
  50. data/lib/lithic/models/loan_tape_updated_webhook_event.rb +16 -0
  51. data/lib/lithic/models/management_operation_create_params.rb +6 -1
  52. data/lib/lithic/models/management_operation_created_webhook_event.rb +16 -0
  53. data/lib/lithic/models/management_operation_updated_webhook_event.rb +16 -0
  54. data/lib/lithic/models/network_total_created_webhook_event.rb +16 -0
  55. data/lib/lithic/models/network_total_updated_webhook_event.rb +16 -0
  56. data/lib/lithic/models/parsed_webhook_event.rb +817 -0
  57. data/lib/lithic/models/payment.rb +10 -1
  58. data/lib/lithic/models/payment_transaction_created_webhook_event.rb +18 -0
  59. data/lib/lithic/models/payment_transaction_updated_webhook_event.rb +18 -0
  60. data/lib/lithic/models/settlement_report_updated_webhook_event.rb +16 -0
  61. data/lib/lithic/models/statements_created_webhook_event.rb +16 -0
  62. data/lib/lithic/models/three_ds_authentication_approval_request_webhook_event.rb +17 -0
  63. data/lib/lithic/models/three_ds_authentication_challenge_webhook_event.rb +89 -0
  64. data/lib/lithic/models/three_ds_authentication_created_webhook_event.rb +18 -0
  65. data/lib/lithic/models/three_ds_authentication_updated_webhook_event.rb +18 -0
  66. data/lib/lithic/models/tokenization_approval_request_webhook_event.rb +249 -0
  67. data/lib/lithic/models/tokenization_decisioning_request_webhook_event.rb +159 -0
  68. data/lib/lithic/models/tokenization_result_webhook_event.rb +141 -0
  69. data/lib/lithic/models/tokenization_two_factor_authentication_code_sent_webhook_event.rb +100 -0
  70. data/lib/lithic/models/tokenization_two_factor_authentication_code_webhook_event.rb +108 -0
  71. data/lib/lithic/models/tokenization_updated_webhook_event.rb +47 -0
  72. data/lib/lithic/models/transaction.rb +2 -0
  73. data/lib/lithic/models/transfer_limit_list_params.rb +22 -0
  74. data/lib/lithic/models/transfer_limits_response.rb +274 -0
  75. data/lib/lithic/models/webhook_parsed_params.rb +14 -0
  76. data/lib/lithic/models.rb +130 -4
  77. data/lib/lithic/resources/book_transfers.rb +27 -0
  78. data/lib/lithic/resources/cards.rb +1 -5
  79. data/lib/lithic/resources/external_payments.rb +13 -1
  80. data/lib/lithic/resources/financial_accounts.rb +3 -1
  81. data/lib/lithic/resources/management_operations.rb +4 -1
  82. data/lib/lithic/resources/transfer_limits.rb +37 -0
  83. data/lib/lithic/resources/webhooks.rb +88 -0
  84. data/lib/lithic/version.rb +1 -1
  85. data/lib/lithic.rb +79 -23
  86. data/rbi/lithic/client.rbi +6 -3
  87. data/rbi/lithic/models/account_holder_created_webhook_event.rbi +149 -0
  88. data/rbi/lithic/models/account_holder_document_updated_webhook_event.rbi +479 -0
  89. data/rbi/lithic/models/account_holder_updated_webhook_event.rbi +1274 -0
  90. data/rbi/lithic/models/account_holder_verification_webhook_event.rbi +143 -0
  91. data/rbi/lithic/models/auth_rules/conditional_tokenization_action_parameters.rbi +11 -0
  92. data/rbi/lithic/models/auth_rules_backtest_report_created_webhook_event.rbi +30 -0
  93. data/rbi/lithic/models/balance_updated_webhook_event.rbi +43 -0
  94. data/rbi/lithic/models/book_transfer_retry_params.rbi +42 -0
  95. data/rbi/lithic/models/book_transfer_transaction_created_webhook_event.rbi +31 -0
  96. data/rbi/lithic/models/book_transfer_transaction_updated_webhook_event.rbi +31 -0
  97. data/rbi/lithic/models/card_authorization_approval_request_webhook_event.rbi +2367 -0
  98. data/rbi/lithic/models/card_converted_webhook_event.rbi +35 -0
  99. data/rbi/lithic/models/card_created_webhook_event.rbi +53 -0
  100. data/rbi/lithic/models/card_reissued_webhook_event.rbi +38 -0
  101. data/rbi/lithic/models/card_renewed_webhook_event.rbi +92 -0
  102. data/rbi/lithic/models/card_shipped_webhook_event.rbi +150 -0
  103. data/rbi/lithic/models/card_transaction_enhanced_data_created_webhook_event.rbi +30 -0
  104. data/rbi/lithic/models/card_transaction_enhanced_data_updated_webhook_event.rbi +30 -0
  105. data/rbi/lithic/models/card_transaction_updated_webhook_event.rbi +30 -0
  106. data/rbi/lithic/models/digital_wallet_token_metadata.rbi +2 -2
  107. data/rbi/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rbi +548 -0
  108. data/rbi/lithic/models/digital_wallet_tokenization_result_webhook_event.rbi +295 -0
  109. data/rbi/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_sent_webhook_event.rbi +186 -0
  110. data/rbi/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_webhook_event.rbi +194 -0
  111. data/rbi/lithic/models/digital_wallet_tokenization_updated_webhook_event.rbi +73 -0
  112. data/rbi/lithic/models/dispute_evidence_upload_failed_webhook_event.rbi +31 -0
  113. data/rbi/lithic/models/dispute_transaction_created_webhook_event.rbi +31 -0
  114. data/rbi/lithic/models/dispute_transaction_updated_webhook_event.rbi +31 -0
  115. data/rbi/lithic/models/dispute_updated_webhook_event.rbi +28 -0
  116. data/rbi/lithic/models/external_bank_account_created_webhook_event.rbi +30 -0
  117. data/rbi/lithic/models/external_bank_account_updated_webhook_event.rbi +30 -0
  118. data/rbi/lithic/models/external_payment_create_params.rbi +4 -0
  119. data/rbi/lithic/models/external_payment_created_webhook_event.rbi +30 -0
  120. data/rbi/lithic/models/external_payment_updated_webhook_event.rbi +30 -0
  121. data/rbi/lithic/models/financial_account.rbi +62 -54
  122. data/rbi/lithic/models/financial_account_created_webhook_event.rbi +30 -0
  123. data/rbi/lithic/models/financial_account_update_status_params.rbi +11 -0
  124. data/rbi/lithic/models/financial_account_updated_webhook_event.rbi +30 -0
  125. data/rbi/lithic/models/financial_accounts/loan_tape.rbi +93 -4
  126. data/rbi/lithic/models/funding_event_created_webhook_event.rbi +30 -0
  127. data/rbi/lithic/models/internal_transaction.rbi +15 -10
  128. data/rbi/lithic/models/internal_transaction_created_webhook_event.rbi +30 -0
  129. data/rbi/lithic/models/internal_transaction_updated_webhook_event.rbi +30 -0
  130. data/rbi/lithic/models/loan_tape_created_webhook_event.rbi +27 -0
  131. data/rbi/lithic/models/loan_tape_updated_webhook_event.rbi +27 -0
  132. data/rbi/lithic/models/management_operation_create_params.rbi +4 -0
  133. data/rbi/lithic/models/management_operation_created_webhook_event.rbi +30 -0
  134. data/rbi/lithic/models/management_operation_updated_webhook_event.rbi +30 -0
  135. data/rbi/lithic/models/network_total_created_webhook_event.rbi +30 -0
  136. data/rbi/lithic/models/network_total_updated_webhook_event.rbi +30 -0
  137. data/rbi/lithic/models/parsed_webhook_event.rbi +1310 -0
  138. data/rbi/lithic/models/payment.rbi +13 -3
  139. data/rbi/lithic/models/payment_transaction_created_webhook_event.rbi +31 -0
  140. data/rbi/lithic/models/payment_transaction_updated_webhook_event.rbi +31 -0
  141. data/rbi/lithic/models/settlement_report_updated_webhook_event.rbi +30 -0
  142. data/rbi/lithic/models/statements_created_webhook_event.rbi +30 -0
  143. data/rbi/lithic/models/three_ds_authentication_approval_request_webhook_event.rbi +27 -0
  144. data/rbi/lithic/models/three_ds_authentication_challenge_webhook_event.rbi +175 -0
  145. data/rbi/lithic/models/three_ds_authentication_created_webhook_event.rbi +31 -0
  146. data/rbi/lithic/models/three_ds_authentication_updated_webhook_event.rbi +31 -0
  147. data/rbi/lithic/models/tokenization_approval_request_webhook_event.rbi +548 -0
  148. data/rbi/lithic/models/tokenization_decisioning_request_webhook_event.rbi +333 -0
  149. data/rbi/lithic/models/tokenization_result_webhook_event.rbi +295 -0
  150. data/rbi/lithic/models/tokenization_two_factor_authentication_code_sent_webhook_event.rbi +186 -0
  151. data/rbi/lithic/models/tokenization_two_factor_authentication_code_webhook_event.rbi +194 -0
  152. data/rbi/lithic/models/tokenization_updated_webhook_event.rbi +73 -0
  153. data/rbi/lithic/models/transaction.rbi +10 -0
  154. data/rbi/lithic/models/transfer_limit_list_params.rbi +43 -0
  155. data/rbi/lithic/models/transfer_limits_response.rbi +604 -0
  156. data/rbi/lithic/models/webhook_parsed_params.rbi +27 -0
  157. data/rbi/lithic/models.rbi +165 -4
  158. data/rbi/lithic/resources/book_transfers.rbi +18 -0
  159. data/rbi/lithic/resources/cards.rbi +1 -4
  160. data/rbi/lithic/resources/external_payments.rbi +2 -0
  161. data/rbi/lithic/resources/financial_accounts.rbi +3 -0
  162. data/rbi/lithic/resources/management_operations.rbi +2 -0
  163. data/rbi/lithic/resources/transfer_limits.rbi +28 -0
  164. data/rbi/lithic/resources/webhooks.rbi +36 -0
  165. data/sig/lithic/client.rbs +4 -2
  166. data/sig/lithic/models/account_holder_created_webhook_event.rbs +77 -0
  167. data/sig/lithic/models/account_holder_document_updated_webhook_event.rbs +219 -0
  168. data/sig/lithic/models/account_holder_updated_webhook_event.rbs +587 -0
  169. data/sig/lithic/models/account_holder_verification_webhook_event.rbs +69 -0
  170. data/sig/lithic/models/auth_rules/conditional_tokenization_action_parameters.rbs +2 -0
  171. data/sig/lithic/models/auth_rules_backtest_report_created_webhook_event.rbs +20 -0
  172. data/sig/lithic/models/balance_updated_webhook_event.rbs +25 -0
  173. data/sig/lithic/models/book_transfer_retry_params.rbs +23 -0
  174. data/sig/lithic/models/book_transfer_transaction_created_webhook_event.rbs +20 -0
  175. data/sig/lithic/models/book_transfer_transaction_updated_webhook_event.rbs +20 -0
  176. data/sig/lithic/models/card_authorization_approval_request_webhook_event.rbs +886 -0
  177. data/sig/lithic/models/card_converted_webhook_event.rbs +19 -0
  178. data/sig/lithic/models/card_created_webhook_event.rbs +30 -0
  179. data/sig/lithic/models/card_reissued_webhook_event.rbs +21 -0
  180. data/sig/lithic/models/card_renewed_webhook_event.rbs +55 -0
  181. data/sig/lithic/models/card_shipped_webhook_event.rbs +71 -0
  182. data/sig/lithic/models/card_transaction_enhanced_data_created_webhook_event.rbs +20 -0
  183. data/sig/lithic/models/card_transaction_enhanced_data_updated_webhook_event.rbs +20 -0
  184. data/sig/lithic/models/card_transaction_updated_webhook_event.rbs +18 -0
  185. data/sig/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rbs +223 -0
  186. data/sig/lithic/models/digital_wallet_tokenization_result_webhook_event.rbs +133 -0
  187. data/sig/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_sent_webhook_event.rbs +78 -0
  188. data/sig/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_webhook_event.rbs +83 -0
  189. data/sig/lithic/models/digital_wallet_tokenization_updated_webhook_event.rbs +40 -0
  190. data/sig/lithic/models/dispute_evidence_upload_failed_webhook_event.rbs +18 -0
  191. data/sig/lithic/models/dispute_transaction_created_webhook_event.rbs +18 -0
  192. data/sig/lithic/models/dispute_transaction_updated_webhook_event.rbs +18 -0
  193. data/sig/lithic/models/dispute_updated_webhook_event.rbs +15 -0
  194. data/sig/lithic/models/external_bank_account_created_webhook_event.rbs +18 -0
  195. data/sig/lithic/models/external_bank_account_updated_webhook_event.rbs +18 -0
  196. data/sig/lithic/models/external_payment_created_webhook_event.rbs +18 -0
  197. data/sig/lithic/models/external_payment_updated_webhook_event.rbs +18 -0
  198. data/sig/lithic/models/financial_account.rbs +32 -27
  199. data/sig/lithic/models/financial_account_created_webhook_event.rbs +18 -0
  200. data/sig/lithic/models/financial_account_update_status_params.rbs +8 -1
  201. data/sig/lithic/models/financial_account_updated_webhook_event.rbs +18 -0
  202. data/sig/lithic/models/financial_accounts/loan_tape.rbs +46 -4
  203. data/sig/lithic/models/funding_event_created_webhook_event.rbs +16 -0
  204. data/sig/lithic/models/internal_transaction_created_webhook_event.rbs +18 -0
  205. data/sig/lithic/models/internal_transaction_updated_webhook_event.rbs +18 -0
  206. data/sig/lithic/models/loan_tape_created_webhook_event.rbs +15 -0
  207. data/sig/lithic/models/loan_tape_updated_webhook_event.rbs +15 -0
  208. data/sig/lithic/models/management_operation_created_webhook_event.rbs +18 -0
  209. data/sig/lithic/models/management_operation_updated_webhook_event.rbs +18 -0
  210. data/sig/lithic/models/network_total_created_webhook_event.rbs +16 -0
  211. data/sig/lithic/models/network_total_updated_webhook_event.rbs +16 -0
  212. data/sig/lithic/models/parsed_webhook_event.rbs +641 -0
  213. data/sig/lithic/models/payment.rbs +10 -3
  214. data/sig/lithic/models/payment_transaction_created_webhook_event.rbs +18 -0
  215. data/sig/lithic/models/payment_transaction_updated_webhook_event.rbs +18 -0
  216. data/sig/lithic/models/settlement_report_updated_webhook_event.rbs +18 -0
  217. data/sig/lithic/models/statements_created_webhook_event.rbs +16 -0
  218. data/sig/lithic/models/three_ds_authentication_approval_request_webhook_event.rbs +22 -0
  219. data/sig/lithic/models/three_ds_authentication_challenge_webhook_event.rbs +72 -0
  220. data/sig/lithic/models/three_ds_authentication_created_webhook_event.rbs +18 -0
  221. data/sig/lithic/models/three_ds_authentication_updated_webhook_event.rbs +18 -0
  222. data/sig/lithic/models/tokenization_approval_request_webhook_event.rbs +223 -0
  223. data/sig/lithic/models/tokenization_decisioning_request_webhook_event.rbs +134 -0
  224. data/sig/lithic/models/tokenization_result_webhook_event.rbs +133 -0
  225. data/sig/lithic/models/tokenization_two_factor_authentication_code_sent_webhook_event.rbs +78 -0
  226. data/sig/lithic/models/tokenization_two_factor_authentication_code_webhook_event.rbs +83 -0
  227. data/sig/lithic/models/tokenization_updated_webhook_event.rbs +40 -0
  228. data/sig/lithic/models/transaction.rbs +4 -0
  229. data/sig/lithic/models/transfer_limit_list_params.rbs +22 -0
  230. data/sig/lithic/models/transfer_limits_response.rbs +232 -0
  231. data/sig/lithic/models/webhook_parsed_params.rbs +15 -0
  232. data/sig/lithic/models.rbs +120 -4
  233. data/sig/lithic/resources/book_transfers.rbs +6 -0
  234. data/sig/lithic/resources/cards.rbs +0 -2
  235. data/sig/lithic/resources/financial_accounts.rbs +1 -0
  236. data/sig/lithic/resources/transfer_limits.rbs +12 -0
  237. data/sig/lithic/resources/webhooks.rbs +21 -0
  238. metadata +188 -20
  239. data/lib/lithic/models/aggregate_balance.rb +0 -113
  240. data/lib/lithic/models/aggregate_balance_list_params.rb +0 -35
  241. data/lib/lithic/models/cards/aggregate_balance_list_params.rb +0 -32
  242. data/lib/lithic/models/cards/aggregate_balance_list_response.rb +0 -92
  243. data/lib/lithic/resources/aggregate_balances.rb +0 -38
  244. data/lib/lithic/resources/cards/aggregate_balances.rb +0 -41
  245. data/rbi/lithic/models/aggregate_balance.rbi +0 -164
  246. data/rbi/lithic/models/aggregate_balance_list_params.rbi +0 -104
  247. data/rbi/lithic/models/cards/aggregate_balance_list_params.rbi +0 -62
  248. data/rbi/lithic/models/cards/aggregate_balance_list_response.rbi +0 -115
  249. data/rbi/lithic/resources/aggregate_balances.rbi +0 -28
  250. data/rbi/lithic/resources/cards/aggregate_balances.rbi +0 -35
  251. data/sig/lithic/models/aggregate_balance.rbs +0 -78
  252. data/sig/lithic/models/aggregate_balance_list_params.rbs +0 -43
  253. data/sig/lithic/models/cards/aggregate_balance_list_params.rbs +0 -34
  254. data/sig/lithic/models/cards/aggregate_balance_list_response.rbs +0 -62
  255. data/sig/lithic/resources/aggregate_balances.rbs +0 -12
  256. data/sig/lithic/resources/cards/aggregate_balances.rbs +0 -15
@@ -0,0 +1,1032 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ class CardAuthorizationApprovalRequestWebhookEvent < Lithic::Internal::Type::BaseModel
6
+ # @!attribute token
7
+ # The provisional transaction group uuid associated with the authorization
8
+ #
9
+ # @return [String]
10
+ required :token, String
11
+
12
+ # @!attribute acquirer_fee
13
+ # Fee (in cents) assessed by the merchant and paid for by the cardholder. Will be
14
+ # zero if no fee is assessed. Rebates may be transmitted as a negative value to
15
+ # indicate credited fees.
16
+ #
17
+ # @return [Integer]
18
+ required :acquirer_fee, Integer
19
+
20
+ # @!attribute amount
21
+ # Authorization amount of the transaction (in cents), including any acquirer fees.
22
+ # The contents of this field are identical to `authorization_amount`.
23
+ #
24
+ # @return [Integer]
25
+ required :amount, Integer
26
+
27
+ # @!attribute authorization_amount
28
+ # The base transaction amount (in cents) plus the acquirer fee field. This is the
29
+ # amount the issuer should authorize against unless the issuer is paying the
30
+ # acquirer fee on behalf of the cardholder.
31
+ #
32
+ # @return [Integer]
33
+ required :authorization_amount, Integer
34
+
35
+ # @!attribute avs
36
+ #
37
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Avs]
38
+ required :avs, -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Avs }
39
+
40
+ # @!attribute card
41
+ # Card object in ASA
42
+ #
43
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card]
44
+ required :card, -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Card }
45
+
46
+ # @!attribute cardholder_currency
47
+ # 3-character alphabetic ISO 4217 code for cardholder's billing currency.
48
+ #
49
+ # @return [String]
50
+ required :cardholder_currency, String
51
+
52
+ # @!attribute cash_amount
53
+ # The portion of the transaction requested as cash back by the cardholder, and
54
+ # does not include any acquirer fees. The amount field includes the purchase
55
+ # amount, the requested cash back amount, and any acquirer fees.
56
+ #
57
+ # If no cash back was requested, the value of this field will be 0, and the field
58
+ # will always be present.
59
+ #
60
+ # @return [Integer]
61
+ required :cash_amount, Integer
62
+
63
+ # @!attribute created
64
+ # Date and time when the transaction first occurred in UTC.
65
+ #
66
+ # @return [Time]
67
+ required :created, Time
68
+
69
+ # @!attribute event_type
70
+ #
71
+ # @return [Symbol, :"card_authorization.approval_request"]
72
+ required :event_type, const: :"card_authorization.approval_request"
73
+
74
+ # @!attribute merchant
75
+ #
76
+ # @return [Lithic::Models::Merchant]
77
+ required :merchant, -> { Lithic::Merchant }
78
+
79
+ # @!attribute merchant_amount
80
+ # The amount that the merchant will receive, denominated in `merchant_currency`
81
+ # and in the smallest currency unit. Note the amount includes `acquirer_fee`,
82
+ # similar to `authorization_amount`. It will be different from
83
+ # `authorization_amount` if the merchant is taking payment in a different
84
+ # currency.
85
+ #
86
+ # @return [Integer]
87
+ required :merchant_amount, Integer
88
+
89
+ # @!attribute merchant_currency
90
+ # 3-character alphabetic ISO 4217 code for the local currency of the transaction.
91
+ #
92
+ # @return [String]
93
+ required :merchant_currency, String
94
+
95
+ # @!attribute settled_amount
96
+ # Amount (in cents) of the transaction that has been settled, including any
97
+ # acquirer fees
98
+ #
99
+ # @return [Integer]
100
+ required :settled_amount, Integer
101
+
102
+ # @!attribute status
103
+ # The type of authorization request that this request is for. Note that
104
+ # `CREDIT_AUTHORIZATION` and `FINANCIAL_CREDIT_AUTHORIZATION` is only available to
105
+ # users with credit decisioning via ASA enabled.
106
+ #
107
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Status]
108
+ required :status, enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Status }
109
+
110
+ # @!attribute transaction_initiator
111
+ # The entity that initiated the transaction.
112
+ #
113
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::TransactionInitiator]
114
+ required :transaction_initiator,
115
+ enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::TransactionInitiator }
116
+
117
+ # @!attribute account_type
118
+ #
119
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::AccountType, nil]
120
+ optional :account_type, enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::AccountType }
121
+
122
+ # @!attribute cardholder_authentication
123
+ #
124
+ # @return [Lithic::Models::CardholderAuthentication, nil]
125
+ optional :cardholder_authentication, -> { Lithic::CardholderAuthentication }
126
+
127
+ # @!attribute cashback
128
+ # Deprecated, use `cash_amount`.
129
+ #
130
+ # @return [Integer, nil]
131
+ optional :cashback, Integer
132
+
133
+ # @!attribute conversion_rate
134
+ # If the transaction was requested in a currency other than the settlement
135
+ # currency, this field will be populated to indicate the rate used to translate
136
+ # the merchant_amount to the amount (i.e., `merchant_amount` x `conversion_rate` =
137
+ # `amount`). Note that the `merchant_amount` is in the local currency and the
138
+ # amount is in the settlement currency.
139
+ #
140
+ # @return [Float, nil]
141
+ optional :conversion_rate, Float
142
+
143
+ # @!attribute event_token
144
+ # The event token associated with the authorization. This field is only set for
145
+ # programs enrolled into the beta.
146
+ #
147
+ # @return [String, nil]
148
+ optional :event_token, String
149
+
150
+ # @!attribute fleet_info
151
+ # Optional Object containing information if the Card is a part of a Fleet managed
152
+ # program
153
+ #
154
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo, nil]
155
+ optional :fleet_info, -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo }, nil?: true
156
+
157
+ # @!attribute latest_challenge
158
+ # The latest Authorization Challenge that was issued to the cardholder for this
159
+ # merchant.
160
+ #
161
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::LatestChallenge, nil]
162
+ optional :latest_challenge, -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::LatestChallenge }
163
+
164
+ # @!attribute network
165
+ # Card network of the authorization.
166
+ #
167
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Network, nil]
168
+ optional :network, enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Network }
169
+
170
+ # @!attribute network_risk_score
171
+ # Network-provided score assessing risk level associated with a given
172
+ # authorization. Scores are on a range of 0-999, with 0 representing the lowest
173
+ # risk and 999 representing the highest risk. For Visa transactions, where the raw
174
+ # score has a range of 0-99, Lithic will normalize the score by multiplying the
175
+ # raw score by 10x.
176
+ #
177
+ # @return [Integer, nil]
178
+ optional :network_risk_score, Integer, nil?: true
179
+
180
+ # @!attribute network_specific_data
181
+ # Contains raw data provided by the card network, including attributes that
182
+ # provide further context about the authorization. If populated by the network,
183
+ # data is organized by Lithic and passed through without further modification.
184
+ # Please consult the official network documentation for more details about these
185
+ # values and how to use them. This object is only available to certain programs-
186
+ # contact your Customer Success Manager to discuss enabling access.
187
+ #
188
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData, nil]
189
+ optional :network_specific_data,
190
+ -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData },
191
+ nil?: true
192
+
193
+ # @!attribute pos
194
+ #
195
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos, nil]
196
+ optional :pos, -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Pos }
197
+
198
+ # @!attribute token_info
199
+ #
200
+ # @return [Lithic::Models::TokenInfo, nil]
201
+ optional :token_info, -> { Lithic::TokenInfo }, nil?: true
202
+
203
+ # @!attribute ttl
204
+ # Deprecated: approximate time-to-live for the authorization.
205
+ #
206
+ # @return [Time, nil]
207
+ optional :ttl, Time
208
+
209
+ # @!method initialize(token:, acquirer_fee:, amount:, authorization_amount:, avs:, card:, cardholder_currency:, cash_amount:, created:, merchant:, merchant_amount:, merchant_currency:, settled_amount:, status:, transaction_initiator:, account_type: nil, cardholder_authentication: nil, cashback: nil, conversion_rate: nil, event_token: nil, fleet_info: nil, latest_challenge: nil, network: nil, network_risk_score: nil, network_specific_data: nil, pos: nil, token_info: nil, ttl: nil, event_type: :"card_authorization.approval_request")
210
+ # Some parameter documentations has been truncated, see
211
+ # {Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent} for more details.
212
+ #
213
+ # @param token [String] The provisional transaction group uuid associated with the authorization
214
+ #
215
+ # @param acquirer_fee [Integer] Fee (in cents) assessed by the merchant and paid for by the cardholder. Will be
216
+ #
217
+ # @param amount [Integer] Authorization amount of the transaction (in cents), including any acquirer fees.
218
+ #
219
+ # @param authorization_amount [Integer] The base transaction amount (in cents) plus the acquirer fee field. This is the
220
+ #
221
+ # @param avs [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Avs]
222
+ #
223
+ # @param card [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card] Card object in ASA
224
+ #
225
+ # @param cardholder_currency [String] 3-character alphabetic ISO 4217 code for cardholder's billing currency.
226
+ #
227
+ # @param cash_amount [Integer] The portion of the transaction requested as cash back by the cardholder, and doe
228
+ #
229
+ # @param created [Time] Date and time when the transaction first occurred in UTC.
230
+ #
231
+ # @param merchant [Lithic::Models::Merchant]
232
+ #
233
+ # @param merchant_amount [Integer] The amount that the merchant will receive, denominated in `merchant_currency` an
234
+ #
235
+ # @param merchant_currency [String] 3-character alphabetic ISO 4217 code for the local currency of the transaction.
236
+ #
237
+ # @param settled_amount [Integer] Amount (in cents) of the transaction that has been settled, including any acquir
238
+ #
239
+ # @param status [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Status] The type of authorization request that this request is for. Note that `CREDIT_AU
240
+ #
241
+ # @param transaction_initiator [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::TransactionInitiator] The entity that initiated the transaction.
242
+ #
243
+ # @param account_type [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::AccountType]
244
+ #
245
+ # @param cardholder_authentication [Lithic::Models::CardholderAuthentication]
246
+ #
247
+ # @param cashback [Integer] Deprecated, use `cash_amount`.
248
+ #
249
+ # @param conversion_rate [Float] If the transaction was requested in a currency other than the settlement currenc
250
+ #
251
+ # @param event_token [String] The event token associated with the authorization. This field is only set for pr
252
+ #
253
+ # @param fleet_info [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo, nil] Optional Object containing information if the Card is a part of a Fleet managed
254
+ #
255
+ # @param latest_challenge [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::LatestChallenge] The latest Authorization Challenge that was issued to the cardholder for this me
256
+ #
257
+ # @param network [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Network] Card network of the authorization.
258
+ #
259
+ # @param network_risk_score [Integer, nil] Network-provided score assessing risk level associated with a given authorizatio
260
+ #
261
+ # @param network_specific_data [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData, nil] Contains raw data provided by the card network, including attributes that provid
262
+ #
263
+ # @param pos [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos]
264
+ #
265
+ # @param token_info [Lithic::Models::TokenInfo, nil]
266
+ #
267
+ # @param ttl [Time] Deprecated: approximate time-to-live for the authorization.
268
+ #
269
+ # @param event_type [Symbol, :"card_authorization.approval_request"]
270
+
271
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#avs
272
+ class Avs < Lithic::Internal::Type::BaseModel
273
+ # @!attribute address
274
+ # Cardholder address
275
+ #
276
+ # @return [String]
277
+ required :address, String
278
+
279
+ # @!attribute address_on_file_match
280
+ # Lithic's evaluation result comparing the transaction's address data with the
281
+ # cardholder KYC data if it exists. In the event Lithic does not have any
282
+ # Cardholder KYC data, or the transaction does not contain any address data,
283
+ # NOT_PRESENT will be returned
284
+ #
285
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Avs::AddressOnFileMatch]
286
+ required :address_on_file_match,
287
+ enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Avs::AddressOnFileMatch }
288
+
289
+ # @!attribute zipcode
290
+ # Cardholder ZIP code
291
+ #
292
+ # @return [String]
293
+ required :zipcode, String
294
+
295
+ # @!method initialize(address:, address_on_file_match:, zipcode:)
296
+ # Some parameter documentations has been truncated, see
297
+ # {Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Avs} for more
298
+ # details.
299
+ #
300
+ # @param address [String] Cardholder address
301
+ #
302
+ # @param address_on_file_match [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Avs::AddressOnFileMatch] Lithic's evaluation result comparing the transaction's address data with the car
303
+ #
304
+ # @param zipcode [String] Cardholder ZIP code
305
+
306
+ # Lithic's evaluation result comparing the transaction's address data with the
307
+ # cardholder KYC data if it exists. In the event Lithic does not have any
308
+ # Cardholder KYC data, or the transaction does not contain any address data,
309
+ # NOT_PRESENT will be returned
310
+ #
311
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Avs#address_on_file_match
312
+ module AddressOnFileMatch
313
+ extend Lithic::Internal::Type::Enum
314
+
315
+ MATCH = :MATCH
316
+ MATCH_ADDRESS_ONLY = :MATCH_ADDRESS_ONLY
317
+ MATCH_ZIP_ONLY = :MATCH_ZIP_ONLY
318
+ MISMATCH = :MISMATCH
319
+ NOT_PRESENT = :NOT_PRESENT
320
+
321
+ # @!method self.values
322
+ # @return [Array<Symbol>]
323
+ end
324
+ end
325
+
326
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#card
327
+ class Card < Lithic::Internal::Type::BaseModel
328
+ # @!attribute token
329
+ # Globally unique identifier for the card.
330
+ #
331
+ # @return [String, nil]
332
+ optional :token, String
333
+
334
+ # @!attribute hostname
335
+ # Hostname of card’s locked merchant (will be empty if not applicable)
336
+ #
337
+ # @return [String, nil]
338
+ optional :hostname, String
339
+
340
+ # @!attribute last_four
341
+ # Last four digits of the card number
342
+ #
343
+ # @return [String, nil]
344
+ optional :last_four, String
345
+
346
+ # @!attribute memo
347
+ # Customizable name to identify the card. We recommend against using this field to
348
+ # store JSON data as it can cause unexpected behavior.
349
+ #
350
+ # @return [String, nil]
351
+ optional :memo, String
352
+
353
+ # @!attribute spend_limit
354
+ # Amount (in cents) to limit approved authorizations. Purchase requests above the
355
+ # spend limit will be declined (refunds and credits will be approved).
356
+ #
357
+ # Note that while spend limits are enforced based on authorized and settled volume
358
+ # on a card, they are not recommended to be used for balance or
359
+ # reconciliation-level accuracy. Spend limits also cannot block force posted
360
+ # charges (i.e., when a merchant sends a clearing message without a prior
361
+ # authorization).
362
+ #
363
+ # @return [Integer, nil]
364
+ optional :spend_limit, Integer
365
+
366
+ # @!attribute spend_limit_duration
367
+ # Note that to support recurring monthly payments, which can occur on different
368
+ # day every month, the time window we consider for MONTHLY velocity starts 6 days
369
+ # after the current calendar date one month prior.
370
+ #
371
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card::SpendLimitDuration, nil]
372
+ optional :spend_limit_duration,
373
+ enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Card::SpendLimitDuration }
374
+
375
+ # @!attribute state
376
+ #
377
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card::State, nil]
378
+ optional :state, enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Card::State }
379
+
380
+ # @!attribute type
381
+ #
382
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card::Type, nil]
383
+ optional :type, enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Card::Type }
384
+
385
+ # @!method initialize(token: nil, hostname: nil, last_four: nil, memo: nil, spend_limit: nil, spend_limit_duration: nil, state: nil, type: nil)
386
+ # Some parameter documentations has been truncated, see
387
+ # {Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card} for more
388
+ # details.
389
+ #
390
+ # Card object in ASA
391
+ #
392
+ # @param token [String] Globally unique identifier for the card.
393
+ #
394
+ # @param hostname [String] Hostname of card’s locked merchant (will be empty if not applicable)
395
+ #
396
+ # @param last_four [String] Last four digits of the card number
397
+ #
398
+ # @param memo [String] Customizable name to identify the card. We recommend against using this field to
399
+ #
400
+ # @param spend_limit [Integer] Amount (in cents) to limit approved authorizations. Purchase requests above the
401
+ #
402
+ # @param spend_limit_duration [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card::SpendLimitDuration] Note that to support recurring monthly payments, which can occur on different da
403
+ #
404
+ # @param state [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card::State]
405
+ #
406
+ # @param type [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card::Type]
407
+
408
+ # Note that to support recurring monthly payments, which can occur on different
409
+ # day every month, the time window we consider for MONTHLY velocity starts 6 days
410
+ # after the current calendar date one month prior.
411
+ #
412
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card#spend_limit_duration
413
+ module SpendLimitDuration
414
+ extend Lithic::Internal::Type::Enum
415
+
416
+ ANNUALLY = :ANNUALLY
417
+ FOREVER = :FOREVER
418
+ MONTHLY = :MONTHLY
419
+ TRANSACTION = :TRANSACTION
420
+
421
+ # @!method self.values
422
+ # @return [Array<Symbol>]
423
+ end
424
+
425
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card#state
426
+ module State
427
+ extend Lithic::Internal::Type::Enum
428
+
429
+ CLOSED = :CLOSED
430
+ OPEN = :OPEN
431
+ PAUSED = :PAUSED
432
+ PENDING_ACTIVATION = :PENDING_ACTIVATION
433
+ PENDING_FULFILLMENT = :PENDING_FULFILLMENT
434
+
435
+ # @!method self.values
436
+ # @return [Array<Symbol>]
437
+ end
438
+
439
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Card#type
440
+ module Type
441
+ extend Lithic::Internal::Type::Enum
442
+
443
+ SINGLE_USE = :SINGLE_USE
444
+ MERCHANT_LOCKED = :MERCHANT_LOCKED
445
+ UNLOCKED = :UNLOCKED
446
+ PHYSICAL = :PHYSICAL
447
+ DIGITAL_WALLET = :DIGITAL_WALLET
448
+ VIRTUAL = :VIRTUAL
449
+
450
+ # @!method self.values
451
+ # @return [Array<Symbol>]
452
+ end
453
+ end
454
+
455
+ # The type of authorization request that this request is for. Note that
456
+ # `CREDIT_AUTHORIZATION` and `FINANCIAL_CREDIT_AUTHORIZATION` is only available to
457
+ # users with credit decisioning via ASA enabled.
458
+ #
459
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#status
460
+ module Status
461
+ extend Lithic::Internal::Type::Enum
462
+
463
+ AUTHORIZATION = :AUTHORIZATION
464
+ CREDIT_AUTHORIZATION = :CREDIT_AUTHORIZATION
465
+ FINANCIAL_AUTHORIZATION = :FINANCIAL_AUTHORIZATION
466
+ FINANCIAL_CREDIT_AUTHORIZATION = :FINANCIAL_CREDIT_AUTHORIZATION
467
+ BALANCE_INQUIRY = :BALANCE_INQUIRY
468
+
469
+ # @!method self.values
470
+ # @return [Array<Symbol>]
471
+ end
472
+
473
+ # The entity that initiated the transaction.
474
+ #
475
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#transaction_initiator
476
+ module TransactionInitiator
477
+ extend Lithic::Internal::Type::Enum
478
+
479
+ CARDHOLDER = :CARDHOLDER
480
+ MERCHANT = :MERCHANT
481
+ UNKNOWN = :UNKNOWN
482
+
483
+ # @!method self.values
484
+ # @return [Array<Symbol>]
485
+ end
486
+
487
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#account_type
488
+ module AccountType
489
+ extend Lithic::Internal::Type::Enum
490
+
491
+ CHECKING = :CHECKING
492
+ SAVINGS = :SAVINGS
493
+
494
+ # @!method self.values
495
+ # @return [Array<Symbol>]
496
+ end
497
+
498
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#fleet_info
499
+ class FleetInfo < Lithic::Internal::Type::BaseModel
500
+ # @!attribute fleet_prompt_code
501
+ # Code indicating what the driver was prompted to enter at time of purchase. This
502
+ # is configured at a program level and is a static configuration, and does not
503
+ # change on a request to request basis
504
+ #
505
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo::FleetPromptCode]
506
+ required :fleet_prompt_code,
507
+ enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo::FleetPromptCode }
508
+
509
+ # @!attribute fleet_restriction_code
510
+ # Code indicating which restrictions, if any, there are on purchase. This is
511
+ # configured at a program level and is a static configuration, and does not change
512
+ # on a request to request basis
513
+ #
514
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo::FleetRestrictionCode]
515
+ required :fleet_restriction_code,
516
+ enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo::FleetRestrictionCode }
517
+
518
+ # @!attribute driver_number
519
+ # Number representing the driver
520
+ #
521
+ # @return [String, nil]
522
+ optional :driver_number, String, nil?: true
523
+
524
+ # @!attribute vehicle_number
525
+ # Number associated with the vehicle
526
+ #
527
+ # @return [String, nil]
528
+ optional :vehicle_number, String, nil?: true
529
+
530
+ # @!method initialize(fleet_prompt_code:, fleet_restriction_code:, driver_number: nil, vehicle_number: nil)
531
+ # Some parameter documentations has been truncated, see
532
+ # {Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo} for
533
+ # more details.
534
+ #
535
+ # Optional Object containing information if the Card is a part of a Fleet managed
536
+ # program
537
+ #
538
+ # @param fleet_prompt_code [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo::FleetPromptCode] Code indicating what the driver was prompted to enter at time of purchase. This
539
+ #
540
+ # @param fleet_restriction_code [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo::FleetRestrictionCode] Code indicating which restrictions, if any, there are on purchase. This is confi
541
+ #
542
+ # @param driver_number [String, nil] Number representing the driver
543
+ #
544
+ # @param vehicle_number [String, nil] Number associated with the vehicle
545
+
546
+ # Code indicating what the driver was prompted to enter at time of purchase. This
547
+ # is configured at a program level and is a static configuration, and does not
548
+ # change on a request to request basis
549
+ #
550
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo#fleet_prompt_code
551
+ module FleetPromptCode
552
+ extend Lithic::Internal::Type::Enum
553
+
554
+ NO_PROMPT = :NO_PROMPT
555
+ VEHICLE_NUMBER = :VEHICLE_NUMBER
556
+ DRIVER_NUMBER = :DRIVER_NUMBER
557
+
558
+ # @!method self.values
559
+ # @return [Array<Symbol>]
560
+ end
561
+
562
+ # Code indicating which restrictions, if any, there are on purchase. This is
563
+ # configured at a program level and is a static configuration, and does not change
564
+ # on a request to request basis
565
+ #
566
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::FleetInfo#fleet_restriction_code
567
+ module FleetRestrictionCode
568
+ extend Lithic::Internal::Type::Enum
569
+
570
+ NO_RESTRICTIONS = :NO_RESTRICTIONS
571
+ FUEL_ONLY = :FUEL_ONLY
572
+
573
+ # @!method self.values
574
+ # @return [Array<Symbol>]
575
+ end
576
+ end
577
+
578
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#latest_challenge
579
+ class LatestChallenge < Lithic::Internal::Type::BaseModel
580
+ # @!attribute phone_number
581
+ # The phone number used for sending Authorization Challenge SMS.
582
+ #
583
+ # @return [String]
584
+ required :phone_number, String
585
+
586
+ # @!attribute status
587
+ # The status of the Authorization Challenge
588
+ #
589
+ # - `COMPLETED` - Challenge was successfully completed by the cardholder
590
+ # - `PENDING` - Challenge is still open
591
+ # - `EXPIRED` - Challenge has expired without being completed
592
+ # - `ERROR` - There was an error processing the challenge
593
+ #
594
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::LatestChallenge::Status]
595
+ required :status,
596
+ enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::LatestChallenge::Status }
597
+
598
+ # @!attribute completed_at
599
+ # The date and time when the Authorization Challenge was completed in UTC. Present
600
+ # only if the status is `COMPLETED`.
601
+ #
602
+ # @return [Time, nil]
603
+ optional :completed_at, Time
604
+
605
+ # @!method initialize(phone_number:, status:, completed_at: nil)
606
+ # Some parameter documentations has been truncated, see
607
+ # {Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::LatestChallenge}
608
+ # for more details.
609
+ #
610
+ # The latest Authorization Challenge that was issued to the cardholder for this
611
+ # merchant.
612
+ #
613
+ # @param phone_number [String] The phone number used for sending Authorization Challenge SMS.
614
+ #
615
+ # @param status [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::LatestChallenge::Status] The status of the Authorization Challenge
616
+ #
617
+ # @param completed_at [Time] The date and time when the Authorization Challenge was completed in UTC. Present
618
+
619
+ # The status of the Authorization Challenge
620
+ #
621
+ # - `COMPLETED` - Challenge was successfully completed by the cardholder
622
+ # - `PENDING` - Challenge is still open
623
+ # - `EXPIRED` - Challenge has expired without being completed
624
+ # - `ERROR` - There was an error processing the challenge
625
+ #
626
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::LatestChallenge#status
627
+ module Status
628
+ extend Lithic::Internal::Type::Enum
629
+
630
+ COMPLETED = :COMPLETED
631
+ PENDING = :PENDING
632
+ EXPIRED = :EXPIRED
633
+ ERROR = :ERROR
634
+
635
+ # @!method self.values
636
+ # @return [Array<Symbol>]
637
+ end
638
+ end
639
+
640
+ # Card network of the authorization.
641
+ #
642
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#network
643
+ module Network
644
+ extend Lithic::Internal::Type::Enum
645
+
646
+ AMEX = :AMEX
647
+ INTERLINK = :INTERLINK
648
+ MAESTRO = :MAESTRO
649
+ MASTERCARD = :MASTERCARD
650
+ UNKNOWN = :UNKNOWN
651
+ VISA = :VISA
652
+
653
+ # @!method self.values
654
+ # @return [Array<Symbol>]
655
+ end
656
+
657
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#network_specific_data
658
+ class NetworkSpecificData < Lithic::Internal::Type::BaseModel
659
+ # @!attribute mastercard
660
+ #
661
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Mastercard, nil]
662
+ optional :mastercard,
663
+ -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Mastercard },
664
+ nil?: true
665
+
666
+ # @!attribute visa
667
+ #
668
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Visa, nil]
669
+ optional :visa,
670
+ -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Visa },
671
+ nil?: true
672
+
673
+ # @!method initialize(mastercard: nil, visa: nil)
674
+ # Contains raw data provided by the card network, including attributes that
675
+ # provide further context about the authorization. If populated by the network,
676
+ # data is organized by Lithic and passed through without further modification.
677
+ # Please consult the official network documentation for more details about these
678
+ # values and how to use them. This object is only available to certain programs-
679
+ # contact your Customer Success Manager to discuss enabling access.
680
+ #
681
+ # @param mastercard [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Mastercard, nil]
682
+ # @param visa [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Visa, nil]
683
+
684
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData#mastercard
685
+ class Mastercard < Lithic::Internal::Type::BaseModel
686
+ # @!attribute ecommerce_security_level_indicator
687
+ # Indicates the electronic commerce security level and UCAF collection.
688
+ #
689
+ # @return [String, nil]
690
+ optional :ecommerce_security_level_indicator, String, nil?: true
691
+
692
+ # @!attribute on_behalf_service_result
693
+ # The On-behalf Service performed on the transaction and the results. Contains all
694
+ # applicable, on-behalf service results that were performed on a given
695
+ # transaction.
696
+ #
697
+ # @return [Array<Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Mastercard::OnBehalfServiceResult>, nil]
698
+ optional :on_behalf_service_result,
699
+ -> do
700
+ Lithic::Internal::Type::ArrayOf[
701
+ Lithic::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Mastercard::OnBehalfServiceResult
702
+ ]
703
+ end,
704
+ nil?: true
705
+
706
+ # @!attribute transaction_type_identifier
707
+ # Indicates the type of additional transaction purpose.
708
+ #
709
+ # @return [String, nil]
710
+ optional :transaction_type_identifier, String, nil?: true
711
+
712
+ # @!method initialize(ecommerce_security_level_indicator: nil, on_behalf_service_result: nil, transaction_type_identifier: nil)
713
+ # Some parameter documentations has been truncated, see
714
+ # {Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Mastercard}
715
+ # for more details.
716
+ #
717
+ # @param ecommerce_security_level_indicator [String, nil] Indicates the electronic commerce security level and UCAF collection.
718
+ #
719
+ # @param on_behalf_service_result [Array<Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Mastercard::OnBehalfServiceResult>, nil] The On-behalf Service performed on the transaction and the results. Contains all
720
+ #
721
+ # @param transaction_type_identifier [String, nil] Indicates the type of additional transaction purpose.
722
+
723
+ class OnBehalfServiceResult < Lithic::Internal::Type::BaseModel
724
+ # @!attribute result_1
725
+ # Indicates the results of the service processing.
726
+ #
727
+ # @return [String]
728
+ required :result_1, String
729
+
730
+ # @!attribute result_2
731
+ # Identifies the results of the service processing.
732
+ #
733
+ # @return [String]
734
+ required :result_2, String
735
+
736
+ # @!attribute service
737
+ # Indicates the service performed on the transaction.
738
+ #
739
+ # @return [String]
740
+ required :service, String
741
+
742
+ # @!method initialize(result_1:, result_2:, service:)
743
+ # @param result_1 [String] Indicates the results of the service processing.
744
+ #
745
+ # @param result_2 [String] Identifies the results of the service processing.
746
+ #
747
+ # @param service [String] Indicates the service performed on the transaction.
748
+ end
749
+ end
750
+
751
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData#visa
752
+ class Visa < Lithic::Internal::Type::BaseModel
753
+ # @!attribute business_application_identifier
754
+ # Identifies the purpose or category of a transaction, used to classify and
755
+ # process transactions according to Visa’s rules.
756
+ #
757
+ # @return [String, nil]
758
+ optional :business_application_identifier, String, nil?: true
759
+
760
+ # @!method initialize(business_application_identifier: nil)
761
+ # Some parameter documentations has been truncated, see
762
+ # {Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::NetworkSpecificData::Visa}
763
+ # for more details.
764
+ #
765
+ # @param business_application_identifier [String, nil] Identifies the purpose or category of a transaction, used to classify and proces
766
+ end
767
+ end
768
+
769
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent#pos
770
+ class Pos < Lithic::Internal::Type::BaseModel
771
+ # @!attribute entry_mode
772
+ # POS > Entry Mode object in ASA
773
+ #
774
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode, nil]
775
+ optional :entry_mode, -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode }
776
+
777
+ # @!attribute terminal
778
+ #
779
+ # @return [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal, nil]
780
+ optional :terminal, -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal }
781
+
782
+ # @!method initialize(entry_mode: nil, terminal: nil)
783
+ # @param entry_mode [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode] POS > Entry Mode object in ASA
784
+ #
785
+ # @param terminal [Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal]
786
+
787
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos#entry_mode
788
+ class EntryMode < Lithic::Internal::Type::BaseModel
789
+ # @!attribute card
790
+ # Card Presence Indicator
791
+ #
792
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode::Card, nil]
793
+ optional :card, enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode::Card }
794
+
795
+ # @!attribute cardholder
796
+ # Cardholder Presence Indicator
797
+ #
798
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode::Cardholder, nil]
799
+ optional :cardholder,
800
+ enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode::Cardholder }
801
+
802
+ # @!attribute pan
803
+ # Method of entry for the PAN
804
+ #
805
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode::Pan, nil]
806
+ optional :pan, enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode::Pan }
807
+
808
+ # @!attribute pin_entered
809
+ # Indicates whether the cardholder entered the PIN. True if the PIN was entered.
810
+ #
811
+ # @return [Boolean, nil]
812
+ optional :pin_entered, Lithic::Internal::Type::Boolean
813
+
814
+ # @!method initialize(card: nil, cardholder: nil, pan: nil, pin_entered: nil)
815
+ # POS > Entry Mode object in ASA
816
+ #
817
+ # @param card [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode::Card] Card Presence Indicator
818
+ #
819
+ # @param cardholder [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode::Cardholder] Cardholder Presence Indicator
820
+ #
821
+ # @param pan [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode::Pan] Method of entry for the PAN
822
+ #
823
+ # @param pin_entered [Boolean] Indicates whether the cardholder entered the PIN. True if the PIN was entered.
824
+
825
+ # Card Presence Indicator
826
+ #
827
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode#card
828
+ module Card
829
+ extend Lithic::Internal::Type::Enum
830
+
831
+ PRESENT = :PRESENT
832
+ NOT_PRESENT = :NOT_PRESENT
833
+ UNKNOWN = :UNKNOWN
834
+
835
+ # @!method self.values
836
+ # @return [Array<Symbol>]
837
+ end
838
+
839
+ # Cardholder Presence Indicator
840
+ #
841
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode#cardholder
842
+ module Cardholder
843
+ extend Lithic::Internal::Type::Enum
844
+
845
+ DEFERRED_BILLING = :DEFERRED_BILLING
846
+ ELECTRONIC_ORDER = :ELECTRONIC_ORDER
847
+ INSTALLMENT = :INSTALLMENT
848
+ MAIL_ORDER = :MAIL_ORDER
849
+ NOT_PRESENT = :NOT_PRESENT
850
+ PRESENT = :PRESENT
851
+ REOCCURRING = :REOCCURRING
852
+ TELEPHONE_ORDER = :TELEPHONE_ORDER
853
+ UNKNOWN = :UNKNOWN
854
+
855
+ # @!method self.values
856
+ # @return [Array<Symbol>]
857
+ end
858
+
859
+ # Method of entry for the PAN
860
+ #
861
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::EntryMode#pan
862
+ module Pan
863
+ extend Lithic::Internal::Type::Enum
864
+
865
+ AUTO_ENTRY = :AUTO_ENTRY
866
+ BAR_CODE = :BAR_CODE
867
+ CONTACTLESS = :CONTACTLESS
868
+ ECOMMERCE = :ECOMMERCE
869
+ ERROR_KEYED = :ERROR_KEYED
870
+ ERROR_MAGNETIC_STRIPE = :ERROR_MAGNETIC_STRIPE
871
+ ICC = :ICC
872
+ KEY_ENTERED = :KEY_ENTERED
873
+ MAGNETIC_STRIPE = :MAGNETIC_STRIPE
874
+ MANUAL = :MANUAL
875
+ OCR = :OCR
876
+ SECURE_CARDLESS = :SECURE_CARDLESS
877
+ UNSPECIFIED = :UNSPECIFIED
878
+ UNKNOWN = :UNKNOWN
879
+ CREDENTIAL_ON_FILE = :CREDENTIAL_ON_FILE
880
+
881
+ # @!method self.values
882
+ # @return [Array<Symbol>]
883
+ end
884
+ end
885
+
886
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos#terminal
887
+ class Terminal < Lithic::Internal::Type::BaseModel
888
+ # @!attribute attended
889
+ # True if a clerk is present at the sale.
890
+ #
891
+ # @return [Boolean]
892
+ required :attended, Lithic::Internal::Type::Boolean
893
+
894
+ # @!attribute card_retention_capable
895
+ # True if the terminal is capable of retaining the card.
896
+ #
897
+ # @return [Boolean]
898
+ required :card_retention_capable, Lithic::Internal::Type::Boolean
899
+
900
+ # @!attribute on_premise
901
+ # True if the sale was made at the place of business (vs. mobile).
902
+ #
903
+ # @return [Boolean]
904
+ required :on_premise, Lithic::Internal::Type::Boolean
905
+
906
+ # @!attribute operator
907
+ # The person that is designated to swipe the card
908
+ #
909
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal::Operator]
910
+ required :operator,
911
+ enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal::Operator }
912
+
913
+ # @!attribute partial_approval_capable
914
+ # True if the terminal is capable of partial approval. Partial approval is when
915
+ # part of a transaction is approved and another payment must be used for the
916
+ # remainder. Example scenario: A $40 transaction is attempted on a prepaid card
917
+ # with a $25 balance. If partial approval is enabled, $25 can be authorized, at
918
+ # which point the POS will prompt the user for an additional payment of $15.
919
+ #
920
+ # @return [Boolean]
921
+ required :partial_approval_capable, Lithic::Internal::Type::Boolean
922
+
923
+ # @!attribute pin_capability
924
+ # Status of whether the POS is able to accept PINs
925
+ #
926
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal::PinCapability]
927
+ required :pin_capability,
928
+ enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal::PinCapability }
929
+
930
+ # @!attribute type
931
+ # POS Type
932
+ #
933
+ # @return [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal::Type]
934
+ required :type, enum: -> { Lithic::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal::Type }
935
+
936
+ # @!attribute acceptor_terminal_id
937
+ # Uniquely identifies a terminal at the card acceptor location of acquiring
938
+ # institutions or merchant POS Systems. Left justified with trailing spaces.
939
+ #
940
+ # @return [String, nil]
941
+ optional :acceptor_terminal_id, String, nil?: true
942
+
943
+ # @!method initialize(attended:, card_retention_capable:, on_premise:, operator:, partial_approval_capable:, pin_capability:, type:, acceptor_terminal_id: nil)
944
+ # Some parameter documentations has been truncated, see
945
+ # {Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal}
946
+ # for more details.
947
+ #
948
+ # @param attended [Boolean] True if a clerk is present at the sale.
949
+ #
950
+ # @param card_retention_capable [Boolean] True if the terminal is capable of retaining the card.
951
+ #
952
+ # @param on_premise [Boolean] True if the sale was made at the place of business (vs. mobile).
953
+ #
954
+ # @param operator [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal::Operator] The person that is designated to swipe the card
955
+ #
956
+ # @param partial_approval_capable [Boolean] True if the terminal is capable of partial approval. Partial approval is when pa
957
+ #
958
+ # @param pin_capability [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal::PinCapability] Status of whether the POS is able to accept PINs
959
+ #
960
+ # @param type [Symbol, Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal::Type] POS Type
961
+ #
962
+ # @param acceptor_terminal_id [String, nil] Uniquely identifies a terminal at the card acceptor location of acquiring instit
963
+
964
+ # The person that is designated to swipe the card
965
+ #
966
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal#operator
967
+ module Operator
968
+ extend Lithic::Internal::Type::Enum
969
+
970
+ ADMINISTRATIVE = :ADMINISTRATIVE
971
+ CARDHOLDER = :CARDHOLDER
972
+ CARD_ACCEPTOR = :CARD_ACCEPTOR
973
+ UNKNOWN = :UNKNOWN
974
+
975
+ # @!method self.values
976
+ # @return [Array<Symbol>]
977
+ end
978
+
979
+ # Status of whether the POS is able to accept PINs
980
+ #
981
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal#pin_capability
982
+ module PinCapability
983
+ extend Lithic::Internal::Type::Enum
984
+
985
+ CAPABLE = :CAPABLE
986
+ INOPERATIVE = :INOPERATIVE
987
+ NOT_CAPABLE = :NOT_CAPABLE
988
+ UNSPECIFIED = :UNSPECIFIED
989
+
990
+ # @!method self.values
991
+ # @return [Array<Symbol>]
992
+ end
993
+
994
+ # POS Type
995
+ #
996
+ # @see Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent::Pos::Terminal#type
997
+ module Type
998
+ extend Lithic::Internal::Type::Enum
999
+
1000
+ ADMINISTRATIVE = :ADMINISTRATIVE
1001
+ ATM = :ATM
1002
+ AUTHORIZATION = :AUTHORIZATION
1003
+ COUPON_MACHINE = :COUPON_MACHINE
1004
+ DIAL_TERMINAL = :DIAL_TERMINAL
1005
+ ECOMMERCE = :ECOMMERCE
1006
+ ECR = :ECR
1007
+ FUEL_MACHINE = :FUEL_MACHINE
1008
+ HOME_TERMINAL = :HOME_TERMINAL
1009
+ MICR = :MICR
1010
+ OFF_PREMISE = :OFF_PREMISE
1011
+ PAYMENT = :PAYMENT
1012
+ PDA = :PDA
1013
+ PHONE = :PHONE
1014
+ POINT = :POINT
1015
+ POS_TERMINAL = :POS_TERMINAL
1016
+ PUBLIC_UTILITY = :PUBLIC_UTILITY
1017
+ SELF_SERVICE = :SELF_SERVICE
1018
+ TELEVISION = :TELEVISION
1019
+ TELLER = :TELLER
1020
+ TRAVELERS_CHECK_MACHINE = :TRAVELERS_CHECK_MACHINE
1021
+ VENDING = :VENDING
1022
+ VOICE = :VOICE
1023
+ UNKNOWN = :UNKNOWN
1024
+
1025
+ # @!method self.values
1026
+ # @return [Array<Symbol>]
1027
+ end
1028
+ end
1029
+ end
1030
+ end
1031
+ end
1032
+ end