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
@@ -148,7 +148,7 @@ module Stripe
148
148
  attr_reader :cashapp_handle_redirect_or_display_qr_code
149
149
  # Attribute for field redirect_to_url
150
150
  attr_reader :redirect_to_url
151
- # 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`.
151
+ # 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`.
152
152
  attr_reader :type
153
153
  # When confirming a SetupIntent 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.
154
154
  attr_reader :use_stripe_sdk
@@ -229,6 +229,13 @@ module Stripe
229
229
 
230
230
  class CardPresent < Stripe::StripeObject; end
231
231
 
232
+ class Klarna < Stripe::StripeObject
233
+ # The currency of the setup intent. Three letter ISO currency code.
234
+ attr_reader :currency
235
+ # Preferred locale of the Klarna checkout page that the customer is redirected to.
236
+ attr_reader :preferred_locale
237
+ end
238
+
232
239
  class Link < Stripe::StripeObject
233
240
  # [Deprecated] This is a legacy parameter that no longer has any function.
234
241
  attr_reader :persistent_token
@@ -285,6 +292,8 @@ module Stripe
285
292
  attr_reader :card
286
293
  # Attribute for field card_present
287
294
  attr_reader :card_present
295
+ # Attribute for field klarna
296
+ attr_reader :klarna
288
297
  # Attribute for field link
289
298
  attr_reader :link
290
299
  # Attribute for field paypal
@@ -370,8 +379,7 @@ module Stripe
370
379
 
371
380
  class MandateData < Stripe::RequestParams
372
381
  class CustomerAcceptance < Stripe::RequestParams
373
- class Offline < Stripe::RequestParams
374
- end
382
+ class Offline < Stripe::RequestParams; end
375
383
 
376
384
  class Online < Stripe::RequestParams
377
385
  # The IP address from which the Mandate was accepted by the customer.
@@ -424,20 +432,11 @@ module Stripe
424
432
  end
425
433
  end
426
434
 
427
- class Affirm < Stripe::RequestParams
428
- end
429
-
430
- class AfterpayClearpay < Stripe::RequestParams
431
- end
432
-
433
- class Alipay < Stripe::RequestParams
434
- end
435
-
436
- class Alma < Stripe::RequestParams
437
- end
438
-
439
- class AmazonPay < Stripe::RequestParams
440
- end
435
+ class Affirm < Stripe::RequestParams; end
436
+ class AfterpayClearpay < Stripe::RequestParams; end
437
+ class Alipay < Stripe::RequestParams; end
438
+ class Alma < Stripe::RequestParams; end
439
+ class AmazonPay < Stripe::RequestParams; end
441
440
 
442
441
  class AuBecsDebit < Stripe::RequestParams
443
442
  # The account number for the bank account.
@@ -463,11 +462,8 @@ module Stripe
463
462
  end
464
463
  end
465
464
 
466
- class Bancontact < Stripe::RequestParams
467
- end
468
-
469
- class Billie < Stripe::RequestParams
470
- end
465
+ class Bancontact < Stripe::RequestParams; end
466
+ class Billie < Stripe::RequestParams; end
471
467
 
472
468
  class BillingDetails < Stripe::RequestParams
473
469
  class Address < Stripe::RequestParams
@@ -508,17 +504,19 @@ module Stripe
508
504
  attr_accessor :name
509
505
  # Billing phone number (including extension).
510
506
  attr_accessor :phone
507
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
508
+ attr_accessor :tax_id
511
509
 
512
- def initialize(address: nil, email: nil, name: nil, phone: nil)
510
+ def initialize(address: nil, email: nil, name: nil, phone: nil, tax_id: nil)
513
511
  @address = address
514
512
  @email = email
515
513
  @name = name
516
514
  @phone = phone
515
+ @tax_id = tax_id
517
516
  end
518
517
  end
519
518
 
520
- class Blik < Stripe::RequestParams
521
- end
519
+ class Blik < Stripe::RequestParams; end
522
520
 
523
521
  class Boleto < Stripe::RequestParams
524
522
  # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
@@ -529,11 +527,9 @@ module Stripe
529
527
  end
530
528
  end
531
529
 
532
- class Cashapp < Stripe::RequestParams
533
- end
534
-
535
- class CustomerBalance < Stripe::RequestParams
536
- end
530
+ class Cashapp < Stripe::RequestParams; end
531
+ class Crypto < Stripe::RequestParams; end
532
+ class CustomerBalance < Stripe::RequestParams; end
537
533
 
538
534
  class Eps < Stripe::RequestParams
539
535
  # The customer's bank.
@@ -556,11 +552,8 @@ module Stripe
556
552
  end
557
553
  end
558
554
 
559
- class Giropay < Stripe::RequestParams
560
- end
561
-
562
- class Grabpay < Stripe::RequestParams
563
- end
555
+ class Giropay < Stripe::RequestParams; end
556
+ class Grabpay < Stripe::RequestParams; end
564
557
 
565
558
  class Ideal < Stripe::RequestParams
566
559
  # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
@@ -571,11 +564,8 @@ module Stripe
571
564
  end
572
565
  end
573
566
 
574
- class InteracPresent < Stripe::RequestParams
575
- end
576
-
577
- class KakaoPay < Stripe::RequestParams
578
- end
567
+ class InteracPresent < Stripe::RequestParams; end
568
+ class KakaoPay < Stripe::RequestParams; end
579
569
 
580
570
  class Klarna < Stripe::RequestParams
581
571
  class Dob < Stripe::RequestParams
@@ -600,20 +590,11 @@ module Stripe
600
590
  end
601
591
  end
602
592
 
603
- class Konbini < Stripe::RequestParams
604
- end
605
-
606
- class KrCard < Stripe::RequestParams
607
- end
608
-
609
- class Link < Stripe::RequestParams
610
- end
611
-
612
- class Mobilepay < Stripe::RequestParams
613
- end
614
-
615
- class Multibanco < Stripe::RequestParams
616
- end
593
+ class Konbini < Stripe::RequestParams; end
594
+ class KrCard < Stripe::RequestParams; end
595
+ class Link < Stripe::RequestParams; end
596
+ class Mobilepay < Stripe::RequestParams; end
597
+ class Multibanco < Stripe::RequestParams; end
617
598
 
618
599
  class NaverPay < Stripe::RequestParams
619
600
  # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
@@ -655,8 +636,7 @@ module Stripe
655
636
  end
656
637
  end
657
638
 
658
- class Oxxo < Stripe::RequestParams
659
- end
639
+ class Oxxo < Stripe::RequestParams; end
660
640
 
661
641
  class P24 < Stripe::RequestParams
662
642
  # The customer's bank.
@@ -667,23 +647,12 @@ module Stripe
667
647
  end
668
648
  end
669
649
 
670
- class PayByBank < Stripe::RequestParams
671
- end
672
-
673
- class Payco < Stripe::RequestParams
674
- end
675
-
676
- class Paynow < Stripe::RequestParams
677
- end
678
-
679
- class Paypal < Stripe::RequestParams
680
- end
681
-
682
- class Pix < Stripe::RequestParams
683
- end
684
-
685
- class Promptpay < Stripe::RequestParams
686
- end
650
+ class PayByBank < Stripe::RequestParams; end
651
+ class Payco < Stripe::RequestParams; end
652
+ class Paynow < Stripe::RequestParams; end
653
+ class Paypal < Stripe::RequestParams; end
654
+ class Pix < Stripe::RequestParams; end
655
+ class Promptpay < Stripe::RequestParams; end
687
656
 
688
657
  class RadarOptions < Stripe::RequestParams
689
658
  # 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.
@@ -694,14 +663,9 @@ module Stripe
694
663
  end
695
664
  end
696
665
 
697
- class RevolutPay < Stripe::RequestParams
698
- end
699
-
700
- class SamsungPay < Stripe::RequestParams
701
- end
702
-
703
- class Satispay < Stripe::RequestParams
704
- end
666
+ class RevolutPay < Stripe::RequestParams; end
667
+ class SamsungPay < Stripe::RequestParams; end
668
+ class Satispay < Stripe::RequestParams; end
705
669
 
706
670
  class SepaDebit < Stripe::RequestParams
707
671
  # IBAN of the bank account.
@@ -721,11 +685,8 @@ module Stripe
721
685
  end
722
686
  end
723
687
 
724
- class Swish < Stripe::RequestParams
725
- end
726
-
727
- class Twint < Stripe::RequestParams
728
- end
688
+ class Swish < Stripe::RequestParams; end
689
+ class Twint < Stripe::RequestParams; end
729
690
 
730
691
  class UsBankAccount < Stripe::RequestParams
731
692
  # Account holder type: individual or company.
@@ -754,11 +715,8 @@ module Stripe
754
715
  end
755
716
  end
756
717
 
757
- class WechatPay < Stripe::RequestParams
758
- end
759
-
760
- class Zip < Stripe::RequestParams
761
- end
718
+ class WechatPay < Stripe::RequestParams; end
719
+ class Zip < Stripe::RequestParams; end
762
720
  # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
763
721
  attr_accessor :acss_debit
764
722
  # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
@@ -779,7 +737,7 @@ module Stripe
779
737
  attr_accessor :bacs_debit
780
738
  # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
781
739
  attr_accessor :bancontact
782
- # If this is a `billie` PaymentMethod, this hash contains details about the billie payment method.
740
+ # If this is a `billie` PaymentMethod, this hash contains details about the Billie payment method.
783
741
  attr_accessor :billie
784
742
  # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
785
743
  attr_accessor :billing_details
@@ -789,6 +747,8 @@ module Stripe
789
747
  attr_accessor :boleto
790
748
  # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
791
749
  attr_accessor :cashapp
750
+ # If this is a Crypto PaymentMethod, this hash contains details about the Crypto payment method.
751
+ attr_accessor :crypto
792
752
  # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
793
753
  attr_accessor :customer_balance
794
754
  # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
@@ -841,11 +801,11 @@ module Stripe
841
801
  attr_accessor :promptpay
842
802
  # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
843
803
  attr_accessor :radar_options
844
- # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
804
+ # If this is a `revolut_pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
845
805
  attr_accessor :revolut_pay
846
806
  # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
847
807
  attr_accessor :samsung_pay
848
- # If this is a `satispay` PaymentMethod, this hash contains details about the satispay payment method.
808
+ # If this is a `satispay` PaymentMethod, this hash contains details about the Satispay payment method.
849
809
  attr_accessor :satispay
850
810
  # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
851
811
  attr_accessor :sepa_debit
@@ -880,6 +840,7 @@ module Stripe
880
840
  blik: nil,
881
841
  boleto: nil,
882
842
  cashapp: nil,
843
+ crypto: nil,
883
844
  customer_balance: nil,
884
845
  eps: nil,
885
846
  fpx: nil,
@@ -933,6 +894,7 @@ module Stripe
933
894
  @blik = blik
934
895
  @boleto = boleto
935
896
  @cashapp = cashapp
897
+ @crypto = crypto
936
898
  @customer_balance = customer_balance
937
899
  @eps = eps
938
900
  @fpx = fpx
@@ -1017,8 +979,7 @@ module Stripe
1017
979
  end
1018
980
  end
1019
981
 
1020
- class AmazonPay < Stripe::RequestParams
1021
- end
982
+ class AmazonPay < Stripe::RequestParams; end
1022
983
 
1023
984
  class BacsDebit < Stripe::RequestParams
1024
985
  class MandateOptions < Stripe::RequestParams
@@ -1184,7 +1145,88 @@ module Stripe
1184
1145
  end
1185
1146
  end
1186
1147
 
1187
- class CardPresent < Stripe::RequestParams
1148
+ class CardPresent < Stripe::RequestParams; end
1149
+
1150
+ class Klarna < Stripe::RequestParams
1151
+ class OnDemand < Stripe::RequestParams
1152
+ # Your average amount value. You can use a value across your customer base, or segment based on customer type, country, etc.
1153
+ attr_accessor :average_amount
1154
+ # 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.
1155
+ attr_accessor :maximum_amount
1156
+ # 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.
1157
+ attr_accessor :minimum_amount
1158
+ # Interval at which the customer is making purchases
1159
+ attr_accessor :purchase_interval
1160
+ # The number of `purchase_interval` between charges
1161
+ attr_accessor :purchase_interval_count
1162
+
1163
+ def initialize(
1164
+ average_amount: nil,
1165
+ maximum_amount: nil,
1166
+ minimum_amount: nil,
1167
+ purchase_interval: nil,
1168
+ purchase_interval_count: nil
1169
+ )
1170
+ @average_amount = average_amount
1171
+ @maximum_amount = maximum_amount
1172
+ @minimum_amount = minimum_amount
1173
+ @purchase_interval = purchase_interval
1174
+ @purchase_interval_count = purchase_interval_count
1175
+ end
1176
+ end
1177
+
1178
+ class Subscription < Stripe::RequestParams
1179
+ class NextBilling < Stripe::RequestParams
1180
+ # The amount of the next charge for the subscription.
1181
+ attr_accessor :amount
1182
+ # The date of the next charge for the subscription in YYYY-MM-DD format.
1183
+ attr_accessor :date
1184
+
1185
+ def initialize(amount: nil, date: nil)
1186
+ @amount = amount
1187
+ @date = date
1188
+ end
1189
+ end
1190
+ # Unit of time between subscription charges.
1191
+ attr_accessor :interval
1192
+ # The number of intervals (specified in the `interval` attribute) between subscription charges. For example, `interval=month` and `interval_count=3` charges every 3 months.
1193
+ attr_accessor :interval_count
1194
+ # Name for subscription.
1195
+ attr_accessor :name
1196
+ # Describes the upcoming charge for this subscription.
1197
+ attr_accessor :next_billing
1198
+ # A non-customer-facing reference to correlate subscription charges in the Klarna app. Use a value that persists across subscription charges.
1199
+ attr_accessor :reference
1200
+
1201
+ def initialize(
1202
+ interval: nil,
1203
+ interval_count: nil,
1204
+ name: nil,
1205
+ next_billing: nil,
1206
+ reference: nil
1207
+ )
1208
+ @interval = interval
1209
+ @interval_count = interval_count
1210
+ @name = name
1211
+ @next_billing = next_billing
1212
+ @reference = reference
1213
+ end
1214
+ end
1215
+ # The currency of the SetupIntent. Three letter ISO currency code.
1216
+ attr_accessor :currency
1217
+ # On-demand details if setting up a payment method for on-demand payments.
1218
+ attr_accessor :on_demand
1219
+ # Preferred language of the Klarna authorization page that the customer is redirected to
1220
+ attr_accessor :preferred_locale
1221
+ # Subscription details if setting up or charging a subscription
1222
+ attr_accessor :subscriptions
1223
+
1224
+ def initialize(currency: nil, on_demand: nil, preferred_locale: nil, subscriptions: nil)
1225
+ @currency = currency
1226
+ @on_demand = on_demand
1227
+ @preferred_locale = preferred_locale
1228
+ @subscriptions = subscriptions
1229
+ end
1188
1230
  end
1189
1231
 
1190
1232
  class Link < Stripe::RequestParams
@@ -1297,6 +1339,8 @@ module Stripe
1297
1339
  attr_accessor :card
1298
1340
  # If this is a `card_present` PaymentMethod, this sub-hash contains details about the card-present payment method options.
1299
1341
  attr_accessor :card_present
1342
+ # If this is a `klarna` PaymentMethod, this hash contains details about the Klarna payment method options.
1343
+ attr_accessor :klarna
1300
1344
  # If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
1301
1345
  attr_accessor :link
1302
1346
  # If this is a `paypal` PaymentMethod, this sub-hash contains details about the PayPal payment method options.
@@ -1312,6 +1356,7 @@ module Stripe
1312
1356
  bacs_debit: nil,
1313
1357
  card: nil,
1314
1358
  card_present: nil,
1359
+ klarna: nil,
1315
1360
  link: nil,
1316
1361
  paypal: nil,
1317
1362
  sepa_debit: nil,
@@ -1322,6 +1367,7 @@ module Stripe
1322
1367
  @bacs_debit = bacs_debit
1323
1368
  @card = card
1324
1369
  @card_present = card_present
1370
+ @klarna = klarna
1325
1371
  @link = link
1326
1372
  @paypal = paypal
1327
1373
  @sepa_debit = sepa_debit
@@ -1379,7 +1425,7 @@ module Stripe
1379
1425
  attr_accessor :payment_method_data
1380
1426
  # Payment method-specific configuration for this SetupIntent.
1381
1427
  attr_accessor :payment_method_options
1382
- # The list of payment method types (for example, card) that this SetupIntent 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).
1428
+ # The list of payment method types (for example, card) that this SetupIntent 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).
1383
1429
  attr_accessor :payment_method_types
1384
1430
  # The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method's app or site. To redirect to a mobile application, you can alternatively supply an application URI scheme. This parameter can only be used with [`confirm=true`](https://stripe.com/docs/api/setup_intents/create#create_setup_intent-confirm).
1385
1431
  attr_accessor :return_url
@@ -1454,20 +1500,11 @@ module Stripe
1454
1500
  end
1455
1501
  end
1456
1502
 
1457
- class Affirm < Stripe::RequestParams
1458
- end
1459
-
1460
- class AfterpayClearpay < Stripe::RequestParams
1461
- end
1462
-
1463
- class Alipay < Stripe::RequestParams
1464
- end
1465
-
1466
- class Alma < Stripe::RequestParams
1467
- end
1468
-
1469
- class AmazonPay < Stripe::RequestParams
1470
- end
1503
+ class Affirm < Stripe::RequestParams; end
1504
+ class AfterpayClearpay < Stripe::RequestParams; end
1505
+ class Alipay < Stripe::RequestParams; end
1506
+ class Alma < Stripe::RequestParams; end
1507
+ class AmazonPay < Stripe::RequestParams; end
1471
1508
 
1472
1509
  class AuBecsDebit < Stripe::RequestParams
1473
1510
  # The account number for the bank account.
@@ -1493,11 +1530,8 @@ module Stripe
1493
1530
  end
1494
1531
  end
1495
1532
 
1496
- class Bancontact < Stripe::RequestParams
1497
- end
1498
-
1499
- class Billie < Stripe::RequestParams
1500
- end
1533
+ class Bancontact < Stripe::RequestParams; end
1534
+ class Billie < Stripe::RequestParams; end
1501
1535
 
1502
1536
  class BillingDetails < Stripe::RequestParams
1503
1537
  class Address < Stripe::RequestParams
@@ -1538,17 +1572,19 @@ module Stripe
1538
1572
  attr_accessor :name
1539
1573
  # Billing phone number (including extension).
1540
1574
  attr_accessor :phone
1575
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
1576
+ attr_accessor :tax_id
1541
1577
 
1542
- def initialize(address: nil, email: nil, name: nil, phone: nil)
1578
+ def initialize(address: nil, email: nil, name: nil, phone: nil, tax_id: nil)
1543
1579
  @address = address
1544
1580
  @email = email
1545
1581
  @name = name
1546
1582
  @phone = phone
1583
+ @tax_id = tax_id
1547
1584
  end
1548
1585
  end
1549
1586
 
1550
- class Blik < Stripe::RequestParams
1551
- end
1587
+ class Blik < Stripe::RequestParams; end
1552
1588
 
1553
1589
  class Boleto < Stripe::RequestParams
1554
1590
  # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
@@ -1559,11 +1595,9 @@ module Stripe
1559
1595
  end
1560
1596
  end
1561
1597
 
1562
- class Cashapp < Stripe::RequestParams
1563
- end
1564
-
1565
- class CustomerBalance < Stripe::RequestParams
1566
- end
1598
+ class Cashapp < Stripe::RequestParams; end
1599
+ class Crypto < Stripe::RequestParams; end
1600
+ class CustomerBalance < Stripe::RequestParams; end
1567
1601
 
1568
1602
  class Eps < Stripe::RequestParams
1569
1603
  # The customer's bank.
@@ -1586,11 +1620,8 @@ module Stripe
1586
1620
  end
1587
1621
  end
1588
1622
 
1589
- class Giropay < Stripe::RequestParams
1590
- end
1591
-
1592
- class Grabpay < Stripe::RequestParams
1593
- end
1623
+ class Giropay < Stripe::RequestParams; end
1624
+ class Grabpay < Stripe::RequestParams; end
1594
1625
 
1595
1626
  class Ideal < Stripe::RequestParams
1596
1627
  # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
@@ -1601,11 +1632,8 @@ module Stripe
1601
1632
  end
1602
1633
  end
1603
1634
 
1604
- class InteracPresent < Stripe::RequestParams
1605
- end
1606
-
1607
- class KakaoPay < Stripe::RequestParams
1608
- end
1635
+ class InteracPresent < Stripe::RequestParams; end
1636
+ class KakaoPay < Stripe::RequestParams; end
1609
1637
 
1610
1638
  class Klarna < Stripe::RequestParams
1611
1639
  class Dob < Stripe::RequestParams
@@ -1630,20 +1658,11 @@ module Stripe
1630
1658
  end
1631
1659
  end
1632
1660
 
1633
- class Konbini < Stripe::RequestParams
1634
- end
1635
-
1636
- class KrCard < Stripe::RequestParams
1637
- end
1638
-
1639
- class Link < Stripe::RequestParams
1640
- end
1641
-
1642
- class Mobilepay < Stripe::RequestParams
1643
- end
1644
-
1645
- class Multibanco < Stripe::RequestParams
1646
- end
1661
+ class Konbini < Stripe::RequestParams; end
1662
+ class KrCard < Stripe::RequestParams; end
1663
+ class Link < Stripe::RequestParams; end
1664
+ class Mobilepay < Stripe::RequestParams; end
1665
+ class Multibanco < Stripe::RequestParams; end
1647
1666
 
1648
1667
  class NaverPay < Stripe::RequestParams
1649
1668
  # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
@@ -1685,8 +1704,7 @@ module Stripe
1685
1704
  end
1686
1705
  end
1687
1706
 
1688
- class Oxxo < Stripe::RequestParams
1689
- end
1707
+ class Oxxo < Stripe::RequestParams; end
1690
1708
 
1691
1709
  class P24 < Stripe::RequestParams
1692
1710
  # The customer's bank.
@@ -1697,23 +1715,12 @@ module Stripe
1697
1715
  end
1698
1716
  end
1699
1717
 
1700
- class PayByBank < Stripe::RequestParams
1701
- end
1702
-
1703
- class Payco < Stripe::RequestParams
1704
- end
1705
-
1706
- class Paynow < Stripe::RequestParams
1707
- end
1708
-
1709
- class Paypal < Stripe::RequestParams
1710
- end
1711
-
1712
- class Pix < Stripe::RequestParams
1713
- end
1714
-
1715
- class Promptpay < Stripe::RequestParams
1716
- end
1718
+ class PayByBank < Stripe::RequestParams; end
1719
+ class Payco < Stripe::RequestParams; end
1720
+ class Paynow < Stripe::RequestParams; end
1721
+ class Paypal < Stripe::RequestParams; end
1722
+ class Pix < Stripe::RequestParams; end
1723
+ class Promptpay < Stripe::RequestParams; end
1717
1724
 
1718
1725
  class RadarOptions < Stripe::RequestParams
1719
1726
  # 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.
@@ -1724,14 +1731,9 @@ module Stripe
1724
1731
  end
1725
1732
  end
1726
1733
 
1727
- class RevolutPay < Stripe::RequestParams
1728
- end
1729
-
1730
- class SamsungPay < Stripe::RequestParams
1731
- end
1732
-
1733
- class Satispay < Stripe::RequestParams
1734
- end
1734
+ class RevolutPay < Stripe::RequestParams; end
1735
+ class SamsungPay < Stripe::RequestParams; end
1736
+ class Satispay < Stripe::RequestParams; end
1735
1737
 
1736
1738
  class SepaDebit < Stripe::RequestParams
1737
1739
  # IBAN of the bank account.
@@ -1751,11 +1753,8 @@ module Stripe
1751
1753
  end
1752
1754
  end
1753
1755
 
1754
- class Swish < Stripe::RequestParams
1755
- end
1756
-
1757
- class Twint < Stripe::RequestParams
1758
- end
1756
+ class Swish < Stripe::RequestParams; end
1757
+ class Twint < Stripe::RequestParams; end
1759
1758
 
1760
1759
  class UsBankAccount < Stripe::RequestParams
1761
1760
  # Account holder type: individual or company.
@@ -1784,11 +1783,8 @@ module Stripe
1784
1783
  end
1785
1784
  end
1786
1785
 
1787
- class WechatPay < Stripe::RequestParams
1788
- end
1789
-
1790
- class Zip < Stripe::RequestParams
1791
- end
1786
+ class WechatPay < Stripe::RequestParams; end
1787
+ class Zip < Stripe::RequestParams; end
1792
1788
  # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
1793
1789
  attr_accessor :acss_debit
1794
1790
  # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
@@ -1809,7 +1805,7 @@ module Stripe
1809
1805
  attr_accessor :bacs_debit
1810
1806
  # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
1811
1807
  attr_accessor :bancontact
1812
- # If this is a `billie` PaymentMethod, this hash contains details about the billie payment method.
1808
+ # If this is a `billie` PaymentMethod, this hash contains details about the Billie payment method.
1813
1809
  attr_accessor :billie
1814
1810
  # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
1815
1811
  attr_accessor :billing_details
@@ -1819,6 +1815,8 @@ module Stripe
1819
1815
  attr_accessor :boleto
1820
1816
  # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
1821
1817
  attr_accessor :cashapp
1818
+ # If this is a Crypto PaymentMethod, this hash contains details about the Crypto payment method.
1819
+ attr_accessor :crypto
1822
1820
  # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
1823
1821
  attr_accessor :customer_balance
1824
1822
  # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
@@ -1871,11 +1869,11 @@ module Stripe
1871
1869
  attr_accessor :promptpay
1872
1870
  # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
1873
1871
  attr_accessor :radar_options
1874
- # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
1872
+ # If this is a `revolut_pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
1875
1873
  attr_accessor :revolut_pay
1876
1874
  # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
1877
1875
  attr_accessor :samsung_pay
1878
- # If this is a `satispay` PaymentMethod, this hash contains details about the satispay payment method.
1876
+ # If this is a `satispay` PaymentMethod, this hash contains details about the Satispay payment method.
1879
1877
  attr_accessor :satispay
1880
1878
  # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
1881
1879
  attr_accessor :sepa_debit
@@ -1910,6 +1908,7 @@ module Stripe
1910
1908
  blik: nil,
1911
1909
  boleto: nil,
1912
1910
  cashapp: nil,
1911
+ crypto: nil,
1913
1912
  customer_balance: nil,
1914
1913
  eps: nil,
1915
1914
  fpx: nil,
@@ -1963,6 +1962,7 @@ module Stripe
1963
1962
  @blik = blik
1964
1963
  @boleto = boleto
1965
1964
  @cashapp = cashapp
1965
+ @crypto = crypto
1966
1966
  @customer_balance = customer_balance
1967
1967
  @eps = eps
1968
1968
  @fpx = fpx
@@ -2047,8 +2047,7 @@ module Stripe
2047
2047
  end
2048
2048
  end
2049
2049
 
2050
- class AmazonPay < Stripe::RequestParams
2051
- end
2050
+ class AmazonPay < Stripe::RequestParams; end
2052
2051
 
2053
2052
  class BacsDebit < Stripe::RequestParams
2054
2053
  class MandateOptions < Stripe::RequestParams
@@ -2214,7 +2213,88 @@ module Stripe
2214
2213
  end
2215
2214
  end
2216
2215
 
2217
- class CardPresent < Stripe::RequestParams
2216
+ class CardPresent < Stripe::RequestParams; end
2217
+
2218
+ class Klarna < Stripe::RequestParams
2219
+ class OnDemand < Stripe::RequestParams
2220
+ # Your average amount value. You can use a value across your customer base, or segment based on customer type, country, etc.
2221
+ attr_accessor :average_amount
2222
+ # 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.
2223
+ attr_accessor :maximum_amount
2224
+ # 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.
2225
+ attr_accessor :minimum_amount
2226
+ # Interval at which the customer is making purchases
2227
+ attr_accessor :purchase_interval
2228
+ # The number of `purchase_interval` between charges
2229
+ attr_accessor :purchase_interval_count
2230
+
2231
+ def initialize(
2232
+ average_amount: nil,
2233
+ maximum_amount: nil,
2234
+ minimum_amount: nil,
2235
+ purchase_interval: nil,
2236
+ purchase_interval_count: nil
2237
+ )
2238
+ @average_amount = average_amount
2239
+ @maximum_amount = maximum_amount
2240
+ @minimum_amount = minimum_amount
2241
+ @purchase_interval = purchase_interval
2242
+ @purchase_interval_count = purchase_interval_count
2243
+ end
2244
+ end
2245
+
2246
+ class Subscription < Stripe::RequestParams
2247
+ class NextBilling < Stripe::RequestParams
2248
+ # The amount of the next charge for the subscription.
2249
+ attr_accessor :amount
2250
+ # The date of the next charge for the subscription in YYYY-MM-DD format.
2251
+ attr_accessor :date
2252
+
2253
+ def initialize(amount: nil, date: nil)
2254
+ @amount = amount
2255
+ @date = date
2256
+ end
2257
+ end
2258
+ # Unit of time between subscription charges.
2259
+ attr_accessor :interval
2260
+ # The number of intervals (specified in the `interval` attribute) between subscription charges. For example, `interval=month` and `interval_count=3` charges every 3 months.
2261
+ attr_accessor :interval_count
2262
+ # Name for subscription.
2263
+ attr_accessor :name
2264
+ # Describes the upcoming charge for this subscription.
2265
+ attr_accessor :next_billing
2266
+ # A non-customer-facing reference to correlate subscription charges in the Klarna app. Use a value that persists across subscription charges.
2267
+ attr_accessor :reference
2268
+
2269
+ def initialize(
2270
+ interval: nil,
2271
+ interval_count: nil,
2272
+ name: nil,
2273
+ next_billing: nil,
2274
+ reference: nil
2275
+ )
2276
+ @interval = interval
2277
+ @interval_count = interval_count
2278
+ @name = name
2279
+ @next_billing = next_billing
2280
+ @reference = reference
2281
+ end
2282
+ end
2283
+ # The currency of the SetupIntent. Three letter ISO currency code.
2284
+ attr_accessor :currency
2285
+ # On-demand details if setting up a payment method for on-demand payments.
2286
+ attr_accessor :on_demand
2287
+ # Preferred language of the Klarna authorization page that the customer is redirected to
2288
+ attr_accessor :preferred_locale
2289
+ # Subscription details if setting up or charging a subscription
2290
+ attr_accessor :subscriptions
2291
+
2292
+ def initialize(currency: nil, on_demand: nil, preferred_locale: nil, subscriptions: nil)
2293
+ @currency = currency
2294
+ @on_demand = on_demand
2295
+ @preferred_locale = preferred_locale
2296
+ @subscriptions = subscriptions
2297
+ end
2218
2298
  end
2219
2299
 
2220
2300
  class Link < Stripe::RequestParams
@@ -2327,6 +2407,8 @@ module Stripe
2327
2407
  attr_accessor :card
2328
2408
  # If this is a `card_present` PaymentMethod, this sub-hash contains details about the card-present payment method options.
2329
2409
  attr_accessor :card_present
2410
+ # If this is a `klarna` PaymentMethod, this hash contains details about the Klarna payment method options.
2411
+ attr_accessor :klarna
2330
2412
  # If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
2331
2413
  attr_accessor :link
2332
2414
  # If this is a `paypal` PaymentMethod, this sub-hash contains details about the PayPal payment method options.
@@ -2342,6 +2424,7 @@ module Stripe
2342
2424
  bacs_debit: nil,
2343
2425
  card: nil,
2344
2426
  card_present: nil,
2427
+ klarna: nil,
2345
2428
  link: nil,
2346
2429
  paypal: nil,
2347
2430
  sepa_debit: nil,
@@ -2352,6 +2435,7 @@ module Stripe
2352
2435
  @bacs_debit = bacs_debit
2353
2436
  @card = card
2354
2437
  @card_present = card_present
2438
+ @klarna = klarna
2355
2439
  @link = link
2356
2440
  @paypal = paypal
2357
2441
  @sepa_debit = sepa_debit
@@ -2385,7 +2469,7 @@ module Stripe
2385
2469
  attr_accessor :payment_method_data
2386
2470
  # Payment method-specific configuration for this SetupIntent.
2387
2471
  attr_accessor :payment_method_options
2388
- # The list of payment method types (for example, card) that this SetupIntent can set up. 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).
2472
+ # The list of payment method types (for example, card) that this SetupIntent can set up. 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).
2389
2473
  attr_accessor :payment_method_types
2390
2474
 
2391
2475
  def initialize(
@@ -2430,8 +2514,7 @@ module Stripe
2430
2514
  class ConfirmParams < Stripe::RequestParams
2431
2515
  class MandateData < Stripe::RequestParams
2432
2516
  class CustomerAcceptance < Stripe::RequestParams
2433
- class Offline < Stripe::RequestParams
2434
- end
2517
+ class Offline < Stripe::RequestParams; end
2435
2518
 
2436
2519
  class Online < Stripe::RequestParams
2437
2520
  # The IP address from which the Mandate was accepted by the customer.
@@ -2484,20 +2567,11 @@ module Stripe
2484
2567
  end
2485
2568
  end
2486
2569
 
2487
- class Affirm < Stripe::RequestParams
2488
- end
2489
-
2490
- class AfterpayClearpay < Stripe::RequestParams
2491
- end
2492
-
2493
- class Alipay < Stripe::RequestParams
2494
- end
2495
-
2496
- class Alma < Stripe::RequestParams
2497
- end
2498
-
2499
- class AmazonPay < Stripe::RequestParams
2500
- end
2570
+ class Affirm < Stripe::RequestParams; end
2571
+ class AfterpayClearpay < Stripe::RequestParams; end
2572
+ class Alipay < Stripe::RequestParams; end
2573
+ class Alma < Stripe::RequestParams; end
2574
+ class AmazonPay < Stripe::RequestParams; end
2501
2575
 
2502
2576
  class AuBecsDebit < Stripe::RequestParams
2503
2577
  # The account number for the bank account.
@@ -2523,11 +2597,8 @@ module Stripe
2523
2597
  end
2524
2598
  end
2525
2599
 
2526
- class Bancontact < Stripe::RequestParams
2527
- end
2528
-
2529
- class Billie < Stripe::RequestParams
2530
- end
2600
+ class Bancontact < Stripe::RequestParams; end
2601
+ class Billie < Stripe::RequestParams; end
2531
2602
 
2532
2603
  class BillingDetails < Stripe::RequestParams
2533
2604
  class Address < Stripe::RequestParams
@@ -2568,17 +2639,19 @@ module Stripe
2568
2639
  attr_accessor :name
2569
2640
  # Billing phone number (including extension).
2570
2641
  attr_accessor :phone
2642
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
2643
+ attr_accessor :tax_id
2571
2644
 
2572
- def initialize(address: nil, email: nil, name: nil, phone: nil)
2645
+ def initialize(address: nil, email: nil, name: nil, phone: nil, tax_id: nil)
2573
2646
  @address = address
2574
2647
  @email = email
2575
2648
  @name = name
2576
2649
  @phone = phone
2650
+ @tax_id = tax_id
2577
2651
  end
2578
2652
  end
2579
2653
 
2580
- class Blik < Stripe::RequestParams
2581
- end
2654
+ class Blik < Stripe::RequestParams; end
2582
2655
 
2583
2656
  class Boleto < Stripe::RequestParams
2584
2657
  # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
@@ -2589,11 +2662,9 @@ module Stripe
2589
2662
  end
2590
2663
  end
2591
2664
 
2592
- class Cashapp < Stripe::RequestParams
2593
- end
2594
-
2595
- class CustomerBalance < Stripe::RequestParams
2596
- end
2665
+ class Cashapp < Stripe::RequestParams; end
2666
+ class Crypto < Stripe::RequestParams; end
2667
+ class CustomerBalance < Stripe::RequestParams; end
2597
2668
 
2598
2669
  class Eps < Stripe::RequestParams
2599
2670
  # The customer's bank.
@@ -2616,11 +2687,8 @@ module Stripe
2616
2687
  end
2617
2688
  end
2618
2689
 
2619
- class Giropay < Stripe::RequestParams
2620
- end
2621
-
2622
- class Grabpay < Stripe::RequestParams
2623
- end
2690
+ class Giropay < Stripe::RequestParams; end
2691
+ class Grabpay < Stripe::RequestParams; end
2624
2692
 
2625
2693
  class Ideal < Stripe::RequestParams
2626
2694
  # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
@@ -2631,11 +2699,8 @@ module Stripe
2631
2699
  end
2632
2700
  end
2633
2701
 
2634
- class InteracPresent < Stripe::RequestParams
2635
- end
2636
-
2637
- class KakaoPay < Stripe::RequestParams
2638
- end
2702
+ class InteracPresent < Stripe::RequestParams; end
2703
+ class KakaoPay < Stripe::RequestParams; end
2639
2704
 
2640
2705
  class Klarna < Stripe::RequestParams
2641
2706
  class Dob < Stripe::RequestParams
@@ -2660,20 +2725,11 @@ module Stripe
2660
2725
  end
2661
2726
  end
2662
2727
 
2663
- class Konbini < Stripe::RequestParams
2664
- end
2665
-
2666
- class KrCard < Stripe::RequestParams
2667
- end
2668
-
2669
- class Link < Stripe::RequestParams
2670
- end
2671
-
2672
- class Mobilepay < Stripe::RequestParams
2673
- end
2674
-
2675
- class Multibanco < Stripe::RequestParams
2676
- end
2728
+ class Konbini < Stripe::RequestParams; end
2729
+ class KrCard < Stripe::RequestParams; end
2730
+ class Link < Stripe::RequestParams; end
2731
+ class Mobilepay < Stripe::RequestParams; end
2732
+ class Multibanco < Stripe::RequestParams; end
2677
2733
 
2678
2734
  class NaverPay < Stripe::RequestParams
2679
2735
  # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
@@ -2715,8 +2771,7 @@ module Stripe
2715
2771
  end
2716
2772
  end
2717
2773
 
2718
- class Oxxo < Stripe::RequestParams
2719
- end
2774
+ class Oxxo < Stripe::RequestParams; end
2720
2775
 
2721
2776
  class P24 < Stripe::RequestParams
2722
2777
  # The customer's bank.
@@ -2727,23 +2782,12 @@ module Stripe
2727
2782
  end
2728
2783
  end
2729
2784
 
2730
- class PayByBank < Stripe::RequestParams
2731
- end
2732
-
2733
- class Payco < Stripe::RequestParams
2734
- end
2735
-
2736
- class Paynow < Stripe::RequestParams
2737
- end
2738
-
2739
- class Paypal < Stripe::RequestParams
2740
- end
2741
-
2742
- class Pix < Stripe::RequestParams
2743
- end
2744
-
2745
- class Promptpay < Stripe::RequestParams
2746
- end
2785
+ class PayByBank < Stripe::RequestParams; end
2786
+ class Payco < Stripe::RequestParams; end
2787
+ class Paynow < Stripe::RequestParams; end
2788
+ class Paypal < Stripe::RequestParams; end
2789
+ class Pix < Stripe::RequestParams; end
2790
+ class Promptpay < Stripe::RequestParams; end
2747
2791
 
2748
2792
  class RadarOptions < Stripe::RequestParams
2749
2793
  # 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.
@@ -2754,14 +2798,9 @@ module Stripe
2754
2798
  end
2755
2799
  end
2756
2800
 
2757
- class RevolutPay < Stripe::RequestParams
2758
- end
2759
-
2760
- class SamsungPay < Stripe::RequestParams
2761
- end
2762
-
2763
- class Satispay < Stripe::RequestParams
2764
- end
2801
+ class RevolutPay < Stripe::RequestParams; end
2802
+ class SamsungPay < Stripe::RequestParams; end
2803
+ class Satispay < Stripe::RequestParams; end
2765
2804
 
2766
2805
  class SepaDebit < Stripe::RequestParams
2767
2806
  # IBAN of the bank account.
@@ -2781,11 +2820,8 @@ module Stripe
2781
2820
  end
2782
2821
  end
2783
2822
 
2784
- class Swish < Stripe::RequestParams
2785
- end
2786
-
2787
- class Twint < Stripe::RequestParams
2788
- end
2823
+ class Swish < Stripe::RequestParams; end
2824
+ class Twint < Stripe::RequestParams; end
2789
2825
 
2790
2826
  class UsBankAccount < Stripe::RequestParams
2791
2827
  # Account holder type: individual or company.
@@ -2814,11 +2850,8 @@ module Stripe
2814
2850
  end
2815
2851
  end
2816
2852
 
2817
- class WechatPay < Stripe::RequestParams
2818
- end
2819
-
2820
- class Zip < Stripe::RequestParams
2821
- end
2853
+ class WechatPay < Stripe::RequestParams; end
2854
+ class Zip < Stripe::RequestParams; end
2822
2855
  # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
2823
2856
  attr_accessor :acss_debit
2824
2857
  # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
@@ -2839,7 +2872,7 @@ module Stripe
2839
2872
  attr_accessor :bacs_debit
2840
2873
  # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
2841
2874
  attr_accessor :bancontact
2842
- # If this is a `billie` PaymentMethod, this hash contains details about the billie payment method.
2875
+ # If this is a `billie` PaymentMethod, this hash contains details about the Billie payment method.
2843
2876
  attr_accessor :billie
2844
2877
  # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
2845
2878
  attr_accessor :billing_details
@@ -2849,6 +2882,8 @@ module Stripe
2849
2882
  attr_accessor :boleto
2850
2883
  # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
2851
2884
  attr_accessor :cashapp
2885
+ # If this is a Crypto PaymentMethod, this hash contains details about the Crypto payment method.
2886
+ attr_accessor :crypto
2852
2887
  # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
2853
2888
  attr_accessor :customer_balance
2854
2889
  # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
@@ -2901,11 +2936,11 @@ module Stripe
2901
2936
  attr_accessor :promptpay
2902
2937
  # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
2903
2938
  attr_accessor :radar_options
2904
- # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
2939
+ # If this is a `revolut_pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
2905
2940
  attr_accessor :revolut_pay
2906
2941
  # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
2907
2942
  attr_accessor :samsung_pay
2908
- # If this is a `satispay` PaymentMethod, this hash contains details about the satispay payment method.
2943
+ # If this is a `satispay` PaymentMethod, this hash contains details about the Satispay payment method.
2909
2944
  attr_accessor :satispay
2910
2945
  # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
2911
2946
  attr_accessor :sepa_debit
@@ -2940,6 +2975,7 @@ module Stripe
2940
2975
  blik: nil,
2941
2976
  boleto: nil,
2942
2977
  cashapp: nil,
2978
+ crypto: nil,
2943
2979
  customer_balance: nil,
2944
2980
  eps: nil,
2945
2981
  fpx: nil,
@@ -2993,6 +3029,7 @@ module Stripe
2993
3029
  @blik = blik
2994
3030
  @boleto = boleto
2995
3031
  @cashapp = cashapp
3032
+ @crypto = crypto
2996
3033
  @customer_balance = customer_balance
2997
3034
  @eps = eps
2998
3035
  @fpx = fpx
@@ -3077,8 +3114,7 @@ module Stripe
3077
3114
  end
3078
3115
  end
3079
3116
 
3080
- class AmazonPay < Stripe::RequestParams
3081
- end
3117
+ class AmazonPay < Stripe::RequestParams; end
3082
3118
 
3083
3119
  class BacsDebit < Stripe::RequestParams
3084
3120
  class MandateOptions < Stripe::RequestParams
@@ -3244,7 +3280,88 @@ module Stripe
3244
3280
  end
3245
3281
  end
3246
3282
 
3247
- class CardPresent < Stripe::RequestParams
3283
+ class CardPresent < Stripe::RequestParams; end
3284
+
3285
+ class Klarna < Stripe::RequestParams
3286
+ class OnDemand < Stripe::RequestParams
3287
+ # Your average amount value. You can use a value across your customer base, or segment based on customer type, country, etc.
3288
+ attr_accessor :average_amount
3289
+ # 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.
3290
+ attr_accessor :maximum_amount
3291
+ # 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.
3292
+ attr_accessor :minimum_amount
3293
+ # Interval at which the customer is making purchases
3294
+ attr_accessor :purchase_interval
3295
+ # The number of `purchase_interval` between charges
3296
+ attr_accessor :purchase_interval_count
3297
+
3298
+ def initialize(
3299
+ average_amount: nil,
3300
+ maximum_amount: nil,
3301
+ minimum_amount: nil,
3302
+ purchase_interval: nil,
3303
+ purchase_interval_count: nil
3304
+ )
3305
+ @average_amount = average_amount
3306
+ @maximum_amount = maximum_amount
3307
+ @minimum_amount = minimum_amount
3308
+ @purchase_interval = purchase_interval
3309
+ @purchase_interval_count = purchase_interval_count
3310
+ end
3311
+ end
3312
+
3313
+ class Subscription < Stripe::RequestParams
3314
+ class NextBilling < Stripe::RequestParams
3315
+ # The amount of the next charge for the subscription.
3316
+ attr_accessor :amount
3317
+ # The date of the next charge for the subscription in YYYY-MM-DD format.
3318
+ attr_accessor :date
3319
+
3320
+ def initialize(amount: nil, date: nil)
3321
+ @amount = amount
3322
+ @date = date
3323
+ end
3324
+ end
3325
+ # Unit of time between subscription charges.
3326
+ attr_accessor :interval
3327
+ # The number of intervals (specified in the `interval` attribute) between subscription charges. For example, `interval=month` and `interval_count=3` charges every 3 months.
3328
+ attr_accessor :interval_count
3329
+ # Name for subscription.
3330
+ attr_accessor :name
3331
+ # Describes the upcoming charge for this subscription.
3332
+ attr_accessor :next_billing
3333
+ # A non-customer-facing reference to correlate subscription charges in the Klarna app. Use a value that persists across subscription charges.
3334
+ attr_accessor :reference
3335
+
3336
+ def initialize(
3337
+ interval: nil,
3338
+ interval_count: nil,
3339
+ name: nil,
3340
+ next_billing: nil,
3341
+ reference: nil
3342
+ )
3343
+ @interval = interval
3344
+ @interval_count = interval_count
3345
+ @name = name
3346
+ @next_billing = next_billing
3347
+ @reference = reference
3348
+ end
3349
+ end
3350
+ # The currency of the SetupIntent. Three letter ISO currency code.
3351
+ attr_accessor :currency
3352
+ # On-demand details if setting up a payment method for on-demand payments.
3353
+ attr_accessor :on_demand
3354
+ # Preferred language of the Klarna authorization page that the customer is redirected to
3355
+ attr_accessor :preferred_locale
3356
+ # Subscription details if setting up or charging a subscription
3357
+ attr_accessor :subscriptions
3358
+
3359
+ def initialize(currency: nil, on_demand: nil, preferred_locale: nil, subscriptions: nil)
3360
+ @currency = currency
3361
+ @on_demand = on_demand
3362
+ @preferred_locale = preferred_locale
3363
+ @subscriptions = subscriptions
3364
+ end
3248
3365
  end
3249
3366
 
3250
3367
  class Link < Stripe::RequestParams
@@ -3357,6 +3474,8 @@ module Stripe
3357
3474
  attr_accessor :card
3358
3475
  # If this is a `card_present` PaymentMethod, this sub-hash contains details about the card-present payment method options.
3359
3476
  attr_accessor :card_present
3477
+ # If this is a `klarna` PaymentMethod, this hash contains details about the Klarna payment method options.
3478
+ attr_accessor :klarna
3360
3479
  # If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
3361
3480
  attr_accessor :link
3362
3481
  # If this is a `paypal` PaymentMethod, this sub-hash contains details about the PayPal payment method options.
@@ -3372,6 +3491,7 @@ module Stripe
3372
3491
  bacs_debit: nil,
3373
3492
  card: nil,
3374
3493
  card_present: nil,
3494
+ klarna: nil,
3375
3495
  link: nil,
3376
3496
  paypal: nil,
3377
3497
  sepa_debit: nil,
@@ -3382,6 +3502,7 @@ module Stripe
3382
3502
  @bacs_debit = bacs_debit
3383
3503
  @card = card
3384
3504
  @card_present = card_present
3505
+ @klarna = klarna
3385
3506
  @link = link
3386
3507
  @paypal = paypal
3387
3508
  @sepa_debit = sepa_debit
@@ -3495,7 +3616,7 @@ module Stripe
3495
3616
  attr_reader :payment_method_configuration_details
3496
3617
  # Payment method-specific configuration for this SetupIntent.
3497
3618
  attr_reader :payment_method_options
3498
- # The list of payment method types (e.g. card) that this SetupIntent is allowed to set up.
3619
+ # The list of payment method types (e.g. card) that this SetupIntent is allowed to set up. A list of valid payment method types can be found [here](https://docs.stripe.com/api/payment_methods/object#payment_method_object-type).
3499
3620
  attr_reader :payment_method_types
3500
3621
  # ID of the single_use Mandate generated by the SetupIntent.
3501
3622
  attr_reader :single_use_mandate
@@ -3508,7 +3629,7 @@ module Stripe
3508
3629
 
3509
3630
  # You can cancel a SetupIntent object when it's in one of these statuses: requires_payment_method, requires_confirmation, or requires_action.
3510
3631
  #
3511
- # After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can't cancel the SetupIntent for a Checkout Session. [Expire the Checkout Session](https://stripe.com/docs/api/checkout/sessions/expire) instead.
3632
+ # After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can't cancel the SetupIntent for a Checkout Session. [Expire the Checkout Session](https://docs.stripe.com/docs/api/checkout/sessions/expire) instead.
3512
3633
  def cancel(params = {}, opts = {})
3513
3634
  request_stripe_object(
3514
3635
  method: :post,
@@ -3520,7 +3641,7 @@ module Stripe
3520
3641
 
3521
3642
  # You can cancel a SetupIntent object when it's in one of these statuses: requires_payment_method, requires_confirmation, or requires_action.
3522
3643
  #
3523
- # After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can't cancel the SetupIntent for a Checkout Session. [Expire the Checkout Session](https://stripe.com/docs/api/checkout/sessions/expire) instead.
3644
+ # After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can't cancel the SetupIntent for a Checkout Session. [Expire the Checkout Session](https://docs.stripe.com/docs/api/checkout/sessions/expire) instead.
3524
3645
  def self.cancel(intent, params = {}, opts = {})
3525
3646
  request_stripe_object(
3526
3647
  method: :post,
@@ -3578,7 +3699,7 @@ module Stripe
3578
3699
 
3579
3700
  # Creates a SetupIntent object.
3580
3701
  #
3581
- # After you create the SetupIntent, attach a payment method and [confirm](https://stripe.com/docs/api/setup_intents/confirm)
3702
+ # After you create the SetupIntent, attach a payment method and [confirm](https://docs.stripe.com/docs/api/setup_intents/confirm)
3582
3703
  # it to collect any required permissions to charge the payment method later.
3583
3704
  def self.create(params = {}, opts = {})
3584
3705
  request_stripe_object(method: :post, path: "/v1/setup_intents", params: params, opts: opts)