lithic 0.1.0.pre.alpha.56 → 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 (414) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +46 -0
  3. data/README.md +36 -1
  4. data/lib/lithic/client.rb +12 -0
  5. data/lib/lithic/errors.rb +15 -0
  6. data/lib/lithic/models/account_activity_list_params.rb +2 -0
  7. data/lib/lithic/models/account_activity_list_response.rb +2 -0
  8. data/lib/lithic/models/account_activity_retrieve_transaction_response.rb +2 -0
  9. data/lib/lithic/models/account_holder_created_webhook_event.rb +75 -0
  10. data/lib/lithic/models/account_holder_document_updated_webhook_event.rb +191 -0
  11. data/lib/lithic/models/account_holder_updated_webhook_event.rb +702 -0
  12. data/lib/lithic/models/account_holder_verification_webhook_event.rb +69 -0
  13. data/lib/lithic/models/asa_request_webhook_event.rb +1010 -0
  14. data/lib/lithic/models/auth_rules/auth_rule.rb +208 -49
  15. data/lib/lithic/models/auth_rules/auth_rule_condition.rb +2 -2
  16. data/lib/lithic/models/auth_rules/conditional_3ds_action_parameters.rb +2 -2
  17. data/lib/lithic/models/auth_rules/conditional_ach_action_parameters.rb +2 -2
  18. data/lib/lithic/models/auth_rules/conditional_authorization_action_parameters.rb +2 -2
  19. data/lib/lithic/models/auth_rules/conditional_operation.rb +5 -0
  20. data/lib/lithic/models/auth_rules/conditional_tokenization_action_parameters.rb +19 -2
  21. data/lib/lithic/models/auth_rules/conditional_value.rb +4 -1
  22. data/lib/lithic/models/auth_rules/event_stream.rb +21 -0
  23. data/lib/lithic/models/auth_rules/v2_create_params.rb +3 -17
  24. data/lib/lithic/models/auth_rules/v2_list_params.rb +16 -19
  25. data/lib/lithic/models/auth_rules_backtest_report_created_webhook_event.rb +16 -0
  26. data/lib/lithic/models/balance_updated_webhook_event.rb +23 -0
  27. data/lib/lithic/models/book_transfer_transaction_created_webhook_event.rb +18 -0
  28. data/lib/lithic/models/book_transfer_transaction_updated_webhook_event.rb +18 -0
  29. data/lib/lithic/models/card_bulk_order.rb +106 -0
  30. data/lib/lithic/models/card_bulk_order_create_params.rb +52 -0
  31. data/lib/lithic/models/card_bulk_order_list_params.rb +61 -0
  32. data/lib/lithic/models/card_bulk_order_retrieve_params.rb +14 -0
  33. data/lib/lithic/models/card_bulk_order_update_params.rb +32 -0
  34. data/lib/lithic/models/card_convert_physical_params.rb +3 -0
  35. data/lib/lithic/models/card_converted_webhook_event.rb +24 -0
  36. data/lib/lithic/models/card_create_params.rb +14 -1
  37. data/lib/lithic/models/card_created_webhook_event.rb +32 -0
  38. data/lib/lithic/models/card_program.rb +10 -10
  39. data/lib/lithic/models/card_reissue_params.rb +3 -0
  40. data/lib/lithic/models/card_reissued_webhook_event.rb +24 -0
  41. data/lib/lithic/models/card_renew_params.rb +3 -0
  42. data/lib/lithic/models/card_renewed_webhook_event.rb +56 -0
  43. data/lib/lithic/models/card_shipped_webhook_event.rb +70 -0
  44. data/lib/lithic/models/card_transaction_enhanced_data_created_webhook_event.rb +16 -0
  45. data/lib/lithic/models/card_transaction_enhanced_data_updated_webhook_event.rb +16 -0
  46. data/lib/lithic/models/card_transaction_updated_webhook_event.rb +16 -0
  47. data/lib/lithic/models/card_web_provision_params.rb +32 -1
  48. data/lib/lithic/models/card_web_provision_response.rb +98 -60
  49. data/lib/lithic/models/cardholder_authentication.rb +132 -0
  50. data/lib/lithic/models/device.rb +37 -0
  51. data/lib/lithic/models/digital_wallet_token_metadata.rb +141 -0
  52. data/lib/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rb +253 -0
  53. data/lib/lithic/models/digital_wallet_tokenization_result_webhook_event.rb +145 -0
  54. data/lib/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_sent_webhook_event.rb +100 -0
  55. data/lib/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_webhook_event.rb +108 -0
  56. data/lib/lithic/models/digital_wallet_tokenization_updated_webhook_event.rb +47 -0
  57. data/lib/lithic/models/dispute_evidence_upload_failed_webhook_event.rb +18 -0
  58. data/lib/lithic/models/dispute_transaction_created_webhook_event.rb +18 -0
  59. data/lib/lithic/models/dispute_transaction_updated_webhook_event.rb +18 -0
  60. data/lib/lithic/models/dispute_updated_webhook_event.rb +18 -0
  61. data/lib/lithic/models/{external_bank_account_unpause_response.rb → external_bank_account.rb} +15 -16
  62. data/lib/lithic/models/external_bank_account_created_webhook_event.rb +16 -0
  63. data/lib/lithic/models/external_bank_account_updated_webhook_event.rb +16 -0
  64. data/lib/lithic/models/external_payment.rb +12 -0
  65. data/lib/lithic/models/external_payment_create_params.rb +2 -0
  66. data/lib/lithic/models/external_payment_created_webhook_event.rb +16 -0
  67. data/lib/lithic/models/external_payment_list_params.rb +2 -0
  68. data/lib/lithic/models/external_payment_updated_webhook_event.rb +16 -0
  69. data/lib/lithic/models/financial_account_balance.rb +112 -0
  70. data/lib/lithic/models/financial_account_created_webhook_event.rb +16 -0
  71. data/lib/lithic/models/financial_account_updated_webhook_event.rb +16 -0
  72. data/lib/lithic/models/financial_accounts/statement.rb +9 -9
  73. data/lib/lithic/models/financial_accounts/statements/statement_line_items.rb +18 -0
  74. data/lib/lithic/models/financial_event.rb +16 -0
  75. data/lib/lithic/models/{funding_event_retrieve_response.rb → funding_event.rb} +9 -10
  76. data/lib/lithic/models/funding_event_created_webhook_event.rb +16 -0
  77. data/lib/lithic/models/internal_transaction.rb +166 -0
  78. data/lib/lithic/models/internal_transaction_created_webhook_event.rb +16 -0
  79. data/lib/lithic/models/internal_transaction_updated_webhook_event.rb +16 -0
  80. data/lib/lithic/models/loan_tape_created_webhook_event.rb +16 -0
  81. data/lib/lithic/models/loan_tape_updated_webhook_event.rb +16 -0
  82. data/lib/lithic/models/management_operation_create_params.rb +6 -0
  83. data/lib/lithic/models/management_operation_created_webhook_event.rb +16 -0
  84. data/lib/lithic/models/management_operation_transaction.rb +6 -0
  85. data/lib/lithic/models/management_operation_updated_webhook_event.rb +16 -0
  86. data/lib/lithic/models/network_total.rb +169 -0
  87. data/lib/lithic/models/network_total_created_webhook_event.rb +16 -0
  88. data/lib/lithic/models/network_total_updated_webhook_event.rb +16 -0
  89. data/lib/lithic/models/non_pci_card.rb +10 -1
  90. data/lib/lithic/models/parsed_webhook_event.rb +818 -0
  91. data/lib/lithic/models/payment.rb +11 -1
  92. data/lib/lithic/models/payment_create_params.rb +10 -1
  93. data/lib/lithic/models/payment_transaction_created_webhook_event.rb +18 -0
  94. data/lib/lithic/models/payment_transaction_updated_webhook_event.rb +18 -0
  95. data/lib/lithic/models/settlement_report_updated_webhook_event.rb +16 -0
  96. data/lib/lithic/models/statements_created_webhook_event.rb +16 -0
  97. data/lib/lithic/models/three_ds_authentication.rb +1259 -0
  98. data/lib/lithic/models/three_ds_authentication_challenge_webhook_event.rb +89 -0
  99. data/lib/lithic/models/three_ds_authentication_created_webhook_event.rb +18 -0
  100. data/lib/lithic/models/three_ds_authentication_updated_webhook_event.rb +18 -0
  101. data/lib/lithic/models/token_info.rb +42 -0
  102. data/lib/lithic/models/tokenization.rb +9 -111
  103. data/lib/lithic/models/tokenization_approval_request_webhook_event.rb +249 -0
  104. data/lib/lithic/models/tokenization_decisioning_request_webhook_event.rb +159 -0
  105. data/lib/lithic/models/tokenization_decline_reason.rb +27 -0
  106. data/lib/lithic/models/tokenization_result_webhook_event.rb +141 -0
  107. data/lib/lithic/models/tokenization_rule_result.rb +61 -0
  108. data/lib/lithic/models/tokenization_tfa_reason.rb +29 -0
  109. data/lib/lithic/models/tokenization_two_factor_authentication_code_sent_webhook_event.rb +100 -0
  110. data/lib/lithic/models/tokenization_two_factor_authentication_code_webhook_event.rb +108 -0
  111. data/lib/lithic/models/tokenization_updated_webhook_event.rb +47 -0
  112. data/lib/lithic/models/transaction.rb +6 -174
  113. data/lib/lithic/models/wallet_decisioning_info.rb +44 -0
  114. data/lib/lithic/models/webhook_parsed_params.rb +14 -0
  115. data/lib/lithic/models.rb +158 -0
  116. data/lib/lithic/resources/auth_rules/v2.rb +17 -15
  117. data/lib/lithic/resources/card_bulk_orders.rb +127 -0
  118. data/lib/lithic/resources/cards/balances.rb +2 -2
  119. data/lib/lithic/resources/cards.rb +14 -3
  120. data/lib/lithic/resources/external_bank_accounts.rb +4 -4
  121. data/lib/lithic/resources/financial_accounts/balances.rb +2 -2
  122. data/lib/lithic/resources/funding_events.rb +4 -4
  123. data/lib/lithic/resources/internal_transaction.rb +14 -0
  124. data/lib/lithic/resources/reports/settlement/network_totals.rb +4 -4
  125. data/lib/lithic/resources/three_ds/authentication.rb +2 -2
  126. data/lib/lithic/resources/tokenizations.rb +4 -4
  127. data/lib/lithic/resources/webhooks.rb +87 -0
  128. data/lib/lithic/version.rb +1 -1
  129. data/lib/lithic.rb +92 -29
  130. data/manifest.yaml +1 -0
  131. data/rbi/lithic/client.rbi +9 -0
  132. data/rbi/lithic/models/account_activity_list_params.rbi +10 -0
  133. data/rbi/lithic/models/account_activity_list_response.rbi +10 -0
  134. data/rbi/lithic/models/account_activity_retrieve_transaction_response.rbi +10 -0
  135. data/rbi/lithic/models/account_holder_created_webhook_event.rbi +149 -0
  136. data/rbi/lithic/models/account_holder_document_updated_webhook_event.rbi +479 -0
  137. data/rbi/lithic/models/account_holder_updated_webhook_event.rbi +1274 -0
  138. data/rbi/lithic/models/account_holder_verification_webhook_event.rbi +143 -0
  139. data/rbi/lithic/models/asa_request_webhook_event.rbi +2229 -0
  140. data/rbi/lithic/models/auth_rules/auth_rule.rbi +339 -80
  141. data/rbi/lithic/models/auth_rules/conditional_operation.rbi +25 -0
  142. data/rbi/lithic/models/auth_rules/conditional_tokenization_action_parameters.rbi +29 -0
  143. data/rbi/lithic/models/auth_rules/conditional_value.rbi +2 -1
  144. data/rbi/lithic/models/auth_rules/event_stream.rbi +44 -0
  145. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +4 -60
  146. data/rbi/lithic/models/auth_rules/v2_list_params.rbi +27 -59
  147. data/rbi/lithic/models/auth_rules_backtest_report_created_webhook_event.rbi +30 -0
  148. data/rbi/lithic/models/balance_updated_webhook_event.rbi +43 -0
  149. data/rbi/lithic/models/book_transfer_transaction_created_webhook_event.rbi +31 -0
  150. data/rbi/lithic/models/book_transfer_transaction_updated_webhook_event.rbi +31 -0
  151. data/rbi/lithic/models/card_bulk_order.rbi +141 -0
  152. data/rbi/lithic/models/card_bulk_order_create_params.rbi +92 -0
  153. data/rbi/lithic/models/card_bulk_order_list_params.rbi +98 -0
  154. data/rbi/lithic/models/card_bulk_order_retrieve_params.rbi +27 -0
  155. data/rbi/lithic/models/card_bulk_order_update_params.rbi +68 -0
  156. data/rbi/lithic/models/card_convert_physical_params.rbi +8 -0
  157. data/rbi/lithic/models/card_converted_webhook_event.rbi +35 -0
  158. data/rbi/lithic/models/card_create_params.rbi +23 -0
  159. data/rbi/lithic/models/card_created_webhook_event.rbi +53 -0
  160. data/rbi/lithic/models/card_program.rbi +10 -13
  161. data/rbi/lithic/models/card_reissue_params.rbi +8 -0
  162. data/rbi/lithic/models/card_reissued_webhook_event.rbi +38 -0
  163. data/rbi/lithic/models/card_renew_params.rbi +8 -0
  164. data/rbi/lithic/models/card_renewed_webhook_event.rbi +92 -0
  165. data/rbi/lithic/models/card_shipped_webhook_event.rbi +150 -0
  166. data/rbi/lithic/models/card_transaction_enhanced_data_created_webhook_event.rbi +30 -0
  167. data/rbi/lithic/models/card_transaction_enhanced_data_updated_webhook_event.rbi +30 -0
  168. data/rbi/lithic/models/card_transaction_updated_webhook_event.rbi +30 -0
  169. data/rbi/lithic/models/card_web_provision_params.rbi +44 -0
  170. data/rbi/lithic/models/card_web_provision_response.rbi +182 -102
  171. data/rbi/lithic/models/cardholder_authentication.rbi +296 -0
  172. data/rbi/lithic/models/device.rbi +54 -0
  173. data/rbi/lithic/models/digital_wallet_token_metadata.rbi +290 -0
  174. data/rbi/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rbi +548 -0
  175. data/rbi/lithic/models/digital_wallet_tokenization_result_webhook_event.rbi +295 -0
  176. data/rbi/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_sent_webhook_event.rbi +186 -0
  177. data/rbi/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_webhook_event.rbi +194 -0
  178. data/rbi/lithic/models/digital_wallet_tokenization_updated_webhook_event.rbi +73 -0
  179. data/rbi/lithic/models/dispute_evidence_upload_failed_webhook_event.rbi +31 -0
  180. data/rbi/lithic/models/dispute_transaction_created_webhook_event.rbi +31 -0
  181. data/rbi/lithic/models/dispute_transaction_updated_webhook_event.rbi +31 -0
  182. data/rbi/lithic/models/dispute_updated_webhook_event.rbi +28 -0
  183. data/rbi/lithic/models/{external_bank_account_unpause_response.rbi → external_bank_account.rbi} +26 -75
  184. data/rbi/lithic/models/external_bank_account_created_webhook_event.rbi +30 -0
  185. data/rbi/lithic/models/external_bank_account_updated_webhook_event.rbi +30 -0
  186. data/rbi/lithic/models/external_payment.rbi +57 -0
  187. data/rbi/lithic/models/external_payment_create_params.rbi +10 -0
  188. data/rbi/lithic/models/external_payment_created_webhook_event.rbi +30 -0
  189. data/rbi/lithic/models/external_payment_list_params.rbi +10 -0
  190. data/rbi/lithic/models/external_payment_updated_webhook_event.rbi +30 -0
  191. data/rbi/lithic/models/financial_account_balance.rbi +144 -0
  192. data/rbi/lithic/models/financial_account_created_webhook_event.rbi +30 -0
  193. data/rbi/lithic/models/financial_account_updated_webhook_event.rbi +30 -0
  194. data/rbi/lithic/models/financial_accounts/statement.rbi +9 -9
  195. data/rbi/lithic/models/financial_accounts/statements/statement_line_items.rbi +90 -0
  196. data/rbi/lithic/models/financial_event.rbi +60 -0
  197. data/rbi/lithic/models/{funding_event_list_response.rbi → funding_event.rbi} +13 -35
  198. data/rbi/lithic/models/funding_event_created_webhook_event.rbi +30 -0
  199. data/rbi/lithic/models/internal_transaction.rbi +282 -0
  200. data/rbi/lithic/models/internal_transaction_created_webhook_event.rbi +30 -0
  201. data/rbi/lithic/models/internal_transaction_updated_webhook_event.rbi +30 -0
  202. data/rbi/lithic/models/loan_tape_created_webhook_event.rbi +27 -0
  203. data/rbi/lithic/models/loan_tape_updated_webhook_event.rbi +27 -0
  204. data/rbi/lithic/models/management_operation_create_params.rbi +30 -0
  205. data/rbi/lithic/models/management_operation_created_webhook_event.rbi +30 -0
  206. data/rbi/lithic/models/management_operation_transaction.rbi +30 -0
  207. data/rbi/lithic/models/management_operation_updated_webhook_event.rbi +30 -0
  208. data/rbi/lithic/models/network_total.rbi +226 -0
  209. data/rbi/lithic/models/network_total_created_webhook_event.rbi +30 -0
  210. data/rbi/lithic/models/network_total_updated_webhook_event.rbi +30 -0
  211. data/rbi/lithic/models/non_pci_card.rbi +10 -0
  212. data/rbi/lithic/models/parsed_webhook_event.rbi +1310 -0
  213. data/rbi/lithic/models/payment.rbi +12 -0
  214. data/rbi/lithic/models/payment_create_params.rbi +15 -1
  215. data/rbi/lithic/models/payment_transaction_created_webhook_event.rbi +31 -0
  216. data/rbi/lithic/models/payment_transaction_updated_webhook_event.rbi +31 -0
  217. data/rbi/lithic/models/settlement_report_updated_webhook_event.rbi +30 -0
  218. data/rbi/lithic/models/statements_created_webhook_event.rbi +30 -0
  219. data/rbi/lithic/models/three_ds_authentication.rbi +2432 -0
  220. data/rbi/lithic/models/three_ds_authentication_challenge_webhook_event.rbi +175 -0
  221. data/rbi/lithic/models/three_ds_authentication_created_webhook_event.rbi +31 -0
  222. data/rbi/lithic/models/three_ds_authentication_updated_webhook_event.rbi +31 -0
  223. data/rbi/lithic/models/token_info.rbi +70 -0
  224. data/rbi/lithic/models/tokenization.rbi +12 -335
  225. data/rbi/lithic/models/tokenization_approval_request_webhook_event.rbi +548 -0
  226. data/rbi/lithic/models/tokenization_decisioning_request_webhook_event.rbi +333 -0
  227. data/rbi/lithic/models/tokenization_decline_reason.rbi +73 -0
  228. data/rbi/lithic/models/tokenization_result_webhook_event.rbi +295 -0
  229. data/rbi/lithic/models/tokenization_rule_result.rbi +96 -0
  230. data/rbi/lithic/models/tokenization_tfa_reason.rbi +74 -0
  231. data/rbi/lithic/models/tokenization_two_factor_authentication_code_sent_webhook_event.rbi +186 -0
  232. data/rbi/lithic/models/tokenization_two_factor_authentication_code_webhook_event.rbi +194 -0
  233. data/rbi/lithic/models/tokenization_updated_webhook_event.rbi +73 -0
  234. data/rbi/lithic/models/transaction.rbi +8 -410
  235. data/rbi/lithic/models/wallet_decisioning_info.rbi +63 -0
  236. data/rbi/lithic/models/webhook_parsed_params.rbi +27 -0
  237. data/rbi/lithic/models.rbi +193 -0
  238. data/rbi/lithic/resources/auth_rules/v2.rbi +15 -15
  239. data/rbi/lithic/resources/card_bulk_orders.rbi +101 -0
  240. data/rbi/lithic/resources/cards/balances.rbi +1 -3
  241. data/rbi/lithic/resources/cards.rbi +22 -1
  242. data/rbi/lithic/resources/external_bank_accounts.rbi +2 -2
  243. data/rbi/lithic/resources/financial_accounts/balances.rbi +1 -3
  244. data/rbi/lithic/resources/funding_events.rbi +2 -4
  245. data/rbi/lithic/resources/internal_transaction.rbi +12 -0
  246. data/rbi/lithic/resources/reports/settlement/network_totals.rbi +2 -8
  247. data/rbi/lithic/resources/three_ds/authentication.rbi +1 -1
  248. data/rbi/lithic/resources/tokenizations.rbi +2 -2
  249. data/rbi/lithic/resources/webhooks.rbi +158 -0
  250. data/sig/lithic/client.rbs +6 -0
  251. data/sig/lithic/models/account_activity_list_params.rbs +4 -0
  252. data/sig/lithic/models/account_activity_list_response.rbs +4 -0
  253. data/sig/lithic/models/account_activity_retrieve_transaction_response.rbs +4 -0
  254. data/sig/lithic/models/account_holder_created_webhook_event.rbs +77 -0
  255. data/sig/lithic/models/account_holder_document_updated_webhook_event.rbs +219 -0
  256. data/sig/lithic/models/account_holder_updated_webhook_event.rbs +587 -0
  257. data/sig/lithic/models/account_holder_verification_webhook_event.rbs +69 -0
  258. data/sig/lithic/models/asa_request_webhook_event.rbs +881 -0
  259. data/sig/lithic/models/auth_rules/auth_rule.rbs +135 -36
  260. data/sig/lithic/models/auth_rules/conditional_operation.rbs +10 -0
  261. data/sig/lithic/models/auth_rules/conditional_tokenization_action_parameters.rbs +2 -0
  262. data/sig/lithic/models/auth_rules/conditional_value.rbs +1 -1
  263. data/sig/lithic/models/auth_rules/event_stream.rbs +24 -0
  264. data/sig/lithic/models/auth_rules/v2_create_params.rbs +6 -25
  265. data/sig/lithic/models/auth_rules/v2_list_params.rbs +15 -25
  266. data/sig/lithic/models/auth_rules_backtest_report_created_webhook_event.rbs +20 -0
  267. data/sig/lithic/models/balance_updated_webhook_event.rbs +25 -0
  268. data/sig/lithic/models/book_transfer_transaction_created_webhook_event.rbs +20 -0
  269. data/sig/lithic/models/book_transfer_transaction_updated_webhook_event.rbs +20 -0
  270. data/sig/lithic/models/card_bulk_order.rbs +76 -0
  271. data/sig/lithic/models/card_bulk_order_create_params.rbs +46 -0
  272. data/sig/lithic/models/card_bulk_order_list_params.rbs +56 -0
  273. data/sig/lithic/models/card_bulk_order_retrieve_params.rbs +15 -0
  274. data/sig/lithic/models/card_bulk_order_update_params.rbs +34 -0
  275. data/sig/lithic/models/card_convert_physical_params.rbs +2 -0
  276. data/sig/lithic/models/card_converted_webhook_event.rbs +19 -0
  277. data/sig/lithic/models/card_create_params.rbs +9 -0
  278. data/sig/lithic/models/card_created_webhook_event.rbs +30 -0
  279. data/sig/lithic/models/card_program.rbs +5 -7
  280. data/sig/lithic/models/card_reissue_params.rbs +2 -0
  281. data/sig/lithic/models/card_reissued_webhook_event.rbs +21 -0
  282. data/sig/lithic/models/card_renew_params.rbs +2 -0
  283. data/sig/lithic/models/card_renewed_webhook_event.rbs +55 -0
  284. data/sig/lithic/models/card_shipped_webhook_event.rbs +71 -0
  285. data/sig/lithic/models/card_transaction_enhanced_data_created_webhook_event.rbs +20 -0
  286. data/sig/lithic/models/card_transaction_enhanced_data_updated_webhook_event.rbs +20 -0
  287. data/sig/lithic/models/card_transaction_updated_webhook_event.rbs +18 -0
  288. data/sig/lithic/models/card_web_provision_params.rbs +26 -2
  289. data/sig/lithic/models/card_web_provision_response.rbs +81 -51
  290. data/sig/lithic/models/cardholder_authentication.rbs +98 -0
  291. data/sig/lithic/models/device.rbs +21 -0
  292. data/sig/lithic/models/digital_wallet_token_metadata.rbs +119 -0
  293. data/sig/lithic/models/digital_wallet_tokenization_approval_request_webhook_event.rbs +223 -0
  294. data/sig/lithic/models/digital_wallet_tokenization_result_webhook_event.rbs +133 -0
  295. data/sig/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_sent_webhook_event.rbs +78 -0
  296. data/sig/lithic/models/digital_wallet_tokenization_two_factor_authentication_code_webhook_event.rbs +83 -0
  297. data/sig/lithic/models/digital_wallet_tokenization_updated_webhook_event.rbs +40 -0
  298. data/sig/lithic/models/dispute_evidence_upload_failed_webhook_event.rbs +18 -0
  299. data/sig/lithic/models/dispute_transaction_created_webhook_event.rbs +18 -0
  300. data/sig/lithic/models/dispute_transaction_updated_webhook_event.rbs +18 -0
  301. data/sig/lithic/models/dispute_updated_webhook_event.rbs +15 -0
  302. data/sig/lithic/models/{external_bank_account_unpause_response.rbs → external_bank_account.rbs} +17 -17
  303. data/sig/lithic/models/external_bank_account_created_webhook_event.rbs +18 -0
  304. data/sig/lithic/models/external_bank_account_updated_webhook_event.rbs +18 -0
  305. data/sig/lithic/models/external_payment.rbs +28 -1
  306. data/sig/lithic/models/external_payment_create_params.rbs +8 -1
  307. data/sig/lithic/models/external_payment_created_webhook_event.rbs +18 -0
  308. data/sig/lithic/models/external_payment_list_params.rbs +8 -1
  309. data/sig/lithic/models/external_payment_updated_webhook_event.rbs +18 -0
  310. data/sig/lithic/models/financial_account_balance.rbs +78 -0
  311. data/sig/lithic/models/financial_account_created_webhook_event.rbs +18 -0
  312. data/sig/lithic/models/financial_account_updated_webhook_event.rbs +18 -0
  313. data/sig/lithic/models/financial_accounts/statement.rbs +12 -12
  314. data/sig/lithic/models/financial_accounts/statements/statement_line_items.rbs +36 -0
  315. data/sig/lithic/models/financial_event.rbs +32 -0
  316. data/sig/lithic/models/{funding_event_list_response.rbs → funding_event.rbs} +11 -11
  317. data/sig/lithic/models/funding_event_created_webhook_event.rbs +16 -0
  318. data/sig/lithic/models/internal_transaction.rbs +165 -0
  319. data/sig/lithic/models/internal_transaction_created_webhook_event.rbs +18 -0
  320. data/sig/lithic/models/internal_transaction_updated_webhook_event.rbs +18 -0
  321. data/sig/lithic/models/loan_tape_created_webhook_event.rbs +15 -0
  322. data/sig/lithic/models/loan_tape_updated_webhook_event.rbs +15 -0
  323. data/sig/lithic/models/management_operation_create_params.rbs +12 -0
  324. data/sig/lithic/models/management_operation_created_webhook_event.rbs +18 -0
  325. data/sig/lithic/models/management_operation_transaction.rbs +12 -0
  326. data/sig/lithic/models/management_operation_updated_webhook_event.rbs +18 -0
  327. data/sig/lithic/models/network_total.rbs +125 -0
  328. data/sig/lithic/models/network_total_created_webhook_event.rbs +16 -0
  329. data/sig/lithic/models/network_total_updated_webhook_event.rbs +16 -0
  330. data/sig/lithic/models/non_pci_card.rbs +5 -0
  331. data/sig/lithic/models/parsed_webhook_event.rbs +641 -0
  332. data/sig/lithic/models/payment.rbs +9 -0
  333. data/sig/lithic/models/payment_create_params.rbs +7 -0
  334. data/sig/lithic/models/payment_transaction_created_webhook_event.rbs +18 -0
  335. data/sig/lithic/models/payment_transaction_updated_webhook_event.rbs +18 -0
  336. data/sig/lithic/models/settlement_report_updated_webhook_event.rbs +18 -0
  337. data/sig/lithic/models/statements_created_webhook_event.rbs +16 -0
  338. data/sig/lithic/models/three_ds_authentication.rbs +911 -0
  339. data/sig/lithic/models/three_ds_authentication_challenge_webhook_event.rbs +72 -0
  340. data/sig/lithic/models/three_ds_authentication_created_webhook_event.rbs +18 -0
  341. data/sig/lithic/models/three_ds_authentication_updated_webhook_event.rbs +18 -0
  342. data/sig/lithic/models/token_info.rbs +36 -0
  343. data/sig/lithic/models/tokenization.rbs +18 -137
  344. data/sig/lithic/models/tokenization_approval_request_webhook_event.rbs +223 -0
  345. data/sig/lithic/models/tokenization_decisioning_request_webhook_event.rbs +134 -0
  346. data/sig/lithic/models/tokenization_decline_reason.rbs +38 -0
  347. data/sig/lithic/models/tokenization_result_webhook_event.rbs +133 -0
  348. data/sig/lithic/models/tokenization_rule_result.rbs +48 -0
  349. data/sig/lithic/models/tokenization_tfa_reason.rbs +42 -0
  350. data/sig/lithic/models/tokenization_two_factor_authentication_code_sent_webhook_event.rbs +78 -0
  351. data/sig/lithic/models/tokenization_two_factor_authentication_code_webhook_event.rbs +83 -0
  352. data/sig/lithic/models/tokenization_updated_webhook_event.rbs +40 -0
  353. data/sig/lithic/models/transaction.rbs +8 -140
  354. data/sig/lithic/models/wallet_decisioning_info.rbs +35 -0
  355. data/sig/lithic/models/webhook_parsed_params.rbs +15 -0
  356. data/sig/lithic/models.rbs +150 -0
  357. data/sig/lithic/resources/auth_rules/v2.rbs +9 -8
  358. data/sig/lithic/resources/card_bulk_orders.rbs +34 -0
  359. data/sig/lithic/resources/cards/balances.rbs +1 -1
  360. data/sig/lithic/resources/cards.rbs +5 -1
  361. data/sig/lithic/resources/external_bank_accounts.rbs +2 -2
  362. data/sig/lithic/resources/financial_accounts/balances.rbs +1 -1
  363. data/sig/lithic/resources/funding_events.rbs +2 -2
  364. data/sig/lithic/resources/internal_transaction.rbs +7 -0
  365. data/sig/lithic/resources/reports/settlement/network_totals.rbs +2 -2
  366. data/sig/lithic/resources/three_ds/authentication.rbs +1 -1
  367. data/sig/lithic/resources/tokenizations.rbs +2 -2
  368. data/sig/lithic/resources/webhooks.rbs +135 -0
  369. metadata +241 -55
  370. data/lib/lithic/models/auth_rules/v2_create_response.rb +0 -280
  371. data/lib/lithic/models/auth_rules/v2_draft_response.rb +0 -279
  372. data/lib/lithic/models/auth_rules/v2_list_response.rb +0 -279
  373. data/lib/lithic/models/auth_rules/v2_promote_response.rb +0 -280
  374. data/lib/lithic/models/auth_rules/v2_retrieve_response.rb +0 -284
  375. data/lib/lithic/models/auth_rules/v2_update_response.rb +0 -280
  376. data/lib/lithic/models/cards/balance_list_response.rb +0 -115
  377. data/lib/lithic/models/external_bank_account_retry_prenote_response.rb +0 -242
  378. data/lib/lithic/models/financial_accounts/balance_list_response.rb +0 -115
  379. data/lib/lithic/models/funding_event_list_response.rb +0 -108
  380. data/lib/lithic/models/reports/settlement/network_total_list_response.rb +0 -176
  381. data/lib/lithic/models/reports/settlement/network_total_retrieve_response.rb +0 -176
  382. data/lib/lithic/models/three_ds/authentication_retrieve_response.rb +0 -1288
  383. data/lib/lithic/models/tokenization_simulate_response.rb +0 -16
  384. data/lib/lithic/models/tokenization_update_digital_card_art_response.rb +0 -16
  385. data/rbi/lithic/models/auth_rules/v2_create_response.rbi +0 -522
  386. data/rbi/lithic/models/auth_rules/v2_draft_response.rbi +0 -522
  387. data/rbi/lithic/models/auth_rules/v2_list_response.rbi +0 -518
  388. data/rbi/lithic/models/auth_rules/v2_promote_response.rbi +0 -525
  389. data/rbi/lithic/models/auth_rules/v2_retrieve_response.rbi +0 -528
  390. data/rbi/lithic/models/auth_rules/v2_update_response.rbi +0 -522
  391. data/rbi/lithic/models/cards/balance_list_response.rbi +0 -170
  392. data/rbi/lithic/models/external_bank_account_retry_prenote_response.rbi +0 -375
  393. data/rbi/lithic/models/financial_accounts/balance_list_response.rbi +0 -174
  394. data/rbi/lithic/models/funding_event_retrieve_response.rbi +0 -184
  395. data/rbi/lithic/models/reports/settlement/network_total_list_response.rbi +0 -280
  396. data/rbi/lithic/models/reports/settlement/network_total_retrieve_response.rbi +0 -280
  397. data/rbi/lithic/models/three_ds/authentication_retrieve_response.rbi +0 -2580
  398. data/rbi/lithic/models/tokenization_simulate_response.rbi +0 -33
  399. data/rbi/lithic/models/tokenization_update_digital_card_art_response.rbi +0 -31
  400. data/sig/lithic/models/auth_rules/v2_create_response.rbs +0 -205
  401. data/sig/lithic/models/auth_rules/v2_draft_response.rbs +0 -205
  402. data/sig/lithic/models/auth_rules/v2_list_response.rbs +0 -205
  403. data/sig/lithic/models/auth_rules/v2_promote_response.rbs +0 -205
  404. data/sig/lithic/models/auth_rules/v2_retrieve_response.rbs +0 -205
  405. data/sig/lithic/models/auth_rules/v2_update_response.rbs +0 -205
  406. data/sig/lithic/models/cards/balance_list_response.rbs +0 -80
  407. data/sig/lithic/models/external_bank_account_retry_prenote_response.rbs +0 -162
  408. data/sig/lithic/models/financial_accounts/balance_list_response.rbs +0 -80
  409. data/sig/lithic/models/funding_event_retrieve_response.rbs +0 -85
  410. data/sig/lithic/models/reports/settlement/network_total_list_response.rbs +0 -129
  411. data/sig/lithic/models/reports/settlement/network_total_retrieve_response.rbs +0 -129
  412. data/sig/lithic/models/three_ds/authentication_retrieve_response.rbs +0 -913
  413. data/sig/lithic/models/tokenization_simulate_response.rbs +0 -18
  414. data/sig/lithic/models/tokenization_update_digital_card_art_response.rbs +0 -16
@@ -1,2580 +0,0 @@
1
- # typed: strong
2
-
3
- module Lithic
4
- module Models
5
- module ThreeDS
6
- class AuthenticationRetrieveResponse < Lithic::Internal::Type::BaseModel
7
- OrHash =
8
- T.type_alias do
9
- T.any(
10
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse,
11
- Lithic::Internal::AnyHash
12
- )
13
- end
14
-
15
- # Globally unique identifier for the 3DS authentication. Permitted values:
16
- # 36-digit version 4 UUID (including hyphens).
17
- sig { returns(String) }
18
- attr_accessor :token
19
-
20
- # Type of account/card that is being used for the transaction. Maps to EMV 3DS
21
- # field `acctType`.
22
- sig do
23
- returns(
24
- T.nilable(
25
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AccountType::TaggedSymbol
26
- )
27
- )
28
- end
29
- attr_accessor :account_type
30
-
31
- # Indicates the outcome of the 3DS authentication process.
32
- sig do
33
- returns(
34
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationResult::TaggedSymbol
35
- )
36
- end
37
- attr_accessor :authentication_result
38
-
39
- # Indicates whether the expiration date provided by the cardholder during checkout
40
- # matches Lithic's record of the card's expiration date.
41
- sig do
42
- returns(
43
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::CardExpiryCheck::TaggedSymbol
44
- )
45
- end
46
- attr_accessor :card_expiry_check
47
-
48
- # Globally unique identifier for the card on which the 3DS authentication has
49
- # occurred. Permitted values: 36-digit version 4 UUID (including hyphens).
50
- sig { returns(String) }
51
- attr_accessor :card_token
52
-
53
- # Object containing data about the cardholder provided during the transaction.
54
- sig do
55
- returns(
56
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder
57
- )
58
- end
59
- attr_reader :cardholder
60
-
61
- sig do
62
- params(
63
- cardholder:
64
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::OrHash
65
- ).void
66
- end
67
- attr_writer :cardholder
68
-
69
- # Channel in which the authentication occurs. Maps to EMV 3DS field
70
- # `deviceChannel`.
71
- sig do
72
- returns(
73
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Channel::TaggedSymbol
74
- )
75
- end
76
- attr_accessor :channel
77
-
78
- # Date and time when the authentication was created in Lithic's system. Permitted
79
- # values: Date string in the ISO 8601 format yyyy-MM-dd'T'hh:mm:ssZ.
80
- sig { returns(Time) }
81
- attr_accessor :created
82
-
83
- # Object containing data about the merchant involved in the e-commerce
84
- # transaction.
85
- sig do
86
- returns(
87
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant
88
- )
89
- end
90
- attr_reader :merchant
91
-
92
- sig do
93
- params(
94
- merchant:
95
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::OrHash
96
- ).void
97
- end
98
- attr_writer :merchant
99
-
100
- # Either PAYMENT_AUTHENTICATION or NON_PAYMENT_AUTHENTICATION. For
101
- # NON_PAYMENT_AUTHENTICATION, additional_data and transaction fields are not
102
- # populated.
103
- sig do
104
- returns(
105
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::MessageCategory::TaggedSymbol
106
- )
107
- end
108
- attr_accessor :message_category
109
-
110
- # Indicates whether a challenge is requested for this transaction
111
- #
112
- # - `NO_PREFERENCE` - No Preference
113
- # - `NO_CHALLENGE_REQUESTED` - No Challenge Requested
114
- # - `CHALLENGE_PREFERENCE` - Challenge requested (3DS Requestor preference)
115
- # - `CHALLENGE_MANDATE` - Challenge requested (Mandate)
116
- # - `NO_CHALLENGE_RISK_ALREADY_ASSESSED` - No Challenge requested (Transactional
117
- # risk analysis is already performed)
118
- # - `DATA_SHARE_ONLY` - No Challenge requested (Data Share Only)
119
- # - `OTHER` - Other indicators not captured by above. These are rarely used
120
- sig do
121
- returns(
122
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::TaggedSymbol
123
- )
124
- end
125
- attr_accessor :three_ds_requestor_challenge_indicator
126
-
127
- # Object containing additional data about the 3DS request that is beyond the EMV
128
- # 3DS standard spec (e.g., specific fields that only certain card networks send
129
- # but are not required across all 3DS requests).
130
- sig do
131
- returns(
132
- T.nilable(
133
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData
134
- )
135
- )
136
- end
137
- attr_reader :additional_data
138
-
139
- sig do
140
- params(
141
- additional_data:
142
- T.nilable(
143
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData::OrHash
144
- )
145
- ).void
146
- end
147
- attr_writer :additional_data
148
-
149
- # Object containing data about the app used in the e-commerce transaction. Present
150
- # if the channel is 'APP_BASED'.
151
- sig do
152
- returns(
153
- T.nilable(
154
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::App
155
- )
156
- )
157
- end
158
- attr_reader :app
159
-
160
- sig do
161
- params(
162
- app:
163
- T.nilable(
164
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::App::OrHash
165
- )
166
- ).void
167
- end
168
- attr_writer :app
169
-
170
- # Type of authentication request - i.e., the type of transaction or interaction is
171
- # causing the merchant to request an authentication. Maps to EMV 3DS field
172
- # `threeDSRequestorAuthenticationInd`.
173
- sig do
174
- returns(
175
- T.nilable(
176
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
177
- )
178
- )
179
- end
180
- attr_accessor :authentication_request_type
181
-
182
- # Object containing data about the browser used in the e-commerce transaction.
183
- # Present if the channel is 'BROWSER'.
184
- sig do
185
- returns(
186
- T.nilable(
187
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Browser
188
- )
189
- )
190
- end
191
- attr_reader :browser
192
-
193
- sig do
194
- params(
195
- browser:
196
- T.nilable(
197
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Browser::OrHash
198
- )
199
- ).void
200
- end
201
- attr_writer :browser
202
-
203
- # Metadata about the challenge method and delivery. Only present when a challenge
204
- # is triggered.
205
- sig do
206
- returns(
207
- T.nilable(
208
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata
209
- )
210
- )
211
- end
212
- attr_reader :challenge_metadata
213
-
214
- sig do
215
- params(
216
- challenge_metadata:
217
- T.nilable(
218
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::OrHash
219
- )
220
- ).void
221
- end
222
- attr_writer :challenge_metadata
223
-
224
- # Entity that orchestrates the challenge. This won't be set for authentications
225
- # for which a decision has not yet been made (e.g. in-flight customer decisioning
226
- # request).
227
- sig do
228
- returns(
229
- T.nilable(
230
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeOrchestratedBy::TaggedSymbol
231
- )
232
- )
233
- end
234
- attr_accessor :challenge_orchestrated_by
235
-
236
- # Entity that made the authentication decision. This won't be set for
237
- # authentications for which a decision has not yet been made (e.g. in-flight
238
- # customer decisioning request).
239
- sig do
240
- returns(
241
- T.nilable(
242
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy::TaggedSymbol
243
- )
244
- )
245
- end
246
- attr_accessor :decision_made_by
247
-
248
- # Type of 3DS Requestor Initiated (3RI) request — i.e., a 3DS authentication that
249
- # takes place at the initiation of the merchant rather than the cardholder. The
250
- # most common example of this is where a merchant is authenticating before billing
251
- # for a recurring transaction such as a pay TV subscription or a utility bill.
252
- # Maps to EMV 3DS field `threeRIInd`.
253
- sig do
254
- returns(
255
- T.nilable(
256
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
257
- )
258
- )
259
- end
260
- attr_accessor :three_ri_request_type
261
-
262
- # Object containing data about the e-commerce transaction for which the merchant
263
- # is requesting authentication.
264
- sig do
265
- returns(
266
- T.nilable(
267
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction
268
- )
269
- )
270
- end
271
- attr_reader :transaction
272
-
273
- sig do
274
- params(
275
- transaction:
276
- T.nilable(
277
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::OrHash
278
- )
279
- ).void
280
- end
281
- attr_writer :transaction
282
-
283
- # Represents a 3DS authentication
284
- sig do
285
- params(
286
- token: String,
287
- account_type:
288
- T.nilable(
289
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AccountType::OrSymbol
290
- ),
291
- authentication_result:
292
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationResult::OrSymbol,
293
- card_expiry_check:
294
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::CardExpiryCheck::OrSymbol,
295
- card_token: String,
296
- cardholder:
297
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::OrHash,
298
- channel:
299
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Channel::OrSymbol,
300
- created: Time,
301
- merchant:
302
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::OrHash,
303
- message_category:
304
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::MessageCategory::OrSymbol,
305
- three_ds_requestor_challenge_indicator:
306
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::OrSymbol,
307
- additional_data:
308
- T.nilable(
309
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData::OrHash
310
- ),
311
- app:
312
- T.nilable(
313
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::App::OrHash
314
- ),
315
- authentication_request_type:
316
- T.nilable(
317
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::OrSymbol
318
- ),
319
- browser:
320
- T.nilable(
321
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Browser::OrHash
322
- ),
323
- challenge_metadata:
324
- T.nilable(
325
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::OrHash
326
- ),
327
- challenge_orchestrated_by:
328
- T.nilable(
329
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeOrchestratedBy::OrSymbol
330
- ),
331
- decision_made_by:
332
- T.nilable(
333
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy::OrSymbol
334
- ),
335
- three_ri_request_type:
336
- T.nilable(
337
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::OrSymbol
338
- ),
339
- transaction:
340
- T.nilable(
341
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::OrHash
342
- )
343
- ).returns(T.attached_class)
344
- end
345
- def self.new(
346
- # Globally unique identifier for the 3DS authentication. Permitted values:
347
- # 36-digit version 4 UUID (including hyphens).
348
- token:,
349
- # Type of account/card that is being used for the transaction. Maps to EMV 3DS
350
- # field `acctType`.
351
- account_type:,
352
- # Indicates the outcome of the 3DS authentication process.
353
- authentication_result:,
354
- # Indicates whether the expiration date provided by the cardholder during checkout
355
- # matches Lithic's record of the card's expiration date.
356
- card_expiry_check:,
357
- # Globally unique identifier for the card on which the 3DS authentication has
358
- # occurred. Permitted values: 36-digit version 4 UUID (including hyphens).
359
- card_token:,
360
- # Object containing data about the cardholder provided during the transaction.
361
- cardholder:,
362
- # Channel in which the authentication occurs. Maps to EMV 3DS field
363
- # `deviceChannel`.
364
- channel:,
365
- # Date and time when the authentication was created in Lithic's system. Permitted
366
- # values: Date string in the ISO 8601 format yyyy-MM-dd'T'hh:mm:ssZ.
367
- created:,
368
- # Object containing data about the merchant involved in the e-commerce
369
- # transaction.
370
- merchant:,
371
- # Either PAYMENT_AUTHENTICATION or NON_PAYMENT_AUTHENTICATION. For
372
- # NON_PAYMENT_AUTHENTICATION, additional_data and transaction fields are not
373
- # populated.
374
- message_category:,
375
- # Indicates whether a challenge is requested for this transaction
376
- #
377
- # - `NO_PREFERENCE` - No Preference
378
- # - `NO_CHALLENGE_REQUESTED` - No Challenge Requested
379
- # - `CHALLENGE_PREFERENCE` - Challenge requested (3DS Requestor preference)
380
- # - `CHALLENGE_MANDATE` - Challenge requested (Mandate)
381
- # - `NO_CHALLENGE_RISK_ALREADY_ASSESSED` - No Challenge requested (Transactional
382
- # risk analysis is already performed)
383
- # - `DATA_SHARE_ONLY` - No Challenge requested (Data Share Only)
384
- # - `OTHER` - Other indicators not captured by above. These are rarely used
385
- three_ds_requestor_challenge_indicator:,
386
- # Object containing additional data about the 3DS request that is beyond the EMV
387
- # 3DS standard spec (e.g., specific fields that only certain card networks send
388
- # but are not required across all 3DS requests).
389
- additional_data: nil,
390
- # Object containing data about the app used in the e-commerce transaction. Present
391
- # if the channel is 'APP_BASED'.
392
- app: nil,
393
- # Type of authentication request - i.e., the type of transaction or interaction is
394
- # causing the merchant to request an authentication. Maps to EMV 3DS field
395
- # `threeDSRequestorAuthenticationInd`.
396
- authentication_request_type: nil,
397
- # Object containing data about the browser used in the e-commerce transaction.
398
- # Present if the channel is 'BROWSER'.
399
- browser: nil,
400
- # Metadata about the challenge method and delivery. Only present when a challenge
401
- # is triggered.
402
- challenge_metadata: nil,
403
- # Entity that orchestrates the challenge. This won't be set for authentications
404
- # for which a decision has not yet been made (e.g. in-flight customer decisioning
405
- # request).
406
- challenge_orchestrated_by: nil,
407
- # Entity that made the authentication decision. This won't be set for
408
- # authentications for which a decision has not yet been made (e.g. in-flight
409
- # customer decisioning request).
410
- decision_made_by: nil,
411
- # Type of 3DS Requestor Initiated (3RI) request — i.e., a 3DS authentication that
412
- # takes place at the initiation of the merchant rather than the cardholder. The
413
- # most common example of this is where a merchant is authenticating before billing
414
- # for a recurring transaction such as a pay TV subscription or a utility bill.
415
- # Maps to EMV 3DS field `threeRIInd`.
416
- three_ri_request_type: nil,
417
- # Object containing data about the e-commerce transaction for which the merchant
418
- # is requesting authentication.
419
- transaction: nil
420
- )
421
- end
422
-
423
- sig do
424
- override.returns(
425
- {
426
- token: String,
427
- account_type:
428
- T.nilable(
429
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AccountType::TaggedSymbol
430
- ),
431
- authentication_result:
432
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationResult::TaggedSymbol,
433
- card_expiry_check:
434
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::CardExpiryCheck::TaggedSymbol,
435
- card_token: String,
436
- cardholder:
437
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder,
438
- channel:
439
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Channel::TaggedSymbol,
440
- created: Time,
441
- merchant:
442
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant,
443
- message_category:
444
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::MessageCategory::TaggedSymbol,
445
- three_ds_requestor_challenge_indicator:
446
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::TaggedSymbol,
447
- additional_data:
448
- T.nilable(
449
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData
450
- ),
451
- app:
452
- T.nilable(
453
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::App
454
- ),
455
- authentication_request_type:
456
- T.nilable(
457
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
458
- ),
459
- browser:
460
- T.nilable(
461
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Browser
462
- ),
463
- challenge_metadata:
464
- T.nilable(
465
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata
466
- ),
467
- challenge_orchestrated_by:
468
- T.nilable(
469
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeOrchestratedBy::TaggedSymbol
470
- ),
471
- decision_made_by:
472
- T.nilable(
473
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy::TaggedSymbol
474
- ),
475
- three_ri_request_type:
476
- T.nilable(
477
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
478
- ),
479
- transaction:
480
- T.nilable(
481
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction
482
- )
483
- }
484
- )
485
- end
486
- def to_hash
487
- end
488
-
489
- # Type of account/card that is being used for the transaction. Maps to EMV 3DS
490
- # field `acctType`.
491
- module AccountType
492
- extend Lithic::Internal::Type::Enum
493
-
494
- TaggedSymbol =
495
- T.type_alias do
496
- T.all(
497
- Symbol,
498
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AccountType
499
- )
500
- end
501
- OrSymbol = T.type_alias { T.any(Symbol, String) }
502
-
503
- CREDIT =
504
- T.let(
505
- :CREDIT,
506
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AccountType::TaggedSymbol
507
- )
508
- DEBIT =
509
- T.let(
510
- :DEBIT,
511
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AccountType::TaggedSymbol
512
- )
513
- NOT_APPLICABLE =
514
- T.let(
515
- :NOT_APPLICABLE,
516
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AccountType::TaggedSymbol
517
- )
518
-
519
- sig do
520
- override.returns(
521
- T::Array[
522
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AccountType::TaggedSymbol
523
- ]
524
- )
525
- end
526
- def self.values
527
- end
528
- end
529
-
530
- # Indicates the outcome of the 3DS authentication process.
531
- module AuthenticationResult
532
- extend Lithic::Internal::Type::Enum
533
-
534
- TaggedSymbol =
535
- T.type_alias do
536
- T.all(
537
- Symbol,
538
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationResult
539
- )
540
- end
541
- OrSymbol = T.type_alias { T.any(Symbol, String) }
542
-
543
- DECLINE =
544
- T.let(
545
- :DECLINE,
546
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationResult::TaggedSymbol
547
- )
548
- SUCCESS =
549
- T.let(
550
- :SUCCESS,
551
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationResult::TaggedSymbol
552
- )
553
- PENDING_CHALLENGE =
554
- T.let(
555
- :PENDING_CHALLENGE,
556
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationResult::TaggedSymbol
557
- )
558
- PENDING_DECISION =
559
- T.let(
560
- :PENDING_DECISION,
561
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationResult::TaggedSymbol
562
- )
563
-
564
- sig do
565
- override.returns(
566
- T::Array[
567
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationResult::TaggedSymbol
568
- ]
569
- )
570
- end
571
- def self.values
572
- end
573
- end
574
-
575
- # Indicates whether the expiration date provided by the cardholder during checkout
576
- # matches Lithic's record of the card's expiration date.
577
- module CardExpiryCheck
578
- extend Lithic::Internal::Type::Enum
579
-
580
- TaggedSymbol =
581
- T.type_alias do
582
- T.all(
583
- Symbol,
584
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::CardExpiryCheck
585
- )
586
- end
587
- OrSymbol = T.type_alias { T.any(Symbol, String) }
588
-
589
- MATCH =
590
- T.let(
591
- :MATCH,
592
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::CardExpiryCheck::TaggedSymbol
593
- )
594
- MISMATCH =
595
- T.let(
596
- :MISMATCH,
597
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::CardExpiryCheck::TaggedSymbol
598
- )
599
- NOT_PRESENT =
600
- T.let(
601
- :NOT_PRESENT,
602
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::CardExpiryCheck::TaggedSymbol
603
- )
604
-
605
- sig do
606
- override.returns(
607
- T::Array[
608
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::CardExpiryCheck::TaggedSymbol
609
- ]
610
- )
611
- end
612
- def self.values
613
- end
614
- end
615
-
616
- class Cardholder < Lithic::Internal::Type::BaseModel
617
- OrHash =
618
- T.type_alias do
619
- T.any(
620
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder,
621
- Lithic::Internal::AnyHash
622
- )
623
- end
624
-
625
- # Indicates whether the shipping address and billing address provided by the
626
- # cardholder are the same. This value - and assessment of whether the addresses
627
- # match - is provided directly in the 3DS request and is not determined by Lithic.
628
- # Maps to EMV 3DS field `addrMatch`.
629
- sig { returns(T.nilable(T::Boolean)) }
630
- attr_accessor :address_match
631
-
632
- # Lithic's evaluation result comparing the transaction's address data with the
633
- # cardholder KYC data if it exists. In the event Lithic does not have any
634
- # Cardholder KYC data, or the transaction does not contain any address data,
635
- # NOT_PRESENT will be returned
636
- sig do
637
- returns(
638
- T.nilable(
639
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch::TaggedSymbol
640
- )
641
- )
642
- end
643
- attr_reader :address_on_file_match
644
-
645
- sig do
646
- params(
647
- address_on_file_match:
648
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch::OrSymbol
649
- ).void
650
- end
651
- attr_writer :address_on_file_match
652
-
653
- # Object containing data on the billing address provided during the transaction.
654
- sig do
655
- returns(
656
- T.nilable(
657
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::BillingAddress
658
- )
659
- )
660
- end
661
- attr_reader :billing_address
662
-
663
- sig do
664
- params(
665
- billing_address:
666
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::BillingAddress::OrHash
667
- ).void
668
- end
669
- attr_writer :billing_address
670
-
671
- # Email address that is either provided by the cardholder or is on file with the
672
- # merchant in a 3RI request. Maps to EMV 3DS field `email`.
673
- sig { returns(T.nilable(String)) }
674
- attr_accessor :email
675
-
676
- # Name of the cardholder. Maps to EMV 3DS field `cardholderName`.
677
- sig { returns(T.nilable(String)) }
678
- attr_accessor :name
679
-
680
- # Home phone number in E.164 format provided by the cardholder. Maps to EMV 3DS
681
- # fields `homePhone.cc` and `homePhone.subscriber`.
682
- sig { returns(T.nilable(String)) }
683
- attr_accessor :phone_number_home
684
-
685
- # Mobile/cell phone number in E.164 format provided by the cardholder. Maps to EMV
686
- # 3DS fields `mobilePhone.cc` and `mobilePhone.subscriber`.
687
- sig { returns(T.nilable(String)) }
688
- attr_accessor :phone_number_mobile
689
-
690
- # Work phone number in E.164 format provided by the cardholder. Maps to EMV 3DS
691
- # fields `workPhone.cc` and `workPhone.subscriber`.
692
- sig { returns(T.nilable(String)) }
693
- attr_accessor :phone_number_work
694
-
695
- # Object containing data on the shipping address provided during the transaction.
696
- sig do
697
- returns(
698
- T.nilable(
699
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::ShippingAddress
700
- )
701
- )
702
- end
703
- attr_reader :shipping_address
704
-
705
- sig do
706
- params(
707
- shipping_address:
708
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::ShippingAddress::OrHash
709
- ).void
710
- end
711
- attr_writer :shipping_address
712
-
713
- # Object containing data about the cardholder provided during the transaction.
714
- sig do
715
- params(
716
- address_match: T.nilable(T::Boolean),
717
- address_on_file_match:
718
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch::OrSymbol,
719
- billing_address:
720
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::BillingAddress::OrHash,
721
- email: T.nilable(String),
722
- name: T.nilable(String),
723
- phone_number_home: T.nilable(String),
724
- phone_number_mobile: T.nilable(String),
725
- phone_number_work: T.nilable(String),
726
- shipping_address:
727
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::ShippingAddress::OrHash
728
- ).returns(T.attached_class)
729
- end
730
- def self.new(
731
- # Indicates whether the shipping address and billing address provided by the
732
- # cardholder are the same. This value - and assessment of whether the addresses
733
- # match - is provided directly in the 3DS request and is not determined by Lithic.
734
- # Maps to EMV 3DS field `addrMatch`.
735
- address_match: nil,
736
- # Lithic's evaluation result comparing the transaction's address data with the
737
- # cardholder KYC data if it exists. In the event Lithic does not have any
738
- # Cardholder KYC data, or the transaction does not contain any address data,
739
- # NOT_PRESENT will be returned
740
- address_on_file_match: nil,
741
- # Object containing data on the billing address provided during the transaction.
742
- billing_address: nil,
743
- # Email address that is either provided by the cardholder or is on file with the
744
- # merchant in a 3RI request. Maps to EMV 3DS field `email`.
745
- email: nil,
746
- # Name of the cardholder. Maps to EMV 3DS field `cardholderName`.
747
- name: nil,
748
- # Home phone number in E.164 format provided by the cardholder. Maps to EMV 3DS
749
- # fields `homePhone.cc` and `homePhone.subscriber`.
750
- phone_number_home: nil,
751
- # Mobile/cell phone number in E.164 format provided by the cardholder. Maps to EMV
752
- # 3DS fields `mobilePhone.cc` and `mobilePhone.subscriber`.
753
- phone_number_mobile: nil,
754
- # Work phone number in E.164 format provided by the cardholder. Maps to EMV 3DS
755
- # fields `workPhone.cc` and `workPhone.subscriber`.
756
- phone_number_work: nil,
757
- # Object containing data on the shipping address provided during the transaction.
758
- shipping_address: nil
759
- )
760
- end
761
-
762
- sig do
763
- override.returns(
764
- {
765
- address_match: T.nilable(T::Boolean),
766
- address_on_file_match:
767
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch::TaggedSymbol,
768
- billing_address:
769
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::BillingAddress,
770
- email: T.nilable(String),
771
- name: T.nilable(String),
772
- phone_number_home: T.nilable(String),
773
- phone_number_mobile: T.nilable(String),
774
- phone_number_work: T.nilable(String),
775
- shipping_address:
776
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::ShippingAddress
777
- }
778
- )
779
- end
780
- def to_hash
781
- end
782
-
783
- # Lithic's evaluation result comparing the transaction's address data with the
784
- # cardholder KYC data if it exists. In the event Lithic does not have any
785
- # Cardholder KYC data, or the transaction does not contain any address data,
786
- # NOT_PRESENT will be returned
787
- module AddressOnFileMatch
788
- extend Lithic::Internal::Type::Enum
789
-
790
- TaggedSymbol =
791
- T.type_alias do
792
- T.all(
793
- Symbol,
794
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch
795
- )
796
- end
797
- OrSymbol = T.type_alias { T.any(Symbol, String) }
798
-
799
- MATCH =
800
- T.let(
801
- :MATCH,
802
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch::TaggedSymbol
803
- )
804
- MATCH_ADDRESS_ONLY =
805
- T.let(
806
- :MATCH_ADDRESS_ONLY,
807
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch::TaggedSymbol
808
- )
809
- MATCH_ZIP_ONLY =
810
- T.let(
811
- :MATCH_ZIP_ONLY,
812
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch::TaggedSymbol
813
- )
814
- MISMATCH =
815
- T.let(
816
- :MISMATCH,
817
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch::TaggedSymbol
818
- )
819
- NOT_PRESENT =
820
- T.let(
821
- :NOT_PRESENT,
822
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch::TaggedSymbol
823
- )
824
-
825
- sig do
826
- override.returns(
827
- T::Array[
828
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::AddressOnFileMatch::TaggedSymbol
829
- ]
830
- )
831
- end
832
- def self.values
833
- end
834
- end
835
-
836
- class BillingAddress < Lithic::Internal::Type::BaseModel
837
- OrHash =
838
- T.type_alias do
839
- T.any(
840
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::BillingAddress,
841
- Lithic::Internal::AnyHash
842
- )
843
- end
844
-
845
- # First line of the street address provided by the cardholder.
846
- sig { returns(T.nilable(String)) }
847
- attr_accessor :address1
848
-
849
- # Second line of the street address provided by the cardholder.
850
- sig { returns(T.nilable(String)) }
851
- attr_accessor :address2
852
-
853
- # Third line of the street address provided by the cardholder.
854
- sig { returns(T.nilable(String)) }
855
- attr_accessor :address3
856
-
857
- # City of the address provided by the cardholder.
858
- sig { returns(T.nilable(String)) }
859
- attr_accessor :city
860
-
861
- # Country of the address provided by the cardholder in ISO 3166-1 alpha-3 format
862
- # (e.g. USA)
863
- sig { returns(T.nilable(String)) }
864
- attr_accessor :country
865
-
866
- # Postal code (e.g., ZIP code) of the address provided by the cardholder
867
- sig { returns(T.nilable(String)) }
868
- attr_accessor :postal_code
869
-
870
- # Object containing data on the billing address provided during the transaction.
871
- sig do
872
- params(
873
- address1: T.nilable(String),
874
- address2: T.nilable(String),
875
- address3: T.nilable(String),
876
- city: T.nilable(String),
877
- country: T.nilable(String),
878
- postal_code: T.nilable(String)
879
- ).returns(T.attached_class)
880
- end
881
- def self.new(
882
- # First line of the street address provided by the cardholder.
883
- address1: nil,
884
- # Second line of the street address provided by the cardholder.
885
- address2: nil,
886
- # Third line of the street address provided by the cardholder.
887
- address3: nil,
888
- # City of the address provided by the cardholder.
889
- city: nil,
890
- # Country of the address provided by the cardholder in ISO 3166-1 alpha-3 format
891
- # (e.g. USA)
892
- country: nil,
893
- # Postal code (e.g., ZIP code) of the address provided by the cardholder
894
- postal_code: nil
895
- )
896
- end
897
-
898
- sig do
899
- override.returns(
900
- {
901
- address1: T.nilable(String),
902
- address2: T.nilable(String),
903
- address3: T.nilable(String),
904
- city: T.nilable(String),
905
- country: T.nilable(String),
906
- postal_code: T.nilable(String)
907
- }
908
- )
909
- end
910
- def to_hash
911
- end
912
- end
913
-
914
- class ShippingAddress < Lithic::Internal::Type::BaseModel
915
- OrHash =
916
- T.type_alias do
917
- T.any(
918
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Cardholder::ShippingAddress,
919
- Lithic::Internal::AnyHash
920
- )
921
- end
922
-
923
- # First line of the street address provided by the cardholder.
924
- sig { returns(T.nilable(String)) }
925
- attr_accessor :address1
926
-
927
- # Second line of the street address provided by the cardholder.
928
- sig { returns(T.nilable(String)) }
929
- attr_accessor :address2
930
-
931
- # Third line of the street address provided by the cardholder.
932
- sig { returns(T.nilable(String)) }
933
- attr_accessor :address3
934
-
935
- # City of the address provided by the cardholder.
936
- sig { returns(T.nilable(String)) }
937
- attr_accessor :city
938
-
939
- # Country of the address provided by the cardholder in ISO 3166-1 alpha-3 format
940
- # (e.g. USA)
941
- sig { returns(T.nilable(String)) }
942
- attr_accessor :country
943
-
944
- # Postal code (e.g., ZIP code) of the address provided by the cardholder
945
- sig { returns(T.nilable(String)) }
946
- attr_accessor :postal_code
947
-
948
- # Object containing data on the shipping address provided during the transaction.
949
- sig do
950
- params(
951
- address1: T.nilable(String),
952
- address2: T.nilable(String),
953
- address3: T.nilable(String),
954
- city: T.nilable(String),
955
- country: T.nilable(String),
956
- postal_code: T.nilable(String)
957
- ).returns(T.attached_class)
958
- end
959
- def self.new(
960
- # First line of the street address provided by the cardholder.
961
- address1: nil,
962
- # Second line of the street address provided by the cardholder.
963
- address2: nil,
964
- # Third line of the street address provided by the cardholder.
965
- address3: nil,
966
- # City of the address provided by the cardholder.
967
- city: nil,
968
- # Country of the address provided by the cardholder in ISO 3166-1 alpha-3 format
969
- # (e.g. USA)
970
- country: nil,
971
- # Postal code (e.g., ZIP code) of the address provided by the cardholder
972
- postal_code: nil
973
- )
974
- end
975
-
976
- sig do
977
- override.returns(
978
- {
979
- address1: T.nilable(String),
980
- address2: T.nilable(String),
981
- address3: T.nilable(String),
982
- city: T.nilable(String),
983
- country: T.nilable(String),
984
- postal_code: T.nilable(String)
985
- }
986
- )
987
- end
988
- def to_hash
989
- end
990
- end
991
- end
992
-
993
- # Channel in which the authentication occurs. Maps to EMV 3DS field
994
- # `deviceChannel`.
995
- module Channel
996
- extend Lithic::Internal::Type::Enum
997
-
998
- TaggedSymbol =
999
- T.type_alias do
1000
- T.all(
1001
- Symbol,
1002
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Channel
1003
- )
1004
- end
1005
- OrSymbol = T.type_alias { T.any(Symbol, String) }
1006
-
1007
- APP_BASED =
1008
- T.let(
1009
- :APP_BASED,
1010
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Channel::TaggedSymbol
1011
- )
1012
- BROWSER =
1013
- T.let(
1014
- :BROWSER,
1015
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Channel::TaggedSymbol
1016
- )
1017
- THREE_DS_REQUESTOR_INITIATED =
1018
- T.let(
1019
- :THREE_DS_REQUESTOR_INITIATED,
1020
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Channel::TaggedSymbol
1021
- )
1022
-
1023
- sig do
1024
- override.returns(
1025
- T::Array[
1026
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Channel::TaggedSymbol
1027
- ]
1028
- )
1029
- end
1030
- def self.values
1031
- end
1032
- end
1033
-
1034
- class Merchant < Lithic::Internal::Type::BaseModel
1035
- OrHash =
1036
- T.type_alias do
1037
- T.any(
1038
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant,
1039
- Lithic::Internal::AnyHash
1040
- )
1041
- end
1042
-
1043
- # Object containing additional data indicating additional risk factors related to
1044
- # the e-commerce transaction.
1045
- sig do
1046
- returns(
1047
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator
1048
- )
1049
- end
1050
- attr_reader :risk_indicator
1051
-
1052
- sig do
1053
- params(
1054
- risk_indicator:
1055
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::OrHash
1056
- ).void
1057
- end
1058
- attr_writer :risk_indicator
1059
-
1060
- # Merchant identifier as assigned by the acquirer. Maps to EMV 3DS field
1061
- # `acquirerMerchantId`. May not be present for non-payment authentications.
1062
- sig { returns(T.nilable(String)) }
1063
- attr_accessor :id
1064
-
1065
- # Country code of the merchant requesting 3DS authentication. Maps to EMV 3DS
1066
- # field `merchantCountryCode`. Permitted values: ISO 3166-1 alpha-3 country code
1067
- # (e.g., USA). May not be present for non-payment authentications.
1068
- sig { returns(T.nilable(String)) }
1069
- attr_accessor :country
1070
-
1071
- # Merchant category code assigned to the merchant that describes its business
1072
- # activity type. Maps to EMV 3DS field `mcc`. May not be present for non-payment
1073
- # authentications.
1074
- sig { returns(T.nilable(String)) }
1075
- attr_accessor :mcc
1076
-
1077
- # Name of the merchant. Maps to EMV 3DS field `merchantName`. May not be present
1078
- # for non-payment authentications.
1079
- sig { returns(T.nilable(String)) }
1080
- attr_accessor :name
1081
-
1082
- # Object containing data about the merchant involved in the e-commerce
1083
- # transaction.
1084
- sig do
1085
- params(
1086
- risk_indicator:
1087
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::OrHash,
1088
- id: T.nilable(String),
1089
- country: T.nilable(String),
1090
- mcc: T.nilable(String),
1091
- name: T.nilable(String)
1092
- ).returns(T.attached_class)
1093
- end
1094
- def self.new(
1095
- # Object containing additional data indicating additional risk factors related to
1096
- # the e-commerce transaction.
1097
- risk_indicator:,
1098
- # Merchant identifier as assigned by the acquirer. Maps to EMV 3DS field
1099
- # `acquirerMerchantId`. May not be present for non-payment authentications.
1100
- id: nil,
1101
- # Country code of the merchant requesting 3DS authentication. Maps to EMV 3DS
1102
- # field `merchantCountryCode`. Permitted values: ISO 3166-1 alpha-3 country code
1103
- # (e.g., USA). May not be present for non-payment authentications.
1104
- country: nil,
1105
- # Merchant category code assigned to the merchant that describes its business
1106
- # activity type. Maps to EMV 3DS field `mcc`. May not be present for non-payment
1107
- # authentications.
1108
- mcc: nil,
1109
- # Name of the merchant. Maps to EMV 3DS field `merchantName`. May not be present
1110
- # for non-payment authentications.
1111
- name: nil
1112
- )
1113
- end
1114
-
1115
- sig do
1116
- override.returns(
1117
- {
1118
- risk_indicator:
1119
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator,
1120
- id: T.nilable(String),
1121
- country: T.nilable(String),
1122
- mcc: T.nilable(String),
1123
- name: T.nilable(String)
1124
- }
1125
- )
1126
- end
1127
- def to_hash
1128
- end
1129
-
1130
- class RiskIndicator < Lithic::Internal::Type::BaseModel
1131
- OrHash =
1132
- T.type_alias do
1133
- T.any(
1134
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator,
1135
- Lithic::Internal::AnyHash
1136
- )
1137
- end
1138
-
1139
- # In transactions with electronic delivery, email address to which merchandise is
1140
- # delivered. Maps to EMV 3DS field `deliveryEmailAddress`.
1141
- sig { returns(T.nilable(String)) }
1142
- attr_accessor :delivery_email_address
1143
-
1144
- # The delivery time frame for the merchandise. Maps to EMV 3DS field
1145
- # `deliveryTimeframe`.
1146
- sig do
1147
- returns(
1148
- T.nilable(
1149
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::DeliveryTimeFrame::TaggedSymbol
1150
- )
1151
- )
1152
- end
1153
- attr_accessor :delivery_time_frame
1154
-
1155
- # In prepaid or gift card purchase transactions, purchase amount total in major
1156
- # units (e.g., a purchase of USD $205.10 would be 205). Maps to EMV 3DS field
1157
- # `giftCardAmount`.
1158
- sig { returns(T.nilable(Integer)) }
1159
- attr_accessor :gift_card_amount
1160
-
1161
- # In prepaid or gift card purchase transactions, count of individual prepaid or
1162
- # gift cards/codes purchased. Maps to EMV 3DS field `giftCardCount`.
1163
- sig { returns(T.nilable(Integer)) }
1164
- attr_accessor :gift_card_count
1165
-
1166
- # In prepaid or gift card purchase transactions, currency code of the gift card.
1167
- # Maps to EMV 3DS field `giftCardCurr`. Permitted values: ISO 4217 three-character
1168
- # currency code (e.g., USD).
1169
- sig { returns(T.nilable(String)) }
1170
- attr_accessor :gift_card_currency
1171
-
1172
- # Indicates whether the purchase is for merchandise that is available now or at a
1173
- # future date. Maps to EMV 3DS field `preOrderPurchaseInd`.
1174
- sig do
1175
- returns(
1176
- T.nilable(
1177
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::OrderAvailability::TaggedSymbol
1178
- )
1179
- )
1180
- end
1181
- attr_accessor :order_availability
1182
-
1183
- # In pre-order purchase transactions, the expected date that the merchandise will
1184
- # be available. Maps to EMV 3DS field `preOrderDate`. Permitted values: Date
1185
- # string in the ISO 8601 format yyyy-MM-dd'T'hh:mm:ssZ
1186
- sig { returns(T.nilable(Time)) }
1187
- attr_accessor :pre_order_available_date
1188
-
1189
- # Indicates whether the cardholder is reordering previously purchased merchandise.
1190
- # Maps to EMV 3DS field `reorderItemsInd`.
1191
- sig do
1192
- returns(
1193
- T.nilable(
1194
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ReorderItems::TaggedSymbol
1195
- )
1196
- )
1197
- end
1198
- attr_accessor :reorder_items
1199
-
1200
- # Shipping method that the cardholder chose for the transaction. If purchase
1201
- # includes one or more item, this indicator is used for the physical goods; if the
1202
- # purchase only includes digital goods, this indicator is used to describe the
1203
- # most expensive item purchased. Maps to EMV 3DS field `shipIndicator`.
1204
- sig do
1205
- returns(
1206
- T.nilable(
1207
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1208
- )
1209
- )
1210
- end
1211
- attr_accessor :shipping_method
1212
-
1213
- # Object containing additional data indicating additional risk factors related to
1214
- # the e-commerce transaction.
1215
- sig do
1216
- params(
1217
- delivery_email_address: T.nilable(String),
1218
- delivery_time_frame:
1219
- T.nilable(
1220
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::DeliveryTimeFrame::OrSymbol
1221
- ),
1222
- gift_card_amount: T.nilable(Integer),
1223
- gift_card_count: T.nilable(Integer),
1224
- gift_card_currency: T.nilable(String),
1225
- order_availability:
1226
- T.nilable(
1227
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::OrderAvailability::OrSymbol
1228
- ),
1229
- pre_order_available_date: T.nilable(Time),
1230
- reorder_items:
1231
- T.nilable(
1232
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ReorderItems::OrSymbol
1233
- ),
1234
- shipping_method:
1235
- T.nilable(
1236
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::OrSymbol
1237
- )
1238
- ).returns(T.attached_class)
1239
- end
1240
- def self.new(
1241
- # In transactions with electronic delivery, email address to which merchandise is
1242
- # delivered. Maps to EMV 3DS field `deliveryEmailAddress`.
1243
- delivery_email_address: nil,
1244
- # The delivery time frame for the merchandise. Maps to EMV 3DS field
1245
- # `deliveryTimeframe`.
1246
- delivery_time_frame: nil,
1247
- # In prepaid or gift card purchase transactions, purchase amount total in major
1248
- # units (e.g., a purchase of USD $205.10 would be 205). Maps to EMV 3DS field
1249
- # `giftCardAmount`.
1250
- gift_card_amount: nil,
1251
- # In prepaid or gift card purchase transactions, count of individual prepaid or
1252
- # gift cards/codes purchased. Maps to EMV 3DS field `giftCardCount`.
1253
- gift_card_count: nil,
1254
- # In prepaid or gift card purchase transactions, currency code of the gift card.
1255
- # Maps to EMV 3DS field `giftCardCurr`. Permitted values: ISO 4217 three-character
1256
- # currency code (e.g., USD).
1257
- gift_card_currency: nil,
1258
- # Indicates whether the purchase is for merchandise that is available now or at a
1259
- # future date. Maps to EMV 3DS field `preOrderPurchaseInd`.
1260
- order_availability: nil,
1261
- # In pre-order purchase transactions, the expected date that the merchandise will
1262
- # be available. Maps to EMV 3DS field `preOrderDate`. Permitted values: Date
1263
- # string in the ISO 8601 format yyyy-MM-dd'T'hh:mm:ssZ
1264
- pre_order_available_date: nil,
1265
- # Indicates whether the cardholder is reordering previously purchased merchandise.
1266
- # Maps to EMV 3DS field `reorderItemsInd`.
1267
- reorder_items: nil,
1268
- # Shipping method that the cardholder chose for the transaction. If purchase
1269
- # includes one or more item, this indicator is used for the physical goods; if the
1270
- # purchase only includes digital goods, this indicator is used to describe the
1271
- # most expensive item purchased. Maps to EMV 3DS field `shipIndicator`.
1272
- shipping_method: nil
1273
- )
1274
- end
1275
-
1276
- sig do
1277
- override.returns(
1278
- {
1279
- delivery_email_address: T.nilable(String),
1280
- delivery_time_frame:
1281
- T.nilable(
1282
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::DeliveryTimeFrame::TaggedSymbol
1283
- ),
1284
- gift_card_amount: T.nilable(Integer),
1285
- gift_card_count: T.nilable(Integer),
1286
- gift_card_currency: T.nilable(String),
1287
- order_availability:
1288
- T.nilable(
1289
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::OrderAvailability::TaggedSymbol
1290
- ),
1291
- pre_order_available_date: T.nilable(Time),
1292
- reorder_items:
1293
- T.nilable(
1294
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ReorderItems::TaggedSymbol
1295
- ),
1296
- shipping_method:
1297
- T.nilable(
1298
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1299
- )
1300
- }
1301
- )
1302
- end
1303
- def to_hash
1304
- end
1305
-
1306
- # The delivery time frame for the merchandise. Maps to EMV 3DS field
1307
- # `deliveryTimeframe`.
1308
- module DeliveryTimeFrame
1309
- extend Lithic::Internal::Type::Enum
1310
-
1311
- TaggedSymbol =
1312
- T.type_alias do
1313
- T.all(
1314
- Symbol,
1315
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::DeliveryTimeFrame
1316
- )
1317
- end
1318
- OrSymbol = T.type_alias { T.any(Symbol, String) }
1319
-
1320
- ELECTRONIC_DELIVERY =
1321
- T.let(
1322
- :ELECTRONIC_DELIVERY,
1323
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::DeliveryTimeFrame::TaggedSymbol
1324
- )
1325
- OVERNIGHT_SHIPPING =
1326
- T.let(
1327
- :OVERNIGHT_SHIPPING,
1328
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::DeliveryTimeFrame::TaggedSymbol
1329
- )
1330
- SAME_DAY_SHIPPING =
1331
- T.let(
1332
- :SAME_DAY_SHIPPING,
1333
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::DeliveryTimeFrame::TaggedSymbol
1334
- )
1335
- TWO_DAY_OR_MORE_SHIPPING =
1336
- T.let(
1337
- :TWO_DAY_OR_MORE_SHIPPING,
1338
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::DeliveryTimeFrame::TaggedSymbol
1339
- )
1340
-
1341
- sig do
1342
- override.returns(
1343
- T::Array[
1344
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::DeliveryTimeFrame::TaggedSymbol
1345
- ]
1346
- )
1347
- end
1348
- def self.values
1349
- end
1350
- end
1351
-
1352
- # Indicates whether the purchase is for merchandise that is available now or at a
1353
- # future date. Maps to EMV 3DS field `preOrderPurchaseInd`.
1354
- module OrderAvailability
1355
- extend Lithic::Internal::Type::Enum
1356
-
1357
- TaggedSymbol =
1358
- T.type_alias do
1359
- T.all(
1360
- Symbol,
1361
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::OrderAvailability
1362
- )
1363
- end
1364
- OrSymbol = T.type_alias { T.any(Symbol, String) }
1365
-
1366
- FUTURE_AVAILABILITY =
1367
- T.let(
1368
- :FUTURE_AVAILABILITY,
1369
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::OrderAvailability::TaggedSymbol
1370
- )
1371
- MERCHANDISE_AVAILABLE =
1372
- T.let(
1373
- :MERCHANDISE_AVAILABLE,
1374
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::OrderAvailability::TaggedSymbol
1375
- )
1376
-
1377
- sig do
1378
- override.returns(
1379
- T::Array[
1380
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::OrderAvailability::TaggedSymbol
1381
- ]
1382
- )
1383
- end
1384
- def self.values
1385
- end
1386
- end
1387
-
1388
- # Indicates whether the cardholder is reordering previously purchased merchandise.
1389
- # Maps to EMV 3DS field `reorderItemsInd`.
1390
- module ReorderItems
1391
- extend Lithic::Internal::Type::Enum
1392
-
1393
- TaggedSymbol =
1394
- T.type_alias do
1395
- T.all(
1396
- Symbol,
1397
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ReorderItems
1398
- )
1399
- end
1400
- OrSymbol = T.type_alias { T.any(Symbol, String) }
1401
-
1402
- FIRST_TIME_ORDERED =
1403
- T.let(
1404
- :FIRST_TIME_ORDERED,
1405
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ReorderItems::TaggedSymbol
1406
- )
1407
- REORDERED =
1408
- T.let(
1409
- :REORDERED,
1410
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ReorderItems::TaggedSymbol
1411
- )
1412
-
1413
- sig do
1414
- override.returns(
1415
- T::Array[
1416
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ReorderItems::TaggedSymbol
1417
- ]
1418
- )
1419
- end
1420
- def self.values
1421
- end
1422
- end
1423
-
1424
- # Shipping method that the cardholder chose for the transaction. If purchase
1425
- # includes one or more item, this indicator is used for the physical goods; if the
1426
- # purchase only includes digital goods, this indicator is used to describe the
1427
- # most expensive item purchased. Maps to EMV 3DS field `shipIndicator`.
1428
- module ShippingMethod
1429
- extend Lithic::Internal::Type::Enum
1430
-
1431
- TaggedSymbol =
1432
- T.type_alias do
1433
- T.all(
1434
- Symbol,
1435
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod
1436
- )
1437
- end
1438
- OrSymbol = T.type_alias { T.any(Symbol, String) }
1439
-
1440
- DIGITAL_GOODS =
1441
- T.let(
1442
- :DIGITAL_GOODS,
1443
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1444
- )
1445
- LOCKER_DELIVERY =
1446
- T.let(
1447
- :LOCKER_DELIVERY,
1448
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1449
- )
1450
- OTHER =
1451
- T.let(
1452
- :OTHER,
1453
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1454
- )
1455
- PICK_UP_AND_GO_DELIVERY =
1456
- T.let(
1457
- :PICK_UP_AND_GO_DELIVERY,
1458
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1459
- )
1460
- SHIP_TO_BILLING_ADDRESS =
1461
- T.let(
1462
- :SHIP_TO_BILLING_ADDRESS,
1463
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1464
- )
1465
- SHIP_TO_NON_BILLING_ADDRESS =
1466
- T.let(
1467
- :SHIP_TO_NON_BILLING_ADDRESS,
1468
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1469
- )
1470
- SHIP_TO_OTHER_VERIFIED_ADDRESS =
1471
- T.let(
1472
- :SHIP_TO_OTHER_VERIFIED_ADDRESS,
1473
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1474
- )
1475
- SHIP_TO_STORE =
1476
- T.let(
1477
- :SHIP_TO_STORE,
1478
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1479
- )
1480
- TRAVEL_AND_EVENT_TICKETS =
1481
- T.let(
1482
- :TRAVEL_AND_EVENT_TICKETS,
1483
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1484
- )
1485
-
1486
- sig do
1487
- override.returns(
1488
- T::Array[
1489
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Merchant::RiskIndicator::ShippingMethod::TaggedSymbol
1490
- ]
1491
- )
1492
- end
1493
- def self.values
1494
- end
1495
- end
1496
- end
1497
- end
1498
-
1499
- # Either PAYMENT_AUTHENTICATION or NON_PAYMENT_AUTHENTICATION. For
1500
- # NON_PAYMENT_AUTHENTICATION, additional_data and transaction fields are not
1501
- # populated.
1502
- module MessageCategory
1503
- extend Lithic::Internal::Type::Enum
1504
-
1505
- TaggedSymbol =
1506
- T.type_alias do
1507
- T.all(
1508
- Symbol,
1509
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::MessageCategory
1510
- )
1511
- end
1512
- OrSymbol = T.type_alias { T.any(Symbol, String) }
1513
-
1514
- NON_PAYMENT_AUTHENTICATION =
1515
- T.let(
1516
- :NON_PAYMENT_AUTHENTICATION,
1517
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::MessageCategory::TaggedSymbol
1518
- )
1519
- PAYMENT_AUTHENTICATION =
1520
- T.let(
1521
- :PAYMENT_AUTHENTICATION,
1522
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::MessageCategory::TaggedSymbol
1523
- )
1524
-
1525
- sig do
1526
- override.returns(
1527
- T::Array[
1528
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::MessageCategory::TaggedSymbol
1529
- ]
1530
- )
1531
- end
1532
- def self.values
1533
- end
1534
- end
1535
-
1536
- # Indicates whether a challenge is requested for this transaction
1537
- #
1538
- # - `NO_PREFERENCE` - No Preference
1539
- # - `NO_CHALLENGE_REQUESTED` - No Challenge Requested
1540
- # - `CHALLENGE_PREFERENCE` - Challenge requested (3DS Requestor preference)
1541
- # - `CHALLENGE_MANDATE` - Challenge requested (Mandate)
1542
- # - `NO_CHALLENGE_RISK_ALREADY_ASSESSED` - No Challenge requested (Transactional
1543
- # risk analysis is already performed)
1544
- # - `DATA_SHARE_ONLY` - No Challenge requested (Data Share Only)
1545
- # - `OTHER` - Other indicators not captured by above. These are rarely used
1546
- module ThreeDSRequestorChallengeIndicator
1547
- extend Lithic::Internal::Type::Enum
1548
-
1549
- TaggedSymbol =
1550
- T.type_alias do
1551
- T.all(
1552
- Symbol,
1553
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator
1554
- )
1555
- end
1556
- OrSymbol = T.type_alias { T.any(Symbol, String) }
1557
-
1558
- NO_PREFERENCE =
1559
- T.let(
1560
- :NO_PREFERENCE,
1561
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::TaggedSymbol
1562
- )
1563
- NO_CHALLENGE_REQUESTED =
1564
- T.let(
1565
- :NO_CHALLENGE_REQUESTED,
1566
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::TaggedSymbol
1567
- )
1568
- CHALLENGE_PREFERENCE =
1569
- T.let(
1570
- :CHALLENGE_PREFERENCE,
1571
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::TaggedSymbol
1572
- )
1573
- CHALLENGE_MANDATE =
1574
- T.let(
1575
- :CHALLENGE_MANDATE,
1576
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::TaggedSymbol
1577
- )
1578
- NO_CHALLENGE_RISK_ALREADY_ASSESSED =
1579
- T.let(
1580
- :NO_CHALLENGE_RISK_ALREADY_ASSESSED,
1581
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::TaggedSymbol
1582
- )
1583
- DATA_SHARE_ONLY =
1584
- T.let(
1585
- :DATA_SHARE_ONLY,
1586
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::TaggedSymbol
1587
- )
1588
- OTHER =
1589
- T.let(
1590
- :OTHER,
1591
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::TaggedSymbol
1592
- )
1593
-
1594
- sig do
1595
- override.returns(
1596
- T::Array[
1597
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeDSRequestorChallengeIndicator::TaggedSymbol
1598
- ]
1599
- )
1600
- end
1601
- def self.values
1602
- end
1603
- end
1604
-
1605
- class AdditionalData < Lithic::Internal::Type::BaseModel
1606
- OrHash =
1607
- T.type_alias do
1608
- T.any(
1609
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData,
1610
- Lithic::Internal::AnyHash
1611
- )
1612
- end
1613
-
1614
- # Mastercard only: Indicates whether the network would have considered the
1615
- # authentication request to be low risk or not.
1616
- sig do
1617
- returns(
1618
- T.nilable(
1619
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData::NetworkDecision::TaggedSymbol
1620
- )
1621
- )
1622
- end
1623
- attr_accessor :network_decision
1624
-
1625
- # Mastercard only: Assessment by the network of the authentication risk level,
1626
- # with a higher value indicating a higher amount of risk. Permitted values:
1627
- # Integer between 0-950, in increments of 50.
1628
- sig { returns(T.nilable(Integer)) }
1629
- attr_accessor :network_risk_score
1630
-
1631
- # Object containing additional data about the 3DS request that is beyond the EMV
1632
- # 3DS standard spec (e.g., specific fields that only certain card networks send
1633
- # but are not required across all 3DS requests).
1634
- sig do
1635
- params(
1636
- network_decision:
1637
- T.nilable(
1638
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData::NetworkDecision::OrSymbol
1639
- ),
1640
- network_risk_score: T.nilable(Integer)
1641
- ).returns(T.attached_class)
1642
- end
1643
- def self.new(
1644
- # Mastercard only: Indicates whether the network would have considered the
1645
- # authentication request to be low risk or not.
1646
- network_decision: nil,
1647
- # Mastercard only: Assessment by the network of the authentication risk level,
1648
- # with a higher value indicating a higher amount of risk. Permitted values:
1649
- # Integer between 0-950, in increments of 50.
1650
- network_risk_score: nil
1651
- )
1652
- end
1653
-
1654
- sig do
1655
- override.returns(
1656
- {
1657
- network_decision:
1658
- T.nilable(
1659
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData::NetworkDecision::TaggedSymbol
1660
- ),
1661
- network_risk_score: T.nilable(Integer)
1662
- }
1663
- )
1664
- end
1665
- def to_hash
1666
- end
1667
-
1668
- # Mastercard only: Indicates whether the network would have considered the
1669
- # authentication request to be low risk or not.
1670
- module NetworkDecision
1671
- extend Lithic::Internal::Type::Enum
1672
-
1673
- TaggedSymbol =
1674
- T.type_alias do
1675
- T.all(
1676
- Symbol,
1677
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData::NetworkDecision
1678
- )
1679
- end
1680
- OrSymbol = T.type_alias { T.any(Symbol, String) }
1681
-
1682
- LOW_RISK =
1683
- T.let(
1684
- :LOW_RISK,
1685
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData::NetworkDecision::TaggedSymbol
1686
- )
1687
- NOT_LOW_RISK =
1688
- T.let(
1689
- :NOT_LOW_RISK,
1690
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData::NetworkDecision::TaggedSymbol
1691
- )
1692
-
1693
- sig do
1694
- override.returns(
1695
- T::Array[
1696
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AdditionalData::NetworkDecision::TaggedSymbol
1697
- ]
1698
- )
1699
- end
1700
- def self.values
1701
- end
1702
- end
1703
- end
1704
-
1705
- class App < Lithic::Internal::Type::BaseModel
1706
- OrHash =
1707
- T.type_alias do
1708
- T.any(
1709
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::App,
1710
- Lithic::Internal::AnyHash
1711
- )
1712
- end
1713
-
1714
- # Device model: e.g. "Apple iPhone 16".
1715
- sig { returns(T.nilable(String)) }
1716
- attr_accessor :device
1717
-
1718
- # Raw device information - base64-encoded JSON object. Maps to EMV 3DS field
1719
- # `deviceInfo`.
1720
- sig { returns(T.nilable(String)) }
1721
- attr_accessor :device_info
1722
-
1723
- # IP address of the device.
1724
- sig { returns(T.nilable(String)) }
1725
- attr_reader :ip
1726
-
1727
- sig { params(ip: String).void }
1728
- attr_writer :ip
1729
-
1730
- # Latitude coordinate of current device location.
1731
- sig { returns(T.nilable(Float)) }
1732
- attr_accessor :latitude
1733
-
1734
- # Device locale: e.g. "en-US".
1735
- sig { returns(T.nilable(String)) }
1736
- attr_accessor :locale
1737
-
1738
- # Longitude coordinate of current device location.
1739
- sig { returns(T.nilable(Float)) }
1740
- attr_accessor :longitude
1741
-
1742
- # Operating System: e.g. "Android 12", "iOS 17.1".
1743
- sig { returns(T.nilable(String)) }
1744
- attr_accessor :os
1745
-
1746
- # Device platform: Android, iOS, Windows, etc.
1747
- sig { returns(T.nilable(String)) }
1748
- attr_accessor :platform
1749
-
1750
- # Screen height in pixels.
1751
- sig { returns(T.nilable(Integer)) }
1752
- attr_accessor :screen_height
1753
-
1754
- # Screen width in pixels.
1755
- sig { returns(T.nilable(Integer)) }
1756
- attr_accessor :screen_width
1757
-
1758
- # Time zone offset in minutes between UTC and device local time.
1759
- sig { returns(T.nilable(String)) }
1760
- attr_accessor :time_zone
1761
-
1762
- # Object containing data about the app used in the e-commerce transaction. Present
1763
- # if the channel is 'APP_BASED'.
1764
- sig do
1765
- params(
1766
- device: T.nilable(String),
1767
- device_info: T.nilable(String),
1768
- ip: String,
1769
- latitude: T.nilable(Float),
1770
- locale: T.nilable(String),
1771
- longitude: T.nilable(Float),
1772
- os: T.nilable(String),
1773
- platform: T.nilable(String),
1774
- screen_height: T.nilable(Integer),
1775
- screen_width: T.nilable(Integer),
1776
- time_zone: T.nilable(String)
1777
- ).returns(T.attached_class)
1778
- end
1779
- def self.new(
1780
- # Device model: e.g. "Apple iPhone 16".
1781
- device: nil,
1782
- # Raw device information - base64-encoded JSON object. Maps to EMV 3DS field
1783
- # `deviceInfo`.
1784
- device_info: nil,
1785
- # IP address of the device.
1786
- ip: nil,
1787
- # Latitude coordinate of current device location.
1788
- latitude: nil,
1789
- # Device locale: e.g. "en-US".
1790
- locale: nil,
1791
- # Longitude coordinate of current device location.
1792
- longitude: nil,
1793
- # Operating System: e.g. "Android 12", "iOS 17.1".
1794
- os: nil,
1795
- # Device platform: Android, iOS, Windows, etc.
1796
- platform: nil,
1797
- # Screen height in pixels.
1798
- screen_height: nil,
1799
- # Screen width in pixels.
1800
- screen_width: nil,
1801
- # Time zone offset in minutes between UTC and device local time.
1802
- time_zone: nil
1803
- )
1804
- end
1805
-
1806
- sig do
1807
- override.returns(
1808
- {
1809
- device: T.nilable(String),
1810
- device_info: T.nilable(String),
1811
- ip: String,
1812
- latitude: T.nilable(Float),
1813
- locale: T.nilable(String),
1814
- longitude: T.nilable(Float),
1815
- os: T.nilable(String),
1816
- platform: T.nilable(String),
1817
- screen_height: T.nilable(Integer),
1818
- screen_width: T.nilable(Integer),
1819
- time_zone: T.nilable(String)
1820
- }
1821
- )
1822
- end
1823
- def to_hash
1824
- end
1825
- end
1826
-
1827
- # Type of authentication request - i.e., the type of transaction or interaction is
1828
- # causing the merchant to request an authentication. Maps to EMV 3DS field
1829
- # `threeDSRequestorAuthenticationInd`.
1830
- module AuthenticationRequestType
1831
- extend Lithic::Internal::Type::Enum
1832
-
1833
- TaggedSymbol =
1834
- T.type_alias do
1835
- T.all(
1836
- Symbol,
1837
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType
1838
- )
1839
- end
1840
- OrSymbol = T.type_alias { T.any(Symbol, String) }
1841
-
1842
- ADD_CARD =
1843
- T.let(
1844
- :ADD_CARD,
1845
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1846
- )
1847
- BILLING_AGREEMENT =
1848
- T.let(
1849
- :BILLING_AGREEMENT,
1850
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1851
- )
1852
- DELAYED_SHIPMENT =
1853
- T.let(
1854
- :DELAYED_SHIPMENT,
1855
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1856
- )
1857
- EMV_TOKEN_CARDHOLDER_VERIFICATION =
1858
- T.let(
1859
- :EMV_TOKEN_CARDHOLDER_VERIFICATION,
1860
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1861
- )
1862
- INSTALLMENT_TRANSACTION =
1863
- T.let(
1864
- :INSTALLMENT_TRANSACTION,
1865
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1866
- )
1867
- MAINTAIN_CARD =
1868
- T.let(
1869
- :MAINTAIN_CARD,
1870
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1871
- )
1872
- PAYMENT_TRANSACTION =
1873
- T.let(
1874
- :PAYMENT_TRANSACTION,
1875
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1876
- )
1877
- RECURRING_TRANSACTION =
1878
- T.let(
1879
- :RECURRING_TRANSACTION,
1880
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1881
- )
1882
- SPLIT_PAYMENT =
1883
- T.let(
1884
- :SPLIT_PAYMENT,
1885
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1886
- )
1887
- SPLIT_SHIPMENT =
1888
- T.let(
1889
- :SPLIT_SHIPMENT,
1890
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1891
- )
1892
-
1893
- sig do
1894
- override.returns(
1895
- T::Array[
1896
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::AuthenticationRequestType::TaggedSymbol
1897
- ]
1898
- )
1899
- end
1900
- def self.values
1901
- end
1902
- end
1903
-
1904
- class Browser < Lithic::Internal::Type::BaseModel
1905
- OrHash =
1906
- T.type_alias do
1907
- T.any(
1908
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Browser,
1909
- Lithic::Internal::AnyHash
1910
- )
1911
- end
1912
-
1913
- # Content of the HTTP accept headers as sent from the cardholder's browser to the
1914
- # 3DS requestor (e.g., merchant or digital wallet).
1915
- sig { returns(T.nilable(String)) }
1916
- attr_accessor :accept_header
1917
-
1918
- # IP address of the browser as returned by the HTTP headers to the 3DS requestor
1919
- # (e.g., merchant or digital wallet). Maps to EMV 3DS field `browserIP`.
1920
- sig { returns(T.nilable(String)) }
1921
- attr_accessor :ip
1922
-
1923
- # Indicates whether the cardholder's browser has the ability to execute Java. Maps
1924
- # to EMV 3DS field `browserJavaEnabled`.
1925
- sig { returns(T.nilable(T::Boolean)) }
1926
- attr_accessor :java_enabled
1927
-
1928
- # Indicates whether the cardholder's browser has the ability to execute
1929
- # JavaScript. Maps to EMV 3DS field `browserJavascriptEnabled`.
1930
- sig { returns(T.nilable(T::Boolean)) }
1931
- attr_accessor :javascript_enabled
1932
-
1933
- # Language of the cardholder's browser as defined in IETF BCP47. Maps to EMV 3DS
1934
- # field `browserLanguage`.
1935
- sig { returns(T.nilable(String)) }
1936
- attr_accessor :language
1937
-
1938
- # Time zone offset in minutes between UTC and browser local time. Maps to EMV 3DS
1939
- # field `browserTz`.
1940
- sig { returns(T.nilable(String)) }
1941
- attr_accessor :time_zone
1942
-
1943
- # Content of the HTTP user-agent header. Maps to EMV 3DS field `browserUserAgent`.
1944
- sig { returns(T.nilable(String)) }
1945
- attr_accessor :user_agent
1946
-
1947
- # Object containing data about the browser used in the e-commerce transaction.
1948
- # Present if the channel is 'BROWSER'.
1949
- sig do
1950
- params(
1951
- accept_header: T.nilable(String),
1952
- ip: T.nilable(String),
1953
- java_enabled: T.nilable(T::Boolean),
1954
- javascript_enabled: T.nilable(T::Boolean),
1955
- language: T.nilable(String),
1956
- time_zone: T.nilable(String),
1957
- user_agent: T.nilable(String)
1958
- ).returns(T.attached_class)
1959
- end
1960
- def self.new(
1961
- # Content of the HTTP accept headers as sent from the cardholder's browser to the
1962
- # 3DS requestor (e.g., merchant or digital wallet).
1963
- accept_header: nil,
1964
- # IP address of the browser as returned by the HTTP headers to the 3DS requestor
1965
- # (e.g., merchant or digital wallet). Maps to EMV 3DS field `browserIP`.
1966
- ip: nil,
1967
- # Indicates whether the cardholder's browser has the ability to execute Java. Maps
1968
- # to EMV 3DS field `browserJavaEnabled`.
1969
- java_enabled: nil,
1970
- # Indicates whether the cardholder's browser has the ability to execute
1971
- # JavaScript. Maps to EMV 3DS field `browserJavascriptEnabled`.
1972
- javascript_enabled: nil,
1973
- # Language of the cardholder's browser as defined in IETF BCP47. Maps to EMV 3DS
1974
- # field `browserLanguage`.
1975
- language: nil,
1976
- # Time zone offset in minutes between UTC and browser local time. Maps to EMV 3DS
1977
- # field `browserTz`.
1978
- time_zone: nil,
1979
- # Content of the HTTP user-agent header. Maps to EMV 3DS field `browserUserAgent`.
1980
- user_agent: nil
1981
- )
1982
- end
1983
-
1984
- sig do
1985
- override.returns(
1986
- {
1987
- accept_header: T.nilable(String),
1988
- ip: T.nilable(String),
1989
- java_enabled: T.nilable(T::Boolean),
1990
- javascript_enabled: T.nilable(T::Boolean),
1991
- language: T.nilable(String),
1992
- time_zone: T.nilable(String),
1993
- user_agent: T.nilable(String)
1994
- }
1995
- )
1996
- end
1997
- def to_hash
1998
- end
1999
- end
2000
-
2001
- class ChallengeMetadata < Lithic::Internal::Type::BaseModel
2002
- OrHash =
2003
- T.type_alias do
2004
- T.any(
2005
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata,
2006
- Lithic::Internal::AnyHash
2007
- )
2008
- end
2009
-
2010
- # The type of challenge method used for authentication.
2011
- sig do
2012
- returns(
2013
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::MethodType::TaggedSymbol
2014
- )
2015
- end
2016
- attr_accessor :method_type
2017
-
2018
- # Indicates the status of the challenge
2019
- #
2020
- # - SUCCESS - Cardholder completed the challenge successfully
2021
- # - PENDING - Challenge was issued to the cardholder and was not completed yet
2022
- # - SMS_DELIVERY_FAILED - Lithic confirmed undeliverability of the SMS to the
2023
- # provided phone number. Relevant only for SMS_OTP method
2024
- # - CARDHOLDER_TIMEOUT - Cardholder failed to complete the challenge within the
2025
- # given challenge TTL
2026
- # - CANCELED_VIA_CHALLENGE_UI - Cardholder canceled the challenge by selecting
2027
- # "cancel" on the challenge UI
2028
- # - CANCELED_OOB - Cardholder canceled the challenge out of band
2029
- # - ATTEMPTS_EXCEEDED - Cardholder failed the challenge by either entering an
2030
- # incorrect OTP more than the allowed number of times or requesting a new OTP
2031
- # more than the allowed number of times
2032
- # - ABORTED - Merchant aborted authentication after a challenge was requested
2033
- # - ERROR - The challenge failed for a reason different than those documented
2034
- sig do
2035
- returns(
2036
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2037
- )
2038
- end
2039
- attr_accessor :status
2040
-
2041
- # The phone number used for delivering the OTP. Relevant only for SMS_OTP method.
2042
- sig { returns(T.nilable(String)) }
2043
- attr_accessor :phone_number
2044
-
2045
- # Metadata about the challenge method and delivery. Only present when a challenge
2046
- # is triggered.
2047
- sig do
2048
- params(
2049
- method_type:
2050
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::MethodType::OrSymbol,
2051
- status:
2052
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::OrSymbol,
2053
- phone_number: T.nilable(String)
2054
- ).returns(T.attached_class)
2055
- end
2056
- def self.new(
2057
- # The type of challenge method used for authentication.
2058
- method_type:,
2059
- # Indicates the status of the challenge
2060
- #
2061
- # - SUCCESS - Cardholder completed the challenge successfully
2062
- # - PENDING - Challenge was issued to the cardholder and was not completed yet
2063
- # - SMS_DELIVERY_FAILED - Lithic confirmed undeliverability of the SMS to the
2064
- # provided phone number. Relevant only for SMS_OTP method
2065
- # - CARDHOLDER_TIMEOUT - Cardholder failed to complete the challenge within the
2066
- # given challenge TTL
2067
- # - CANCELED_VIA_CHALLENGE_UI - Cardholder canceled the challenge by selecting
2068
- # "cancel" on the challenge UI
2069
- # - CANCELED_OOB - Cardholder canceled the challenge out of band
2070
- # - ATTEMPTS_EXCEEDED - Cardholder failed the challenge by either entering an
2071
- # incorrect OTP more than the allowed number of times or requesting a new OTP
2072
- # more than the allowed number of times
2073
- # - ABORTED - Merchant aborted authentication after a challenge was requested
2074
- # - ERROR - The challenge failed for a reason different than those documented
2075
- status:,
2076
- # The phone number used for delivering the OTP. Relevant only for SMS_OTP method.
2077
- phone_number: nil
2078
- )
2079
- end
2080
-
2081
- sig do
2082
- override.returns(
2083
- {
2084
- method_type:
2085
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::MethodType::TaggedSymbol,
2086
- status:
2087
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol,
2088
- phone_number: T.nilable(String)
2089
- }
2090
- )
2091
- end
2092
- def to_hash
2093
- end
2094
-
2095
- # The type of challenge method used for authentication.
2096
- module MethodType
2097
- extend Lithic::Internal::Type::Enum
2098
-
2099
- TaggedSymbol =
2100
- T.type_alias do
2101
- T.all(
2102
- Symbol,
2103
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::MethodType
2104
- )
2105
- end
2106
- OrSymbol = T.type_alias { T.any(Symbol, String) }
2107
-
2108
- SMS_OTP =
2109
- T.let(
2110
- :SMS_OTP,
2111
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::MethodType::TaggedSymbol
2112
- )
2113
- OUT_OF_BAND =
2114
- T.let(
2115
- :OUT_OF_BAND,
2116
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::MethodType::TaggedSymbol
2117
- )
2118
-
2119
- sig do
2120
- override.returns(
2121
- T::Array[
2122
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::MethodType::TaggedSymbol
2123
- ]
2124
- )
2125
- end
2126
- def self.values
2127
- end
2128
- end
2129
-
2130
- # Indicates the status of the challenge
2131
- #
2132
- # - SUCCESS - Cardholder completed the challenge successfully
2133
- # - PENDING - Challenge was issued to the cardholder and was not completed yet
2134
- # - SMS_DELIVERY_FAILED - Lithic confirmed undeliverability of the SMS to the
2135
- # provided phone number. Relevant only for SMS_OTP method
2136
- # - CARDHOLDER_TIMEOUT - Cardholder failed to complete the challenge within the
2137
- # given challenge TTL
2138
- # - CANCELED_VIA_CHALLENGE_UI - Cardholder canceled the challenge by selecting
2139
- # "cancel" on the challenge UI
2140
- # - CANCELED_OOB - Cardholder canceled the challenge out of band
2141
- # - ATTEMPTS_EXCEEDED - Cardholder failed the challenge by either entering an
2142
- # incorrect OTP more than the allowed number of times or requesting a new OTP
2143
- # more than the allowed number of times
2144
- # - ABORTED - Merchant aborted authentication after a challenge was requested
2145
- # - ERROR - The challenge failed for a reason different than those documented
2146
- module Status
2147
- extend Lithic::Internal::Type::Enum
2148
-
2149
- TaggedSymbol =
2150
- T.type_alias do
2151
- T.all(
2152
- Symbol,
2153
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status
2154
- )
2155
- end
2156
- OrSymbol = T.type_alias { T.any(Symbol, String) }
2157
-
2158
- SUCCESS =
2159
- T.let(
2160
- :SUCCESS,
2161
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2162
- )
2163
- PENDING =
2164
- T.let(
2165
- :PENDING,
2166
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2167
- )
2168
- SMS_DELIVERY_FAILED =
2169
- T.let(
2170
- :SMS_DELIVERY_FAILED,
2171
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2172
- )
2173
- CARDHOLDER_TIMEOUT =
2174
- T.let(
2175
- :CARDHOLDER_TIMEOUT,
2176
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2177
- )
2178
- CANCELED_VIA_CHALLENGE_UI =
2179
- T.let(
2180
- :CANCELED_VIA_CHALLENGE_UI,
2181
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2182
- )
2183
- CANCELED_OOB =
2184
- T.let(
2185
- :CANCELED_OOB,
2186
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2187
- )
2188
- ATTEMPTS_EXCEEDED =
2189
- T.let(
2190
- :ATTEMPTS_EXCEEDED,
2191
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2192
- )
2193
- ABORTED =
2194
- T.let(
2195
- :ABORTED,
2196
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2197
- )
2198
- ERROR =
2199
- T.let(
2200
- :ERROR,
2201
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2202
- )
2203
-
2204
- sig do
2205
- override.returns(
2206
- T::Array[
2207
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeMetadata::Status::TaggedSymbol
2208
- ]
2209
- )
2210
- end
2211
- def self.values
2212
- end
2213
- end
2214
- end
2215
-
2216
- # Entity that orchestrates the challenge. This won't be set for authentications
2217
- # for which a decision has not yet been made (e.g. in-flight customer decisioning
2218
- # request).
2219
- module ChallengeOrchestratedBy
2220
- extend Lithic::Internal::Type::Enum
2221
-
2222
- TaggedSymbol =
2223
- T.type_alias do
2224
- T.all(
2225
- Symbol,
2226
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeOrchestratedBy
2227
- )
2228
- end
2229
- OrSymbol = T.type_alias { T.any(Symbol, String) }
2230
-
2231
- LITHIC =
2232
- T.let(
2233
- :LITHIC,
2234
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeOrchestratedBy::TaggedSymbol
2235
- )
2236
- CUSTOMER =
2237
- T.let(
2238
- :CUSTOMER,
2239
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeOrchestratedBy::TaggedSymbol
2240
- )
2241
- NO_CHALLENGE =
2242
- T.let(
2243
- :NO_CHALLENGE,
2244
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeOrchestratedBy::TaggedSymbol
2245
- )
2246
-
2247
- sig do
2248
- override.returns(
2249
- T::Array[
2250
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ChallengeOrchestratedBy::TaggedSymbol
2251
- ]
2252
- )
2253
- end
2254
- def self.values
2255
- end
2256
- end
2257
-
2258
- # Entity that made the authentication decision. This won't be set for
2259
- # authentications for which a decision has not yet been made (e.g. in-flight
2260
- # customer decisioning request).
2261
- module DecisionMadeBy
2262
- extend Lithic::Internal::Type::Enum
2263
-
2264
- TaggedSymbol =
2265
- T.type_alias do
2266
- T.all(
2267
- Symbol,
2268
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy
2269
- )
2270
- end
2271
- OrSymbol = T.type_alias { T.any(Symbol, String) }
2272
-
2273
- LITHIC_RULES =
2274
- T.let(
2275
- :LITHIC_RULES,
2276
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy::TaggedSymbol
2277
- )
2278
- LITHIC_DEFAULT =
2279
- T.let(
2280
- :LITHIC_DEFAULT,
2281
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy::TaggedSymbol
2282
- )
2283
- CUSTOMER_RULES =
2284
- T.let(
2285
- :CUSTOMER_RULES,
2286
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy::TaggedSymbol
2287
- )
2288
- CUSTOMER_ENDPOINT =
2289
- T.let(
2290
- :CUSTOMER_ENDPOINT,
2291
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy::TaggedSymbol
2292
- )
2293
- NETWORK =
2294
- T.let(
2295
- :NETWORK,
2296
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy::TaggedSymbol
2297
- )
2298
- UNKNOWN =
2299
- T.let(
2300
- :UNKNOWN,
2301
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy::TaggedSymbol
2302
- )
2303
-
2304
- sig do
2305
- override.returns(
2306
- T::Array[
2307
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::DecisionMadeBy::TaggedSymbol
2308
- ]
2309
- )
2310
- end
2311
- def self.values
2312
- end
2313
- end
2314
-
2315
- # Type of 3DS Requestor Initiated (3RI) request — i.e., a 3DS authentication that
2316
- # takes place at the initiation of the merchant rather than the cardholder. The
2317
- # most common example of this is where a merchant is authenticating before billing
2318
- # for a recurring transaction such as a pay TV subscription or a utility bill.
2319
- # Maps to EMV 3DS field `threeRIInd`.
2320
- module ThreeRiRequestType
2321
- extend Lithic::Internal::Type::Enum
2322
-
2323
- TaggedSymbol =
2324
- T.type_alias do
2325
- T.all(
2326
- Symbol,
2327
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType
2328
- )
2329
- end
2330
- OrSymbol = T.type_alias { T.any(Symbol, String) }
2331
-
2332
- ACCOUNT_VERIFICATION =
2333
- T.let(
2334
- :ACCOUNT_VERIFICATION,
2335
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2336
- )
2337
- ADD_CARD =
2338
- T.let(
2339
- :ADD_CARD,
2340
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2341
- )
2342
- BILLING_AGREEMENT =
2343
- T.let(
2344
- :BILLING_AGREEMENT,
2345
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2346
- )
2347
- CARD_SECURITY_CODE_STATUS_CHECK =
2348
- T.let(
2349
- :CARD_SECURITY_CODE_STATUS_CHECK,
2350
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2351
- )
2352
- DELAYED_SHIPMENT =
2353
- T.let(
2354
- :DELAYED_SHIPMENT,
2355
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2356
- )
2357
- DEVICE_BINDING_STATUS_CHECK =
2358
- T.let(
2359
- :DEVICE_BINDING_STATUS_CHECK,
2360
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2361
- )
2362
- INSTALLMENT_TRANSACTION =
2363
- T.let(
2364
- :INSTALLMENT_TRANSACTION,
2365
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2366
- )
2367
- MAIL_ORDER =
2368
- T.let(
2369
- :MAIL_ORDER,
2370
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2371
- )
2372
- MAINTAIN_CARD_INFO =
2373
- T.let(
2374
- :MAINTAIN_CARD_INFO,
2375
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2376
- )
2377
- OTHER_PAYMENT =
2378
- T.let(
2379
- :OTHER_PAYMENT,
2380
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2381
- )
2382
- RECURRING_TRANSACTION =
2383
- T.let(
2384
- :RECURRING_TRANSACTION,
2385
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2386
- )
2387
- SPLIT_PAYMENT =
2388
- T.let(
2389
- :SPLIT_PAYMENT,
2390
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2391
- )
2392
- SPLIT_SHIPMENT =
2393
- T.let(
2394
- :SPLIT_SHIPMENT,
2395
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2396
- )
2397
- TELEPHONE_ORDER =
2398
- T.let(
2399
- :TELEPHONE_ORDER,
2400
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2401
- )
2402
- TOP_UP =
2403
- T.let(
2404
- :TOP_UP,
2405
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2406
- )
2407
- TRUST_LIST_STATUS_CHECK =
2408
- T.let(
2409
- :TRUST_LIST_STATUS_CHECK,
2410
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2411
- )
2412
-
2413
- sig do
2414
- override.returns(
2415
- T::Array[
2416
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::ThreeRiRequestType::TaggedSymbol
2417
- ]
2418
- )
2419
- end
2420
- def self.values
2421
- end
2422
- end
2423
-
2424
- class Transaction < Lithic::Internal::Type::BaseModel
2425
- OrHash =
2426
- T.type_alias do
2427
- T.any(
2428
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction,
2429
- Lithic::Internal::AnyHash
2430
- )
2431
- end
2432
-
2433
- # Amount of the purchase in minor units of currency with all punctuation removed.
2434
- # Maps to EMV 3DS field `purchaseAmount`.
2435
- sig { returns(Float) }
2436
- attr_accessor :amount
2437
-
2438
- # Approximate amount of the purchase in minor units of cardholder currency.
2439
- # Derived from `amount` using a daily conversion rate.
2440
- sig { returns(T.nilable(Float)) }
2441
- attr_accessor :cardholder_amount
2442
-
2443
- # Currency of the purchase. Maps to EMV 3DS field `purchaseCurrency`. Permitted
2444
- # values: ISO 4217 three-character currency code (e.g., USD).
2445
- sig { returns(String) }
2446
- attr_accessor :currency
2447
-
2448
- # Minor units of currency, as specified in ISO 4217 currency exponent. Maps to EMV
2449
- # 3DS field `purchaseExponent`.
2450
- sig { returns(Float) }
2451
- attr_accessor :currency_exponent
2452
-
2453
- # Date and time when the authentication was generated by the merchant/acquirer's
2454
- # 3DS server. Maps to EMV 3DS field `purchaseDate`. Permitted values: Date string
2455
- # in the ISO 8601 format yyyy-MM-dd'T'hh:mm:ssZ.
2456
- sig { returns(Time) }
2457
- attr_accessor :date_time
2458
-
2459
- # Type of the transaction for which a 3DS authentication request is occurring.
2460
- # Maps to EMV 3DS field `transType`.
2461
- sig do
2462
- returns(
2463
- T.nilable(
2464
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::Type::TaggedSymbol
2465
- )
2466
- )
2467
- end
2468
- attr_accessor :type
2469
-
2470
- # Object containing data about the e-commerce transaction for which the merchant
2471
- # is requesting authentication.
2472
- sig do
2473
- params(
2474
- amount: Float,
2475
- cardholder_amount: T.nilable(Float),
2476
- currency: String,
2477
- currency_exponent: Float,
2478
- date_time: Time,
2479
- type:
2480
- T.nilable(
2481
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::Type::OrSymbol
2482
- )
2483
- ).returns(T.attached_class)
2484
- end
2485
- def self.new(
2486
- # Amount of the purchase in minor units of currency with all punctuation removed.
2487
- # Maps to EMV 3DS field `purchaseAmount`.
2488
- amount:,
2489
- # Approximate amount of the purchase in minor units of cardholder currency.
2490
- # Derived from `amount` using a daily conversion rate.
2491
- cardholder_amount:,
2492
- # Currency of the purchase. Maps to EMV 3DS field `purchaseCurrency`. Permitted
2493
- # values: ISO 4217 three-character currency code (e.g., USD).
2494
- currency:,
2495
- # Minor units of currency, as specified in ISO 4217 currency exponent. Maps to EMV
2496
- # 3DS field `purchaseExponent`.
2497
- currency_exponent:,
2498
- # Date and time when the authentication was generated by the merchant/acquirer's
2499
- # 3DS server. Maps to EMV 3DS field `purchaseDate`. Permitted values: Date string
2500
- # in the ISO 8601 format yyyy-MM-dd'T'hh:mm:ssZ.
2501
- date_time:,
2502
- # Type of the transaction for which a 3DS authentication request is occurring.
2503
- # Maps to EMV 3DS field `transType`.
2504
- type:
2505
- )
2506
- end
2507
-
2508
- sig do
2509
- override.returns(
2510
- {
2511
- amount: Float,
2512
- cardholder_amount: T.nilable(Float),
2513
- currency: String,
2514
- currency_exponent: Float,
2515
- date_time: Time,
2516
- type:
2517
- T.nilable(
2518
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::Type::TaggedSymbol
2519
- )
2520
- }
2521
- )
2522
- end
2523
- def to_hash
2524
- end
2525
-
2526
- # Type of the transaction for which a 3DS authentication request is occurring.
2527
- # Maps to EMV 3DS field `transType`.
2528
- module Type
2529
- extend Lithic::Internal::Type::Enum
2530
-
2531
- TaggedSymbol =
2532
- T.type_alias do
2533
- T.all(
2534
- Symbol,
2535
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::Type
2536
- )
2537
- end
2538
- OrSymbol = T.type_alias { T.any(Symbol, String) }
2539
-
2540
- ACCOUNT_FUNDING =
2541
- T.let(
2542
- :ACCOUNT_FUNDING,
2543
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::Type::TaggedSymbol
2544
- )
2545
- CHECK_ACCEPTANCE =
2546
- T.let(
2547
- :CHECK_ACCEPTANCE,
2548
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::Type::TaggedSymbol
2549
- )
2550
- GOODS_SERVICE_PURCHASE =
2551
- T.let(
2552
- :GOODS_SERVICE_PURCHASE,
2553
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::Type::TaggedSymbol
2554
- )
2555
- PREPAID_ACTIVATION_AND_LOAD =
2556
- T.let(
2557
- :PREPAID_ACTIVATION_AND_LOAD,
2558
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::Type::TaggedSymbol
2559
- )
2560
- QUASI_CASH_TRANSACTION =
2561
- T.let(
2562
- :QUASI_CASH_TRANSACTION,
2563
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::Type::TaggedSymbol
2564
- )
2565
-
2566
- sig do
2567
- override.returns(
2568
- T::Array[
2569
- Lithic::Models::ThreeDS::AuthenticationRetrieveResponse::Transaction::Type::TaggedSymbol
2570
- ]
2571
- )
2572
- end
2573
- def self.values
2574
- end
2575
- end
2576
- end
2577
- end
2578
- end
2579
- end
2580
- end