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
@@ -0,0 +1,531 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ module AuthRules
6
+ class ConditionalAuthorizationAdjustmentParameters < Lithic::Internal::Type::BaseModel
7
+ # @!attribute action
8
+ # The hold adjustment to apply if the conditions are met.
9
+ #
10
+ # @return [Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action]
11
+ required :action, -> { Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action }
12
+
13
+ # @!attribute conditions
14
+ #
15
+ # @return [Array<Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition>]
16
+ required :conditions,
17
+ -> { Lithic::Internal::Type::ArrayOf[Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition] }
18
+
19
+ # @!method initialize(action:, conditions:)
20
+ # @param action [Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action] The hold adjustment to apply if the conditions are met.
21
+ #
22
+ # @param conditions [Array<Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition>]
23
+
24
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters#action
25
+ class Action < Lithic::Internal::Type::BaseModel
26
+ # @!attribute mode
27
+ # The mode of the hold adjustment, determining how the value is interpreted:
28
+ #
29
+ # - `REPLACE_WITH_AMOUNT`: The value is the approved hold amount in cents.
30
+ # - `ADD_PERCENTAGE`: The value adjusts the hold amount by a percentage. 1000
31
+ # represents a 10% increase, 0 represents no change.
32
+ # - `ADD_AMOUNT`: The value is added to the hold amount in cents.
33
+ #
34
+ # @return [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action::Mode]
35
+ required :mode, enum: -> { Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action::Mode }
36
+
37
+ # @!attribute type
38
+ # The type of adjustment to apply
39
+ #
40
+ # @return [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action::Type]
41
+ required :type, enum: -> { Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action::Type }
42
+
43
+ # @!attribute value
44
+ # The value used for the hold adjustment, interpreted based on the mode
45
+ #
46
+ # @return [Integer]
47
+ required :value, Integer
48
+
49
+ # @!method initialize(mode:, type:, value:)
50
+ # Some parameter documentations has been truncated, see
51
+ # {Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action}
52
+ # for more details.
53
+ #
54
+ # The hold adjustment to apply if the conditions are met.
55
+ #
56
+ # @param mode [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action::Mode] The mode of the hold adjustment, determining how the value is interpreted:
57
+ #
58
+ # @param type [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action::Type] The type of adjustment to apply
59
+ #
60
+ # @param value [Integer] The value used for the hold adjustment, interpreted based on the mode
61
+
62
+ # The mode of the hold adjustment, determining how the value is interpreted:
63
+ #
64
+ # - `REPLACE_WITH_AMOUNT`: The value is the approved hold amount in cents.
65
+ # - `ADD_PERCENTAGE`: The value adjusts the hold amount by a percentage. 1000
66
+ # represents a 10% increase, 0 represents no change.
67
+ # - `ADD_AMOUNT`: The value is added to the hold amount in cents.
68
+ #
69
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action#mode
70
+ module Mode
71
+ extend Lithic::Internal::Type::Enum
72
+
73
+ REPLACE_WITH_AMOUNT = :REPLACE_WITH_AMOUNT
74
+ ADD_PERCENTAGE = :ADD_PERCENTAGE
75
+ ADD_AMOUNT = :ADD_AMOUNT
76
+
77
+ # @!method self.values
78
+ # @return [Array<Symbol>]
79
+ end
80
+
81
+ # The type of adjustment to apply
82
+ #
83
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Action#type
84
+ module Type
85
+ extend Lithic::Internal::Type::Enum
86
+
87
+ HOLD_ADJUSTMENT = :HOLD_ADJUSTMENT
88
+
89
+ # @!method self.values
90
+ # @return [Array<Symbol>]
91
+ end
92
+ end
93
+
94
+ class Condition < Lithic::Internal::Type::BaseModel
95
+ # @!attribute attribute
96
+ # The attribute to target.
97
+ #
98
+ # The following attributes may be targeted:
99
+ #
100
+ # - `MCC`: A four-digit number listed in ISO 18245. An MCC is used to classify a
101
+ # business by the types of goods or services it provides.
102
+ # - `COUNTRY`: Country of entity of card acceptor. Possible values are: (1) all
103
+ # ISO 3166-1 alpha-3 country codes, (2) QZZ for Kosovo, and (3) ANT for
104
+ # Netherlands Antilles.
105
+ # - `CURRENCY`: 3-character alphabetic ISO 4217 code for the merchant currency of
106
+ # the transaction.
107
+ # - `MERCHANT_ID`: Unique alphanumeric identifier for the payment card acceptor
108
+ # (merchant).
109
+ # - `DESCRIPTOR`: Short description of card acceptor.
110
+ # - `LIABILITY_SHIFT`: Indicates whether chargeback liability shift to the issuer
111
+ # applies to the transaction. Valid values are `NONE`, `3DS_AUTHENTICATED`, or
112
+ # `TOKEN_AUTHENTICATED`.
113
+ # - `PAN_ENTRY_MODE`: The method by which the cardholder's primary account number
114
+ # (PAN) was entered. Valid values are `AUTO_ENTRY`, `BAR_CODE`, `CONTACTLESS`,
115
+ # `ECOMMERCE`, `ERROR_KEYED`, `ERROR_MAGNETIC_STRIPE`, `ICC`, `KEY_ENTERED`,
116
+ # `MAGNETIC_STRIPE`, `MANUAL`, `OCR`, `SECURE_CARDLESS`, `UNSPECIFIED`,
117
+ # `UNKNOWN`, `CREDENTIAL_ON_FILE`, or `ECOMMERCE`.
118
+ # - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
119
+ # fee field in the settlement/cardholder billing currency. This is the amount
120
+ # the issuer should authorize against unless the issuer is paying the acquirer
121
+ # fee on behalf of the cardholder. Use an integer value.
122
+ # - `CASH_AMOUNT`: The cash amount of the transaction in minor units (cents). This
123
+ # represents the amount of cash being withdrawn or advanced. Use an integer
124
+ # value.
125
+ # - `RISK_SCORE`: Network-provided score assessing risk level associated with a
126
+ # given authorization. Scores are on a range of 0-999, with 0 representing the
127
+ # lowest risk and 999 representing the highest risk. For Visa transactions,
128
+ # where the raw score has a range of 0-99, Lithic will normalize the score by
129
+ # multiplying the raw score by 10x. Use an integer value.
130
+ # - `CARD_TRANSACTION_COUNT_15M`: The number of transactions on the card in the
131
+ # trailing 15 minutes before the authorization. Use an integer value.
132
+ # - `CARD_TRANSACTION_COUNT_1H`: The number of transactions on the card in the
133
+ # trailing hour up and until the authorization. Use an integer value.
134
+ # - `CARD_TRANSACTION_COUNT_24H`: The number of transactions on the card in the
135
+ # trailing 24 hours up and until the authorization. Use an integer value.
136
+ # - `CARD_DECLINE_COUNT_15M`: The number of declined transactions on the card in
137
+ # the trailing 15 minutes before the authorization. Use an integer value.
138
+ # - `CARD_DECLINE_COUNT_1H`: The number of declined transactions on the card in
139
+ # the trailing hour up and until the authorization. Use an integer value.
140
+ # - `CARD_DECLINE_COUNT_24H`: The number of declined transactions on the card in
141
+ # the trailing 24 hours up and until the authorization. Use an integer value.
142
+ # - `CARD_STATE`: The current state of the card associated with the transaction.
143
+ # Valid values are `CLOSED`, `OPEN`, `PAUSED`, `PENDING_ACTIVATION`,
144
+ # `PENDING_FULFILLMENT`.
145
+ # - `PIN_ENTERED`: Indicates whether a PIN was entered during the transaction.
146
+ # Valid values are `TRUE`, `FALSE`.
147
+ # - `PIN_STATUS`: The current state of card's PIN. Valid values are `NOT_SET`,
148
+ # `OK`, `BLOCKED`.
149
+ # - `WALLET_TYPE`: For transactions using a digital wallet token, indicates the
150
+ # source of the token. Valid values are `APPLE_PAY`, `GOOGLE_PAY`,
151
+ # `SAMSUNG_PAY`, `MASTERPASS`, `MERCHANT`, `OTHER`, `NONE`.
152
+ # - `TRANSACTION_INITIATOR`: The entity that initiated the transaction indicates
153
+ # the source of the token. Valid values are `CARDHOLDER`, `MERCHANT`, `UNKNOWN`.
154
+ # - `ADDRESS_MATCH`: Lithic's evaluation result comparing transaction's address
155
+ # data with the cardholder KYC data if it exists. Valid values are `MATCH`,
156
+ # `MATCH_ADDRESS_ONLY`, `MATCH_ZIP_ONLY`,`MISMATCH`,`NOT_PRESENT`.
157
+ # - `SERVICE_LOCATION_STATE`: The state/province code (ISO 3166-2) where the
158
+ # cardholder received the service, e.g. "NY". When a service location is present
159
+ # in the network data, the service location state is used. Otherwise, falls back
160
+ # to the card acceptor state.
161
+ # - `SERVICE_LOCATION_POSTAL_CODE`: The postal code where the cardholder received
162
+ # the service, e.g. "10001". When a service location is present in the network
163
+ # data, the service location postal code is used. Otherwise, falls back to the
164
+ # card acceptor postal code.
165
+ # - `CARD_AGE`: The age of the card in seconds at the time of the authorization.
166
+ # Use an integer value.
167
+ # - `ACCOUNT_AGE`: The age of the account holder's account in seconds at the time
168
+ # of the authorization. Use an integer value. For programs where Lithic does not
169
+ # manage or retain account holder data, this attribute does not evaluate.
170
+ # - `AMOUNT_Z_SCORE`: The z-score of the transaction amount relative to the
171
+ # entity's transaction history. Null if fewer than 30 approved transactions in
172
+ # the specified window. Requires `parameters.scope` and `parameters.interval`.
173
+ # Use a decimal value.
174
+ # - `AVG_TRANSACTION_AMOUNT`: The average approved transaction amount for the
175
+ # entity over the specified window, in cents. Requires `parameters.scope` and
176
+ # `parameters.interval`. Use a decimal value.
177
+ # - `STDEV_TRANSACTION_AMOUNT`: The standard deviation of approved transaction
178
+ # amounts for the entity over the specified window, in cents. Null if fewer than
179
+ # 30 approved transactions in the specified window. Requires `parameters.scope`
180
+ # and `parameters.interval`. Use a decimal value.
181
+ # - `IS_NEW_COUNTRY`: Whether the transaction's merchant country has not been seen
182
+ # in the entity's transaction history. Valid values are `TRUE`, `FALSE`.
183
+ # Requires `parameters.scope`.
184
+ # - `IS_NEW_MCC`: Whether the transaction's MCC has not been seen in the entity's
185
+ # transaction history. Valid values are `TRUE`, `FALSE`. Requires
186
+ # `parameters.scope`.
187
+ # - `IS_FIRST_TRANSACTION`: Whether this is the first transaction for the entity.
188
+ # Valid values are `TRUE`, `FALSE`. Requires `parameters.scope`.
189
+ # - `CONSECUTIVE_DECLINES`: The number of consecutive declined transactions for
190
+ # the entity over the last 30 days (rolling). Requires `parameters.scope`. Not
191
+ # supported for `BUSINESS_ACCOUNT` scope. Use an integer value.
192
+ # - `TIME_SINCE_LAST_TRANSACTION`: The number of days since the last approved
193
+ # transaction for the entity, rounded to the nearest whole day. Requires
194
+ # `parameters.scope`. Use an integer value.
195
+ # - `DISTINCT_COUNTRY_COUNT`: The number of distinct merchant countries seen in
196
+ # the entity's transaction history. Requires `parameters.scope`. Use an integer
197
+ # value.
198
+ # - `IS_NEW_MERCHANT`: Whether the card acceptor ID has not been seen in the
199
+ # card's approved transaction history (capped at the 1000 most recently seen
200
+ # merchants). Valid values are `TRUE`, `FALSE`. Card-scoped only; no
201
+ # `parameters` required.
202
+ # - `THREE_DS_SUCCESS_RATE`: The 3DS authentication success rate for the card, as
203
+ # a percentage from 0.0 to 100.0. Card-scoped only; no `parameters` required.
204
+ # Use a decimal value.
205
+ # - `TRAVEL_SPEED`: The estimated speed of travel derived from the distance
206
+ # between the postal code centers of the last card-present transaction and the
207
+ # current transaction, divided by the elapsed time. Null if there is no prior
208
+ # card-present transaction, if either postal code cannot be geocoded, or if
209
+ # elapsed time is zero. Requires `parameters.unit` set to `MPH` or `KPH`. Use a
210
+ # decimal value.
211
+ # - `DISTANCE_FROM_LAST_TRANSACTION`: The estimated distance between the postal
212
+ # code centers of the last card-present transaction and the current transaction.
213
+ # Null if there is no prior card-present transaction or if either postal code
214
+ # cannot be geocoded. Requires `parameters.unit` set to `MILES` or `KILOMETERS`.
215
+ # Use a decimal value.
216
+ #
217
+ # @return [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Attribute]
218
+ required :attribute,
219
+ enum: -> { Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Attribute }
220
+
221
+ # @!attribute operation
222
+ # The operation to apply to the attribute
223
+ #
224
+ # @return [Symbol, Lithic::Models::AuthRules::ConditionalOperation]
225
+ required :operation, enum: -> { Lithic::AuthRules::ConditionalOperation }
226
+
227
+ # @!attribute value
228
+ # A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
229
+ #
230
+ # @return [String, Integer, Float, Array<String>, Time]
231
+ required :value, union: -> { Lithic::AuthRules::ConditionalValue }
232
+
233
+ # @!attribute parameters
234
+ # Additional parameters for certain attributes. Required when `attribute` is one
235
+ # of `AMOUNT_Z_SCORE`, `AVG_TRANSACTION_AMOUNT`, `STDEV_TRANSACTION_AMOUNT`,
236
+ # `IS_NEW_COUNTRY`, `IS_NEW_MCC`, `IS_FIRST_TRANSACTION`, `CONSECUTIVE_DECLINES`,
237
+ # `TIME_SINCE_LAST_TRANSACTION`, or `DISTINCT_COUNTRY_COUNT` (require `scope`); or
238
+ # `TRAVEL_SPEED` or `DISTANCE_FROM_LAST_TRANSACTION` (require `unit`). Not used
239
+ # for other attributes.
240
+ #
241
+ # @return [Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters, nil]
242
+ optional :parameters,
243
+ -> { Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters }
244
+
245
+ # @!method initialize(attribute:, operation:, value:, parameters: nil)
246
+ # Some parameter documentations has been truncated, see
247
+ # {Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition}
248
+ # for more details.
249
+ #
250
+ # @param attribute [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Attribute] The attribute to target.
251
+ #
252
+ # @param operation [Symbol, Lithic::Models::AuthRules::ConditionalOperation] The operation to apply to the attribute
253
+ #
254
+ # @param value [String, Integer, Float, Array<String>, Time] A regex string, to be used with `MATCHES` or `DOES_NOT_MATCH`
255
+ #
256
+ # @param parameters [Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters] Additional parameters for certain attributes. Required when `attribute` is one o
257
+
258
+ # The attribute to target.
259
+ #
260
+ # The following attributes may be targeted:
261
+ #
262
+ # - `MCC`: A four-digit number listed in ISO 18245. An MCC is used to classify a
263
+ # business by the types of goods or services it provides.
264
+ # - `COUNTRY`: Country of entity of card acceptor. Possible values are: (1) all
265
+ # ISO 3166-1 alpha-3 country codes, (2) QZZ for Kosovo, and (3) ANT for
266
+ # Netherlands Antilles.
267
+ # - `CURRENCY`: 3-character alphabetic ISO 4217 code for the merchant currency of
268
+ # the transaction.
269
+ # - `MERCHANT_ID`: Unique alphanumeric identifier for the payment card acceptor
270
+ # (merchant).
271
+ # - `DESCRIPTOR`: Short description of card acceptor.
272
+ # - `LIABILITY_SHIFT`: Indicates whether chargeback liability shift to the issuer
273
+ # applies to the transaction. Valid values are `NONE`, `3DS_AUTHENTICATED`, or
274
+ # `TOKEN_AUTHENTICATED`.
275
+ # - `PAN_ENTRY_MODE`: The method by which the cardholder's primary account number
276
+ # (PAN) was entered. Valid values are `AUTO_ENTRY`, `BAR_CODE`, `CONTACTLESS`,
277
+ # `ECOMMERCE`, `ERROR_KEYED`, `ERROR_MAGNETIC_STRIPE`, `ICC`, `KEY_ENTERED`,
278
+ # `MAGNETIC_STRIPE`, `MANUAL`, `OCR`, `SECURE_CARDLESS`, `UNSPECIFIED`,
279
+ # `UNKNOWN`, `CREDENTIAL_ON_FILE`, or `ECOMMERCE`.
280
+ # - `TRANSACTION_AMOUNT`: The base transaction amount (in cents) plus the acquirer
281
+ # fee field in the settlement/cardholder billing currency. This is the amount
282
+ # the issuer should authorize against unless the issuer is paying the acquirer
283
+ # fee on behalf of the cardholder. Use an integer value.
284
+ # - `CASH_AMOUNT`: The cash amount of the transaction in minor units (cents). This
285
+ # represents the amount of cash being withdrawn or advanced. Use an integer
286
+ # value.
287
+ # - `RISK_SCORE`: Network-provided score assessing risk level associated with a
288
+ # given authorization. Scores are on a range of 0-999, with 0 representing the
289
+ # lowest risk and 999 representing the highest risk. For Visa transactions,
290
+ # where the raw score has a range of 0-99, Lithic will normalize the score by
291
+ # multiplying the raw score by 10x. Use an integer value.
292
+ # - `CARD_TRANSACTION_COUNT_15M`: The number of transactions on the card in the
293
+ # trailing 15 minutes before the authorization. Use an integer value.
294
+ # - `CARD_TRANSACTION_COUNT_1H`: The number of transactions on the card in the
295
+ # trailing hour up and until the authorization. Use an integer value.
296
+ # - `CARD_TRANSACTION_COUNT_24H`: The number of transactions on the card in the
297
+ # trailing 24 hours up and until the authorization. Use an integer value.
298
+ # - `CARD_DECLINE_COUNT_15M`: The number of declined transactions on the card in
299
+ # the trailing 15 minutes before the authorization. Use an integer value.
300
+ # - `CARD_DECLINE_COUNT_1H`: The number of declined transactions on the card in
301
+ # the trailing hour up and until the authorization. Use an integer value.
302
+ # - `CARD_DECLINE_COUNT_24H`: The number of declined transactions on the card in
303
+ # the trailing 24 hours up and until the authorization. Use an integer value.
304
+ # - `CARD_STATE`: The current state of the card associated with the transaction.
305
+ # Valid values are `CLOSED`, `OPEN`, `PAUSED`, `PENDING_ACTIVATION`,
306
+ # `PENDING_FULFILLMENT`.
307
+ # - `PIN_ENTERED`: Indicates whether a PIN was entered during the transaction.
308
+ # Valid values are `TRUE`, `FALSE`.
309
+ # - `PIN_STATUS`: The current state of card's PIN. Valid values are `NOT_SET`,
310
+ # `OK`, `BLOCKED`.
311
+ # - `WALLET_TYPE`: For transactions using a digital wallet token, indicates the
312
+ # source of the token. Valid values are `APPLE_PAY`, `GOOGLE_PAY`,
313
+ # `SAMSUNG_PAY`, `MASTERPASS`, `MERCHANT`, `OTHER`, `NONE`.
314
+ # - `TRANSACTION_INITIATOR`: The entity that initiated the transaction indicates
315
+ # the source of the token. Valid values are `CARDHOLDER`, `MERCHANT`, `UNKNOWN`.
316
+ # - `ADDRESS_MATCH`: Lithic's evaluation result comparing transaction's address
317
+ # data with the cardholder KYC data if it exists. Valid values are `MATCH`,
318
+ # `MATCH_ADDRESS_ONLY`, `MATCH_ZIP_ONLY`,`MISMATCH`,`NOT_PRESENT`.
319
+ # - `SERVICE_LOCATION_STATE`: The state/province code (ISO 3166-2) where the
320
+ # cardholder received the service, e.g. "NY". When a service location is present
321
+ # in the network data, the service location state is used. Otherwise, falls back
322
+ # to the card acceptor state.
323
+ # - `SERVICE_LOCATION_POSTAL_CODE`: The postal code where the cardholder received
324
+ # the service, e.g. "10001". When a service location is present in the network
325
+ # data, the service location postal code is used. Otherwise, falls back to the
326
+ # card acceptor postal code.
327
+ # - `CARD_AGE`: The age of the card in seconds at the time of the authorization.
328
+ # Use an integer value.
329
+ # - `ACCOUNT_AGE`: The age of the account holder's account in seconds at the time
330
+ # of the authorization. Use an integer value. For programs where Lithic does not
331
+ # manage or retain account holder data, this attribute does not evaluate.
332
+ # - `AMOUNT_Z_SCORE`: The z-score of the transaction amount relative to the
333
+ # entity's transaction history. Null if fewer than 30 approved transactions in
334
+ # the specified window. Requires `parameters.scope` and `parameters.interval`.
335
+ # Use a decimal value.
336
+ # - `AVG_TRANSACTION_AMOUNT`: The average approved transaction amount for the
337
+ # entity over the specified window, in cents. Requires `parameters.scope` and
338
+ # `parameters.interval`. Use a decimal value.
339
+ # - `STDEV_TRANSACTION_AMOUNT`: The standard deviation of approved transaction
340
+ # amounts for the entity over the specified window, in cents. Null if fewer than
341
+ # 30 approved transactions in the specified window. Requires `parameters.scope`
342
+ # and `parameters.interval`. Use a decimal value.
343
+ # - `IS_NEW_COUNTRY`: Whether the transaction's merchant country has not been seen
344
+ # in the entity's transaction history. Valid values are `TRUE`, `FALSE`.
345
+ # Requires `parameters.scope`.
346
+ # - `IS_NEW_MCC`: Whether the transaction's MCC has not been seen in the entity's
347
+ # transaction history. Valid values are `TRUE`, `FALSE`. Requires
348
+ # `parameters.scope`.
349
+ # - `IS_FIRST_TRANSACTION`: Whether this is the first transaction for the entity.
350
+ # Valid values are `TRUE`, `FALSE`. Requires `parameters.scope`.
351
+ # - `CONSECUTIVE_DECLINES`: The number of consecutive declined transactions for
352
+ # the entity over the last 30 days (rolling). Requires `parameters.scope`. Not
353
+ # supported for `BUSINESS_ACCOUNT` scope. Use an integer value.
354
+ # - `TIME_SINCE_LAST_TRANSACTION`: The number of days since the last approved
355
+ # transaction for the entity, rounded to the nearest whole day. Requires
356
+ # `parameters.scope`. Use an integer value.
357
+ # - `DISTINCT_COUNTRY_COUNT`: The number of distinct merchant countries seen in
358
+ # the entity's transaction history. Requires `parameters.scope`. Use an integer
359
+ # value.
360
+ # - `IS_NEW_MERCHANT`: Whether the card acceptor ID has not been seen in the
361
+ # card's approved transaction history (capped at the 1000 most recently seen
362
+ # merchants). Valid values are `TRUE`, `FALSE`. Card-scoped only; no
363
+ # `parameters` required.
364
+ # - `THREE_DS_SUCCESS_RATE`: The 3DS authentication success rate for the card, as
365
+ # a percentage from 0.0 to 100.0. Card-scoped only; no `parameters` required.
366
+ # Use a decimal value.
367
+ # - `TRAVEL_SPEED`: The estimated speed of travel derived from the distance
368
+ # between the postal code centers of the last card-present transaction and the
369
+ # current transaction, divided by the elapsed time. Null if there is no prior
370
+ # card-present transaction, if either postal code cannot be geocoded, or if
371
+ # elapsed time is zero. Requires `parameters.unit` set to `MPH` or `KPH`. Use a
372
+ # decimal value.
373
+ # - `DISTANCE_FROM_LAST_TRANSACTION`: The estimated distance between the postal
374
+ # code centers of the last card-present transaction and the current transaction.
375
+ # Null if there is no prior card-present transaction or if either postal code
376
+ # cannot be geocoded. Requires `parameters.unit` set to `MILES` or `KILOMETERS`.
377
+ # Use a decimal value.
378
+ #
379
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition#attribute
380
+ module Attribute
381
+ extend Lithic::Internal::Type::Enum
382
+
383
+ MCC = :MCC
384
+ COUNTRY = :COUNTRY
385
+ CURRENCY = :CURRENCY
386
+ MERCHANT_ID = :MERCHANT_ID
387
+ DESCRIPTOR = :DESCRIPTOR
388
+ LIABILITY_SHIFT = :LIABILITY_SHIFT
389
+ PAN_ENTRY_MODE = :PAN_ENTRY_MODE
390
+ TRANSACTION_AMOUNT = :TRANSACTION_AMOUNT
391
+ CASH_AMOUNT = :CASH_AMOUNT
392
+ RISK_SCORE = :RISK_SCORE
393
+ CARD_TRANSACTION_COUNT_15_M = :CARD_TRANSACTION_COUNT_15M
394
+ CARD_TRANSACTION_COUNT_1_H = :CARD_TRANSACTION_COUNT_1H
395
+ CARD_TRANSACTION_COUNT_24_H = :CARD_TRANSACTION_COUNT_24H
396
+ CARD_DECLINE_COUNT_15_M = :CARD_DECLINE_COUNT_15M
397
+ CARD_DECLINE_COUNT_1_H = :CARD_DECLINE_COUNT_1H
398
+ CARD_DECLINE_COUNT_24_H = :CARD_DECLINE_COUNT_24H
399
+ CARD_STATE = :CARD_STATE
400
+ PIN_ENTERED = :PIN_ENTERED
401
+ PIN_STATUS = :PIN_STATUS
402
+ WALLET_TYPE = :WALLET_TYPE
403
+ TRANSACTION_INITIATOR = :TRANSACTION_INITIATOR
404
+ ADDRESS_MATCH = :ADDRESS_MATCH
405
+ SERVICE_LOCATION_STATE = :SERVICE_LOCATION_STATE
406
+ SERVICE_LOCATION_POSTAL_CODE = :SERVICE_LOCATION_POSTAL_CODE
407
+ CARD_AGE = :CARD_AGE
408
+ ACCOUNT_AGE = :ACCOUNT_AGE
409
+ AMOUNT_Z_SCORE = :AMOUNT_Z_SCORE
410
+ AVG_TRANSACTION_AMOUNT = :AVG_TRANSACTION_AMOUNT
411
+ STDEV_TRANSACTION_AMOUNT = :STDEV_TRANSACTION_AMOUNT
412
+ IS_NEW_COUNTRY = :IS_NEW_COUNTRY
413
+ IS_NEW_MCC = :IS_NEW_MCC
414
+ IS_FIRST_TRANSACTION = :IS_FIRST_TRANSACTION
415
+ CONSECUTIVE_DECLINES = :CONSECUTIVE_DECLINES
416
+ TIME_SINCE_LAST_TRANSACTION = :TIME_SINCE_LAST_TRANSACTION
417
+ DISTINCT_COUNTRY_COUNT = :DISTINCT_COUNTRY_COUNT
418
+ IS_NEW_MERCHANT = :IS_NEW_MERCHANT
419
+ THREE_DS_SUCCESS_RATE = :THREE_DS_SUCCESS_RATE
420
+ TRAVEL_SPEED = :TRAVEL_SPEED
421
+ DISTANCE_FROM_LAST_TRANSACTION = :DISTANCE_FROM_LAST_TRANSACTION
422
+
423
+ # @!method self.values
424
+ # @return [Array<Symbol>]
425
+ end
426
+
427
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition#parameters
428
+ class Parameters < Lithic::Internal::Type::BaseModel
429
+ # @!attribute interval
430
+ # The time window for statistical attributes (`AMOUNT_Z_SCORE`,
431
+ # `AVG_TRANSACTION_AMOUNT`, `STDEV_TRANSACTION_AMOUNT`). Use `LIFETIME` for
432
+ # all-time history or a specific window (`7D`, `30D`, `90D`).
433
+ #
434
+ # @return [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters::Interval, nil]
435
+ optional :interval,
436
+ enum: -> { Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters::Interval }
437
+
438
+ # @!attribute scope
439
+ # The entity scope to evaluate the attribute against.
440
+ #
441
+ # @return [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters::Scope, nil]
442
+ optional :scope,
443
+ enum: -> { Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters::Scope }
444
+
445
+ # @!attribute unit
446
+ # The unit for impossible travel attributes. Required when `attribute` is
447
+ # `TRAVEL_SPEED` or `DISTANCE_FROM_LAST_TRANSACTION`.
448
+ #
449
+ # For `TRAVEL_SPEED`: `MPH` (miles per hour) or `KPH` (kilometers per hour).
450
+ #
451
+ # For `DISTANCE_FROM_LAST_TRANSACTION`: `MILES` or `KILOMETERS`.
452
+ #
453
+ # @return [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters::Unit, nil]
454
+ optional :unit,
455
+ enum: -> { Lithic::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters::Unit }
456
+
457
+ # @!method initialize(interval: nil, scope: nil, unit: nil)
458
+ # Some parameter documentations has been truncated, see
459
+ # {Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters}
460
+ # for more details.
461
+ #
462
+ # Additional parameters for certain attributes. Required when `attribute` is one
463
+ # of `AMOUNT_Z_SCORE`, `AVG_TRANSACTION_AMOUNT`, `STDEV_TRANSACTION_AMOUNT`,
464
+ # `IS_NEW_COUNTRY`, `IS_NEW_MCC`, `IS_FIRST_TRANSACTION`, `CONSECUTIVE_DECLINES`,
465
+ # `TIME_SINCE_LAST_TRANSACTION`, or `DISTINCT_COUNTRY_COUNT` (require `scope`); or
466
+ # `TRAVEL_SPEED` or `DISTANCE_FROM_LAST_TRANSACTION` (require `unit`). Not used
467
+ # for other attributes.
468
+ #
469
+ # @param interval [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters::Interval] The time window for statistical attributes (`AMOUNT_Z_SCORE`, `AVG_TRANSACTION_A
470
+ #
471
+ # @param scope [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters::Scope] The entity scope to evaluate the attribute against.
472
+ #
473
+ # @param unit [Symbol, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters::Unit] The unit for impossible travel attributes. Required when `attribute` is
474
+ # `TRAVEL\_
475
+
476
+ # The time window for statistical attributes (`AMOUNT_Z_SCORE`,
477
+ # `AVG_TRANSACTION_AMOUNT`, `STDEV_TRANSACTION_AMOUNT`). Use `LIFETIME` for
478
+ # all-time history or a specific window (`7D`, `30D`, `90D`).
479
+ #
480
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters#interval
481
+ module Interval
482
+ extend Lithic::Internal::Type::Enum
483
+
484
+ LIFETIME = :LIFETIME
485
+ INTERVAL_7_D = :"7D"
486
+ INTERVAL_30_D = :"30D"
487
+ INTERVAL_90_D = :"90D"
488
+
489
+ # @!method self.values
490
+ # @return [Array<Symbol>]
491
+ end
492
+
493
+ # The entity scope to evaluate the attribute against.
494
+ #
495
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters#scope
496
+ module Scope
497
+ extend Lithic::Internal::Type::Enum
498
+
499
+ CARD = :CARD
500
+ ACCOUNT = :ACCOUNT
501
+ BUSINESS_ACCOUNT = :BUSINESS_ACCOUNT
502
+
503
+ # @!method self.values
504
+ # @return [Array<Symbol>]
505
+ end
506
+
507
+ # The unit for impossible travel attributes. Required when `attribute` is
508
+ # `TRAVEL_SPEED` or `DISTANCE_FROM_LAST_TRANSACTION`.
509
+ #
510
+ # For `TRAVEL_SPEED`: `MPH` (miles per hour) or `KPH` (kilometers per hour).
511
+ #
512
+ # For `DISTANCE_FROM_LAST_TRANSACTION`: `MILES` or `KILOMETERS`.
513
+ #
514
+ # @see Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters::Condition::Parameters#unit
515
+ module Unit
516
+ extend Lithic::Internal::Type::Enum
517
+
518
+ MPH = :MPH
519
+ KPH = :KPH
520
+ MILES = :MILES
521
+ KILOMETERS = :KILOMETERS
522
+
523
+ # @!method self.values
524
+ # @return [Array<Symbol>]
525
+ end
526
+ end
527
+ end
528
+ end
529
+ end
530
+ end
531
+ end