stripe 13.6.0.pre.beta.1 → 14.0.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 (556) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +699 -1457
  3. data/OPENAPI_VERSION +1 -1
  4. data/README.md +29 -0
  5. data/VERSION +1 -1
  6. data/lib/stripe/api_requestor.rb +2 -0
  7. data/lib/stripe/api_version.rb +1 -1
  8. data/lib/stripe/errors.rb +0 -7
  9. data/lib/stripe/object_types.rb +0 -26
  10. data/lib/stripe/resources/account.rb +83 -614
  11. data/lib/stripe/resources/account_session.rb +1 -247
  12. data/lib/stripe/resources/apple_pay_domain.rb +0 -9
  13. data/lib/stripe/resources/application_fee.rb +1 -10
  14. data/lib/stripe/resources/balance.rb +0 -9
  15. data/lib/stripe/resources/balance_transaction.rb +2 -11
  16. data/lib/stripe/resources/bank_account.rb +1 -1
  17. data/lib/stripe/resources/billing/alert.rb +0 -9
  18. data/lib/stripe/resources/billing/credit_balance_summary.rb +0 -48
  19. data/lib/stripe/resources/billing/credit_balance_transaction.rb +0 -9
  20. data/lib/stripe/resources/billing/credit_grant.rb +4 -13
  21. data/lib/stripe/resources/billing/meter.rb +1 -10
  22. data/lib/stripe/resources/billing_portal/configuration.rb +0 -9
  23. data/lib/stripe/resources/card.rb +2 -4
  24. data/lib/stripe/resources/charge.rb +35 -1457
  25. data/lib/stripe/resources/checkout/session.rb +100 -293
  26. data/lib/stripe/resources/climate/order.rb +0 -9
  27. data/lib/stripe/resources/climate/product.rb +0 -9
  28. data/lib/stripe/resources/climate/supplier.rb +0 -9
  29. data/lib/stripe/resources/confirmation_token.rb +74 -156
  30. data/lib/stripe/resources/country_spec.rb +0 -9
  31. data/lib/stripe/resources/coupon.rb +0 -9
  32. data/lib/stripe/resources/credit_note.rb +14 -35
  33. data/lib/stripe/resources/credit_note_line_item.rb +14 -12
  34. data/lib/stripe/resources/customer.rb +12 -28
  35. data/lib/stripe/resources/customer_balance_transaction.rb +3 -1
  36. data/lib/stripe/resources/dispute.rb +0 -9
  37. data/lib/stripe/resources/entitlements/active_entitlement.rb +0 -9
  38. data/lib/stripe/resources/entitlements/feature.rb +0 -9
  39. data/lib/stripe/resources/event.rb +0 -40
  40. data/lib/stripe/resources/exchange_rate.rb +0 -9
  41. data/lib/stripe/resources/file.rb +0 -9
  42. data/lib/stripe/resources/file_link.rb +0 -9
  43. data/lib/stripe/resources/financial_connections/account.rb +0 -23
  44. data/lib/stripe/resources/financial_connections/session.rb +1 -65
  45. data/lib/stripe/resources/financial_connections/transaction.rb +0 -9
  46. data/lib/stripe/resources/forwarding/request.rb +0 -9
  47. data/lib/stripe/resources/identity/verification_report.rb +0 -9
  48. data/lib/stripe/resources/identity/verification_session.rb +0 -9
  49. data/lib/stripe/resources/invoice.rb +225 -5120
  50. data/lib/stripe/resources/invoice_item.rb +65 -110
  51. data/lib/stripe/resources/invoice_line_item.rb +106 -89
  52. data/lib/stripe/resources/invoice_payment.rb +53 -4
  53. data/lib/stripe/resources/invoice_rendering_template.rb +0 -12
  54. data/lib/stripe/resources/issuing/authorization.rb +0 -9
  55. data/lib/stripe/resources/issuing/card.rb +0 -9
  56. data/lib/stripe/resources/issuing/cardholder.rb +1 -11
  57. data/lib/stripe/resources/issuing/dispute.rb +0 -9
  58. data/lib/stripe/resources/issuing/personalization_design.rb +0 -9
  59. data/lib/stripe/resources/issuing/physical_bundle.rb +0 -9
  60. data/lib/stripe/resources/issuing/token.rb +0 -9
  61. data/lib/stripe/resources/issuing/transaction.rb +0 -15
  62. data/lib/stripe/resources/line_item.rb +0 -28
  63. data/lib/stripe/resources/mandate.rb +6 -33
  64. data/lib/stripe/resources/payment_intent.rb +642 -4975
  65. data/lib/stripe/resources/payment_link.rb +84 -15
  66. data/lib/stripe/resources/payment_method.rb +74 -187
  67. data/lib/stripe/resources/payment_method_configuration.rb +87 -214
  68. data/lib/stripe/resources/payment_method_domain.rb +9 -18
  69. data/lib/stripe/resources/payout.rb +0 -9
  70. data/lib/stripe/resources/person.rb +9 -9
  71. data/lib/stripe/resources/plan.rb +0 -15
  72. data/lib/stripe/resources/price.rb +2 -47
  73. data/lib/stripe/resources/product.rb +0 -68
  74. data/lib/stripe/resources/promotion_code.rb +0 -9
  75. data/lib/stripe/resources/quote.rb +8 -2037
  76. data/lib/stripe/resources/radar/early_fraud_warning.rb +0 -9
  77. data/lib/stripe/resources/radar/value_list.rb +0 -9
  78. data/lib/stripe/resources/radar/value_list_item.rb +0 -9
  79. data/lib/stripe/resources/refund.rb +13 -18
  80. data/lib/stripe/resources/reporting/report_run.rb +0 -9
  81. data/lib/stripe/resources/reporting/report_type.rb +0 -9
  82. data/lib/stripe/resources/review.rb +2 -11
  83. data/lib/stripe/resources/setup_attempt.rb +11 -16
  84. data/lib/stripe/resources/setup_intent.rb +158 -540
  85. data/lib/stripe/resources/shipping_rate.rb +0 -9
  86. data/lib/stripe/resources/sigma/scheduled_query_run.rb +0 -9
  87. data/lib/stripe/resources/source.rb +0 -41
  88. data/lib/stripe/resources/subscription.rb +14 -385
  89. data/lib/stripe/resources/subscription_item.rb +9 -134
  90. data/lib/stripe/resources/subscription_schedule.rb +14 -1135
  91. data/lib/stripe/resources/tax/calculation.rb +0 -9
  92. data/lib/stripe/resources/tax/registration.rb +1 -10
  93. data/lib/stripe/resources/tax/settings.rb +0 -9
  94. data/lib/stripe/resources/tax/transaction.rb +0 -9
  95. data/lib/stripe/resources/tax_code.rb +0 -9
  96. data/lib/stripe/resources/tax_id.rb +0 -9
  97. data/lib/stripe/resources/tax_rate.rb +0 -9
  98. data/lib/stripe/resources/terminal/configuration.rb +214 -14
  99. data/lib/stripe/resources/terminal/location.rb +0 -9
  100. data/lib/stripe/resources/terminal/reader.rb +0 -408
  101. data/lib/stripe/resources/test_helpers/test_clock.rb +0 -9
  102. data/lib/stripe/resources/token.rb +1 -10
  103. data/lib/stripe/resources/topup.rb +0 -9
  104. data/lib/stripe/resources/transfer.rb +0 -9
  105. data/lib/stripe/resources/treasury/credit_reversal.rb +0 -9
  106. data/lib/stripe/resources/treasury/debit_reversal.rb +0 -9
  107. data/lib/stripe/resources/treasury/financial_account.rb +4 -32
  108. data/lib/stripe/resources/treasury/financial_account_features.rb +0 -2
  109. data/lib/stripe/resources/treasury/inbound_transfer.rb +0 -9
  110. data/lib/stripe/resources/treasury/outbound_payment.rb +0 -9
  111. data/lib/stripe/resources/treasury/outbound_transfer.rb +0 -46
  112. data/lib/stripe/resources/treasury/received_credit.rb +1 -47
  113. data/lib/stripe/resources/treasury/received_debit.rb +1 -49
  114. data/lib/stripe/resources/treasury/transaction.rb +0 -9
  115. data/lib/stripe/resources/treasury/transaction_entry.rb +0 -9
  116. data/lib/stripe/resources/v2/event.rb +1 -0
  117. data/lib/stripe/resources/v2/event_destination.rb +1 -0
  118. data/lib/stripe/resources/webhook_endpoint.rb +0 -9
  119. data/lib/stripe/resources.rb +0 -25
  120. data/lib/stripe/services/account_external_account_service.rb +1 -1
  121. data/lib/stripe/services/account_service.rb +68 -509
  122. data/lib/stripe/services/account_session_service.rb +1 -217
  123. data/lib/stripe/services/balance_transaction_service.rb +1 -1
  124. data/lib/stripe/services/billing/credit_balance_summary_service.rb +2 -2
  125. data/lib/stripe/services/billing/credit_grant_service.rb +2 -2
  126. data/lib/stripe/services/billing/meter_service.rb +1 -1
  127. data/lib/stripe/services/charge_service.rb +1 -1335
  128. data/lib/stripe/services/checkout/session_service.rb +60 -168
  129. data/lib/stripe/services/credit_note_preview_lines_service.rb +0 -4
  130. data/lib/stripe/services/credit_note_service.rb +0 -8
  131. data/lib/stripe/services/customer_service.rb +0 -16
  132. data/lib/stripe/services/financial_connections/account_service.rb +1 -3
  133. data/lib/stripe/services/financial_connections/session_service.rb +1 -30
  134. data/lib/stripe/services/financial_connections_service.rb +1 -2
  135. data/lib/stripe/services/invoice_item_service.rb +34 -88
  136. data/lib/stripe/services/invoice_line_item_service.rb +25 -41
  137. data/lib/stripe/services/invoice_payment_service.rb +33 -5
  138. data/lib/stripe/services/invoice_service.rb +210 -3147
  139. data/lib/stripe/services/issuing/cardholder_service.rb +1 -2
  140. data/lib/stripe/services/issuing/transaction_service.rb +0 -4
  141. data/lib/stripe/services/issuing_service.rb +1 -5
  142. data/lib/stripe/services/payment_intent_service.rb +568 -4513
  143. data/lib/stripe/services/payment_link_service.rb +59 -6
  144. data/lib/stripe/services/payment_method_configuration_service.rb +62 -146
  145. data/lib/stripe/services/payment_method_domain_service.rb +6 -6
  146. data/lib/stripe/services/payment_method_service.rb +49 -119
  147. data/lib/stripe/services/plan_service.rb +0 -4
  148. data/lib/stripe/services/price_service.rb +2 -25
  149. data/lib/stripe/services/product_service.rb +0 -38
  150. data/lib/stripe/services/quote_service.rb +9 -1716
  151. data/lib/stripe/services/setup_intent_service.rb +158 -492
  152. data/lib/stripe/services/subscription_item_service.rb +5 -111
  153. data/lib/stripe/services/subscription_schedule_service.rb +14 -1005
  154. data/lib/stripe/services/subscription_service.rb +13 -323
  155. data/lib/stripe/services/tax/registration_service.rb +1 -1
  156. data/lib/stripe/services/tax_service.rb +1 -3
  157. data/lib/stripe/services/terminal/configuration_service.rb +170 -4
  158. data/lib/stripe/services/terminal/reader_service.rb +0 -177
  159. data/lib/stripe/services/terminal_service.rb +1 -2
  160. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +49 -87
  161. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +0 -43
  162. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +1 -25
  163. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +1 -25
  164. data/lib/stripe/services/token_service.rb +1 -1
  165. data/lib/stripe/services/treasury/financial_account_features_service.rb +1 -4
  166. data/lib/stripe/services/treasury/financial_account_service.rb +3 -17
  167. data/lib/stripe/services/treasury/outbound_transfer_service.rb +0 -24
  168. data/lib/stripe/services/v1_services.rb +2 -8
  169. data/lib/stripe/services/v2/core/event_destination_service.rb +1 -4
  170. data/lib/stripe/services/v2/core/event_service.rb +1 -4
  171. data/lib/stripe/services.rb +0 -27
  172. data/lib/stripe/stripe_client.rb +1 -0
  173. data/lib/stripe/stripe_configuration.rb +1 -3
  174. data/lib/stripe/util.rb +1 -7
  175. data/lib/stripe/version.rb +1 -1
  176. data/lib/stripe.rb +0 -45
  177. data/rbi/stripe/resources/account.rbi +1131 -1479
  178. data/rbi/stripe/resources/account_link.rbi +9 -9
  179. data/rbi/stripe/resources/account_session.rbi +118 -367
  180. data/rbi/stripe/resources/apple_pay_domain.rbi +8 -15
  181. data/rbi/stripe/resources/application_fee.rbi +15 -20
  182. data/rbi/stripe/resources/apps/secret.rbi +20 -20
  183. data/rbi/stripe/resources/balance.rbi +0 -7
  184. data/rbi/stripe/resources/balance_transaction.rbi +19 -24
  185. data/rbi/stripe/resources/bank_account.rbi +1 -1
  186. data/rbi/stripe/resources/billing/alert.rbi +23 -28
  187. data/rbi/stripe/resources/billing/credit_balance_summary.rbi +0 -53
  188. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +6 -13
  189. data/rbi/stripe/resources/billing/credit_grant.rbi +30 -37
  190. data/rbi/stripe/resources/billing/meter.rbi +19 -26
  191. data/rbi/stripe/resources/billing/meter_event.rbi +4 -4
  192. data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +5 -5
  193. data/rbi/stripe/resources/billing_portal/configuration.rbi +86 -81
  194. data/rbi/stripe/resources/billing_portal/session.rbi +31 -27
  195. data/rbi/stripe/resources/card.rbi +2 -5
  196. data/rbi/stripe/resources/charge.rbi +136 -1576
  197. data/rbi/stripe/resources/checkout/session.rbi +631 -748
  198. data/rbi/stripe/resources/climate/order.rbi +20 -25
  199. data/rbi/stripe/resources/climate/product.rbi +5 -12
  200. data/rbi/stripe/resources/climate/supplier.rbi +5 -12
  201. data/rbi/stripe/resources/confirmation_token.rbi +274 -268
  202. data/rbi/stripe/resources/country_spec.rbi +5 -12
  203. data/rbi/stripe/resources/coupon.rbi +34 -39
  204. data/rbi/stripe/resources/credit_note.rbi +134 -146
  205. data/rbi/stripe/resources/credit_note_line_item.rbi +20 -18
  206. data/rbi/stripe/resources/customer.rbi +172 -164
  207. data/rbi/stripe/resources/customer_balance_transaction.rbi +4 -1
  208. data/rbi/stripe/resources/customer_session.rbi +19 -15
  209. data/rbi/stripe/resources/dispute.rbi +92 -95
  210. data/rbi/stripe/resources/entitlements/active_entitlement.rbi +5 -12
  211. data/rbi/stripe/resources/entitlements/feature.rbi +15 -22
  212. data/rbi/stripe/resources/ephemeral_key.rbi +2 -2
  213. data/rbi/stripe/resources/event.rbi +16 -60
  214. data/rbi/stripe/resources/exchange_rate.rbi +5 -12
  215. data/rbi/stripe/resources/file.rbi +20 -25
  216. data/rbi/stripe/resources/file_link.rbi +23 -28
  217. data/rbi/stripe/resources/financial_connections/account.rbi +25 -44
  218. data/rbi/stripe/resources/financial_connections/session.rbi +12 -75
  219. data/rbi/stripe/resources/financial_connections/transaction.rbi +16 -19
  220. data/rbi/stripe/resources/forwarding/request.rbi +21 -24
  221. data/rbi/stripe/resources/identity/verification_report.rbi +18 -21
  222. data/rbi/stripe/resources/identity/verification_session.rbi +60 -61
  223. data/rbi/stripe/resources/invoice.rbi +723 -5918
  224. data/rbi/stripe/resources/invoice_item.rbi +138 -177
  225. data/rbi/stripe/resources/invoice_line_item.rbi +199 -264
  226. data/rbi/stripe/resources/invoice_payment.rbi +51 -7
  227. data/rbi/stripe/resources/invoice_rendering_template.rbi +10 -20
  228. data/rbi/stripe/resources/issuing/authorization.rbi +216 -199
  229. data/rbi/stripe/resources/issuing/card.rbi +104 -101
  230. data/rbi/stripe/resources/issuing/cardholder.rbi +120 -108
  231. data/rbi/stripe/resources/issuing/dispute.rbi +164 -151
  232. data/rbi/stripe/resources/issuing/personalization_design.rbi +61 -56
  233. data/rbi/stripe/resources/issuing/physical_bundle.rbi +7 -14
  234. data/rbi/stripe/resources/issuing/token.rbi +16 -21
  235. data/rbi/stripe/resources/issuing/transaction.rbi +180 -176
  236. data/rbi/stripe/resources/line_item.rbi +0 -36
  237. data/rbi/stripe/resources/mandate.rbi +8 -40
  238. data/rbi/stripe/resources/payment_intent.rbi +2252 -6482
  239. data/rbi/stripe/resources/payment_link.rbi +346 -211
  240. data/rbi/stripe/resources/payment_method.rbi +226 -330
  241. data/rbi/stripe/resources/payment_method_configuration.rbi +602 -685
  242. data/rbi/stripe/resources/payment_method_domain.rbi +26 -31
  243. data/rbi/stripe/resources/payout.rbi +43 -42
  244. data/rbi/stripe/resources/person.rbi +9 -9
  245. data/rbi/stripe/resources/plan.rbi +51 -63
  246. data/rbi/stripe/resources/price.rbi +114 -151
  247. data/rbi/stripe/resources/product.rbi +90 -152
  248. data/rbi/stripe/resources/promotion_code.rbi +42 -47
  249. data/rbi/stripe/resources/quote.rbi +168 -2231
  250. data/rbi/stripe/resources/radar/early_fraud_warning.rbi +17 -20
  251. data/rbi/stripe/resources/radar/value_list.rbi +24 -29
  252. data/rbi/stripe/resources/radar/value_list_item.rbi +18 -21
  253. data/rbi/stripe/resources/refund.rbi +52 -51
  254. data/rbi/stripe/resources/reporting/report_run.rbi +27 -30
  255. data/rbi/stripe/resources/reporting/report_type.rbi +2 -9
  256. data/rbi/stripe/resources/review.rbi +17 -22
  257. data/rbi/stripe/resources/setup_attempt.rbi +25 -32
  258. data/rbi/stripe/resources/setup_intent.rbi +900 -1102
  259. data/rbi/stripe/resources/shipping_rate.rbi +41 -46
  260. data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +5 -12
  261. data/rbi/stripe/resources/source.rbi +132 -179
  262. data/rbi/stripe/resources/subscription.rbi +363 -707
  263. data/rbi/stripe/resources/subscription_item.rbi +69 -177
  264. data/rbi/stripe/resources/subscription_schedule.rbi +289 -1447
  265. data/rbi/stripe/resources/tax/calculation.rbi +43 -48
  266. data/rbi/stripe/resources/tax/registration.rbi +217 -170
  267. data/rbi/stripe/resources/tax/settings.rbi +14 -21
  268. data/rbi/stripe/resources/tax/transaction.rbi +20 -25
  269. data/rbi/stripe/resources/tax_code.rbi +5 -12
  270. data/rbi/stripe/resources/tax_id.rbi +15 -22
  271. data/rbi/stripe/resources/tax_rate.rbi +34 -39
  272. data/rbi/stripe/resources/terminal/configuration.rbi +457 -212
  273. data/rbi/stripe/resources/terminal/connection_token.rbi +3 -3
  274. data/rbi/stripe/resources/terminal/location.rbi +28 -35
  275. data/rbi/stripe/resources/terminal/reader.rbi +71 -441
  276. data/rbi/stripe/resources/test_helpers/test_clock.rbi +12 -17
  277. data/rbi/stripe/resources/token.rbi +288 -263
  278. data/rbi/stripe/resources/topup.rbi +35 -38
  279. data/rbi/stripe/resources/transfer.rbi +27 -32
  280. data/rbi/stripe/resources/treasury/credit_reversal.rbi +10 -17
  281. data/rbi/stripe/resources/treasury/debit_reversal.rbi +11 -18
  282. data/rbi/stripe/resources/treasury/financial_account.rbi +125 -130
  283. data/rbi/stripe/resources/treasury/financial_account_features.rbi +0 -3
  284. data/rbi/stripe/resources/treasury/inbound_transfer.rbi +22 -29
  285. data/rbi/stripe/resources/treasury/outbound_payment.rbi +82 -79
  286. data/rbi/stripe/resources/treasury/outbound_transfer.rbi +44 -86
  287. data/rbi/stripe/resources/treasury/received_credit.rbi +18 -64
  288. data/rbi/stripe/resources/treasury/received_debit.rbi +17 -66
  289. data/rbi/stripe/resources/treasury/transaction.rbi +27 -28
  290. data/rbi/stripe/resources/treasury/transaction_entry.rbi +25 -26
  291. data/rbi/stripe/resources/v2/amount.rbi +1 -1
  292. data/rbi/stripe/resources/v2/event.rbi +1 -0
  293. data/rbi/stripe/resources/v2/event_destination.rbi +1 -0
  294. data/rbi/stripe/resources/webhook_endpoint.rbi +18 -25
  295. data/rbi/stripe/services/account_capability_service.rbi +7 -7
  296. data/rbi/stripe/services/account_external_account_service.rbi +52 -52
  297. data/rbi/stripe/services/account_link_service.rbi +9 -9
  298. data/rbi/stripe/services/account_login_link_service.rbi +2 -2
  299. data/rbi/stripe/services/account_person_service.rbi +221 -201
  300. data/rbi/stripe/services/account_service.rbi +1221 -1345
  301. data/rbi/stripe/services/account_session_service.rbi +115 -346
  302. data/rbi/stripe/services/apple_pay_domain_service.rbi +10 -10
  303. data/rbi/stripe/services/application_fee_refund_service.rbi +16 -14
  304. data/rbi/stripe/services/application_fee_service.rbi +18 -14
  305. data/rbi/stripe/services/apps/secret_service.rbi +20 -20
  306. data/rbi/stripe/services/balance_service.rbi +2 -2
  307. data/rbi/stripe/services/balance_transaction_service.rbi +22 -18
  308. data/rbi/stripe/services/billing/alert_service.rbi +23 -23
  309. data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +10 -10
  310. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +8 -8
  311. data/rbi/stripe/services/billing/credit_grant_service.rbi +32 -30
  312. data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +7 -5
  313. data/rbi/stripe/services/billing/meter_event_service.rbi +4 -4
  314. data/rbi/stripe/services/billing/meter_event_summary_service.rbi +6 -6
  315. data/rbi/stripe/services/billing/meter_service.rbi +21 -21
  316. data/rbi/stripe/services/billing_portal/configuration_service.rbi +90 -76
  317. data/rbi/stripe/services/billing_portal/session_service.rbi +29 -27
  318. data/rbi/stripe/services/charge_service.rbi +96 -1464
  319. data/rbi/stripe/services/checkout/session_line_item_service.rbi +5 -5
  320. data/rbi/stripe/services/checkout/session_service.rbi +555 -591
  321. data/rbi/stripe/services/climate/order_service.rbi +22 -20
  322. data/rbi/stripe/services/climate/product_service.rbi +7 -7
  323. data/rbi/stripe/services/climate/supplier_service.rbi +7 -7
  324. data/rbi/stripe/services/confirmation_token_service.rbi +2 -2
  325. data/rbi/stripe/services/country_spec_service.rbi +7 -7
  326. data/rbi/stripe/services/coupon_service.rbi +40 -34
  327. data/rbi/stripe/services/credit_note_line_item_service.rbi +5 -5
  328. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +35 -35
  329. data/rbi/stripe/services/credit_note_service.rbi +81 -85
  330. data/rbi/stripe/services/customer_balance_transaction_service.rbi +15 -15
  331. data/rbi/stripe/services/customer_cash_balance_service.rbi +7 -7
  332. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +7 -7
  333. data/rbi/stripe/services/customer_funding_instructions_service.rbi +5 -5
  334. data/rbi/stripe/services/customer_payment_method_service.rbi +9 -9
  335. data/rbi/stripe/services/customer_payment_source_service.rbi +48 -44
  336. data/rbi/stripe/services/customer_service.rbi +143 -139
  337. data/rbi/stripe/services/customer_session_service.rbi +21 -15
  338. data/rbi/stripe/services/customer_tax_id_service.rbi +9 -9
  339. data/rbi/stripe/services/dispute_service.rbi +92 -90
  340. data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +7 -7
  341. data/rbi/stripe/services/entitlements/feature_service.rbi +17 -17
  342. data/rbi/stripe/services/ephemeral_key_service.rbi +8 -8
  343. data/rbi/stripe/services/event_service.rbi +18 -16
  344. data/rbi/stripe/services/exchange_rate_service.rbi +7 -7
  345. data/rbi/stripe/services/file_link_service.rbi +25 -23
  346. data/rbi/stripe/services/file_service.rbi +22 -20
  347. data/rbi/stripe/services/financial_connections/account_owner_service.rbi +5 -5
  348. data/rbi/stripe/services/financial_connections/account_service.rbi +22 -21
  349. data/rbi/stripe/services/financial_connections/session_service.rbi +16 -39
  350. data/rbi/stripe/services/financial_connections/transaction_service.rbi +16 -14
  351. data/rbi/stripe/services/financial_connections_service.rbi +0 -1
  352. data/rbi/stripe/services/forwarding/request_service.rbi +21 -19
  353. data/rbi/stripe/services/identity/verification_report_service.rbi +18 -16
  354. data/rbi/stripe/services/identity/verification_session_service.rbi +62 -56
  355. data/rbi/stripe/services/invoice_item_service.rbi +99 -155
  356. data/rbi/stripe/services/invoice_line_item_service.rbi +71 -82
  357. data/rbi/stripe/services/invoice_payment_service.rbi +39 -12
  358. data/rbi/stripe/services/invoice_rendering_template_service.rbi +13 -13
  359. data/rbi/stripe/services/invoice_service.rbi +679 -3799
  360. data/rbi/stripe/services/issuing/authorization_service.rbi +32 -26
  361. data/rbi/stripe/services/issuing/card_service.rbi +102 -86
  362. data/rbi/stripe/services/issuing/cardholder_service.rbi +122 -103
  363. data/rbi/stripe/services/issuing/dispute_service.rbi +152 -146
  364. data/rbi/stripe/services/issuing/personalization_design_service.rbi +52 -42
  365. data/rbi/stripe/services/issuing/physical_bundle_service.rbi +9 -9
  366. data/rbi/stripe/services/issuing/token_service.rbi +20 -16
  367. data/rbi/stripe/services/issuing/transaction_service.rbi +25 -23
  368. data/rbi/stripe/services/issuing_service.rbi +0 -3
  369. data/rbi/stripe/services/mandate_service.rbi +2 -2
  370. data/rbi/stripe/services/payment_intent_service.rbi +2312 -6081
  371. data/rbi/stripe/services/payment_link_line_item_service.rbi +5 -5
  372. data/rbi/stripe/services/payment_link_service.rbi +303 -201
  373. data/rbi/stripe/services/payment_method_configuration_service.rbi +616 -620
  374. data/rbi/stripe/services/payment_method_domain_service.rbi +25 -23
  375. data/rbi/stripe/services/payment_method_service.rbi +192 -249
  376. data/rbi/stripe/services/payout_service.rbi +45 -37
  377. data/rbi/stripe/services/plan_service.rbi +53 -55
  378. data/rbi/stripe/services/price_service.rbi +124 -129
  379. data/rbi/stripe/services/product_feature_service.rbi +9 -9
  380. data/rbi/stripe/services/product_service.rbi +94 -122
  381. data/rbi/stripe/services/promotion_code_service.rbi +46 -42
  382. data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +5 -5
  383. data/rbi/stripe/services/quote_line_item_service.rbi +5 -5
  384. data/rbi/stripe/services/quote_service.rbi +159 -1863
  385. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +17 -15
  386. data/rbi/stripe/services/radar/value_list_item_service.rbi +20 -16
  387. data/rbi/stripe/services/radar/value_list_service.rbi +28 -24
  388. data/rbi/stripe/services/refund_service.rbi +37 -33
  389. data/rbi/stripe/services/reporting/report_run_service.rbi +29 -25
  390. data/rbi/stripe/services/reporting/report_type_service.rbi +4 -4
  391. data/rbi/stripe/services/review_service.rbi +17 -15
  392. data/rbi/stripe/services/setup_attempt_service.rbi +13 -11
  393. data/rbi/stripe/services/setup_intent_service.rbi +1028 -1062
  394. data/rbi/stripe/services/shipping_rate_service.rbi +47 -41
  395. data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +7 -7
  396. data/rbi/stripe/services/source_service.rbi +149 -133
  397. data/rbi/stripe/services/source_transaction_service.rbi +5 -5
  398. data/rbi/stripe/services/subscription_item_service.rbi +61 -159
  399. data/rbi/stripe/services/subscription_schedule_service.rbi +289 -1305
  400. data/rbi/stripe/services/subscription_service.rbi +366 -640
  401. data/rbi/stripe/services/tax/calculation_line_item_service.rbi +5 -5
  402. data/rbi/stripe/services/tax/calculation_service.rbi +40 -38
  403. data/rbi/stripe/services/tax/registration_service.rbi +337 -165
  404. data/rbi/stripe/services/tax/settings_service.rbi +16 -16
  405. data/rbi/stripe/services/tax/transaction_line_item_service.rbi +5 -5
  406. data/rbi/stripe/services/tax/transaction_service.rbi +19 -15
  407. data/rbi/stripe/services/tax_code_service.rbi +7 -7
  408. data/rbi/stripe/services/tax_id_service.rbi +17 -17
  409. data/rbi/stripe/services/tax_rate_service.rbi +36 -34
  410. data/rbi/stripe/services/tax_service.rbi +0 -2
  411. data/rbi/stripe/services/terminal/configuration_service.rbi +464 -204
  412. data/rbi/stripe/services/terminal/connection_token_service.rbi +3 -3
  413. data/rbi/stripe/services/terminal/location_service.rbi +30 -30
  414. data/rbi/stripe/services/terminal/reader_service.rbi +57 -226
  415. data/rbi/stripe/services/terminal_service.rbi +0 -1
  416. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +157 -198
  417. data/rbi/stripe/services/test_helpers/customer_service.rbi +3 -3
  418. data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +180 -168
  419. data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +10 -10
  420. data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +11 -9
  421. data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +151 -145
  422. data/rbi/stripe/services/test_helpers/refund_service.rbi +2 -2
  423. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +10 -39
  424. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +14 -12
  425. data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +9 -9
  426. data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +20 -18
  427. data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +20 -18
  428. data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +11 -38
  429. data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +11 -38
  430. data/rbi/stripe/services/token_service.rbi +292 -258
  431. data/rbi/stripe/services/topup_service.rbi +37 -33
  432. data/rbi/stripe/services/transfer_reversal_service.rbi +18 -16
  433. data/rbi/stripe/services/transfer_service.rbi +29 -27
  434. data/rbi/stripe/services/treasury/credit_reversal_service.rbi +12 -12
  435. data/rbi/stripe/services/treasury/debit_reversal_service.rbi +13 -13
  436. data/rbi/stripe/services/treasury/financial_account_features_service.rbi +23 -26
  437. data/rbi/stripe/services/treasury/financial_account_service.rbi +92 -96
  438. data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +15 -15
  439. data/rbi/stripe/services/treasury/outbound_payment_service.rbi +60 -56
  440. data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +24 -49
  441. data/rbi/stripe/services/treasury/received_credit_service.rbi +11 -9
  442. data/rbi/stripe/services/treasury/received_debit_service.rbi +8 -8
  443. data/rbi/stripe/services/treasury/transaction_entry_service.rbi +25 -21
  444. data/rbi/stripe/services/treasury/transaction_service.rbi +31 -23
  445. data/rbi/stripe/services/v1_services.rbi +1 -7
  446. data/rbi/stripe/services/v2/billing/meter_event_service.rbi +3 -3
  447. data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +3 -3
  448. data/rbi/stripe/services/v2/core/event_destination_service.rbi +21 -24
  449. data/rbi/stripe/services/v2/core/event_service.rbi +3 -6
  450. data/rbi/stripe/services/webhook_endpoint_service.rbi +20 -20
  451. metadata +4 -109
  452. data/lib/stripe/request_signing_authenticator.rb +0 -79
  453. data/lib/stripe/resources/account_notice.rb +0 -132
  454. data/lib/stripe/resources/billing/meter_error_report.rb +0 -59
  455. data/lib/stripe/resources/capital/financing_offer.rb +0 -188
  456. data/lib/stripe/resources/capital/financing_summary.rb +0 -64
  457. data/lib/stripe/resources/capital/financing_transaction.rb +0 -123
  458. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +0 -27
  459. data/lib/stripe/resources/financial_connections/institution.rb +0 -99
  460. data/lib/stripe/resources/gift_cards/card.rb +0 -217
  461. data/lib/stripe/resources/gift_cards/transaction.rb +0 -281
  462. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +0 -611
  463. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +0 -84
  464. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +0 -95
  465. data/lib/stripe/resources/issuing/settlement.rb +0 -49
  466. data/lib/stripe/resources/margin.rb +0 -124
  467. data/lib/stripe/resources/order.rb +0 -2868
  468. data/lib/stripe/resources/payment_attempt_record.rb +0 -184
  469. data/lib/stripe/resources/payment_record.rb +0 -715
  470. data/lib/stripe/resources/quote_line.rb +0 -274
  471. data/lib/stripe/resources/quote_preview_invoice.rb +0 -652
  472. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +0 -362
  473. data/lib/stripe/resources/tax/association.rb +0 -89
  474. data/lib/stripe/resources/tax/form.rb +0 -220
  475. data/lib/stripe/resources/terminal/reader_collected_data.rb +0 -40
  476. data/lib/stripe/resources/usage_record.rb +0 -30
  477. data/lib/stripe/resources/usage_record_summary.rb +0 -33
  478. data/lib/stripe/services/account_notice_service.rb +0 -101
  479. data/lib/stripe/services/capital/financing_offer_service.rb +0 -112
  480. data/lib/stripe/services/capital/financing_summary_service.rb +0 -28
  481. data/lib/stripe/services/capital/financing_transaction_service.rb +0 -79
  482. data/lib/stripe/services/capital_service.rb +0 -15
  483. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +0 -37
  484. data/lib/stripe/services/financial_connections/institution_service.rb +0 -57
  485. data/lib/stripe/services/gift_cards/card_service.rb +0 -170
  486. data/lib/stripe/services/gift_cards/transaction_service.rb +0 -209
  487. data/lib/stripe/services/gift_cards_service.rb +0 -14
  488. data/lib/stripe/services/invoice_upcoming_lines_service.rb +0 -1881
  489. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +0 -504
  490. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +0 -66
  491. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +0 -83
  492. data/lib/stripe/services/margin_service.rb +0 -119
  493. data/lib/stripe/services/order_line_item_service.rb +0 -35
  494. data/lib/stripe/services/order_service.rb +0 -2268
  495. data/lib/stripe/services/payment_attempt_record_service.rb +0 -49
  496. data/lib/stripe/services/payment_record_service.rb +0 -542
  497. data/lib/stripe/services/quote_line_service.rb +0 -35
  498. data/lib/stripe/services/quote_preview_invoice_service.rb +0 -35
  499. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +0 -35
  500. data/lib/stripe/services/subscription_item_usage_record_service.rb +0 -41
  501. data/lib/stripe/services/subscription_item_usage_record_summary_service.rb +0 -37
  502. data/lib/stripe/services/tax/association_service.rb +0 -31
  503. data/lib/stripe/services/tax/form_service.rb +0 -100
  504. data/lib/stripe/services/terminal/reader_collected_data_service.rb +0 -28
  505. data/rbi/stripe/resources/account_notice.rbi +0 -139
  506. data/rbi/stripe/resources/billing/meter_error_report.rbi +0 -71
  507. data/rbi/stripe/resources/capital/financing_offer.rbi +0 -190
  508. data/rbi/stripe/resources/capital/financing_summary.rbi +0 -74
  509. data/rbi/stripe/resources/capital/financing_transaction.rbi +0 -130
  510. data/rbi/stripe/resources/financial_connections/account_inferred_balance.rbi +0 -27
  511. data/rbi/stripe/resources/financial_connections/institution.rbi +0 -99
  512. data/rbi/stripe/resources/gift_cards/card.rbi +0 -206
  513. data/rbi/stripe/resources/gift_cards/transaction.rbi +0 -257
  514. data/rbi/stripe/resources/issuing/credit_underwriting_record.rbi +0 -622
  515. data/rbi/stripe/resources/issuing/dispute_settlement_detail.rbi +0 -83
  516. data/rbi/stripe/resources/issuing/fraud_liability_debit.rbi +0 -90
  517. data/rbi/stripe/resources/issuing/settlement.rbi +0 -62
  518. data/rbi/stripe/resources/margin.rbi +0 -127
  519. data/rbi/stripe/resources/order.rbi +0 -3036
  520. data/rbi/stripe/resources/payment_attempt_record.rbi +0 -215
  521. data/rbi/stripe/resources/payment_record.rbi +0 -722
  522. data/rbi/stripe/resources/quote_line.rbi +0 -350
  523. data/rbi/stripe/resources/quote_preview_invoice.rbi +0 -850
  524. data/rbi/stripe/resources/quote_preview_subscription_schedule.rbi +0 -474
  525. data/rbi/stripe/resources/tax/association.rbi +0 -94
  526. data/rbi/stripe/resources/tax/form.rbi +0 -224
  527. data/rbi/stripe/resources/terminal/reader_collected_data.rbi +0 -41
  528. data/rbi/stripe/resources/usage_record.rbi +0 -32
  529. data/rbi/stripe/resources/usage_record_summary.rbi +0 -38
  530. data/rbi/stripe/services/account_notice_service.rbi +0 -90
  531. data/rbi/stripe/services/capital/financing_offer_service.rbi +0 -95
  532. data/rbi/stripe/services/capital/financing_summary_service.rbi +0 -22
  533. data/rbi/stripe/services/capital/financing_transaction_service.rbi +0 -68
  534. data/rbi/stripe/services/capital_service.rbi +0 -11
  535. data/rbi/stripe/services/financial_connections/account_inferred_balance_service.rbi +0 -33
  536. data/rbi/stripe/services/financial_connections/institution_service.rbi +0 -46
  537. data/rbi/stripe/services/gift_cards/card_service.rbi +0 -142
  538. data/rbi/stripe/services/gift_cards/transaction_service.rbi +0 -174
  539. data/rbi/stripe/services/gift_cards_service.rbi +0 -10
  540. data/rbi/stripe/services/invoice_upcoming_lines_service.rbi +0 -2023
  541. data/rbi/stripe/services/issuing/credit_underwriting_record_service.rbi +0 -498
  542. data/rbi/stripe/services/issuing/dispute_settlement_detail_service.rbi +0 -55
  543. data/rbi/stripe/services/issuing/fraud_liability_debit_service.rbi +0 -73
  544. data/rbi/stripe/services/margin_service.rbi +0 -104
  545. data/rbi/stripe/services/order_line_item_service.rbi +0 -31
  546. data/rbi/stripe/services/order_service.rbi +0 -2320
  547. data/rbi/stripe/services/payment_attempt_record_service.rbi +0 -36
  548. data/rbi/stripe/services/payment_record_service.rbi +0 -521
  549. data/rbi/stripe/services/quote_line_service.rbi +0 -31
  550. data/rbi/stripe/services/quote_preview_invoice_service.rbi +0 -31
  551. data/rbi/stripe/services/quote_preview_subscription_schedule_service.rbi +0 -31
  552. data/rbi/stripe/services/subscription_item_usage_record_service.rbi +0 -37
  553. data/rbi/stripe/services/subscription_item_usage_record_summary_service.rbi +0 -33
  554. data/rbi/stripe/services/tax/association_service.rbi +0 -25
  555. data/rbi/stripe/services/tax/form_service.rbi +0 -85
  556. data/rbi/stripe/services/terminal/reader_collected_data_service.rbi +0 -22
@@ -146,18 +146,6 @@ module Stripe
146
146
  end
147
147
  end
148
148
 
149
- class BillingThresholds < Stripe::RequestParams
150
- # Monetary threshold that triggers the subscription to advance to a new billing period
151
- attr_accessor :amount_gte
152
- # Indicates if the `billing_cycle_anchor` should be reset when a threshold is reached. If true, `billing_cycle_anchor` will be updated to the date/time the threshold was last reached; otherwise, the value will remain unchanged.
153
- attr_accessor :reset_billing_cycle_anchor
154
-
155
- def initialize(amount_gte: nil, reset_billing_cycle_anchor: nil)
156
- @amount_gte = amount_gte
157
- @reset_billing_cycle_anchor = reset_billing_cycle_anchor
158
- end
159
- end
160
-
161
149
  class InvoiceSettings < Stripe::RequestParams
162
150
  class Issuer < Stripe::RequestParams
163
151
  # The connected account being referenced when `type` is `account`.
@@ -201,8 +189,6 @@ module Stripe
201
189
  attr_accessor :automatic_tax
202
190
  # Can be set to `phase_start` to set the anchor to the start of the phase or `automatic` to automatically change it if needed. Cannot be set to `phase_start` if this phase specifies a trial. For more information, see the billing cycle [documentation](https://stripe.com/docs/billing/subscriptions/billing-cycle).
203
191
  attr_accessor :billing_cycle_anchor
204
- # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
205
- attr_accessor :billing_thresholds
206
192
  # Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay the underlying subscription at the end of each billing cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions and mark the subscription as `active`. Defaults to `charge_automatically` on creation.
207
193
  attr_accessor :collection_method
208
194
  # ID of the default payment method for the subscription schedule. It must belong to the customer associated with the subscription schedule. If not set, invoices will use the default payment method in the customer's invoice settings.
@@ -220,7 +206,6 @@ module Stripe
220
206
  application_fee_percent: nil,
221
207
  automatic_tax: nil,
222
208
  billing_cycle_anchor: nil,
223
- billing_thresholds: nil,
224
209
  collection_method: nil,
225
210
  default_payment_method: nil,
226
211
  description: nil,
@@ -231,7 +216,6 @@ module Stripe
231
216
  @application_fee_percent = application_fee_percent
232
217
  @automatic_tax = automatic_tax
233
218
  @billing_cycle_anchor = billing_cycle_anchor
234
- @billing_thresholds = billing_thresholds
235
219
  @collection_method = collection_method
236
220
  @default_payment_method = default_payment_method
237
221
  @description = description
@@ -244,44 +228,16 @@ module Stripe
244
228
  class Phase < Stripe::RequestParams
245
229
  class AddInvoiceItem < Stripe::RequestParams
246
230
  class Discount < Stripe::RequestParams
247
- class DiscountEnd < Stripe::RequestParams
248
- class Duration < Stripe::RequestParams
249
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
250
- attr_accessor :interval
251
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
252
- attr_accessor :interval_count
253
-
254
- def initialize(interval: nil, interval_count: nil)
255
- @interval = interval
256
- @interval_count = interval_count
257
- end
258
- end
259
- # Time span for the redeemed discount.
260
- attr_accessor :duration
261
- # A precise Unix timestamp for the discount to end. Must be in the future.
262
- attr_accessor :timestamp
263
- # The type of calculation made to determine when the discount ends.
264
- attr_accessor :type
265
-
266
- def initialize(duration: nil, timestamp: nil, type: nil)
267
- @duration = duration
268
- @timestamp = timestamp
269
- @type = type
270
- end
271
- end
272
231
  # ID of the coupon to create a new discount for.
273
232
  attr_accessor :coupon
274
233
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
275
234
  attr_accessor :discount
276
- # Details to determine how long the discount should be applied for.
277
- attr_accessor :discount_end
278
235
  # ID of the promotion code to create a new discount for.
279
236
  attr_accessor :promotion_code
280
237
 
281
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
238
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
282
239
  @coupon = coupon
283
240
  @discount = discount
284
- @discount_end = discount_end
285
241
  @promotion_code = promotion_code
286
242
  end
287
243
  end
@@ -289,7 +245,7 @@ module Stripe
289
245
  class PriceData < Stripe::RequestParams
290
246
  # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
291
247
  attr_accessor :currency
292
- # The ID of the product that this price will belong to.
248
+ # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
293
249
  attr_accessor :product
294
250
  # Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
295
251
  attr_accessor :tax_behavior
@@ -355,57 +311,17 @@ module Stripe
355
311
  end
356
312
  end
357
313
 
358
- class BillingThresholds < Stripe::RequestParams
359
- # Monetary threshold that triggers the subscription to advance to a new billing period
360
- attr_accessor :amount_gte
361
- # Indicates if the `billing_cycle_anchor` should be reset when a threshold is reached. If true, `billing_cycle_anchor` will be updated to the date/time the threshold was last reached; otherwise, the value will remain unchanged.
362
- attr_accessor :reset_billing_cycle_anchor
363
-
364
- def initialize(amount_gte: nil, reset_billing_cycle_anchor: nil)
365
- @amount_gte = amount_gte
366
- @reset_billing_cycle_anchor = reset_billing_cycle_anchor
367
- end
368
- end
369
-
370
314
  class Discount < Stripe::RequestParams
371
- class DiscountEnd < Stripe::RequestParams
372
- class Duration < Stripe::RequestParams
373
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
374
- attr_accessor :interval
375
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
376
- attr_accessor :interval_count
377
-
378
- def initialize(interval: nil, interval_count: nil)
379
- @interval = interval
380
- @interval_count = interval_count
381
- end
382
- end
383
- # Time span for the redeemed discount.
384
- attr_accessor :duration
385
- # A precise Unix timestamp for the discount to end. Must be in the future.
386
- attr_accessor :timestamp
387
- # The type of calculation made to determine when the discount ends.
388
- attr_accessor :type
389
-
390
- def initialize(duration: nil, timestamp: nil, type: nil)
391
- @duration = duration
392
- @timestamp = timestamp
393
- @type = type
394
- end
395
- end
396
315
  # ID of the coupon to create a new discount for.
397
316
  attr_accessor :coupon
398
317
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
399
318
  attr_accessor :discount
400
- # Details to determine how long the discount should be applied for.
401
- attr_accessor :discount_end
402
319
  # ID of the promotion code to create a new discount for.
403
320
  attr_accessor :promotion_code
404
321
 
405
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
322
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
406
323
  @coupon = coupon
407
324
  @discount = discount
408
- @discount_end = discount_end
409
325
  @promotion_code = promotion_code
410
326
  end
411
327
  end
@@ -437,54 +353,17 @@ module Stripe
437
353
  end
438
354
 
439
355
  class Item < Stripe::RequestParams
440
- class BillingThresholds < Stripe::RequestParams
441
- # Number of units that meets the billing threshold to advance the subscription to a new billing period (e.g., it takes 10 $5 units to meet a $50 [monetary threshold](https://stripe.com/docs/api/subscriptions/update#update_subscription-billing_thresholds-amount_gte))
442
- attr_accessor :usage_gte
443
-
444
- def initialize(usage_gte: nil)
445
- @usage_gte = usage_gte
446
- end
447
- end
448
-
449
356
  class Discount < Stripe::RequestParams
450
- class DiscountEnd < Stripe::RequestParams
451
- class Duration < Stripe::RequestParams
452
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
453
- attr_accessor :interval
454
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
455
- attr_accessor :interval_count
456
-
457
- def initialize(interval: nil, interval_count: nil)
458
- @interval = interval
459
- @interval_count = interval_count
460
- end
461
- end
462
- # Time span for the redeemed discount.
463
- attr_accessor :duration
464
- # A precise Unix timestamp for the discount to end. Must be in the future.
465
- attr_accessor :timestamp
466
- # The type of calculation made to determine when the discount ends.
467
- attr_accessor :type
468
-
469
- def initialize(duration: nil, timestamp: nil, type: nil)
470
- @duration = duration
471
- @timestamp = timestamp
472
- @type = type
473
- end
474
- end
475
357
  # ID of the coupon to create a new discount for.
476
358
  attr_accessor :coupon
477
359
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
478
360
  attr_accessor :discount
479
- # Details to determine how long the discount should be applied for.
480
- attr_accessor :discount_end
481
361
  # ID of the promotion code to create a new discount for.
482
362
  attr_accessor :promotion_code
483
363
 
484
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
364
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
485
365
  @coupon = coupon
486
366
  @discount = discount
487
- @discount_end = discount_end
488
367
  @promotion_code = promotion_code
489
368
  end
490
369
  end
@@ -503,7 +382,7 @@ module Stripe
503
382
  end
504
383
  # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
505
384
  attr_accessor :currency
506
- # The ID of the product that this price will belong to.
385
+ # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
507
386
  attr_accessor :product
508
387
  # The recurring components of a price such as `interval` and `interval_count`.
509
388
  attr_accessor :recurring
@@ -530,20 +409,6 @@ module Stripe
530
409
  @unit_amount_decimal = unit_amount_decimal
531
410
  end
532
411
  end
533
-
534
- class Trial < Stripe::RequestParams
535
- # List of price IDs which, if present on the subscription following a paid trial, constitute opting-in to the paid trial. Currently only supports at most 1 price ID.
536
- attr_accessor :converts_to
537
- # Determines the type of trial for this item.
538
- attr_accessor :type
539
-
540
- def initialize(converts_to: nil, type: nil)
541
- @converts_to = converts_to
542
- @type = type
543
- end
544
- end
545
- # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. When updating, pass an empty string to remove previously-defined thresholds.
546
- attr_accessor :billing_thresholds
547
412
  # The coupons to redeem into discounts for the subscription item.
548
413
  attr_accessor :discounts
549
414
  # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to a configuration item. Metadata on a configuration item will update the underlying subscription item's `metadata` when the phase is entered, adding new keys and replacing existing keys. Individual keys in the subscription item's `metadata` can be unset by posting an empty value to them in the configuration item's `metadata`. To unset all keys in the subscription item's `metadata`, update the subscription item directly or unset every key individually from the configuration item's `metadata`.
@@ -558,21 +423,16 @@ module Stripe
558
423
  attr_accessor :quantity
559
424
  # A list of [Tax Rate](https://stripe.com/docs/api/tax_rates) ids. These Tax Rates will override the [`default_tax_rates`](https://stripe.com/docs/api/subscriptions/create#create_subscription-default_tax_rates) on the Subscription. When updating, pass an empty string to remove previously-defined tax rates.
560
425
  attr_accessor :tax_rates
561
- # Options that configure the trial on the subscription item.
562
- attr_accessor :trial
563
426
 
564
427
  def initialize(
565
- billing_thresholds: nil,
566
428
  discounts: nil,
567
429
  metadata: nil,
568
430
  plan: nil,
569
431
  price: nil,
570
432
  price_data: nil,
571
433
  quantity: nil,
572
- tax_rates: nil,
573
- trial: nil
434
+ tax_rates: nil
574
435
  )
575
- @billing_thresholds = billing_thresholds
576
436
  @discounts = discounts
577
437
  @metadata = metadata
578
438
  @plan = plan
@@ -580,16 +440,6 @@ module Stripe
580
440
  @price_data = price_data
581
441
  @quantity = quantity
582
442
  @tax_rates = tax_rates
583
- @trial = trial
584
- end
585
- end
586
-
587
- class PauseCollection < Stripe::RequestParams
588
- # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
589
- attr_accessor :behavior
590
-
591
- def initialize(behavior: nil)
592
- @behavior = behavior
593
443
  end
594
444
  end
595
445
 
@@ -604,23 +454,6 @@ module Stripe
604
454
  @destination = destination
605
455
  end
606
456
  end
607
-
608
- class TrialSettings < Stripe::RequestParams
609
- class EndBehavior < Stripe::RequestParams
610
- # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
611
- attr_accessor :prorate_up_front
612
-
613
- def initialize(prorate_up_front: nil)
614
- @prorate_up_front = prorate_up_front
615
- end
616
- end
617
- # Defines how the subscription should behave when a trial ends.
618
- attr_accessor :end_behavior
619
-
620
- def initialize(end_behavior: nil)
621
- @end_behavior = end_behavior
622
- end
623
- end
624
457
  # A list of prices and quantities that will generate invoice items appended to the next invoice for this phase. You may pass up to 20 items.
625
458
  attr_accessor :add_invoice_items
626
459
  # A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the application owner's Stripe account. The request must be made by a platform account on a connected account in order to set an application fee percentage. For more information, see the application fees [documentation](https://stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions).
@@ -629,12 +462,8 @@ module Stripe
629
462
  attr_accessor :automatic_tax
630
463
  # Can be set to `phase_start` to set the anchor to the start of the phase or `automatic` to automatically change it if needed. Cannot be set to `phase_start` if this phase specifies a trial. For more information, see the billing cycle [documentation](https://stripe.com/docs/billing/subscriptions/billing-cycle).
631
464
  attr_accessor :billing_cycle_anchor
632
- # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
633
- attr_accessor :billing_thresholds
634
465
  # Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay the underlying subscription at the end of each billing cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions and mark the subscription as `active`. Defaults to `charge_automatically` on creation.
635
466
  attr_accessor :collection_method
636
- # The ID of the coupon to apply to this phase of the subscription schedule. This field has been deprecated and will be removed in a future API version. Use `discounts` instead.
637
- attr_accessor :coupon
638
467
  # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
639
468
  attr_accessor :currency
640
469
  # ID of the default payment method for the subscription schedule. It must belong to the customer associated with the subscription schedule. If not set, invoices will use the default payment method in the customer's invoice settings.
@@ -657,29 +486,21 @@ module Stripe
657
486
  attr_accessor :metadata
658
487
  # The account on behalf of which to charge, for each of the associated subscription's invoices.
659
488
  attr_accessor :on_behalf_of
660
- # If specified, payment collection for this subscription will be paused. Note that the subscription status will be unchanged and will not be updated to `paused`. Learn more about [pausing collection](https://stripe.com/docs/billing/subscriptions/pause-payment).
661
- attr_accessor :pause_collection
662
489
  # Whether the subscription schedule will create [prorations](https://stripe.com/docs/billing/subscriptions/prorations) when transitioning to this phase. The default value is `create_prorations`. This setting controls prorations when a phase is started asynchronously and it is persisted as a field on the phase. It's different from the request-level [proration_behavior](https://stripe.com/docs/api/subscription_schedules/update#update_subscription_schedule-proration_behavior) parameter which controls what happens if the update request affects the billing configuration of the current phase.
663
490
  attr_accessor :proration_behavior
664
491
  # The data with which to automatically create a Transfer for each of the associated subscription's invoices.
665
492
  attr_accessor :transfer_data
666
493
  # If set to true the entire phase is counted as a trial and the customer will not be charged for any fees.
667
494
  attr_accessor :trial
668
- # Specify trial behavior when crossing phase boundaries
669
- attr_accessor :trial_continuation
670
495
  # Sets the phase to trialing from the start date to this date. Must be before the phase end date, can not be combined with `trial`
671
496
  attr_accessor :trial_end
672
- # Settings related to subscription trials.
673
- attr_accessor :trial_settings
674
497
 
675
498
  def initialize(
676
499
  add_invoice_items: nil,
677
500
  application_fee_percent: nil,
678
501
  automatic_tax: nil,
679
502
  billing_cycle_anchor: nil,
680
- billing_thresholds: nil,
681
503
  collection_method: nil,
682
- coupon: nil,
683
504
  currency: nil,
684
505
  default_payment_method: nil,
685
506
  default_tax_rates: nil,
@@ -691,21 +512,16 @@ module Stripe
691
512
  iterations: nil,
692
513
  metadata: nil,
693
514
  on_behalf_of: nil,
694
- pause_collection: nil,
695
515
  proration_behavior: nil,
696
516
  transfer_data: nil,
697
517
  trial: nil,
698
- trial_continuation: nil,
699
- trial_end: nil,
700
- trial_settings: nil
518
+ trial_end: nil
701
519
  )
702
520
  @add_invoice_items = add_invoice_items
703
521
  @application_fee_percent = application_fee_percent
704
522
  @automatic_tax = automatic_tax
705
523
  @billing_cycle_anchor = billing_cycle_anchor
706
- @billing_thresholds = billing_thresholds
707
524
  @collection_method = collection_method
708
- @coupon = coupon
709
525
  @currency = currency
710
526
  @default_payment_method = default_payment_method
711
527
  @default_tax_rates = default_tax_rates
@@ -717,29 +533,12 @@ module Stripe
717
533
  @iterations = iterations
718
534
  @metadata = metadata
719
535
  @on_behalf_of = on_behalf_of
720
- @pause_collection = pause_collection
721
536
  @proration_behavior = proration_behavior
722
537
  @transfer_data = transfer_data
723
538
  @trial = trial
724
- @trial_continuation = trial_continuation
725
539
  @trial_end = trial_end
726
- @trial_settings = trial_settings
727
- end
728
- end
729
-
730
- class Prebilling < Stripe::RequestParams
731
- # This is used to determine the number of billing cycles to prebill.
732
- attr_accessor :iterations
733
- # Whether to cancel or preserve `prebilling` if the subscription is updated during the prebilled period. The default value is `reset`.
734
- attr_accessor :update_behavior
735
-
736
- def initialize(iterations: nil, update_behavior: nil)
737
- @iterations = iterations
738
- @update_behavior = update_behavior
739
540
  end
740
541
  end
741
- # Configures when the subscription schedule generates prorations for phase transitions. Possible values are `prorate_on_next_phase` or `prorate_up_front` with the default being `prorate_on_next_phase`. `prorate_on_next_phase` will apply phase changes and generate prorations at transition time. `prorate_up_front` will bill for all phases within the current billing cycle up front.
742
- attr_accessor :billing_behavior
743
542
  # The identifier of the customer to create the subscription schedule for.
744
543
  attr_accessor :customer
745
544
  # Object representing the subscription schedule's default settings.
@@ -754,13 +553,10 @@ module Stripe
754
553
  attr_accessor :metadata
755
554
  # List representing phases of the subscription schedule. Each phase can be customized to have different durations, plans, and coupons. If there are multiple phases, the `end_date` of one phase will always equal the `start_date` of the next phase.
756
555
  attr_accessor :phases
757
- # If specified, the invoicing for the given billing cycle iterations will be processed now.
758
- attr_accessor :prebilling
759
556
  # When the subscription schedule starts. We recommend using `now` so that it starts the subscription immediately. You can also use a Unix timestamp to backdate the subscription so that it starts on a past date, or set a future date for the subscription to start on.
760
557
  attr_accessor :start_date
761
558
 
762
559
  def initialize(
763
- billing_behavior: nil,
764
560
  customer: nil,
765
561
  default_settings: nil,
766
562
  end_behavior: nil,
@@ -768,10 +564,8 @@ module Stripe
768
564
  from_subscription: nil,
769
565
  metadata: nil,
770
566
  phases: nil,
771
- prebilling: nil,
772
567
  start_date: nil
773
568
  )
774
- @billing_behavior = billing_behavior
775
569
  @customer = customer
776
570
  @default_settings = default_settings
777
571
  @end_behavior = end_behavior
@@ -779,7 +573,6 @@ module Stripe
779
573
  @from_subscription = from_subscription
780
574
  @metadata = metadata
781
575
  @phases = phases
782
- @prebilling = prebilling
783
576
  @start_date = start_date
784
577
  end
785
578
  end
@@ -818,18 +611,6 @@ module Stripe
818
611
  end
819
612
  end
820
613
 
821
- class BillingThresholds < Stripe::RequestParams
822
- # Monetary threshold that triggers the subscription to advance to a new billing period
823
- attr_accessor :amount_gte
824
- # Indicates if the `billing_cycle_anchor` should be reset when a threshold is reached. If true, `billing_cycle_anchor` will be updated to the date/time the threshold was last reached; otherwise, the value will remain unchanged.
825
- attr_accessor :reset_billing_cycle_anchor
826
-
827
- def initialize(amount_gte: nil, reset_billing_cycle_anchor: nil)
828
- @amount_gte = amount_gte
829
- @reset_billing_cycle_anchor = reset_billing_cycle_anchor
830
- end
831
- end
832
-
833
614
  class InvoiceSettings < Stripe::RequestParams
834
615
  class Issuer < Stripe::RequestParams
835
616
  # The connected account being referenced when `type` is `account`.
@@ -873,8 +654,6 @@ module Stripe
873
654
  attr_accessor :automatic_tax
874
655
  # Can be set to `phase_start` to set the anchor to the start of the phase or `automatic` to automatically change it if needed. Cannot be set to `phase_start` if this phase specifies a trial. For more information, see the billing cycle [documentation](https://stripe.com/docs/billing/subscriptions/billing-cycle).
875
656
  attr_accessor :billing_cycle_anchor
876
- # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
877
- attr_accessor :billing_thresholds
878
657
  # Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay the underlying subscription at the end of each billing cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions and mark the subscription as `active`. Defaults to `charge_automatically` on creation.
879
658
  attr_accessor :collection_method
880
659
  # ID of the default payment method for the subscription schedule. It must belong to the customer associated with the subscription schedule. If not set, invoices will use the default payment method in the customer's invoice settings.
@@ -892,7 +671,6 @@ module Stripe
892
671
  application_fee_percent: nil,
893
672
  automatic_tax: nil,
894
673
  billing_cycle_anchor: nil,
895
- billing_thresholds: nil,
896
674
  collection_method: nil,
897
675
  default_payment_method: nil,
898
676
  description: nil,
@@ -903,7 +681,6 @@ module Stripe
903
681
  @application_fee_percent = application_fee_percent
904
682
  @automatic_tax = automatic_tax
905
683
  @billing_cycle_anchor = billing_cycle_anchor
906
- @billing_thresholds = billing_thresholds
907
684
  @collection_method = collection_method
908
685
  @default_payment_method = default_payment_method
909
686
  @description = description
@@ -916,44 +693,16 @@ module Stripe
916
693
  class Phase < Stripe::RequestParams
917
694
  class AddInvoiceItem < Stripe::RequestParams
918
695
  class Discount < Stripe::RequestParams
919
- class DiscountEnd < Stripe::RequestParams
920
- class Duration < Stripe::RequestParams
921
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
922
- attr_accessor :interval
923
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
924
- attr_accessor :interval_count
925
-
926
- def initialize(interval: nil, interval_count: nil)
927
- @interval = interval
928
- @interval_count = interval_count
929
- end
930
- end
931
- # Time span for the redeemed discount.
932
- attr_accessor :duration
933
- # A precise Unix timestamp for the discount to end. Must be in the future.
934
- attr_accessor :timestamp
935
- # The type of calculation made to determine when the discount ends.
936
- attr_accessor :type
937
-
938
- def initialize(duration: nil, timestamp: nil, type: nil)
939
- @duration = duration
940
- @timestamp = timestamp
941
- @type = type
942
- end
943
- end
944
696
  # ID of the coupon to create a new discount for.
945
697
  attr_accessor :coupon
946
698
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
947
699
  attr_accessor :discount
948
- # Details to determine how long the discount should be applied for.
949
- attr_accessor :discount_end
950
700
  # ID of the promotion code to create a new discount for.
951
701
  attr_accessor :promotion_code
952
702
 
953
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
703
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
954
704
  @coupon = coupon
955
705
  @discount = discount
956
- @discount_end = discount_end
957
706
  @promotion_code = promotion_code
958
707
  end
959
708
  end
@@ -961,7 +710,7 @@ module Stripe
961
710
  class PriceData < Stripe::RequestParams
962
711
  # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
963
712
  attr_accessor :currency
964
- # The ID of the product that this price will belong to.
713
+ # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
965
714
  attr_accessor :product
966
715
  # Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
967
716
  attr_accessor :tax_behavior
@@ -1027,57 +776,17 @@ module Stripe
1027
776
  end
1028
777
  end
1029
778
 
1030
- class BillingThresholds < Stripe::RequestParams
1031
- # Monetary threshold that triggers the subscription to advance to a new billing period
1032
- attr_accessor :amount_gte
1033
- # Indicates if the `billing_cycle_anchor` should be reset when a threshold is reached. If true, `billing_cycle_anchor` will be updated to the date/time the threshold was last reached; otherwise, the value will remain unchanged.
1034
- attr_accessor :reset_billing_cycle_anchor
1035
-
1036
- def initialize(amount_gte: nil, reset_billing_cycle_anchor: nil)
1037
- @amount_gte = amount_gte
1038
- @reset_billing_cycle_anchor = reset_billing_cycle_anchor
1039
- end
1040
- end
1041
-
1042
779
  class Discount < Stripe::RequestParams
1043
- class DiscountEnd < Stripe::RequestParams
1044
- class Duration < Stripe::RequestParams
1045
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1046
- attr_accessor :interval
1047
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1048
- attr_accessor :interval_count
1049
-
1050
- def initialize(interval: nil, interval_count: nil)
1051
- @interval = interval
1052
- @interval_count = interval_count
1053
- end
1054
- end
1055
- # Time span for the redeemed discount.
1056
- attr_accessor :duration
1057
- # A precise Unix timestamp for the discount to end. Must be in the future.
1058
- attr_accessor :timestamp
1059
- # The type of calculation made to determine when the discount ends.
1060
- attr_accessor :type
1061
-
1062
- def initialize(duration: nil, timestamp: nil, type: nil)
1063
- @duration = duration
1064
- @timestamp = timestamp
1065
- @type = type
1066
- end
1067
- end
1068
780
  # ID of the coupon to create a new discount for.
1069
781
  attr_accessor :coupon
1070
782
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
1071
783
  attr_accessor :discount
1072
- # Details to determine how long the discount should be applied for.
1073
- attr_accessor :discount_end
1074
784
  # ID of the promotion code to create a new discount for.
1075
785
  attr_accessor :promotion_code
1076
786
 
1077
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
787
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
1078
788
  @coupon = coupon
1079
789
  @discount = discount
1080
- @discount_end = discount_end
1081
790
  @promotion_code = promotion_code
1082
791
  end
1083
792
  end
@@ -1109,54 +818,17 @@ module Stripe
1109
818
  end
1110
819
 
1111
820
  class Item < Stripe::RequestParams
1112
- class BillingThresholds < Stripe::RequestParams
1113
- # Number of units that meets the billing threshold to advance the subscription to a new billing period (e.g., it takes 10 $5 units to meet a $50 [monetary threshold](https://stripe.com/docs/api/subscriptions/update#update_subscription-billing_thresholds-amount_gte))
1114
- attr_accessor :usage_gte
1115
-
1116
- def initialize(usage_gte: nil)
1117
- @usage_gte = usage_gte
1118
- end
1119
- end
1120
-
1121
821
  class Discount < Stripe::RequestParams
1122
- class DiscountEnd < Stripe::RequestParams
1123
- class Duration < Stripe::RequestParams
1124
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1125
- attr_accessor :interval
1126
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1127
- attr_accessor :interval_count
1128
-
1129
- def initialize(interval: nil, interval_count: nil)
1130
- @interval = interval
1131
- @interval_count = interval_count
1132
- end
1133
- end
1134
- # Time span for the redeemed discount.
1135
- attr_accessor :duration
1136
- # A precise Unix timestamp for the discount to end. Must be in the future.
1137
- attr_accessor :timestamp
1138
- # The type of calculation made to determine when the discount ends.
1139
- attr_accessor :type
1140
-
1141
- def initialize(duration: nil, timestamp: nil, type: nil)
1142
- @duration = duration
1143
- @timestamp = timestamp
1144
- @type = type
1145
- end
1146
- end
1147
822
  # ID of the coupon to create a new discount for.
1148
823
  attr_accessor :coupon
1149
824
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
1150
825
  attr_accessor :discount
1151
- # Details to determine how long the discount should be applied for.
1152
- attr_accessor :discount_end
1153
826
  # ID of the promotion code to create a new discount for.
1154
827
  attr_accessor :promotion_code
1155
828
 
1156
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
829
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
1157
830
  @coupon = coupon
1158
831
  @discount = discount
1159
- @discount_end = discount_end
1160
832
  @promotion_code = promotion_code
1161
833
  end
1162
834
  end
@@ -1175,7 +847,7 @@ module Stripe
1175
847
  end
1176
848
  # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
1177
849
  attr_accessor :currency
1178
- # The ID of the product that this price will belong to.
850
+ # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
1179
851
  attr_accessor :product
1180
852
  # The recurring components of a price such as `interval` and `interval_count`.
1181
853
  attr_accessor :recurring
@@ -1202,20 +874,6 @@ module Stripe
1202
874
  @unit_amount_decimal = unit_amount_decimal
1203
875
  end
1204
876
  end
1205
-
1206
- class Trial < Stripe::RequestParams
1207
- # List of price IDs which, if present on the subscription following a paid trial, constitute opting-in to the paid trial. Currently only supports at most 1 price ID.
1208
- attr_accessor :converts_to
1209
- # Determines the type of trial for this item.
1210
- attr_accessor :type
1211
-
1212
- def initialize(converts_to: nil, type: nil)
1213
- @converts_to = converts_to
1214
- @type = type
1215
- end
1216
- end
1217
- # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. When updating, pass an empty string to remove previously-defined thresholds.
1218
- attr_accessor :billing_thresholds
1219
877
  # The coupons to redeem into discounts for the subscription item.
1220
878
  attr_accessor :discounts
1221
879
  # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to a configuration item. Metadata on a configuration item will update the underlying subscription item's `metadata` when the phase is entered, adding new keys and replacing existing keys. Individual keys in the subscription item's `metadata` can be unset by posting an empty value to them in the configuration item's `metadata`. To unset all keys in the subscription item's `metadata`, update the subscription item directly or unset every key individually from the configuration item's `metadata`.
@@ -1230,21 +888,16 @@ module Stripe
1230
888
  attr_accessor :quantity
1231
889
  # A list of [Tax Rate](https://stripe.com/docs/api/tax_rates) ids. These Tax Rates will override the [`default_tax_rates`](https://stripe.com/docs/api/subscriptions/create#create_subscription-default_tax_rates) on the Subscription. When updating, pass an empty string to remove previously-defined tax rates.
1232
890
  attr_accessor :tax_rates
1233
- # Options that configure the trial on the subscription item.
1234
- attr_accessor :trial
1235
891
 
1236
892
  def initialize(
1237
- billing_thresholds: nil,
1238
893
  discounts: nil,
1239
894
  metadata: nil,
1240
895
  plan: nil,
1241
896
  price: nil,
1242
897
  price_data: nil,
1243
898
  quantity: nil,
1244
- tax_rates: nil,
1245
- trial: nil
899
+ tax_rates: nil
1246
900
  )
1247
- @billing_thresholds = billing_thresholds
1248
901
  @discounts = discounts
1249
902
  @metadata = metadata
1250
903
  @plan = plan
@@ -1252,16 +905,6 @@ module Stripe
1252
905
  @price_data = price_data
1253
906
  @quantity = quantity
1254
907
  @tax_rates = tax_rates
1255
- @trial = trial
1256
- end
1257
- end
1258
-
1259
- class PauseCollection < Stripe::RequestParams
1260
- # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
1261
- attr_accessor :behavior
1262
-
1263
- def initialize(behavior: nil)
1264
- @behavior = behavior
1265
908
  end
1266
909
  end
1267
910
 
@@ -1276,23 +919,6 @@ module Stripe
1276
919
  @destination = destination
1277
920
  end
1278
921
  end
1279
-
1280
- class TrialSettings < Stripe::RequestParams
1281
- class EndBehavior < Stripe::RequestParams
1282
- # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
1283
- attr_accessor :prorate_up_front
1284
-
1285
- def initialize(prorate_up_front: nil)
1286
- @prorate_up_front = prorate_up_front
1287
- end
1288
- end
1289
- # Defines how the subscription should behave when a trial ends.
1290
- attr_accessor :end_behavior
1291
-
1292
- def initialize(end_behavior: nil)
1293
- @end_behavior = end_behavior
1294
- end
1295
- end
1296
922
  # A list of prices and quantities that will generate invoice items appended to the next invoice for this phase. You may pass up to 20 items.
1297
923
  attr_accessor :add_invoice_items
1298
924
  # A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the application owner's Stripe account. The request must be made by a platform account on a connected account in order to set an application fee percentage. For more information, see the application fees [documentation](https://stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions).
@@ -1301,12 +927,8 @@ module Stripe
1301
927
  attr_accessor :automatic_tax
1302
928
  # Can be set to `phase_start` to set the anchor to the start of the phase or `automatic` to automatically change it if needed. Cannot be set to `phase_start` if this phase specifies a trial. For more information, see the billing cycle [documentation](https://stripe.com/docs/billing/subscriptions/billing-cycle).
1303
929
  attr_accessor :billing_cycle_anchor
1304
- # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
1305
- attr_accessor :billing_thresholds
1306
930
  # Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay the underlying subscription at the end of each billing cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions and mark the subscription as `active`. Defaults to `charge_automatically` on creation.
1307
931
  attr_accessor :collection_method
1308
- # The ID of the coupon to apply to this phase of the subscription schedule. This field has been deprecated and will be removed in a future API version. Use `discounts` instead.
1309
- attr_accessor :coupon
1310
932
  # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
1311
933
  attr_accessor :currency
1312
934
  # ID of the default payment method for the subscription schedule. It must belong to the customer associated with the subscription schedule. If not set, invoices will use the default payment method in the customer's invoice settings.
@@ -1329,8 +951,6 @@ module Stripe
1329
951
  attr_accessor :metadata
1330
952
  # The account on behalf of which to charge, for each of the associated subscription's invoices.
1331
953
  attr_accessor :on_behalf_of
1332
- # If specified, payment collection for this subscription will be paused. Note that the subscription status will be unchanged and will not be updated to `paused`. Learn more about [pausing collection](https://stripe.com/docs/billing/subscriptions/pause-payment).
1333
- attr_accessor :pause_collection
1334
954
  # Whether the subscription schedule will create [prorations](https://stripe.com/docs/billing/subscriptions/prorations) when transitioning to this phase. The default value is `create_prorations`. This setting controls prorations when a phase is started asynchronously and it is persisted as a field on the phase. It's different from the request-level [proration_behavior](https://stripe.com/docs/api/subscription_schedules/update#update_subscription_schedule-proration_behavior) parameter which controls what happens if the update request affects the billing configuration of the current phase.
1335
955
  attr_accessor :proration_behavior
1336
956
  # The date at which this phase of the subscription schedule starts or `now`. Must be set on the first phase.
@@ -1339,21 +959,15 @@ module Stripe
1339
959
  attr_accessor :transfer_data
1340
960
  # If set to true the entire phase is counted as a trial and the customer will not be charged for any fees.
1341
961
  attr_accessor :trial
1342
- # Specify trial behavior when crossing phase boundaries
1343
- attr_accessor :trial_continuation
1344
962
  # Sets the phase to trialing from the start date to this date. Must be before the phase end date, can not be combined with `trial`
1345
963
  attr_accessor :trial_end
1346
- # Settings related to subscription trials.
1347
- attr_accessor :trial_settings
1348
964
 
1349
965
  def initialize(
1350
966
  add_invoice_items: nil,
1351
967
  application_fee_percent: nil,
1352
968
  automatic_tax: nil,
1353
969
  billing_cycle_anchor: nil,
1354
- billing_thresholds: nil,
1355
970
  collection_method: nil,
1356
- coupon: nil,
1357
971
  currency: nil,
1358
972
  default_payment_method: nil,
1359
973
  default_tax_rates: nil,
@@ -1365,22 +979,17 @@ module Stripe
1365
979
  iterations: nil,
1366
980
  metadata: nil,
1367
981
  on_behalf_of: nil,
1368
- pause_collection: nil,
1369
982
  proration_behavior: nil,
1370
983
  start_date: nil,
1371
984
  transfer_data: nil,
1372
985
  trial: nil,
1373
- trial_continuation: nil,
1374
- trial_end: nil,
1375
- trial_settings: nil
986
+ trial_end: nil
1376
987
  )
1377
988
  @add_invoice_items = add_invoice_items
1378
989
  @application_fee_percent = application_fee_percent
1379
990
  @automatic_tax = automatic_tax
1380
991
  @billing_cycle_anchor = billing_cycle_anchor
1381
- @billing_thresholds = billing_thresholds
1382
992
  @collection_method = collection_method
1383
- @coupon = coupon
1384
993
  @currency = currency
1385
994
  @default_payment_method = default_payment_method
1386
995
  @default_tax_rates = default_tax_rates
@@ -1392,30 +1001,13 @@ module Stripe
1392
1001
  @iterations = iterations
1393
1002
  @metadata = metadata
1394
1003
  @on_behalf_of = on_behalf_of
1395
- @pause_collection = pause_collection
1396
1004
  @proration_behavior = proration_behavior
1397
1005
  @start_date = start_date
1398
1006
  @transfer_data = transfer_data
1399
1007
  @trial = trial
1400
- @trial_continuation = trial_continuation
1401
1008
  @trial_end = trial_end
1402
- @trial_settings = trial_settings
1403
1009
  end
1404
1010
  end
1405
-
1406
- class Prebilling < Stripe::RequestParams
1407
- # This is used to determine the number of billing cycles to prebill.
1408
- attr_accessor :iterations
1409
- # Whether to cancel or preserve `prebilling` if the subscription is updated during the prebilled period. The default value is `reset`.
1410
- attr_accessor :update_behavior
1411
-
1412
- def initialize(iterations: nil, update_behavior: nil)
1413
- @iterations = iterations
1414
- @update_behavior = update_behavior
1415
- end
1416
- end
1417
- # Configures when the subscription schedule generates prorations for phase transitions. Possible values are `prorate_on_next_phase` or `prorate_up_front` with the default being `prorate_on_next_phase`. `prorate_on_next_phase` will apply phase changes and generate prorations at transition time. `prorate_up_front` will bill for all phases within the current billing cycle up front.
1418
- attr_accessor :billing_behavior
1419
1011
  # Object representing the subscription schedule's default settings.
1420
1012
  attr_accessor :default_settings
1421
1013
  # Behavior of the subscription schedule and underlying subscription when it ends. Possible values are `release` or `cancel` with the default being `release`. `release` will end the subscription schedule and keep the underlying subscription running. `cancel` will end the subscription schedule and cancel the underlying subscription.
@@ -1426,595 +1018,23 @@ module Stripe
1426
1018
  attr_accessor :metadata
1427
1019
  # List representing phases of the subscription schedule. Each phase can be customized to have different durations, plans, and coupons. If there are multiple phases, the `end_date` of one phase will always equal the `start_date` of the next phase. Note that past phases can be omitted.
1428
1020
  attr_accessor :phases
1429
- # If specified, the invoicing for the given billing cycle iterations will be processed now.
1430
- attr_accessor :prebilling
1431
1021
  # If the update changes the current phase, indicates whether the changes should be prorated. The default value is `create_prorations`.
1432
1022
  attr_accessor :proration_behavior
1433
1023
 
1434
1024
  def initialize(
1435
- billing_behavior: nil,
1436
1025
  default_settings: nil,
1437
1026
  end_behavior: nil,
1438
1027
  expand: nil,
1439
1028
  metadata: nil,
1440
1029
  phases: nil,
1441
- prebilling: nil,
1442
1030
  proration_behavior: nil
1443
1031
  )
1444
- @billing_behavior = billing_behavior
1445
1032
  @default_settings = default_settings
1446
1033
  @end_behavior = end_behavior
1447
1034
  @expand = expand
1448
1035
  @metadata = metadata
1449
1036
  @phases = phases
1450
- @prebilling = prebilling
1451
- @proration_behavior = proration_behavior
1452
- end
1453
- end
1454
-
1455
- class AmendParams < Stripe::RequestParams
1456
- class Amendment < Stripe::RequestParams
1457
- class AmendmentEnd < Stripe::RequestParams
1458
- class DiscountEnd < Stripe::RequestParams
1459
- # The ID of a specific discount.
1460
- attr_accessor :discount
1461
-
1462
- def initialize(discount: nil)
1463
- @discount = discount
1464
- end
1465
- end
1466
-
1467
- class Duration < Stripe::RequestParams
1468
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1469
- attr_accessor :interval
1470
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1471
- attr_accessor :interval_count
1472
-
1473
- def initialize(interval: nil, interval_count: nil)
1474
- @interval = interval
1475
- @interval_count = interval_count
1476
- end
1477
- end
1478
- # Use the `end` time of a given discount.
1479
- attr_accessor :discount_end
1480
- # Time span for the amendment starting from the `amendment_start`.
1481
- attr_accessor :duration
1482
- # A precise Unix timestamp for the amendment to end. Must be after the `amendment_start`.
1483
- attr_accessor :timestamp
1484
- # Select one of three ways to pass the `amendment_end`.
1485
- attr_accessor :type
1486
-
1487
- def initialize(discount_end: nil, duration: nil, timestamp: nil, type: nil)
1488
- @discount_end = discount_end
1489
- @duration = duration
1490
- @timestamp = timestamp
1491
- @type = type
1492
- end
1493
- end
1494
-
1495
- class AmendmentStart < Stripe::RequestParams
1496
- class AmendmentEnd < Stripe::RequestParams
1497
- # The position of the previous amendment in the `amendments` array after which this amendment should begin. Indexes start from 0 and must be less than the index of the current amendment in the array.
1498
- attr_accessor :index
1499
-
1500
- def initialize(index: nil)
1501
- @index = index
1502
- end
1503
- end
1504
-
1505
- class DiscountEnd < Stripe::RequestParams
1506
- # The ID of a specific discount.
1507
- attr_accessor :discount
1508
-
1509
- def initialize(discount: nil)
1510
- @discount = discount
1511
- end
1512
- end
1513
- # Details of another amendment in the same array, immediately after which this amendment should begin.
1514
- attr_accessor :amendment_end
1515
- # Use the `end` time of a given discount.
1516
- attr_accessor :discount_end
1517
- # A precise Unix timestamp for the amendment to start.
1518
- attr_accessor :timestamp
1519
- # Select one of three ways to pass the `amendment_start`.
1520
- attr_accessor :type
1521
-
1522
- def initialize(amendment_end: nil, discount_end: nil, timestamp: nil, type: nil)
1523
- @amendment_end = amendment_end
1524
- @discount_end = discount_end
1525
- @timestamp = timestamp
1526
- @type = type
1527
- end
1528
- end
1529
-
1530
- class DiscountAction < Stripe::RequestParams
1531
- class Add < Stripe::RequestParams
1532
- class DiscountEnd < Stripe::RequestParams
1533
- # The type of calculation made to determine when the discount ends.
1534
- attr_accessor :type
1535
-
1536
- def initialize(type: nil)
1537
- @type = type
1538
- end
1539
- end
1540
- # The coupon code to redeem.
1541
- attr_accessor :coupon
1542
- # An ID of an existing discount for a coupon that was already redeemed.
1543
- attr_accessor :discount
1544
- # Details to determine how long the discount should be applied for.
1545
- attr_accessor :discount_end
1546
- # The index, starting at 0, at which to position the new discount. When not supplied, Stripe defaults to appending the discount to the end of the `discounts` array.
1547
- attr_accessor :index
1548
- # The promotion code to redeem.
1549
- attr_accessor :promotion_code
1550
-
1551
- def initialize(
1552
- coupon: nil,
1553
- discount: nil,
1554
- discount_end: nil,
1555
- index: nil,
1556
- promotion_code: nil
1557
- )
1558
- @coupon = coupon
1559
- @discount = discount
1560
- @discount_end = discount_end
1561
- @index = index
1562
- @promotion_code = promotion_code
1563
- end
1564
- end
1565
-
1566
- class Remove < Stripe::RequestParams
1567
- # The coupon code to remove from the `discounts` array.
1568
- attr_accessor :coupon
1569
- # The ID of a discount to remove from the `discounts` array.
1570
- attr_accessor :discount
1571
- # The ID of a promotion code to remove from the `discounts` array.
1572
- attr_accessor :promotion_code
1573
-
1574
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
1575
- @coupon = coupon
1576
- @discount = discount
1577
- @promotion_code = promotion_code
1578
- end
1579
- end
1580
-
1581
- class Set < Stripe::RequestParams
1582
- # The coupon code to replace the `discounts` array with.
1583
- attr_accessor :coupon
1584
- # An ID of an existing discount to replace the `discounts` array with.
1585
- attr_accessor :discount
1586
- # An ID of an existing promotion code to replace the `discounts` array with.
1587
- attr_accessor :promotion_code
1588
-
1589
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
1590
- @coupon = coupon
1591
- @discount = discount
1592
- @promotion_code = promotion_code
1593
- end
1594
- end
1595
- # Details of the discount to add.
1596
- attr_accessor :add
1597
- # Details of the discount to remove.
1598
- attr_accessor :remove
1599
- # Details of the discount to replace the existing discounts with.
1600
- attr_accessor :set
1601
- # Determines the type of discount action.
1602
- attr_accessor :type
1603
-
1604
- def initialize(add: nil, remove: nil, set: nil, type: nil)
1605
- @add = add
1606
- @remove = remove
1607
- @set = set
1608
- @type = type
1609
- end
1610
- end
1611
-
1612
- class ItemAction < Stripe::RequestParams
1613
- class Add < Stripe::RequestParams
1614
- class Discount < Stripe::RequestParams
1615
- class DiscountEnd < Stripe::RequestParams
1616
- class Duration < Stripe::RequestParams
1617
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1618
- attr_accessor :interval
1619
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1620
- attr_accessor :interval_count
1621
-
1622
- def initialize(interval: nil, interval_count: nil)
1623
- @interval = interval
1624
- @interval_count = interval_count
1625
- end
1626
- end
1627
- # Time span for the redeemed discount.
1628
- attr_accessor :duration
1629
- # A precise Unix timestamp for the discount to end. Must be in the future.
1630
- attr_accessor :timestamp
1631
- # The type of calculation made to determine when the discount ends.
1632
- attr_accessor :type
1633
-
1634
- def initialize(duration: nil, timestamp: nil, type: nil)
1635
- @duration = duration
1636
- @timestamp = timestamp
1637
- @type = type
1638
- end
1639
- end
1640
- # ID of the coupon to create a new discount for.
1641
- attr_accessor :coupon
1642
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
1643
- attr_accessor :discount
1644
- # Details to determine how long the discount should be applied for.
1645
- attr_accessor :discount_end
1646
- # ID of the promotion code to create a new discount for.
1647
- attr_accessor :promotion_code
1648
-
1649
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
1650
- @coupon = coupon
1651
- @discount = discount
1652
- @discount_end = discount_end
1653
- @promotion_code = promotion_code
1654
- end
1655
- end
1656
-
1657
- class Trial < Stripe::RequestParams
1658
- # List of price IDs which, if present on the subscription following a paid trial, constitute opting-in to the paid trial. Currently only supports at most 1 price ID.
1659
- attr_accessor :converts_to
1660
- # Determines the type of trial for this item.
1661
- attr_accessor :type
1662
-
1663
- def initialize(converts_to: nil, type: nil)
1664
- @converts_to = converts_to
1665
- @type = type
1666
- end
1667
- end
1668
- # The discounts applied to the item. Subscription item discounts are applied before subscription discounts.
1669
- attr_accessor :discounts
1670
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
1671
- attr_accessor :metadata
1672
- # The ID of the price object.
1673
- attr_accessor :price
1674
- # Quantity for this item.
1675
- attr_accessor :quantity
1676
- # The tax rates that apply to this subscription item. When set, the `default_tax_rates` on the subscription do not apply to this `subscription_item`.
1677
- attr_accessor :tax_rates
1678
- # Options that configure the trial on the subscription item.
1679
- attr_accessor :trial
1680
-
1681
- def initialize(
1682
- discounts: nil,
1683
- metadata: nil,
1684
- price: nil,
1685
- quantity: nil,
1686
- tax_rates: nil,
1687
- trial: nil
1688
- )
1689
- @discounts = discounts
1690
- @metadata = metadata
1691
- @price = price
1692
- @quantity = quantity
1693
- @tax_rates = tax_rates
1694
- @trial = trial
1695
- end
1696
- end
1697
-
1698
- class Remove < Stripe::RequestParams
1699
- # ID of a price to remove.
1700
- attr_accessor :price
1701
-
1702
- def initialize(price: nil)
1703
- @price = price
1704
- end
1705
- end
1706
-
1707
- class Set < Stripe::RequestParams
1708
- class Discount < Stripe::RequestParams
1709
- class DiscountEnd < Stripe::RequestParams
1710
- class Duration < Stripe::RequestParams
1711
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1712
- attr_accessor :interval
1713
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1714
- attr_accessor :interval_count
1715
-
1716
- def initialize(interval: nil, interval_count: nil)
1717
- @interval = interval
1718
- @interval_count = interval_count
1719
- end
1720
- end
1721
- # Time span for the redeemed discount.
1722
- attr_accessor :duration
1723
- # A precise Unix timestamp for the discount to end. Must be in the future.
1724
- attr_accessor :timestamp
1725
- # The type of calculation made to determine when the discount ends.
1726
- attr_accessor :type
1727
-
1728
- def initialize(duration: nil, timestamp: nil, type: nil)
1729
- @duration = duration
1730
- @timestamp = timestamp
1731
- @type = type
1732
- end
1733
- end
1734
- # ID of the coupon to create a new discount for.
1735
- attr_accessor :coupon
1736
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
1737
- attr_accessor :discount
1738
- # Details to determine how long the discount should be applied for.
1739
- attr_accessor :discount_end
1740
- # ID of the promotion code to create a new discount for.
1741
- attr_accessor :promotion_code
1742
-
1743
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
1744
- @coupon = coupon
1745
- @discount = discount
1746
- @discount_end = discount_end
1747
- @promotion_code = promotion_code
1748
- end
1749
- end
1750
-
1751
- class Trial < Stripe::RequestParams
1752
- # List of price IDs which, if present on the subscription following a paid trial, constitute opting-in to the paid trial. Currently only supports at most 1 price ID.
1753
- attr_accessor :converts_to
1754
- # Determines the type of trial for this item.
1755
- attr_accessor :type
1756
-
1757
- def initialize(converts_to: nil, type: nil)
1758
- @converts_to = converts_to
1759
- @type = type
1760
- end
1761
- end
1762
- # If an item with the `price` already exists, passing this will override the `discounts` array on the subscription item that matches that price. Otherwise, the `items` array is cleared and a single new item is added with the supplied `discounts`.
1763
- attr_accessor :discounts
1764
- # If an item with the `price` already exists, passing this will override the `metadata` on the subscription item that matches that price. Otherwise, the `items` array is cleared and a single new item is added with the supplied `metadata`.
1765
- attr_accessor :metadata
1766
- # The ID of the price object.
1767
- attr_accessor :price
1768
- # If an item with the `price` already exists, passing this will override the quantity on the subscription item that matches that price. Otherwise, the `items` array is cleared and a single new item is added with the supplied `quantity`.
1769
- attr_accessor :quantity
1770
- # If an item with the `price` already exists, passing this will override the `tax_rates` array on the subscription item that matches that price. Otherwise, the `items` array is cleared and a single new item is added with the supplied `tax_rates`.
1771
- attr_accessor :tax_rates
1772
- # If an item with the `price` already exists, passing this will override the `trial` configuration on the subscription item that matches that price. Otherwise, the `items` array is cleared and a single new item is added with the supplied `trial`.
1773
- attr_accessor :trial
1774
-
1775
- def initialize(
1776
- discounts: nil,
1777
- metadata: nil,
1778
- price: nil,
1779
- quantity: nil,
1780
- tax_rates: nil,
1781
- trial: nil
1782
- )
1783
- @discounts = discounts
1784
- @metadata = metadata
1785
- @price = price
1786
- @quantity = quantity
1787
- @tax_rates = tax_rates
1788
- @trial = trial
1789
- end
1790
- end
1791
- # Details of the subscription item to add. If an item with the same `price` exists, it will be replaced by this new item. Otherwise, it adds the new item.
1792
- attr_accessor :add
1793
- # Details of the subscription item to remove.
1794
- attr_accessor :remove
1795
- # Details of the subscription item to replace the existing items with. If an item with the `set[price]` already exists, the `items` array is not cleared. Instead, all of the other `set` properties that are passed in this request will replace the existing values for the configuration item.
1796
- attr_accessor :set
1797
- # Determines the type of item action.
1798
- attr_accessor :type
1799
-
1800
- def initialize(add: nil, remove: nil, set: nil, type: nil)
1801
- @add = add
1802
- @remove = remove
1803
- @set = set
1804
- @type = type
1805
- end
1806
- end
1807
-
1808
- class MetadataAction < Stripe::RequestParams
1809
- # Key-value pairs to add to schedule phase metadata. These values will merge with existing schedule phase metadata.
1810
- attr_accessor :add
1811
- # Keys to remove from schedule phase metadata.
1812
- attr_accessor :remove
1813
- # Key-value pairs to set as schedule phase metadata. Existing schedule phase metadata will be overwritten.
1814
- attr_accessor :set
1815
- # Select one of three ways to update phase-level `metadata` on subscription schedules.
1816
- attr_accessor :type
1817
-
1818
- def initialize(add: nil, remove: nil, set: nil, type: nil)
1819
- @add = add
1820
- @remove = remove
1821
- @set = set
1822
- @type = type
1823
- end
1824
- end
1825
-
1826
- class SetPauseCollection < Stripe::RequestParams
1827
- class Set < Stripe::RequestParams
1828
- # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
1829
- attr_accessor :behavior
1830
-
1831
- def initialize(behavior: nil)
1832
- @behavior = behavior
1833
- end
1834
- end
1835
- # Details of the pause_collection behavior to apply to the amendment.
1836
- attr_accessor :set
1837
- # Determines the type of the pause_collection amendment.
1838
- attr_accessor :type
1839
-
1840
- def initialize(set: nil, type: nil)
1841
- @set = set
1842
- @type = type
1843
- end
1844
- end
1845
-
1846
- class TrialSettings < Stripe::RequestParams
1847
- class EndBehavior < Stripe::RequestParams
1848
- # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
1849
- attr_accessor :prorate_up_front
1850
-
1851
- def initialize(prorate_up_front: nil)
1852
- @prorate_up_front = prorate_up_front
1853
- end
1854
- end
1855
- # Defines how the subscription should behave when a trial ends.
1856
- attr_accessor :end_behavior
1857
-
1858
- def initialize(end_behavior: nil)
1859
- @end_behavior = end_behavior
1860
- end
1861
- end
1862
- # Details to identify the end of the time range modified by the proposed change. If not supplied, the amendment is considered a point-in-time operation that only affects the exact timestamp at `amendment_start`, and a restricted set of attributes is supported on the amendment.
1863
- attr_accessor :amendment_end
1864
- # Details to identify the earliest timestamp where the proposed change should take effect.
1865
- attr_accessor :amendment_start
1866
- # For point-in-time amendments (having no `amendment_end`), this attribute lets you set or remove whether the subscription's billing cycle anchor is reset at the `amendment_start` timestamp.For time-span based amendments (having both `amendment_start` and `amendment_end`), the only value valid is `automatic`, which removes any previously configured billing cycle anchor resets scheduled to occur during the window of time spanned by the amendment.
1867
- attr_accessor :billing_cycle_anchor
1868
- # Changes to the coupons being redeemed or discounts being applied during the amendment time span.
1869
- attr_accessor :discount_actions
1870
- # Changes to the subscription items during the amendment time span.
1871
- attr_accessor :item_actions
1872
- # Instructions for how to modify phase metadata
1873
- attr_accessor :metadata_actions
1874
- # Changes to how Stripe handles prorations during the amendment time span. Affects if and how prorations are created when a future phase starts. In cases where the amendment changes the currently active phase, it is used to determine whether or how to prorate now, at the time of the request. Also supported as a point-in-time operation when `amendment_end` is `null`.
1875
- attr_accessor :proration_behavior
1876
- # Defines how to pause collection for the underlying subscription throughout the duration of the amendment.
1877
- attr_accessor :set_pause_collection
1878
- # Ends the subscription schedule early as dictated by either the accompanying amendment's start or end.
1879
- attr_accessor :set_schedule_end
1880
- # Settings related to subscription trials.
1881
- attr_accessor :trial_settings
1882
-
1883
- def initialize(
1884
- amendment_end: nil,
1885
- amendment_start: nil,
1886
- billing_cycle_anchor: nil,
1887
- discount_actions: nil,
1888
- item_actions: nil,
1889
- metadata_actions: nil,
1890
- proration_behavior: nil,
1891
- set_pause_collection: nil,
1892
- set_schedule_end: nil,
1893
- trial_settings: nil
1894
- )
1895
- @amendment_end = amendment_end
1896
- @amendment_start = amendment_start
1897
- @billing_cycle_anchor = billing_cycle_anchor
1898
- @discount_actions = discount_actions
1899
- @item_actions = item_actions
1900
- @metadata_actions = metadata_actions
1901
- @proration_behavior = proration_behavior
1902
- @set_pause_collection = set_pause_collection
1903
- @set_schedule_end = set_schedule_end
1904
- @trial_settings = trial_settings
1905
- end
1906
- end
1907
-
1908
- class Prebilling < Stripe::RequestParams
1909
- class BillFrom < Stripe::RequestParams
1910
- class AmendmentStart < Stripe::RequestParams
1911
- # The position of the amendment in the `amendments` array with which prebilling should begin. Indexes start from 0 and must be less than the total number of supplied amendments.
1912
- attr_accessor :index
1913
-
1914
- def initialize(index: nil)
1915
- @index = index
1916
- end
1917
- end
1918
- # Start the prebilled period when a specified amendment begins.
1919
- attr_accessor :amendment_start
1920
- # Start the prebilled period at a precise integer timestamp, starting from the Unix epoch.
1921
- attr_accessor :timestamp
1922
- # Select one of several ways to pass the `bill_from` value.
1923
- attr_accessor :type
1924
-
1925
- def initialize(amendment_start: nil, timestamp: nil, type: nil)
1926
- @amendment_start = amendment_start
1927
- @timestamp = timestamp
1928
- @type = type
1929
- end
1930
- end
1931
-
1932
- class BillUntil < Stripe::RequestParams
1933
- class AmendmentEnd < Stripe::RequestParams
1934
- # The position of the amendment in the `amendments` array at which prebilling should end. Indexes start from 0 and must be less than the total number of supplied amendments.
1935
- attr_accessor :index
1936
-
1937
- def initialize(index: nil)
1938
- @index = index
1939
- end
1940
- end
1941
-
1942
- class Duration < Stripe::RequestParams
1943
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1944
- attr_accessor :interval
1945
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1946
- attr_accessor :interval_count
1947
-
1948
- def initialize(interval: nil, interval_count: nil)
1949
- @interval = interval
1950
- @interval_count = interval_count
1951
- end
1952
- end
1953
- # End the prebilled period when a specified amendment ends.
1954
- attr_accessor :amendment_end
1955
- # Time span for prebilling, starting from `bill_from`.
1956
- attr_accessor :duration
1957
- # End the prebilled period at a precise integer timestamp, starting from the Unix epoch.
1958
- attr_accessor :timestamp
1959
- # Select one of several ways to pass the `bill_until` value.
1960
- attr_accessor :type
1961
-
1962
- def initialize(amendment_end: nil, duration: nil, timestamp: nil, type: nil)
1963
- @amendment_end = amendment_end
1964
- @duration = duration
1965
- @timestamp = timestamp
1966
- @type = type
1967
- end
1968
- end
1969
- # The beginning of the prebilled time period. The default value is `now`.
1970
- attr_accessor :bill_from
1971
- # The end of the prebilled time period.
1972
- attr_accessor :bill_until
1973
- # When the prebilling invoice should be created. The default value is `now`.
1974
- attr_accessor :invoice_at
1975
- # Whether to cancel or preserve `prebilling` if the subscription is updated during the prebilled period. The default value is `reset`.
1976
- attr_accessor :update_behavior
1977
-
1978
- def initialize(bill_from: nil, bill_until: nil, invoice_at: nil, update_behavior: nil)
1979
- @bill_from = bill_from
1980
- @bill_until = bill_until
1981
- @invoice_at = invoice_at
1982
- @update_behavior = update_behavior
1983
- end
1984
- end
1985
-
1986
- class ScheduleSettings < Stripe::RequestParams
1987
- # Behavior of the subscription schedule and underlying subscription when it ends.
1988
- attr_accessor :end_behavior
1989
-
1990
- def initialize(end_behavior: nil)
1991
- @end_behavior = end_behavior
1992
- end
1993
- end
1994
- # Changes to apply to the phases of the subscription schedule, in the order provided.
1995
- attr_accessor :amendments
1996
- # Specifies which fields in the response should be expanded.
1997
- attr_accessor :expand
1998
- # Provide any time periods to bill in advance.
1999
- attr_accessor :prebilling
2000
- # In cases where the amendment changes the currently active phase,
2001
- # specifies if and how to prorate at the time of the request.
2002
- attr_accessor :proration_behavior
2003
- # Changes to apply to the subscription schedule.
2004
- attr_accessor :schedule_settings
2005
-
2006
- def initialize(
2007
- amendments: nil,
2008
- expand: nil,
2009
- prebilling: nil,
2010
- proration_behavior: nil,
2011
- schedule_settings: nil
2012
- )
2013
- @amendments = amendments
2014
- @expand = expand
2015
- @prebilling = prebilling
2016
1037
  @proration_behavior = proration_behavior
2017
- @schedule_settings = schedule_settings
2018
1038
  end
2019
1039
  end
2020
1040
 
@@ -2045,17 +1065,6 @@ module Stripe
2045
1065
  end
2046
1066
  end
2047
1067
 
2048
- # Amends an existing subscription schedule.
2049
- def amend(schedule, params = {}, opts = {})
2050
- request(
2051
- method: :post,
2052
- path: format("/v1/subscription_schedules/%<schedule>s/amend", { schedule: CGI.escape(schedule) }),
2053
- params: params,
2054
- opts: opts,
2055
- base_address: :api
2056
- )
2057
- end
2058
-
2059
1068
  # Cancels a subscription schedule and its associated subscription immediately (if the subscription schedule has an active subscription). A subscription schedule can only be canceled if its status is not_started or active.
2060
1069
  def cancel(schedule, params = {}, opts = {})
2061
1070
  request(