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
@@ -24,6 +24,7 @@ module Lithic
24
24
  Lithic::BookTransferTransactionUpdatedWebhookEvent,
25
25
  Lithic::CardCreatedWebhookEvent,
26
26
  Lithic::CardConvertedWebhookEvent,
27
+ Lithic::CardPinUpdatedWebhookEvent,
27
28
  Lithic::CardRenewedWebhookEvent,
28
29
  Lithic::CardReissuedWebhookEvent,
29
30
  Lithic::CardShippedWebhookEvent,
@@ -339,7 +340,8 @@ module Lithic
339
340
  end
340
341
 
341
342
  # Individual's current address - PO boxes, UPS drops, and FedEx drops are not
342
- # acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
343
+ # acceptable; APO/FPO are acceptable. Only USA addresses are supported for the KYB
344
+ # and KYC workflows.
343
345
  sig do
344
346
  returns(
345
347
  T.nilable(
@@ -406,7 +408,8 @@ module Lithic
406
408
  end
407
409
  def self.new(
408
410
  # Individual's current address - PO boxes, UPS drops, and FedEx drops are not
409
- # acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
411
+ # acceptable; APO/FPO are acceptable. Only USA addresses are supported for the KYB
412
+ # and KYC workflows.
410
413
  address: nil,
411
414
  # Individual's date of birth, as an RFC 3339 date.
412
415
  dob: nil,
@@ -456,21 +459,12 @@ module Lithic
456
459
  sig { returns(String) }
457
460
  attr_accessor :city
458
461
 
459
- # Valid country code. Only USA is currently supported, entered in uppercase ISO
460
- # 3166-1 alpha-3 three-character format.
462
+ # Valid country code, entered in uppercase ISO 3166-1 alpha-3 three-character
463
+ # format. Supported countries depend on the onboarding workflow used for the
464
+ # account holder.
461
465
  sig { returns(String) }
462
466
  attr_accessor :country
463
467
 
464
- # Valid postal code. Only USA ZIP codes are currently supported, entered as a
465
- # five-digit ZIP or nine-digit ZIP+4.
466
- sig { returns(String) }
467
- attr_accessor :postal_code
468
-
469
- # Valid state code. Only USA state codes are currently supported, entered in
470
- # uppercase ISO 3166-2 two-character format.
471
- sig { returns(String) }
472
- attr_accessor :state
473
-
474
468
  # Unit or apartment number (if applicable).
475
469
  sig { returns(T.nilable(String)) }
476
470
  attr_reader :address2
@@ -478,16 +472,42 @@ module Lithic
478
472
  sig { params(address2: String).void }
479
473
  attr_writer :address2
480
474
 
475
+ # Valid postal code. For USA addresses, enter either a five-digit postal code or a
476
+ # nine-digit postal code (ZIP+4) using the format 12345-1234. Required for all
477
+ # countries except the following, which do not use postal codes: ABW, AGO, ARE,
478
+ # ATG, BDI, BEN, BFA, BHS, BLZ, BOL, BWA, CIV, CMR, COD, COG, COK, COM, DJI, DMA,
479
+ # ERI, FJI, GAB, GMB, GNQ, GRD, GUY, HKG, KIR, MAC, MLI, MRT, NIU, NRU, QAT, RWA,
480
+ # SLB, SLE, SSD, SUR, SXM, SYC, TGO, TKL, TLS, TON, TUV, UGA, VUT, YEM, ZWE
481
+ sig { returns(T.nilable(String)) }
482
+ attr_accessor :postal_code
483
+
484
+ # Valid state, province, or subdivision code, entered as the uppercase ISO 3166-2
485
+ # code for the country without the country prefix. For example, `CA` for
486
+ # California. Optional unless the address is in one of the following countries,
487
+ # where it is required:
488
+ #
489
+ # - `USA`
490
+ # - `CAN`
491
+ # - `AUS`
492
+ # - `CHN`
493
+ # - `KOR`
494
+ # - `MEX`
495
+ # - `MYS`
496
+ # - `NZL`
497
+ sig { returns(T.nilable(String)) }
498
+ attr_accessor :state
499
+
481
500
  # Individual's current address - PO boxes, UPS drops, and FedEx drops are not
482
- # acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
501
+ # acceptable; APO/FPO are acceptable. Only USA addresses are supported for the KYB
502
+ # and KYC workflows.
483
503
  sig do
484
504
  params(
485
505
  address1: String,
486
506
  city: String,
487
507
  country: String,
488
- postal_code: String,
489
- state: String,
490
- address2: String
508
+ address2: String,
509
+ postal_code: T.nilable(String),
510
+ state: T.nilable(String)
491
511
  ).returns(T.attached_class)
492
512
  end
493
513
  def self.new(
@@ -495,17 +515,33 @@ module Lithic
495
515
  address1:,
496
516
  # Name of city.
497
517
  city:,
498
- # Valid country code. Only USA is currently supported, entered in uppercase ISO
499
- # 3166-1 alpha-3 three-character format.
518
+ # Valid country code, entered in uppercase ISO 3166-1 alpha-3 three-character
519
+ # format. Supported countries depend on the onboarding workflow used for the
520
+ # account holder.
500
521
  country:,
501
- # Valid postal code. Only USA ZIP codes are currently supported, entered as a
502
- # five-digit ZIP or nine-digit ZIP+4.
503
- postal_code:,
504
- # Valid state code. Only USA state codes are currently supported, entered in
505
- # uppercase ISO 3166-2 two-character format.
506
- state:,
507
522
  # Unit or apartment number (if applicable).
508
- address2: nil
523
+ address2: nil,
524
+ # Valid postal code. For USA addresses, enter either a five-digit postal code or a
525
+ # nine-digit postal code (ZIP+4) using the format 12345-1234. Required for all
526
+ # countries except the following, which do not use postal codes: ABW, AGO, ARE,
527
+ # ATG, BDI, BEN, BFA, BHS, BLZ, BOL, BWA, CIV, CMR, COD, COG, COK, COM, DJI, DMA,
528
+ # ERI, FJI, GAB, GMB, GNQ, GRD, GUY, HKG, KIR, MAC, MLI, MRT, NIU, NRU, QAT, RWA,
529
+ # SLB, SLE, SSD, SUR, SXM, SYC, TGO, TKL, TLS, TON, TUV, UGA, VUT, YEM, ZWE
530
+ postal_code: nil,
531
+ # Valid state, province, or subdivision code, entered as the uppercase ISO 3166-2
532
+ # code for the country without the country prefix. For example, `CA` for
533
+ # California. Optional unless the address is in one of the following countries,
534
+ # where it is required:
535
+ #
536
+ # - `USA`
537
+ # - `CAN`
538
+ # - `AUS`
539
+ # - `CHN`
540
+ # - `KOR`
541
+ # - `MEX`
542
+ # - `MYS`
543
+ # - `NZL`
544
+ state: nil
509
545
  )
510
546
  end
511
547
 
@@ -515,9 +551,9 @@ module Lithic
515
551
  address1: String,
516
552
  city: String,
517
553
  country: String,
518
- postal_code: String,
519
- state: String,
520
- address2: String
554
+ address2: String,
555
+ postal_code: T.nilable(String),
556
+ state: T.nilable(String)
521
557
  }
522
558
  )
523
559
  end
@@ -536,7 +572,8 @@ module Lithic
536
572
  end
537
573
 
538
574
  # Individual's current address - PO boxes, UPS drops, and FedEx drops are not
539
- # acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
575
+ # acceptable; APO/FPO are acceptable. Only USA addresses are supported for the KYB
576
+ # and KYC workflows.
540
577
  sig do
541
578
  returns(
542
579
  T.nilable(
@@ -611,7 +648,8 @@ module Lithic
611
648
  end
612
649
  def self.new(
613
650
  # Individual's current address - PO boxes, UPS drops, and FedEx drops are not
614
- # acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
651
+ # acceptable; APO/FPO are acceptable. Only USA addresses are supported for the KYB
652
+ # and KYC workflows.
615
653
  address: nil,
616
654
  # Individual's date of birth, as an RFC 3339 date.
617
655
  dob: nil,
@@ -661,21 +699,12 @@ module Lithic
661
699
  sig { returns(String) }
662
700
  attr_accessor :city
663
701
 
664
- # Valid country code. Only USA is currently supported, entered in uppercase ISO
665
- # 3166-1 alpha-3 three-character format.
702
+ # Valid country code, entered in uppercase ISO 3166-1 alpha-3 three-character
703
+ # format. Supported countries depend on the onboarding workflow used for the
704
+ # account holder.
666
705
  sig { returns(String) }
667
706
  attr_accessor :country
668
707
 
669
- # Valid postal code. Only USA ZIP codes are currently supported, entered as a
670
- # five-digit ZIP or nine-digit ZIP+4.
671
- sig { returns(String) }
672
- attr_accessor :postal_code
673
-
674
- # Valid state code. Only USA state codes are currently supported, entered in
675
- # uppercase ISO 3166-2 two-character format.
676
- sig { returns(String) }
677
- attr_accessor :state
678
-
679
708
  # Unit or apartment number (if applicable).
680
709
  sig { returns(T.nilable(String)) }
681
710
  attr_reader :address2
@@ -683,16 +712,42 @@ module Lithic
683
712
  sig { params(address2: String).void }
684
713
  attr_writer :address2
685
714
 
715
+ # Valid postal code. For USA addresses, enter either a five-digit postal code or a
716
+ # nine-digit postal code (ZIP+4) using the format 12345-1234. Required for all
717
+ # countries except the following, which do not use postal codes: ABW, AGO, ARE,
718
+ # ATG, BDI, BEN, BFA, BHS, BLZ, BOL, BWA, CIV, CMR, COD, COG, COK, COM, DJI, DMA,
719
+ # ERI, FJI, GAB, GMB, GNQ, GRD, GUY, HKG, KIR, MAC, MLI, MRT, NIU, NRU, QAT, RWA,
720
+ # SLB, SLE, SSD, SUR, SXM, SYC, TGO, TKL, TLS, TON, TUV, UGA, VUT, YEM, ZWE
721
+ sig { returns(T.nilable(String)) }
722
+ attr_accessor :postal_code
723
+
724
+ # Valid state, province, or subdivision code, entered as the uppercase ISO 3166-2
725
+ # code for the country without the country prefix. For example, `CA` for
726
+ # California. Optional unless the address is in one of the following countries,
727
+ # where it is required:
728
+ #
729
+ # - `USA`
730
+ # - `CAN`
731
+ # - `AUS`
732
+ # - `CHN`
733
+ # - `KOR`
734
+ # - `MEX`
735
+ # - `MYS`
736
+ # - `NZL`
737
+ sig { returns(T.nilable(String)) }
738
+ attr_accessor :state
739
+
686
740
  # Individual's current address - PO boxes, UPS drops, and FedEx drops are not
687
- # acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
741
+ # acceptable; APO/FPO are acceptable. Only USA addresses are supported for the KYB
742
+ # and KYC workflows.
688
743
  sig do
689
744
  params(
690
745
  address1: String,
691
746
  city: String,
692
747
  country: String,
693
- postal_code: String,
694
- state: String,
695
- address2: String
748
+ address2: String,
749
+ postal_code: T.nilable(String),
750
+ state: T.nilable(String)
696
751
  ).returns(T.attached_class)
697
752
  end
698
753
  def self.new(
@@ -700,17 +755,33 @@ module Lithic
700
755
  address1:,
701
756
  # Name of city.
702
757
  city:,
703
- # Valid country code. Only USA is currently supported, entered in uppercase ISO
704
- # 3166-1 alpha-3 three-character format.
758
+ # Valid country code, entered in uppercase ISO 3166-1 alpha-3 three-character
759
+ # format. Supported countries depend on the onboarding workflow used for the
760
+ # account holder.
705
761
  country:,
706
- # Valid postal code. Only USA ZIP codes are currently supported, entered as a
707
- # five-digit ZIP or nine-digit ZIP+4.
708
- postal_code:,
709
- # Valid state code. Only USA state codes are currently supported, entered in
710
- # uppercase ISO 3166-2 two-character format.
711
- state:,
712
762
  # Unit or apartment number (if applicable).
713
- address2: nil
763
+ address2: nil,
764
+ # Valid postal code. For USA addresses, enter either a five-digit postal code or a
765
+ # nine-digit postal code (ZIP+4) using the format 12345-1234. Required for all
766
+ # countries except the following, which do not use postal codes: ABW, AGO, ARE,
767
+ # ATG, BDI, BEN, BFA, BHS, BLZ, BOL, BWA, CIV, CMR, COD, COG, COK, COM, DJI, DMA,
768
+ # ERI, FJI, GAB, GMB, GNQ, GRD, GUY, HKG, KIR, MAC, MLI, MRT, NIU, NRU, QAT, RWA,
769
+ # SLB, SLE, SSD, SUR, SXM, SYC, TGO, TKL, TLS, TON, TUV, UGA, VUT, YEM, ZWE
770
+ postal_code: nil,
771
+ # Valid state, province, or subdivision code, entered as the uppercase ISO 3166-2
772
+ # code for the country without the country prefix. For example, `CA` for
773
+ # California. Optional unless the address is in one of the following countries,
774
+ # where it is required:
775
+ #
776
+ # - `USA`
777
+ # - `CAN`
778
+ # - `AUS`
779
+ # - `CHN`
780
+ # - `KOR`
781
+ # - `MEX`
782
+ # - `MYS`
783
+ # - `NZL`
784
+ state: nil
714
785
  )
715
786
  end
716
787
 
@@ -720,9 +791,9 @@ module Lithic
720
791
  address1: String,
721
792
  city: String,
722
793
  country: String,
723
- postal_code: String,
724
- state: String,
725
- address2: String
794
+ address2: String,
795
+ postal_code: T.nilable(String),
796
+ state: T.nilable(String)
726
797
  }
727
798
  )
728
799
  end
@@ -913,7 +984,8 @@ module Lithic
913
984
  end
914
985
 
915
986
  # Individual's current address - PO boxes, UPS drops, and FedEx drops are not
916
- # acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
987
+ # acceptable; APO/FPO are acceptable. Only USA addresses are supported for the KYB
988
+ # and KYC workflows.
917
989
  sig do
918
990
  returns(
919
991
  T.nilable(
@@ -982,7 +1054,8 @@ module Lithic
982
1054
  end
983
1055
  def self.new(
984
1056
  # Individual's current address - PO boxes, UPS drops, and FedEx drops are not
985
- # acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
1057
+ # acceptable; APO/FPO are acceptable. Only USA addresses are supported for the KYB
1058
+ # and KYC workflows.
986
1059
  address: nil,
987
1060
  # Individual's date of birth, as an RFC 3339 date.
988
1061
  dob: nil,
@@ -1032,21 +1105,12 @@ module Lithic
1032
1105
  sig { returns(String) }
1033
1106
  attr_accessor :city
1034
1107
 
1035
- # Valid country code. Only USA is currently supported, entered in uppercase ISO
1036
- # 3166-1 alpha-3 three-character format.
1108
+ # Valid country code, entered in uppercase ISO 3166-1 alpha-3 three-character
1109
+ # format. Supported countries depend on the onboarding workflow used for the
1110
+ # account holder.
1037
1111
  sig { returns(String) }
1038
1112
  attr_accessor :country
1039
1113
 
1040
- # Valid postal code. Only USA ZIP codes are currently supported, entered as a
1041
- # five-digit ZIP or nine-digit ZIP+4.
1042
- sig { returns(String) }
1043
- attr_accessor :postal_code
1044
-
1045
- # Valid state code. Only USA state codes are currently supported, entered in
1046
- # uppercase ISO 3166-2 two-character format.
1047
- sig { returns(String) }
1048
- attr_accessor :state
1049
-
1050
1114
  # Unit or apartment number (if applicable).
1051
1115
  sig { returns(T.nilable(String)) }
1052
1116
  attr_reader :address2
@@ -1054,16 +1118,42 @@ module Lithic
1054
1118
  sig { params(address2: String).void }
1055
1119
  attr_writer :address2
1056
1120
 
1121
+ # Valid postal code. For USA addresses, enter either a five-digit postal code or a
1122
+ # nine-digit postal code (ZIP+4) using the format 12345-1234. Required for all
1123
+ # countries except the following, which do not use postal codes: ABW, AGO, ARE,
1124
+ # ATG, BDI, BEN, BFA, BHS, BLZ, BOL, BWA, CIV, CMR, COD, COG, COK, COM, DJI, DMA,
1125
+ # ERI, FJI, GAB, GMB, GNQ, GRD, GUY, HKG, KIR, MAC, MLI, MRT, NIU, NRU, QAT, RWA,
1126
+ # SLB, SLE, SSD, SUR, SXM, SYC, TGO, TKL, TLS, TON, TUV, UGA, VUT, YEM, ZWE
1127
+ sig { returns(T.nilable(String)) }
1128
+ attr_accessor :postal_code
1129
+
1130
+ # Valid state, province, or subdivision code, entered as the uppercase ISO 3166-2
1131
+ # code for the country without the country prefix. For example, `CA` for
1132
+ # California. Optional unless the address is in one of the following countries,
1133
+ # where it is required:
1134
+ #
1135
+ # - `USA`
1136
+ # - `CAN`
1137
+ # - `AUS`
1138
+ # - `CHN`
1139
+ # - `KOR`
1140
+ # - `MEX`
1141
+ # - `MYS`
1142
+ # - `NZL`
1143
+ sig { returns(T.nilable(String)) }
1144
+ attr_accessor :state
1145
+
1057
1146
  # Individual's current address - PO boxes, UPS drops, and FedEx drops are not
1058
- # acceptable; APO/FPO are acceptable. Only USA addresses are currently supported.
1147
+ # acceptable; APO/FPO are acceptable. Only USA addresses are supported for the KYB
1148
+ # and KYC workflows.
1059
1149
  sig do
1060
1150
  params(
1061
1151
  address1: String,
1062
1152
  city: String,
1063
1153
  country: String,
1064
- postal_code: String,
1065
- state: String,
1066
- address2: String
1154
+ address2: String,
1155
+ postal_code: T.nilable(String),
1156
+ state: T.nilable(String)
1067
1157
  ).returns(T.attached_class)
1068
1158
  end
1069
1159
  def self.new(
@@ -1071,17 +1161,33 @@ module Lithic
1071
1161
  address1:,
1072
1162
  # Name of city.
1073
1163
  city:,
1074
- # Valid country code. Only USA is currently supported, entered in uppercase ISO
1075
- # 3166-1 alpha-3 three-character format.
1164
+ # Valid country code, entered in uppercase ISO 3166-1 alpha-3 three-character
1165
+ # format. Supported countries depend on the onboarding workflow used for the
1166
+ # account holder.
1076
1167
  country:,
1077
- # Valid postal code. Only USA ZIP codes are currently supported, entered as a
1078
- # five-digit ZIP or nine-digit ZIP+4.
1079
- postal_code:,
1080
- # Valid state code. Only USA state codes are currently supported, entered in
1081
- # uppercase ISO 3166-2 two-character format.
1082
- state:,
1083
1168
  # Unit or apartment number (if applicable).
1084
- address2: nil
1169
+ address2: nil,
1170
+ # Valid postal code. For USA addresses, enter either a five-digit postal code or a
1171
+ # nine-digit postal code (ZIP+4) using the format 12345-1234. Required for all
1172
+ # countries except the following, which do not use postal codes: ABW, AGO, ARE,
1173
+ # ATG, BDI, BEN, BFA, BHS, BLZ, BOL, BWA, CIV, CMR, COD, COG, COK, COM, DJI, DMA,
1174
+ # ERI, FJI, GAB, GMB, GNQ, GRD, GUY, HKG, KIR, MAC, MLI, MRT, NIU, NRU, QAT, RWA,
1175
+ # SLB, SLE, SSD, SUR, SXM, SYC, TGO, TKL, TLS, TON, TUV, UGA, VUT, YEM, ZWE
1176
+ postal_code: nil,
1177
+ # Valid state, province, or subdivision code, entered as the uppercase ISO 3166-2
1178
+ # code for the country without the country prefix. For example, `CA` for
1179
+ # California. Optional unless the address is in one of the following countries,
1180
+ # where it is required:
1181
+ #
1182
+ # - `USA`
1183
+ # - `CAN`
1184
+ # - `AUS`
1185
+ # - `CHN`
1186
+ # - `KOR`
1187
+ # - `MEX`
1188
+ # - `MYS`
1189
+ # - `NZL`
1190
+ state: nil
1085
1191
  )
1086
1192
  end
1087
1193
 
@@ -1091,9 +1197,9 @@ module Lithic
1091
1197
  address1: String,
1092
1198
  city: String,
1093
1199
  country: String,
1094
- postal_code: String,
1095
- state: String,
1096
- address2: String
1200
+ address2: String,
1201
+ postal_code: T.nilable(String),
1202
+ state: T.nilable(String)
1097
1203
  }
1098
1204
  )
1099
1205
  end
@@ -102,7 +102,8 @@ module Lithic
102
102
  attr_accessor :external_bank_account_token
103
103
 
104
104
  # Key-value pairs for tagging resources. Tags allow you to associate arbitrary
105
- # metadata with a resource for your own purposes.
105
+ # metadata with a resource for your own purposes. A resource can have at most 50
106
+ # tags, with keys up to 40 characters and values up to 500 characters
106
107
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
107
108
  attr_reader :tags
108
109
 
@@ -196,7 +197,8 @@ module Lithic
196
197
  # External bank account token
197
198
  external_bank_account_token: nil,
198
199
  # Key-value pairs for tagging resources. Tags allow you to associate arbitrary
199
- # metadata with a resource for your own purposes.
200
+ # metadata with a resource for your own purposes. A resource can have at most 50
201
+ # tags, with keys up to 40 characters and values up to 500 characters
200
202
  tags: nil,
201
203
  type: nil,
202
204
  # User-defined identifier
@@ -267,6 +269,8 @@ module Lithic
267
269
  T.let(:EXTERNAL_FEDNOW, Lithic::Payment::Category::TaggedSymbol)
268
270
  EXTERNAL_RTP =
269
271
  T.let(:EXTERNAL_RTP, Lithic::Payment::Category::TaggedSymbol)
272
+ EXTERNAL_STABLECOIN =
273
+ T.let(:EXTERNAL_STABLECOIN, Lithic::Payment::Category::TaggedSymbol)
270
274
  EXTERNAL_TRANSFER =
271
275
  T.let(:EXTERNAL_TRANSFER, Lithic::Payment::Category::TaggedSymbol)
272
276
  EXTERNAL_WIRE =
@@ -0,0 +1,162 @@
1
+ # typed: strong
2
+
3
+ module Lithic
4
+ module Models
5
+ class PaymentCreateStablecoinParams < Lithic::Internal::Type::BaseModel
6
+ extend Lithic::Internal::Type::RequestParameters::Converter
7
+ include Lithic::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Lithic::PaymentCreateStablecoinParams,
13
+ Lithic::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Payout amount in cents
18
+ sig { returns(Integer) }
19
+ attr_accessor :amount
20
+
21
+ # Token of the blockchain recipient to send the payout to. The recipient must be
22
+ # in the `ENABLED` verification state
23
+ sig { returns(String) }
24
+ attr_accessor :blockchain_recipient_token
25
+
26
+ # Token of the financial account the payout is funded from
27
+ sig { returns(String) }
28
+ attr_accessor :financial_account_token
29
+
30
+ # Direction of the payment. Stablecoin supports payouts only
31
+ sig { returns(Lithic::PaymentCreateStablecoinParams::Type::OrSymbol) }
32
+ attr_accessor :type
33
+
34
+ # Customer-provided token that will serve as an idempotency token. This token will
35
+ # become the transaction token
36
+ sig { returns(T.nilable(String)) }
37
+ attr_reader :token
38
+
39
+ sig { params(token: String).void }
40
+ attr_writer :token
41
+
42
+ # Optional hold to settle when this payout is initiated
43
+ sig { returns(T.nilable(Lithic::PaymentCreateStablecoinParams::Hold)) }
44
+ attr_reader :hold
45
+
46
+ sig do
47
+ params(hold: Lithic::PaymentCreateStablecoinParams::Hold::OrHash).void
48
+ end
49
+ attr_writer :hold
50
+
51
+ # Memo recorded on the payout. Defaults to `Stablecoin payout on <chain>` when
52
+ # omitted
53
+ sig { returns(T.nilable(String)) }
54
+ attr_reader :memo
55
+
56
+ sig { params(memo: String).void }
57
+ attr_writer :memo
58
+
59
+ sig do
60
+ params(
61
+ amount: Integer,
62
+ blockchain_recipient_token: String,
63
+ financial_account_token: String,
64
+ type: Lithic::PaymentCreateStablecoinParams::Type::OrSymbol,
65
+ token: String,
66
+ hold: Lithic::PaymentCreateStablecoinParams::Hold::OrHash,
67
+ memo: String,
68
+ request_options: Lithic::RequestOptions::OrHash
69
+ ).returns(T.attached_class)
70
+ end
71
+ def self.new(
72
+ # Payout amount in cents
73
+ amount:,
74
+ # Token of the blockchain recipient to send the payout to. The recipient must be
75
+ # in the `ENABLED` verification state
76
+ blockchain_recipient_token:,
77
+ # Token of the financial account the payout is funded from
78
+ financial_account_token:,
79
+ # Direction of the payment. Stablecoin supports payouts only
80
+ type:,
81
+ # Customer-provided token that will serve as an idempotency token. This token will
82
+ # become the transaction token
83
+ token: nil,
84
+ # Optional hold to settle when this payout is initiated
85
+ hold: nil,
86
+ # Memo recorded on the payout. Defaults to `Stablecoin payout on <chain>` when
87
+ # omitted
88
+ memo: nil,
89
+ request_options: {}
90
+ )
91
+ end
92
+
93
+ sig do
94
+ override.returns(
95
+ {
96
+ amount: Integer,
97
+ blockchain_recipient_token: String,
98
+ financial_account_token: String,
99
+ type: Lithic::PaymentCreateStablecoinParams::Type::OrSymbol,
100
+ token: String,
101
+ hold: Lithic::PaymentCreateStablecoinParams::Hold,
102
+ memo: String,
103
+ request_options: Lithic::RequestOptions
104
+ }
105
+ )
106
+ end
107
+ def to_hash
108
+ end
109
+
110
+ # Direction of the payment. Stablecoin supports payouts only
111
+ module Type
112
+ extend Lithic::Internal::Type::Enum
113
+
114
+ TaggedSymbol =
115
+ T.type_alias do
116
+ T.all(Symbol, Lithic::PaymentCreateStablecoinParams::Type)
117
+ end
118
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
119
+
120
+ PAYMENT =
121
+ T.let(
122
+ :PAYMENT,
123
+ Lithic::PaymentCreateStablecoinParams::Type::TaggedSymbol
124
+ )
125
+
126
+ sig do
127
+ override.returns(
128
+ T::Array[Lithic::PaymentCreateStablecoinParams::Type::TaggedSymbol]
129
+ )
130
+ end
131
+ def self.values
132
+ end
133
+ end
134
+
135
+ class Hold < Lithic::Internal::Type::BaseModel
136
+ OrHash =
137
+ T.type_alias do
138
+ T.any(
139
+ Lithic::PaymentCreateStablecoinParams::Hold,
140
+ Lithic::Internal::AnyHash
141
+ )
142
+ end
143
+
144
+ # Token of the hold to settle when this payout is initiated
145
+ sig { returns(String) }
146
+ attr_accessor :token
147
+
148
+ # Optional hold to settle when this payout is initiated
149
+ sig { params(token: String).returns(T.attached_class) }
150
+ def self.new(
151
+ # Token of the hold to settle when this payout is initiated
152
+ token:
153
+ )
154
+ end
155
+
156
+ sig { override.returns({ token: String }) }
157
+ def to_hash
158
+ end
159
+ end
160
+ end
161
+ end
162
+ end
@@ -0,0 +1,34 @@
1
+ # typed: strong
2
+
3
+ module Lithic
4
+ module Models
5
+ class PaymentCreateStablecoinResponse < Lithic::Models::Payment
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Lithic::Models::PaymentCreateStablecoinResponse,
10
+ Lithic::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Balance
15
+ sig { returns(T.nilable(Lithic::Balance)) }
16
+ attr_reader :balance
17
+
18
+ sig { params(balance: Lithic::Balance::OrHash).void }
19
+ attr_writer :balance
20
+
21
+ # Payment transaction
22
+ sig { params(balance: Lithic::Balance::OrHash).returns(T.attached_class) }
23
+ def self.new(
24
+ # Balance
25
+ balance: nil
26
+ )
27
+ end
28
+
29
+ sig { override.returns({ balance: Lithic::Balance }) }
30
+ def to_hash
31
+ end
32
+ end
33
+ end
34
+ end
@@ -158,6 +158,8 @@ module Lithic
158
158
  OrSymbol = T.type_alias { T.any(Symbol, String) }
159
159
 
160
160
  ACH = T.let(:ACH, Lithic::PaymentListParams::Category::TaggedSymbol)
161
+ STABLECOIN =
162
+ T.let(:STABLECOIN, Lithic::PaymentListParams::Category::TaggedSymbol)
161
163
 
162
164
  sig do
163
165
  override.returns(