lithic 0.14.0 → 0.16.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 (279) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +52 -0
  3. data/README.md +1 -1
  4. data/lib/lithic/client.rb +8 -0
  5. data/lib/lithic/internal/transport/base_client.rb +5 -0
  6. data/lib/lithic/models/account.rb +2 -2
  7. data/lib/lithic/models/account_holder_simulate_enrollment_review_response.rb +4 -4
  8. data/lib/lithic/models/account_holders/account_holder_entity.rb +3 -16
  9. data/lib/lithic/models/account_holders/entity_create_params.rb +3 -14
  10. data/lib/lithic/models/auth_rules/auth_rule.rb +14 -8
  11. data/lib/lithic/models/auth_rules/auth_rule_condition.rb +2 -2
  12. data/lib/lithic/models/auth_rules/auth_rule_version.rb +5 -3
  13. data/lib/lithic/models/auth_rules/conditional_3ds_action_parameters.rb +8 -6
  14. data/lib/lithic/models/auth_rules/conditional_ach_action_parameters.rb +4 -4
  15. data/lib/lithic/models/auth_rules/conditional_authorization_action_parameters.rb +52 -34
  16. data/lib/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rb +531 -0
  17. data/lib/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rb +213 -23
  18. data/lib/lithic/models/auth_rules/conditional_tokenization_action_parameters.rb +6 -6
  19. data/lib/lithic/models/auth_rules/conditional_value.rb +3 -2
  20. data/lib/lithic/models/auth_rules/rule_feature.rb +29 -6
  21. data/lib/lithic/models/auth_rules/typescript_code_parameters.rb +2 -2
  22. data/lib/lithic/models/auth_rules/v2_create_params.rb +27 -15
  23. data/lib/lithic/models/auth_rules/v2_draft_params.rb +5 -3
  24. data/lib/lithic/models/balance.rb +8 -6
  25. data/lib/lithic/models/card.rb +1 -1
  26. data/lib/lithic/models/card_authorization.rb +1372 -0
  27. data/lib/lithic/models/card_authorization_approval_request_webhook_event.rb +3 -1253
  28. data/lib/lithic/models/card_authorization_challenge_response_params.rb +40 -0
  29. data/lib/lithic/models/card_authorization_challenge_response_webhook_event.rb +1 -0
  30. data/lib/lithic/models/card_authorization_challenge_webhook_event.rb +67 -0
  31. data/lib/lithic/models/card_program.rb +2 -2
  32. data/lib/lithic/models/event.rb +13 -4
  33. data/lib/lithic/models/event_list_params.rb +7 -2
  34. data/lib/lithic/models/event_subscription.rb +7 -2
  35. data/lib/lithic/models/events/subscription_create_params.rb +7 -2
  36. data/lib/lithic/models/events/subscription_send_simulated_example_params.rb +1 -0
  37. data/lib/lithic/models/events/subscription_update_params.rb +7 -2
  38. data/lib/lithic/models/external_bank_account.rb +1 -1
  39. data/lib/lithic/models/external_bank_account_pause_params.rb +20 -0
  40. data/lib/lithic/models/financial_accounts/loan_tape.rb +9 -1
  41. data/lib/lithic/models/financial_accounts/statement.rb +4 -4
  42. data/lib/lithic/models/financial_accounts/statements/statement_line_items.rb +3 -2
  43. data/lib/lithic/models/financial_event.rb +1 -0
  44. data/lib/lithic/models/kyb_business_entity.rb +2 -2
  45. data/lib/lithic/models/parsed_webhook_event.rb +4 -1
  46. data/lib/lithic/models/payment.rb +13 -1
  47. data/lib/lithic/models/settlement_detail.rb +14 -14
  48. data/lib/lithic/models/statement_totals.rb +6 -6
  49. data/lib/lithic/models/tokenization_decline_reason.rb +1 -0
  50. data/lib/lithic/models/transaction.rb +2 -2
  51. data/lib/lithic/models/transaction_monitoring/case_activity_entry.rb +74 -0
  52. data/lib/lithic/models/transaction_monitoring/case_activity_type.rb +35 -0
  53. data/lib/lithic/models/transaction_monitoring/case_card.rb +37 -0
  54. data/lib/lithic/models/transaction_monitoring/case_entity.rb +50 -0
  55. data/lib/lithic/models/transaction_monitoring/case_list_activity_params.rb +53 -0
  56. data/lib/lithic/models/transaction_monitoring/case_list_params.rb +136 -0
  57. data/lib/lithic/models/transaction_monitoring/case_list_transactions_params.rb +53 -0
  58. data/lib/lithic/models/transaction_monitoring/case_priority.rb +20 -0
  59. data/lib/lithic/models/transaction_monitoring/case_retrieve_cards_params.rb +22 -0
  60. data/lib/lithic/models/transaction_monitoring/case_retrieve_cards_response.rb +11 -0
  61. data/lib/lithic/models/transaction_monitoring/case_retrieve_params.rb +22 -0
  62. data/lib/lithic/models/transaction_monitoring/case_sort_order.rb +29 -0
  63. data/lib/lithic/models/transaction_monitoring/case_status.rb +31 -0
  64. data/lib/lithic/models/transaction_monitoring/case_transaction.rb +53 -0
  65. data/lib/lithic/models/transaction_monitoring/case_update_params.rb +116 -0
  66. data/lib/lithic/models/transaction_monitoring/cases/case_file.rb +141 -0
  67. data/lib/lithic/models/transaction_monitoring/cases/comment_create_params.rb +47 -0
  68. data/lib/lithic/models/transaction_monitoring/cases/comment_delete_params.rb +30 -0
  69. data/lib/lithic/models/transaction_monitoring/cases/comment_update_params.rb +54 -0
  70. data/lib/lithic/models/transaction_monitoring/cases/file_create_params.rb +33 -0
  71. data/lib/lithic/models/transaction_monitoring/cases/file_delete_params.rb +30 -0
  72. data/lib/lithic/models/transaction_monitoring/cases/file_list_params.rb +54 -0
  73. data/lib/lithic/models/transaction_monitoring/cases/file_retrieve_params.rb +30 -0
  74. data/lib/lithic/models/transaction_monitoring/cases/file_status.rb +26 -0
  75. data/lib/lithic/models/transaction_monitoring/cases/upload_constraints.rb +31 -0
  76. data/lib/lithic/models/transaction_monitoring/entity_type.rb +18 -0
  77. data/lib/lithic/models/transaction_monitoring/monitoring_case.rb +168 -0
  78. data/lib/lithic/models/transaction_monitoring/queue.rb +120 -0
  79. data/lib/lithic/models/transaction_monitoring/queue_create_params.rb +32 -0
  80. data/lib/lithic/models/transaction_monitoring/queue_delete_params.rb +22 -0
  81. data/lib/lithic/models/transaction_monitoring/queue_list_params.rb +45 -0
  82. data/lib/lithic/models/transaction_monitoring/queue_retrieve_params.rb +22 -0
  83. data/lib/lithic/models/transaction_monitoring/queue_update_params.rb +39 -0
  84. data/lib/lithic/models/transaction_monitoring/resolution_outcome.rb +28 -0
  85. data/lib/lithic/models/transaction_route_params.rb +29 -0
  86. data/lib/lithic/models/transfer_limits_response.rb +12 -12
  87. data/lib/lithic/models.rb +12 -0
  88. data/lib/lithic/resources/account_holders/entities.rb +1 -1
  89. data/lib/lithic/resources/auth_rules/v2.rb +1 -1
  90. data/lib/lithic/resources/card_authorizations.rb +45 -0
  91. data/lib/lithic/resources/cards.rb +2 -2
  92. data/lib/lithic/resources/external_bank_accounts.rb +19 -0
  93. data/lib/lithic/resources/transaction_monitoring/cases/comments.rb +111 -0
  94. data/lib/lithic/resources/transaction_monitoring/cases/files.rb +131 -0
  95. data/lib/lithic/resources/transaction_monitoring/cases.rb +228 -0
  96. data/lib/lithic/resources/transaction_monitoring/queues.rb +137 -0
  97. data/lib/lithic/resources/transaction_monitoring.rb +22 -0
  98. data/lib/lithic/resources/transactions.rb +25 -0
  99. data/lib/lithic/resources/webhooks.rb +1 -1
  100. data/lib/lithic/version.rb +1 -1
  101. data/lib/lithic.rb +46 -0
  102. data/rbi/lithic/client.rbi +6 -0
  103. data/rbi/lithic/models/account.rbi +3 -3
  104. data/rbi/lithic/models/account_holder_simulate_enrollment_review_response.rbi +6 -12
  105. data/rbi/lithic/models/account_holders/account_holder_entity.rbi +3 -40
  106. data/rbi/lithic/models/account_holders/entity_create_params.rbi +3 -37
  107. data/rbi/lithic/models/auth_rules/auth_rule.rbi +14 -7
  108. data/rbi/lithic/models/auth_rules/auth_rule_version.rbi +4 -2
  109. data/rbi/lithic/models/auth_rules/conditional_3ds_action_parameters.rbi +9 -6
  110. data/rbi/lithic/models/auth_rules/conditional_ach_action_parameters.rbi +3 -3
  111. data/rbi/lithic/models/auth_rules/conditional_authorization_action_parameters.rbi +75 -48
  112. data/rbi/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rbi +1147 -0
  113. data/rbi/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rbi +419 -30
  114. data/rbi/lithic/models/auth_rules/conditional_tokenization_action_parameters.rbi +6 -6
  115. data/rbi/lithic/models/auth_rules/conditional_value.rbi +1 -1
  116. data/rbi/lithic/models/auth_rules/rule_feature.rbi +41 -5
  117. data/rbi/lithic/models/auth_rules/typescript_code_parameters.rbi +3 -0
  118. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +42 -21
  119. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +8 -4
  120. data/rbi/lithic/models/balance.rbi +12 -6
  121. data/rbi/lithic/models/card.rbi +2 -2
  122. data/rbi/lithic/models/card_authorization.rbi +2769 -0
  123. data/rbi/lithic/models/card_authorization_approval_request_webhook_event.rbi +5 -2758
  124. data/rbi/lithic/models/card_authorization_challenge_response_params.rbi +93 -0
  125. data/rbi/lithic/models/card_authorization_challenge_response_webhook_event.rbi +5 -0
  126. data/rbi/lithic/models/card_authorization_challenge_webhook_event.rbi +119 -0
  127. data/rbi/lithic/models/card_program.rbi +3 -6
  128. data/rbi/lithic/models/event.rbi +23 -6
  129. data/rbi/lithic/models/event_list_params.rbi +11 -2
  130. data/rbi/lithic/models/event_subscription.rbi +11 -2
  131. data/rbi/lithic/models/events/subscription_create_params.rbi +11 -2
  132. data/rbi/lithic/models/events/subscription_send_simulated_example_params.rbi +5 -0
  133. data/rbi/lithic/models/events/subscription_update_params.rbi +11 -2
  134. data/rbi/lithic/models/external_bank_account_pause_params.rbi +41 -0
  135. data/rbi/lithic/models/financial_accounts/loan_tape.rbi +8 -0
  136. data/rbi/lithic/models/financial_accounts/statement.rbi +6 -12
  137. data/rbi/lithic/models/financial_accounts/statements/statement_line_items.rbi +8 -6
  138. data/rbi/lithic/models/financial_event.rbi +2 -0
  139. data/rbi/lithic/models/kyb_business_entity.rbi +3 -6
  140. data/rbi/lithic/models/parsed_webhook_event.rbi +1 -0
  141. data/rbi/lithic/models/payment.rbi +13 -0
  142. data/rbi/lithic/models/settlement_detail.rbi +15 -15
  143. data/rbi/lithic/models/statement_totals.rbi +9 -18
  144. data/rbi/lithic/models/tokenization_decline_reason.rbi +2 -0
  145. data/rbi/lithic/models/transaction.rbi +3 -3
  146. data/rbi/lithic/models/transaction_monitoring/case_activity_entry.rbi +107 -0
  147. data/rbi/lithic/models/transaction_monitoring/case_activity_type.rbi +84 -0
  148. data/rbi/lithic/models/transaction_monitoring/case_card.rbi +60 -0
  149. data/rbi/lithic/models/transaction_monitoring/case_entity.rbi +101 -0
  150. data/rbi/lithic/models/transaction_monitoring/case_list_activity_params.rbi +83 -0
  151. data/rbi/lithic/models/transaction_monitoring/case_list_params.rbi +220 -0
  152. data/rbi/lithic/models/transaction_monitoring/case_list_transactions_params.rbi +83 -0
  153. data/rbi/lithic/models/transaction_monitoring/case_priority.rbi +44 -0
  154. data/rbi/lithic/models/transaction_monitoring/case_retrieve_cards_params.rbi +40 -0
  155. data/rbi/lithic/models/transaction_monitoring/case_retrieve_cards_response.rbi +15 -0
  156. data/rbi/lithic/models/transaction_monitoring/case_retrieve_params.rbi +40 -0
  157. data/rbi/lithic/models/transaction_monitoring/case_sort_order.rbi +64 -0
  158. data/rbi/lithic/models/transaction_monitoring/case_status.rbi +63 -0
  159. data/rbi/lithic/models/transaction_monitoring/case_transaction.rbi +75 -0
  160. data/rbi/lithic/models/transaction_monitoring/case_update_params.rbi +201 -0
  161. data/rbi/lithic/models/transaction_monitoring/cases/case_file.rbi +188 -0
  162. data/rbi/lithic/models/transaction_monitoring/cases/comment_create_params.rbi +71 -0
  163. data/rbi/lithic/models/transaction_monitoring/cases/comment_delete_params.rbi +50 -0
  164. data/rbi/lithic/models/transaction_monitoring/cases/comment_update_params.rbi +77 -0
  165. data/rbi/lithic/models/transaction_monitoring/cases/file_create_params.rbi +56 -0
  166. data/rbi/lithic/models/transaction_monitoring/cases/file_delete_params.rbi +50 -0
  167. data/rbi/lithic/models/transaction_monitoring/cases/file_list_params.rbi +85 -0
  168. data/rbi/lithic/models/transaction_monitoring/cases/file_retrieve_params.rbi +50 -0
  169. data/rbi/lithic/models/transaction_monitoring/cases/file_status.rbi +51 -0
  170. data/rbi/lithic/models/transaction_monitoring/cases/upload_constraints.rbi +51 -0
  171. data/rbi/lithic/models/transaction_monitoring/entity_type.rbi +37 -0
  172. data/rbi/lithic/models/transaction_monitoring/monitoring_case.rbi +226 -0
  173. data/rbi/lithic/models/transaction_monitoring/queue.rbi +189 -0
  174. data/rbi/lithic/models/transaction_monitoring/queue_create_params.rbi +56 -0
  175. data/rbi/lithic/models/transaction_monitoring/queue_delete_params.rbi +40 -0
  176. data/rbi/lithic/models/transaction_monitoring/queue_list_params.rbi +77 -0
  177. data/rbi/lithic/models/transaction_monitoring/queue_retrieve_params.rbi +40 -0
  178. data/rbi/lithic/models/transaction_monitoring/queue_update_params.rbi +65 -0
  179. data/rbi/lithic/models/transaction_monitoring/resolution_outcome.rbi +61 -0
  180. data/rbi/lithic/models/transaction_route_params.rbi +49 -0
  181. data/rbi/lithic/models/transfer_limits_response.rbi +48 -48
  182. data/rbi/lithic/models.rbi +15 -0
  183. data/rbi/lithic/resources/account_holders/entities.rbi +1 -1
  184. data/rbi/lithic/resources/auth_rules/v2.rbi +2 -1
  185. data/rbi/lithic/resources/card_authorizations.rbi +35 -0
  186. data/rbi/lithic/resources/cards.rbi +2 -2
  187. data/rbi/lithic/resources/external_bank_accounts.rbi +10 -0
  188. data/rbi/lithic/resources/transaction_monitoring/cases/comments.rbi +81 -0
  189. data/rbi/lithic/resources/transaction_monitoring/cases/files.rbi +98 -0
  190. data/rbi/lithic/resources/transaction_monitoring/cases.rbi +230 -0
  191. data/rbi/lithic/resources/transaction_monitoring/queues.rbi +103 -0
  192. data/rbi/lithic/resources/transaction_monitoring.rbi +18 -0
  193. data/rbi/lithic/resources/transactions.rbi +18 -0
  194. data/rbi/lithic/resources/webhooks.rbi +4 -1
  195. data/sig/lithic/client.rbs +4 -0
  196. data/sig/lithic/models/account_holder_simulate_enrollment_review_response.rbs +8 -12
  197. data/sig/lithic/models/account_holders/account_holder_entity.rbs +4 -15
  198. data/sig/lithic/models/account_holders/entity_create_params.rbs +4 -15
  199. data/sig/lithic/models/auth_rules/auth_rule.rbs +2 -0
  200. data/sig/lithic/models/auth_rules/auth_rule_version.rbs +1 -0
  201. data/sig/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rbs +276 -0
  202. data/sig/lithic/models/auth_rules/conditional_card_transaction_update_action_parameters.rbs +73 -3
  203. data/sig/lithic/models/auth_rules/conditional_value.rbs +1 -1
  204. data/sig/lithic/models/auth_rules/rule_feature.rbs +16 -0
  205. data/sig/lithic/models/auth_rules/v2_create_params.rbs +3 -0
  206. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +1 -0
  207. data/sig/lithic/models/balance.rbs +17 -9
  208. data/sig/lithic/models/card_authorization.rbs +1112 -0
  209. data/sig/lithic/models/card_authorization_approval_request_webhook_event.rbs +7 -1013
  210. data/sig/lithic/models/card_authorization_challenge_response_params.rbs +42 -0
  211. data/sig/lithic/models/card_authorization_challenge_response_webhook_event.rbs +2 -1
  212. data/sig/lithic/models/card_authorization_challenge_webhook_event.rbs +53 -0
  213. data/sig/lithic/models/card_program.rbs +4 -6
  214. data/sig/lithic/models/event.rbs +2 -0
  215. data/sig/lithic/models/event_list_params.rbs +2 -0
  216. data/sig/lithic/models/event_subscription.rbs +2 -0
  217. data/sig/lithic/models/events/subscription_create_params.rbs +2 -0
  218. data/sig/lithic/models/events/subscription_send_simulated_example_params.rbs +2 -0
  219. data/sig/lithic/models/events/subscription_update_params.rbs +2 -0
  220. data/sig/lithic/models/external_bank_account_pause_params.rbs +24 -0
  221. data/sig/lithic/models/financial_accounts/loan_tape.rbs +5 -0
  222. data/sig/lithic/models/financial_accounts/statement.rbs +8 -12
  223. data/sig/lithic/models/financial_accounts/statements/statement_line_items.rbs +6 -6
  224. data/sig/lithic/models/financial_event.rbs +2 -0
  225. data/sig/lithic/models/kyb_business_entity.rbs +4 -6
  226. data/sig/lithic/models/parsed_webhook_event.rbs +1 -0
  227. data/sig/lithic/models/payment.rbs +7 -0
  228. data/sig/lithic/models/settlement_detail.rbs +18 -18
  229. data/sig/lithic/models/statement_totals.rbs +12 -18
  230. data/sig/lithic/models/tokenization_decline_reason.rbs +2 -0
  231. data/sig/lithic/models/transaction.rbs +4 -8
  232. data/sig/lithic/models/transaction_monitoring/case_activity_entry.rbs +47 -0
  233. data/sig/lithic/models/transaction_monitoring/case_activity_type.rbs +32 -0
  234. data/sig/lithic/models/transaction_monitoring/case_card.rbs +32 -0
  235. data/sig/lithic/models/transaction_monitoring/case_entity.rbs +38 -0
  236. data/sig/lithic/models/transaction_monitoring/case_list_activity_params.rbs +49 -0
  237. data/sig/lithic/models/transaction_monitoring/case_list_params.rbs +125 -0
  238. data/sig/lithic/models/transaction_monitoring/case_list_transactions_params.rbs +49 -0
  239. data/sig/lithic/models/transaction_monitoring/case_priority.rbs +18 -0
  240. data/sig/lithic/models/transaction_monitoring/case_retrieve_cards_params.rbs +25 -0
  241. data/sig/lithic/models/transaction_monitoring/case_retrieve_cards_response.rbs +10 -0
  242. data/sig/lithic/models/transaction_monitoring/case_retrieve_params.rbs +25 -0
  243. data/sig/lithic/models/transaction_monitoring/case_sort_order.rbs +26 -0
  244. data/sig/lithic/models/transaction_monitoring/case_status.rbs +21 -0
  245. data/sig/lithic/models/transaction_monitoring/case_transaction.rbs +42 -0
  246. data/sig/lithic/models/transaction_monitoring/case_update_params.rbs +91 -0
  247. data/sig/lithic/models/transaction_monitoring/cases/case_file.rbs +86 -0
  248. data/sig/lithic/models/transaction_monitoring/cases/comment_create_params.rbs +38 -0
  249. data/sig/lithic/models/transaction_monitoring/cases/comment_delete_params.rbs +32 -0
  250. data/sig/lithic/models/transaction_monitoring/cases/comment_update_params.rbs +47 -0
  251. data/sig/lithic/models/transaction_monitoring/cases/file_create_params.rbs +32 -0
  252. data/sig/lithic/models/transaction_monitoring/cases/file_delete_params.rbs +32 -0
  253. data/sig/lithic/models/transaction_monitoring/cases/file_list_params.rbs +51 -0
  254. data/sig/lithic/models/transaction_monitoring/cases/file_retrieve_params.rbs +32 -0
  255. data/sig/lithic/models/transaction_monitoring/cases/file_status.rbs +19 -0
  256. data/sig/lithic/models/transaction_monitoring/cases/upload_constraints.rbs +26 -0
  257. data/sig/lithic/models/transaction_monitoring/entity_type.rbs +16 -0
  258. data/sig/lithic/models/transaction_monitoring/monitoring_case.rbs +102 -0
  259. data/sig/lithic/models/transaction_monitoring/queue.rbs +101 -0
  260. data/sig/lithic/models/transaction_monitoring/queue_create_params.rbs +30 -0
  261. data/sig/lithic/models/transaction_monitoring/queue_delete_params.rbs +25 -0
  262. data/sig/lithic/models/transaction_monitoring/queue_list_params.rbs +40 -0
  263. data/sig/lithic/models/transaction_monitoring/queue_retrieve_params.rbs +25 -0
  264. data/sig/lithic/models/transaction_monitoring/queue_update_params.rbs +36 -0
  265. data/sig/lithic/models/transaction_monitoring/resolution_outcome.rbs +24 -0
  266. data/sig/lithic/models/transaction_route_params.rbs +28 -0
  267. data/sig/lithic/models/transfer_limits_response.rbs +24 -36
  268. data/sig/lithic/models.rbs +12 -0
  269. data/sig/lithic/resources/account_holders/entities.rbs +1 -1
  270. data/sig/lithic/resources/card_authorizations.rbs +13 -0
  271. data/sig/lithic/resources/external_bank_accounts.rbs +5 -0
  272. data/sig/lithic/resources/transaction_monitoring/cases/comments.rbs +32 -0
  273. data/sig/lithic/resources/transaction_monitoring/cases/files.rbs +37 -0
  274. data/sig/lithic/resources/transaction_monitoring/cases.rbs +71 -0
  275. data/sig/lithic/resources/transaction_monitoring/queues.rbs +39 -0
  276. data/sig/lithic/resources/transaction_monitoring.rbs +11 -0
  277. data/sig/lithic/resources/transactions.rbs +6 -0
  278. data/sig/lithic/resources/webhooks.rbs +1 -0
  279. metadata +140 -2
@@ -96,12 +96,12 @@ module Lithic
96
96
  # - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
97
97
  # fee field in the settlement/cardholder billing currency. This is the amount
98
98
  # the issuer should authorize against unless the issuer is paying the acquirer
99
- # fee on behalf of the cardholder.
99
+ # fee on behalf of the cardholder. Use an integer value.
100
100
  # - `RISK_SCORE`: Network-provided score assessing risk level associated with a
101
101
  # given authorization. Scores are on a range of 0-999, with 0 representing the
102
102
  # lowest risk and 999 representing the highest risk. For Visa transactions,
103
103
  # where the raw score has a range of 0-99, Lithic will normalize the score by
104
- # multiplying the raw score by 10x.
104
+ # multiplying the raw score by 10x. Use an integer value.
105
105
  # - `TRANSACTION_STATUS`: The status of the transaction. Valid values are
106
106
  # `PENDING`, `VOIDED`, `SETTLING`, `SETTLED`, `BOUNCED`, `RETURNED`, `DECLINED`,
107
107
  # `EXPIRED`.
@@ -122,15 +122,63 @@ module Lithic
122
122
  # - `WALLET_TYPE`: For transactions using a digital wallet token, indicates the
123
123
  # source of the token. Valid values are `APPLE_PAY`, `GOOGLE_PAY`,
124
124
  # `SAMSUNG_PAY`, `MASTERPASS`, `MERCHANT`, `OTHER`, `NONE`.
125
- # - `CARD_AGE`: The age of the card in seconds at the time of the transaction.
125
+ # - `CARD_AGE`: The age of the card in seconds at the time of the transaction. Use
126
+ # an integer value.
126
127
  # - `ACCOUNT_AGE`: The age of the account in seconds at the time of the
127
- # transaction.
128
+ # transaction. Use an integer value. For programs where Lithic does not manage
129
+ # or retain account holder data, this attribute does not evaluate.
128
130
  # - `SPEND_VELOCITY_COUNT`: The number of transactions matching the specified
129
131
  # filters within the given period. Requires `parameters` with `scope`, `period`,
130
- # and optional `filters`.
132
+ # and optional `filters`. Use an integer value.
131
133
  # - `SPEND_VELOCITY_AMOUNT`: The total spend amount (in cents) of transactions
132
134
  # matching the specified filters within the given period. Requires `parameters`
133
- # with `scope`, `period`, and optional `filters`.
135
+ # with `scope`, `period`, and optional `filters`. Use an integer value.
136
+ # - `AMOUNT_Z_SCORE`: The z-score of the transaction amount relative to the
137
+ # entity's transaction history. Null if fewer than 30 approved transactions in
138
+ # the specified window. Requires `parameters.scope` and `parameters.interval`.
139
+ # Use a decimal value.
140
+ # - `AVG_TRANSACTION_AMOUNT`: The average approved transaction amount for the
141
+ # entity over the specified window, in cents. Requires `parameters.scope` and
142
+ # `parameters.interval`. Use a decimal value.
143
+ # - `STDEV_TRANSACTION_AMOUNT`: The standard deviation of approved transaction
144
+ # amounts for the entity over the specified window, in cents. Null if fewer than
145
+ # 30 approved transactions in the specified window. Requires `parameters.scope`
146
+ # and `parameters.interval`. Use a decimal value.
147
+ # - `IS_NEW_COUNTRY`: Whether the transaction's merchant country has not been seen
148
+ # in the entity's transaction history. Valid values are `TRUE`, `FALSE`.
149
+ # Requires `parameters.scope`.
150
+ # - `IS_NEW_MCC`: Whether the transaction's MCC has not been seen in the entity's
151
+ # transaction history. Valid values are `TRUE`, `FALSE`. Requires
152
+ # `parameters.scope`.
153
+ # - `IS_FIRST_TRANSACTION`: Whether this is the first transaction for the entity.
154
+ # Valid values are `TRUE`, `FALSE`. Requires `parameters.scope`.
155
+ # - `CONSECUTIVE_DECLINES`: The number of consecutive declined transactions for
156
+ # the entity over the last 30 days (rolling). Requires `parameters.scope`. Use
157
+ # an integer value.
158
+ # - `TIME_SINCE_LAST_TRANSACTION`: The number of days since the last approved
159
+ # transaction for the entity, rounded to the nearest whole day. Requires
160
+ # `parameters.scope`. Use an integer value.
161
+ # - `DISTINCT_COUNTRY_COUNT`: The number of distinct merchant countries seen in
162
+ # the entity's transaction history. Requires `parameters.scope`. Use an integer
163
+ # value.
164
+ # - `IS_NEW_MERCHANT`: Whether the card acceptor ID has not been seen in the
165
+ # card's approved transaction history (capped at the 1000 most recently seen
166
+ # merchants). Valid values are `TRUE`, `FALSE`. Card-scoped only; no
167
+ # `parameters` required.
168
+ # - `THREE_DS_SUCCESS_RATE`: The 3DS authentication success rate for the card, as
169
+ # a percentage from 0.0 to 100.0. Card-scoped only; no `parameters` required.
170
+ # Use a decimal value.
171
+ # - `TRAVEL_SPEED`: The estimated speed of travel derived from the distance
172
+ # between the postal code centers of the last card-present transaction and the
173
+ # current transaction, divided by the elapsed time. Null if there is no prior
174
+ # card-present transaction, if either postal code cannot be geocoded, or if
175
+ # elapsed time is zero. Requires `parameters.unit` set to `MPH` or `KPH`. Use a
176
+ # decimal value.
177
+ # - `DISTANCE_FROM_LAST_TRANSACTION`: The estimated distance between the postal
178
+ # code centers of the last card-present transaction and the current transaction.
179
+ # Null if there is no prior card-present transaction or if either postal code
180
+ # cannot be geocoded. Requires `parameters.unit` set to `MILES` or `KILOMETERS`.
181
+ # Use a decimal value.
134
182
  sig do
135
183
  returns(
136
184
  Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::OrSymbol
@@ -146,8 +194,14 @@ module Lithic
146
194
  sig { returns(Lithic::AuthRules::ConditionalValue::Variants) }
147
195
  attr_accessor :value
148
196
 
149
- # Additional parameters for spend velocity attributes. Required when `attribute`
150
- # is `SPEND_VELOCITY_COUNT` or `SPEND_VELOCITY_AMOUNT`. Not used for other
197
+ # Additional parameters for certain attributes. Required when `attribute` is
198
+ # `SPEND_VELOCITY_COUNT` or `SPEND_VELOCITY_AMOUNT` (require `scope`, `period`,
199
+ # and optional `filters`); `AMOUNT_Z_SCORE`, `AVG_TRANSACTION_AMOUNT`,
200
+ # `STDEV_TRANSACTION_AMOUNT`, `IS_NEW_COUNTRY`, `IS_NEW_MCC`,
201
+ # `IS_FIRST_TRANSACTION`, `CONSECUTIVE_DECLINES`, `TIME_SINCE_LAST_TRANSACTION`,
202
+ # or `DISTINCT_COUNTRY_COUNT` (require `scope`, and additionally `interval` for
203
+ # the statistical attributes); or `TRAVEL_SPEED` or
204
+ # `DISTANCE_FROM_LAST_TRANSACTION` (require `unit`). Not used for other
151
205
  # attributes.
152
206
  sig do
153
207
  returns(
@@ -194,12 +248,12 @@ module Lithic
194
248
  # - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
195
249
  # fee field in the settlement/cardholder billing currency. This is the amount
196
250
  # the issuer should authorize against unless the issuer is paying the acquirer
197
- # fee on behalf of the cardholder.
251
+ # fee on behalf of the cardholder. Use an integer value.
198
252
  # - `RISK_SCORE`: Network-provided score assessing risk level associated with a
199
253
  # given authorization. Scores are on a range of 0-999, with 0 representing the
200
254
  # lowest risk and 999 representing the highest risk. For Visa transactions,
201
255
  # where the raw score has a range of 0-99, Lithic will normalize the score by
202
- # multiplying the raw score by 10x.
256
+ # multiplying the raw score by 10x. Use an integer value.
203
257
  # - `TRANSACTION_STATUS`: The status of the transaction. Valid values are
204
258
  # `PENDING`, `VOIDED`, `SETTLING`, `SETTLED`, `BOUNCED`, `RETURNED`, `DECLINED`,
205
259
  # `EXPIRED`.
@@ -220,22 +274,76 @@ module Lithic
220
274
  # - `WALLET_TYPE`: For transactions using a digital wallet token, indicates the
221
275
  # source of the token. Valid values are `APPLE_PAY`, `GOOGLE_PAY`,
222
276
  # `SAMSUNG_PAY`, `MASTERPASS`, `MERCHANT`, `OTHER`, `NONE`.
223
- # - `CARD_AGE`: The age of the card in seconds at the time of the transaction.
277
+ # - `CARD_AGE`: The age of the card in seconds at the time of the transaction. Use
278
+ # an integer value.
224
279
  # - `ACCOUNT_AGE`: The age of the account in seconds at the time of the
225
- # transaction.
280
+ # transaction. Use an integer value. For programs where Lithic does not manage
281
+ # or retain account holder data, this attribute does not evaluate.
226
282
  # - `SPEND_VELOCITY_COUNT`: The number of transactions matching the specified
227
283
  # filters within the given period. Requires `parameters` with `scope`, `period`,
228
- # and optional `filters`.
284
+ # and optional `filters`. Use an integer value.
229
285
  # - `SPEND_VELOCITY_AMOUNT`: The total spend amount (in cents) of transactions
230
286
  # matching the specified filters within the given period. Requires `parameters`
231
- # with `scope`, `period`, and optional `filters`.
287
+ # with `scope`, `period`, and optional `filters`. Use an integer value.
288
+ # - `AMOUNT_Z_SCORE`: The z-score of the transaction amount relative to the
289
+ # entity's transaction history. Null if fewer than 30 approved transactions in
290
+ # the specified window. Requires `parameters.scope` and `parameters.interval`.
291
+ # Use a decimal value.
292
+ # - `AVG_TRANSACTION_AMOUNT`: The average approved transaction amount for the
293
+ # entity over the specified window, in cents. Requires `parameters.scope` and
294
+ # `parameters.interval`. Use a decimal value.
295
+ # - `STDEV_TRANSACTION_AMOUNT`: The standard deviation of approved transaction
296
+ # amounts for the entity over the specified window, in cents. Null if fewer than
297
+ # 30 approved transactions in the specified window. Requires `parameters.scope`
298
+ # and `parameters.interval`. Use a decimal value.
299
+ # - `IS_NEW_COUNTRY`: Whether the transaction's merchant country has not been seen
300
+ # in the entity's transaction history. Valid values are `TRUE`, `FALSE`.
301
+ # Requires `parameters.scope`.
302
+ # - `IS_NEW_MCC`: Whether the transaction's MCC has not been seen in the entity's
303
+ # transaction history. Valid values are `TRUE`, `FALSE`. Requires
304
+ # `parameters.scope`.
305
+ # - `IS_FIRST_TRANSACTION`: Whether this is the first transaction for the entity.
306
+ # Valid values are `TRUE`, `FALSE`. Requires `parameters.scope`.
307
+ # - `CONSECUTIVE_DECLINES`: The number of consecutive declined transactions for
308
+ # the entity over the last 30 days (rolling). Requires `parameters.scope`. Use
309
+ # an integer value.
310
+ # - `TIME_SINCE_LAST_TRANSACTION`: The number of days since the last approved
311
+ # transaction for the entity, rounded to the nearest whole day. Requires
312
+ # `parameters.scope`. Use an integer value.
313
+ # - `DISTINCT_COUNTRY_COUNT`: The number of distinct merchant countries seen in
314
+ # the entity's transaction history. Requires `parameters.scope`. Use an integer
315
+ # value.
316
+ # - `IS_NEW_MERCHANT`: Whether the card acceptor ID has not been seen in the
317
+ # card's approved transaction history (capped at the 1000 most recently seen
318
+ # merchants). Valid values are `TRUE`, `FALSE`. Card-scoped only; no
319
+ # `parameters` required.
320
+ # - `THREE_DS_SUCCESS_RATE`: The 3DS authentication success rate for the card, as
321
+ # a percentage from 0.0 to 100.0. Card-scoped only; no `parameters` required.
322
+ # Use a decimal value.
323
+ # - `TRAVEL_SPEED`: The estimated speed of travel derived from the distance
324
+ # between the postal code centers of the last card-present transaction and the
325
+ # current transaction, divided by the elapsed time. Null if there is no prior
326
+ # card-present transaction, if either postal code cannot be geocoded, or if
327
+ # elapsed time is zero. Requires `parameters.unit` set to `MPH` or `KPH`. Use a
328
+ # decimal value.
329
+ # - `DISTANCE_FROM_LAST_TRANSACTION`: The estimated distance between the postal
330
+ # code centers of the last card-present transaction and the current transaction.
331
+ # Null if there is no prior card-present transaction or if either postal code
332
+ # cannot be geocoded. Requires `parameters.unit` set to `MILES` or `KILOMETERS`.
333
+ # Use a decimal value.
232
334
  attribute:,
233
335
  # The operation to apply to the attribute
234
336
  operation:,
235
337
  # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
236
338
  value:,
237
- # Additional parameters for spend velocity attributes. Required when `attribute`
238
- # is `SPEND_VELOCITY_COUNT` or `SPEND_VELOCITY_AMOUNT`. Not used for other
339
+ # Additional parameters for certain attributes. Required when `attribute` is
340
+ # `SPEND_VELOCITY_COUNT` or `SPEND_VELOCITY_AMOUNT` (require `scope`, `period`,
341
+ # and optional `filters`); `AMOUNT_Z_SCORE`, `AVG_TRANSACTION_AMOUNT`,
342
+ # `STDEV_TRANSACTION_AMOUNT`, `IS_NEW_COUNTRY`, `IS_NEW_MCC`,
343
+ # `IS_FIRST_TRANSACTION`, `CONSECUTIVE_DECLINES`, `TIME_SINCE_LAST_TRANSACTION`,
344
+ # or `DISTINCT_COUNTRY_COUNT` (require `scope`, and additionally `interval` for
345
+ # the statistical attributes); or `TRAVEL_SPEED` or
346
+ # `DISTANCE_FROM_LAST_TRANSACTION` (require `unit`). Not used for other
239
347
  # attributes.
240
348
  parameters: nil
241
349
  )
@@ -273,12 +381,12 @@ module Lithic
273
381
  # - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
274
382
  # fee field in the settlement/cardholder billing currency. This is the amount
275
383
  # the issuer should authorize against unless the issuer is paying the acquirer
276
- # fee on behalf of the cardholder.
384
+ # fee on behalf of the cardholder. Use an integer value.
277
385
  # - `RISK_SCORE`: Network-provided score assessing risk level associated with a
278
386
  # given authorization. Scores are on a range of 0-999, with 0 representing the
279
387
  # lowest risk and 999 representing the highest risk. For Visa transactions,
280
388
  # where the raw score has a range of 0-99, Lithic will normalize the score by
281
- # multiplying the raw score by 10x.
389
+ # multiplying the raw score by 10x. Use an integer value.
282
390
  # - `TRANSACTION_STATUS`: The status of the transaction. Valid values are
283
391
  # `PENDING`, `VOIDED`, `SETTLING`, `SETTLED`, `BOUNCED`, `RETURNED`, `DECLINED`,
284
392
  # `EXPIRED`.
@@ -299,15 +407,63 @@ module Lithic
299
407
  # - `WALLET_TYPE`: For transactions using a digital wallet token, indicates the
300
408
  # source of the token. Valid values are `APPLE_PAY`, `GOOGLE_PAY`,
301
409
  # `SAMSUNG_PAY`, `MASTERPASS`, `MERCHANT`, `OTHER`, `NONE`.
302
- # - `CARD_AGE`: The age of the card in seconds at the time of the transaction.
410
+ # - `CARD_AGE`: The age of the card in seconds at the time of the transaction. Use
411
+ # an integer value.
303
412
  # - `ACCOUNT_AGE`: The age of the account in seconds at the time of the
304
- # transaction.
413
+ # transaction. Use an integer value. For programs where Lithic does not manage
414
+ # or retain account holder data, this attribute does not evaluate.
305
415
  # - `SPEND_VELOCITY_COUNT`: The number of transactions matching the specified
306
416
  # filters within the given period. Requires `parameters` with `scope`, `period`,
307
- # and optional `filters`.
417
+ # and optional `filters`. Use an integer value.
308
418
  # - `SPEND_VELOCITY_AMOUNT`: The total spend amount (in cents) of transactions
309
419
  # matching the specified filters within the given period. Requires `parameters`
310
- # with `scope`, `period`, and optional `filters`.
420
+ # with `scope`, `period`, and optional `filters`. Use an integer value.
421
+ # - `AMOUNT_Z_SCORE`: The z-score of the transaction amount relative to the
422
+ # entity's transaction history. Null if fewer than 30 approved transactions in
423
+ # the specified window. Requires `parameters.scope` and `parameters.interval`.
424
+ # Use a decimal value.
425
+ # - `AVG_TRANSACTION_AMOUNT`: The average approved transaction amount for the
426
+ # entity over the specified window, in cents. Requires `parameters.scope` and
427
+ # `parameters.interval`. Use a decimal value.
428
+ # - `STDEV_TRANSACTION_AMOUNT`: The standard deviation of approved transaction
429
+ # amounts for the entity over the specified window, in cents. Null if fewer than
430
+ # 30 approved transactions in the specified window. Requires `parameters.scope`
431
+ # and `parameters.interval`. Use a decimal value.
432
+ # - `IS_NEW_COUNTRY`: Whether the transaction's merchant country has not been seen
433
+ # in the entity's transaction history. Valid values are `TRUE`, `FALSE`.
434
+ # Requires `parameters.scope`.
435
+ # - `IS_NEW_MCC`: Whether the transaction's MCC has not been seen in the entity's
436
+ # transaction history. Valid values are `TRUE`, `FALSE`. Requires
437
+ # `parameters.scope`.
438
+ # - `IS_FIRST_TRANSACTION`: Whether this is the first transaction for the entity.
439
+ # Valid values are `TRUE`, `FALSE`. Requires `parameters.scope`.
440
+ # - `CONSECUTIVE_DECLINES`: The number of consecutive declined transactions for
441
+ # the entity over the last 30 days (rolling). Requires `parameters.scope`. Use
442
+ # an integer value.
443
+ # - `TIME_SINCE_LAST_TRANSACTION`: The number of days since the last approved
444
+ # transaction for the entity, rounded to the nearest whole day. Requires
445
+ # `parameters.scope`. Use an integer value.
446
+ # - `DISTINCT_COUNTRY_COUNT`: The number of distinct merchant countries seen in
447
+ # the entity's transaction history. Requires `parameters.scope`. Use an integer
448
+ # value.
449
+ # - `IS_NEW_MERCHANT`: Whether the card acceptor ID has not been seen in the
450
+ # card's approved transaction history (capped at the 1000 most recently seen
451
+ # merchants). Valid values are `TRUE`, `FALSE`. Card-scoped only; no
452
+ # `parameters` required.
453
+ # - `THREE_DS_SUCCESS_RATE`: The 3DS authentication success rate for the card, as
454
+ # a percentage from 0.0 to 100.0. Card-scoped only; no `parameters` required.
455
+ # Use a decimal value.
456
+ # - `TRAVEL_SPEED`: The estimated speed of travel derived from the distance
457
+ # between the postal code centers of the last card-present transaction and the
458
+ # current transaction, divided by the elapsed time. Null if there is no prior
459
+ # card-present transaction, if either postal code cannot be geocoded, or if
460
+ # elapsed time is zero. Requires `parameters.unit` set to `MPH` or `KPH`. Use a
461
+ # decimal value.
462
+ # - `DISTANCE_FROM_LAST_TRANSACTION`: The estimated distance between the postal
463
+ # code centers of the last card-present transaction and the current transaction.
464
+ # Null if there is no prior card-present transaction or if either postal code
465
+ # cannot be geocoded. Requires `parameters.unit` set to `MILES` or `KILOMETERS`.
466
+ # Use a decimal value.
311
467
  module Attribute
312
468
  extend Lithic::Internal::Type::Enum
313
469
 
@@ -400,6 +556,71 @@ module Lithic
400
556
  :SPEND_VELOCITY_AMOUNT,
401
557
  Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
402
558
  )
559
+ AMOUNT_Z_SCORE =
560
+ T.let(
561
+ :AMOUNT_Z_SCORE,
562
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
563
+ )
564
+ AVG_TRANSACTION_AMOUNT =
565
+ T.let(
566
+ :AVG_TRANSACTION_AMOUNT,
567
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
568
+ )
569
+ STDEV_TRANSACTION_AMOUNT =
570
+ T.let(
571
+ :STDEV_TRANSACTION_AMOUNT,
572
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
573
+ )
574
+ IS_NEW_COUNTRY =
575
+ T.let(
576
+ :IS_NEW_COUNTRY,
577
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
578
+ )
579
+ IS_NEW_MCC =
580
+ T.let(
581
+ :IS_NEW_MCC,
582
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
583
+ )
584
+ IS_FIRST_TRANSACTION =
585
+ T.let(
586
+ :IS_FIRST_TRANSACTION,
587
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
588
+ )
589
+ CONSECUTIVE_DECLINES =
590
+ T.let(
591
+ :CONSECUTIVE_DECLINES,
592
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
593
+ )
594
+ TIME_SINCE_LAST_TRANSACTION =
595
+ T.let(
596
+ :TIME_SINCE_LAST_TRANSACTION,
597
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
598
+ )
599
+ DISTINCT_COUNTRY_COUNT =
600
+ T.let(
601
+ :DISTINCT_COUNTRY_COUNT,
602
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
603
+ )
604
+ IS_NEW_MERCHANT =
605
+ T.let(
606
+ :IS_NEW_MERCHANT,
607
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
608
+ )
609
+ THREE_DS_SUCCESS_RATE =
610
+ T.let(
611
+ :THREE_DS_SUCCESS_RATE,
612
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
613
+ )
614
+ TRAVEL_SPEED =
615
+ T.let(
616
+ :TRAVEL_SPEED,
617
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
618
+ )
619
+ DISTANCE_FROM_LAST_TRANSACTION =
620
+ T.let(
621
+ :DISTANCE_FROM_LAST_TRANSACTION,
622
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Attribute::TaggedSymbol
623
+ )
403
624
 
404
625
  sig do
405
626
  override.returns(
@@ -431,6 +652,26 @@ module Lithic
431
652
  end
432
653
  attr_writer :filters
433
654
 
655
+ # The time window for statistical attributes (`AMOUNT_Z_SCORE`,
656
+ # `AVG_TRANSACTION_AMOUNT`, `STDEV_TRANSACTION_AMOUNT`). Use `LIFETIME` for
657
+ # all-time history or a specific window (`7D`, `30D`, `90D`).
658
+ sig do
659
+ returns(
660
+ T.nilable(
661
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Interval::OrSymbol
662
+ )
663
+ )
664
+ end
665
+ attr_reader :interval
666
+
667
+ sig do
668
+ params(
669
+ interval:
670
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Interval::OrSymbol
671
+ ).void
672
+ end
673
+ attr_writer :interval
674
+
434
675
  # The time period over which to calculate the spend velocity.
435
676
  sig do
436
677
  returns(
@@ -461,7 +702,8 @@ module Lithic
461
702
  end
462
703
  attr_writer :period
463
704
 
464
- # The entity scope to evaluate the attribute against.
705
+ # The entity scope to evaluate the attribute against. `GLOBAL` is only valid for
706
+ # spend velocity attributes.
465
707
  sig do
466
708
  returns(
467
709
  T.nilable(
@@ -479,12 +721,43 @@ module Lithic
479
721
  end
480
722
  attr_writer :scope
481
723
 
482
- # Additional parameters for spend velocity attributes. Required when `attribute`
483
- # is `SPEND_VELOCITY_COUNT` or `SPEND_VELOCITY_AMOUNT`. Not used for other
724
+ # The unit for impossible travel attributes. Required when `attribute` is
725
+ # `TRAVEL_SPEED` or `DISTANCE_FROM_LAST_TRANSACTION`.
726
+ #
727
+ # For `TRAVEL_SPEED`: `MPH` (miles per hour) or `KPH` (kilometers per hour).
728
+ #
729
+ # For `DISTANCE_FROM_LAST_TRANSACTION`: `MILES` or `KILOMETERS`.
730
+ sig do
731
+ returns(
732
+ T.nilable(
733
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Unit::OrSymbol
734
+ )
735
+ )
736
+ end
737
+ attr_reader :unit
738
+
739
+ sig do
740
+ params(
741
+ unit:
742
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Unit::OrSymbol
743
+ ).void
744
+ end
745
+ attr_writer :unit
746
+
747
+ # Additional parameters for certain attributes. Required when `attribute` is
748
+ # `SPEND_VELOCITY_COUNT` or `SPEND_VELOCITY_AMOUNT` (require `scope`, `period`,
749
+ # and optional `filters`); `AMOUNT_Z_SCORE`, `AVG_TRANSACTION_AMOUNT`,
750
+ # `STDEV_TRANSACTION_AMOUNT`, `IS_NEW_COUNTRY`, `IS_NEW_MCC`,
751
+ # `IS_FIRST_TRANSACTION`, `CONSECUTIVE_DECLINES`, `TIME_SINCE_LAST_TRANSACTION`,
752
+ # or `DISTINCT_COUNTRY_COUNT` (require `scope`, and additionally `interval` for
753
+ # the statistical attributes); or `TRAVEL_SPEED` or
754
+ # `DISTANCE_FROM_LAST_TRANSACTION` (require `unit`). Not used for other
484
755
  # attributes.
485
756
  sig do
486
757
  params(
487
758
  filters: Lithic::AuthRules::SpendVelocityFilters::OrHash,
759
+ interval:
760
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Interval::OrSymbol,
488
761
  period:
489
762
  T.any(
490
763
  Lithic::AuthRules::VelocityLimitPeriod::TrailingWindowObject::OrHash,
@@ -494,15 +767,29 @@ module Lithic
494
767
  Lithic::AuthRules::VelocityLimitPeriod::FixedWindowYear::OrHash
495
768
  ),
496
769
  scope:
497
- Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Scope::OrSymbol
770
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Scope::OrSymbol,
771
+ unit:
772
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Unit::OrSymbol
498
773
  ).returns(T.attached_class)
499
774
  end
500
775
  def self.new(
501
776
  filters: nil,
777
+ # The time window for statistical attributes (`AMOUNT_Z_SCORE`,
778
+ # `AVG_TRANSACTION_AMOUNT`, `STDEV_TRANSACTION_AMOUNT`). Use `LIFETIME` for
779
+ # all-time history or a specific window (`7D`, `30D`, `90D`).
780
+ interval: nil,
502
781
  # The time period over which to calculate the spend velocity.
503
782
  period: nil,
504
- # The entity scope to evaluate the attribute against.
505
- scope: nil
783
+ # The entity scope to evaluate the attribute against. `GLOBAL` is only valid for
784
+ # spend velocity attributes.
785
+ scope: nil,
786
+ # The unit for impossible travel attributes. Required when `attribute` is
787
+ # `TRAVEL_SPEED` or `DISTANCE_FROM_LAST_TRANSACTION`.
788
+ #
789
+ # For `TRAVEL_SPEED`: `MPH` (miles per hour) or `KPH` (kilometers per hour).
790
+ #
791
+ # For `DISTANCE_FROM_LAST_TRANSACTION`: `MILES` or `KILOMETERS`.
792
+ unit: nil
506
793
  )
507
794
  end
508
795
 
@@ -510,6 +797,8 @@ module Lithic
510
797
  override.returns(
511
798
  {
512
799
  filters: Lithic::AuthRules::SpendVelocityFilters,
800
+ interval:
801
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Interval::OrSymbol,
513
802
  period:
514
803
  T.any(
515
804
  Lithic::AuthRules::VelocityLimitPeriod::TrailingWindowObject,
@@ -519,14 +808,64 @@ module Lithic
519
808
  Lithic::AuthRules::VelocityLimitPeriod::FixedWindowYear
520
809
  ),
521
810
  scope:
522
- Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Scope::OrSymbol
811
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Scope::OrSymbol,
812
+ unit:
813
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Unit::OrSymbol
523
814
  }
524
815
  )
525
816
  end
526
817
  def to_hash
527
818
  end
528
819
 
529
- # The entity scope to evaluate the attribute against.
820
+ # The time window for statistical attributes (`AMOUNT_Z_SCORE`,
821
+ # `AVG_TRANSACTION_AMOUNT`, `STDEV_TRANSACTION_AMOUNT`). Use `LIFETIME` for
822
+ # all-time history or a specific window (`7D`, `30D`, `90D`).
823
+ module Interval
824
+ extend Lithic::Internal::Type::Enum
825
+
826
+ TaggedSymbol =
827
+ T.type_alias do
828
+ T.all(
829
+ Symbol,
830
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Interval
831
+ )
832
+ end
833
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
834
+
835
+ LIFETIME =
836
+ T.let(
837
+ :LIFETIME,
838
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Interval::TaggedSymbol
839
+ )
840
+ INTERVAL_7_D =
841
+ T.let(
842
+ :"7D",
843
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Interval::TaggedSymbol
844
+ )
845
+ INTERVAL_30_D =
846
+ T.let(
847
+ :"30D",
848
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Interval::TaggedSymbol
849
+ )
850
+ INTERVAL_90_D =
851
+ T.let(
852
+ :"90D",
853
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Interval::TaggedSymbol
854
+ )
855
+
856
+ sig do
857
+ override.returns(
858
+ T::Array[
859
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Interval::TaggedSymbol
860
+ ]
861
+ )
862
+ end
863
+ def self.values
864
+ end
865
+ end
866
+
867
+ # The entity scope to evaluate the attribute against. `GLOBAL` is only valid for
868
+ # spend velocity attributes.
530
869
  module Scope
531
870
  extend Lithic::Internal::Type::Enum
532
871
 
@@ -565,6 +904,56 @@ module Lithic
565
904
  def self.values
566
905
  end
567
906
  end
907
+
908
+ # The unit for impossible travel attributes. Required when `attribute` is
909
+ # `TRAVEL_SPEED` or `DISTANCE_FROM_LAST_TRANSACTION`.
910
+ #
911
+ # For `TRAVEL_SPEED`: `MPH` (miles per hour) or `KPH` (kilometers per hour).
912
+ #
913
+ # For `DISTANCE_FROM_LAST_TRANSACTION`: `MILES` or `KILOMETERS`.
914
+ module Unit
915
+ extend Lithic::Internal::Type::Enum
916
+
917
+ TaggedSymbol =
918
+ T.type_alias do
919
+ T.all(
920
+ Symbol,
921
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Unit
922
+ )
923
+ end
924
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
925
+
926
+ MPH =
927
+ T.let(
928
+ :MPH,
929
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Unit::TaggedSymbol
930
+ )
931
+ KPH =
932
+ T.let(
933
+ :KPH,
934
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Unit::TaggedSymbol
935
+ )
936
+ MILES =
937
+ T.let(
938
+ :MILES,
939
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Unit::TaggedSymbol
940
+ )
941
+ KILOMETERS =
942
+ T.let(
943
+ :KILOMETERS,
944
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Unit::TaggedSymbol
945
+ )
946
+
947
+ sig do
948
+ override.returns(
949
+ T::Array[
950
+ Lithic::AuthRules::ConditionalCardTransactionUpdateActionParameters::Condition::Parameters::Unit::TaggedSymbol
951
+ ]
952
+ )
953
+ end
954
+ def self.values
955
+ end
956
+ end
568
957
  end
569
958
  end
570
959
  end
@@ -499,10 +499,10 @@ module Lithic
499
499
  # `SAMSUNG_PAY`, `UNKNOWN`, `VISA_CHECKOUT`.
500
500
  # - `WALLET_ACCOUNT_SCORE`: Risk score for the account in the digital wallet.
501
501
  # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
502
- # = medium risk).
502
+ # = medium risk). Use an integer value.
503
503
  # - `WALLET_DEVICE_SCORE`: Risk score for the device in the digital wallet.
504
504
  # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
505
- # = medium risk).
505
+ # = medium risk). Use an integer value.
506
506
  # - `WALLET_RECOMMENDED_DECISION`: The decision recommended by the digital wallet
507
507
  # provider. Valid values include APPROVE, DECLINE,
508
508
  # REQUIRE_ADDITIONAL_AUTHENTICATION.
@@ -570,10 +570,10 @@ module Lithic
570
570
  # `SAMSUNG_PAY`, `UNKNOWN`, `VISA_CHECKOUT`.
571
571
  # - `WALLET_ACCOUNT_SCORE`: Risk score for the account in the digital wallet.
572
572
  # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
573
- # = medium risk).
573
+ # = medium risk). Use an integer value.
574
574
  # - `WALLET_DEVICE_SCORE`: Risk score for the device in the digital wallet.
575
575
  # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
576
- # = medium risk).
576
+ # = medium risk). Use an integer value.
577
577
  # - `WALLET_RECOMMENDED_DECISION`: The decision recommended by the digital wallet
578
578
  # provider. Valid values include APPROVE, DECLINE,
579
579
  # REQUIRE_ADDITIONAL_AUTHENTICATION.
@@ -638,10 +638,10 @@ module Lithic
638
638
  # `SAMSUNG_PAY`, `UNKNOWN`, `VISA_CHECKOUT`.
639
639
  # - `WALLET_ACCOUNT_SCORE`: Risk score for the account in the digital wallet.
640
640
  # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
641
- # = medium risk).
641
+ # = medium risk). Use an integer value.
642
642
  # - `WALLET_DEVICE_SCORE`: Risk score for the device in the digital wallet.
643
643
  # Numeric value where lower numbers indicate higher risk (e.g., 1 = high risk, 2
644
- # = medium risk).
644
+ # = medium risk). Use an integer value.
645
645
  # - `WALLET_RECOMMENDED_DECISION`: The decision recommended by the digital wallet
646
646
  # provider. Valid values include APPROVE, DECLINE,
647
647
  # REQUIRE_ADDITIONAL_AUTHENTICATION.
@@ -8,7 +8,7 @@ module Lithic
8
8
  extend Lithic::Internal::Type::Union
9
9
 
10
10
  Variants =
11
- T.type_alias { T.any(String, Integer, T::Array[String], Time) }
11
+ T.type_alias { T.any(String, Integer, Float, T::Array[String], Time) }
12
12
 
13
13
  sig do
14
14
  override.returns(