stripe 15.0.0 → 15.3.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 (320) hide show
  1. checksums.yaml +4 -4
  2. data/API_VERSION +1 -0
  3. data/CHANGELOG.md +129 -44
  4. data/CONTRIBUTING.md +25 -0
  5. data/Gemfile +1 -1
  6. data/OPENAPI_VERSION +1 -1
  7. data/README.md +28 -55
  8. data/VERSION +1 -1
  9. data/lib/stripe/api_operations/nested_resource.rb +35 -35
  10. data/lib/stripe/api_requestor.rb +1 -1
  11. data/lib/stripe/api_version.rb +2 -1
  12. data/lib/stripe/connection_manager.rb +1 -3
  13. data/lib/stripe/event_types.rb +1 -0
  14. data/lib/stripe/events/v1_billing_meter_error_report_triggered_event.rb +1 -1
  15. data/lib/stripe/events/v1_billing_meter_no_meter_found_event.rb +1 -1
  16. data/lib/stripe/events/v2_core_event_destination_ping_event.rb +21 -0
  17. data/lib/stripe/oauth.rb +1 -1
  18. data/lib/stripe/resources/account.rb +198 -28
  19. data/lib/stripe/resources/account_session.rb +176 -72
  20. data/lib/stripe/resources/apple_pay_domain.rb +1 -2
  21. data/lib/stripe/resources/balance.rb +42 -0
  22. data/lib/stripe/resources/balance_transaction.rb +2 -0
  23. data/lib/stripe/resources/bank_account.rb +2 -2
  24. data/lib/stripe/resources/billing_portal/session.rb +3 -3
  25. data/lib/stripe/resources/capability.rb +1 -1
  26. data/lib/stripe/resources/charge.rb +43 -20
  27. data/lib/stripe/resources/checkout/session.rb +120 -19
  28. data/lib/stripe/resources/confirmation_token.rb +119 -100
  29. data/lib/stripe/resources/country_spec.rb +1 -1
  30. data/lib/stripe/resources/coupon.rb +2 -3
  31. data/lib/stripe/resources/credit_note.rb +21 -18
  32. data/lib/stripe/resources/customer.rb +4 -6
  33. data/lib/stripe/resources/customer_session.rb +5 -5
  34. data/lib/stripe/resources/dispute.rb +2 -2
  35. data/lib/stripe/resources/event.rb +3 -1
  36. data/lib/stripe/resources/file.rb +1 -1
  37. data/lib/stripe/resources/funding_instructions.rb +1 -1
  38. data/lib/stripe/resources/identity/verification_report.rb +6 -0
  39. data/lib/stripe/resources/identity/verification_session.rb +51 -11
  40. data/lib/stripe/resources/invoice.rb +146 -32
  41. data/lib/stripe/resources/invoice_item.rb +3 -7
  42. data/lib/stripe/resources/invoice_line_item.rb +1 -1
  43. data/lib/stripe/resources/invoice_payment.rb +9 -2
  44. data/lib/stripe/resources/issuing/authorization.rb +8 -8
  45. data/lib/stripe/resources/issuing/card.rb +1 -1
  46. data/lib/stripe/resources/issuing/dispute.rb +3 -3
  47. data/lib/stripe/resources/login_link.rb +2 -1
  48. data/lib/stripe/resources/mandate.rb +3 -0
  49. data/lib/stripe/resources/payment_intent.rb +602 -325
  50. data/lib/stripe/resources/payment_method.rb +76 -117
  51. data/lib/stripe/resources/payment_method_configuration.rb +356 -2
  52. data/lib/stripe/resources/payment_method_domain.rb +15 -2
  53. data/lib/stripe/resources/payout.rb +4 -4
  54. data/lib/stripe/resources/person.rb +27 -3
  55. data/lib/stripe/resources/plan.rb +2 -3
  56. data/lib/stripe/resources/price.rb +1 -1
  57. data/lib/stripe/resources/product.rb +1 -2
  58. data/lib/stripe/resources/quote.rb +28 -3
  59. data/lib/stripe/resources/radar/value_list.rb +1 -2
  60. data/lib/stripe/resources/radar/value_list_item.rb +1 -2
  61. data/lib/stripe/resources/refund.rb +8 -1
  62. data/lib/stripe/resources/reversal.rb +1 -1
  63. data/lib/stripe/resources/review.rb +1 -1
  64. data/lib/stripe/resources/setup_attempt.rb +1 -1
  65. data/lib/stripe/resources/setup_intent.rb +414 -293
  66. data/lib/stripe/resources/source.rb +1 -1
  67. data/lib/stripe/resources/subscription.rb +149 -27
  68. data/lib/stripe/resources/subscription_item.rb +33 -0
  69. data/lib/stripe/resources/subscription_schedule.rb +141 -4
  70. data/lib/stripe/resources/tax/calculation.rb +6 -2
  71. data/lib/stripe/resources/tax/calculation_line_item.rb +2 -0
  72. data/lib/stripe/resources/tax/registration.rb +261 -1
  73. data/lib/stripe/resources/tax/transaction.rb +1 -1
  74. data/lib/stripe/resources/tax_id.rb +3 -4
  75. data/lib/stripe/resources/tax_rate.rb +2 -2
  76. data/lib/stripe/resources/terminal/configuration.rb +2 -2
  77. data/lib/stripe/resources/terminal/location.rb +2 -3
  78. data/lib/stripe/resources/terminal/reader.rb +426 -6
  79. data/lib/stripe/resources/test_helpers/test_clock.rb +1 -2
  80. data/lib/stripe/resources/token.rb +63 -2
  81. data/lib/stripe/resources/transfer.rb +1 -1
  82. data/lib/stripe/resources/treasury/financial_account.rb +5 -1
  83. data/lib/stripe/resources/v2/billing/meter_event.rb +2 -2
  84. data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +2 -2
  85. data/lib/stripe/resources/v2/billing/meter_event_session.rb +2 -2
  86. data/lib/stripe/resources/v2/event.rb +2 -2
  87. data/lib/stripe/resources/v2/event_destination.rb +2 -2
  88. data/lib/stripe/resources/webhook_endpoint.rb +1 -2
  89. data/lib/stripe/resources.rb +1 -0
  90. data/lib/stripe/services/account_external_account_service.rb +3 -4
  91. data/lib/stripe/services/account_login_link_service.rb +1 -1
  92. data/lib/stripe/services/account_person_service.rb +85 -2
  93. data/lib/stripe/services/account_service.rb +169 -20
  94. data/lib/stripe/services/account_session_service.rb +115 -47
  95. data/lib/stripe/services/apple_pay_domain_service.rb +1 -2
  96. data/lib/stripe/services/application_fee_service.rb +1 -1
  97. data/lib/stripe/services/apps_service.rb +1 -1
  98. data/lib/stripe/services/balance_service.rb +1 -1
  99. data/lib/stripe/services/billing/meter_service.rb +1 -1
  100. data/lib/stripe/services/billing_portal/session_service.rb +1 -1
  101. data/lib/stripe/services/billing_portal_service.rb +1 -1
  102. data/lib/stripe/services/billing_service.rb +1 -1
  103. data/lib/stripe/services/charge_service.rb +4 -4
  104. data/lib/stripe/services/checkout/session_service.rb +94 -15
  105. data/lib/stripe/services/checkout_service.rb +1 -1
  106. data/lib/stripe/services/climate_service.rb +1 -1
  107. data/lib/stripe/services/coupon_service.rb +1 -2
  108. data/lib/stripe/services/credit_note_preview_lines_service.rb +3 -3
  109. data/lib/stripe/services/credit_note_service.rb +14 -15
  110. data/lib/stripe/services/customer_balance_transaction_service.rb +3 -3
  111. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +2 -2
  112. data/lib/stripe/services/customer_payment_method_service.rb +1 -1
  113. data/lib/stripe/services/customer_payment_source_service.rb +1 -1
  114. data/lib/stripe/services/customer_service.rb +5 -7
  115. data/lib/stripe/services/customer_session_service.rb +1 -1
  116. data/lib/stripe/services/customer_tax_id_service.rb +2 -3
  117. data/lib/stripe/services/dispute_service.rb +1 -1
  118. data/lib/stripe/services/entitlements_service.rb +1 -1
  119. data/lib/stripe/services/file_service.rb +1 -1
  120. data/lib/stripe/services/financial_connections/account_service.rb +1 -1
  121. data/lib/stripe/services/financial_connections_service.rb +1 -1
  122. data/lib/stripe/services/forwarding_service.rb +1 -1
  123. data/lib/stripe/services/identity/verification_session_service.rb +21 -5
  124. data/lib/stripe/services/identity_service.rb +1 -1
  125. data/lib/stripe/services/invoice_item_service.rb +1 -2
  126. data/lib/stripe/services/invoice_service.rb +122 -28
  127. data/lib/stripe/services/issuing/authorization_service.rb +4 -4
  128. data/lib/stripe/services/issuing/card_service.rb +1 -1
  129. data/lib/stripe/services/issuing/dispute_service.rb +2 -2
  130. data/lib/stripe/services/issuing_service.rb +1 -1
  131. data/lib/stripe/services/payment_intent_service.rb +563 -313
  132. data/lib/stripe/services/payment_link_service.rb +1 -1
  133. data/lib/stripe/services/payment_method_configuration_service.rb +254 -2
  134. data/lib/stripe/services/payment_method_domain_service.rb +1 -1
  135. data/lib/stripe/services/payment_method_service.rb +59 -105
  136. data/lib/stripe/services/payout_service.rb +2 -2
  137. data/lib/stripe/services/plan_service.rb +2 -3
  138. data/lib/stripe/services/price_service.rb +2 -2
  139. data/lib/stripe/services/product_feature_service.rb +1 -2
  140. data/lib/stripe/services/product_service.rb +3 -4
  141. data/lib/stripe/services/promotion_code_service.rb +1 -1
  142. data/lib/stripe/services/quote_service.rb +21 -4
  143. data/lib/stripe/services/radar/early_fraud_warning_service.rb +1 -1
  144. data/lib/stripe/services/radar/value_list_item_service.rb +1 -2
  145. data/lib/stripe/services/radar/value_list_service.rb +1 -2
  146. data/lib/stripe/services/radar_service.rb +1 -1
  147. data/lib/stripe/services/reporting_service.rb +1 -1
  148. data/lib/stripe/services/setup_intent_service.rb +403 -291
  149. data/lib/stripe/services/sigma_service.rb +1 -1
  150. data/lib/stripe/services/source_service.rb +2 -2
  151. data/lib/stripe/services/subscription_item_service.rb +26 -0
  152. data/lib/stripe/services/subscription_schedule_service.rb +106 -3
  153. data/lib/stripe/services/subscription_service.rb +121 -26
  154. data/lib/stripe/services/tax/calculation_service.rb +6 -2
  155. data/lib/stripe/services/tax/registration_service.rb +170 -1
  156. data/lib/stripe/services/tax/transaction_service.rb +1 -1
  157. data/lib/stripe/services/tax_id_service.rb +2 -3
  158. data/lib/stripe/services/tax_service.rb +1 -1
  159. data/lib/stripe/services/terminal/configuration_service.rb +1 -2
  160. data/lib/stripe/services/terminal/location_service.rb +2 -3
  161. data/lib/stripe/services/terminal/reader_service.rb +196 -2
  162. data/lib/stripe/services/terminal_service.rb +1 -1
  163. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +90 -91
  164. data/lib/stripe/services/test_helpers/issuing_service.rb +1 -1
  165. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +43 -0
  166. data/lib/stripe/services/test_helpers/terminal_service.rb +1 -1
  167. data/lib/stripe/services/test_helpers/test_clock_service.rb +1 -2
  168. data/lib/stripe/services/test_helpers/treasury_service.rb +1 -1
  169. data/lib/stripe/services/test_helpers_service.rb +1 -1
  170. data/lib/stripe/services/token_service.rb +62 -1
  171. data/lib/stripe/services/transfer_service.rb +2 -2
  172. data/lib/stripe/services/treasury/financial_account_service.rb +6 -2
  173. data/lib/stripe/services/treasury_service.rb +1 -1
  174. data/lib/stripe/services/v1_services.rb +1 -1
  175. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +1 -2
  176. data/lib/stripe/services/v2/billing_service.rb +3 -3
  177. data/lib/stripe/services/v2/core/event_destination_service.rb +17 -23
  178. data/lib/stripe/services/v2/core/event_service.rb +1 -2
  179. data/lib/stripe/services/v2/core_service.rb +1 -1
  180. data/lib/stripe/services/v2_services.rb +1 -1
  181. data/lib/stripe/services/webhook_endpoint_service.rb +1 -2
  182. data/lib/stripe/version.rb +1 -1
  183. data/lib/stripe/webhook.rb +1 -1
  184. data/rbi/stripe/resources/account.rbi +190 -35
  185. data/rbi/stripe/resources/account_session.rbi +196 -77
  186. data/rbi/stripe/resources/apple_pay_domain.rbi +1 -3
  187. data/rbi/stripe/resources/balance.rbi +55 -0
  188. data/rbi/stripe/resources/balance_transaction.rbi +3 -0
  189. data/rbi/stripe/resources/bank_account.rbi +2 -2
  190. data/rbi/stripe/resources/billing/alert.rbi +2 -2
  191. data/rbi/stripe/resources/billing_portal/session.rbi +3 -3
  192. data/rbi/stripe/resources/capability.rbi +1 -1
  193. data/rbi/stripe/resources/charge.rbi +52 -20
  194. data/rbi/stripe/resources/checkout/session.rbi +133 -24
  195. data/rbi/stripe/resources/confirmation_token.rbi +140 -115
  196. data/rbi/stripe/resources/country_spec.rbi +1 -1
  197. data/rbi/stripe/resources/coupon.rbi +2 -4
  198. data/rbi/stripe/resources/credit_note.rbi +23 -18
  199. data/rbi/stripe/resources/customer.rbi +4 -8
  200. data/rbi/stripe/resources/customer_session.rbi +5 -5
  201. data/rbi/stripe/resources/dispute.rbi +2 -2
  202. data/rbi/stripe/resources/event.rbi +4 -1
  203. data/rbi/stripe/resources/file.rbi +1 -1
  204. data/rbi/stripe/resources/identity/verification_report.rbi +9 -0
  205. data/rbi/stripe/resources/identity/verification_session.rbi +59 -12
  206. data/rbi/stripe/resources/invoice.rbi +149 -40
  207. data/rbi/stripe/resources/invoice_item.rbi +3 -8
  208. data/rbi/stripe/resources/invoice_line_item.rbi +2 -2
  209. data/rbi/stripe/resources/invoice_payment.rbi +9 -2
  210. data/rbi/stripe/resources/issuing/authorization.rbi +8 -8
  211. data/rbi/stripe/resources/issuing/card.rbi +1 -1
  212. data/rbi/stripe/resources/issuing/dispute.rbi +3 -3
  213. data/rbi/stripe/resources/login_link.rbi +2 -1
  214. data/rbi/stripe/resources/mandate.rbi +4 -0
  215. data/rbi/stripe/resources/payment_intent.rbi +637 -381
  216. data/rbi/stripe/resources/payment_method.rbi +81 -133
  217. data/rbi/stripe/resources/payment_method_configuration.rbi +400 -4
  218. data/rbi/stripe/resources/payment_method_domain.rbi +18 -2
  219. data/rbi/stripe/resources/payout.rbi +4 -4
  220. data/rbi/stripe/resources/person.rbi +33 -3
  221. data/rbi/stripe/resources/plan.rbi +2 -4
  222. data/rbi/stripe/resources/price.rbi +1 -1
  223. data/rbi/stripe/resources/product.rbi +1 -3
  224. data/rbi/stripe/resources/quote.rbi +25 -3
  225. data/rbi/stripe/resources/radar/value_list.rbi +1 -3
  226. data/rbi/stripe/resources/radar/value_list_item.rbi +1 -3
  227. data/rbi/stripe/resources/refund.rbi +8 -1
  228. data/rbi/stripe/resources/reversal.rbi +1 -1
  229. data/rbi/stripe/resources/review.rbi +1 -1
  230. data/rbi/stripe/resources/setup_attempt.rbi +1 -1
  231. data/rbi/stripe/resources/setup_intent.rbi +464 -346
  232. data/rbi/stripe/resources/source.rbi +1 -1
  233. data/rbi/stripe/resources/subscription.rbi +150 -34
  234. data/rbi/stripe/resources/subscription_item.rbi +36 -2
  235. data/rbi/stripe/resources/subscription_schedule.rbi +161 -11
  236. data/rbi/stripe/resources/tax/calculation.rbi +7 -3
  237. data/rbi/stripe/resources/tax/calculation_line_item.rbi +4 -1
  238. data/rbi/stripe/resources/tax/registration.rbi +249 -2
  239. data/rbi/stripe/resources/tax/transaction.rbi +1 -1
  240. data/rbi/stripe/resources/tax_id.rbi +3 -5
  241. data/rbi/stripe/resources/tax_rate.rbi +2 -2
  242. data/rbi/stripe/resources/terminal/configuration.rbi +2 -3
  243. data/rbi/stripe/resources/terminal/location.rbi +4 -6
  244. data/rbi/stripe/resources/terminal/reader.rbi +415 -8
  245. data/rbi/stripe/resources/test_helpers/test_clock.rbi +1 -3
  246. data/rbi/stripe/resources/token.rbi +70 -4
  247. data/rbi/stripe/resources/transfer.rbi +1 -1
  248. data/rbi/stripe/resources/treasury/financial_account.rbi +6 -2
  249. data/rbi/stripe/resources/v2/billing/meter_event.rbi +3 -3
  250. data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +3 -3
  251. data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +3 -3
  252. data/rbi/stripe/resources/v2/event.rbi +3 -3
  253. data/rbi/stripe/resources/v2/event_destination.rbi +3 -3
  254. data/rbi/stripe/resources/webhook_endpoint.rbi +1 -3
  255. data/rbi/stripe/services/account_external_account_service.rbi +3 -5
  256. data/rbi/stripe/services/account_login_link_service.rbi +1 -1
  257. data/rbi/stripe/services/account_person_service.rbi +93 -5
  258. data/rbi/stripe/services/account_service.rbi +166 -28
  259. data/rbi/stripe/services/account_session_service.rbi +126 -52
  260. data/rbi/stripe/services/apple_pay_domain_service.rbi +1 -3
  261. data/rbi/stripe/services/balance_service.rbi +1 -1
  262. data/rbi/stripe/services/billing/alert_service.rbi +2 -2
  263. data/rbi/stripe/services/billing_portal/session_service.rbi +1 -1
  264. data/rbi/stripe/services/charge_service.rbi +4 -4
  265. data/rbi/stripe/services/checkout/session_service.rbi +104 -19
  266. data/rbi/stripe/services/coupon_service.rbi +1 -3
  267. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +3 -3
  268. data/rbi/stripe/services/credit_note_service.rbi +13 -14
  269. data/rbi/stripe/services/customer_balance_transaction_service.rbi +3 -3
  270. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +2 -2
  271. data/rbi/stripe/services/customer_payment_method_service.rbi +1 -1
  272. data/rbi/stripe/services/customer_payment_source_service.rbi +1 -1
  273. data/rbi/stripe/services/customer_service.rbi +4 -8
  274. data/rbi/stripe/services/customer_session_service.rbi +1 -1
  275. data/rbi/stripe/services/customer_tax_id_service.rbi +2 -4
  276. data/rbi/stripe/services/dispute_service.rbi +1 -1
  277. data/rbi/stripe/services/file_service.rbi +1 -1
  278. data/rbi/stripe/services/identity/verification_session_service.rbi +22 -6
  279. data/rbi/stripe/services/invoice_item_service.rbi +1 -3
  280. data/rbi/stripe/services/invoice_service.rbi +126 -35
  281. data/rbi/stripe/services/issuing/authorization_service.rbi +4 -4
  282. data/rbi/stripe/services/issuing/card_service.rbi +1 -1
  283. data/rbi/stripe/services/issuing/dispute_service.rbi +2 -2
  284. data/rbi/stripe/services/payment_intent_service.rbi +599 -369
  285. data/rbi/stripe/services/payment_method_configuration_service.rbi +280 -4
  286. data/rbi/stripe/services/payment_method_domain_service.rbi +1 -1
  287. data/rbi/stripe/services/payment_method_service.rbi +62 -121
  288. data/rbi/stripe/services/payout_service.rbi +2 -2
  289. data/rbi/stripe/services/plan_service.rbi +2 -4
  290. data/rbi/stripe/services/price_service.rbi +2 -2
  291. data/rbi/stripe/services/product_feature_service.rbi +1 -3
  292. data/rbi/stripe/services/product_service.rbi +2 -4
  293. data/rbi/stripe/services/promotion_code_service.rbi +1 -1
  294. data/rbi/stripe/services/quote_service.rbi +16 -3
  295. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +1 -1
  296. data/rbi/stripe/services/radar/value_list_item_service.rbi +1 -3
  297. data/rbi/stripe/services/radar/value_list_service.rbi +1 -3
  298. data/rbi/stripe/services/setup_intent_service.rbi +457 -344
  299. data/rbi/stripe/services/source_service.rbi +1 -1
  300. data/rbi/stripe/services/subscription_item_service.rbi +28 -2
  301. data/rbi/stripe/services/subscription_schedule_service.rbi +119 -10
  302. data/rbi/stripe/services/subscription_service.rbi +121 -33
  303. data/rbi/stripe/services/tax/calculation_service.rbi +6 -2
  304. data/rbi/stripe/services/tax/registration_service.rbi +171 -2
  305. data/rbi/stripe/services/tax_id_service.rbi +2 -4
  306. data/rbi/stripe/services/terminal/configuration_service.rbi +1 -3
  307. data/rbi/stripe/services/terminal/location_service.rbi +4 -6
  308. data/rbi/stripe/services/terminal/reader_service.rbi +200 -4
  309. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +106 -106
  310. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +31 -0
  311. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +1 -3
  312. data/rbi/stripe/services/token_service.rbi +71 -3
  313. data/rbi/stripe/services/transfer_service.rbi +1 -1
  314. data/rbi/stripe/services/treasury/financial_account_service.rbi +6 -2
  315. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +1 -3
  316. data/rbi/stripe/services/v2/billing_service.rbi +1 -1
  317. data/rbi/stripe/services/v2/core/event_destination_service.rbi +14 -22
  318. data/rbi/stripe/services/v2/core/event_service.rbi +1 -3
  319. data/rbi/stripe/services/webhook_endpoint_service.rbi +1 -3
  320. metadata +5 -2
@@ -848,7 +848,7 @@ module Stripe
848
848
  # Attribute for field swish_handle_redirect_or_display_qr_code
849
849
  sig { returns(SwishHandleRedirectOrDisplayQrCode) }
850
850
  attr_reader :swish_handle_redirect_or_display_qr_code
851
- # Type of the next action to perform, one of `redirect_to_url`, `use_stripe_sdk`, `alipay_handle_redirect`, `oxxo_display_details`, or `verify_with_microdeposits`.
851
+ # Type of the next action to perform. Refer to the other child attributes under `next_action` for available values. Examples include: `redirect_to_url`, `use_stripe_sdk`, `alipay_handle_redirect`, `oxxo_display_details`, or `verify_with_microdeposits`.
852
852
  sig { returns(String) }
853
853
  attr_reader :type
854
854
  # When confirming a PaymentIntent with Stripe.js, Stripe.js depends on the contents of this dictionary to invoke authentication flows. The shape of the contents is subject to change and is only intended to be used by Stripe.js.
@@ -1025,6 +1025,11 @@ module Stripe
1025
1025
  sig { returns(String) }
1026
1026
  attr_reader :setup_future_usage
1027
1027
  end
1028
+ class Billie < Stripe::StripeObject
1029
+ # Controls when the funds will be captured from the customer's account.
1030
+ sig { returns(String) }
1031
+ attr_reader :capture_method
1032
+ end
1028
1033
  class Blik < Stripe::StripeObject
1029
1034
  # Indicates that you intend to make future payments with this PaymentIntent's payment method.
1030
1035
  #
@@ -1060,7 +1065,7 @@ module Stripe
1060
1065
  # One of `month`.
1061
1066
  sig { returns(T.nilable(String)) }
1062
1067
  attr_reader :interval
1063
- # Type of installment plan, one of `fixed_count`.
1068
+ # Type of installment plan, one of `fixed_count`, `bonus`, or `revolving`.
1064
1069
  sig { returns(String) }
1065
1070
  attr_reader :type
1066
1071
  end
@@ -1072,7 +1077,7 @@ module Stripe
1072
1077
  # One of `month`.
1073
1078
  sig { returns(T.nilable(String)) }
1074
1079
  attr_reader :interval
1075
- # Type of installment plan, one of `fixed_count`.
1080
+ # Type of installment plan, one of `fixed_count`, `bonus`, or `revolving`.
1076
1081
  sig { returns(String) }
1077
1082
  attr_reader :type
1078
1083
  end
@@ -1118,7 +1123,7 @@ module Stripe
1118
1123
  # Controls when the funds will be captured from the customer's account.
1119
1124
  sig { returns(String) }
1120
1125
  attr_reader :capture_method
1121
- # Installment details for this payment (Mexico only).
1126
+ # Installment details for this payment.
1122
1127
  #
1123
1128
  # For more information, see the [installments integration guide](https://stripe.com/docs/payments/installments).
1124
1129
  sig { returns(T.nilable(Installments)) }
@@ -1193,6 +1198,17 @@ module Stripe
1193
1198
  sig { returns(String) }
1194
1199
  attr_reader :setup_future_usage
1195
1200
  end
1201
+ class Crypto < Stripe::StripeObject
1202
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
1203
+ #
1204
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
1205
+ #
1206
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
1207
+ #
1208
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
1209
+ sig { returns(String) }
1210
+ attr_reader :setup_future_usage
1211
+ end
1196
1212
  class CustomerBalance < Stripe::StripeObject
1197
1213
  class BankTransfer < Stripe::StripeObject
1198
1214
  class EuBankTransfer < Stripe::StripeObject
@@ -1531,6 +1547,11 @@ module Stripe
1531
1547
  sig { returns(String) }
1532
1548
  attr_reader :capture_method
1533
1549
  end
1550
+ class Satispay < Stripe::StripeObject
1551
+ # Controls when the funds will be captured from the customer's account.
1552
+ sig { returns(String) }
1553
+ attr_reader :capture_method
1554
+ end
1534
1555
  class SepaDebit < Stripe::StripeObject
1535
1556
  class MandateOptions < Stripe::StripeObject
1536
1557
  # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'STRIPE'.
@@ -1697,6 +1718,9 @@ module Stripe
1697
1718
  # Attribute for field bancontact
1698
1719
  sig { returns(Bancontact) }
1699
1720
  attr_reader :bancontact
1721
+ # Attribute for field billie
1722
+ sig { returns(Billie) }
1723
+ attr_reader :billie
1700
1724
  # Attribute for field blik
1701
1725
  sig { returns(Blik) }
1702
1726
  attr_reader :blik
@@ -1712,6 +1736,9 @@ module Stripe
1712
1736
  # Attribute for field cashapp
1713
1737
  sig { returns(Cashapp) }
1714
1738
  attr_reader :cashapp
1739
+ # Attribute for field crypto
1740
+ sig { returns(Crypto) }
1741
+ attr_reader :crypto
1715
1742
  # Attribute for field customer_balance
1716
1743
  sig { returns(CustomerBalance) }
1717
1744
  attr_reader :customer_balance
@@ -1790,6 +1817,9 @@ module Stripe
1790
1817
  # Attribute for field samsung_pay
1791
1818
  sig { returns(SamsungPay) }
1792
1819
  attr_reader :samsung_pay
1820
+ # Attribute for field satispay
1821
+ sig { returns(Satispay) }
1822
+ attr_reader :satispay
1793
1823
  # Attribute for field sepa_debit
1794
1824
  sig { returns(SepaDebit) }
1795
1825
  attr_reader :sepa_debit
@@ -2090,9 +2120,7 @@ module Stripe
2090
2120
  end
2091
2121
  class MandateData < Stripe::RequestParams
2092
2122
  class CustomerAcceptance < Stripe::RequestParams
2093
- class Offline < Stripe::RequestParams
2094
-
2095
- end
2123
+ class Offline < Stripe::RequestParams; end
2096
2124
  class Online < Stripe::RequestParams
2097
2125
  # The IP address from which the Mandate was accepted by the customer.
2098
2126
  sig { returns(String) }
@@ -2148,21 +2176,11 @@ module Stripe
2148
2176
  }
2149
2177
  def initialize(account_number: nil, institution_number: nil, transit_number: nil); end
2150
2178
  end
2151
- class Affirm < Stripe::RequestParams
2152
-
2153
- end
2154
- class AfterpayClearpay < Stripe::RequestParams
2155
-
2156
- end
2157
- class Alipay < Stripe::RequestParams
2158
-
2159
- end
2160
- class Alma < Stripe::RequestParams
2161
-
2162
- end
2163
- class AmazonPay < Stripe::RequestParams
2164
-
2165
- end
2179
+ class Affirm < Stripe::RequestParams; end
2180
+ class AfterpayClearpay < Stripe::RequestParams; end
2181
+ class Alipay < Stripe::RequestParams; end
2182
+ class Alma < Stripe::RequestParams; end
2183
+ class AmazonPay < Stripe::RequestParams; end
2166
2184
  class AuBecsDebit < Stripe::RequestParams
2167
2185
  # The account number for the bank account.
2168
2186
  sig { returns(String) }
@@ -2183,12 +2201,8 @@ module Stripe
2183
2201
  sig { params(account_number: T.nilable(String), sort_code: T.nilable(String)).void }
2184
2202
  def initialize(account_number: nil, sort_code: nil); end
2185
2203
  end
2186
- class Bancontact < Stripe::RequestParams
2187
-
2188
- end
2189
- class Billie < Stripe::RequestParams
2190
-
2191
- end
2204
+ class Bancontact < Stripe::RequestParams; end
2205
+ class Billie < Stripe::RequestParams; end
2192
2206
  class BillingDetails < Stripe::RequestParams
2193
2207
  class Address < Stripe::RequestParams
2194
2208
  # City, district, suburb, town, or village.
@@ -2235,14 +2249,15 @@ module Stripe
2235
2249
  # Billing phone number (including extension).
2236
2250
  sig { returns(T.nilable(T.nilable(String))) }
2237
2251
  attr_accessor :phone
2252
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
2253
+ sig { returns(T.nilable(String)) }
2254
+ attr_accessor :tax_id
2238
2255
  sig {
2239
- params(address: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodData::BillingDetails::Address))), email: T.nilable(T.nilable(String)), name: T.nilable(T.nilable(String)), phone: T.nilable(T.nilable(String))).void
2256
+ params(address: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodData::BillingDetails::Address))), email: T.nilable(T.nilable(String)), name: T.nilable(T.nilable(String)), phone: T.nilable(T.nilable(String)), tax_id: T.nilable(String)).void
2240
2257
  }
2241
- def initialize(address: nil, email: nil, name: nil, phone: nil); end
2242
- end
2243
- class Blik < Stripe::RequestParams
2244
-
2258
+ def initialize(address: nil, email: nil, name: nil, phone: nil, tax_id: nil); end
2245
2259
  end
2260
+ class Blik < Stripe::RequestParams; end
2246
2261
  class Boleto < Stripe::RequestParams
2247
2262
  # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
2248
2263
  sig { returns(String) }
@@ -2250,12 +2265,9 @@ module Stripe
2250
2265
  sig { params(tax_id: String).void }
2251
2266
  def initialize(tax_id: nil); end
2252
2267
  end
2253
- class Cashapp < Stripe::RequestParams
2254
-
2255
- end
2256
- class CustomerBalance < Stripe::RequestParams
2257
-
2258
- end
2268
+ class Cashapp < Stripe::RequestParams; end
2269
+ class Crypto < Stripe::RequestParams; end
2270
+ class CustomerBalance < Stripe::RequestParams; end
2259
2271
  class Eps < Stripe::RequestParams
2260
2272
  # The customer's bank.
2261
2273
  sig { returns(T.nilable(String)) }
@@ -2273,12 +2285,8 @@ module Stripe
2273
2285
  sig { params(account_holder_type: T.nilable(String), bank: String).void }
2274
2286
  def initialize(account_holder_type: nil, bank: nil); end
2275
2287
  end
2276
- class Giropay < Stripe::RequestParams
2277
-
2278
- end
2279
- class Grabpay < Stripe::RequestParams
2280
-
2281
- end
2288
+ class Giropay < Stripe::RequestParams; end
2289
+ class Grabpay < Stripe::RequestParams; end
2282
2290
  class Ideal < Stripe::RequestParams
2283
2291
  # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
2284
2292
  sig { returns(T.nilable(String)) }
@@ -2286,12 +2294,8 @@ module Stripe
2286
2294
  sig { params(bank: T.nilable(String)).void }
2287
2295
  def initialize(bank: nil); end
2288
2296
  end
2289
- class InteracPresent < Stripe::RequestParams
2290
-
2291
- end
2292
- class KakaoPay < Stripe::RequestParams
2293
-
2294
- end
2297
+ class InteracPresent < Stripe::RequestParams; end
2298
+ class KakaoPay < Stripe::RequestParams; end
2295
2299
  class Klarna < Stripe::RequestParams
2296
2300
  class Dob < Stripe::RequestParams
2297
2301
  # The day of birth, between 1 and 31.
@@ -2316,21 +2320,11 @@ module Stripe
2316
2320
  }
2317
2321
  def initialize(dob: nil); end
2318
2322
  end
2319
- class Konbini < Stripe::RequestParams
2320
-
2321
- end
2322
- class KrCard < Stripe::RequestParams
2323
-
2324
- end
2325
- class Link < Stripe::RequestParams
2326
-
2327
- end
2328
- class Mobilepay < Stripe::RequestParams
2329
-
2330
- end
2331
- class Multibanco < Stripe::RequestParams
2332
-
2333
- end
2323
+ class Konbini < Stripe::RequestParams; end
2324
+ class KrCard < Stripe::RequestParams; end
2325
+ class Link < Stripe::RequestParams; end
2326
+ class Mobilepay < Stripe::RequestParams; end
2327
+ class Multibanco < Stripe::RequestParams; end
2334
2328
  class NaverPay < Stripe::RequestParams
2335
2329
  # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
2336
2330
  sig { returns(T.nilable(String)) }
@@ -2369,9 +2363,7 @@ module Stripe
2369
2363
  suffix: nil
2370
2364
  ); end
2371
2365
  end
2372
- class Oxxo < Stripe::RequestParams
2373
-
2374
- end
2366
+ class Oxxo < Stripe::RequestParams; end
2375
2367
  class P24 < Stripe::RequestParams
2376
2368
  # The customer's bank.
2377
2369
  sig { returns(T.nilable(String)) }
@@ -2379,24 +2371,12 @@ module Stripe
2379
2371
  sig { params(bank: T.nilable(String)).void }
2380
2372
  def initialize(bank: nil); end
2381
2373
  end
2382
- class PayByBank < Stripe::RequestParams
2383
-
2384
- end
2385
- class Payco < Stripe::RequestParams
2386
-
2387
- end
2388
- class Paynow < Stripe::RequestParams
2389
-
2390
- end
2391
- class Paypal < Stripe::RequestParams
2392
-
2393
- end
2394
- class Pix < Stripe::RequestParams
2395
-
2396
- end
2397
- class Promptpay < Stripe::RequestParams
2398
-
2399
- end
2374
+ class PayByBank < Stripe::RequestParams; end
2375
+ class Payco < Stripe::RequestParams; end
2376
+ class Paynow < Stripe::RequestParams; end
2377
+ class Paypal < Stripe::RequestParams; end
2378
+ class Pix < Stripe::RequestParams; end
2379
+ class Promptpay < Stripe::RequestParams; end
2400
2380
  class RadarOptions < Stripe::RequestParams
2401
2381
  # A [Radar Session](https://stripe.com/docs/radar/radar-session) is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments.
2402
2382
  sig { returns(T.nilable(String)) }
@@ -2404,15 +2384,9 @@ module Stripe
2404
2384
  sig { params(session: T.nilable(String)).void }
2405
2385
  def initialize(session: nil); end
2406
2386
  end
2407
- class RevolutPay < Stripe::RequestParams
2408
-
2409
- end
2410
- class SamsungPay < Stripe::RequestParams
2411
-
2412
- end
2413
- class Satispay < Stripe::RequestParams
2414
-
2415
- end
2387
+ class RevolutPay < Stripe::RequestParams; end
2388
+ class SamsungPay < Stripe::RequestParams; end
2389
+ class Satispay < Stripe::RequestParams; end
2416
2390
  class SepaDebit < Stripe::RequestParams
2417
2391
  # IBAN of the bank account.
2418
2392
  sig { returns(String) }
@@ -2427,12 +2401,8 @@ module Stripe
2427
2401
  sig { params(country: String).void }
2428
2402
  def initialize(country: nil); end
2429
2403
  end
2430
- class Swish < Stripe::RequestParams
2431
-
2432
- end
2433
- class Twint < Stripe::RequestParams
2434
-
2435
- end
2404
+ class Swish < Stripe::RequestParams; end
2405
+ class Twint < Stripe::RequestParams; end
2436
2406
  class UsBankAccount < Stripe::RequestParams
2437
2407
  # Account holder type: individual or company.
2438
2408
  sig { returns(T.nilable(String)) }
@@ -2460,12 +2430,8 @@ module Stripe
2460
2430
  routing_number: nil
2461
2431
  ); end
2462
2432
  end
2463
- class WechatPay < Stripe::RequestParams
2464
-
2465
- end
2466
- class Zip < Stripe::RequestParams
2467
-
2468
- end
2433
+ class WechatPay < Stripe::RequestParams; end
2434
+ class Zip < Stripe::RequestParams; end
2469
2435
  # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
2470
2436
  sig {
2471
2437
  returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::AcssDebit))
@@ -2508,7 +2474,7 @@ module Stripe
2508
2474
  returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Bancontact))
2509
2475
  }
2510
2476
  attr_accessor :bancontact
2511
- # If this is a `billie` PaymentMethod, this hash contains details about the billie payment method.
2477
+ # If this is a `billie` PaymentMethod, this hash contains details about the Billie payment method.
2512
2478
  sig { returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Billie)) }
2513
2479
  attr_accessor :billie
2514
2480
  # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
@@ -2527,6 +2493,9 @@ module Stripe
2527
2493
  returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Cashapp))
2528
2494
  }
2529
2495
  attr_accessor :cashapp
2496
+ # If this is a Crypto PaymentMethod, this hash contains details about the Crypto payment method.
2497
+ sig { returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Crypto)) }
2498
+ attr_accessor :crypto
2530
2499
  # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
2531
2500
  sig {
2532
2501
  returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::CustomerBalance))
@@ -2631,7 +2600,7 @@ module Stripe
2631
2600
  returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::RadarOptions))
2632
2601
  }
2633
2602
  attr_accessor :radar_options
2634
- # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
2603
+ # If this is a `revolut_pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
2635
2604
  sig {
2636
2605
  returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::RevolutPay))
2637
2606
  }
@@ -2641,7 +2610,7 @@ module Stripe
2641
2610
  returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::SamsungPay))
2642
2611
  }
2643
2612
  attr_accessor :samsung_pay
2644
- # If this is a `satispay` PaymentMethod, this hash contains details about the satispay payment method.
2613
+ # If this is a `satispay` PaymentMethod, this hash contains details about the Satispay payment method.
2645
2614
  sig {
2646
2615
  returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Satispay))
2647
2616
  }
@@ -2677,7 +2646,7 @@ module Stripe
2677
2646
  sig { returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Zip)) }
2678
2647
  attr_accessor :zip
2679
2648
  sig {
2680
- params(acss_debit: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::AcssDebit), affirm: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Affirm), afterpay_clearpay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::AfterpayClearpay), alipay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Alipay), allow_redisplay: T.nilable(String), alma: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Alma), amazon_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::AmazonPay), au_becs_debit: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::AuBecsDebit), bacs_debit: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::BacsDebit), bancontact: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Bancontact), billie: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Billie), billing_details: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::BillingDetails), blik: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Blik), boleto: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Boleto), cashapp: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Cashapp), customer_balance: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::CustomerBalance), eps: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Eps), fpx: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Fpx), giropay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Giropay), grabpay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Grabpay), ideal: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Ideal), interac_present: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::InteracPresent), kakao_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::KakaoPay), klarna: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Klarna), konbini: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Konbini), kr_card: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::KrCard), link: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Link), metadata: T.nilable(T::Hash[String, String]), mobilepay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Mobilepay), multibanco: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Multibanco), naver_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::NaverPay), nz_bank_account: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::NzBankAccount), oxxo: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Oxxo), p24: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::P24), pay_by_bank: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::PayByBank), payco: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Payco), paynow: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Paynow), paypal: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Paypal), pix: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Pix), promptpay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Promptpay), radar_options: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::RadarOptions), revolut_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::RevolutPay), samsung_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::SamsungPay), satispay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Satispay), sepa_debit: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::SepaDebit), sofort: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Sofort), swish: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Swish), twint: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Twint), type: String, us_bank_account: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::UsBankAccount), wechat_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::WechatPay), zip: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Zip)).void
2649
+ params(acss_debit: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::AcssDebit), affirm: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Affirm), afterpay_clearpay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::AfterpayClearpay), alipay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Alipay), allow_redisplay: T.nilable(String), alma: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Alma), amazon_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::AmazonPay), au_becs_debit: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::AuBecsDebit), bacs_debit: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::BacsDebit), bancontact: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Bancontact), billie: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Billie), billing_details: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::BillingDetails), blik: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Blik), boleto: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Boleto), cashapp: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Cashapp), crypto: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Crypto), customer_balance: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::CustomerBalance), eps: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Eps), fpx: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Fpx), giropay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Giropay), grabpay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Grabpay), ideal: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Ideal), interac_present: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::InteracPresent), kakao_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::KakaoPay), klarna: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Klarna), konbini: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Konbini), kr_card: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::KrCard), link: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Link), metadata: T.nilable(T::Hash[String, String]), mobilepay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Mobilepay), multibanco: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Multibanco), naver_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::NaverPay), nz_bank_account: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::NzBankAccount), oxxo: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Oxxo), p24: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::P24), pay_by_bank: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::PayByBank), payco: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Payco), paynow: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Paynow), paypal: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Paypal), pix: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Pix), promptpay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Promptpay), radar_options: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::RadarOptions), revolut_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::RevolutPay), samsung_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::SamsungPay), satispay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Satispay), sepa_debit: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::SepaDebit), sofort: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Sofort), swish: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Swish), twint: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Twint), type: String, us_bank_account: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::UsBankAccount), wechat_pay: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::WechatPay), zip: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodData::Zip)).void
2681
2650
  }
2682
2651
  def initialize(
2683
2652
  acss_debit: nil,
@@ -2695,6 +2664,7 @@ module Stripe
2695
2664
  blik: nil,
2696
2665
  boleto: nil,
2697
2666
  cashapp: nil,
2667
+ crypto: nil,
2698
2668
  customer_balance: nil,
2699
2669
  eps: nil,
2700
2670
  fpx: nil,
@@ -2968,6 +2938,17 @@ module Stripe
2968
2938
  }
2969
2939
  def initialize(preferred_language: nil, setup_future_usage: nil); end
2970
2940
  end
2941
+ class Billie < Stripe::RequestParams
2942
+ # Controls when the funds are captured from the customer's account.
2943
+ #
2944
+ # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
2945
+ #
2946
+ # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
2947
+ sig { returns(T.nilable(T.nilable(String))) }
2948
+ attr_accessor :capture_method
2949
+ sig { params(capture_method: T.nilable(T.nilable(String))).void }
2950
+ def initialize(capture_method: nil); end
2951
+ end
2971
2952
  class Blik < Stripe::RequestParams
2972
2953
  # The 6-digit BLIK code that a customer has generated using their banking application. Can only be set on confirmation.
2973
2954
  sig { returns(T.nilable(String)) }
@@ -3018,7 +2999,7 @@ module Stripe
3018
2999
  # One of `month`.
3019
3000
  sig { returns(T.nilable(String)) }
3020
3001
  attr_accessor :interval
3021
- # Type of installment plan, one of `fixed_count`.
3002
+ # Type of installment plan, one of `fixed_count`, `bonus`, or `revolving`.
3022
3003
  sig { returns(String) }
3023
3004
  attr_accessor :type
3024
3005
  sig {
@@ -3311,6 +3292,21 @@ module Stripe
3311
3292
  }
3312
3293
  def initialize(capture_method: nil, setup_future_usage: nil); end
3313
3294
  end
3295
+ class Crypto < Stripe::RequestParams
3296
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
3297
+ #
3298
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
3299
+ #
3300
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
3301
+ #
3302
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
3303
+ #
3304
+ # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
3305
+ sig { returns(T.nilable(String)) }
3306
+ attr_accessor :setup_future_usage
3307
+ sig { params(setup_future_usage: T.nilable(String)).void }
3308
+ def initialize(setup_future_usage: nil); end
3309
+ end
3314
3310
  class CustomerBalance < Stripe::RequestParams
3315
3311
  class BankTransfer < Stripe::RequestParams
3316
3312
  class EuBankTransfer < Stripe::RequestParams
@@ -3437,9 +3433,7 @@ module Stripe
3437
3433
  sig { params(setup_future_usage: T.nilable(T.nilable(T.any(String, String)))).void }
3438
3434
  def initialize(setup_future_usage: nil); end
3439
3435
  end
3440
- class InteracPresent < Stripe::RequestParams
3441
-
3442
- end
3436
+ class InteracPresent < Stripe::RequestParams; end
3443
3437
  class KakaoPay < Stripe::RequestParams
3444
3438
  # Controls when the funds are captured from the customer's account.
3445
3439
  #
@@ -3463,6 +3457,72 @@ module Stripe
3463
3457
  def initialize(capture_method: nil, setup_future_usage: nil); end
3464
3458
  end
3465
3459
  class Klarna < Stripe::RequestParams
3460
+ class OnDemand < Stripe::RequestParams
3461
+ # Your average amount value. You can use a value across your customer base, or segment based on customer type, country, etc.
3462
+ sig { returns(T.nilable(Integer)) }
3463
+ attr_accessor :average_amount
3464
+ # The maximum value you may charge a customer per purchase. You can use a value across your customer base, or segment based on customer type, country, etc.
3465
+ sig { returns(T.nilable(Integer)) }
3466
+ attr_accessor :maximum_amount
3467
+ # The lowest or minimum value you may charge a customer per purchase. You can use a value across your customer base, or segment based on customer type, country, etc.
3468
+ sig { returns(T.nilable(Integer)) }
3469
+ attr_accessor :minimum_amount
3470
+ # Interval at which the customer is making purchases
3471
+ sig { returns(T.nilable(String)) }
3472
+ attr_accessor :purchase_interval
3473
+ # The number of `purchase_interval` between charges
3474
+ sig { returns(T.nilable(Integer)) }
3475
+ attr_accessor :purchase_interval_count
3476
+ sig {
3477
+ params(average_amount: T.nilable(Integer), maximum_amount: T.nilable(Integer), minimum_amount: T.nilable(Integer), purchase_interval: T.nilable(String), purchase_interval_count: T.nilable(Integer)).void
3478
+ }
3479
+ def initialize(
3480
+ average_amount: nil,
3481
+ maximum_amount: nil,
3482
+ minimum_amount: nil,
3483
+ purchase_interval: nil,
3484
+ purchase_interval_count: nil
3485
+ ); end
3486
+ end
3487
+ class Subscription < Stripe::RequestParams
3488
+ class NextBilling < Stripe::RequestParams
3489
+ # The amount of the next charge for the subscription.
3490
+ sig { returns(Integer) }
3491
+ attr_accessor :amount
3492
+ # The date of the next charge for the subscription in YYYY-MM-DD format.
3493
+ sig { returns(String) }
3494
+ attr_accessor :date
3495
+ sig { params(amount: Integer, date: String).void }
3496
+ def initialize(amount: nil, date: nil); end
3497
+ end
3498
+ # Unit of time between subscription charges.
3499
+ sig { returns(String) }
3500
+ attr_accessor :interval
3501
+ # The number of intervals (specified in the `interval` attribute) between subscription charges. For example, `interval=month` and `interval_count=3` charges every 3 months.
3502
+ sig { returns(T.nilable(Integer)) }
3503
+ attr_accessor :interval_count
3504
+ # Name for subscription.
3505
+ sig { returns(T.nilable(String)) }
3506
+ attr_accessor :name
3507
+ # Describes the upcoming charge for this subscription.
3508
+ sig {
3509
+ returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Klarna::Subscription::NextBilling))
3510
+ }
3511
+ attr_accessor :next_billing
3512
+ # A non-customer-facing reference to correlate subscription charges in the Klarna app. Use a value that persists across subscription charges.
3513
+ sig { returns(String) }
3514
+ attr_accessor :reference
3515
+ sig {
3516
+ params(interval: String, interval_count: T.nilable(Integer), name: T.nilable(String), next_billing: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Klarna::Subscription::NextBilling), reference: String).void
3517
+ }
3518
+ def initialize(
3519
+ interval: nil,
3520
+ interval_count: nil,
3521
+ name: nil,
3522
+ next_billing: nil,
3523
+ reference: nil
3524
+ ); end
3525
+ end
3466
3526
  # Controls when the funds are captured from the customer's account.
3467
3527
  #
3468
3528
  # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
@@ -3470,6 +3530,11 @@ module Stripe
3470
3530
  # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
3471
3531
  sig { returns(T.nilable(T.nilable(String))) }
3472
3532
  attr_accessor :capture_method
3533
+ # On-demand details if setting up or charging an on-demand payment.
3534
+ sig {
3535
+ returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Klarna::OnDemand))
3536
+ }
3537
+ attr_accessor :on_demand
3473
3538
  # Preferred language of the Klarna authorization page that the customer is redirected to
3474
3539
  sig { returns(T.nilable(String)) }
3475
3540
  attr_accessor :preferred_locale
@@ -3484,10 +3549,21 @@ module Stripe
3484
3549
  # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
3485
3550
  sig { returns(T.nilable(String)) }
3486
3551
  attr_accessor :setup_future_usage
3552
+ # Subscription details if setting up or charging a subscription.
3487
3553
  sig {
3488
- params(capture_method: T.nilable(T.nilable(String)), preferred_locale: T.nilable(String), setup_future_usage: T.nilable(String)).void
3554
+ returns(T.nilable(T.nilable(T.any(String, T::Array[::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Klarna::Subscription]))))
3489
3555
  }
3490
- def initialize(capture_method: nil, preferred_locale: nil, setup_future_usage: nil); end
3556
+ attr_accessor :subscriptions
3557
+ sig {
3558
+ params(capture_method: T.nilable(T.nilable(String)), on_demand: T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Klarna::OnDemand), preferred_locale: T.nilable(String), setup_future_usage: T.nilable(String), subscriptions: T.nilable(T.nilable(T.any(String, T::Array[::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Klarna::Subscription])))).void
3559
+ }
3560
+ def initialize(
3561
+ capture_method: nil,
3562
+ on_demand: nil,
3563
+ preferred_locale: nil,
3564
+ setup_future_usage: nil,
3565
+ subscriptions: nil
3566
+ ); end
3491
3567
  end
3492
3568
  class Konbini < Stripe::RequestParams
3493
3569
  # An optional 10 to 11 digit numeric-only string determining the confirmation code at applicable convenience stores. Must not consist of only zeroes and could be rejected in case of insufficient uniqueness. We recommend to use the customer's phone number.
@@ -3694,9 +3770,7 @@ module Stripe
3694
3770
  }
3695
3771
  def initialize(setup_future_usage: nil, tos_shown_and_accepted: nil); end
3696
3772
  end
3697
- class PayByBank < Stripe::RequestParams
3698
-
3699
- end
3773
+ class PayByBank < Stripe::RequestParams; end
3700
3774
  class Payco < Stripe::RequestParams
3701
3775
  # Controls when the funds are captured from the customer's account.
3702
3776
  #
@@ -3829,6 +3903,17 @@ module Stripe
3829
3903
  sig { params(capture_method: T.nilable(T.nilable(String))).void }
3830
3904
  def initialize(capture_method: nil); end
3831
3905
  end
3906
+ class Satispay < Stripe::RequestParams
3907
+ # Controls when the funds are captured from the customer's account.
3908
+ #
3909
+ # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
3910
+ #
3911
+ # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
3912
+ sig { returns(T.nilable(T.nilable(String))) }
3913
+ attr_accessor :capture_method
3914
+ sig { params(capture_method: T.nilable(T.nilable(String))).void }
3915
+ def initialize(capture_method: nil); end
3916
+ end
3832
3917
  class SepaDebit < Stripe::RequestParams
3833
3918
  class MandateOptions < Stripe::RequestParams
3834
3919
  # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'STRIPE'.
@@ -4089,6 +4174,11 @@ module Stripe
4089
4174
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Bancontact))))
4090
4175
  }
4091
4176
  attr_accessor :bancontact
4177
+ # If this is a `billie` PaymentMethod, this sub-hash contains details about the Billie payment method options.
4178
+ sig {
4179
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Billie))))
4180
+ }
4181
+ attr_accessor :billie
4092
4182
  # If this is a `blik` PaymentMethod, this sub-hash contains details about the BLIK payment method options.
4093
4183
  sig {
4094
4184
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Blik))))
@@ -4114,6 +4204,11 @@ module Stripe
4114
4204
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Cashapp))))
4115
4205
  }
4116
4206
  attr_accessor :cashapp
4207
+ # If this is a `crypto` PaymentMethod, this sub-hash contains details about the Crypto payment method options.
4208
+ sig {
4209
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Crypto))))
4210
+ }
4211
+ attr_accessor :crypto
4117
4212
  # If this is a `customer balance` PaymentMethod, this sub-hash contains details about the customer balance payment method options.
4118
4213
  sig {
4119
4214
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::CustomerBalance))))
@@ -4244,6 +4339,11 @@ module Stripe
4244
4339
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::SamsungPay))))
4245
4340
  }
4246
4341
  attr_accessor :samsung_pay
4342
+ # If this is a `satispay` PaymentMethod, this sub-hash contains details about the Satispay payment method options.
4343
+ sig {
4344
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Satispay))))
4345
+ }
4346
+ attr_accessor :satispay
4247
4347
  # If this is a `sepa_debit` PaymentIntent, this sub-hash contains details about the SEPA Debit payment method options.
4248
4348
  sig {
4249
4349
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::SepaDebit))))
@@ -4280,7 +4380,7 @@ module Stripe
4280
4380
  }
4281
4381
  attr_accessor :zip
4282
4382
  sig {
4283
- params(acss_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::AcssDebit))), affirm: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Affirm))), afterpay_clearpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::AfterpayClearpay))), alipay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Alipay))), alma: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Alma))), amazon_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::AmazonPay))), au_becs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::AuBecsDebit))), bacs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::BacsDebit))), bancontact: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Bancontact))), blik: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Blik))), boleto: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Boleto))), card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Card))), card_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::CardPresent))), cashapp: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Cashapp))), customer_balance: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::CustomerBalance))), eps: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Eps))), fpx: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Fpx))), giropay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Giropay))), grabpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Grabpay))), ideal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Ideal))), interac_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::InteracPresent))), kakao_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::KakaoPay))), klarna: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Klarna))), konbini: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Konbini))), kr_card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::KrCard))), link: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Link))), mobilepay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Mobilepay))), multibanco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Multibanco))), naver_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::NaverPay))), nz_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::NzBankAccount))), oxxo: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Oxxo))), p24: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::P24))), pay_by_bank: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::PayByBank))), payco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Payco))), paynow: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Paynow))), paypal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Paypal))), pix: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Pix))), promptpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Promptpay))), revolut_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::RevolutPay))), samsung_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::SamsungPay))), sepa_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::SepaDebit))), sofort: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Sofort))), swish: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Swish))), twint: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Twint))), us_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::UsBankAccount))), wechat_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::WechatPay))), zip: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Zip)))).void
4383
+ params(acss_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::AcssDebit))), affirm: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Affirm))), afterpay_clearpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::AfterpayClearpay))), alipay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Alipay))), alma: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Alma))), amazon_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::AmazonPay))), au_becs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::AuBecsDebit))), bacs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::BacsDebit))), bancontact: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Bancontact))), billie: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Billie))), blik: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Blik))), boleto: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Boleto))), card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Card))), card_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::CardPresent))), cashapp: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Cashapp))), crypto: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Crypto))), customer_balance: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::CustomerBalance))), eps: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Eps))), fpx: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Fpx))), giropay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Giropay))), grabpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Grabpay))), ideal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Ideal))), interac_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::InteracPresent))), kakao_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::KakaoPay))), klarna: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Klarna))), konbini: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Konbini))), kr_card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::KrCard))), link: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Link))), mobilepay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Mobilepay))), multibanco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Multibanco))), naver_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::NaverPay))), nz_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::NzBankAccount))), oxxo: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Oxxo))), p24: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::P24))), pay_by_bank: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::PayByBank))), payco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Payco))), paynow: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Paynow))), paypal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Paypal))), pix: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Pix))), promptpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Promptpay))), revolut_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::RevolutPay))), samsung_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::SamsungPay))), satispay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Satispay))), sepa_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::SepaDebit))), sofort: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Sofort))), swish: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Swish))), twint: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Twint))), us_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::UsBankAccount))), wechat_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::WechatPay))), zip: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions::Zip)))).void
4284
4384
  }
4285
4385
  def initialize(
4286
4386
  acss_debit: nil,
@@ -4292,11 +4392,13 @@ module Stripe
4292
4392
  au_becs_debit: nil,
4293
4393
  bacs_debit: nil,
4294
4394
  bancontact: nil,
4395
+ billie: nil,
4295
4396
  blik: nil,
4296
4397
  boleto: nil,
4297
4398
  card: nil,
4298
4399
  card_present: nil,
4299
4400
  cashapp: nil,
4401
+ crypto: nil,
4300
4402
  customer_balance: nil,
4301
4403
  eps: nil,
4302
4404
  fpx: nil,
@@ -4323,6 +4425,7 @@ module Stripe
4323
4425
  promptpay: nil,
4324
4426
  revolut_pay: nil,
4325
4427
  samsung_pay: nil,
4428
+ satispay: nil,
4326
4429
  sepa_debit: nil,
4327
4430
  sofort: nil,
4328
4431
  swish: nil,
@@ -4472,6 +4575,8 @@ module Stripe
4472
4575
  # ID of the payment method (a PaymentMethod, Card, or [compatible Source](https://stripe.com/docs/payments/payment-methods#compatibility) object) to attach to this PaymentIntent.
4473
4576
  #
4474
4577
  # If you don't provide the `payment_method` parameter or the `source` parameter with `confirm=true`, `source` automatically populates with `customer.default_source` to improve migration for users of the Charges API. We recommend that you explicitly provide the `payment_method` moving forward.
4578
+ # If the payment method is attached to a Customer, you must also provide the ID of that Customer as the [customer](https://stripe.com/docs/api#create_payment_intent-customer) parameter of this PaymentIntent.
4579
+ # end
4475
4580
  sig { returns(T.nilable(String)) }
4476
4581
  attr_accessor :payment_method
4477
4582
  # The ID of the [payment method configuration](https://stripe.com/docs/api/payment_method_configurations) to use with this PaymentIntent.
@@ -4485,7 +4590,7 @@ module Stripe
4485
4590
  # Payment method-specific configuration for this PaymentIntent.
4486
4591
  sig { returns(T.nilable(::Stripe::PaymentIntent::CreateParams::PaymentMethodOptions)) }
4487
4592
  attr_accessor :payment_method_options
4488
- # The list of payment method types (for example, a card) that this PaymentIntent can use. If you don't provide this, Stripe will dynamically show relevant payment methods from your [payment method settings](https://dashboard.stripe.com/settings/payment_methods).
4593
+ # The list of payment method types (for example, a card) that this PaymentIntent can use. If you don't provide this, Stripe will dynamically show relevant payment methods from your [payment method settings](https://dashboard.stripe.com/settings/payment_methods). A list of valid payment method types can be found [here](https://docs.stripe.com/api/payment_methods/object#payment_method_object-type).
4489
4594
  sig { returns(T.nilable(T::Array[String])) }
4490
4595
  attr_accessor :payment_method_types
4491
4596
  # Options to configure Radar. Learn more about [Radar Sessions](https://stripe.com/docs/radar/radar-session).
@@ -4582,21 +4687,11 @@ module Stripe
4582
4687
  }
4583
4688
  def initialize(account_number: nil, institution_number: nil, transit_number: nil); end
4584
4689
  end
4585
- class Affirm < Stripe::RequestParams
4586
-
4587
- end
4588
- class AfterpayClearpay < Stripe::RequestParams
4589
-
4590
- end
4591
- class Alipay < Stripe::RequestParams
4592
-
4593
- end
4594
- class Alma < Stripe::RequestParams
4595
-
4596
- end
4597
- class AmazonPay < Stripe::RequestParams
4598
-
4599
- end
4690
+ class Affirm < Stripe::RequestParams; end
4691
+ class AfterpayClearpay < Stripe::RequestParams; end
4692
+ class Alipay < Stripe::RequestParams; end
4693
+ class Alma < Stripe::RequestParams; end
4694
+ class AmazonPay < Stripe::RequestParams; end
4600
4695
  class AuBecsDebit < Stripe::RequestParams
4601
4696
  # The account number for the bank account.
4602
4697
  sig { returns(String) }
@@ -4617,12 +4712,8 @@ module Stripe
4617
4712
  sig { params(account_number: T.nilable(String), sort_code: T.nilable(String)).void }
4618
4713
  def initialize(account_number: nil, sort_code: nil); end
4619
4714
  end
4620
- class Bancontact < Stripe::RequestParams
4621
-
4622
- end
4623
- class Billie < Stripe::RequestParams
4624
-
4625
- end
4715
+ class Bancontact < Stripe::RequestParams; end
4716
+ class Billie < Stripe::RequestParams; end
4626
4717
  class BillingDetails < Stripe::RequestParams
4627
4718
  class Address < Stripe::RequestParams
4628
4719
  # City, district, suburb, town, or village.
@@ -4669,14 +4760,15 @@ module Stripe
4669
4760
  # Billing phone number (including extension).
4670
4761
  sig { returns(T.nilable(T.nilable(String))) }
4671
4762
  attr_accessor :phone
4763
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
4764
+ sig { returns(T.nilable(String)) }
4765
+ attr_accessor :tax_id
4672
4766
  sig {
4673
- params(address: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::BillingDetails::Address))), email: T.nilable(T.nilable(String)), name: T.nilable(T.nilable(String)), phone: T.nilable(T.nilable(String))).void
4767
+ params(address: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::BillingDetails::Address))), email: T.nilable(T.nilable(String)), name: T.nilable(T.nilable(String)), phone: T.nilable(T.nilable(String)), tax_id: T.nilable(String)).void
4674
4768
  }
4675
- def initialize(address: nil, email: nil, name: nil, phone: nil); end
4676
- end
4677
- class Blik < Stripe::RequestParams
4678
-
4769
+ def initialize(address: nil, email: nil, name: nil, phone: nil, tax_id: nil); end
4679
4770
  end
4771
+ class Blik < Stripe::RequestParams; end
4680
4772
  class Boleto < Stripe::RequestParams
4681
4773
  # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
4682
4774
  sig { returns(String) }
@@ -4684,12 +4776,9 @@ module Stripe
4684
4776
  sig { params(tax_id: String).void }
4685
4777
  def initialize(tax_id: nil); end
4686
4778
  end
4687
- class Cashapp < Stripe::RequestParams
4688
-
4689
- end
4690
- class CustomerBalance < Stripe::RequestParams
4691
-
4692
- end
4779
+ class Cashapp < Stripe::RequestParams; end
4780
+ class Crypto < Stripe::RequestParams; end
4781
+ class CustomerBalance < Stripe::RequestParams; end
4693
4782
  class Eps < Stripe::RequestParams
4694
4783
  # The customer's bank.
4695
4784
  sig { returns(T.nilable(String)) }
@@ -4707,12 +4796,8 @@ module Stripe
4707
4796
  sig { params(account_holder_type: T.nilable(String), bank: String).void }
4708
4797
  def initialize(account_holder_type: nil, bank: nil); end
4709
4798
  end
4710
- class Giropay < Stripe::RequestParams
4711
-
4712
- end
4713
- class Grabpay < Stripe::RequestParams
4714
-
4715
- end
4799
+ class Giropay < Stripe::RequestParams; end
4800
+ class Grabpay < Stripe::RequestParams; end
4716
4801
  class Ideal < Stripe::RequestParams
4717
4802
  # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
4718
4803
  sig { returns(T.nilable(String)) }
@@ -4720,12 +4805,8 @@ module Stripe
4720
4805
  sig { params(bank: T.nilable(String)).void }
4721
4806
  def initialize(bank: nil); end
4722
4807
  end
4723
- class InteracPresent < Stripe::RequestParams
4724
-
4725
- end
4726
- class KakaoPay < Stripe::RequestParams
4727
-
4728
- end
4808
+ class InteracPresent < Stripe::RequestParams; end
4809
+ class KakaoPay < Stripe::RequestParams; end
4729
4810
  class Klarna < Stripe::RequestParams
4730
4811
  class Dob < Stripe::RequestParams
4731
4812
  # The day of birth, between 1 and 31.
@@ -4750,21 +4831,11 @@ module Stripe
4750
4831
  }
4751
4832
  def initialize(dob: nil); end
4752
4833
  end
4753
- class Konbini < Stripe::RequestParams
4754
-
4755
- end
4756
- class KrCard < Stripe::RequestParams
4757
-
4758
- end
4759
- class Link < Stripe::RequestParams
4760
-
4761
- end
4762
- class Mobilepay < Stripe::RequestParams
4763
-
4764
- end
4765
- class Multibanco < Stripe::RequestParams
4766
-
4767
- end
4834
+ class Konbini < Stripe::RequestParams; end
4835
+ class KrCard < Stripe::RequestParams; end
4836
+ class Link < Stripe::RequestParams; end
4837
+ class Mobilepay < Stripe::RequestParams; end
4838
+ class Multibanco < Stripe::RequestParams; end
4768
4839
  class NaverPay < Stripe::RequestParams
4769
4840
  # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
4770
4841
  sig { returns(T.nilable(String)) }
@@ -4803,9 +4874,7 @@ module Stripe
4803
4874
  suffix: nil
4804
4875
  ); end
4805
4876
  end
4806
- class Oxxo < Stripe::RequestParams
4807
-
4808
- end
4877
+ class Oxxo < Stripe::RequestParams; end
4809
4878
  class P24 < Stripe::RequestParams
4810
4879
  # The customer's bank.
4811
4880
  sig { returns(T.nilable(String)) }
@@ -4813,24 +4882,12 @@ module Stripe
4813
4882
  sig { params(bank: T.nilable(String)).void }
4814
4883
  def initialize(bank: nil); end
4815
4884
  end
4816
- class PayByBank < Stripe::RequestParams
4817
-
4818
- end
4819
- class Payco < Stripe::RequestParams
4820
-
4821
- end
4822
- class Paynow < Stripe::RequestParams
4823
-
4824
- end
4825
- class Paypal < Stripe::RequestParams
4826
-
4827
- end
4828
- class Pix < Stripe::RequestParams
4829
-
4830
- end
4831
- class Promptpay < Stripe::RequestParams
4832
-
4833
- end
4885
+ class PayByBank < Stripe::RequestParams; end
4886
+ class Payco < Stripe::RequestParams; end
4887
+ class Paynow < Stripe::RequestParams; end
4888
+ class Paypal < Stripe::RequestParams; end
4889
+ class Pix < Stripe::RequestParams; end
4890
+ class Promptpay < Stripe::RequestParams; end
4834
4891
  class RadarOptions < Stripe::RequestParams
4835
4892
  # A [Radar Session](https://stripe.com/docs/radar/radar-session) is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments.
4836
4893
  sig { returns(T.nilable(String)) }
@@ -4838,15 +4895,9 @@ module Stripe
4838
4895
  sig { params(session: T.nilable(String)).void }
4839
4896
  def initialize(session: nil); end
4840
4897
  end
4841
- class RevolutPay < Stripe::RequestParams
4842
-
4843
- end
4844
- class SamsungPay < Stripe::RequestParams
4845
-
4846
- end
4847
- class Satispay < Stripe::RequestParams
4848
-
4849
- end
4898
+ class RevolutPay < Stripe::RequestParams; end
4899
+ class SamsungPay < Stripe::RequestParams; end
4900
+ class Satispay < Stripe::RequestParams; end
4850
4901
  class SepaDebit < Stripe::RequestParams
4851
4902
  # IBAN of the bank account.
4852
4903
  sig { returns(String) }
@@ -4861,12 +4912,8 @@ module Stripe
4861
4912
  sig { params(country: String).void }
4862
4913
  def initialize(country: nil); end
4863
4914
  end
4864
- class Swish < Stripe::RequestParams
4865
-
4866
- end
4867
- class Twint < Stripe::RequestParams
4868
-
4869
- end
4915
+ class Swish < Stripe::RequestParams; end
4916
+ class Twint < Stripe::RequestParams; end
4870
4917
  class UsBankAccount < Stripe::RequestParams
4871
4918
  # Account holder type: individual or company.
4872
4919
  sig { returns(T.nilable(String)) }
@@ -4894,12 +4941,8 @@ module Stripe
4894
4941
  routing_number: nil
4895
4942
  ); end
4896
4943
  end
4897
- class WechatPay < Stripe::RequestParams
4898
-
4899
- end
4900
- class Zip < Stripe::RequestParams
4901
-
4902
- end
4944
+ class WechatPay < Stripe::RequestParams; end
4945
+ class Zip < Stripe::RequestParams; end
4903
4946
  # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
4904
4947
  sig {
4905
4948
  returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::AcssDebit))
@@ -4942,7 +4985,7 @@ module Stripe
4942
4985
  returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Bancontact))
4943
4986
  }
4944
4987
  attr_accessor :bancontact
4945
- # If this is a `billie` PaymentMethod, this hash contains details about the billie payment method.
4988
+ # If this is a `billie` PaymentMethod, this hash contains details about the Billie payment method.
4946
4989
  sig { returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Billie)) }
4947
4990
  attr_accessor :billie
4948
4991
  # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
@@ -4961,6 +5004,9 @@ module Stripe
4961
5004
  returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Cashapp))
4962
5005
  }
4963
5006
  attr_accessor :cashapp
5007
+ # If this is a Crypto PaymentMethod, this hash contains details about the Crypto payment method.
5008
+ sig { returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Crypto)) }
5009
+ attr_accessor :crypto
4964
5010
  # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
4965
5011
  sig {
4966
5012
  returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::CustomerBalance))
@@ -5065,7 +5111,7 @@ module Stripe
5065
5111
  returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::RadarOptions))
5066
5112
  }
5067
5113
  attr_accessor :radar_options
5068
- # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
5114
+ # If this is a `revolut_pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
5069
5115
  sig {
5070
5116
  returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::RevolutPay))
5071
5117
  }
@@ -5075,7 +5121,7 @@ module Stripe
5075
5121
  returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::SamsungPay))
5076
5122
  }
5077
5123
  attr_accessor :samsung_pay
5078
- # If this is a `satispay` PaymentMethod, this hash contains details about the satispay payment method.
5124
+ # If this is a `satispay` PaymentMethod, this hash contains details about the Satispay payment method.
5079
5125
  sig {
5080
5126
  returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Satispay))
5081
5127
  }
@@ -5111,7 +5157,7 @@ module Stripe
5111
5157
  sig { returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Zip)) }
5112
5158
  attr_accessor :zip
5113
5159
  sig {
5114
- params(acss_debit: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::AcssDebit), affirm: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Affirm), afterpay_clearpay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::AfterpayClearpay), alipay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Alipay), allow_redisplay: T.nilable(String), alma: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Alma), amazon_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::AmazonPay), au_becs_debit: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::AuBecsDebit), bacs_debit: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::BacsDebit), bancontact: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Bancontact), billie: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Billie), billing_details: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::BillingDetails), blik: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Blik), boleto: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Boleto), cashapp: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Cashapp), customer_balance: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::CustomerBalance), eps: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Eps), fpx: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Fpx), giropay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Giropay), grabpay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Grabpay), ideal: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Ideal), interac_present: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::InteracPresent), kakao_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::KakaoPay), klarna: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Klarna), konbini: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Konbini), kr_card: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::KrCard), link: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Link), metadata: T.nilable(T::Hash[String, String]), mobilepay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Mobilepay), multibanco: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Multibanco), naver_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::NaverPay), nz_bank_account: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::NzBankAccount), oxxo: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Oxxo), p24: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::P24), pay_by_bank: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::PayByBank), payco: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Payco), paynow: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Paynow), paypal: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Paypal), pix: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Pix), promptpay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Promptpay), radar_options: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::RadarOptions), revolut_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::RevolutPay), samsung_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::SamsungPay), satispay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Satispay), sepa_debit: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::SepaDebit), sofort: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Sofort), swish: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Swish), twint: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Twint), type: String, us_bank_account: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::UsBankAccount), wechat_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::WechatPay), zip: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Zip)).void
5160
+ params(acss_debit: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::AcssDebit), affirm: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Affirm), afterpay_clearpay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::AfterpayClearpay), alipay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Alipay), allow_redisplay: T.nilable(String), alma: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Alma), amazon_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::AmazonPay), au_becs_debit: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::AuBecsDebit), bacs_debit: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::BacsDebit), bancontact: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Bancontact), billie: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Billie), billing_details: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::BillingDetails), blik: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Blik), boleto: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Boleto), cashapp: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Cashapp), crypto: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Crypto), customer_balance: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::CustomerBalance), eps: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Eps), fpx: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Fpx), giropay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Giropay), grabpay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Grabpay), ideal: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Ideal), interac_present: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::InteracPresent), kakao_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::KakaoPay), klarna: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Klarna), konbini: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Konbini), kr_card: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::KrCard), link: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Link), metadata: T.nilable(T::Hash[String, String]), mobilepay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Mobilepay), multibanco: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Multibanco), naver_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::NaverPay), nz_bank_account: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::NzBankAccount), oxxo: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Oxxo), p24: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::P24), pay_by_bank: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::PayByBank), payco: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Payco), paynow: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Paynow), paypal: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Paypal), pix: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Pix), promptpay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Promptpay), radar_options: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::RadarOptions), revolut_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::RevolutPay), samsung_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::SamsungPay), satispay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Satispay), sepa_debit: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::SepaDebit), sofort: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Sofort), swish: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Swish), twint: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Twint), type: String, us_bank_account: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::UsBankAccount), wechat_pay: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::WechatPay), zip: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodData::Zip)).void
5115
5161
  }
5116
5162
  def initialize(
5117
5163
  acss_debit: nil,
@@ -5129,6 +5175,7 @@ module Stripe
5129
5175
  blik: nil,
5130
5176
  boleto: nil,
5131
5177
  cashapp: nil,
5178
+ crypto: nil,
5132
5179
  customer_balance: nil,
5133
5180
  eps: nil,
5134
5181
  fpx: nil,
@@ -5402,6 +5449,17 @@ module Stripe
5402
5449
  }
5403
5450
  def initialize(preferred_language: nil, setup_future_usage: nil); end
5404
5451
  end
5452
+ class Billie < Stripe::RequestParams
5453
+ # Controls when the funds are captured from the customer's account.
5454
+ #
5455
+ # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
5456
+ #
5457
+ # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
5458
+ sig { returns(T.nilable(T.nilable(String))) }
5459
+ attr_accessor :capture_method
5460
+ sig { params(capture_method: T.nilable(T.nilable(String))).void }
5461
+ def initialize(capture_method: nil); end
5462
+ end
5405
5463
  class Blik < Stripe::RequestParams
5406
5464
  # The 6-digit BLIK code that a customer has generated using their banking application. Can only be set on confirmation.
5407
5465
  sig { returns(T.nilable(String)) }
@@ -5452,7 +5510,7 @@ module Stripe
5452
5510
  # One of `month`.
5453
5511
  sig { returns(T.nilable(String)) }
5454
5512
  attr_accessor :interval
5455
- # Type of installment plan, one of `fixed_count`.
5513
+ # Type of installment plan, one of `fixed_count`, `bonus`, or `revolving`.
5456
5514
  sig { returns(String) }
5457
5515
  attr_accessor :type
5458
5516
  sig {
@@ -5745,6 +5803,21 @@ module Stripe
5745
5803
  }
5746
5804
  def initialize(capture_method: nil, setup_future_usage: nil); end
5747
5805
  end
5806
+ class Crypto < Stripe::RequestParams
5807
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
5808
+ #
5809
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
5810
+ #
5811
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
5812
+ #
5813
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
5814
+ #
5815
+ # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
5816
+ sig { returns(T.nilable(String)) }
5817
+ attr_accessor :setup_future_usage
5818
+ sig { params(setup_future_usage: T.nilable(String)).void }
5819
+ def initialize(setup_future_usage: nil); end
5820
+ end
5748
5821
  class CustomerBalance < Stripe::RequestParams
5749
5822
  class BankTransfer < Stripe::RequestParams
5750
5823
  class EuBankTransfer < Stripe::RequestParams
@@ -5871,9 +5944,7 @@ module Stripe
5871
5944
  sig { params(setup_future_usage: T.nilable(T.nilable(T.any(String, String)))).void }
5872
5945
  def initialize(setup_future_usage: nil); end
5873
5946
  end
5874
- class InteracPresent < Stripe::RequestParams
5875
-
5876
- end
5947
+ class InteracPresent < Stripe::RequestParams; end
5877
5948
  class KakaoPay < Stripe::RequestParams
5878
5949
  # Controls when the funds are captured from the customer's account.
5879
5950
  #
@@ -5897,6 +5968,72 @@ module Stripe
5897
5968
  def initialize(capture_method: nil, setup_future_usage: nil); end
5898
5969
  end
5899
5970
  class Klarna < Stripe::RequestParams
5971
+ class OnDemand < Stripe::RequestParams
5972
+ # Your average amount value. You can use a value across your customer base, or segment based on customer type, country, etc.
5973
+ sig { returns(T.nilable(Integer)) }
5974
+ attr_accessor :average_amount
5975
+ # The maximum value you may charge a customer per purchase. You can use a value across your customer base, or segment based on customer type, country, etc.
5976
+ sig { returns(T.nilable(Integer)) }
5977
+ attr_accessor :maximum_amount
5978
+ # The lowest or minimum value you may charge a customer per purchase. You can use a value across your customer base, or segment based on customer type, country, etc.
5979
+ sig { returns(T.nilable(Integer)) }
5980
+ attr_accessor :minimum_amount
5981
+ # Interval at which the customer is making purchases
5982
+ sig { returns(T.nilable(String)) }
5983
+ attr_accessor :purchase_interval
5984
+ # The number of `purchase_interval` between charges
5985
+ sig { returns(T.nilable(Integer)) }
5986
+ attr_accessor :purchase_interval_count
5987
+ sig {
5988
+ params(average_amount: T.nilable(Integer), maximum_amount: T.nilable(Integer), minimum_amount: T.nilable(Integer), purchase_interval: T.nilable(String), purchase_interval_count: T.nilable(Integer)).void
5989
+ }
5990
+ def initialize(
5991
+ average_amount: nil,
5992
+ maximum_amount: nil,
5993
+ minimum_amount: nil,
5994
+ purchase_interval: nil,
5995
+ purchase_interval_count: nil
5996
+ ); end
5997
+ end
5998
+ class Subscription < Stripe::RequestParams
5999
+ class NextBilling < Stripe::RequestParams
6000
+ # The amount of the next charge for the subscription.
6001
+ sig { returns(Integer) }
6002
+ attr_accessor :amount
6003
+ # The date of the next charge for the subscription in YYYY-MM-DD format.
6004
+ sig { returns(String) }
6005
+ attr_accessor :date
6006
+ sig { params(amount: Integer, date: String).void }
6007
+ def initialize(amount: nil, date: nil); end
6008
+ end
6009
+ # Unit of time between subscription charges.
6010
+ sig { returns(String) }
6011
+ attr_accessor :interval
6012
+ # The number of intervals (specified in the `interval` attribute) between subscription charges. For example, `interval=month` and `interval_count=3` charges every 3 months.
6013
+ sig { returns(T.nilable(Integer)) }
6014
+ attr_accessor :interval_count
6015
+ # Name for subscription.
6016
+ sig { returns(T.nilable(String)) }
6017
+ attr_accessor :name
6018
+ # Describes the upcoming charge for this subscription.
6019
+ sig {
6020
+ returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Klarna::Subscription::NextBilling))
6021
+ }
6022
+ attr_accessor :next_billing
6023
+ # A non-customer-facing reference to correlate subscription charges in the Klarna app. Use a value that persists across subscription charges.
6024
+ sig { returns(String) }
6025
+ attr_accessor :reference
6026
+ sig {
6027
+ params(interval: String, interval_count: T.nilable(Integer), name: T.nilable(String), next_billing: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Klarna::Subscription::NextBilling), reference: String).void
6028
+ }
6029
+ def initialize(
6030
+ interval: nil,
6031
+ interval_count: nil,
6032
+ name: nil,
6033
+ next_billing: nil,
6034
+ reference: nil
6035
+ ); end
6036
+ end
5900
6037
  # Controls when the funds are captured from the customer's account.
5901
6038
  #
5902
6039
  # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
@@ -5904,6 +6041,11 @@ module Stripe
5904
6041
  # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
5905
6042
  sig { returns(T.nilable(T.nilable(String))) }
5906
6043
  attr_accessor :capture_method
6044
+ # On-demand details if setting up or charging an on-demand payment.
6045
+ sig {
6046
+ returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Klarna::OnDemand))
6047
+ }
6048
+ attr_accessor :on_demand
5907
6049
  # Preferred language of the Klarna authorization page that the customer is redirected to
5908
6050
  sig { returns(T.nilable(String)) }
5909
6051
  attr_accessor :preferred_locale
@@ -5918,10 +6060,21 @@ module Stripe
5918
6060
  # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
5919
6061
  sig { returns(T.nilable(String)) }
5920
6062
  attr_accessor :setup_future_usage
6063
+ # Subscription details if setting up or charging a subscription.
5921
6064
  sig {
5922
- params(capture_method: T.nilable(T.nilable(String)), preferred_locale: T.nilable(String), setup_future_usage: T.nilable(String)).void
6065
+ returns(T.nilable(T.nilable(T.any(String, T::Array[::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Klarna::Subscription]))))
5923
6066
  }
5924
- def initialize(capture_method: nil, preferred_locale: nil, setup_future_usage: nil); end
6067
+ attr_accessor :subscriptions
6068
+ sig {
6069
+ params(capture_method: T.nilable(T.nilable(String)), on_demand: T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Klarna::OnDemand), preferred_locale: T.nilable(String), setup_future_usage: T.nilable(String), subscriptions: T.nilable(T.nilable(T.any(String, T::Array[::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Klarna::Subscription])))).void
6070
+ }
6071
+ def initialize(
6072
+ capture_method: nil,
6073
+ on_demand: nil,
6074
+ preferred_locale: nil,
6075
+ setup_future_usage: nil,
6076
+ subscriptions: nil
6077
+ ); end
5925
6078
  end
5926
6079
  class Konbini < Stripe::RequestParams
5927
6080
  # An optional 10 to 11 digit numeric-only string determining the confirmation code at applicable convenience stores. Must not consist of only zeroes and could be rejected in case of insufficient uniqueness. We recommend to use the customer's phone number.
@@ -6128,9 +6281,7 @@ module Stripe
6128
6281
  }
6129
6282
  def initialize(setup_future_usage: nil, tos_shown_and_accepted: nil); end
6130
6283
  end
6131
- class PayByBank < Stripe::RequestParams
6132
-
6133
- end
6284
+ class PayByBank < Stripe::RequestParams; end
6134
6285
  class Payco < Stripe::RequestParams
6135
6286
  # Controls when the funds are captured from the customer's account.
6136
6287
  #
@@ -6263,6 +6414,17 @@ module Stripe
6263
6414
  sig { params(capture_method: T.nilable(T.nilable(String))).void }
6264
6415
  def initialize(capture_method: nil); end
6265
6416
  end
6417
+ class Satispay < Stripe::RequestParams
6418
+ # Controls when the funds are captured from the customer's account.
6419
+ #
6420
+ # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
6421
+ #
6422
+ # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
6423
+ sig { returns(T.nilable(T.nilable(String))) }
6424
+ attr_accessor :capture_method
6425
+ sig { params(capture_method: T.nilable(T.nilable(String))).void }
6426
+ def initialize(capture_method: nil); end
6427
+ end
6266
6428
  class SepaDebit < Stripe::RequestParams
6267
6429
  class MandateOptions < Stripe::RequestParams
6268
6430
  # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'STRIPE'.
@@ -6523,6 +6685,11 @@ module Stripe
6523
6685
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Bancontact))))
6524
6686
  }
6525
6687
  attr_accessor :bancontact
6688
+ # If this is a `billie` PaymentMethod, this sub-hash contains details about the Billie payment method options.
6689
+ sig {
6690
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Billie))))
6691
+ }
6692
+ attr_accessor :billie
6526
6693
  # If this is a `blik` PaymentMethod, this sub-hash contains details about the BLIK payment method options.
6527
6694
  sig {
6528
6695
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Blik))))
@@ -6548,6 +6715,11 @@ module Stripe
6548
6715
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Cashapp))))
6549
6716
  }
6550
6717
  attr_accessor :cashapp
6718
+ # If this is a `crypto` PaymentMethod, this sub-hash contains details about the Crypto payment method options.
6719
+ sig {
6720
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Crypto))))
6721
+ }
6722
+ attr_accessor :crypto
6551
6723
  # If this is a `customer balance` PaymentMethod, this sub-hash contains details about the customer balance payment method options.
6552
6724
  sig {
6553
6725
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::CustomerBalance))))
@@ -6678,6 +6850,11 @@ module Stripe
6678
6850
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::SamsungPay))))
6679
6851
  }
6680
6852
  attr_accessor :samsung_pay
6853
+ # If this is a `satispay` PaymentMethod, this sub-hash contains details about the Satispay payment method options.
6854
+ sig {
6855
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Satispay))))
6856
+ }
6857
+ attr_accessor :satispay
6681
6858
  # If this is a `sepa_debit` PaymentIntent, this sub-hash contains details about the SEPA Debit payment method options.
6682
6859
  sig {
6683
6860
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::SepaDebit))))
@@ -6714,7 +6891,7 @@ module Stripe
6714
6891
  }
6715
6892
  attr_accessor :zip
6716
6893
  sig {
6717
- params(acss_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::AcssDebit))), affirm: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Affirm))), afterpay_clearpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::AfterpayClearpay))), alipay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Alipay))), alma: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Alma))), amazon_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::AmazonPay))), au_becs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::AuBecsDebit))), bacs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::BacsDebit))), bancontact: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Bancontact))), blik: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Blik))), boleto: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Boleto))), card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Card))), card_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::CardPresent))), cashapp: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Cashapp))), customer_balance: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::CustomerBalance))), eps: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Eps))), fpx: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Fpx))), giropay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Giropay))), grabpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Grabpay))), ideal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Ideal))), interac_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::InteracPresent))), kakao_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::KakaoPay))), klarna: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Klarna))), konbini: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Konbini))), kr_card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::KrCard))), link: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Link))), mobilepay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Mobilepay))), multibanco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Multibanco))), naver_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::NaverPay))), nz_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::NzBankAccount))), oxxo: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Oxxo))), p24: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::P24))), pay_by_bank: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::PayByBank))), payco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Payco))), paynow: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Paynow))), paypal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Paypal))), pix: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Pix))), promptpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Promptpay))), revolut_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::RevolutPay))), samsung_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::SamsungPay))), sepa_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::SepaDebit))), sofort: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Sofort))), swish: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Swish))), twint: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Twint))), us_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::UsBankAccount))), wechat_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::WechatPay))), zip: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Zip)))).void
6894
+ params(acss_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::AcssDebit))), affirm: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Affirm))), afterpay_clearpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::AfterpayClearpay))), alipay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Alipay))), alma: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Alma))), amazon_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::AmazonPay))), au_becs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::AuBecsDebit))), bacs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::BacsDebit))), bancontact: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Bancontact))), billie: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Billie))), blik: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Blik))), boleto: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Boleto))), card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Card))), card_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::CardPresent))), cashapp: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Cashapp))), crypto: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Crypto))), customer_balance: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::CustomerBalance))), eps: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Eps))), fpx: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Fpx))), giropay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Giropay))), grabpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Grabpay))), ideal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Ideal))), interac_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::InteracPresent))), kakao_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::KakaoPay))), klarna: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Klarna))), konbini: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Konbini))), kr_card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::KrCard))), link: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Link))), mobilepay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Mobilepay))), multibanco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Multibanco))), naver_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::NaverPay))), nz_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::NzBankAccount))), oxxo: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Oxxo))), p24: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::P24))), pay_by_bank: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::PayByBank))), payco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Payco))), paynow: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Paynow))), paypal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Paypal))), pix: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Pix))), promptpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Promptpay))), revolut_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::RevolutPay))), samsung_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::SamsungPay))), satispay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Satispay))), sepa_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::SepaDebit))), sofort: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Sofort))), swish: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Swish))), twint: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Twint))), us_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::UsBankAccount))), wechat_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::WechatPay))), zip: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions::Zip)))).void
6718
6895
  }
6719
6896
  def initialize(
6720
6897
  acss_debit: nil,
@@ -6726,11 +6903,13 @@ module Stripe
6726
6903
  au_becs_debit: nil,
6727
6904
  bacs_debit: nil,
6728
6905
  bancontact: nil,
6906
+ billie: nil,
6729
6907
  blik: nil,
6730
6908
  boleto: nil,
6731
6909
  card: nil,
6732
6910
  card_present: nil,
6733
6911
  cashapp: nil,
6912
+ crypto: nil,
6734
6913
  customer_balance: nil,
6735
6914
  eps: nil,
6736
6915
  fpx: nil,
@@ -6757,6 +6936,7 @@ module Stripe
6757
6936
  promptpay: nil,
6758
6937
  revolut_pay: nil,
6759
6938
  samsung_pay: nil,
6939
+ satispay: nil,
6760
6940
  sepa_debit: nil,
6761
6941
  sofort: nil,
6762
6942
  swish: nil,
@@ -6867,7 +7047,7 @@ module Stripe
6867
7047
  # Payment-method-specific configuration for this PaymentIntent.
6868
7048
  sig { returns(T.nilable(::Stripe::PaymentIntent::UpdateParams::PaymentMethodOptions)) }
6869
7049
  attr_accessor :payment_method_options
6870
- # The list of payment method types (for example, card) that this PaymentIntent can use. Use `automatic_payment_methods` to manage payment methods from the [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods).
7050
+ # The list of payment method types (for example, card) that this PaymentIntent can use. Use `automatic_payment_methods` to manage payment methods from the [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods). A list of valid payment method types can be found [here](https://docs.stripe.com/api/payment_methods/object#payment_method_object-type).
6871
7051
  sig { returns(T.nilable(T::Array[String])) }
6872
7052
  attr_accessor :payment_method_types
6873
7053
  # Email address that the receipt for the resulting payment will be sent to. If `receipt_email` is specified for a payment in live mode, a receipt will be sent regardless of your [email settings](https://dashboard.stripe.com/account/emails).
@@ -7030,9 +7210,7 @@ module Stripe
7030
7210
  class ConfirmParams < Stripe::RequestParams
7031
7211
  class MandateData < Stripe::RequestParams
7032
7212
  class CustomerAcceptance < Stripe::RequestParams
7033
- class Offline < Stripe::RequestParams
7034
-
7035
- end
7213
+ class Offline < Stripe::RequestParams; end
7036
7214
  class Online < Stripe::RequestParams
7037
7215
  # The IP address from which the Mandate was accepted by the customer.
7038
7216
  sig { returns(T.nilable(String)) }
@@ -7090,21 +7268,11 @@ module Stripe
7090
7268
  }
7091
7269
  def initialize(account_number: nil, institution_number: nil, transit_number: nil); end
7092
7270
  end
7093
- class Affirm < Stripe::RequestParams
7094
-
7095
- end
7096
- class AfterpayClearpay < Stripe::RequestParams
7097
-
7098
- end
7099
- class Alipay < Stripe::RequestParams
7100
-
7101
- end
7102
- class Alma < Stripe::RequestParams
7103
-
7104
- end
7105
- class AmazonPay < Stripe::RequestParams
7106
-
7107
- end
7271
+ class Affirm < Stripe::RequestParams; end
7272
+ class AfterpayClearpay < Stripe::RequestParams; end
7273
+ class Alipay < Stripe::RequestParams; end
7274
+ class Alma < Stripe::RequestParams; end
7275
+ class AmazonPay < Stripe::RequestParams; end
7108
7276
  class AuBecsDebit < Stripe::RequestParams
7109
7277
  # The account number for the bank account.
7110
7278
  sig { returns(String) }
@@ -7125,12 +7293,8 @@ module Stripe
7125
7293
  sig { params(account_number: T.nilable(String), sort_code: T.nilable(String)).void }
7126
7294
  def initialize(account_number: nil, sort_code: nil); end
7127
7295
  end
7128
- class Bancontact < Stripe::RequestParams
7129
-
7130
- end
7131
- class Billie < Stripe::RequestParams
7132
-
7133
- end
7296
+ class Bancontact < Stripe::RequestParams; end
7297
+ class Billie < Stripe::RequestParams; end
7134
7298
  class BillingDetails < Stripe::RequestParams
7135
7299
  class Address < Stripe::RequestParams
7136
7300
  # City, district, suburb, town, or village.
@@ -7177,14 +7341,15 @@ module Stripe
7177
7341
  # Billing phone number (including extension).
7178
7342
  sig { returns(T.nilable(T.nilable(String))) }
7179
7343
  attr_accessor :phone
7344
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
7345
+ sig { returns(T.nilable(String)) }
7346
+ attr_accessor :tax_id
7180
7347
  sig {
7181
- params(address: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::BillingDetails::Address))), email: T.nilable(T.nilable(String)), name: T.nilable(T.nilable(String)), phone: T.nilable(T.nilable(String))).void
7348
+ params(address: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::BillingDetails::Address))), email: T.nilable(T.nilable(String)), name: T.nilable(T.nilable(String)), phone: T.nilable(T.nilable(String)), tax_id: T.nilable(String)).void
7182
7349
  }
7183
- def initialize(address: nil, email: nil, name: nil, phone: nil); end
7184
- end
7185
- class Blik < Stripe::RequestParams
7186
-
7350
+ def initialize(address: nil, email: nil, name: nil, phone: nil, tax_id: nil); end
7187
7351
  end
7352
+ class Blik < Stripe::RequestParams; end
7188
7353
  class Boleto < Stripe::RequestParams
7189
7354
  # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
7190
7355
  sig { returns(String) }
@@ -7192,12 +7357,9 @@ module Stripe
7192
7357
  sig { params(tax_id: String).void }
7193
7358
  def initialize(tax_id: nil); end
7194
7359
  end
7195
- class Cashapp < Stripe::RequestParams
7196
-
7197
- end
7198
- class CustomerBalance < Stripe::RequestParams
7199
-
7200
- end
7360
+ class Cashapp < Stripe::RequestParams; end
7361
+ class Crypto < Stripe::RequestParams; end
7362
+ class CustomerBalance < Stripe::RequestParams; end
7201
7363
  class Eps < Stripe::RequestParams
7202
7364
  # The customer's bank.
7203
7365
  sig { returns(T.nilable(String)) }
@@ -7215,12 +7377,8 @@ module Stripe
7215
7377
  sig { params(account_holder_type: T.nilable(String), bank: String).void }
7216
7378
  def initialize(account_holder_type: nil, bank: nil); end
7217
7379
  end
7218
- class Giropay < Stripe::RequestParams
7219
-
7220
- end
7221
- class Grabpay < Stripe::RequestParams
7222
-
7223
- end
7380
+ class Giropay < Stripe::RequestParams; end
7381
+ class Grabpay < Stripe::RequestParams; end
7224
7382
  class Ideal < Stripe::RequestParams
7225
7383
  # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
7226
7384
  sig { returns(T.nilable(String)) }
@@ -7228,12 +7386,8 @@ module Stripe
7228
7386
  sig { params(bank: T.nilable(String)).void }
7229
7387
  def initialize(bank: nil); end
7230
7388
  end
7231
- class InteracPresent < Stripe::RequestParams
7232
-
7233
- end
7234
- class KakaoPay < Stripe::RequestParams
7235
-
7236
- end
7389
+ class InteracPresent < Stripe::RequestParams; end
7390
+ class KakaoPay < Stripe::RequestParams; end
7237
7391
  class Klarna < Stripe::RequestParams
7238
7392
  class Dob < Stripe::RequestParams
7239
7393
  # The day of birth, between 1 and 31.
@@ -7258,21 +7412,11 @@ module Stripe
7258
7412
  }
7259
7413
  def initialize(dob: nil); end
7260
7414
  end
7261
- class Konbini < Stripe::RequestParams
7262
-
7263
- end
7264
- class KrCard < Stripe::RequestParams
7265
-
7266
- end
7267
- class Link < Stripe::RequestParams
7268
-
7269
- end
7270
- class Mobilepay < Stripe::RequestParams
7271
-
7272
- end
7273
- class Multibanco < Stripe::RequestParams
7274
-
7275
- end
7415
+ class Konbini < Stripe::RequestParams; end
7416
+ class KrCard < Stripe::RequestParams; end
7417
+ class Link < Stripe::RequestParams; end
7418
+ class Mobilepay < Stripe::RequestParams; end
7419
+ class Multibanco < Stripe::RequestParams; end
7276
7420
  class NaverPay < Stripe::RequestParams
7277
7421
  # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
7278
7422
  sig { returns(T.nilable(String)) }
@@ -7311,9 +7455,7 @@ module Stripe
7311
7455
  suffix: nil
7312
7456
  ); end
7313
7457
  end
7314
- class Oxxo < Stripe::RequestParams
7315
-
7316
- end
7458
+ class Oxxo < Stripe::RequestParams; end
7317
7459
  class P24 < Stripe::RequestParams
7318
7460
  # The customer's bank.
7319
7461
  sig { returns(T.nilable(String)) }
@@ -7321,24 +7463,12 @@ module Stripe
7321
7463
  sig { params(bank: T.nilable(String)).void }
7322
7464
  def initialize(bank: nil); end
7323
7465
  end
7324
- class PayByBank < Stripe::RequestParams
7325
-
7326
- end
7327
- class Payco < Stripe::RequestParams
7328
-
7329
- end
7330
- class Paynow < Stripe::RequestParams
7331
-
7332
- end
7333
- class Paypal < Stripe::RequestParams
7334
-
7335
- end
7336
- class Pix < Stripe::RequestParams
7337
-
7338
- end
7339
- class Promptpay < Stripe::RequestParams
7340
-
7341
- end
7466
+ class PayByBank < Stripe::RequestParams; end
7467
+ class Payco < Stripe::RequestParams; end
7468
+ class Paynow < Stripe::RequestParams; end
7469
+ class Paypal < Stripe::RequestParams; end
7470
+ class Pix < Stripe::RequestParams; end
7471
+ class Promptpay < Stripe::RequestParams; end
7342
7472
  class RadarOptions < Stripe::RequestParams
7343
7473
  # A [Radar Session](https://stripe.com/docs/radar/radar-session) is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments.
7344
7474
  sig { returns(T.nilable(String)) }
@@ -7346,15 +7476,9 @@ module Stripe
7346
7476
  sig { params(session: T.nilable(String)).void }
7347
7477
  def initialize(session: nil); end
7348
7478
  end
7349
- class RevolutPay < Stripe::RequestParams
7350
-
7351
- end
7352
- class SamsungPay < Stripe::RequestParams
7353
-
7354
- end
7355
- class Satispay < Stripe::RequestParams
7356
-
7357
- end
7479
+ class RevolutPay < Stripe::RequestParams; end
7480
+ class SamsungPay < Stripe::RequestParams; end
7481
+ class Satispay < Stripe::RequestParams; end
7358
7482
  class SepaDebit < Stripe::RequestParams
7359
7483
  # IBAN of the bank account.
7360
7484
  sig { returns(String) }
@@ -7369,12 +7493,8 @@ module Stripe
7369
7493
  sig { params(country: String).void }
7370
7494
  def initialize(country: nil); end
7371
7495
  end
7372
- class Swish < Stripe::RequestParams
7373
-
7374
- end
7375
- class Twint < Stripe::RequestParams
7376
-
7377
- end
7496
+ class Swish < Stripe::RequestParams; end
7497
+ class Twint < Stripe::RequestParams; end
7378
7498
  class UsBankAccount < Stripe::RequestParams
7379
7499
  # Account holder type: individual or company.
7380
7500
  sig { returns(T.nilable(String)) }
@@ -7402,12 +7522,8 @@ module Stripe
7402
7522
  routing_number: nil
7403
7523
  ); end
7404
7524
  end
7405
- class WechatPay < Stripe::RequestParams
7406
-
7407
- end
7408
- class Zip < Stripe::RequestParams
7409
-
7410
- end
7525
+ class WechatPay < Stripe::RequestParams; end
7526
+ class Zip < Stripe::RequestParams; end
7411
7527
  # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
7412
7528
  sig {
7413
7529
  returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::AcssDebit))
@@ -7454,7 +7570,7 @@ module Stripe
7454
7570
  returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Bancontact))
7455
7571
  }
7456
7572
  attr_accessor :bancontact
7457
- # If this is a `billie` PaymentMethod, this hash contains details about the billie payment method.
7573
+ # If this is a `billie` PaymentMethod, this hash contains details about the Billie payment method.
7458
7574
  sig {
7459
7575
  returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Billie))
7460
7576
  }
@@ -7477,6 +7593,11 @@ module Stripe
7477
7593
  returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Cashapp))
7478
7594
  }
7479
7595
  attr_accessor :cashapp
7596
+ # If this is a Crypto PaymentMethod, this hash contains details about the Crypto payment method.
7597
+ sig {
7598
+ returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Crypto))
7599
+ }
7600
+ attr_accessor :crypto
7480
7601
  # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
7481
7602
  sig {
7482
7603
  returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::CustomerBalance))
@@ -7589,7 +7710,7 @@ module Stripe
7589
7710
  returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::RadarOptions))
7590
7711
  }
7591
7712
  attr_accessor :radar_options
7592
- # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
7713
+ # If this is a `revolut_pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
7593
7714
  sig {
7594
7715
  returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::RevolutPay))
7595
7716
  }
@@ -7599,7 +7720,7 @@ module Stripe
7599
7720
  returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::SamsungPay))
7600
7721
  }
7601
7722
  attr_accessor :samsung_pay
7602
- # If this is a `satispay` PaymentMethod, this hash contains details about the satispay payment method.
7723
+ # If this is a `satispay` PaymentMethod, this hash contains details about the Satispay payment method.
7603
7724
  sig {
7604
7725
  returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Satispay))
7605
7726
  }
@@ -7637,7 +7758,7 @@ module Stripe
7637
7758
  sig { returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Zip)) }
7638
7759
  attr_accessor :zip
7639
7760
  sig {
7640
- params(acss_debit: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::AcssDebit), affirm: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Affirm), afterpay_clearpay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::AfterpayClearpay), alipay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Alipay), allow_redisplay: T.nilable(String), alma: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Alma), amazon_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::AmazonPay), au_becs_debit: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::AuBecsDebit), bacs_debit: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::BacsDebit), bancontact: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Bancontact), billie: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Billie), billing_details: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::BillingDetails), blik: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Blik), boleto: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Boleto), cashapp: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Cashapp), customer_balance: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::CustomerBalance), eps: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Eps), fpx: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Fpx), giropay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Giropay), grabpay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Grabpay), ideal: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Ideal), interac_present: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::InteracPresent), kakao_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::KakaoPay), klarna: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Klarna), konbini: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Konbini), kr_card: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::KrCard), link: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Link), metadata: T.nilable(T::Hash[String, String]), mobilepay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Mobilepay), multibanco: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Multibanco), naver_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::NaverPay), nz_bank_account: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::NzBankAccount), oxxo: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Oxxo), p24: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::P24), pay_by_bank: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::PayByBank), payco: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Payco), paynow: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Paynow), paypal: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Paypal), pix: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Pix), promptpay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Promptpay), radar_options: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::RadarOptions), revolut_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::RevolutPay), samsung_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::SamsungPay), satispay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Satispay), sepa_debit: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::SepaDebit), sofort: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Sofort), swish: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Swish), twint: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Twint), type: String, us_bank_account: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::UsBankAccount), wechat_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::WechatPay), zip: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Zip)).void
7761
+ params(acss_debit: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::AcssDebit), affirm: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Affirm), afterpay_clearpay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::AfterpayClearpay), alipay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Alipay), allow_redisplay: T.nilable(String), alma: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Alma), amazon_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::AmazonPay), au_becs_debit: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::AuBecsDebit), bacs_debit: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::BacsDebit), bancontact: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Bancontact), billie: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Billie), billing_details: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::BillingDetails), blik: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Blik), boleto: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Boleto), cashapp: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Cashapp), crypto: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Crypto), customer_balance: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::CustomerBalance), eps: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Eps), fpx: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Fpx), giropay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Giropay), grabpay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Grabpay), ideal: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Ideal), interac_present: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::InteracPresent), kakao_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::KakaoPay), klarna: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Klarna), konbini: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Konbini), kr_card: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::KrCard), link: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Link), metadata: T.nilable(T::Hash[String, String]), mobilepay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Mobilepay), multibanco: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Multibanco), naver_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::NaverPay), nz_bank_account: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::NzBankAccount), oxxo: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Oxxo), p24: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::P24), pay_by_bank: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::PayByBank), payco: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Payco), paynow: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Paynow), paypal: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Paypal), pix: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Pix), promptpay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Promptpay), radar_options: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::RadarOptions), revolut_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::RevolutPay), samsung_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::SamsungPay), satispay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Satispay), sepa_debit: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::SepaDebit), sofort: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Sofort), swish: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Swish), twint: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Twint), type: String, us_bank_account: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::UsBankAccount), wechat_pay: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::WechatPay), zip: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodData::Zip)).void
7641
7762
  }
7642
7763
  def initialize(
7643
7764
  acss_debit: nil,
@@ -7655,6 +7776,7 @@ module Stripe
7655
7776
  blik: nil,
7656
7777
  boleto: nil,
7657
7778
  cashapp: nil,
7779
+ crypto: nil,
7658
7780
  customer_balance: nil,
7659
7781
  eps: nil,
7660
7782
  fpx: nil,
@@ -7928,6 +8050,17 @@ module Stripe
7928
8050
  }
7929
8051
  def initialize(preferred_language: nil, setup_future_usage: nil); end
7930
8052
  end
8053
+ class Billie < Stripe::RequestParams
8054
+ # Controls when the funds are captured from the customer's account.
8055
+ #
8056
+ # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
8057
+ #
8058
+ # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
8059
+ sig { returns(T.nilable(T.nilable(String))) }
8060
+ attr_accessor :capture_method
8061
+ sig { params(capture_method: T.nilable(T.nilable(String))).void }
8062
+ def initialize(capture_method: nil); end
8063
+ end
7931
8064
  class Blik < Stripe::RequestParams
7932
8065
  # The 6-digit BLIK code that a customer has generated using their banking application. Can only be set on confirmation.
7933
8066
  sig { returns(T.nilable(String)) }
@@ -7978,7 +8111,7 @@ module Stripe
7978
8111
  # One of `month`.
7979
8112
  sig { returns(T.nilable(String)) }
7980
8113
  attr_accessor :interval
7981
- # Type of installment plan, one of `fixed_count`.
8114
+ # Type of installment plan, one of `fixed_count`, `bonus`, or `revolving`.
7982
8115
  sig { returns(String) }
7983
8116
  attr_accessor :type
7984
8117
  sig {
@@ -8271,6 +8404,21 @@ module Stripe
8271
8404
  }
8272
8405
  def initialize(capture_method: nil, setup_future_usage: nil); end
8273
8406
  end
8407
+ class Crypto < Stripe::RequestParams
8408
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
8409
+ #
8410
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
8411
+ #
8412
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
8413
+ #
8414
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
8415
+ #
8416
+ # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
8417
+ sig { returns(T.nilable(String)) }
8418
+ attr_accessor :setup_future_usage
8419
+ sig { params(setup_future_usage: T.nilable(String)).void }
8420
+ def initialize(setup_future_usage: nil); end
8421
+ end
8274
8422
  class CustomerBalance < Stripe::RequestParams
8275
8423
  class BankTransfer < Stripe::RequestParams
8276
8424
  class EuBankTransfer < Stripe::RequestParams
@@ -8397,9 +8545,7 @@ module Stripe
8397
8545
  sig { params(setup_future_usage: T.nilable(T.nilable(T.any(String, String)))).void }
8398
8546
  def initialize(setup_future_usage: nil); end
8399
8547
  end
8400
- class InteracPresent < Stripe::RequestParams
8401
-
8402
- end
8548
+ class InteracPresent < Stripe::RequestParams; end
8403
8549
  class KakaoPay < Stripe::RequestParams
8404
8550
  # Controls when the funds are captured from the customer's account.
8405
8551
  #
@@ -8423,6 +8569,72 @@ module Stripe
8423
8569
  def initialize(capture_method: nil, setup_future_usage: nil); end
8424
8570
  end
8425
8571
  class Klarna < Stripe::RequestParams
8572
+ class OnDemand < Stripe::RequestParams
8573
+ # Your average amount value. You can use a value across your customer base, or segment based on customer type, country, etc.
8574
+ sig { returns(T.nilable(Integer)) }
8575
+ attr_accessor :average_amount
8576
+ # The maximum value you may charge a customer per purchase. You can use a value across your customer base, or segment based on customer type, country, etc.
8577
+ sig { returns(T.nilable(Integer)) }
8578
+ attr_accessor :maximum_amount
8579
+ # The lowest or minimum value you may charge a customer per purchase. You can use a value across your customer base, or segment based on customer type, country, etc.
8580
+ sig { returns(T.nilable(Integer)) }
8581
+ attr_accessor :minimum_amount
8582
+ # Interval at which the customer is making purchases
8583
+ sig { returns(T.nilable(String)) }
8584
+ attr_accessor :purchase_interval
8585
+ # The number of `purchase_interval` between charges
8586
+ sig { returns(T.nilable(Integer)) }
8587
+ attr_accessor :purchase_interval_count
8588
+ sig {
8589
+ params(average_amount: T.nilable(Integer), maximum_amount: T.nilable(Integer), minimum_amount: T.nilable(Integer), purchase_interval: T.nilable(String), purchase_interval_count: T.nilable(Integer)).void
8590
+ }
8591
+ def initialize(
8592
+ average_amount: nil,
8593
+ maximum_amount: nil,
8594
+ minimum_amount: nil,
8595
+ purchase_interval: nil,
8596
+ purchase_interval_count: nil
8597
+ ); end
8598
+ end
8599
+ class Subscription < Stripe::RequestParams
8600
+ class NextBilling < Stripe::RequestParams
8601
+ # The amount of the next charge for the subscription.
8602
+ sig { returns(Integer) }
8603
+ attr_accessor :amount
8604
+ # The date of the next charge for the subscription in YYYY-MM-DD format.
8605
+ sig { returns(String) }
8606
+ attr_accessor :date
8607
+ sig { params(amount: Integer, date: String).void }
8608
+ def initialize(amount: nil, date: nil); end
8609
+ end
8610
+ # Unit of time between subscription charges.
8611
+ sig { returns(String) }
8612
+ attr_accessor :interval
8613
+ # The number of intervals (specified in the `interval` attribute) between subscription charges. For example, `interval=month` and `interval_count=3` charges every 3 months.
8614
+ sig { returns(T.nilable(Integer)) }
8615
+ attr_accessor :interval_count
8616
+ # Name for subscription.
8617
+ sig { returns(T.nilable(String)) }
8618
+ attr_accessor :name
8619
+ # Describes the upcoming charge for this subscription.
8620
+ sig {
8621
+ returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Klarna::Subscription::NextBilling))
8622
+ }
8623
+ attr_accessor :next_billing
8624
+ # A non-customer-facing reference to correlate subscription charges in the Klarna app. Use a value that persists across subscription charges.
8625
+ sig { returns(String) }
8626
+ attr_accessor :reference
8627
+ sig {
8628
+ params(interval: String, interval_count: T.nilable(Integer), name: T.nilable(String), next_billing: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Klarna::Subscription::NextBilling), reference: String).void
8629
+ }
8630
+ def initialize(
8631
+ interval: nil,
8632
+ interval_count: nil,
8633
+ name: nil,
8634
+ next_billing: nil,
8635
+ reference: nil
8636
+ ); end
8637
+ end
8426
8638
  # Controls when the funds are captured from the customer's account.
8427
8639
  #
8428
8640
  # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
@@ -8430,6 +8642,11 @@ module Stripe
8430
8642
  # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
8431
8643
  sig { returns(T.nilable(T.nilable(String))) }
8432
8644
  attr_accessor :capture_method
8645
+ # On-demand details if setting up or charging an on-demand payment.
8646
+ sig {
8647
+ returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Klarna::OnDemand))
8648
+ }
8649
+ attr_accessor :on_demand
8433
8650
  # Preferred language of the Klarna authorization page that the customer is redirected to
8434
8651
  sig { returns(T.nilable(String)) }
8435
8652
  attr_accessor :preferred_locale
@@ -8444,10 +8661,21 @@ module Stripe
8444
8661
  # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
8445
8662
  sig { returns(T.nilable(String)) }
8446
8663
  attr_accessor :setup_future_usage
8664
+ # Subscription details if setting up or charging a subscription.
8447
8665
  sig {
8448
- params(capture_method: T.nilable(T.nilable(String)), preferred_locale: T.nilable(String), setup_future_usage: T.nilable(String)).void
8666
+ returns(T.nilable(T.nilable(T.any(String, T::Array[::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Klarna::Subscription]))))
8449
8667
  }
8450
- def initialize(capture_method: nil, preferred_locale: nil, setup_future_usage: nil); end
8668
+ attr_accessor :subscriptions
8669
+ sig {
8670
+ params(capture_method: T.nilable(T.nilable(String)), on_demand: T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Klarna::OnDemand), preferred_locale: T.nilable(String), setup_future_usage: T.nilable(String), subscriptions: T.nilable(T.nilable(T.any(String, T::Array[::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Klarna::Subscription])))).void
8671
+ }
8672
+ def initialize(
8673
+ capture_method: nil,
8674
+ on_demand: nil,
8675
+ preferred_locale: nil,
8676
+ setup_future_usage: nil,
8677
+ subscriptions: nil
8678
+ ); end
8451
8679
  end
8452
8680
  class Konbini < Stripe::RequestParams
8453
8681
  # An optional 10 to 11 digit numeric-only string determining the confirmation code at applicable convenience stores. Must not consist of only zeroes and could be rejected in case of insufficient uniqueness. We recommend to use the customer's phone number.
@@ -8654,9 +8882,7 @@ module Stripe
8654
8882
  }
8655
8883
  def initialize(setup_future_usage: nil, tos_shown_and_accepted: nil); end
8656
8884
  end
8657
- class PayByBank < Stripe::RequestParams
8658
-
8659
- end
8885
+ class PayByBank < Stripe::RequestParams; end
8660
8886
  class Payco < Stripe::RequestParams
8661
8887
  # Controls when the funds are captured from the customer's account.
8662
8888
  #
@@ -8789,6 +9015,17 @@ module Stripe
8789
9015
  sig { params(capture_method: T.nilable(T.nilable(String))).void }
8790
9016
  def initialize(capture_method: nil); end
8791
9017
  end
9018
+ class Satispay < Stripe::RequestParams
9019
+ # Controls when the funds are captured from the customer's account.
9020
+ #
9021
+ # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
9022
+ #
9023
+ # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
9024
+ sig { returns(T.nilable(T.nilable(String))) }
9025
+ attr_accessor :capture_method
9026
+ sig { params(capture_method: T.nilable(T.nilable(String))).void }
9027
+ def initialize(capture_method: nil); end
9028
+ end
8792
9029
  class SepaDebit < Stripe::RequestParams
8793
9030
  class MandateOptions < Stripe::RequestParams
8794
9031
  # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'STRIPE'.
@@ -9049,6 +9286,11 @@ module Stripe
9049
9286
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Bancontact))))
9050
9287
  }
9051
9288
  attr_accessor :bancontact
9289
+ # If this is a `billie` PaymentMethod, this sub-hash contains details about the Billie payment method options.
9290
+ sig {
9291
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Billie))))
9292
+ }
9293
+ attr_accessor :billie
9052
9294
  # If this is a `blik` PaymentMethod, this sub-hash contains details about the BLIK payment method options.
9053
9295
  sig {
9054
9296
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Blik))))
@@ -9074,6 +9316,11 @@ module Stripe
9074
9316
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Cashapp))))
9075
9317
  }
9076
9318
  attr_accessor :cashapp
9319
+ # If this is a `crypto` PaymentMethod, this sub-hash contains details about the Crypto payment method options.
9320
+ sig {
9321
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Crypto))))
9322
+ }
9323
+ attr_accessor :crypto
9077
9324
  # If this is a `customer balance` PaymentMethod, this sub-hash contains details about the customer balance payment method options.
9078
9325
  sig {
9079
9326
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::CustomerBalance))))
@@ -9204,6 +9451,11 @@ module Stripe
9204
9451
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::SamsungPay))))
9205
9452
  }
9206
9453
  attr_accessor :samsung_pay
9454
+ # If this is a `satispay` PaymentMethod, this sub-hash contains details about the Satispay payment method options.
9455
+ sig {
9456
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Satispay))))
9457
+ }
9458
+ attr_accessor :satispay
9207
9459
  # If this is a `sepa_debit` PaymentIntent, this sub-hash contains details about the SEPA Debit payment method options.
9208
9460
  sig {
9209
9461
  returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::SepaDebit))))
@@ -9240,7 +9492,7 @@ module Stripe
9240
9492
  }
9241
9493
  attr_accessor :zip
9242
9494
  sig {
9243
- params(acss_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::AcssDebit))), affirm: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Affirm))), afterpay_clearpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::AfterpayClearpay))), alipay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Alipay))), alma: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Alma))), amazon_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::AmazonPay))), au_becs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::AuBecsDebit))), bacs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::BacsDebit))), bancontact: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Bancontact))), blik: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Blik))), boleto: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Boleto))), card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Card))), card_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::CardPresent))), cashapp: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Cashapp))), customer_balance: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::CustomerBalance))), eps: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Eps))), fpx: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Fpx))), giropay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Giropay))), grabpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Grabpay))), ideal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Ideal))), interac_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::InteracPresent))), kakao_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::KakaoPay))), klarna: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Klarna))), konbini: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Konbini))), kr_card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::KrCard))), link: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Link))), mobilepay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Mobilepay))), multibanco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Multibanco))), naver_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::NaverPay))), nz_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::NzBankAccount))), oxxo: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Oxxo))), p24: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::P24))), pay_by_bank: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::PayByBank))), payco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Payco))), paynow: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Paynow))), paypal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Paypal))), pix: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Pix))), promptpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Promptpay))), revolut_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::RevolutPay))), samsung_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::SamsungPay))), sepa_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::SepaDebit))), sofort: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Sofort))), swish: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Swish))), twint: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Twint))), us_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount))), wechat_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::WechatPay))), zip: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Zip)))).void
9495
+ params(acss_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::AcssDebit))), affirm: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Affirm))), afterpay_clearpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::AfterpayClearpay))), alipay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Alipay))), alma: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Alma))), amazon_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::AmazonPay))), au_becs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::AuBecsDebit))), bacs_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::BacsDebit))), bancontact: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Bancontact))), billie: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Billie))), blik: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Blik))), boleto: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Boleto))), card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Card))), card_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::CardPresent))), cashapp: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Cashapp))), crypto: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Crypto))), customer_balance: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::CustomerBalance))), eps: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Eps))), fpx: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Fpx))), giropay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Giropay))), grabpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Grabpay))), ideal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Ideal))), interac_present: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::InteracPresent))), kakao_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::KakaoPay))), klarna: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Klarna))), konbini: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Konbini))), kr_card: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::KrCard))), link: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Link))), mobilepay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Mobilepay))), multibanco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Multibanco))), naver_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::NaverPay))), nz_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::NzBankAccount))), oxxo: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Oxxo))), p24: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::P24))), pay_by_bank: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::PayByBank))), payco: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Payco))), paynow: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Paynow))), paypal: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Paypal))), pix: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Pix))), promptpay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Promptpay))), revolut_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::RevolutPay))), samsung_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::SamsungPay))), satispay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Satispay))), sepa_debit: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::SepaDebit))), sofort: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Sofort))), swish: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Swish))), twint: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Twint))), us_bank_account: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount))), wechat_pay: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::WechatPay))), zip: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions::Zip)))).void
9244
9496
  }
9245
9497
  def initialize(
9246
9498
  acss_debit: nil,
@@ -9252,11 +9504,13 @@ module Stripe
9252
9504
  au_becs_debit: nil,
9253
9505
  bacs_debit: nil,
9254
9506
  bancontact: nil,
9507
+ billie: nil,
9255
9508
  blik: nil,
9256
9509
  boleto: nil,
9257
9510
  card: nil,
9258
9511
  card_present: nil,
9259
9512
  cashapp: nil,
9513
+ crypto: nil,
9260
9514
  customer_balance: nil,
9261
9515
  eps: nil,
9262
9516
  fpx: nil,
@@ -9283,6 +9537,7 @@ module Stripe
9283
9537
  promptpay: nil,
9284
9538
  revolut_pay: nil,
9285
9539
  samsung_pay: nil,
9540
+ satispay: nil,
9286
9541
  sepa_debit: nil,
9287
9542
  sofort: nil,
9288
9543
  swish: nil,
@@ -9377,6 +9632,7 @@ module Stripe
9377
9632
  sig { returns(T.nilable(T.any(T::Boolean, String))) }
9378
9633
  attr_accessor :off_session
9379
9634
  # ID of the payment method (a PaymentMethod, Card, or [compatible Source](https://stripe.com/docs/payments/payment-methods/transitioning#compatibility) object) to attach to this PaymentIntent.
9635
+ # If the payment method is attached to a Customer, it must match the [customer](https://stripe.com/docs/api#create_payment_intent-customer) that is set on this PaymentIntent.
9380
9636
  sig { returns(T.nilable(String)) }
9381
9637
  attr_accessor :payment_method
9382
9638
  # If provided, this hash will be used to create a PaymentMethod. The new PaymentMethod will appear
@@ -9387,7 +9643,7 @@ module Stripe
9387
9643
  # Payment method-specific configuration for this PaymentIntent.
9388
9644
  sig { returns(T.nilable(::Stripe::PaymentIntent::ConfirmParams::PaymentMethodOptions)) }
9389
9645
  attr_accessor :payment_method_options
9390
- # The list of payment method types (for example, a card) that this PaymentIntent can use. Use `automatic_payment_methods` to manage payment methods from the [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods).
9646
+ # The list of payment method types (for example, a card) that this PaymentIntent can use. Use `automatic_payment_methods` to manage payment methods from the [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods). A list of valid payment method types can be found [here](https://docs.stripe.com/api/payment_methods/object#payment_method_object-type).
9391
9647
  sig { returns(T.nilable(T::Array[String])) }
9392
9648
  attr_accessor :payment_method_types
9393
9649
  # Options to configure Radar. Learn more about [Radar Sessions](https://stripe.com/docs/radar/radar-session).
@@ -9515,21 +9771,21 @@ module Stripe
9515
9771
  }
9516
9772
  def self.apply_customer_balance(intent, params = {}, opts = {}); end
9517
9773
 
9518
- # You can cancel a PaymentIntent object when it's in one of these statuses: requires_payment_method, requires_capture, requires_confirmation, requires_action or, [in rare cases](https://stripe.com/docs/payments/intents), processing.
9774
+ # You can cancel a PaymentIntent object when it's in one of these statuses: requires_payment_method, requires_capture, requires_confirmation, requires_action or, [in rare cases](https://docs.stripe.com/docs/payments/intents), processing.
9519
9775
  #
9520
9776
  # After it's canceled, no additional charges are made by the PaymentIntent and any operations on the PaymentIntent fail with an error. For PaymentIntents with a status of requires_capture, the remaining amount_capturable is automatically refunded.
9521
9777
  #
9522
- # You can't cancel the PaymentIntent for a Checkout Session. [Expire the Checkout Session](https://stripe.com/docs/api/checkout/sessions/expire) instead.
9778
+ # You can't cancel the PaymentIntent for a Checkout Session. [Expire the Checkout Session](https://docs.stripe.com/docs/api/checkout/sessions/expire) instead.
9523
9779
  sig {
9524
9780
  params(params: T.any(::Stripe::PaymentIntent::CancelParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentIntent)
9525
9781
  }
9526
9782
  def cancel(params = {}, opts = {}); end
9527
9783
 
9528
- # You can cancel a PaymentIntent object when it's in one of these statuses: requires_payment_method, requires_capture, requires_confirmation, requires_action or, [in rare cases](https://stripe.com/docs/payments/intents), processing.
9784
+ # You can cancel a PaymentIntent object when it's in one of these statuses: requires_payment_method, requires_capture, requires_confirmation, requires_action or, [in rare cases](https://docs.stripe.com/docs/payments/intents), processing.
9529
9785
  #
9530
9786
  # After it's canceled, no additional charges are made by the PaymentIntent and any operations on the PaymentIntent fail with an error. For PaymentIntents with a status of requires_capture, the remaining amount_capturable is automatically refunded.
9531
9787
  #
9532
- # You can't cancel the PaymentIntent for a Checkout Session. [Expire the Checkout Session](https://stripe.com/docs/api/checkout/sessions/expire) instead.
9788
+ # You can't cancel the PaymentIntent for a Checkout Session. [Expire the Checkout Session](https://docs.stripe.com/docs/api/checkout/sessions/expire) instead.
9533
9789
  sig {
9534
9790
  params(intent: String, params: T.any(::Stripe::PaymentIntent::CancelParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentIntent)
9535
9791
  }
@@ -9539,7 +9795,7 @@ module Stripe
9539
9795
  #
9540
9796
  # Uncaptured PaymentIntents are cancelled a set number of days (7 by default) after their creation.
9541
9797
  #
9542
- # Learn more about [separate authorization and capture](https://stripe.com/docs/payments/capture-later).
9798
+ # Learn more about [separate authorization and capture](https://docs.stripe.com/docs/payments/capture-later).
9543
9799
  sig {
9544
9800
  params(params: T.any(::Stripe::PaymentIntent::CaptureParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentIntent)
9545
9801
  }
@@ -9549,7 +9805,7 @@ module Stripe
9549
9805
  #
9550
9806
  # Uncaptured PaymentIntents are cancelled a set number of days (7 by default) after their creation.
9551
9807
  #
9552
- # Learn more about [separate authorization and capture](https://stripe.com/docs/payments/capture-later).
9808
+ # Learn more about [separate authorization and capture](https://docs.stripe.com/docs/payments/capture-later).
9553
9809
  sig {
9554
9810
  params(intent: String, params: T.any(::Stripe::PaymentIntent::CaptureParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentIntent)
9555
9811
  }
@@ -9566,8 +9822,8 @@ module Stripe
9566
9822
  # payment succeeds, the PaymentIntent will transition to the succeeded
9567
9823
  # status (or requires_capture, if capture_method is set to manual).
9568
9824
  # If the confirmation_method is automatic, payment may be attempted
9569
- # using our [client SDKs](https://stripe.com/docs/stripe-js/reference#stripe-handle-card-payment)
9570
- # and the PaymentIntent's [client_secret](https://stripe.com/docs/api#payment_intent_object-client_secret).
9825
+ # using our [client SDKs](https://docs.stripe.com/docs/stripe-js/reference#stripe-handle-card-payment)
9826
+ # and the PaymentIntent's [client_secret](https://docs.stripe.com/api#payment_intent_object-client_secret).
9571
9827
  # After next_actions are handled by the client, no additional
9572
9828
  # confirmation is required to complete the payment.
9573
9829
  # If the confirmation_method is manual, all payment attempts must be
@@ -9596,8 +9852,8 @@ module Stripe
9596
9852
  # payment succeeds, the PaymentIntent will transition to the succeeded
9597
9853
  # status (or requires_capture, if capture_method is set to manual).
9598
9854
  # If the confirmation_method is automatic, payment may be attempted
9599
- # using our [client SDKs](https://stripe.com/docs/stripe-js/reference#stripe-handle-card-payment)
9600
- # and the PaymentIntent's [client_secret](https://stripe.com/docs/api#payment_intent_object-client_secret).
9855
+ # using our [client SDKs](https://docs.stripe.com/docs/stripe-js/reference#stripe-handle-card-payment)
9856
+ # and the PaymentIntent's [client_secret](https://docs.stripe.com/api#payment_intent_object-client_secret).
9601
9857
  # After next_actions are handled by the client, no additional
9602
9858
  # confirmation is required to complete the payment.
9603
9859
  # If the confirmation_method is manual, all payment attempts must be
@@ -9617,13 +9873,13 @@ module Stripe
9617
9873
 
9618
9874
  # Creates a PaymentIntent object.
9619
9875
  #
9620
- # After the PaymentIntent is created, attach a payment method and [confirm](https://stripe.com/docs/api/payment_intents/confirm)
9876
+ # After the PaymentIntent is created, attach a payment method and [confirm](https://docs.stripe.com/docs/api/payment_intents/confirm)
9621
9877
  # to continue the payment. Learn more about <a href="/docs/payments/payment-intents">the available payment flows
9622
9878
  # with the Payment Intents API.
9623
9879
  #
9624
9880
  # When you use confirm=true during creation, it's equivalent to creating
9625
9881
  # and confirming the PaymentIntent in the same call. You can use any parameters
9626
- # available in the [confirm API](https://stripe.com/docs/api/payment_intents/confirm) when you supply
9882
+ # available in the [confirm API](https://docs.stripe.com/docs/api/payment_intents/confirm) when you supply
9627
9883
  # confirm=true.
9628
9884
  sig {
9629
9885
  params(params: T.any(::Stripe::PaymentIntent::CreateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentIntent)
@@ -9631,9 +9887,9 @@ module Stripe
9631
9887
  def self.create(params = {}, opts = {}); end
9632
9888
 
9633
9889
  # Perform an incremental authorization on an eligible
9634
- # [PaymentIntent](https://stripe.com/docs/api/payment_intents/object). To be eligible, the
9890
+ # [PaymentIntent](https://docs.stripe.com/docs/api/payment_intents/object). To be eligible, the
9635
9891
  # PaymentIntent's status must be requires_capture and
9636
- # [incremental_authorization_supported](https://stripe.com/docs/api/charges/object#charge_object-payment_method_details-card_present-incremental_authorization_supported)
9892
+ # [incremental_authorization_supported](https://docs.stripe.com/docs/api/charges/object#charge_object-payment_method_details-card_present-incremental_authorization_supported)
9637
9893
  # must be true.
9638
9894
  #
9639
9895
  # Incremental authorizations attempt to increase the authorized amount on
@@ -9644,25 +9900,25 @@ module Stripe
9644
9900
  #
9645
9901
  # If the incremental authorization succeeds, the PaymentIntent object
9646
9902
  # returns with the updated
9647
- # [amount](https://stripe.com/docs/api/payment_intents/object#payment_intent_object-amount).
9903
+ # [amount](https://docs.stripe.com/docs/api/payment_intents/object#payment_intent_object-amount).
9648
9904
  # If the incremental authorization fails, a
9649
- # [card_declined](https://stripe.com/docs/error-codes#card-declined) error returns, and no other
9905
+ # [card_declined](https://docs.stripe.com/docs/error-codes#card-declined) error returns, and no other
9650
9906
  # fields on the PaymentIntent or Charge update. The PaymentIntent
9651
9907
  # object remains capturable for the previously authorized amount.
9652
9908
  #
9653
9909
  # Each PaymentIntent can have a maximum of 10 incremental authorization attempts, including declines.
9654
9910
  # After it's captured, a PaymentIntent can no longer be incremented.
9655
9911
  #
9656
- # Learn more about [incremental authorizations](https://stripe.com/docs/terminal/features/incremental-authorizations).
9912
+ # Learn more about [incremental authorizations](https://docs.stripe.com/docs/terminal/features/incremental-authorizations).
9657
9913
  sig {
9658
9914
  params(params: T.any(::Stripe::PaymentIntent::IncrementAuthorizationParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentIntent)
9659
9915
  }
9660
9916
  def increment_authorization(params = {}, opts = {}); end
9661
9917
 
9662
9918
  # Perform an incremental authorization on an eligible
9663
- # [PaymentIntent](https://stripe.com/docs/api/payment_intents/object). To be eligible, the
9919
+ # [PaymentIntent](https://docs.stripe.com/docs/api/payment_intents/object). To be eligible, the
9664
9920
  # PaymentIntent's status must be requires_capture and
9665
- # [incremental_authorization_supported](https://stripe.com/docs/api/charges/object#charge_object-payment_method_details-card_present-incremental_authorization_supported)
9921
+ # [incremental_authorization_supported](https://docs.stripe.com/docs/api/charges/object#charge_object-payment_method_details-card_present-incremental_authorization_supported)
9666
9922
  # must be true.
9667
9923
  #
9668
9924
  # Incremental authorizations attempt to increase the authorized amount on
@@ -9673,16 +9929,16 @@ module Stripe
9673
9929
  #
9674
9930
  # If the incremental authorization succeeds, the PaymentIntent object
9675
9931
  # returns with the updated
9676
- # [amount](https://stripe.com/docs/api/payment_intents/object#payment_intent_object-amount).
9932
+ # [amount](https://docs.stripe.com/docs/api/payment_intents/object#payment_intent_object-amount).
9677
9933
  # If the incremental authorization fails, a
9678
- # [card_declined](https://stripe.com/docs/error-codes#card-declined) error returns, and no other
9934
+ # [card_declined](https://docs.stripe.com/docs/error-codes#card-declined) error returns, and no other
9679
9935
  # fields on the PaymentIntent or Charge update. The PaymentIntent
9680
9936
  # object remains capturable for the previously authorized amount.
9681
9937
  #
9682
9938
  # Each PaymentIntent can have a maximum of 10 incremental authorization attempts, including declines.
9683
9939
  # After it's captured, a PaymentIntent can no longer be incremented.
9684
9940
  #
9685
- # Learn more about [incremental authorizations](https://stripe.com/docs/terminal/features/incremental-authorizations).
9941
+ # Learn more about [incremental authorizations](https://docs.stripe.com/docs/terminal/features/incremental-authorizations).
9686
9942
  sig {
9687
9943
  params(intent: String, params: T.any(::Stripe::PaymentIntent::IncrementAuthorizationParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentIntent)
9688
9944
  }
@@ -9710,7 +9966,7 @@ module Stripe
9710
9966
  # PaymentIntent again. For example, updating the payment_method
9711
9967
  # always requires you to confirm the PaymentIntent again. If you prefer to
9712
9968
  # update and confirm at the same time, we recommend updating properties through
9713
- # the [confirm API](https://stripe.com/docs/api/payment_intents/confirm) instead.
9969
+ # the [confirm API](https://docs.stripe.com/docs/api/payment_intents/confirm) instead.
9714
9970
  sig {
9715
9971
  params(intent: String, params: T.any(::Stripe::PaymentIntent::UpdateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentIntent)
9716
9972
  }