lithic 0.20.0 → 0.22.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 (266) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +44 -0
  3. data/README.md +1 -10
  4. data/lib/lithic/internal/type/union.rb +21 -7
  5. data/lib/lithic/models/account_activity_list_params.rb +1 -0
  6. data/lib/lithic/models/account_activity_list_response.rb +1 -0
  7. data/lib/lithic/models/account_activity_retrieve_transaction_response.rb +1 -0
  8. data/lib/lithic/models/account_holder_create_params.rb +4 -2
  9. data/lib/lithic/models/account_holder_simulate_enrollment_review_response.rb +120 -66
  10. data/lib/lithic/models/account_holder_update_params.rb +6 -3
  11. data/lib/lithic/models/account_holder_update_response.rb +156 -86
  12. data/lib/lithic/models/account_holder_updated_webhook_event.rb +120 -66
  13. data/lib/lithic/models/account_holders/account_holder_entity.rb +35 -19
  14. data/lib/lithic/models/account_holders/entity_create_params.rb +39 -21
  15. data/lib/lithic/models/address.rb +33 -19
  16. data/lib/lithic/models/address_update.rb +27 -11
  17. data/lib/lithic/models/auth_rules/auth_rule.rb +60 -27
  18. data/lib/lithic/models/auth_rules/auth_rule_condition.rb +189 -6
  19. data/lib/lithic/models/auth_rules/auth_rule_entities.rb +47 -0
  20. data/lib/lithic/models/auth_rules/auth_rule_entities_response.rb +31 -0
  21. data/lib/lithic/models/auth_rules/auth_rule_entity.rb +150 -0
  22. data/lib/lithic/models/auth_rules/auth_rule_version.rb +3 -6
  23. data/lib/lithic/models/auth_rules/conditional_3ds_action_parameters.rb +33 -6
  24. data/lib/lithic/models/auth_rules/conditional_attribute.rb +101 -5
  25. data/lib/lithic/models/auth_rules/conditional_authorization_action_parameters.rb +3 -439
  26. data/lib/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rb +7 -0
  27. data/lib/lithic/models/auth_rules/merchant_lock_parameters.rb +11 -1
  28. data/lib/lithic/models/auth_rules/report_stats.rb +1 -0
  29. data/lib/lithic/models/auth_rules/v2_create_params.rb +218 -45
  30. data/lib/lithic/models/auth_rules/v2_draft_params.rb +3 -6
  31. data/lib/lithic/models/auth_rules/v2_list_params.rb +5 -3
  32. data/lib/lithic/models/auth_rules/v2_list_results_response.rb +1 -0
  33. data/lib/lithic/models/auth_rules/v2_update_entities_params.rb +39 -0
  34. data/lib/lithic/models/auth_rules/v2_update_params.rb +133 -12
  35. data/lib/lithic/models/blockchain_recipient_retrieve_params.rb +20 -0
  36. data/lib/lithic/models/card_authorization.rb +11 -1
  37. data/lib/lithic/models/card_create_params.rb +11 -1
  38. data/lib/lithic/models/card_pin_updated_webhook_event.rb +87 -0
  39. data/lib/lithic/models/card_update_params.rb +12 -1
  40. data/lib/lithic/models/event.rb +5 -0
  41. data/lib/lithic/models/event_list_params.rb +3 -0
  42. data/lib/lithic/models/event_subscription.rb +3 -0
  43. data/lib/lithic/models/events/subscription_create_params.rb +3 -0
  44. data/lib/lithic/models/events/subscription_send_simulated_example_params.rb +1 -0
  45. data/lib/lithic/models/events/subscription_update_params.rb +3 -0
  46. data/lib/lithic/models/external_payment.rb +6 -0
  47. data/lib/lithic/models/external_payment_create_params.rb +1 -0
  48. data/lib/lithic/models/external_payment_list_params.rb +1 -0
  49. data/lib/lithic/models/financial_accounts/installment_plan.rb +311 -0
  50. data/lib/lithic/models/financial_accounts/installment_plan_list_params.rb +75 -0
  51. data/lib/lithic/models/financial_accounts/installment_plan_retrieve_params.rb +32 -0
  52. data/lib/lithic/models/financial_accounts/installment_plans/installment_plan_statement.rb +279 -0
  53. data/lib/lithic/models/financial_accounts/installment_plans/statement_list_params.rb +106 -0
  54. data/lib/lithic/models/financial_accounts/installment_plans/statement_retrieve_params.rb +42 -0
  55. data/lib/lithic/models/financial_accounts/loan_tape.rb +62 -1
  56. data/lib/lithic/models/financial_accounts/open_to_buy.rb +36 -0
  57. data/lib/lithic/models/financial_accounts/open_to_buy_retrieve_params.rb +22 -0
  58. data/lib/lithic/models/financial_accounts/open_to_buy_summary.rb +46 -0
  59. data/lib/lithic/models/financial_accounts/statements/statement_line_items.rb +10 -0
  60. data/lib/lithic/models/financial_accounts/transaction_category_balances.rb +34 -0
  61. data/lib/lithic/models/financial_event.rb +9 -0
  62. data/lib/lithic/models/kyb.rb +4 -2
  63. data/lib/lithic/models/kyb_business_entity.rb +35 -19
  64. data/lib/lithic/models/kyc.rb +2 -1
  65. data/lib/lithic/models/management_operation_create_params.rb +4 -0
  66. data/lib/lithic/models/management_operation_transaction.rb +4 -0
  67. data/lib/lithic/models/non_pci_card.rb +11 -1
  68. data/lib/lithic/models/parsed_webhook_event.rb +123 -67
  69. data/lib/lithic/models/payment.rb +3 -1
  70. data/lib/lithic/models/payment_create_stablecoin_params.rb +99 -0
  71. data/lib/lithic/models/payment_create_stablecoin_response.rb +19 -0
  72. data/lib/lithic/models/payment_list_params.rb +1 -0
  73. data/lib/lithic/models/payment_retry_params.rb +28 -1
  74. data/lib/lithic/models/payment_simulate_action_params.rb +1 -0
  75. data/lib/lithic/models/three_ds_authentication.rb +126 -1
  76. data/lib/lithic/models/transaction.rb +4 -1
  77. data/lib/lithic/models/transaction_simulate_authorization_params.rb +28 -4
  78. data/lib/lithic/models/transaction_simulate_credit_authorization_advice_params.rb +11 -1
  79. data/lib/lithic/models/transaction_simulate_return_params.rb +24 -1
  80. data/lib/lithic/models.rb +6 -0
  81. data/lib/lithic/resources/auth_rules/v2/backtests.rb +8 -8
  82. data/lib/lithic/resources/auth_rules/v2.rb +44 -8
  83. data/lib/lithic/resources/blockchain_recipients.rb +23 -0
  84. data/lib/lithic/resources/cards.rb +10 -4
  85. data/lib/lithic/resources/financial_accounts/installment_plans/statements.rb +107 -0
  86. data/lib/lithic/resources/financial_accounts/installment_plans.rb +86 -0
  87. data/lib/lithic/resources/financial_accounts/open_to_buy.rb +48 -0
  88. data/lib/lithic/resources/financial_accounts.rb +8 -0
  89. data/lib/lithic/resources/payments.rb +71 -3
  90. data/lib/lithic/resources/transactions.rb +17 -4
  91. data/lib/lithic/resources/webhooks.rb +18 -0
  92. data/lib/lithic/version.rb +1 -1
  93. data/lib/lithic.rb +21 -1
  94. data/rbi/lithic/models/account_activity_list_params.rbi +5 -0
  95. data/rbi/lithic/models/account_activity_list_response.rbi +5 -0
  96. data/rbi/lithic/models/account_activity_retrieve_transaction_response.rbi +5 -0
  97. data/rbi/lithic/models/account_holder_create_params.rbi +8 -4
  98. data/rbi/lithic/models/account_holder_simulate_enrollment_review_response.rbi +195 -90
  99. data/rbi/lithic/models/account_holder_update_params.rbi +12 -6
  100. data/rbi/lithic/models/account_holder_update_response.rbi +254 -117
  101. data/rbi/lithic/models/account_holder_updated_webhook_event.rbi +195 -90
  102. data/rbi/lithic/models/account_holders/account_holder_entity.rbi +59 -27
  103. data/rbi/lithic/models/account_holders/entity_create_params.rbi +65 -30
  104. data/rbi/lithic/models/address.rbi +57 -29
  105. data/rbi/lithic/models/address_update.rbi +50 -24
  106. data/rbi/lithic/models/auth_rules/auth_rule.rbi +60 -19
  107. data/rbi/lithic/models/auth_rules/auth_rule_condition.rbi +442 -13
  108. data/rbi/lithic/models/auth_rules/auth_rule_entities.rbi +163 -0
  109. data/rbi/lithic/models/auth_rules/auth_rule_entities_response.rbi +72 -0
  110. data/rbi/lithic/models/auth_rules/auth_rule_entity.rbi +199 -0
  111. data/rbi/lithic/models/auth_rules/auth_rule_version.rbi +0 -2
  112. data/rbi/lithic/models/auth_rules/conditional_3ds_action_parameters.rbi +67 -9
  113. data/rbi/lithic/models/auth_rules/conditional_attribute.rbi +193 -5
  114. data/rbi/lithic/models/auth_rules/conditional_authorization_action_parameters.rbi +3 -939
  115. data/rbi/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rbi +14 -0
  116. data/rbi/lithic/models/auth_rules/merchant_lock_parameters.rbi +14 -3
  117. data/rbi/lithic/models/auth_rules/report_stats.rbi +5 -0
  118. data/rbi/lithic/models/auth_rules/v2_create_params.rbi +358 -50
  119. data/rbi/lithic/models/auth_rules/v2_draft_params.rbi +0 -4
  120. data/rbi/lithic/models/auth_rules/v2_list_params.rbi +6 -3
  121. data/rbi/lithic/models/auth_rules/v2_list_results_response.rbi +5 -0
  122. data/rbi/lithic/models/auth_rules/v2_update_entities_params.rbi +68 -0
  123. data/rbi/lithic/models/auth_rules/v2_update_params.rbi +198 -5
  124. data/rbi/lithic/models/blockchain_recipient_retrieve_params.rbi +41 -0
  125. data/rbi/lithic/models/card_authorization.rbi +12 -0
  126. data/rbi/lithic/models/card_create_params.rbi +15 -0
  127. data/rbi/lithic/models/card_pin_updated_webhook_event.rbi +166 -0
  128. data/rbi/lithic/models/card_update_params.rbi +17 -0
  129. data/rbi/lithic/models/event.rbi +8 -0
  130. data/rbi/lithic/models/event_list_params.rbi +7 -0
  131. data/rbi/lithic/models/event_subscription.rbi +7 -0
  132. data/rbi/lithic/models/events/subscription_create_params.rbi +7 -0
  133. data/rbi/lithic/models/events/subscription_send_simulated_example_params.rbi +5 -0
  134. data/rbi/lithic/models/events/subscription_update_params.rbi +7 -0
  135. data/rbi/lithic/models/external_payment.rbi +30 -0
  136. data/rbi/lithic/models/external_payment_create_params.rbi +5 -0
  137. data/rbi/lithic/models/external_payment_list_params.rbi +5 -0
  138. data/rbi/lithic/models/financial_accounts/installment_plan.rbi +528 -0
  139. data/rbi/lithic/models/financial_accounts/installment_plan_list_params.rbi +155 -0
  140. data/rbi/lithic/models/financial_accounts/installment_plan_retrieve_params.rbi +56 -0
  141. data/rbi/lithic/models/financial_accounts/installment_plans/installment_plan_statement.rbi +452 -0
  142. data/rbi/lithic/models/financial_accounts/installment_plans/statement_list_params.rbi +191 -0
  143. data/rbi/lithic/models/financial_accounts/installment_plans/statement_retrieve_params.rbi +66 -0
  144. data/rbi/lithic/models/financial_accounts/loan_tape.rbi +119 -0
  145. data/rbi/lithic/models/financial_accounts/open_to_buy.rbi +64 -0
  146. data/rbi/lithic/models/financial_accounts/open_to_buy_retrieve_params.rbi +43 -0
  147. data/rbi/lithic/models/financial_accounts/open_to_buy_summary.rbi +73 -0
  148. data/rbi/lithic/models/financial_accounts/statements/statement_line_items.rbi +50 -0
  149. data/rbi/lithic/models/financial_accounts/transaction_category_balances.rbi +81 -0
  150. data/rbi/lithic/models/financial_event.rbi +35 -0
  151. data/rbi/lithic/models/kyb.rbi +8 -4
  152. data/rbi/lithic/models/kyb_business_entity.rbi +59 -27
  153. data/rbi/lithic/models/kyc.rbi +4 -2
  154. data/rbi/lithic/models/management_operation_create_params.rbi +20 -0
  155. data/rbi/lithic/models/management_operation_transaction.rbi +20 -0
  156. data/rbi/lithic/models/non_pci_card.rbi +12 -0
  157. data/rbi/lithic/models/parsed_webhook_event.rbi +196 -90
  158. data/rbi/lithic/models/payment.rbi +6 -2
  159. data/rbi/lithic/models/payment_create_stablecoin_params.rbi +162 -0
  160. data/rbi/lithic/models/payment_create_stablecoin_response.rbi +34 -0
  161. data/rbi/lithic/models/payment_list_params.rbi +2 -0
  162. data/rbi/lithic/models/payment_retry_params.rbi +47 -2
  163. data/rbi/lithic/models/payment_simulate_action_params.rbi +5 -0
  164. data/rbi/lithic/models/three_ds_authentication.rbi +292 -0
  165. data/rbi/lithic/models/transaction.rbi +14 -2
  166. data/rbi/lithic/models/transaction_simulate_authorization_params.rbi +42 -4
  167. data/rbi/lithic/models/transaction_simulate_credit_authorization_advice_params.rbi +15 -0
  168. data/rbi/lithic/models/transaction_simulate_return_params.rbi +30 -0
  169. data/rbi/lithic/models.rbi +7 -0
  170. data/rbi/lithic/resources/account_holders/entities.rbi +2 -1
  171. data/rbi/lithic/resources/auth_rules/v2/backtests.rbi +8 -8
  172. data/rbi/lithic/resources/auth_rules/v2.rbi +43 -8
  173. data/rbi/lithic/resources/blockchain_recipients.rbi +14 -0
  174. data/rbi/lithic/resources/cards.rbi +15 -2
  175. data/rbi/lithic/resources/financial_accounts/installment_plans/statements.rbi +86 -0
  176. data/rbi/lithic/resources/financial_accounts/installment_plans.rbi +73 -0
  177. data/rbi/lithic/resources/financial_accounts/open_to_buy.rbi +40 -0
  178. data/rbi/lithic/resources/financial_accounts.rbi +6 -0
  179. data/rbi/lithic/resources/payments.rbi +68 -2
  180. data/rbi/lithic/resources/transactions.rbi +31 -2
  181. data/rbi/lithic/resources/webhooks.rbi +1 -0
  182. data/sig/lithic/models/account_activity_list_params.rbs +2 -0
  183. data/sig/lithic/models/account_activity_list_response.rbs +2 -0
  184. data/sig/lithic/models/account_activity_retrieve_transaction_response.rbs +2 -0
  185. data/sig/lithic/models/account_holder_simulate_enrollment_review_response.rbs +39 -39
  186. data/sig/lithic/models/account_holder_update_response.rbs +52 -52
  187. data/sig/lithic/models/account_holder_updated_webhook_event.rbs +39 -39
  188. data/sig/lithic/models/account_holders/account_holder_entity.rbs +13 -13
  189. data/sig/lithic/models/account_holders/entity_create_params.rbs +13 -13
  190. data/sig/lithic/models/address.rbs +13 -13
  191. data/sig/lithic/models/address_update.rbs +8 -12
  192. data/sig/lithic/models/auth_rules/auth_rule.rbs +10 -7
  193. data/sig/lithic/models/auth_rules/auth_rule_condition.rbs +89 -3
  194. data/sig/lithic/models/auth_rules/auth_rule_entities.rbs +37 -0
  195. data/sig/lithic/models/auth_rules/auth_rule_entities_response.rbs +29 -0
  196. data/sig/lithic/models/auth_rules/auth_rule_entity.rbs +80 -0
  197. data/sig/lithic/models/auth_rules/auth_rule_version.rbs +1 -2
  198. data/sig/lithic/models/auth_rules/conditional_3ds_action_parameters.rbs +10 -0
  199. data/sig/lithic/models/auth_rules/conditional_attribute.rbs +46 -0
  200. data/sig/lithic/models/auth_rules/conditional_authorization_action_parameters.rbs +4 -204
  201. data/sig/lithic/models/auth_rules/conditional_authorization_adjustment_parameters.rbs +2 -0
  202. data/sig/lithic/models/auth_rules/merchant_lock_parameters.rbs +10 -3
  203. data/sig/lithic/models/auth_rules/report_stats.rbs +2 -0
  204. data/sig/lithic/models/auth_rules/v2_create_params.rbs +92 -16
  205. data/sig/lithic/models/auth_rules/v2_draft_params.rbs +1 -2
  206. data/sig/lithic/models/auth_rules/v2_list_results_response.rbs +2 -0
  207. data/sig/lithic/models/auth_rules/v2_update_entities_params.rbs +46 -0
  208. data/sig/lithic/models/auth_rules/v2_update_params.rbs +47 -1
  209. data/sig/lithic/models/blockchain_recipient_retrieve_params.rbs +24 -0
  210. data/sig/lithic/models/card_authorization.rbs +5 -0
  211. data/sig/lithic/models/card_create_params.rbs +7 -0
  212. data/sig/lithic/models/card_pin_updated_webhook_event.rbs +60 -0
  213. data/sig/lithic/models/card_update_params.rbs +8 -1
  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_payment.rbs +12 -0
  221. data/sig/lithic/models/external_payment_create_params.rbs +2 -0
  222. data/sig/lithic/models/external_payment_list_params.rbs +2 -0
  223. data/sig/lithic/models/financial_accounts/installment_plan.rbs +227 -0
  224. data/sig/lithic/models/financial_accounts/installment_plan_list_params.rbs +69 -0
  225. data/sig/lithic/models/financial_accounts/installment_plan_retrieve_params.rbs +30 -0
  226. data/sig/lithic/models/financial_accounts/installment_plans/installment_plan_statement.rbs +191 -0
  227. data/sig/lithic/models/financial_accounts/installment_plans/statement_list_params.rbs +90 -0
  228. data/sig/lithic/models/financial_accounts/installment_plans/statement_retrieve_params.rbs +40 -0
  229. data/sig/lithic/models/financial_accounts/loan_tape.rbs +47 -0
  230. data/sig/lithic/models/financial_accounts/open_to_buy.rbs +27 -0
  231. data/sig/lithic/models/financial_accounts/open_to_buy_retrieve_params.rbs +26 -0
  232. data/sig/lithic/models/financial_accounts/open_to_buy_summary.rbs +32 -0
  233. data/sig/lithic/models/financial_accounts/statements/statement_line_items.rbs +20 -0
  234. data/sig/lithic/models/financial_accounts/transaction_category_balances.rbs +32 -0
  235. data/sig/lithic/models/financial_event.rbs +18 -0
  236. data/sig/lithic/models/kyb_business_entity.rbs +13 -13
  237. data/sig/lithic/models/management_operation_create_params.rbs +8 -0
  238. data/sig/lithic/models/management_operation_transaction.rbs +8 -0
  239. data/sig/lithic/models/non_pci_card.rbs +5 -0
  240. data/sig/lithic/models/parsed_webhook_event.rbs +40 -39
  241. data/sig/lithic/models/payment.rbs +2 -0
  242. data/sig/lithic/models/payment_create_stablecoin_params.rbs +84 -0
  243. data/sig/lithic/models/payment_create_stablecoin_response.rbs +15 -0
  244. data/sig/lithic/models/payment_list_params.rbs +2 -1
  245. data/sig/lithic/models/payment_retry_params.rbs +24 -1
  246. data/sig/lithic/models/payment_simulate_action_params.rbs +2 -0
  247. data/sig/lithic/models/three_ds_authentication.rbs +77 -0
  248. data/sig/lithic/models/transaction.rbs +4 -0
  249. data/sig/lithic/models/transaction_simulate_authorization_params.rbs +14 -0
  250. data/sig/lithic/models/transaction_simulate_credit_authorization_advice_params.rbs +7 -0
  251. data/sig/lithic/models/transaction_simulate_return_params.rbs +19 -1
  252. data/sig/lithic/models.rbs +6 -0
  253. data/sig/lithic/resources/auth_rules/v2.rbs +7 -0
  254. data/sig/lithic/resources/blockchain_recipients.rbs +5 -0
  255. data/sig/lithic/resources/cards.rbs +2 -0
  256. data/sig/lithic/resources/financial_accounts/installment_plans/statements.rbs +30 -0
  257. data/sig/lithic/resources/financial_accounts/installment_plans.rbs +26 -0
  258. data/sig/lithic/resources/financial_accounts/open_to_buy.rbs +14 -0
  259. data/sig/lithic/resources/financial_accounts.rbs +4 -0
  260. data/sig/lithic/resources/payments.rbs +12 -0
  261. data/sig/lithic/resources/transactions.rbs +5 -0
  262. data/sig/lithic/resources/webhooks.rbs +1 -0
  263. metadata +65 -5
  264. data/lib/lithic/models/auth_rules/conditional_block_parameters.rb +0 -20
  265. data/rbi/lithic/models/auth_rules/conditional_block_parameters.rbi +0 -37
  266. data/sig/lithic/models/auth_rules/conditional_block_parameters.rbs +0 -20
@@ -0,0 +1,99 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ # @see Lithic::Resources::Payments#create_stablecoin
6
+ class PaymentCreateStablecoinParams < Lithic::Internal::Type::BaseModel
7
+ extend Lithic::Internal::Type::RequestParameters::Converter
8
+ include Lithic::Internal::Type::RequestParameters
9
+
10
+ # @!attribute amount
11
+ # Payout amount in cents
12
+ #
13
+ # @return [Integer]
14
+ required :amount, Integer
15
+
16
+ # @!attribute blockchain_recipient_token
17
+ # Token of the blockchain recipient to send the payout to. The recipient must be
18
+ # in the `ENABLED` verification state
19
+ #
20
+ # @return [String]
21
+ required :blockchain_recipient_token, String
22
+
23
+ # @!attribute financial_account_token
24
+ # Token of the financial account the payout is funded from
25
+ #
26
+ # @return [String]
27
+ required :financial_account_token, String
28
+
29
+ # @!attribute type
30
+ # Direction of the payment. Stablecoin supports payouts only
31
+ #
32
+ # @return [Symbol, Lithic::Models::PaymentCreateStablecoinParams::Type]
33
+ required :type, enum: -> { Lithic::PaymentCreateStablecoinParams::Type }
34
+
35
+ # @!attribute token
36
+ # Customer-provided token that will serve as an idempotency token. This token will
37
+ # become the transaction token
38
+ #
39
+ # @return [String, nil]
40
+ optional :token, String
41
+
42
+ # @!attribute hold
43
+ # Optional hold to settle when this payout is initiated
44
+ #
45
+ # @return [Lithic::Models::PaymentCreateStablecoinParams::Hold, nil]
46
+ optional :hold, -> { Lithic::PaymentCreateStablecoinParams::Hold }
47
+
48
+ # @!attribute memo
49
+ # Memo recorded on the payout. Defaults to `Stablecoin payout on <chain>` when
50
+ # omitted
51
+ #
52
+ # @return [String, nil]
53
+ optional :memo, String
54
+
55
+ # @!method initialize(amount:, blockchain_recipient_token:, financial_account_token:, type:, token: nil, hold: nil, memo: nil, request_options: {})
56
+ # Some parameter documentations has been truncated, see
57
+ # {Lithic::Models::PaymentCreateStablecoinParams} for more details.
58
+ #
59
+ # @param amount [Integer] Payout amount in cents
60
+ #
61
+ # @param blockchain_recipient_token [String] Token of the blockchain recipient to send the payout to. The recipient must be i
62
+ #
63
+ # @param financial_account_token [String] Token of the financial account the payout is funded from
64
+ #
65
+ # @param type [Symbol, Lithic::Models::PaymentCreateStablecoinParams::Type] Direction of the payment. Stablecoin supports payouts only
66
+ #
67
+ # @param token [String] Customer-provided token that will serve as an idempotency token. This token will
68
+ #
69
+ # @param hold [Lithic::Models::PaymentCreateStablecoinParams::Hold] Optional hold to settle when this payout is initiated
70
+ #
71
+ # @param memo [String] Memo recorded on the payout. Defaults to `Stablecoin payout on <chain>` when omi
72
+ #
73
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
74
+
75
+ # Direction of the payment. Stablecoin supports payouts only
76
+ module Type
77
+ extend Lithic::Internal::Type::Enum
78
+
79
+ PAYMENT = :PAYMENT
80
+
81
+ # @!method self.values
82
+ # @return [Array<Symbol>]
83
+ end
84
+
85
+ class Hold < Lithic::Internal::Type::BaseModel
86
+ # @!attribute token
87
+ # Token of the hold to settle when this payout is initiated
88
+ #
89
+ # @return [String]
90
+ required :token, String
91
+
92
+ # @!method initialize(token:)
93
+ # Optional hold to settle when this payout is initiated
94
+ #
95
+ # @param token [String] Token of the hold to settle when this payout is initiated
96
+ end
97
+ end
98
+ end
99
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Lithic
4
+ module Models
5
+ # @see Lithic::Resources::Payments#create_stablecoin
6
+ class PaymentCreateStablecoinResponse < Lithic::Models::Payment
7
+ # @!attribute balance
8
+ # Balance
9
+ #
10
+ # @return [Lithic::Models::Balance, nil]
11
+ optional :balance, -> { Lithic::Balance }
12
+
13
+ # @!method initialize(balance: nil)
14
+ # Payment transaction
15
+ #
16
+ # @param balance [Lithic::Models::Balance] Balance
17
+ end
18
+ end
19
+ end
@@ -103,6 +103,7 @@ module Lithic
103
103
  extend Lithic::Internal::Type::Enum
104
104
 
105
105
  ACH = :ACH
106
+ STABLECOIN = :STABLECOIN
106
107
 
107
108
  # @!method self.values
108
109
  # @return [Array<Symbol>]
@@ -12,9 +12,36 @@ module Lithic
12
12
  # @return [String]
13
13
  required :payment_token, String
14
14
 
15
- # @!method initialize(payment_token:, request_options: {})
15
+ # @!attribute method_
16
+ # Settlement speed to retry the payment at. Defaults to the original payment's
17
+ # method. An `ACH_SAME_DAY` retry is rejected if the payment is for $1,000,000.00
18
+ # or more, or if it is submitted after the same day ACH cutoff
19
+ #
20
+ # @return [Symbol, Lithic::Models::PaymentRetryParams::Method, nil]
21
+ optional :method_, enum: -> { Lithic::PaymentRetryParams::Method }, api_name: :method
22
+
23
+ # @!method initialize(payment_token:, method_: nil, request_options: {})
24
+ # Some parameter documentations has been truncated, see
25
+ # {Lithic::Models::PaymentRetryParams} for more details.
26
+ #
16
27
  # @param payment_token [String]
28
+ #
29
+ # @param method_ [Symbol, Lithic::Models::PaymentRetryParams::Method] Settlement speed to retry the payment at. Defaults to the original payment's met
30
+ #
17
31
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
32
+
33
+ # Settlement speed to retry the payment at. Defaults to the original payment's
34
+ # method. An `ACH_SAME_DAY` retry is rejected if the payment is for $1,000,000.00
35
+ # or more, or if it is submitted after the same day ACH cutoff
36
+ module Method
37
+ extend Lithic::Internal::Type::Enum
38
+
39
+ ACH_NEXT_DAY = :ACH_NEXT_DAY
40
+ ACH_SAME_DAY = :ACH_SAME_DAY
41
+
42
+ # @!method self.values
43
+ # @return [Array<Symbol>]
44
+ end
18
45
  end
19
46
  end
20
47
  end
@@ -71,6 +71,7 @@ module Lithic
71
71
  ACH_RETURN_INITIATED = :ACH_RETURN_INITIATED
72
72
  ACH_RETURN_PROCESSED = :ACH_RETURN_PROCESSED
73
73
  ACH_RETURN_SETTLED = :ACH_RETURN_SETTLED
74
+ STABLECOIN_REVIEWED = :STABLECOIN_REVIEWED
74
75
 
75
76
  # @!method self.values
76
77
  # @return [Array<Symbol>]
@@ -145,6 +145,14 @@ module Lithic
145
145
  # @return [Symbol, Lithic::Models::ThreeDSAuthentication::DecisionMadeBy, nil]
146
146
  optional :decision_made_by, enum: -> { Lithic::ThreeDSAuthentication::DecisionMadeBy }, nil?: true
147
147
 
148
+ # @!attribute psd2_context
149
+ # PSD2/SCA context for EEA and UK transactions. Present when Lithic determines the
150
+ # transaction is in scope for PSD2 Strong Customer Authentication. Absent for
151
+ # out-of-scope transactions.
152
+ #
153
+ # @return [Lithic::Models::ThreeDSAuthentication::Psd2Context, nil]
154
+ optional :psd2_context, -> { Lithic::ThreeDSAuthentication::Psd2Context }, nil?: true
155
+
148
156
  # @!attribute three_ri_request_type
149
157
  # Type of 3DS Requestor Initiated (3RI) request — i.e., a 3DS authentication that
150
158
  # takes place at the initiation of the merchant rather than the cardholder. The
@@ -164,7 +172,7 @@ module Lithic
164
172
  # @return [Lithic::Models::ThreeDSAuthentication::Transaction, nil]
165
173
  optional :transaction, -> { Lithic::ThreeDSAuthentication::Transaction }, nil?: true
166
174
 
167
- # @!method initialize(token:, account_type:, authentication_result:, card_expiry_check:, card_token:, cardholder:, channel:, created:, merchant:, message_category:, three_ds_requestor_challenge_indicator:, additional_data: nil, app: nil, authentication_request_type: nil, browser: nil, challenge_metadata: nil, challenge_orchestrated_by: nil, decision_made_by: nil, three_ri_request_type: nil, transaction: nil)
175
+ # @!method initialize(token:, account_type:, authentication_result:, card_expiry_check:, card_token:, cardholder:, channel:, created:, merchant:, message_category:, three_ds_requestor_challenge_indicator:, additional_data: nil, app: nil, authentication_request_type: nil, browser: nil, challenge_metadata: nil, challenge_orchestrated_by: nil, decision_made_by: nil, psd2_context: nil, three_ri_request_type: nil, transaction: nil)
168
176
  # Some parameter documentations has been truncated, see
169
177
  # {Lithic::Models::ThreeDSAuthentication} for more details.
170
178
  #
@@ -206,6 +214,8 @@ module Lithic
206
214
  #
207
215
  # @param decision_made_by [Symbol, Lithic::Models::ThreeDSAuthentication::DecisionMadeBy, nil] Entity that made the authentication decision. This won't be set for authenticati
208
216
  #
217
+ # @param psd2_context [Lithic::Models::ThreeDSAuthentication::Psd2Context, nil] PSD2/SCA context for EEA and UK transactions. Present when Lithic determines the
218
+ #
209
219
  # @param three_ri_request_type [Symbol, Lithic::Models::ThreeDSAuthentication::ThreeRiRequestType, nil] Type of 3DS Requestor Initiated (3RI) request — i.e., a 3DS authentication that
210
220
  #
211
221
  # @param transaction [Lithic::Models::ThreeDSAuthentication::Transaction, nil] Object containing data about the e-commerce transaction for which the merchant i
@@ -1142,6 +1152,121 @@ module Lithic
1142
1152
  # @return [Array<Symbol>]
1143
1153
  end
1144
1154
 
1155
+ # @see Lithic::Models::ThreeDSAuthentication#psd2_context
1156
+ class Psd2Context < Lithic::Internal::Type::BaseModel
1157
+ # @!attribute acquirer_exemption
1158
+ # SCA exemption declared by the acquirer in the 3DS authentication request.
1159
+ #
1160
+ # - `NONE` - No exemption claimed
1161
+ # - `TRANSACTION_RISK_ANALYSIS` - Transaction Risk Analysis (TRA) exemption;
1162
+ # acquirer asserts low fraud risk
1163
+ # - `LOW_VALUE` - Low-value payment exemption; transaction is below the EUR 30
1164
+ # threshold
1165
+ # - `RECURRING_PAYMENT` - Recurring payment with a fixed amount to the same payee
1166
+ # - `MERCHANT_INITIATED_TRANSACTION` - Merchant-initiated transaction (MIT);
1167
+ # cardholder not present
1168
+ # - `TRUSTED_BENEFICIARY` - Trusted beneficiary; merchant is on cardholder's
1169
+ # whitelist
1170
+ # - `STRONG_CUSTOMER_AUTHENTICATION_DELEGATION` - SCA already performed by a
1171
+ # delegated third-party authenticator
1172
+ # - `SECURE_CORPORATE_PAYMENT` - Secure corporate payment using a dedicated
1173
+ # corporate card or process
1174
+ # - `AUTHENTICATION_OUTAGE_EXCEPTION` - Authentication outage exception;
1175
+ # scheme-level fallback during ACS downtime
1176
+ # - `BUNDLED` - Mastercard only; bundled exemption code where the exact exemption
1177
+ # type cannot be distinguished
1178
+ #
1179
+ # @return [Symbol, Lithic::Models::ThreeDSAuthentication::Psd2Context::AcquirerExemption, nil]
1180
+ optional :acquirer_exemption, enum: -> { Lithic::ThreeDSAuthentication::Psd2Context::AcquirerExemption }
1181
+
1182
+ # @!attribute lithic_exemption_validation
1183
+ # Lithic's validation of the acquirer-declared exemption. Absent when no acquirer
1184
+ # exemption was declared.
1185
+ #
1186
+ # - `ACCEPTED` - Lithic signals support the acquirer's claim
1187
+ # - `REJECTED` - Lithic signals contradict the claim, or a required signal is
1188
+ # missing
1189
+ # - `NOT_VALIDATED` - Exemption was declared but Lithic has no basis to evaluate
1190
+ # it; treated as `REJECTED` for challenge purposes
1191
+ #
1192
+ # @return [Symbol, Lithic::Models::ThreeDSAuthentication::Psd2Context::LithicExemptionValidation, nil]
1193
+ optional :lithic_exemption_validation,
1194
+ enum: -> { Lithic::ThreeDSAuthentication::Psd2Context::LithicExemptionValidation }
1195
+
1196
+ # @!method initialize(acquirer_exemption: nil, lithic_exemption_validation: nil)
1197
+ # Some parameter documentations has been truncated, see
1198
+ # {Lithic::Models::ThreeDSAuthentication::Psd2Context} for more details.
1199
+ #
1200
+ # PSD2/SCA context for EEA and UK transactions. Present when Lithic determines the
1201
+ # transaction is in scope for PSD2 Strong Customer Authentication. Absent for
1202
+ # out-of-scope transactions.
1203
+ #
1204
+ # @param acquirer_exemption [Symbol, Lithic::Models::ThreeDSAuthentication::Psd2Context::AcquirerExemption] SCA exemption declared by the acquirer in the 3DS authentication request.
1205
+ #
1206
+ # @param lithic_exemption_validation [Symbol, Lithic::Models::ThreeDSAuthentication::Psd2Context::LithicExemptionValidation] Lithic's validation of the acquirer-declared exemption. Absent when no acquirer
1207
+
1208
+ # SCA exemption declared by the acquirer in the 3DS authentication request.
1209
+ #
1210
+ # - `NONE` - No exemption claimed
1211
+ # - `TRANSACTION_RISK_ANALYSIS` - Transaction Risk Analysis (TRA) exemption;
1212
+ # acquirer asserts low fraud risk
1213
+ # - `LOW_VALUE` - Low-value payment exemption; transaction is below the EUR 30
1214
+ # threshold
1215
+ # - `RECURRING_PAYMENT` - Recurring payment with a fixed amount to the same payee
1216
+ # - `MERCHANT_INITIATED_TRANSACTION` - Merchant-initiated transaction (MIT);
1217
+ # cardholder not present
1218
+ # - `TRUSTED_BENEFICIARY` - Trusted beneficiary; merchant is on cardholder's
1219
+ # whitelist
1220
+ # - `STRONG_CUSTOMER_AUTHENTICATION_DELEGATION` - SCA already performed by a
1221
+ # delegated third-party authenticator
1222
+ # - `SECURE_CORPORATE_PAYMENT` - Secure corporate payment using a dedicated
1223
+ # corporate card or process
1224
+ # - `AUTHENTICATION_OUTAGE_EXCEPTION` - Authentication outage exception;
1225
+ # scheme-level fallback during ACS downtime
1226
+ # - `BUNDLED` - Mastercard only; bundled exemption code where the exact exemption
1227
+ # type cannot be distinguished
1228
+ #
1229
+ # @see Lithic::Models::ThreeDSAuthentication::Psd2Context#acquirer_exemption
1230
+ module AcquirerExemption
1231
+ extend Lithic::Internal::Type::Enum
1232
+
1233
+ NONE = :NONE
1234
+ TRANSACTION_RISK_ANALYSIS = :TRANSACTION_RISK_ANALYSIS
1235
+ LOW_VALUE = :LOW_VALUE
1236
+ RECURRING_PAYMENT = :RECURRING_PAYMENT
1237
+ MERCHANT_INITIATED_TRANSACTION = :MERCHANT_INITIATED_TRANSACTION
1238
+ TRUSTED_BENEFICIARY = :TRUSTED_BENEFICIARY
1239
+ STRONG_CUSTOMER_AUTHENTICATION_DELEGATION = :STRONG_CUSTOMER_AUTHENTICATION_DELEGATION
1240
+ SECURE_CORPORATE_PAYMENT = :SECURE_CORPORATE_PAYMENT
1241
+ AUTHENTICATION_OUTAGE_EXCEPTION = :AUTHENTICATION_OUTAGE_EXCEPTION
1242
+ BUNDLED = :BUNDLED
1243
+
1244
+ # @!method self.values
1245
+ # @return [Array<Symbol>]
1246
+ end
1247
+
1248
+ # Lithic's validation of the acquirer-declared exemption. Absent when no acquirer
1249
+ # exemption was declared.
1250
+ #
1251
+ # - `ACCEPTED` - Lithic signals support the acquirer's claim
1252
+ # - `REJECTED` - Lithic signals contradict the claim, or a required signal is
1253
+ # missing
1254
+ # - `NOT_VALIDATED` - Exemption was declared but Lithic has no basis to evaluate
1255
+ # it; treated as `REJECTED` for challenge purposes
1256
+ #
1257
+ # @see Lithic::Models::ThreeDSAuthentication::Psd2Context#lithic_exemption_validation
1258
+ module LithicExemptionValidation
1259
+ extend Lithic::Internal::Type::Enum
1260
+
1261
+ ACCEPTED = :ACCEPTED
1262
+ REJECTED = :REJECTED
1263
+ NOT_VALIDATED = :NOT_VALIDATED
1264
+
1265
+ # @!method self.values
1266
+ # @return [Array<Symbol>]
1267
+ end
1268
+ end
1269
+
1145
1270
  # Type of 3DS Requestor Initiated (3RI) request — i.e., a 3DS authentication that
1146
1271
  # takes place at the initiation of the merchant rather than the cardholder. The
1147
1272
  # most common example of this is where a merchant is authenticating before billing
@@ -173,7 +173,8 @@ module Lithic
173
173
 
174
174
  # @!attribute tags
175
175
  # Key-value pairs for tagging resources. Tags allow you to associate arbitrary
176
- # metadata with a resource for your own purposes.
176
+ # metadata with a resource for your own purposes. A resource can have at most 50
177
+ # tags, with keys up to 40 characters and values up to 500 characters
177
178
  #
178
179
  # @return [Hash{Symbol=>String}]
179
180
  required :tags, Lithic::Internal::Type::HashOf[String]
@@ -1060,6 +1061,7 @@ module Lithic
1060
1061
  PROGRAM_SUSPENDED = :PROGRAM_SUSPENDED
1061
1062
  PROGRAM_USAGE_RESTRICTION = :PROGRAM_USAGE_RESTRICTION
1062
1063
  REVERSAL_UNMATCHED = :REVERSAL_UNMATCHED
1064
+ SCA_REQUIRED = :SCA_REQUIRED
1063
1065
  SECURITY_VIOLATION = :SECURITY_VIOLATION
1064
1066
  SINGLE_USE_CARD_REATTEMPTED = :SINGLE_USE_CARD_REATTEMPTED
1065
1067
  SUSPECTED_FRAUD = :SUSPECTED_FRAUD
@@ -1390,6 +1392,7 @@ module Lithic
1390
1392
  PROGRAM_SUSPENDED = :PROGRAM_SUSPENDED
1391
1393
  PROGRAM_USAGE_RESTRICTION = :PROGRAM_USAGE_RESTRICTION
1392
1394
  REVERSAL_UNMATCHED = :REVERSAL_UNMATCHED
1395
+ SCA_REQUIRED = :SCA_REQUIRED
1393
1396
  SECURITY_VIOLATION = :SECURITY_VIOLATION
1394
1397
  SINGLE_USE_CARD_REATTEMPTED = :SINGLE_USE_CARD_REATTEMPTED
1395
1398
  SUSPECTED_FRAUD = :SUSPECTED_FRAUD
@@ -29,6 +29,14 @@ module Lithic
29
29
  # @return [String]
30
30
  required :pan, String
31
31
 
32
+ # @!attribute billing_currency
33
+ # 3-character alphabetic ISO 4217 currency code for the cardholder billing amount.
34
+ # Permitted values are USD, GBP, EUR and CAD, and any other ISO 4217 code returns
35
+ # a 422. Defaults to USD
36
+ #
37
+ # @return [String, nil]
38
+ optional :billing_currency, String
39
+
32
40
  # @!attribute mcc
33
41
  # Merchant category code for the transaction to be simulated. A four-digit number
34
42
  # listed in ISO 18245. Supported merchant category codes can be found
@@ -69,8 +77,10 @@ module Lithic
69
77
  optional :merchant_amount, Integer
70
78
 
71
79
  # @!attribute merchant_currency
72
- # 3-character alphabetic ISO 4217 currency code. Note: Simulator only accepts USD,
73
- # GBP, EUR and defaults to GBP if another ISO 4217 code is provided
80
+ # 3-character alphabetic ISO 4217 currency code for the merchant amount. Only used
81
+ # when merchant_amount is set, and defaults to GBP in that case. Without
82
+ # merchant_amount, the merchant amount uses the billing currency. Permitted values
83
+ # are USD, GBP, EUR and CAD, and any other ISO 4217 code returns a 422
74
84
  #
75
85
  # @return [String, nil]
76
86
  optional :merchant_currency, String
@@ -89,6 +99,16 @@ module Lithic
89
99
  # @return [String, nil]
90
100
  optional :pin, String
91
101
 
102
+ # @!attribute settlement_currency
103
+ # 3-character alphabetic ISO 4217 currency code for the settlement amount.
104
+ # Permitted values are USD, GBP, EUR and CAD, and any other ISO 4217 code returns
105
+ # a 422. Defaults to the value of billing_currency. Only single message
106
+ # (financial) authorizations carry a settlement amount, and the value is ignored
107
+ # for dual message authorizations
108
+ #
109
+ # @return [String, nil]
110
+ optional :settlement_currency, String
111
+
92
112
  # @!attribute status
93
113
  # Type of event to simulate.
94
114
  #
@@ -110,7 +130,7 @@ module Lithic
110
130
  # @return [Symbol, Lithic::Models::TransactionSimulateAuthorizationParams::Status, nil]
111
131
  optional :status, enum: -> { Lithic::TransactionSimulateAuthorizationParams::Status }
112
132
 
113
- # @!method initialize(amount:, descriptor:, pan:, mcc: nil, merchant_acceptor_city: nil, merchant_acceptor_country: nil, merchant_acceptor_id: nil, merchant_acceptor_state: nil, merchant_amount: nil, merchant_currency: nil, partial_approval_capable: nil, pin: nil, status: nil, request_options: {})
133
+ # @!method initialize(amount:, descriptor:, pan:, billing_currency: nil, mcc: nil, merchant_acceptor_city: nil, merchant_acceptor_country: nil, merchant_acceptor_id: nil, merchant_acceptor_state: nil, merchant_amount: nil, merchant_currency: nil, partial_approval_capable: nil, pin: nil, settlement_currency: nil, status: nil, request_options: {})
114
134
  # Some parameter documentations has been truncated, see
115
135
  # {Lithic::Models::TransactionSimulateAuthorizationParams} for more details.
116
136
  #
@@ -120,6 +140,8 @@ module Lithic
120
140
  #
121
141
  # @param pan [String] Sixteen digit card number.
122
142
  #
143
+ # @param billing_currency [String] 3-character alphabetic ISO 4217 currency code for the cardholder billing amount.
144
+ #
123
145
  # @param mcc [String] Merchant category code for the transaction to be simulated. A four-digit number
124
146
  #
125
147
  # @param merchant_acceptor_city [String] Merchant acceptor city
@@ -132,12 +154,14 @@ module Lithic
132
154
  #
133
155
  # @param merchant_amount [Integer] Amount of the transaction to be simulated in currency specified in merchant_curr
134
156
  #
135
- # @param merchant_currency [String] 3-character alphabetic ISO 4217 currency code. Note: Simulator only accepts USD,
157
+ # @param merchant_currency [String] 3-character alphabetic ISO 4217 currency code for the merchant amount. Only used
136
158
  #
137
159
  # @param partial_approval_capable [Boolean] Set to true if the terminal is capable of partial approval otherwise false.
138
160
  #
139
161
  # @param pin [String] Simulate entering a PIN. If omitted, PIN check will not be performed.
140
162
  #
163
+ # @param settlement_currency [String] 3-character alphabetic ISO 4217 currency code for the settlement amount. Permitt
164
+ #
141
165
  # @param status [Symbol, Lithic::Models::TransactionSimulateAuthorizationParams::Status] Type of event to simulate.
142
166
  #
143
167
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
@@ -27,6 +27,14 @@ module Lithic
27
27
  # @return [String]
28
28
  required :pan, String
29
29
 
30
+ # @!attribute billing_currency
31
+ # 3-character alphabetic ISO 4217 currency code for the cardholder billing amount.
32
+ # Permitted values are USD, GBP, EUR and CAD, and any other ISO 4217 code returns
33
+ # a 422. Defaults to USD
34
+ #
35
+ # @return [String, nil]
36
+ optional :billing_currency, String
37
+
30
38
  # @!attribute mcc
31
39
  # Merchant category code for the transaction to be simulated. A four-digit number
32
40
  # listed in ISO 18245. Supported merchant category codes can be found
@@ -59,7 +67,7 @@ module Lithic
59
67
  # @return [String, nil]
60
68
  optional :merchant_acceptor_state, String
61
69
 
62
- # @!method initialize(amount:, descriptor:, pan:, mcc: nil, merchant_acceptor_city: nil, merchant_acceptor_country: nil, merchant_acceptor_id: nil, merchant_acceptor_state: nil, request_options: {})
70
+ # @!method initialize(amount:, descriptor:, pan:, billing_currency: nil, mcc: nil, merchant_acceptor_city: nil, merchant_acceptor_country: nil, merchant_acceptor_id: nil, merchant_acceptor_state: nil, request_options: {})
63
71
  # Some parameter documentations has been truncated, see
64
72
  # {Lithic::Models::TransactionSimulateCreditAuthorizationAdviceParams} for more
65
73
  # details.
@@ -70,6 +78,8 @@ module Lithic
70
78
  #
71
79
  # @param pan [String] Sixteen digit card number.
72
80
  #
81
+ # @param billing_currency [String] 3-character alphabetic ISO 4217 currency code for the cardholder billing amount.
82
+ #
73
83
  # @param mcc [String] Merchant category code for the transaction to be simulated. A four-digit number
74
84
  #
75
85
  # @param merchant_acceptor_city [String] Merchant acceptor city
@@ -25,13 +25,36 @@ module Lithic
25
25
  # @return [String]
26
26
  required :pan, String
27
27
 
28
- # @!method initialize(amount:, descriptor:, pan:, request_options: {})
28
+ # @!attribute billing_currency
29
+ # 3-character alphabetic ISO 4217 currency code for the cardholder billing amount.
30
+ # Permitted values are USD, GBP, EUR and CAD, and any other ISO 4217 code returns
31
+ # a 422. Defaults to USD
32
+ #
33
+ # @return [String, nil]
34
+ optional :billing_currency, String
35
+
36
+ # @!attribute settlement_currency
37
+ # 3-character alphabetic ISO 4217 currency code for the settlement amount.
38
+ # Permitted values are USD, GBP, EUR and CAD, and any other ISO 4217 code returns
39
+ # a 422. Defaults to the value of billing_currency
40
+ #
41
+ # @return [String, nil]
42
+ optional :settlement_currency, String
43
+
44
+ # @!method initialize(amount:, descriptor:, pan:, billing_currency: nil, settlement_currency: nil, request_options: {})
45
+ # Some parameter documentations has been truncated, see
46
+ # {Lithic::Models::TransactionSimulateReturnParams} for more details.
47
+ #
29
48
  # @param amount [Integer] Amount (in cents) to authorize.
30
49
  #
31
50
  # @param descriptor [String] Merchant descriptor.
32
51
  #
33
52
  # @param pan [String] Sixteen digit card number.
34
53
  #
54
+ # @param billing_currency [String] 3-character alphabetic ISO 4217 currency code for the cardholder billing amount.
55
+ #
56
+ # @param settlement_currency [String] 3-character alphabetic ISO 4217 currency code for the settlement amount. Permitt
57
+ #
35
58
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}]
36
59
  end
37
60
  end
data/lib/lithic/models.rb CHANGED
@@ -116,6 +116,8 @@ module Lithic
116
116
 
117
117
  BlockchainRecipientCreateParams = Lithic::Models::BlockchainRecipientCreateParams
118
118
 
119
+ BlockchainRecipientRetrieveParams = Lithic::Models::BlockchainRecipientRetrieveParams
120
+
119
121
  BookTransferCreateParams = Lithic::Models::BookTransferCreateParams
120
122
 
121
123
  BookTransferListParams = Lithic::Models::BookTransferListParams
@@ -170,6 +172,8 @@ module Lithic
170
172
 
171
173
  CardListParams = Lithic::Models::CardListParams
172
174
 
175
+ CardPinUpdatedWebhookEvent = Lithic::Models::CardPinUpdatedWebhookEvent
176
+
173
177
  CardProgram = Lithic::Models::CardProgram
174
178
 
175
179
  CardProgramListParams = Lithic::Models::CardProgramListParams
@@ -475,6 +479,8 @@ module Lithic
475
479
 
476
480
  PaymentCreateParams = Lithic::Models::PaymentCreateParams
477
481
 
482
+ PaymentCreateStablecoinParams = Lithic::Models::PaymentCreateStablecoinParams
483
+
478
484
  PaymentListParams = Lithic::Models::PaymentListParams
479
485
 
480
486
  PaymentRetrieveParams = Lithic::Models::PaymentRetrieveParams
@@ -22,14 +22,14 @@ module Lithic
22
22
  # `/v2/auth_rules/{auth_rule_token}/backtests/{auth_rule_backtest_token}`
23
23
  # endpoint.
24
24
  #
25
- # Lithic currently supports backtesting for `CONDITIONAL_BLOCK` /
26
- # `CONDITIONAL_ACTION` rules. Backtesting for `VELOCITY_LIMIT` rules is generally
27
- # not supported. In specific cases (i.e. where Lithic has pre-calculated the
28
- # requested velocity metrics for historical transactions), a backtest may be
29
- # feasible. However, such cases are uncommon and customers should not anticipate
30
- # support for velocity backtests under most configurations. If a historical
31
- # transaction does not feature the required inputs to evaluate the rule, then it
32
- # will not be included in the final backtest report.
25
+ # Lithic currently supports backtesting for `CONDITIONAL_ACTION` rules.
26
+ # Backtesting for `VELOCITY_LIMIT` rules is generally not supported. In specific
27
+ # cases (i.e. where Lithic has pre-calculated the requested velocity metrics for
28
+ # historical transactions), a backtest may be feasible. However, such cases are
29
+ # uncommon and customers should not anticipate support for velocity backtests
30
+ # under most configurations. If a historical transaction does not feature the
31
+ # required inputs to evaluate the rule, then it will not be included in the final
32
+ # backtest report.
33
33
  #
34
34
  # @overload create(auth_rule_token, end_: nil, start: nil, request_options: {})
35
35
  #
@@ -11,7 +11,8 @@ module Lithic
11
11
  #
12
12
  # @overload create(body:, request_options: {})
13
13
  #
14
- # @param body [Lithic::Models::AuthRules::V2CreateParams::Body::AccountLevelRule, Lithic::Models::AuthRules::V2CreateParams::Body::CardLevelRule, Lithic::Models::AuthRules::V2CreateParams::Body::ProgramLevelRule]
14
+ # @param body [Lithic::Models::AuthRules::V2CreateParams::Body::Rule, Lithic::Models::AuthRules::V2CreateParams::Body::AccountLevelRule, Lithic::Models::AuthRules::V2CreateParams::Body::CardLevelRule, Lithic::Models::AuthRules::V2CreateParams::Body::ProgramLevelRule] Deprecated: Use `entities` instead. Cannot be combined with `entities`.
15
+ #
15
16
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
16
17
  #
17
18
  # @return [Lithic::Models::AuthRules::AuthRule]
@@ -47,16 +48,21 @@ module Lithic
47
48
  )
48
49
  end
49
50
 
51
+ # Some parameter documentations has been truncated, see
52
+ # {Lithic::Models::AuthRules::V2UpdateParams} for more details.
53
+ #
50
54
  # Updates a V2 Auth rule's properties
51
55
  #
52
- # If `account_tokens`, `card_tokens`, `program_level`, `excluded_card_tokens`,
53
- # `excluded_account_tokens`, or `excluded_business_account_tokens` is provided,
54
- # this will replace existing associations with the provided list of entities.
56
+ # If `entities` is provided, this will replace the rule's existing entities with
57
+ # the provided `include` and `exclude` lists. To change entities incrementally,
58
+ # use `PATCH /v2/auth_rules/{auth_rule_token}/entities` instead.
55
59
  #
56
60
  # @overload update(auth_rule_token, body:, request_options: {})
57
61
  #
58
62
  # @param auth_rule_token [String]
59
- # @param body [Lithic::Models::AuthRules::V2UpdateParams::Body::AccountLevelRule, Lithic::Models::AuthRules::V2UpdateParams::Body::CardLevelRule, Lithic::Models::AuthRules::V2UpdateParams::Body::ProgramLevelRule]
63
+ #
64
+ # @param body [Lithic::Models::AuthRules::V2UpdateParams::Body::Rule, Lithic::Models::AuthRules::V2UpdateParams::Body::AccountLevelRule, Lithic::Models::AuthRules::V2UpdateParams::Body::CardLevelRule, Lithic::Models::AuthRules::V2UpdateParams::Body::ProgramLevelRule] Replaces the rule's existing entities with the provided `include` and `exclude`
65
+ #
60
66
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
61
67
  #
62
68
  # @return [Lithic::Models::AuthRules::AuthRule]
@@ -94,7 +100,7 @@ module Lithic
94
100
  #
95
101
  # @param page_size [Integer] Page size (for pagination).
96
102
  #
97
- # @param scope [Symbol, Lithic::Models::AuthRules::V2ListParams::Scope] Only return Auth Rules that are bound to the provided scope.
103
+ # @param scope [Symbol, Lithic::Models::AuthRules::V2ListParams::Scope] Only return Auth Rules that are bound to the provided scope. When no token is pr
98
104
  #
99
105
  # @param starting_after [String] A cursor representing an item's token after which a page of results should begin
100
106
  #
@@ -144,7 +150,7 @@ module Lithic
144
150
  #
145
151
  # @param auth_rule_token [String]
146
152
  #
147
- # @param parameters [Lithic::Models::AuthRules::ConditionalBlockParameters, Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::MerchantLockParameters, Lithic::Models::AuthRules::Conditional3DSActionParameters, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters, Lithic::Models::AuthRules::ConditionalACHActionParameters, Lithic::Models::AuthRules::ConditionalTokenizationActionParameters, Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters, Lithic::Models::AuthRules::ConditionalACHPaymentUpdateActionParameters, Lithic::Models::AuthRules::TypescriptCodeParameters, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters, nil] Parameters for the Auth Rule
153
+ # @param parameters [Lithic::Models::AuthRules::VelocityLimitParams, Lithic::Models::AuthRules::MerchantLockParameters, Lithic::Models::AuthRules::Conditional3DSActionParameters, Lithic::Models::AuthRules::ConditionalAuthorizationActionParameters, Lithic::Models::AuthRules::ConditionalACHActionParameters, Lithic::Models::AuthRules::ConditionalTokenizationActionParameters, Lithic::Models::AuthRules::ConditionalCardTransactionUpdateActionParameters, Lithic::Models::AuthRules::ConditionalACHPaymentUpdateActionParameters, Lithic::Models::AuthRules::TypescriptCodeParameters, Lithic::Models::AuthRules::ConditionalAuthorizationAdjustmentParameters, nil] Parameters for the Auth Rule
148
154
  #
149
155
  # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
150
156
  #
@@ -256,7 +262,7 @@ module Lithic
256
262
  # - VelocityLimit Rules calculates the current Velocity Feature data. This
257
263
  # requires a `card_token` or `account_token` matching what the rule is Scoped
258
264
  # to.
259
- # - ConditionalBlock Rules calculates the CARD*TRANSACTION_COUNT*\* attributes on
265
+ # - ConditionalAction Rules calculates the CARD*TRANSACTION_COUNT*\* attributes on
260
266
  # the rule. This requires a `card_token`
261
267
  #
262
268
  # @overload retrieve_features(auth_rule_token, account_token: nil, card_token: nil, request_options: {})
@@ -320,6 +326,36 @@ module Lithic
320
326
  )
321
327
  end
322
328
 
329
+ # Adds entities to and removes entities from a V2 Auth rule's `include` and
330
+ # `exclude` lists
331
+ #
332
+ # To replace all of the rule's entities at once, provide `entities` to
333
+ # `PATCH /v2/auth_rules/{auth_rule_token}` instead.
334
+ #
335
+ # @overload update_entities(auth_rule_token, add: nil, remove: nil, request_options: {})
336
+ #
337
+ # @param auth_rule_token [String]
338
+ #
339
+ # @param add [Lithic::Models::AuthRules::AuthRuleEntities] Entities to add to the rule's `include` and `exclude` lists
340
+ #
341
+ # @param remove [Lithic::Models::AuthRules::AuthRuleEntities] Entities to remove from the rule's `include` and `exclude` lists
342
+ #
343
+ # @param request_options [Lithic::RequestOptions, Hash{Symbol=>Object}, nil]
344
+ #
345
+ # @return [Lithic::Models::AuthRules::AuthRule]
346
+ #
347
+ # @see Lithic::Models::AuthRules::V2UpdateEntitiesParams
348
+ def update_entities(auth_rule_token, params = {})
349
+ parsed, options = Lithic::AuthRules::V2UpdateEntitiesParams.dump_request(params)
350
+ @client.request(
351
+ method: :patch,
352
+ path: ["v2/auth_rules/%1$s/entities", auth_rule_token],
353
+ body: parsed,
354
+ model: Lithic::AuthRules::AuthRule,
355
+ options: options
356
+ )
357
+ end
358
+
323
359
  # @api private
324
360
  #
325
361
  # @param client [Lithic::Client]