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
@@ -26,7 +26,7 @@ module Lithic
26
26
  #
27
27
  # @param business_account_tokens [Array<String>] Business Account tokens to which the Auth Rule applies.
28
28
  #
29
- # @param event_stream [Symbol, Lithic::Models::AuthRules::V2CreateParams::EventStream] The event stream during which the rule will be evaluated.
29
+ # @param event_stream [Symbol, Lithic::Models::AuthRules::EventStream] The event stream during which the rule will be evaluated.
30
30
  #
31
31
  # @param name [String, nil] Auth Rule Name
32
32
  #
@@ -34,7 +34,7 @@ module Lithic
34
34
  #
35
35
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
36
36
  #
37
- # @return [Lithic::Models::AuthRules::V2CreateResponse]
37
+ # @return [Lithic::Models::AuthRules::AuthRule]
38
38
  #
39
39
  # @see Lithic::Models::AuthRules::V2CreateParams
40
40
  def create(params)
@@ -43,7 +43,7 @@ module Lithic
43
43
  method: :post,
44
44
  path: "v2/auth_rules",
45
45
  body: parsed,
46
- model: Lithic::Models::AuthRules::V2CreateResponse,
46
+ model: Lithic::AuthRules::AuthRule,
47
47
  options: options
48
48
  )
49
49
  end
@@ -55,14 +55,14 @@ module Lithic
55
55
  # @param auth_rule_token [String]
56
56
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
57
57
  #
58
- # @return [Lithic::Models::AuthRules::V2RetrieveResponse]
58
+ # @return [Lithic::Models::AuthRules::AuthRule]
59
59
  #
60
60
  # @see Lithic::Models::AuthRules::V2RetrieveParams
61
61
  def retrieve(auth_rule_token, params = {})
62
62
  @client.request(
63
63
  method: :get,
64
64
  path: ["v2/auth_rules/%1$s", auth_rule_token],
65
- model: Lithic::Models::AuthRules::V2RetrieveResponse,
65
+ model: Lithic::AuthRules::AuthRule,
66
66
  options: params[:request_options]
67
67
  )
68
68
  end
@@ -96,7 +96,7 @@ module Lithic
96
96
  #
97
97
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
98
98
  #
99
- # @return [Lithic::Models::AuthRules::V2UpdateResponse]
99
+ # @return [Lithic::Models::AuthRules::AuthRule]
100
100
  #
101
101
  # @see Lithic::Models::AuthRules::V2UpdateParams
102
102
  def update(auth_rule_token, params = {})
@@ -105,7 +105,7 @@ module Lithic
105
105
  method: :patch,
106
106
  path: ["v2/auth_rules/%1$s", auth_rule_token],
107
107
  body: parsed,
108
- model: Lithic::Models::AuthRules::V2UpdateResponse,
108
+ model: Lithic::AuthRules::AuthRule,
109
109
  options: options
110
110
  )
111
111
  end
@@ -115,7 +115,7 @@ module Lithic
115
115
  #
116
116
  # Lists V2 Auth rules
117
117
  #
118
- # @overload list(account_token: nil, business_account_token: nil, card_token: nil, ending_before: nil, event_stream: nil, page_size: nil, scope: nil, starting_after: nil, request_options: {})
118
+ # @overload list(account_token: nil, business_account_token: nil, card_token: nil, ending_before: nil, event_stream: nil, event_streams: nil, page_size: nil, scope: nil, starting_after: nil, request_options: {})
119
119
  #
120
120
  # @param account_token [String] Only return Auth Rules that are bound to the provided account token.
121
121
  #
@@ -125,7 +125,9 @@ module Lithic
125
125
  #
126
126
  # @param ending_before [String] A cursor representing an item's token before which a page of results should end.
127
127
  #
128
- # @param event_stream [Symbol, Lithic::Models::AuthRules::V2ListParams::EventStream] Only return Auth rules that are executed during the provided event stream.
128
+ # @param event_stream [Symbol, Lithic::Models::AuthRules::EventStream] Deprecated: Use event_streams instead. Only return Auth rules that are executed
129
+ #
130
+ # @param event_streams [Array<Symbol, Lithic::Models::AuthRules::EventStream>] Only return Auth rules that are executed during any of the provided event stream
129
131
  #
130
132
  # @param page_size [Integer] Page size (for pagination).
131
133
  #
@@ -135,7 +137,7 @@ module Lithic
135
137
  #
136
138
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
137
139
  #
138
- # @return [Lithic::Internal::CursorPage<Lithic::Models::AuthRules::V2ListResponse>]
140
+ # @return [Lithic::Internal::CursorPage<Lithic::Models::AuthRules::AuthRule>]
139
141
  #
140
142
  # @see Lithic::Models::AuthRules::V2ListParams
141
143
  def list(params = {})
@@ -145,7 +147,7 @@ module Lithic
145
147
  path: "v2/auth_rules",
146
148
  query: parsed,
147
149
  page: Lithic::Internal::CursorPage,
148
- model: Lithic::Models::AuthRules::V2ListResponse,
150
+ model: Lithic::AuthRules::AuthRule,
149
151
  options: options
150
152
  )
151
153
  end
@@ -182,7 +184,7 @@ module Lithic
182
184
  #
183
185
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
184
186
  #
185
- # @return [Lithic::Models::AuthRules::V2DraftResponse]
187
+ # @return [Lithic::Models::AuthRules::AuthRule]
186
188
  #
187
189
  # @see Lithic::Models::AuthRules::V2DraftParams
188
190
  def draft(auth_rule_token, params = {})
@@ -191,7 +193,7 @@ module Lithic
191
193
  method: :post,
192
194
  path: ["v2/auth_rules/%1$s/draft", auth_rule_token],
193
195
  body: parsed,
194
- model: Lithic::Models::AuthRules::V2DraftResponse,
196
+ model: Lithic::AuthRules::AuthRule,
195
197
  options: options
196
198
  )
197
199
  end
@@ -204,14 +206,14 @@ module Lithic
204
206
  # @param auth_rule_token [String]
205
207
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
206
208
  #
207
- # @return [Lithic::Models::AuthRules::V2PromoteResponse]
209
+ # @return [Lithic::Models::AuthRules::AuthRule]
208
210
  #
209
211
  # @see Lithic::Models::AuthRules::V2PromoteParams
210
212
  def promote(auth_rule_token, params = {})
211
213
  @client.request(
212
214
  method: :post,
213
215
  path: ["v2/auth_rules/%1$s/promote", auth_rule_token],
214
- model: Lithic::Models::AuthRules::V2PromoteResponse,
216
+ model: Lithic::AuthRules::AuthRule,
215
217
  options: params[:request_options]
216
218
  )
217
219
  end
@@ -0,0 +1,127 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Resources
5
+ class CardBulkOrders
6
+ # Some parameter documentations has been truncated, see
7
+ # {Lithic::Models::CardBulkOrderCreateParams} for more details.
8
+ #
9
+ # Create a new bulk order for physical card shipments **[BETA]**. Cards can be
10
+ # added to the order via the POST /v1/cards endpoint by specifying the
11
+ # bulk_order_token. Lock the order via PATCH
12
+ # /v1/card_bulk_orders/{bulk_order_token} to prepare for shipment. Please work
13
+ # with your Customer Success Manager and card personalization bureau to ensure
14
+ # bulk shipping is supported for your program.
15
+ #
16
+ # @overload create(customer_product_id:, shipping_address:, shipping_method:, request_options: {})
17
+ #
18
+ # @param customer_product_id [String] Customer-specified product configuration for physical card manufacturing. This m
19
+ #
20
+ # @param shipping_address [Object] Shipping address for all cards in this bulk order
21
+ #
22
+ # @param shipping_method [Symbol, Lithic::Models::CardBulkOrderCreateParams::ShippingMethod] Shipping method for all cards in this bulk order
23
+ #
24
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
25
+ #
26
+ # @return [Lithic::Models::CardBulkOrder]
27
+ #
28
+ # @see Lithic::Models::CardBulkOrderCreateParams
29
+ def create(params)
30
+ parsed, options = Lithic::CardBulkOrderCreateParams.dump_request(params)
31
+ @client.request(
32
+ method: :post,
33
+ path: "v1/card_bulk_orders",
34
+ body: parsed,
35
+ model: Lithic::CardBulkOrder,
36
+ options: options
37
+ )
38
+ end
39
+
40
+ # Retrieve a specific bulk order by token **[BETA]**
41
+ #
42
+ # @overload retrieve(bulk_order_token, request_options: {})
43
+ #
44
+ # @param bulk_order_token [String] Globally unique identifier for the bulk order
45
+ #
46
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
47
+ #
48
+ # @return [Lithic::Models::CardBulkOrder]
49
+ #
50
+ # @see Lithic::Models::CardBulkOrderRetrieveParams
51
+ def retrieve(bulk_order_token, params = {})
52
+ @client.request(
53
+ method: :get,
54
+ path: ["v1/card_bulk_orders/%1$s", bulk_order_token],
55
+ model: Lithic::CardBulkOrder,
56
+ options: params[:request_options]
57
+ )
58
+ end
59
+
60
+ # Update a bulk order **[BETA]**. Primarily used to lock the order, preventing
61
+ # additional cards from being added
62
+ #
63
+ # @overload update(bulk_order_token, status:, request_options: {})
64
+ #
65
+ # @param bulk_order_token [String] Globally unique identifier for the bulk order
66
+ #
67
+ # @param status [Symbol, Lithic::Models::CardBulkOrderUpdateParams::Status] Status to update the bulk order to. Use LOCKED to finalize the order
68
+ #
69
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
70
+ #
71
+ # @return [Lithic::Models::CardBulkOrder]
72
+ #
73
+ # @see Lithic::Models::CardBulkOrderUpdateParams
74
+ def update(bulk_order_token, params)
75
+ parsed, options = Lithic::CardBulkOrderUpdateParams.dump_request(params)
76
+ @client.request(
77
+ method: :patch,
78
+ path: ["v1/card_bulk_orders/%1$s", bulk_order_token],
79
+ body: parsed,
80
+ model: Lithic::CardBulkOrder,
81
+ options: options
82
+ )
83
+ end
84
+
85
+ # Some parameter documentations has been truncated, see
86
+ # {Lithic::Models::CardBulkOrderListParams} for more details.
87
+ #
88
+ # List bulk orders for physical card shipments **[BETA]**
89
+ #
90
+ # @overload list(begin_: nil, end_: nil, ending_before: nil, page_size: nil, starting_after: nil, request_options: {})
91
+ #
92
+ # @param begin_ [Time] Date string in RFC 3339 format. Only entries created after the specified time wi
93
+ #
94
+ # @param end_ [Time] Date string in RFC 3339 format. Only entries created before the specified time w
95
+ #
96
+ # @param ending_before [String] A cursor representing an item's token before which a page of results should end.
97
+ #
98
+ # @param page_size [Integer] Page size (for pagination).
99
+ #
100
+ # @param starting_after [String] A cursor representing an item's token after which a page of results should begin
101
+ #
102
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
103
+ #
104
+ # @return [Lithic::Internal::CursorPage<Lithic::Models::CardBulkOrder>]
105
+ #
106
+ # @see Lithic::Models::CardBulkOrderListParams
107
+ def list(params = {})
108
+ parsed, options = Lithic::CardBulkOrderListParams.dump_request(params)
109
+ @client.request(
110
+ method: :get,
111
+ path: "v1/card_bulk_orders",
112
+ query: parsed.transform_keys(begin_: "begin", end_: "end"),
113
+ page: Lithic::Internal::CursorPage,
114
+ model: Lithic::CardBulkOrder,
115
+ options: options
116
+ )
117
+ end
118
+
119
+ # @api private
120
+ #
121
+ # @param client [Lithic::Client]
122
+ def initialize(client:)
123
+ @client = client
124
+ end
125
+ end
126
+ end
127
+ end
@@ -19,7 +19,7 @@ module Lithic
19
19
  #
20
20
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
21
21
  #
22
- # @return [Lithic::Internal::SinglePage<Lithic::Models::Cards::BalanceListResponse>]
22
+ # @return [Lithic::Internal::SinglePage<Lithic::Models::FinancialAccountBalance>]
23
23
  #
24
24
  # @see Lithic::Models::Cards::BalanceListParams
25
25
  def list(card_token, params = {})
@@ -29,7 +29,7 @@ module Lithic
29
29
  path: ["v1/cards/%1$s/balances", card_token],
30
30
  query: parsed,
31
31
  page: Lithic::Internal::SinglePage,
32
- model: Lithic::Models::Cards::BalanceListResponse,
32
+ model: Lithic::FinancialAccountBalance,
33
33
  options: options
34
34
  )
35
35
  end
@@ -18,12 +18,14 @@ module Lithic
18
18
  # Create a new virtual or physical card. Parameters `shipping_address` and
19
19
  # `product_id` only apply to physical cards.
20
20
  #
21
- # @overload create(type:, account_token: nil, card_program_token: nil, carrier: nil, digital_card_art_token: nil, exp_month: nil, exp_year: nil, memo: nil, pin: nil, product_id: nil, replacement_account_token: nil, replacement_comment: nil, replacement_for: nil, replacement_substatus: nil, shipping_address: nil, shipping_method: nil, spend_limit: nil, spend_limit_duration: nil, state: nil, request_options: {})
21
+ # @overload create(type:, account_token: nil, bulk_order_token: nil, card_program_token: nil, carrier: nil, digital_card_art_token: nil, exp_month: nil, exp_year: nil, memo: nil, pin: nil, product_id: nil, replacement_account_token: nil, replacement_comment: nil, replacement_for: nil, replacement_substatus: nil, shipping_address: nil, shipping_method: nil, spend_limit: nil, spend_limit_duration: nil, state: nil, request_options: {})
22
22
  #
23
23
  # @param type [Symbol, Lithic::Models::CardCreateParams::Type] Card types:
24
24
  #
25
25
  # @param account_token [String] Globally unique identifier for the account that the card will be associated with
26
26
  #
27
+ # @param bulk_order_token [String] Globally unique identifier for an existing bulk order to associate this card wit
28
+ #
27
29
  # @param card_program_token [String] For card programs with more than one BIN range. This must be configured with Lit
28
30
  #
29
31
  # @param carrier [Lithic::Models::Carrier]
@@ -441,6 +443,9 @@ module Lithic
441
443
  )
442
444
  end
443
445
 
446
+ # Some parameter documentations has been truncated, see
447
+ # {Lithic::Models::CardWebProvisionParams} for more details.
448
+ #
444
449
  # Allow your cardholders to directly add payment cards to the device's digital
445
450
  # wallet from a browser on the web. Currently only suported for Apple Pay.
446
451
  #
@@ -448,15 +453,21 @@ module Lithic
448
453
  # [Contact Us](https://lithic.com/contact) or your Customer Success representative
449
454
  # for more information.
450
455
  #
451
- # @overload web_provision(card_token, digital_wallet: nil, request_options: {})
456
+ # @overload web_provision(card_token, client_device_id: nil, client_wallet_account_id: nil, digital_wallet: nil, server_session_id: nil, request_options: {})
452
457
  #
453
458
  # @param card_token [String] The unique token of the card to add to the device's digital wallet.
454
459
  #
460
+ # @param client_device_id [String] Only applicable if `digital_wallet` is GOOGLE_PAY. Google Pay Web Push Provision
461
+ #
462
+ # @param client_wallet_account_id [String] Only applicable if `digital_wallet` is GOOGLE_PAY. Google Pay Web Push Provision
463
+ #
455
464
  # @param digital_wallet [Symbol, Lithic::Models::CardWebProvisionParams::DigitalWallet] Name of digital wallet provider.
456
465
  #
466
+ # @param server_session_id [String] Only applicable if `digital_wallet` is GOOGLE_PAY. Google Pay Web Push Provision
467
+ #
457
468
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
458
469
  #
459
- # @return [Lithic::Models::CardWebProvisionResponse]
470
+ # @return [Lithic::Models::CardWebProvisionResponse::AppleWebPushProvisioningResponse, Lithic::Models::CardWebProvisionResponse::GoogleWebPushProvisioningResponse]
460
471
  #
461
472
  # @see Lithic::Models::CardWebProvisionParams
462
473
  def web_provision(card_token, params = {})
@@ -197,7 +197,7 @@ module Lithic
197
197
  # @param financial_account_token [String]
198
198
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
199
199
  #
200
- # @return [Lithic::Models::ExternalBankAccountRetryPrenoteResponse]
200
+ # @return [Lithic::Models::ExternalBankAccount]
201
201
  #
202
202
  # @see Lithic::Models::ExternalBankAccountRetryPrenoteParams
203
203
  def retry_prenote(external_bank_account_token, params = {})
@@ -206,7 +206,7 @@ module Lithic
206
206
  method: :post,
207
207
  path: ["v1/external_bank_accounts/%1$s/retry_prenote", external_bank_account_token],
208
208
  body: parsed,
209
- model: Lithic::Models::ExternalBankAccountRetryPrenoteResponse,
209
+ model: Lithic::ExternalBankAccount,
210
210
  options: options
211
211
  )
212
212
  end
@@ -218,14 +218,14 @@ module Lithic
218
218
  # @param external_bank_account_token [String]
219
219
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
220
220
  #
221
- # @return [Lithic::Models::ExternalBankAccountUnpauseResponse]
221
+ # @return [Lithic::Models::ExternalBankAccount]
222
222
  #
223
223
  # @see Lithic::Models::ExternalBankAccountUnpauseParams
224
224
  def unpause(external_bank_account_token, params = {})
225
225
  @client.request(
226
226
  method: :post,
227
227
  path: ["v1/external_bank_accounts/%1$s/unpause", external_bank_account_token],
228
- model: Lithic::Models::ExternalBankAccountUnpauseResponse,
228
+ model: Lithic::ExternalBankAccount,
229
229
  options: params[:request_options]
230
230
  )
231
231
  end
@@ -19,7 +19,7 @@ module Lithic
19
19
  #
20
20
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
21
21
  #
22
- # @return [Lithic::Internal::SinglePage<Lithic::Models::FinancialAccounts::BalanceListResponse>]
22
+ # @return [Lithic::Internal::SinglePage<Lithic::Models::FinancialAccountBalance>]
23
23
  #
24
24
  # @see Lithic::Models::FinancialAccounts::BalanceListParams
25
25
  def list(financial_account_token, params = {})
@@ -29,7 +29,7 @@ module Lithic
29
29
  path: ["v1/financial_accounts/%1$s/balances", financial_account_token],
30
30
  query: parsed,
31
31
  page: Lithic::Internal::SinglePage,
32
- model: Lithic::Models::FinancialAccounts::BalanceListResponse,
32
+ model: Lithic::FinancialAccountBalance,
33
33
  options: options
34
34
  )
35
35
  end
@@ -11,14 +11,14 @@ module Lithic
11
11
  #
12
12
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
13
13
  #
14
- # @return [Lithic::Models::FundingEventRetrieveResponse]
14
+ # @return [Lithic::Models::FundingEvent]
15
15
  #
16
16
  # @see Lithic::Models::FundingEventRetrieveParams
17
17
  def retrieve(funding_event_token, params = {})
18
18
  @client.request(
19
19
  method: :get,
20
20
  path: ["v1/funding_events/%1$s", funding_event_token],
21
- model: Lithic::Models::FundingEventRetrieveResponse,
21
+ model: Lithic::FundingEvent,
22
22
  options: params[:request_options]
23
23
  )
24
24
  end
@@ -38,7 +38,7 @@ module Lithic
38
38
  #
39
39
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
40
40
  #
41
- # @return [Lithic::Internal::CursorPage<Lithic::Models::FundingEventListResponse>]
41
+ # @return [Lithic::Internal::CursorPage<Lithic::Models::FundingEvent>]
42
42
  #
43
43
  # @see Lithic::Models::FundingEventListParams
44
44
  def list(params = {})
@@ -48,7 +48,7 @@ module Lithic
48
48
  path: "v1/funding_events",
49
49
  query: parsed,
50
50
  page: Lithic::Internal::CursorPage,
51
- model: Lithic::Models::FundingEventListResponse,
51
+ model: Lithic::FundingEvent,
52
52
  options: options
53
53
  )
54
54
  end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Resources
5
+ class InternalTransaction
6
+ # @api private
7
+ #
8
+ # @param client [Lithic::Client]
9
+ def initialize(client:)
10
+ @client = client
11
+ end
12
+ end
13
+ end
14
+ end
@@ -13,14 +13,14 @@ module Lithic
13
13
  #
14
14
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
15
15
  #
16
- # @return [Lithic::Models::Reports::Settlement::NetworkTotalRetrieveResponse]
16
+ # @return [Lithic::Models::NetworkTotal]
17
17
  #
18
18
  # @see Lithic::Models::Reports::Settlement::NetworkTotalRetrieveParams
19
19
  def retrieve(token, params = {})
20
20
  @client.request(
21
21
  method: :get,
22
22
  path: ["v1/reports/settlement/network_totals/%1$s", token],
23
- model: Lithic::Models::Reports::Settlement::NetworkTotalRetrieveResponse,
23
+ model: Lithic::NetworkTotal,
24
24
  options: params[:request_options]
25
25
  )
26
26
  end
@@ -56,7 +56,7 @@ module Lithic
56
56
  #
57
57
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
58
58
  #
59
- # @return [Lithic::Internal::CursorPage<Lithic::Models::Reports::Settlement::NetworkTotalListResponse>]
59
+ # @return [Lithic::Internal::CursorPage<Lithic::Models::NetworkTotal>]
60
60
  #
61
61
  # @see Lithic::Models::Reports::Settlement::NetworkTotalListParams
62
62
  def list(params = {})
@@ -66,7 +66,7 @@ module Lithic
66
66
  path: "v1/reports/settlement/network_totals",
67
67
  query: parsed.transform_keys(begin_: "begin", end_: "end"),
68
68
  page: Lithic::Internal::CursorPage,
69
- model: Lithic::Models::Reports::Settlement::NetworkTotalListResponse,
69
+ model: Lithic::NetworkTotal,
70
70
  options: options
71
71
  )
72
72
  end
@@ -12,14 +12,14 @@ module Lithic
12
12
  #
13
13
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
14
14
  #
15
- # @return [Lithic::Models::ThreeDS::AuthenticationRetrieveResponse]
15
+ # @return [Lithic::Models::ThreeDSAuthentication]
16
16
  #
17
17
  # @see Lithic::Models::ThreeDS::AuthenticationRetrieveParams
18
18
  def retrieve(three_ds_authentication_token, params = {})
19
19
  @client.request(
20
20
  method: :get,
21
21
  path: ["v1/three_ds_authentication/%1$s", three_ds_authentication_token],
22
- model: Lithic::Models::ThreeDS::AuthenticationRetrieveResponse,
22
+ model: Lithic::ThreeDSAuthentication,
23
23
  options: params[:request_options]
24
24
  )
25
25
  end
@@ -207,7 +207,7 @@ module Lithic
207
207
  #
208
208
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
209
209
  #
210
- # @return [Lithic::Models::TokenizationSimulateResponse]
210
+ # @return [Lithic::Models::Tokenization]
211
211
  #
212
212
  # @see Lithic::Models::TokenizationSimulateParams
213
213
  def simulate(params)
@@ -216,7 +216,7 @@ module Lithic
216
216
  method: :post,
217
217
  path: "v1/simulate/tokenizations",
218
218
  body: parsed,
219
- model: Lithic::Models::TokenizationSimulateResponse,
219
+ model: Lithic::Tokenization,
220
220
  options: options
221
221
  )
222
222
  end
@@ -267,7 +267,7 @@ module Lithic
267
267
  #
268
268
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
269
269
  #
270
- # @return [Lithic::Models::TokenizationUpdateDigitalCardArtResponse]
270
+ # @return [Lithic::Models::Tokenization]
271
271
  #
272
272
  # @see Lithic::Models::TokenizationUpdateDigitalCardArtParams
273
273
  def update_digital_card_art(tokenization_token, params = {})
@@ -276,7 +276,7 @@ module Lithic
276
276
  method: :post,
277
277
  path: ["v1/tokenizations/%1$s/update_digital_card_art", tokenization_token],
278
278
  body: parsed,
279
- model: Lithic::Models::TokenizationUpdateDigitalCardArtResponse,
279
+ model: Lithic::Tokenization,
280
280
  options: options
281
281
  )
282
282
  end
@@ -0,0 +1,87 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Resources
5
+ class Webhooks
6
+ # Parses and verifies a webhook payload. Verifies the signature before parsing.
7
+ #
8
+ # @param payload [String] The raw webhook payload as a string
9
+ # @param headers [Hash{String => String}] The webhook request headers
10
+ # @param secret [String, nil] The webhook secret. If not provided, reads from LITHIC_WEBHOOK_SECRET environment variable.
11
+ #
12
+ # @return [Lithic::Models::AccountHolderCreatedWebhookEvent, Lithic::Models::ParsedWebhookEvent::KYBPayload, Lithic::Models::ParsedWebhookEvent::KYCPayload, Lithic::Models::ParsedWebhookEvent::LegacyPayload, Lithic::Models::AccountHolderVerificationWebhookEvent, Lithic::Models::AccountHolderDocumentUpdatedWebhookEvent, Lithic::Models::AsaRequestWebhookEvent, Lithic::Models::TokenizationDecisioningRequestWebhookEvent, Lithic::Models::AuthRulesBacktestReportCreatedWebhookEvent, Lithic::Models::BalanceUpdatedWebhookEvent, Lithic::Models::BookTransferTransactionCreatedWebhookEvent, Lithic::Models::BookTransferTransactionUpdatedWebhookEvent, Lithic::Models::CardCreatedWebhookEvent, Lithic::Models::CardConvertedWebhookEvent, Lithic::Models::CardRenewedWebhookEvent, Lithic::Models::CardReissuedWebhookEvent, Lithic::Models::CardShippedWebhookEvent, Lithic::Models::CardTransactionUpdatedWebhookEvent, Lithic::Models::CardTransactionEnhancedDataCreatedWebhookEvent, Lithic::Models::CardTransactionEnhancedDataUpdatedWebhookEvent, Lithic::Models::DigitalWalletTokenizationApprovalRequestWebhookEvent, Lithic::Models::DigitalWalletTokenizationResultWebhookEvent, Lithic::Models::DigitalWalletTokenizationTwoFactorAuthenticationCodeWebhookEvent, Lithic::Models::DigitalWalletTokenizationTwoFactorAuthenticationCodeSentWebhookEvent, Lithic::Models::DigitalWalletTokenizationUpdatedWebhookEvent, Lithic::Models::DisputeUpdatedWebhookEvent, Lithic::Models::DisputeEvidenceUploadFailedWebhookEvent, Lithic::Models::ExternalBankAccountCreatedWebhookEvent, Lithic::Models::ExternalBankAccountUpdatedWebhookEvent, Lithic::Models::ExternalPaymentCreatedWebhookEvent, Lithic::Models::ExternalPaymentUpdatedWebhookEvent, Lithic::Models::FinancialAccountCreatedWebhookEvent, Lithic::Models::FinancialAccountUpdatedWebhookEvent, Lithic::Models::FundingEventCreatedWebhookEvent, Lithic::Models::LoanTapeCreatedWebhookEvent, Lithic::Models::LoanTapeUpdatedWebhookEvent, Lithic::Models::ManagementOperationCreatedWebhookEvent, Lithic::Models::ManagementOperationUpdatedWebhookEvent, Lithic::Models::InternalTransactionCreatedWebhookEvent, Lithic::Models::InternalTransactionUpdatedWebhookEvent, Lithic::Models::NetworkTotalCreatedWebhookEvent, Lithic::Models::NetworkTotalUpdatedWebhookEvent, Lithic::Models::PaymentTransactionCreatedWebhookEvent, Lithic::Models::PaymentTransactionUpdatedWebhookEvent, Lithic::Models::SettlementReportUpdatedWebhookEvent, Lithic::Models::StatementsCreatedWebhookEvent, Lithic::Models::ThreeDSAuthenticationCreatedWebhookEvent, Lithic::Models::ThreeDSAuthenticationUpdatedWebhookEvent, Lithic::Models::ThreeDSAuthenticationChallengeWebhookEvent, Lithic::Models::TokenizationApprovalRequestWebhookEvent, Lithic::Models::TokenizationResultWebhookEvent, Lithic::Models::TokenizationTwoFactorAuthenticationCodeWebhookEvent, Lithic::Models::TokenizationTwoFactorAuthenticationCodeSentWebhookEvent, Lithic::Models::TokenizationUpdatedWebhookEvent, Lithic::Models::ThreeDSAuthentication, Lithic::Models::DisputeTransactionCreatedWebhookEvent, Lithic::Models::DisputeTransactionUpdatedWebhookEvent]
13
+ #
14
+ # @raise [ArgumentError] if secret is not provided and LITHIC_WEBHOOK_SECRET env var is not set
15
+ # @raise [Lithic::Errors::MissingDependencyError] if the standardwebhooks gem is not installed
16
+ # @raise [StandardWebhooks::WebhookVerificationError] if the signature is invalid
17
+ #
18
+ # @example
19
+ # event = lithic.webhooks.parse(
20
+ # request.body.read,
21
+ # headers: request.headers
22
+ # )
23
+ def parse(payload, headers:, secret: nil)
24
+ verified_json = verify_signature(payload: payload, headers: headers, secret: secret)
25
+ Lithic::Internal::Type::Converter.coerce(Lithic::Models::ParsedWebhookEvent, verified_json)
26
+ end
27
+
28
+ # Parses a webhook payload without verifying the signature.
29
+ #
30
+ # WARNING: This method does not verify the webhook signature. Use only for testing or when
31
+ # signature verification is not required.
32
+ #
33
+ # @param payload [String] The raw webhook payload as a string
34
+ #
35
+ # @return [Lithic::Models::AccountHolderCreatedWebhookEvent, Lithic::Models::ParsedWebhookEvent::KYBPayload, Lithic::Models::ParsedWebhookEvent::KYCPayload, Lithic::Models::ParsedWebhookEvent::LegacyPayload, Lithic::Models::AccountHolderVerificationWebhookEvent, Lithic::Models::AccountHolderDocumentUpdatedWebhookEvent, Lithic::Models::AsaRequestWebhookEvent, Lithic::Models::TokenizationDecisioningRequestWebhookEvent, Lithic::Models::AuthRulesBacktestReportCreatedWebhookEvent, Lithic::Models::BalanceUpdatedWebhookEvent, Lithic::Models::BookTransferTransactionCreatedWebhookEvent, Lithic::Models::BookTransferTransactionUpdatedWebhookEvent, Lithic::Models::CardCreatedWebhookEvent, Lithic::Models::CardConvertedWebhookEvent, Lithic::Models::CardRenewedWebhookEvent, Lithic::Models::CardReissuedWebhookEvent, Lithic::Models::CardShippedWebhookEvent, Lithic::Models::CardTransactionUpdatedWebhookEvent, Lithic::Models::CardTransactionEnhancedDataCreatedWebhookEvent, Lithic::Models::CardTransactionEnhancedDataUpdatedWebhookEvent, Lithic::Models::DigitalWalletTokenizationApprovalRequestWebhookEvent, Lithic::Models::DigitalWalletTokenizationResultWebhookEvent, Lithic::Models::DigitalWalletTokenizationTwoFactorAuthenticationCodeWebhookEvent, Lithic::Models::DigitalWalletTokenizationTwoFactorAuthenticationCodeSentWebhookEvent, Lithic::Models::DigitalWalletTokenizationUpdatedWebhookEvent, Lithic::Models::DisputeUpdatedWebhookEvent, Lithic::Models::DisputeEvidenceUploadFailedWebhookEvent, Lithic::Models::ExternalBankAccountCreatedWebhookEvent, Lithic::Models::ExternalBankAccountUpdatedWebhookEvent, Lithic::Models::ExternalPaymentCreatedWebhookEvent, Lithic::Models::ExternalPaymentUpdatedWebhookEvent, Lithic::Models::FinancialAccountCreatedWebhookEvent, Lithic::Models::FinancialAccountUpdatedWebhookEvent, Lithic::Models::FundingEventCreatedWebhookEvent, Lithic::Models::LoanTapeCreatedWebhookEvent, Lithic::Models::LoanTapeUpdatedWebhookEvent, Lithic::Models::ManagementOperationCreatedWebhookEvent, Lithic::Models::ManagementOperationUpdatedWebhookEvent, Lithic::Models::InternalTransactionCreatedWebhookEvent, Lithic::Models::InternalTransactionUpdatedWebhookEvent, Lithic::Models::NetworkTotalCreatedWebhookEvent, Lithic::Models::NetworkTotalUpdatedWebhookEvent, Lithic::Models::PaymentTransactionCreatedWebhookEvent, Lithic::Models::PaymentTransactionUpdatedWebhookEvent, Lithic::Models::SettlementReportUpdatedWebhookEvent, Lithic::Models::StatementsCreatedWebhookEvent, Lithic::Models::ThreeDSAuthenticationCreatedWebhookEvent, Lithic::Models::ThreeDSAuthenticationUpdatedWebhookEvent, Lithic::Models::ThreeDSAuthenticationChallengeWebhookEvent, Lithic::Models::TokenizationApprovalRequestWebhookEvent, Lithic::Models::TokenizationResultWebhookEvent, Lithic::Models::TokenizationTwoFactorAuthenticationCodeWebhookEvent, Lithic::Models::TokenizationTwoFactorAuthenticationCodeSentWebhookEvent, Lithic::Models::TokenizationUpdatedWebhookEvent, Lithic::Models::ThreeDSAuthentication, Lithic::Models::DisputeTransactionCreatedWebhookEvent, Lithic::Models::DisputeTransactionUpdatedWebhookEvent]
36
+ def parse_unsafe(payload)
37
+ parsed = JSON.parse(payload, symbolize_names: true)
38
+ Lithic::Internal::Type::Converter.coerce(Lithic::Models::ParsedWebhookEvent, parsed)
39
+ end
40
+
41
+ # Verifies the signature of a webhook payload using the Standard Webhooks specification.
42
+ #
43
+ # @param payload [String] The raw webhook payload as a string
44
+ # @param headers [Hash{String => String}] The webhook request headers
45
+ # @param secret [String, nil] The webhook secret (with or without the "whsec_" prefix).
46
+ # If not provided, reads from LITHIC_WEBHOOK_SECRET environment variable.
47
+ #
48
+ # @return [Hash] The parsed webhook payload with symbolized keys
49
+ #
50
+ # @raise [ArgumentError] if secret is not provided and LITHIC_WEBHOOK_SECRET env var is not set
51
+ # @raise [Lithic::Errors::MissingDependencyError] if the standardwebhooks gem is not installed
52
+ # @raise [StandardWebhooks::WebhookVerificationError] if the signature is invalid
53
+ #
54
+ # @example
55
+ # json = lithic.webhooks.verify_signature(
56
+ # payload: request.body.read,
57
+ # headers: request.headers
58
+ # )
59
+ # puts json[:event_type]
60
+ def verify_signature(payload:, headers:, secret: nil)
61
+ secret ||= ENV["LITHIC_WEBHOOK_SECRET"]
62
+ if secret.nil? || secret.empty?
63
+ raise ArgumentError, "Webhook secret must be provided or set in LITHIC_WEBHOOK_SECRET environment variable"
64
+ end
65
+
66
+ begin
67
+ require("standardwebhooks")
68
+ rescue LoadError
69
+ raise Lithic::Errors::MissingDependencyError.new(
70
+ gem_name: "standardwebhooks",
71
+ feature: "webhook signature verification"
72
+ )
73
+ end
74
+
75
+ wh = StandardWebhooks::Webhook.new(secret)
76
+ wh.verify(payload, headers)
77
+ end
78
+
79
+ # @api private
80
+ #
81
+ # @param client [Lithic::Client]
82
+ def initialize(client:)
83
+ @client = client
84
+ end
85
+ end
86
+ end
87
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lithic
4
- VERSION = "0.1.0.pre.alpha.56"
4
+ VERSION = "0.2.0"
5
5
  end