stripe 15.2.0.pre.beta.1 → 15.2.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 (648) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +718 -1556
  3. data/CONTRIBUTING.md +25 -0
  4. data/OPENAPI_VERSION +1 -1
  5. data/README.md +10 -7
  6. data/VERSION +1 -1
  7. data/lib/stripe/api_requestor.rb +0 -28
  8. data/lib/stripe/api_version.rb +1 -1
  9. data/lib/stripe/errors.rb +0 -54
  10. data/lib/stripe/event_types.rb +0 -89
  11. data/lib/stripe/object_types.rb +0 -52
  12. data/lib/stripe/resources/account.rb +32 -657
  13. data/lib/stripe/resources/account_session.rb +59 -253
  14. data/lib/stripe/resources/apple_pay_domain.rb +1 -2
  15. data/lib/stripe/resources/balance.rb +42 -0
  16. data/lib/stripe/resources/balance_transaction.rb +2 -0
  17. data/lib/stripe/resources/bank_account.rb +2 -2
  18. data/lib/stripe/resources/billing/credit_balance_summary.rb +0 -2
  19. data/lib/stripe/resources/billing/credit_balance_transaction.rb +0 -4
  20. data/lib/stripe/resources/billing/credit_grant.rb +0 -10
  21. data/lib/stripe/resources/billing_portal/session.rb +1 -7
  22. data/lib/stripe/resources/capability.rb +1 -1
  23. data/lib/stripe/resources/card.rb +0 -2
  24. data/lib/stripe/resources/cash_balance.rb +0 -2
  25. data/lib/stripe/resources/charge.rb +13 -1475
  26. data/lib/stripe/resources/checkout/session.rb +21 -333
  27. data/lib/stripe/resources/confirmation_token.rb +33 -263
  28. data/lib/stripe/resources/country_spec.rb +1 -1
  29. data/lib/stripe/resources/coupon.rb +2 -32
  30. data/lib/stripe/resources/credit_note.rb +10 -17
  31. data/lib/stripe/resources/credit_note_line_item.rb +0 -9
  32. data/lib/stripe/resources/customer.rb +2 -6
  33. data/lib/stripe/resources/customer_balance_transaction.rb +0 -2
  34. data/lib/stripe/resources/customer_cash_balance_transaction.rb +0 -2
  35. data/lib/stripe/resources/customer_session.rb +4 -9
  36. data/lib/stripe/resources/discount.rb +0 -2
  37. data/lib/stripe/resources/dispute.rb +2 -2
  38. data/lib/stripe/resources/event.rb +1 -32
  39. data/lib/stripe/resources/file.rb +1 -1
  40. data/lib/stripe/resources/financial_connections/account.rb +1 -20
  41. data/lib/stripe/resources/financial_connections/session.rb +2 -62
  42. data/lib/stripe/resources/identity/verification_report.rb +6 -0
  43. data/lib/stripe/resources/identity/verification_session.rb +17 -21
  44. data/lib/stripe/resources/invoice.rb +79 -1106
  45. data/lib/stripe/resources/invoice_item.rb +4 -81
  46. data/lib/stripe/resources/invoice_line_item.rb +2 -56
  47. data/lib/stripe/resources/invoice_payment.rb +62 -4
  48. data/lib/stripe/resources/issuing/authorization.rb +8 -8
  49. data/lib/stripe/resources/issuing/card.rb +1 -1
  50. data/lib/stripe/resources/issuing/cardholder.rb +1 -2
  51. data/lib/stripe/resources/issuing/dispute.rb +3 -3
  52. data/lib/stripe/resources/issuing/transaction.rb +0 -6
  53. data/lib/stripe/resources/line_item.rb +0 -37
  54. data/lib/stripe/resources/mandate.rb +0 -24
  55. data/lib/stripe/resources/payment_intent.rb +1912 -6840
  56. data/lib/stripe/resources/payment_method.rb +47 -301
  57. data/lib/stripe/resources/payment_method_configuration.rb +112 -112
  58. data/lib/stripe/resources/payment_method_domain.rb +2 -2
  59. data/lib/stripe/resources/payout.rb +4 -10
  60. data/lib/stripe/resources/person.rb +2 -2
  61. data/lib/stripe/resources/plan.rb +2 -3
  62. data/lib/stripe/resources/price.rb +1 -31
  63. data/lib/stripe/resources/product.rb +1 -61
  64. data/lib/stripe/resources/promotion_code.rb +0 -10
  65. data/lib/stripe/resources/quote.rb +6 -2046
  66. data/lib/stripe/resources/radar/value_list.rb +1 -2
  67. data/lib/stripe/resources/radar/value_list_item.rb +1 -2
  68. data/lib/stripe/resources/refund.rb +6 -10
  69. data/lib/stripe/resources/reversal.rb +1 -1
  70. data/lib/stripe/resources/review.rb +1 -1
  71. data/lib/stripe/resources/setup_attempt.rb +0 -21
  72. data/lib/stripe/resources/setup_intent.rb +120 -877
  73. data/lib/stripe/resources/source.rb +1 -30
  74. data/lib/stripe/resources/subscription.rb +97 -326
  75. data/lib/stripe/resources/subscription_item.rb +32 -80
  76. data/lib/stripe/resources/subscription_schedule.rb +127 -1015
  77. data/lib/stripe/resources/tax/calculation.rb +4 -0
  78. data/lib/stripe/resources/tax/calculation_line_item.rb +2 -0
  79. data/lib/stripe/resources/tax/registration.rb +1 -1
  80. data/lib/stripe/resources/tax_id.rb +3 -14
  81. data/lib/stripe/resources/tax_rate.rb +2 -2
  82. data/lib/stripe/resources/terminal/configuration.rb +1 -2
  83. data/lib/stripe/resources/terminal/location.rb +2 -3
  84. data/lib/stripe/resources/terminal/reader.rb +8 -142
  85. data/lib/stripe/resources/test_helpers/test_clock.rb +1 -2
  86. data/lib/stripe/resources/token.rb +2 -2
  87. data/lib/stripe/resources/transfer.rb +1 -7
  88. data/lib/stripe/resources/treasury/financial_account.rb +3 -22
  89. data/lib/stripe/resources/treasury/financial_account_features.rb +0 -2
  90. data/lib/stripe/resources/treasury/outbound_transfer.rb +0 -37
  91. data/lib/stripe/resources/treasury/received_credit.rb +1 -38
  92. data/lib/stripe/resources/treasury/received_debit.rb +1 -40
  93. data/lib/stripe/resources/webhook_endpoint.rb +1 -2
  94. data/lib/stripe/resources.rb +0 -99
  95. data/lib/stripe/services/account_external_account_service.rb +2 -3
  96. data/lib/stripe/services/account_login_link_service.rb +1 -1
  97. data/lib/stripe/services/account_person_service.rb +1 -2
  98. data/lib/stripe/services/account_service.rb +23 -559
  99. data/lib/stripe/services/account_session_service.rb +29 -229
  100. data/lib/stripe/services/apple_pay_domain_service.rb +1 -2
  101. data/lib/stripe/services/balance_service.rb +1 -1
  102. data/lib/stripe/services/billing/credit_balance_summary_service.rb +1 -4
  103. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +0 -4
  104. data/lib/stripe/services/billing/credit_grant_service.rb +0 -8
  105. data/lib/stripe/services/billing_portal/session_service.rb +0 -4
  106. data/lib/stripe/services/charge_service.rb +4 -1354
  107. data/lib/stripe/services/checkout/session_service.rb +13 -250
  108. data/lib/stripe/services/coupon_service.rb +2 -19
  109. data/lib/stripe/services/credit_note_service.rb +7 -12
  110. data/lib/stripe/services/customer_balance_transaction_service.rb +3 -3
  111. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +2 -2
  112. data/lib/stripe/services/customer_payment_source_service.rb +1 -1
  113. data/lib/stripe/services/customer_service.rb +3 -5
  114. data/lib/stripe/services/customer_session_service.rb +1 -4
  115. data/lib/stripe/services/customer_tax_id_service.rb +1 -2
  116. data/lib/stripe/services/dispute_service.rb +1 -1
  117. data/lib/stripe/services/file_service.rb +1 -1
  118. data/lib/stripe/services/financial_connections/account_service.rb +2 -7
  119. data/lib/stripe/services/financial_connections/session_service.rb +2 -34
  120. data/lib/stripe/services/financial_connections_service.rb +1 -2
  121. data/lib/stripe/services/identity/verification_session_service.rb +5 -13
  122. data/lib/stripe/services/invoice_item_service.rb +3 -76
  123. data/lib/stripe/services/invoice_line_item_service.rb +1 -33
  124. data/lib/stripe/services/invoice_payment_service.rb +83 -0
  125. data/lib/stripe/services/invoice_service.rb +74 -1049
  126. data/lib/stripe/services/issuing/authorization_service.rb +4 -4
  127. data/lib/stripe/services/issuing/card_service.rb +1 -1
  128. data/lib/stripe/services/issuing/cardholder_service.rb +1 -2
  129. data/lib/stripe/services/issuing/dispute_service.rb +2 -2
  130. data/lib/stripe/services/issuing/transaction_service.rb +0 -4
  131. data/lib/stripe/services/issuing_service.rb +1 -5
  132. data/lib/stripe/services/payment_intent_service.rb +439 -4928
  133. data/lib/stripe/services/payment_method_configuration_service.rb +82 -82
  134. data/lib/stripe/services/payment_method_domain_service.rb +1 -1
  135. data/lib/stripe/services/payment_method_service.rb +44 -226
  136. data/lib/stripe/services/payout_service.rb +2 -6
  137. data/lib/stripe/services/plan_service.rb +2 -3
  138. data/lib/stripe/services/price_service.rb +2 -21
  139. data/lib/stripe/services/product_feature_service.rb +1 -2
  140. data/lib/stripe/services/product_service.rb +2 -41
  141. data/lib/stripe/services/promotion_code_service.rb +1 -9
  142. data/lib/stripe/services/quote_service.rb +7 -1730
  143. data/lib/stripe/services/radar/early_fraud_warning_service.rb +1 -1
  144. data/lib/stripe/services/radar/value_list_item_service.rb +1 -2
  145. data/lib/stripe/services/radar/value_list_service.rb +1 -2
  146. data/lib/stripe/services/setup_intent_service.rb +119 -836
  147. data/lib/stripe/services/source_service.rb +1 -1
  148. data/lib/stripe/services/subscription_item_service.rb +27 -73
  149. data/lib/stripe/services/subscription_schedule_service.rb +101 -916
  150. data/lib/stripe/services/subscription_service.rb +85 -282
  151. data/lib/stripe/services/tax/calculation_service.rb +4 -0
  152. data/lib/stripe/services/tax/registration_service.rb +1 -1
  153. data/lib/stripe/services/tax_id_service.rb +3 -10
  154. data/lib/stripe/services/tax_service.rb +1 -3
  155. data/lib/stripe/services/terminal/configuration_service.rb +1 -2
  156. data/lib/stripe/services/terminal/location_service.rb +2 -3
  157. data/lib/stripe/services/terminal/reader_service.rb +5 -81
  158. data/lib/stripe/services/terminal_service.rb +1 -2
  159. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +33 -190
  160. data/lib/stripe/services/test_helpers/test_clock_service.rb +1 -2
  161. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +1 -25
  162. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +1 -25
  163. data/lib/stripe/services/token_service.rb +1 -1
  164. data/lib/stripe/services/transfer_service.rb +1 -5
  165. data/lib/stripe/services/treasury/financial_account_features_service.rb +1 -4
  166. data/lib/stripe/services/treasury/financial_account_service.rb +2 -16
  167. data/lib/stripe/services/treasury/outbound_transfer_service.rb +0 -24
  168. data/lib/stripe/services/v1_services.rb +2 -12
  169. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +1 -2
  170. data/lib/stripe/services/v2/core/event_destination_service.rb +4 -10
  171. data/lib/stripe/services/v2/core/event_service.rb +1 -2
  172. data/lib/stripe/services/v2/core_service.rb +1 -4
  173. data/lib/stripe/services/v2_services.rb +2 -4
  174. data/lib/stripe/services/webhook_endpoint_service.rb +1 -2
  175. data/lib/stripe/services.rb +1 -54
  176. data/lib/stripe/stripe_configuration.rb +1 -3
  177. data/lib/stripe/stripe_object.rb +1 -1
  178. data/lib/stripe/util.rb +1 -7
  179. data/lib/stripe/version.rb +1 -1
  180. data/lib/stripe.rb +0 -53
  181. data/rbi/stripe/resources/account.rbi +4926 -0
  182. data/rbi/stripe/resources/account_link.rbi +74 -0
  183. data/rbi/stripe/resources/account_session.rbi +1013 -0
  184. data/rbi/stripe/resources/apple_pay_domain.rbi +88 -0
  185. data/rbi/stripe/resources/application.rbi +20 -0
  186. data/rbi/stripe/resources/application_fee.rbi +118 -0
  187. data/rbi/stripe/resources/application_fee_refund.rbi +37 -0
  188. data/rbi/stripe/resources/apps/secret.rbi +195 -0
  189. data/rbi/stripe/resources/balance.rbi +235 -0
  190. data/rbi/stripe/resources/balance_transaction.rbi +147 -0
  191. data/rbi/stripe/resources/bank_account.rbi +127 -0
  192. data/rbi/stripe/resources/billing/alert.rbi +201 -0
  193. data/rbi/stripe/resources/billing/alert_triggered.rbi +28 -0
  194. data/rbi/stripe/resources/billing/credit_balance_summary.rbi +63 -0
  195. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +147 -0
  196. data/rbi/stripe/resources/billing/credit_grant.rbi +291 -0
  197. data/rbi/stripe/resources/billing/meter.rbi +226 -0
  198. data/rbi/stripe/resources/billing/meter_event.rbi +64 -0
  199. data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +64 -0
  200. data/rbi/stripe/resources/billing/meter_event_summary.rbi +35 -0
  201. data/rbi/stripe/resources/billing_portal/configuration.rbi +645 -0
  202. data/rbi/stripe/resources/billing_portal/session.rbi +345 -0
  203. data/rbi/stripe/resources/capability.rbi +125 -0
  204. data/rbi/stripe/resources/card.rbi +125 -0
  205. data/rbi/stripe/resources/cash_balance.rbi +32 -0
  206. data/rbi/stripe/resources/charge.rbi +2069 -0
  207. data/rbi/stripe/resources/checkout/session.rbi +4004 -0
  208. data/rbi/stripe/resources/climate/order.rbi +245 -0
  209. data/rbi/stripe/resources/climate/product.rbi +75 -0
  210. data/rbi/stripe/resources/climate/supplier.rbi +72 -0
  211. data/rbi/stripe/resources/confirmation_token.rbi +1807 -0
  212. data/rbi/stripe/resources/connect_collection_transfer.rbi +26 -0
  213. data/rbi/stripe/resources/country_spec.rbi +85 -0
  214. data/rbi/stripe/resources/coupon.rbi +250 -0
  215. data/rbi/stripe/resources/credit_note.rbi +752 -0
  216. data/rbi/stripe/resources/credit_note_line_item.rbi +101 -0
  217. data/rbi/stripe/resources/customer.rbi +1005 -0
  218. data/rbi/stripe/resources/customer_balance_transaction.rbi +56 -0
  219. data/rbi/stripe/resources/customer_cash_balance_transaction.rbi +151 -0
  220. data/rbi/stripe/resources/customer_session.rbi +200 -0
  221. data/rbi/stripe/resources/discount.rbi +53 -0
  222. data/rbi/stripe/resources/dispute.rbi +761 -0
  223. data/rbi/stripe/resources/entitlements/active_entitlement.rbi +58 -0
  224. data/rbi/stripe/resources/entitlements/active_entitlement_summary.rbi +23 -0
  225. data/rbi/stripe/resources/entitlements/feature.rbi +117 -0
  226. data/rbi/stripe/resources/ephemeral_key.rbi +44 -0
  227. data/rbi/stripe/resources/event.rbi +149 -0
  228. data/rbi/stripe/resources/exchange_rate.rbi +66 -0
  229. data/rbi/stripe/resources/file.rbi +143 -0
  230. data/rbi/stripe/resources/file_link.rbi +141 -0
  231. data/rbi/stripe/resources/financial_connections/account.rbi +339 -0
  232. data/rbi/stripe/resources/financial_connections/account_owner.rbi +35 -0
  233. data/rbi/stripe/resources/financial_connections/account_ownership.rbi +23 -0
  234. data/rbi/stripe/resources/financial_connections/session.rbi +123 -0
  235. data/rbi/stripe/resources/financial_connections/transaction.rbi +124 -0
  236. data/rbi/stripe/resources/forwarding/request.rbi +216 -0
  237. data/rbi/stripe/resources/funding_instructions.rbi +437 -0
  238. data/rbi/stripe/resources/identity/verification_report.rbi +360 -0
  239. data/rbi/stripe/resources/identity/verification_session.rbi +526 -0
  240. data/rbi/stripe/resources/invoice.rbi +3812 -0
  241. data/rbi/stripe/resources/invoice_item.rbi +473 -0
  242. data/rbi/stripe/resources/invoice_line_item.rbi +432 -0
  243. data/rbi/stripe/resources/invoice_payment.rbi +121 -0
  244. data/rbi/stripe/resources/invoice_rendering_template.rbi +104 -0
  245. data/rbi/stripe/resources/issuing/authorization.rbi +1283 -0
  246. data/rbi/stripe/resources/issuing/card.rbi +741 -0
  247. data/rbi/stripe/resources/issuing/cardholder.rbi +744 -0
  248. data/rbi/stripe/resources/issuing/dispute.rbi +913 -0
  249. data/rbi/stripe/resources/issuing/personalization_design.rbi +338 -0
  250. data/rbi/stripe/resources/issuing/physical_bundle.rbi +79 -0
  251. data/rbi/stripe/resources/issuing/token.rbi +226 -0
  252. data/rbi/stripe/resources/issuing/transaction.rbi +1061 -0
  253. data/rbi/stripe/resources/line_item.rbi +72 -0
  254. data/rbi/stripe/resources/login_link.rbi +19 -0
  255. data/rbi/stripe/resources/mandate.rbi +187 -0
  256. data/rbi/stripe/resources/payment_intent.rbi +9647 -0
  257. data/rbi/stripe/resources/payment_link.rbi +1801 -0
  258. data/rbi/stripe/resources/payment_method.rbi +1761 -0
  259. data/rbi/stripe/resources/payment_method_configuration.rbi +3550 -0
  260. data/rbi/stripe/resources/payment_method_domain.rbi +228 -0
  261. data/rbi/stripe/resources/payout.rbi +300 -0
  262. data/rbi/stripe/resources/person.rbi +401 -0
  263. data/rbi/stripe/resources/plan.rbi +371 -0
  264. data/rbi/stripe/resources/price.rbi +694 -0
  265. data/rbi/stripe/resources/product.rbi +555 -0
  266. data/rbi/stripe/resources/product_feature.rbi +26 -0
  267. data/rbi/stripe/resources/promotion_code.rbi +261 -0
  268. data/rbi/stripe/resources/quote.rbi +1126 -0
  269. data/rbi/stripe/resources/radar/early_fraud_warning.rbi +98 -0
  270. data/rbi/stripe/resources/radar/value_list.rbi +168 -0
  271. data/rbi/stripe/resources/radar/value_list_item.rbi +129 -0
  272. data/rbi/stripe/resources/refund.rbi +523 -0
  273. data/rbi/stripe/resources/reporting/report_run.rbi +191 -0
  274. data/rbi/stripe/resources/reporting/report_type.rbi +57 -0
  275. data/rbi/stripe/resources/reserve_transaction.rbi +23 -0
  276. data/rbi/stripe/resources/reversal.rbi +51 -0
  277. data/rbi/stripe/resources/review.rbi +154 -0
  278. data/rbi/stripe/resources/setup_attempt.rbi +477 -0
  279. data/rbi/stripe/resources/setup_intent.rbi +3655 -0
  280. data/rbi/stripe/resources/shipping_rate.rbi +305 -0
  281. data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +75 -0
  282. data/rbi/stripe/resources/source.rbi +1496 -0
  283. data/rbi/stripe/resources/source_mandate_notification.rbi +77 -0
  284. data/rbi/stripe/resources/source_transaction.rbi +127 -0
  285. data/rbi/stripe/resources/subscription.rbi +2027 -0
  286. data/rbi/stripe/resources/subscription_item.rbi +404 -0
  287. data/rbi/stripe/resources/subscription_schedule.rbi +1623 -0
  288. data/rbi/stripe/resources/tax/calculation.rbi +478 -0
  289. data/rbi/stripe/resources/tax/calculation_line_item.rbi +91 -0
  290. data/rbi/stripe/resources/tax/registration.rbi +2713 -0
  291. data/rbi/stripe/resources/tax/settings.rbi +141 -0
  292. data/rbi/stripe/resources/tax/transaction.rbi +351 -0
  293. data/rbi/stripe/resources/tax/transaction_line_item.rbi +54 -0
  294. data/rbi/stripe/resources/tax_code.rbi +44 -0
  295. data/rbi/stripe/resources/tax_deducted_at_source.rbi +23 -0
  296. data/rbi/stripe/resources/tax_id.rbi +165 -0
  297. data/rbi/stripe/resources/tax_rate.rbi +239 -0
  298. data/rbi/stripe/resources/terminal/configuration.rbi +1386 -0
  299. data/rbi/stripe/resources/terminal/connection_token.rbi +37 -0
  300. data/rbi/stripe/resources/terminal/location.rbi +222 -0
  301. data/rbi/stripe/resources/terminal/reader.rbi +847 -0
  302. data/rbi/stripe/resources/test_helpers/test_clock.rbi +132 -0
  303. data/rbi/stripe/resources/token.rbi +1283 -0
  304. data/rbi/stripe/resources/topup.rbi +222 -0
  305. data/rbi/stripe/resources/transfer.rbi +199 -0
  306. data/rbi/stripe/resources/treasury/credit_reversal.rbi +119 -0
  307. data/rbi/stripe/resources/treasury/debit_reversal.rbi +131 -0
  308. data/rbi/stripe/resources/treasury/financial_account.rbi +865 -0
  309. data/rbi/stripe/resources/treasury/financial_account_features.rbi +260 -0
  310. data/rbi/stripe/resources/treasury/inbound_transfer.rbi +295 -0
  311. data/rbi/stripe/resources/treasury/outbound_payment.rbi +592 -0
  312. data/rbi/stripe/resources/treasury/outbound_transfer.rbi +431 -0
  313. data/rbi/stripe/resources/treasury/received_credit.rbi +302 -0
  314. data/rbi/stripe/resources/treasury/received_debit.rbi +256 -0
  315. data/rbi/stripe/resources/treasury/transaction.rbi +215 -0
  316. data/rbi/stripe/resources/treasury/transaction_entry.rbi +192 -0
  317. data/rbi/stripe/resources/v2/amount.rbi +14 -0
  318. data/rbi/stripe/resources/v2/billing/meter_event.rbi +37 -0
  319. data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +41 -0
  320. data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +31 -0
  321. data/rbi/stripe/resources/v2/event.rbi +48 -0
  322. data/rbi/stripe/resources/v2/event_destination.rbi +91 -0
  323. data/rbi/stripe/resources/webhook_endpoint.rbi +168 -0
  324. data/rbi/stripe/services/account_capability_service.rbi +51 -0
  325. data/{lib/stripe/services/external_account_service.rb → rbi/stripe/services/account_external_account_service.rbi} +124 -138
  326. data/rbi/stripe/services/account_link_service.rbi +58 -0
  327. data/rbi/stripe/services/account_login_link_service.rbi +22 -0
  328. data/rbi/stripe/services/account_person_service.rbi +1011 -0
  329. data/rbi/stripe/services/account_service.rbi +4213 -0
  330. data/rbi/stripe/services/account_session_service.rbi +646 -0
  331. data/rbi/stripe/services/apple_pay_domain_service.rbi +76 -0
  332. data/rbi/stripe/services/application_fee_refund_service.rbi +93 -0
  333. data/rbi/stripe/services/application_fee_service.rbi +78 -0
  334. data/rbi/stripe/services/apps/secret_service.rbi +151 -0
  335. data/rbi/stripe/services/apps_service.rbi +9 -0
  336. data/rbi/stripe/services/balance_service.rbi +21 -0
  337. data/rbi/stripe/services/balance_transaction_service.rbi +93 -0
  338. data/rbi/stripe/services/billing/alert_service.rbi +152 -0
  339. data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +68 -0
  340. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +59 -0
  341. data/rbi/stripe/services/billing/credit_grant_service.rbi +211 -0
  342. data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +42 -0
  343. data/rbi/stripe/services/billing/meter_event_service.rbi +42 -0
  344. data/rbi/stripe/services/billing/meter_event_summary_service.rbi +54 -0
  345. data/rbi/stripe/services/billing/meter_service.rbi +163 -0
  346. data/rbi/stripe/services/billing_portal/configuration_service.rbi +511 -0
  347. data/rbi/stripe/services/billing_portal/session_service.rbi +204 -0
  348. data/rbi/stripe/services/billing_portal_service.rbi +10 -0
  349. data/rbi/stripe/services/billing_service.rbi +15 -0
  350. data/rbi/stripe/services/charge_service.rbi +448 -0
  351. data/rbi/stripe/services/checkout/session_line_item_service.rbi +33 -0
  352. data/rbi/stripe/services/checkout/session_service.rbi +2614 -0
  353. data/rbi/stripe/services/checkout_service.rbi +9 -0
  354. data/rbi/stripe/services/climate/order_service.rbi +142 -0
  355. data/rbi/stripe/services/climate/product_service.rbi +46 -0
  356. data/{lib/stripe/services/financial_connections/institution_service.rb → rbi/stripe/services/climate/supplier_service.rbi} +25 -36
  357. data/rbi/stripe/services/climate_service.rbi +11 -0
  358. data/rbi/stripe/services/confirmation_token_service.rbi +20 -0
  359. data/rbi/stripe/services/country_spec_service.rbi +44 -0
  360. data/rbi/stripe/services/coupon_service.rbi +194 -0
  361. data/{lib/stripe/services/quote_preview_invoice_service.rb → rbi/stripe/services/credit_note_line_item_service.rbi} +16 -20
  362. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +167 -0
  363. data/rbi/stripe/services/credit_note_service.rbi +415 -0
  364. data/rbi/stripe/services/customer_balance_transaction_service.rbi +92 -0
  365. data/rbi/stripe/services/customer_cash_balance_service.rbi +45 -0
  366. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +44 -0
  367. data/rbi/stripe/services/customer_funding_instructions_service.rbi +59 -0
  368. data/rbi/stripe/services/customer_payment_method_service.rbi +57 -0
  369. data/rbi/stripe/services/customer_payment_source_service.rbi +232 -0
  370. data/rbi/stripe/services/customer_service.rbi +647 -0
  371. data/rbi/stripe/services/customer_session_service.rbi +116 -0
  372. data/rbi/stripe/services/customer_tax_id_service.rbi +70 -0
  373. data/rbi/stripe/services/dispute_service.rbi +424 -0
  374. data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +55 -0
  375. data/rbi/stripe/services/entitlements/feature_service.rbi +107 -0
  376. data/rbi/stripe/services/entitlements_service.rbi +10 -0
  377. data/rbi/stripe/services/ephemeral_key_service.rbi +53 -0
  378. data/rbi/stripe/services/event_service.rbi +83 -0
  379. data/rbi/stripe/services/exchange_rate_service.rbi +44 -0
  380. data/rbi/stripe/services/file_link_service.rbi +124 -0
  381. data/rbi/stripe/services/file_service.rbi +116 -0
  382. data/rbi/stripe/services/financial_connections/account_owner_service.rbi +42 -0
  383. data/rbi/stripe/services/financial_connections/account_service.rbi +133 -0
  384. data/rbi/stripe/services/financial_connections/session_service.rbi +88 -0
  385. data/rbi/stripe/services/financial_connections/transaction_service.rbi +92 -0
  386. data/rbi/stripe/services/financial_connections_service.rbi +11 -0
  387. data/rbi/stripe/services/forwarding/request_service.rbi +134 -0
  388. data/rbi/stripe/services/forwarding_service.rbi +9 -0
  389. data/rbi/stripe/services/identity/verification_report_service.rbi +87 -0
  390. data/rbi/stripe/services/identity/verification_session_service.rbi +323 -0
  391. data/rbi/stripe/services/identity_service.rbi +10 -0
  392. data/rbi/stripe/services/invoice_item_service.rbi +366 -0
  393. data/rbi/stripe/services/invoice_line_item_service.rbi +259 -0
  394. data/rbi/stripe/services/invoice_payment_service.rbi +71 -0
  395. data/rbi/stripe/services/invoice_rendering_template_service.rbi +82 -0
  396. data/rbi/stripe/services/invoice_service.rbi +2981 -0
  397. data/rbi/stripe/services/issuing/authorization_service.rbi +146 -0
  398. data/rbi/stripe/services/issuing/card_service.rbi +495 -0
  399. data/rbi/stripe/services/issuing/cardholder_service.rbi +587 -0
  400. data/rbi/stripe/services/issuing/dispute_service.rbi +707 -0
  401. data/rbi/stripe/services/issuing/personalization_design_service.rbi +243 -0
  402. data/rbi/stripe/services/issuing/physical_bundle_service.rbi +59 -0
  403. data/rbi/stripe/services/issuing/token_service.rbi +99 -0
  404. data/rbi/stripe/services/issuing/transaction_service.rbi +105 -0
  405. data/rbi/stripe/services/issuing_service.rbi +16 -0
  406. data/rbi/stripe/services/mandate_service.rbi +20 -0
  407. data/rbi/stripe/services/payment_intent_service.rbi +7659 -0
  408. data/{lib/stripe/services/payment_intent_amount_details_line_item_service.rb → rbi/stripe/services/payment_link_line_item_service.rbi} +16 -20
  409. data/rbi/stripe/services/payment_link_service.rbi +1352 -0
  410. data/rbi/stripe/services/payment_method_configuration_service.rbi +2487 -0
  411. data/rbi/stripe/services/payment_method_domain_service.rbi +112 -0
  412. data/rbi/stripe/services/payment_method_service.rbi +776 -0
  413. data/rbi/stripe/services/payout_service.rbi +205 -0
  414. data/rbi/stripe/services/plan_service.rbi +282 -0
  415. data/rbi/stripe/services/price_service.rbi +546 -0
  416. data/rbi/stripe/services/product_feature_service.rbi +67 -0
  417. data/rbi/stripe/services/product_service.rbi +477 -0
  418. data/rbi/stripe/services/promotion_code_service.rbi +214 -0
  419. data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +31 -0
  420. data/{lib/stripe/services/order_line_item_service.rb → rbi/stripe/services/quote_line_item_service.rbi} +16 -20
  421. data/rbi/stripe/services/quote_service.rbi +686 -0
  422. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +85 -0
  423. data/rbi/stripe/services/radar/value_list_item_service.rbi +109 -0
  424. data/rbi/stripe/services/radar/value_list_service.rbi +141 -0
  425. data/rbi/stripe/services/radar_service.rbi +11 -0
  426. data/rbi/stripe/services/refund_service.rbi +185 -0
  427. data/rbi/stripe/services/reporting/report_run_service.rbi +135 -0
  428. data/rbi/stripe/services/reporting/report_type_service.rbi +35 -0
  429. data/rbi/stripe/services/reporting_service.rbi +10 -0
  430. data/rbi/stripe/services/review_service.rbi +84 -0
  431. data/rbi/stripe/services/setup_attempt_service.rbi +65 -0
  432. data/rbi/stripe/services/setup_intent_service.rbi +3391 -0
  433. data/rbi/stripe/services/shipping_rate_service.rbi +241 -0
  434. data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +46 -0
  435. data/rbi/stripe/services/sigma_service.rbi +9 -0
  436. data/rbi/stripe/services/source_service.rbi +663 -0
  437. data/{lib/stripe/services/quote_line_service.rb → rbi/stripe/services/source_transaction_service.rbi} +16 -20
  438. data/rbi/stripe/services/subscription_item_service.rbi +350 -0
  439. data/rbi/stripe/services/subscription_schedule_service.rbi +1290 -0
  440. data/rbi/stripe/services/subscription_service.rbi +1648 -0
  441. data/{lib/stripe/services/financial_connections/account_inferred_balance_service.rb → rbi/stripe/services/tax/calculation_line_item_service.rbi} +17 -21
  442. data/rbi/stripe/services/tax/calculation_service.rbi +234 -0
  443. data/rbi/stripe/services/tax/registration_service.rbi +1845 -0
  444. data/rbi/stripe/services/tax/settings_service.rbi +93 -0
  445. data/{lib/stripe/services/privacy/redaction_job_validation_error_service.rb → rbi/stripe/services/tax/transaction_line_item_service.rbi} +17 -21
  446. data/rbi/stripe/services/tax/transaction_service.rbi +146 -0
  447. data/rbi/stripe/services/tax_code_service.rbi +44 -0
  448. data/rbi/stripe/services/tax_id_service.rbi +110 -0
  449. data/rbi/stripe/services/tax_rate_service.rbi +185 -0
  450. data/rbi/stripe/services/tax_service.rbi +12 -0
  451. data/rbi/stripe/services/terminal/configuration_service.rbi +1118 -0
  452. data/rbi/stripe/services/terminal/connection_token_service.rbi +25 -0
  453. data/rbi/stripe/services/terminal/location_service.rbi +182 -0
  454. data/rbi/stripe/services/terminal/reader_service.rbi +455 -0
  455. data/rbi/stripe/services/terminal_service.rbi +12 -0
  456. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +739 -0
  457. data/rbi/stripe/services/test_helpers/customer_service.rbi +33 -0
  458. data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +848 -0
  459. data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +76 -0
  460. data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +69 -0
  461. data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +711 -0
  462. data/rbi/stripe/services/test_helpers/issuing_service.rbi +14 -0
  463. data/rbi/stripe/services/test_helpers/refund_service.rbi +22 -0
  464. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +93 -0
  465. data/rbi/stripe/services/test_helpers/terminal_service.rbi +11 -0
  466. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +90 -0
  467. data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +64 -0
  468. data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +125 -0
  469. data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +125 -0
  470. data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +87 -0
  471. data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +87 -0
  472. data/rbi/stripe/services/test_helpers/treasury_service.rbi +15 -0
  473. data/rbi/stripe/services/test_helpers_service.rbi +15 -0
  474. data/rbi/stripe/services/token_service.rbi +1257 -0
  475. data/rbi/stripe/services/topup_service.rbi +176 -0
  476. data/rbi/stripe/services/transfer_reversal_service.rbi +101 -0
  477. data/rbi/stripe/services/transfer_service.rbi +152 -0
  478. data/rbi/stripe/services/treasury/credit_reversal_service.rbi +84 -0
  479. data/rbi/stripe/services/treasury/debit_reversal_service.rbi +88 -0
  480. data/rbi/stripe/services/treasury/financial_account_features_service.rbi +198 -0
  481. data/rbi/stripe/services/treasury/financial_account_service.rbi +562 -0
  482. data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +117 -0
  483. data/rbi/stripe/services/treasury/outbound_payment_service.rbi +304 -0
  484. data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +157 -0
  485. data/rbi/stripe/services/treasury/received_credit_service.rbi +72 -0
  486. data/rbi/stripe/services/treasury/received_debit_service.rbi +59 -0
  487. data/rbi/stripe/services/treasury/transaction_entry_service.rbi +111 -0
  488. data/rbi/stripe/services/treasury/transaction_service.rbi +122 -0
  489. data/rbi/stripe/services/treasury_service.rbi +18 -0
  490. data/rbi/stripe/services/v1_services.rbi +77 -0
  491. data/rbi/stripe/services/v2/billing/meter_event_adjustment_service.rbi +39 -0
  492. data/rbi/stripe/services/v2/billing/meter_event_service.rbi +42 -0
  493. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +18 -0
  494. data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +55 -0
  495. data/rbi/stripe/services/v2/billing_service.rbi +14 -0
  496. data/rbi/stripe/services/v2/core/event_destination_service.rbi +192 -0
  497. data/rbi/stripe/services/v2/core/event_service.rbi +36 -0
  498. data/rbi/stripe/services/v2/core_service.rbi +12 -0
  499. data/rbi/stripe/services/v2_services.rbi +10 -0
  500. data/rbi/stripe/services/webhook_endpoint_service.rbi +129 -0
  501. data/stripe.gemspec +1 -4
  502. metadata +326 -158
  503. data/lib/stripe/events/v2_core_account_closed_event.rb +0 -21
  504. data/lib/stripe/events/v2_core_account_created_event.rb +0 -21
  505. data/lib/stripe/events/v2_core_account_including_configuration_customer_capability_status_updated_event.rb +0 -23
  506. data/lib/stripe/events/v2_core_account_including_configuration_customer_updated_event.rb +0 -21
  507. data/lib/stripe/events/v2_core_account_including_configuration_merchant_capability_status_updated_event.rb +0 -23
  508. data/lib/stripe/events/v2_core_account_including_configuration_merchant_updated_event.rb +0 -21
  509. data/lib/stripe/events/v2_core_account_including_configuration_recipient_capability_status_updated_event.rb +0 -23
  510. data/lib/stripe/events/v2_core_account_including_configuration_recipient_updated_event.rb +0 -21
  511. data/lib/stripe/events/v2_core_account_including_defaults_updated_event.rb +0 -21
  512. data/lib/stripe/events/v2_core_account_including_identity_updated_event.rb +0 -21
  513. data/lib/stripe/events/v2_core_account_including_requirements_updated_event.rb +0 -21
  514. data/lib/stripe/events/v2_core_account_link_completed_event.rb +0 -13
  515. data/lib/stripe/events/v2_core_account_person_created_event.rb +0 -23
  516. data/lib/stripe/events/v2_core_account_person_deleted_event.rb +0 -23
  517. data/lib/stripe/events/v2_core_account_person_updated_event.rb +0 -23
  518. data/lib/stripe/events/v2_core_account_updated_event.rb +0 -21
  519. data/lib/stripe/events/v2_money_management_adjustment_created_event.rb +0 -21
  520. data/lib/stripe/events/v2_money_management_financial_account_created_event.rb +0 -21
  521. data/lib/stripe/events/v2_money_management_financial_account_updated_event.rb +0 -21
  522. data/lib/stripe/events/v2_money_management_financial_address_activated_event.rb +0 -21
  523. data/lib/stripe/events/v2_money_management_financial_address_failed_event.rb +0 -21
  524. data/lib/stripe/events/v2_money_management_inbound_transfer_available_event.rb +0 -23
  525. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_failed_event.rb +0 -21
  526. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_processing_event.rb +0 -21
  527. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_queued_event.rb +0 -21
  528. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_returned_event.rb +0 -21
  529. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_succeeded_event.rb +0 -21
  530. data/lib/stripe/events/v2_money_management_outbound_payment_canceled_event.rb +0 -21
  531. data/lib/stripe/events/v2_money_management_outbound_payment_created_event.rb +0 -21
  532. data/lib/stripe/events/v2_money_management_outbound_payment_failed_event.rb +0 -21
  533. data/lib/stripe/events/v2_money_management_outbound_payment_posted_event.rb +0 -21
  534. data/lib/stripe/events/v2_money_management_outbound_payment_returned_event.rb +0 -21
  535. data/lib/stripe/events/v2_money_management_outbound_payment_updated_event.rb +0 -21
  536. data/lib/stripe/events/v2_money_management_outbound_transfer_canceled_event.rb +0 -21
  537. data/lib/stripe/events/v2_money_management_outbound_transfer_created_event.rb +0 -21
  538. data/lib/stripe/events/v2_money_management_outbound_transfer_failed_event.rb +0 -21
  539. data/lib/stripe/events/v2_money_management_outbound_transfer_posted_event.rb +0 -21
  540. data/lib/stripe/events/v2_money_management_outbound_transfer_returned_event.rb +0 -21
  541. data/lib/stripe/events/v2_money_management_outbound_transfer_updated_event.rb +0 -21
  542. data/lib/stripe/events/v2_money_management_received_credit_available_event.rb +0 -23
  543. data/lib/stripe/events/v2_money_management_received_credit_failed_event.rb +0 -21
  544. data/lib/stripe/events/v2_money_management_received_credit_returned_event.rb +0 -21
  545. data/lib/stripe/events/v2_money_management_received_credit_succeeded_event.rb +0 -21
  546. data/lib/stripe/events/v2_money_management_received_debit_canceled_event.rb +0 -21
  547. data/lib/stripe/events/v2_money_management_received_debit_failed_event.rb +0 -21
  548. data/lib/stripe/events/v2_money_management_received_debit_pending_event.rb +0 -21
  549. data/lib/stripe/events/v2_money_management_received_debit_succeeded_event.rb +0 -21
  550. data/lib/stripe/events/v2_money_management_received_debit_updated_event.rb +0 -21
  551. data/lib/stripe/events/v2_money_management_transaction_created_event.rb +0 -21
  552. data/lib/stripe/events/v2_money_management_transaction_updated_event.rb +0 -21
  553. data/lib/stripe/resources/account_notice.rb +0 -123
  554. data/lib/stripe/resources/balance_settings.rb +0 -105
  555. data/lib/stripe/resources/billing/meter_error_report.rb +0 -59
  556. data/lib/stripe/resources/capital/financing_offer.rb +0 -179
  557. data/lib/stripe/resources/capital/financing_summary.rb +0 -55
  558. data/lib/stripe/resources/capital/financing_transaction.rb +0 -114
  559. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +0 -27
  560. data/lib/stripe/resources/financial_connections/institution.rb +0 -90
  561. data/lib/stripe/resources/fx_quote.rb +0 -184
  562. data/lib/stripe/resources/gift_cards/card.rb +0 -208
  563. data/lib/stripe/resources/gift_cards/transaction.rb +0 -272
  564. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +0 -602
  565. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +0 -82
  566. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +0 -86
  567. data/lib/stripe/resources/issuing/settlement.rb +0 -53
  568. data/lib/stripe/resources/margin.rb +0 -115
  569. data/lib/stripe/resources/order.rb +0 -2859
  570. data/lib/stripe/resources/payment_attempt_record.rb +0 -1078
  571. data/lib/stripe/resources/payment_intent_amount_details_line_item.rb +0 -65
  572. data/lib/stripe/resources/payment_record.rb +0 -1607
  573. data/lib/stripe/resources/privacy/redaction_job.rb +0 -275
  574. data/lib/stripe/resources/privacy/redaction_job_validation_error.rb +0 -25
  575. data/lib/stripe/resources/quote_line.rb +0 -274
  576. data/lib/stripe/resources/quote_preview_invoice.rb +0 -663
  577. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +0 -339
  578. data/lib/stripe/resources/tax/association.rb +0 -89
  579. data/lib/stripe/resources/tax/form.rb +0 -211
  580. data/lib/stripe/resources/terminal/reader_collected_data.rb +0 -31
  581. data/lib/stripe/resources/v2/core/account.rb +0 -1746
  582. data/lib/stripe/resources/v2/core/account_link.rb +0 -56
  583. data/lib/stripe/resources/v2/core/person.rb +0 -276
  584. data/lib/stripe/resources/v2/core/vault/gb_bank_account.rb +0 -74
  585. data/lib/stripe/resources/v2/core/vault/us_bank_account.rb +0 -39
  586. data/lib/stripe/resources/v2/financial_address_credit_simulation.rb +0 -20
  587. data/lib/stripe/resources/v2/financial_address_generated_microdeposits.rb +0 -22
  588. data/lib/stripe/resources/v2/money_management/adjustment.rb +0 -51
  589. data/lib/stripe/resources/v2/money_management/financial_account.rb +0 -58
  590. data/lib/stripe/resources/v2/money_management/financial_address.rb +0 -68
  591. data/lib/stripe/resources/v2/money_management/inbound_transfer.rb +0 -94
  592. data/lib/stripe/resources/v2/money_management/outbound_payment.rb +0 -129
  593. data/lib/stripe/resources/v2/money_management/outbound_payment_quote.rb +0 -82
  594. data/lib/stripe/resources/v2/money_management/outbound_setup_intent.rb +0 -45
  595. data/lib/stripe/resources/v2/money_management/outbound_transfer.rb +0 -117
  596. data/lib/stripe/resources/v2/money_management/payout_method.rb +0 -75
  597. data/lib/stripe/resources/v2/money_management/payout_methods_bank_account_spec.rb +0 -49
  598. data/lib/stripe/resources/v2/money_management/received_credit.rb +0 -136
  599. data/lib/stripe/resources/v2/money_management/received_debit.rb +0 -108
  600. data/lib/stripe/resources/v2/money_management/transaction.rb +0 -78
  601. data/lib/stripe/resources/v2/money_management/transaction_entry.rb +0 -68
  602. data/lib/stripe/services/account_notice_service.rb +0 -101
  603. data/lib/stripe/services/balance_settings_service.rb +0 -96
  604. data/lib/stripe/services/capital/financing_offer_service.rb +0 -112
  605. data/lib/stripe/services/capital/financing_summary_service.rb +0 -28
  606. data/lib/stripe/services/capital/financing_transaction_service.rb +0 -79
  607. data/lib/stripe/services/capital_service.rb +0 -15
  608. data/lib/stripe/services/fx_quote_service.rb +0 -123
  609. data/lib/stripe/services/gift_cards/card_service.rb +0 -170
  610. data/lib/stripe/services/gift_cards/transaction_service.rb +0 -209
  611. data/lib/stripe/services/gift_cards_service.rb +0 -14
  612. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +0 -504
  613. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +0 -66
  614. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +0 -83
  615. data/lib/stripe/services/margin_service.rb +0 -119
  616. data/lib/stripe/services/order_service.rb +0 -2268
  617. data/lib/stripe/services/payment_attempt_record_service.rb +0 -49
  618. data/lib/stripe/services/payment_record_service.rb +0 -542
  619. data/lib/stripe/services/privacy/redaction_job_service.rb +0 -231
  620. data/lib/stripe/services/privacy_service.rb +0 -13
  621. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +0 -35
  622. data/lib/stripe/services/tax/association_service.rb +0 -31
  623. data/lib/stripe/services/tax/form_service.rb +0 -100
  624. data/lib/stripe/services/terminal/reader_collected_data_service.rb +0 -28
  625. data/lib/stripe/services/v2/core/account_link_service.rb +0 -76
  626. data/lib/stripe/services/v2/core/account_service.rb +0 -4138
  627. data/lib/stripe/services/v2/core/accounts/person_service.rb +0 -1048
  628. data/lib/stripe/services/v2/core/vault/gb_bank_account_service.rb +0 -135
  629. data/lib/stripe/services/v2/core/vault/us_bank_account_service.rb +0 -109
  630. data/lib/stripe/services/v2/core/vault_service.rb +0 -18
  631. data/lib/stripe/services/v2/money_management/adjustment_service.rb +0 -75
  632. data/lib/stripe/services/v2/money_management/financial_account_service.rb +0 -44
  633. data/lib/stripe/services/v2/money_management/financial_address_service.rb +0 -81
  634. data/lib/stripe/services/v2/money_management/inbound_transfer_service.rb +0 -126
  635. data/lib/stripe/services/v2/money_management/outbound_payment_quote_service.rb +0 -96
  636. data/lib/stripe/services/v2/money_management/outbound_payment_service.rb +0 -202
  637. data/lib/stripe/services/v2/money_management/outbound_setup_intent_service.rb +0 -237
  638. data/lib/stripe/services/v2/money_management/outbound_transfer_service.rb +0 -174
  639. data/lib/stripe/services/v2/money_management/payout_method_service.rb +0 -95
  640. data/lib/stripe/services/v2/money_management/payout_methods_bank_account_spec_service.rb +0 -32
  641. data/lib/stripe/services/v2/money_management/received_credit_service.rb +0 -71
  642. data/lib/stripe/services/v2/money_management/received_debit_service.rb +0 -44
  643. data/lib/stripe/services/v2/money_management/transaction_entry_service.rb +0 -70
  644. data/lib/stripe/services/v2/money_management/transaction_service.rb +0 -74
  645. data/lib/stripe/services/v2/money_management_service.rb +0 -31
  646. data/lib/stripe/services/v2/test_helper_service.rb +0 -15
  647. data/lib/stripe/services/v2/test_helpers/financial_address_service.rb +0 -50
  648. data/rbi/stripe.rbi +0 -191867
@@ -3,14 +3,10 @@
3
3
 
4
4
  module Stripe
5
5
  class QuoteService < StripeService
6
- attr_reader :preview_invoices, :preview_subscription_schedules, :lines, :line_items, :computed_upfront_line_items
6
+ attr_reader :line_items, :computed_upfront_line_items
7
7
 
8
8
  def initialize(requestor)
9
9
  super
10
- @preview_invoices = Stripe::QuotePreviewInvoiceService.new(@requestor)
11
- @preview_subscription_schedules = Stripe::QuotePreviewSubscriptionScheduleService
12
- .new(@requestor)
13
- @lines = Stripe::QuoteLineService.new(@requestor)
14
10
  @line_items = Stripe::QuoteLineItemService.new(@requestor)
15
11
  @computed_upfront_line_items = Stripe::QuoteComputedUpfrontLineItemsService.new(@requestor)
16
12
  end
@@ -18,14 +14,10 @@ module Stripe
18
14
  class ListParams < Stripe::RequestParams
19
15
  # The ID of the customer whose quotes will be retrieved.
20
16
  attr_accessor :customer
21
- # The ID of the account whose quotes will be retrieved.
22
- attr_accessor :customer_account
23
17
  # A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
24
18
  attr_accessor :ending_before
25
19
  # Specifies which fields in the response should be expanded.
26
20
  attr_accessor :expand
27
- # The subscription which the quote updates.
28
- attr_accessor :from_subscription
29
21
  # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
30
22
  attr_accessor :limit
31
23
  # A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
@@ -37,20 +29,16 @@ module Stripe
37
29
 
38
30
  def initialize(
39
31
  customer: nil,
40
- customer_account: nil,
41
32
  ending_before: nil,
42
33
  expand: nil,
43
- from_subscription: nil,
44
34
  limit: nil,
45
35
  starting_after: nil,
46
36
  status: nil,
47
37
  test_clock: nil
48
38
  )
49
39
  @customer = customer
50
- @customer_account = customer_account
51
40
  @ending_before = ending_before
52
41
  @expand = expand
53
- @from_subscription = from_subscription
54
42
  @limit = limit
55
43
  @starting_after = starting_after
56
44
  @status = status
@@ -83,44 +71,16 @@ module Stripe
83
71
  end
84
72
 
85
73
  class Discount < Stripe::RequestParams
86
- class DiscountEnd < Stripe::RequestParams
87
- class Duration < Stripe::RequestParams
88
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
89
- attr_accessor :interval
90
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
91
- attr_accessor :interval_count
92
-
93
- def initialize(interval: nil, interval_count: nil)
94
- @interval = interval
95
- @interval_count = interval_count
96
- end
97
- end
98
- # Time span for the redeemed discount.
99
- attr_accessor :duration
100
- # A precise Unix timestamp for the discount to end. Must be in the future.
101
- attr_accessor :timestamp
102
- # The type of calculation made to determine when the discount ends.
103
- attr_accessor :type
104
-
105
- def initialize(duration: nil, timestamp: nil, type: nil)
106
- @duration = duration
107
- @timestamp = timestamp
108
- @type = type
109
- end
110
- end
111
74
  # ID of the coupon to create a new discount for.
112
75
  attr_accessor :coupon
113
76
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
114
77
  attr_accessor :discount
115
- # Details to determine how long the discount should be applied for.
116
- attr_accessor :discount_end
117
78
  # ID of the promotion code to create a new discount for.
118
79
  attr_accessor :promotion_code
119
80
 
120
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
81
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
121
82
  @coupon = coupon
122
83
  @discount = discount
123
- @discount_end = discount_end
124
84
  @promotion_code = promotion_code
125
85
  end
126
86
  end
@@ -160,522 +120,18 @@ module Stripe
160
120
  end
161
121
  end
162
122
 
163
- class Line < Stripe::RequestParams
164
- class Action < Stripe::RequestParams
165
- class AddDiscount < Stripe::RequestParams
166
- class DiscountEnd < Stripe::RequestParams
167
- # The type of calculation made to determine when the discount ends.
168
- attr_accessor :type
169
-
170
- def initialize(type: nil)
171
- @type = type
172
- end
173
- end
174
- # The coupon code to redeem.
175
- attr_accessor :coupon
176
- # An ID of an existing discount for a coupon that was already redeemed.
177
- attr_accessor :discount
178
- # Details to determine how long the discount should be applied for.
179
- attr_accessor :discount_end
180
- # 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.
181
- attr_accessor :index
182
- # The promotion code to redeem.
183
- attr_accessor :promotion_code
184
-
185
- def initialize(
186
- coupon: nil,
187
- discount: nil,
188
- discount_end: nil,
189
- index: nil,
190
- promotion_code: nil
191
- )
192
- @coupon = coupon
193
- @discount = discount
194
- @discount_end = discount_end
195
- @index = index
196
- @promotion_code = promotion_code
197
- end
198
- end
199
-
200
- class AddItem < Stripe::RequestParams
201
- class Discount < Stripe::RequestParams
202
- class DiscountEnd < Stripe::RequestParams
203
- class Duration < Stripe::RequestParams
204
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
205
- attr_accessor :interval
206
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
207
- attr_accessor :interval_count
208
-
209
- def initialize(interval: nil, interval_count: nil)
210
- @interval = interval
211
- @interval_count = interval_count
212
- end
213
- end
214
- # Time span for the redeemed discount.
215
- attr_accessor :duration
216
- # A precise Unix timestamp for the discount to end. Must be in the future.
217
- attr_accessor :timestamp
218
- # The type of calculation made to determine when the discount ends.
219
- attr_accessor :type
220
-
221
- def initialize(duration: nil, timestamp: nil, type: nil)
222
- @duration = duration
223
- @timestamp = timestamp
224
- @type = type
225
- end
226
- end
227
- # ID of the coupon to create a new discount for.
228
- attr_accessor :coupon
229
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
230
- attr_accessor :discount
231
- # Details to determine how long the discount should be applied for.
232
- attr_accessor :discount_end
233
- # ID of the promotion code to create a new discount for.
234
- attr_accessor :promotion_code
235
-
236
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
237
- @coupon = coupon
238
- @discount = discount
239
- @discount_end = discount_end
240
- @promotion_code = promotion_code
241
- end
242
- end
243
-
244
- class Trial < Stripe::RequestParams
245
- # 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.
246
- attr_accessor :converts_to
247
- # Determines the type of trial for this item.
248
- attr_accessor :type
249
-
250
- def initialize(converts_to: nil, type: nil)
251
- @converts_to = converts_to
252
- @type = type
253
- end
254
- end
255
- # The discounts applied to the item. Subscription item discounts are applied before subscription discounts.
256
- attr_accessor :discounts
257
- # 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`.
258
- attr_accessor :metadata
259
- # The ID of the price object.
260
- attr_accessor :price
261
- # Quantity for this item.
262
- attr_accessor :quantity
263
- # 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`.
264
- attr_accessor :tax_rates
265
- # Options that configure the trial on the subscription item.
266
- attr_accessor :trial
267
-
268
- def initialize(
269
- discounts: nil,
270
- metadata: nil,
271
- price: nil,
272
- quantity: nil,
273
- tax_rates: nil,
274
- trial: nil
275
- )
276
- @discounts = discounts
277
- @metadata = metadata
278
- @price = price
279
- @quantity = quantity
280
- @tax_rates = tax_rates
281
- @trial = trial
282
- end
283
- end
284
-
285
- class RemoveDiscount < Stripe::RequestParams
286
- # The coupon code to remove from the `discounts` array.
287
- attr_accessor :coupon
288
- # The ID of a discount to remove from the `discounts` array.
289
- attr_accessor :discount
290
- # The ID of a promotion code to remove from the `discounts` array.
291
- attr_accessor :promotion_code
292
-
293
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
294
- @coupon = coupon
295
- @discount = discount
296
- @promotion_code = promotion_code
297
- end
298
- end
299
-
300
- class RemoveItem < Stripe::RequestParams
301
- # ID of a price to remove.
302
- attr_accessor :price
303
-
304
- def initialize(price: nil)
305
- @price = price
306
- end
307
- end
308
-
309
- class SetDiscount < Stripe::RequestParams
310
- # The coupon code to replace the `discounts` array with.
311
- attr_accessor :coupon
312
- # An ID of an existing discount to replace the `discounts` array with.
313
- attr_accessor :discount
314
- # An ID of an existing promotion code to replace the `discounts` array with.
315
- attr_accessor :promotion_code
316
-
317
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
318
- @coupon = coupon
319
- @discount = discount
320
- @promotion_code = promotion_code
321
- end
322
- end
323
-
324
- class SetItem < Stripe::RequestParams
325
- class Discount < Stripe::RequestParams
326
- class DiscountEnd < Stripe::RequestParams
327
- class Duration < Stripe::RequestParams
328
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
329
- attr_accessor :interval
330
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
331
- attr_accessor :interval_count
332
-
333
- def initialize(interval: nil, interval_count: nil)
334
- @interval = interval
335
- @interval_count = interval_count
336
- end
337
- end
338
- # Time span for the redeemed discount.
339
- attr_accessor :duration
340
- # A precise Unix timestamp for the discount to end. Must be in the future.
341
- attr_accessor :timestamp
342
- # The type of calculation made to determine when the discount ends.
343
- attr_accessor :type
344
-
345
- def initialize(duration: nil, timestamp: nil, type: nil)
346
- @duration = duration
347
- @timestamp = timestamp
348
- @type = type
349
- end
350
- end
351
- # ID of the coupon to create a new discount for.
352
- attr_accessor :coupon
353
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
354
- attr_accessor :discount
355
- # Details to determine how long the discount should be applied for.
356
- attr_accessor :discount_end
357
- # ID of the promotion code to create a new discount for.
358
- attr_accessor :promotion_code
359
-
360
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
361
- @coupon = coupon
362
- @discount = discount
363
- @discount_end = discount_end
364
- @promotion_code = promotion_code
365
- end
366
- end
367
-
368
- class Trial < Stripe::RequestParams
369
- # 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.
370
- attr_accessor :converts_to
371
- # Determines the type of trial for this item.
372
- attr_accessor :type
373
-
374
- def initialize(converts_to: nil, type: nil)
375
- @converts_to = converts_to
376
- @type = type
377
- end
378
- end
379
- # 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`.
380
- attr_accessor :discounts
381
- # 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`.
382
- attr_accessor :metadata
383
- # The ID of the price object.
384
- attr_accessor :price
385
- # 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`.
386
- attr_accessor :quantity
387
- # 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`.
388
- attr_accessor :tax_rates
389
- # 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`.
390
- attr_accessor :trial
391
-
392
- def initialize(
393
- discounts: nil,
394
- metadata: nil,
395
- price: nil,
396
- quantity: nil,
397
- tax_rates: nil,
398
- trial: nil
399
- )
400
- @discounts = discounts
401
- @metadata = metadata
402
- @price = price
403
- @quantity = quantity
404
- @tax_rates = tax_rates
405
- @trial = trial
406
- end
407
- end
408
- # Details for the `add_discount` type.
409
- attr_accessor :add_discount
410
- # Details for the `add_item` type.
411
- attr_accessor :add_item
412
- # Details for the `add_metadata` type: specify a hash of key-value pairs.
413
- attr_accessor :add_metadata
414
- # Details for the `remove_discount` type.
415
- attr_accessor :remove_discount
416
- # Details for the `remove_item` type.
417
- attr_accessor :remove_item
418
- # Details for the `remove_metadata` type: specify an array of metadata keys.
419
- attr_accessor :remove_metadata
420
- # Details for the `set_discounts` type.
421
- attr_accessor :set_discounts
422
- # Details for the `set_items` type.
423
- attr_accessor :set_items
424
- # Details for the `set_metadata` type: specify an array of key-value pairs.
425
- attr_accessor :set_metadata
426
- # The type of action the quote line performs.
427
- attr_accessor :type
428
-
429
- def initialize(
430
- add_discount: nil,
431
- add_item: nil,
432
- add_metadata: nil,
433
- remove_discount: nil,
434
- remove_item: nil,
435
- remove_metadata: nil,
436
- set_discounts: nil,
437
- set_items: nil,
438
- set_metadata: nil,
439
- type: nil
440
- )
441
- @add_discount = add_discount
442
- @add_item = add_item
443
- @add_metadata = add_metadata
444
- @remove_discount = remove_discount
445
- @remove_item = remove_item
446
- @remove_metadata = remove_metadata
447
- @set_discounts = set_discounts
448
- @set_items = set_items
449
- @set_metadata = set_metadata
450
- @type = type
451
- end
452
- end
453
-
454
- class AppliesTo < Stripe::RequestParams
455
- # A custom string that identifies a new subscription schedule being created upon quote acceptance. All quote lines with the same `new_reference` field will be applied to the creation of a new subscription schedule.
456
- attr_accessor :new_reference
457
- # The ID of the schedule the line applies to.
458
- attr_accessor :subscription_schedule
459
- # Describes whether the quote line is affecting a new schedule or an existing schedule.
460
- attr_accessor :type
461
-
462
- def initialize(new_reference: nil, subscription_schedule: nil, type: nil)
463
- @new_reference = new_reference
464
- @subscription_schedule = subscription_schedule
465
- @type = type
466
- end
467
- end
468
-
469
- class CancelSubscriptionSchedule < Stripe::RequestParams
470
- # Timestamp helper to cancel the underlying schedule on the accompanying line's start date. Must be set to `line_starts_at`.
471
- attr_accessor :cancel_at
472
- # If the subscription schedule is `active`, indicates if a final invoice will be generated that contains any un-invoiced metered usage and new/pending proration invoice items. Boolean that defaults to `true`.
473
- attr_accessor :invoice_now
474
- # If the subscription schedule is `active`, indicates if the cancellation should be prorated. Boolean that defaults to `true`.
475
- attr_accessor :prorate
476
-
477
- def initialize(cancel_at: nil, invoice_now: nil, prorate: nil)
478
- @cancel_at = cancel_at
479
- @invoice_now = invoice_now
480
- @prorate = prorate
481
- end
482
- end
483
-
484
- class EndsAt < Stripe::RequestParams
485
- class DiscountEnd < Stripe::RequestParams
486
- # The ID of a specific discount.
487
- attr_accessor :discount
488
-
489
- def initialize(discount: nil)
490
- @discount = discount
491
- end
492
- end
493
-
494
- class Duration < Stripe::RequestParams
495
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
496
- attr_accessor :interval
497
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
498
- attr_accessor :interval_count
499
-
500
- def initialize(interval: nil, interval_count: nil)
501
- @interval = interval
502
- @interval_count = interval_count
503
- end
504
- end
505
- # Use the `end` time of a given discount.
506
- attr_accessor :discount_end
507
- # Time span for the quote line starting from the `starts_at` date.
508
- attr_accessor :duration
509
- # A precise Unix timestamp.
510
- attr_accessor :timestamp
511
- # Select a way to pass in `ends_at`.
512
- attr_accessor :type
513
-
514
- def initialize(discount_end: nil, duration: nil, timestamp: nil, type: nil)
515
- @discount_end = discount_end
516
- @duration = duration
517
- @timestamp = timestamp
518
- @type = type
519
- end
520
- end
521
-
522
- class SetPauseCollection < Stripe::RequestParams
523
- class Set < Stripe::RequestParams
524
- # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
525
- attr_accessor :behavior
526
-
527
- def initialize(behavior: nil)
528
- @behavior = behavior
529
- end
530
- end
531
- # Details of the pause_collection behavior to apply to the amendment.
532
- attr_accessor :set
533
- # Determines the type of the pause_collection amendment.
534
- attr_accessor :type
535
-
536
- def initialize(set: nil, type: nil)
537
- @set = set
538
- @type = type
539
- end
540
- end
541
-
542
- class StartsAt < Stripe::RequestParams
543
- class DiscountEnd < Stripe::RequestParams
544
- # The ID of a specific discount.
545
- attr_accessor :discount
546
-
547
- def initialize(discount: nil)
548
- @discount = discount
549
- end
550
- end
551
-
552
- class LineEndsAt < Stripe::RequestParams
553
- # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
554
- attr_accessor :index
555
-
556
- def initialize(index: nil)
557
- @index = index
558
- end
559
- end
560
- # Use the `end` time of a given discount.
561
- attr_accessor :discount_end
562
- # The timestamp the given line ends at.
563
- attr_accessor :line_ends_at
564
- # A precise Unix timestamp.
565
- attr_accessor :timestamp
566
- # Select a way to pass in `starts_at`.
567
- attr_accessor :type
568
-
569
- def initialize(discount_end: nil, line_ends_at: nil, timestamp: nil, type: nil)
570
- @discount_end = discount_end
571
- @line_ends_at = line_ends_at
572
- @timestamp = timestamp
573
- @type = type
574
- end
575
- end
576
-
577
- class TrialSettings < Stripe::RequestParams
578
- class EndBehavior < Stripe::RequestParams
579
- # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
580
- attr_accessor :prorate_up_front
581
-
582
- def initialize(prorate_up_front: nil)
583
- @prorate_up_front = prorate_up_front
584
- end
585
- end
586
- # Defines how the subscription should behave when a trial ends.
587
- attr_accessor :end_behavior
588
-
589
- def initialize(end_behavior: nil)
590
- @end_behavior = end_behavior
591
- end
592
- end
593
- # An array of operations the quote line performs.
594
- attr_accessor :actions
595
- # Details to identify the subscription schedule the quote line applies to.
596
- attr_accessor :applies_to
597
- # For point-in-time quote lines (having no `ends_at` timestamp), this attribute lets you set or remove whether the subscription's billing cycle anchor is reset at the Quote Line `starts_at` timestamp.For time-span based quote lines (having both `starts_at` and `ends_at`), the only valid value is `automatic`, which removes any previously configured billing cycle anchor resets during the window of time spanning the quote line.
598
- attr_accessor :billing_cycle_anchor
599
- # A point-in-time operation that cancels an existing subscription schedule at the line's starts_at timestamp. Currently only compatible with `quote_acceptance_date` for `starts_at`. When using cancel_subscription_schedule, the subscription schedule on the quote remains unalterable, except for modifications to the metadata, collection_method or invoice_settings.
600
- attr_accessor :cancel_subscription_schedule
601
- # Details to identify the end of the time range modified by the proposed change. If not supplied, the quote line is considered a point-in-time operation that only affects the exact timestamp at `starts_at`, and a restricted set of attributes is supported on the quote line.
602
- attr_accessor :ends_at
603
- # Changes to how Stripe handles prorations during the quote line's time span. Affects if and how prorations are created when a future phase starts.
604
- attr_accessor :proration_behavior
605
- # Defines how to pause collection for the underlying subscription throughout the duration of the amendment.
606
- attr_accessor :set_pause_collection
607
- # Timestamp helper to end the underlying schedule early, based on the acompanying line's start or end date.
608
- attr_accessor :set_schedule_end
609
- # Details to identify the earliest timestamp where the proposed change should take effect.
610
- attr_accessor :starts_at
611
- # Settings related to subscription trials.
612
- attr_accessor :trial_settings
613
-
614
- def initialize(
615
- actions: nil,
616
- applies_to: nil,
617
- billing_cycle_anchor: nil,
618
- cancel_subscription_schedule: nil,
619
- ends_at: nil,
620
- proration_behavior: nil,
621
- set_pause_collection: nil,
622
- set_schedule_end: nil,
623
- starts_at: nil,
624
- trial_settings: nil
625
- )
626
- @actions = actions
627
- @applies_to = applies_to
628
- @billing_cycle_anchor = billing_cycle_anchor
629
- @cancel_subscription_schedule = cancel_subscription_schedule
630
- @ends_at = ends_at
631
- @proration_behavior = proration_behavior
632
- @set_pause_collection = set_pause_collection
633
- @set_schedule_end = set_schedule_end
634
- @starts_at = starts_at
635
- @trial_settings = trial_settings
636
- end
637
- end
638
-
639
123
  class LineItem < Stripe::RequestParams
640
124
  class Discount < Stripe::RequestParams
641
- class DiscountEnd < Stripe::RequestParams
642
- class Duration < Stripe::RequestParams
643
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
644
- attr_accessor :interval
645
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
646
- attr_accessor :interval_count
647
-
648
- def initialize(interval: nil, interval_count: nil)
649
- @interval = interval
650
- @interval_count = interval_count
651
- end
652
- end
653
- # Time span for the redeemed discount.
654
- attr_accessor :duration
655
- # A precise Unix timestamp for the discount to end. Must be in the future.
656
- attr_accessor :timestamp
657
- # The type of calculation made to determine when the discount ends.
658
- attr_accessor :type
659
-
660
- def initialize(duration: nil, timestamp: nil, type: nil)
661
- @duration = duration
662
- @timestamp = timestamp
663
- @type = type
664
- end
665
- end
666
125
  # ID of the coupon to create a new discount for.
667
126
  attr_accessor :coupon
668
127
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
669
128
  attr_accessor :discount
670
- # Details to determine how long the discount should be applied for.
671
- attr_accessor :discount_end
672
129
  # ID of the promotion code to create a new discount for.
673
130
  attr_accessor :promotion_code
674
131
 
675
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
132
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
676
133
  @coupon = coupon
677
134
  @discount = discount
678
- @discount_end = discount_end
679
135
  @promotion_code = promotion_code
680
136
  end
681
137
  end
@@ -742,285 +198,23 @@ module Stripe
742
198
  end
743
199
 
744
200
  class SubscriptionData < Stripe::RequestParams
745
- class BillOnAcceptance < Stripe::RequestParams
746
- class BillFrom < Stripe::RequestParams
747
- class LineStartsAt < Stripe::RequestParams
748
- # The ID of a quote line.
749
- attr_accessor :id
750
- # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
751
- attr_accessor :index
752
-
753
- def initialize(id: nil, index: nil)
754
- @id = id
755
- @index = index
756
- end
757
- end
758
- # Details of a Quote line to start the bill period from.
759
- attr_accessor :line_starts_at
760
- # A precise Unix timestamp.
761
- attr_accessor :timestamp
762
- # The type of method to specify the `bill_from` time.
763
- attr_accessor :type
764
-
765
- def initialize(line_starts_at: nil, timestamp: nil, type: nil)
766
- @line_starts_at = line_starts_at
767
- @timestamp = timestamp
768
- @type = type
769
- end
770
- end
771
-
772
- class BillUntil < Stripe::RequestParams
773
- class Duration < Stripe::RequestParams
774
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
775
- attr_accessor :interval
776
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
777
- attr_accessor :interval_count
778
-
779
- def initialize(interval: nil, interval_count: nil)
780
- @interval = interval
781
- @interval_count = interval_count
782
- end
783
- end
784
-
785
- class LineEndsAt < Stripe::RequestParams
786
- # The ID of a quote line.
787
- attr_accessor :id
788
- # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
789
- attr_accessor :index
790
-
791
- def initialize(id: nil, index: nil)
792
- @id = id
793
- @index = index
794
- end
795
- end
796
- # Details of the duration over which to bill.
797
- attr_accessor :duration
798
- # Details of a Quote line item from which to bill until.
799
- attr_accessor :line_ends_at
800
- # A precise Unix timestamp.
801
- attr_accessor :timestamp
802
- # The type of method to specify the `bill_until` time.
803
- attr_accessor :type
804
-
805
- def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil)
806
- @duration = duration
807
- @line_ends_at = line_ends_at
808
- @timestamp = timestamp
809
- @type = type
810
- end
811
- end
812
- # The start of the period to bill from when the Quote is accepted.
813
- attr_accessor :bill_from
814
- # The end of the period to bill until when the Quote is accepted.
815
- attr_accessor :bill_until
816
-
817
- def initialize(bill_from: nil, bill_until: nil)
818
- @bill_from = bill_from
819
- @bill_until = bill_until
820
- end
821
- end
822
-
823
- class Prebilling < Stripe::RequestParams
824
- # This is used to determine the number of billing cycles to prebill.
825
- attr_accessor :iterations
826
-
827
- def initialize(iterations: nil)
828
- @iterations = iterations
829
- end
830
- end
831
- # Describes the period to bill for upon accepting the quote.
832
- attr_accessor :bill_on_acceptance
833
- # 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.
834
- attr_accessor :billing_behavior
835
- # When specified as `reset`, the subscription will always start a new billing period when the quote is accepted.
836
- attr_accessor :billing_cycle_anchor
837
- # Configure billing_mode to opt in improved credit proration behavior.Once a quote that creates a subscription or subscription schedule is accepted,all future operations on the subscription or subscription schedule will be processed based on this billing_mode.
838
- attr_accessor :billing_mode
839
201
  # The subscription's description, meant to be displayable to the customer. Use this field to optionally store an explanation of the subscription for rendering in Stripe surfaces and certain local payment methods UIs.
840
202
  attr_accessor :description
841
203
  # When creating a new subscription, the date of which the subscription schedule will start after the quote is accepted. When updating a subscription, the date of which the subscription will be updated using a subscription schedule. The special value `current_period_end` can be provided to update a subscription at the end of its current period. The `effective_date` is ignored if it is in the past when the quote is accepted.
842
204
  attr_accessor :effective_date
843
- # Behavior of the subscription schedule and underlying subscription when it ends.
844
- attr_accessor :end_behavior
845
- # The id of a subscription that the quote will update. By default, the quote will contain the state of the subscription (such as line items, collection method and billing thresholds) unless overridden.
846
- attr_accessor :from_subscription
847
205
  # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that will set metadata on the subscription or subscription schedule when the quote is accepted. If a recurring price is included in `line_items`, this field will be passed to the resulting subscription's `metadata` field. If `subscription_data.effective_date` is used, this field will be passed to the resulting subscription schedule's `phases.metadata` field. Unlike object-level metadata, this field is declarative. Updates will clear prior values.
848
206
  attr_accessor :metadata
849
- # If specified, the invoicing for the given billing cycle iterations will be processed when the quote is accepted. Cannot be used with `effective_date`.
850
- attr_accessor :prebilling
851
- # Determines how to handle [prorations](https://stripe.com/docs/subscriptions/billing-cycle#prorations). When creating a subscription, valid values are `create_prorations` or `none`.
852
- #
853
- # When updating a subscription, valid values are `create_prorations`, `none`, or `always_invoice`.
854
- #
855
- # Passing `create_prorations` will cause proration invoice items to be created when applicable. These proration items will only be invoiced immediately under [certain conditions](https://stripe.com/docs/subscriptions/upgrading-downgrading#immediate-payment). In order to always invoice immediately for prorations, pass `always_invoice`.
856
- #
857
- # Prorations can be disabled by passing `none`.
858
- attr_accessor :proration_behavior
859
207
  # Integer representing the number of trial period days before the customer is charged for the first time.
860
208
  attr_accessor :trial_period_days
861
209
 
862
- def initialize(
863
- bill_on_acceptance: nil,
864
- billing_behavior: nil,
865
- billing_cycle_anchor: nil,
866
- billing_mode: nil,
867
- description: nil,
868
- effective_date: nil,
869
- end_behavior: nil,
870
- from_subscription: nil,
871
- metadata: nil,
872
- prebilling: nil,
873
- proration_behavior: nil,
874
- trial_period_days: nil
875
- )
876
- @bill_on_acceptance = bill_on_acceptance
877
- @billing_behavior = billing_behavior
878
- @billing_cycle_anchor = billing_cycle_anchor
879
- @billing_mode = billing_mode
210
+ def initialize(description: nil, effective_date: nil, metadata: nil, trial_period_days: nil)
880
211
  @description = description
881
212
  @effective_date = effective_date
882
- @end_behavior = end_behavior
883
- @from_subscription = from_subscription
884
213
  @metadata = metadata
885
- @prebilling = prebilling
886
- @proration_behavior = proration_behavior
887
214
  @trial_period_days = trial_period_days
888
215
  end
889
216
  end
890
217
 
891
- class SubscriptionDataOverride < Stripe::RequestParams
892
- class AppliesTo < Stripe::RequestParams
893
- # A custom string that identifies a new subscription schedule being created upon quote acceptance. All quote lines with the same `new_reference` field will be applied to the creation of a new subscription schedule.
894
- attr_accessor :new_reference
895
- # The ID of the schedule the line applies to.
896
- attr_accessor :subscription_schedule
897
- # Describes whether the quote line is affecting a new schedule or an existing schedule.
898
- attr_accessor :type
899
-
900
- def initialize(new_reference: nil, subscription_schedule: nil, type: nil)
901
- @new_reference = new_reference
902
- @subscription_schedule = subscription_schedule
903
- @type = type
904
- end
905
- end
906
-
907
- class BillOnAcceptance < Stripe::RequestParams
908
- class BillFrom < Stripe::RequestParams
909
- class LineStartsAt < Stripe::RequestParams
910
- # The ID of a quote line.
911
- attr_accessor :id
912
- # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
913
- attr_accessor :index
914
-
915
- def initialize(id: nil, index: nil)
916
- @id = id
917
- @index = index
918
- end
919
- end
920
- # Details of a Quote line to start the bill period from.
921
- attr_accessor :line_starts_at
922
- # A precise Unix timestamp.
923
- attr_accessor :timestamp
924
- # The type of method to specify the `bill_from` time.
925
- attr_accessor :type
926
-
927
- def initialize(line_starts_at: nil, timestamp: nil, type: nil)
928
- @line_starts_at = line_starts_at
929
- @timestamp = timestamp
930
- @type = type
931
- end
932
- end
933
-
934
- class BillUntil < Stripe::RequestParams
935
- class Duration < Stripe::RequestParams
936
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
937
- attr_accessor :interval
938
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
939
- attr_accessor :interval_count
940
-
941
- def initialize(interval: nil, interval_count: nil)
942
- @interval = interval
943
- @interval_count = interval_count
944
- end
945
- end
946
-
947
- class LineEndsAt < Stripe::RequestParams
948
- # The ID of a quote line.
949
- attr_accessor :id
950
- # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
951
- attr_accessor :index
952
-
953
- def initialize(id: nil, index: nil)
954
- @id = id
955
- @index = index
956
- end
957
- end
958
- # Details of the duration over which to bill.
959
- attr_accessor :duration
960
- # Details of a Quote line item from which to bill until.
961
- attr_accessor :line_ends_at
962
- # A precise Unix timestamp.
963
- attr_accessor :timestamp
964
- # The type of method to specify the `bill_until` time.
965
- attr_accessor :type
966
-
967
- def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil)
968
- @duration = duration
969
- @line_ends_at = line_ends_at
970
- @timestamp = timestamp
971
- @type = type
972
- end
973
- end
974
- # The start of the period to bill from when the Quote is accepted.
975
- attr_accessor :bill_from
976
- # The end of the period to bill until when the Quote is accepted.
977
- attr_accessor :bill_until
978
-
979
- def initialize(bill_from: nil, bill_until: nil)
980
- @bill_from = bill_from
981
- @bill_until = bill_until
982
- end
983
- end
984
- # Whether the override applies to an existing Subscription Schedule or a new Subscription Schedule.
985
- attr_accessor :applies_to
986
- # Describes the period to bill for upon accepting the quote.
987
- attr_accessor :bill_on_acceptance
988
- # 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.
989
- attr_accessor :billing_behavior
990
- # The customer the Subscription Data override applies to. This is only relevant when `applies_to.type=new_reference`.
991
- attr_accessor :customer
992
- # The subscription's description, meant to be displayable to the customer. Use this field to optionally store an explanation of the subscription for rendering in Stripe surfaces and certain local payment methods UIs.
993
- attr_accessor :description
994
- # Behavior of the subscription schedule and underlying subscription when it ends.
995
- attr_accessor :end_behavior
996
- # Determines how to handle [prorations](https://stripe.com/docs/subscriptions/billing-cycle#prorations). When creating a subscription, valid values are `create_prorations` or `none`.
997
- #
998
- # When updating a subscription, valid values are `create_prorations`, `none`, or `always_invoice`.
999
- #
1000
- # Passing `create_prorations` will cause proration invoice items to be created when applicable. These proration items will only be invoiced immediately under [certain conditions](https://stripe.com/docs/subscriptions/upgrading-downgrading#immediate-payment). In order to always invoice immediately for prorations, pass `always_invoice`.
1001
- #
1002
- # Prorations can be disabled by passing `none`.
1003
- attr_accessor :proration_behavior
1004
-
1005
- def initialize(
1006
- applies_to: nil,
1007
- bill_on_acceptance: nil,
1008
- billing_behavior: nil,
1009
- customer: nil,
1010
- description: nil,
1011
- end_behavior: nil,
1012
- proration_behavior: nil
1013
- )
1014
- @applies_to = applies_to
1015
- @bill_on_acceptance = bill_on_acceptance
1016
- @billing_behavior = billing_behavior
1017
- @customer = customer
1018
- @description = description
1019
- @end_behavior = end_behavior
1020
- @proration_behavior = proration_behavior
1021
- end
1022
- end
1023
-
1024
218
  class TransferData < Stripe::RequestParams
1025
219
  # The amount that will be transferred automatically when the invoice is paid. If no amount is set, the full amount is transferred. There cannot be any line items with recurring prices when using this field.
1026
220
  attr_accessor :amount
@@ -1035,8 +229,6 @@ module Stripe
1035
229
  @destination = destination
1036
230
  end
1037
231
  end
1038
- # Set to true to allow quote lines to have `starts_at` in the past if collection is paused between `starts_at` and now.
1039
- attr_accessor :allow_backdated_lines
1040
232
  # The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner's Stripe account. There cannot be any line items with recurring prices when using this field.
1041
233
  attr_accessor :application_fee_amount
1042
234
  # 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. There must be at least 1 line item with a recurring price to use this field.
@@ -1047,8 +239,6 @@ module Stripe
1047
239
  attr_accessor :collection_method
1048
240
  # The customer for which this quote belongs to. A customer is required before finalizing the quote. Once specified, it cannot be changed.
1049
241
  attr_accessor :customer
1050
- # The account for which this quote belongs to. A customer or account is required before finalizing the quote. Once specified, it cannot be changed.
1051
- attr_accessor :customer_account
1052
242
  # The tax rates that will apply to any line item that does not have `tax_rates` set.
1053
243
  attr_accessor :default_tax_rates
1054
244
  # A description that will be displayed on the quote PDF. If no value is passed, the default description configured in your [quote template settings](https://dashboard.stripe.com/settings/billing/quote) will be used.
@@ -1069,29 +259,23 @@ module Stripe
1069
259
  attr_accessor :invoice_settings
1070
260
  # A list of line items the customer is being quoted for. Each line item includes information about the product, the quantity, and the resulting cost.
1071
261
  attr_accessor :line_items
1072
- # A list of [quote lines](https://docs.stripe.com/api/quote_lines) on the quote. These lines describe changes, in the order provided, that will be used to create new subscription schedules or update existing subscription schedules when the quote is accepted.
1073
- attr_accessor :lines
1074
262
  # 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`.
1075
263
  attr_accessor :metadata
1076
264
  # The account on behalf of which to charge.
1077
265
  attr_accessor :on_behalf_of
1078
266
  # When creating a subscription or subscription schedule, the specified configuration data will be used. There must be at least one line item with a recurring price for a subscription or subscription schedule to be created. A subscription schedule is created if `subscription_data[effective_date]` is present and in the future, otherwise a subscription is created.
1079
267
  attr_accessor :subscription_data
1080
- # List representing overrides for `subscription_data` configurations for specific subscription schedules.
1081
- attr_accessor :subscription_data_overrides
1082
268
  # ID of the test clock to attach to the quote.
1083
269
  attr_accessor :test_clock
1084
270
  # The data with which to automatically create a Transfer for each of the invoices.
1085
271
  attr_accessor :transfer_data
1086
272
 
1087
273
  def initialize(
1088
- allow_backdated_lines: nil,
1089
274
  application_fee_amount: nil,
1090
275
  application_fee_percent: nil,
1091
276
  automatic_tax: nil,
1092
277
  collection_method: nil,
1093
278
  customer: nil,
1094
- customer_account: nil,
1095
279
  default_tax_rates: nil,
1096
280
  description: nil,
1097
281
  discounts: nil,
@@ -1102,21 +286,17 @@ module Stripe
1102
286
  header: nil,
1103
287
  invoice_settings: nil,
1104
288
  line_items: nil,
1105
- lines: nil,
1106
289
  metadata: nil,
1107
290
  on_behalf_of: nil,
1108
291
  subscription_data: nil,
1109
- subscription_data_overrides: nil,
1110
292
  test_clock: nil,
1111
293
  transfer_data: nil
1112
294
  )
1113
- @allow_backdated_lines = allow_backdated_lines
1114
295
  @application_fee_amount = application_fee_amount
1115
296
  @application_fee_percent = application_fee_percent
1116
297
  @automatic_tax = automatic_tax
1117
298
  @collection_method = collection_method
1118
299
  @customer = customer
1119
- @customer_account = customer_account
1120
300
  @default_tax_rates = default_tax_rates
1121
301
  @description = description
1122
302
  @discounts = discounts
@@ -1127,11 +307,9 @@ module Stripe
1127
307
  @header = header
1128
308
  @invoice_settings = invoice_settings
1129
309
  @line_items = line_items
1130
- @lines = lines
1131
310
  @metadata = metadata
1132
311
  @on_behalf_of = on_behalf_of
1133
312
  @subscription_data = subscription_data
1134
- @subscription_data_overrides = subscription_data_overrides
1135
313
  @test_clock = test_clock
1136
314
  @transfer_data = transfer_data
1137
315
  end
@@ -1171,44 +349,16 @@ module Stripe
1171
349
  end
1172
350
 
1173
351
  class Discount < Stripe::RequestParams
1174
- class DiscountEnd < Stripe::RequestParams
1175
- class Duration < Stripe::RequestParams
1176
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1177
- attr_accessor :interval
1178
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1179
- attr_accessor :interval_count
1180
-
1181
- def initialize(interval: nil, interval_count: nil)
1182
- @interval = interval
1183
- @interval_count = interval_count
1184
- end
1185
- end
1186
- # Time span for the redeemed discount.
1187
- attr_accessor :duration
1188
- # A precise Unix timestamp for the discount to end. Must be in the future.
1189
- attr_accessor :timestamp
1190
- # The type of calculation made to determine when the discount ends.
1191
- attr_accessor :type
1192
-
1193
- def initialize(duration: nil, timestamp: nil, type: nil)
1194
- @duration = duration
1195
- @timestamp = timestamp
1196
- @type = type
1197
- end
1198
- end
1199
352
  # ID of the coupon to create a new discount for.
1200
353
  attr_accessor :coupon
1201
354
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
1202
355
  attr_accessor :discount
1203
- # Details to determine how long the discount should be applied for.
1204
- attr_accessor :discount_end
1205
356
  # ID of the promotion code to create a new discount for.
1206
357
  attr_accessor :promotion_code
1207
358
 
1208
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
359
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
1209
360
  @coupon = coupon
1210
361
  @discount = discount
1211
- @discount_end = discount_end
1212
362
  @promotion_code = promotion_code
1213
363
  end
1214
364
  end
@@ -1236,529 +386,18 @@ module Stripe
1236
386
  end
1237
387
  end
1238
388
 
1239
- class Line < Stripe::RequestParams
1240
- class Action < Stripe::RequestParams
1241
- class AddDiscount < Stripe::RequestParams
1242
- class DiscountEnd < Stripe::RequestParams
1243
- # The type of calculation made to determine when the discount ends.
1244
- attr_accessor :type
1245
-
1246
- def initialize(type: nil)
1247
- @type = type
1248
- end
1249
- end
1250
- # The coupon code to redeem.
1251
- attr_accessor :coupon
1252
- # An ID of an existing discount for a coupon that was already redeemed.
1253
- attr_accessor :discount
1254
- # Details to determine how long the discount should be applied for.
1255
- attr_accessor :discount_end
1256
- # 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.
1257
- attr_accessor :index
1258
- # The promotion code to redeem.
1259
- attr_accessor :promotion_code
1260
-
1261
- def initialize(
1262
- coupon: nil,
1263
- discount: nil,
1264
- discount_end: nil,
1265
- index: nil,
1266
- promotion_code: nil
1267
- )
1268
- @coupon = coupon
1269
- @discount = discount
1270
- @discount_end = discount_end
1271
- @index = index
1272
- @promotion_code = promotion_code
1273
- end
1274
- end
1275
-
1276
- class AddItem < Stripe::RequestParams
1277
- class Discount < Stripe::RequestParams
1278
- class DiscountEnd < Stripe::RequestParams
1279
- class Duration < Stripe::RequestParams
1280
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1281
- attr_accessor :interval
1282
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1283
- attr_accessor :interval_count
1284
-
1285
- def initialize(interval: nil, interval_count: nil)
1286
- @interval = interval
1287
- @interval_count = interval_count
1288
- end
1289
- end
1290
- # Time span for the redeemed discount.
1291
- attr_accessor :duration
1292
- # A precise Unix timestamp for the discount to end. Must be in the future.
1293
- attr_accessor :timestamp
1294
- # The type of calculation made to determine when the discount ends.
1295
- attr_accessor :type
1296
-
1297
- def initialize(duration: nil, timestamp: nil, type: nil)
1298
- @duration = duration
1299
- @timestamp = timestamp
1300
- @type = type
1301
- end
1302
- end
1303
- # ID of the coupon to create a new discount for.
1304
- attr_accessor :coupon
1305
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
1306
- attr_accessor :discount
1307
- # Details to determine how long the discount should be applied for.
1308
- attr_accessor :discount_end
1309
- # ID of the promotion code to create a new discount for.
1310
- attr_accessor :promotion_code
1311
-
1312
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
1313
- @coupon = coupon
1314
- @discount = discount
1315
- @discount_end = discount_end
1316
- @promotion_code = promotion_code
1317
- end
1318
- end
1319
-
1320
- class Trial < Stripe::RequestParams
1321
- # 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.
1322
- attr_accessor :converts_to
1323
- # Determines the type of trial for this item.
1324
- attr_accessor :type
1325
-
1326
- def initialize(converts_to: nil, type: nil)
1327
- @converts_to = converts_to
1328
- @type = type
1329
- end
1330
- end
1331
- # The discounts applied to the item. Subscription item discounts are applied before subscription discounts.
1332
- attr_accessor :discounts
1333
- # 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`.
1334
- attr_accessor :metadata
1335
- # The ID of the price object.
1336
- attr_accessor :price
1337
- # Quantity for this item.
1338
- attr_accessor :quantity
1339
- # 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`.
1340
- attr_accessor :tax_rates
1341
- # Options that configure the trial on the subscription item.
1342
- attr_accessor :trial
1343
-
1344
- def initialize(
1345
- discounts: nil,
1346
- metadata: nil,
1347
- price: nil,
1348
- quantity: nil,
1349
- tax_rates: nil,
1350
- trial: nil
1351
- )
1352
- @discounts = discounts
1353
- @metadata = metadata
1354
- @price = price
1355
- @quantity = quantity
1356
- @tax_rates = tax_rates
1357
- @trial = trial
1358
- end
1359
- end
1360
-
1361
- class RemoveDiscount < Stripe::RequestParams
1362
- # The coupon code to remove from the `discounts` array.
1363
- attr_accessor :coupon
1364
- # The ID of a discount to remove from the `discounts` array.
1365
- attr_accessor :discount
1366
- # The ID of a promotion code to remove from the `discounts` array.
1367
- attr_accessor :promotion_code
1368
-
1369
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
1370
- @coupon = coupon
1371
- @discount = discount
1372
- @promotion_code = promotion_code
1373
- end
1374
- end
1375
-
1376
- class RemoveItem < Stripe::RequestParams
1377
- # ID of a price to remove.
1378
- attr_accessor :price
1379
-
1380
- def initialize(price: nil)
1381
- @price = price
1382
- end
1383
- end
1384
-
1385
- class SetDiscount < Stripe::RequestParams
1386
- # The coupon code to replace the `discounts` array with.
1387
- attr_accessor :coupon
1388
- # An ID of an existing discount to replace the `discounts` array with.
1389
- attr_accessor :discount
1390
- # An ID of an existing promotion code to replace the `discounts` array with.
1391
- attr_accessor :promotion_code
1392
-
1393
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
1394
- @coupon = coupon
1395
- @discount = discount
1396
- @promotion_code = promotion_code
1397
- end
1398
- end
1399
-
1400
- class SetItem < Stripe::RequestParams
1401
- class Discount < Stripe::RequestParams
1402
- class DiscountEnd < Stripe::RequestParams
1403
- class Duration < Stripe::RequestParams
1404
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1405
- attr_accessor :interval
1406
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1407
- attr_accessor :interval_count
1408
-
1409
- def initialize(interval: nil, interval_count: nil)
1410
- @interval = interval
1411
- @interval_count = interval_count
1412
- end
1413
- end
1414
- # Time span for the redeemed discount.
1415
- attr_accessor :duration
1416
- # A precise Unix timestamp for the discount to end. Must be in the future.
1417
- attr_accessor :timestamp
1418
- # The type of calculation made to determine when the discount ends.
1419
- attr_accessor :type
1420
-
1421
- def initialize(duration: nil, timestamp: nil, type: nil)
1422
- @duration = duration
1423
- @timestamp = timestamp
1424
- @type = type
1425
- end
1426
- end
1427
- # ID of the coupon to create a new discount for.
1428
- attr_accessor :coupon
1429
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
1430
- attr_accessor :discount
1431
- # Details to determine how long the discount should be applied for.
1432
- attr_accessor :discount_end
1433
- # ID of the promotion code to create a new discount for.
1434
- attr_accessor :promotion_code
1435
-
1436
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
1437
- @coupon = coupon
1438
- @discount = discount
1439
- @discount_end = discount_end
1440
- @promotion_code = promotion_code
1441
- end
1442
- end
1443
-
1444
- class Trial < Stripe::RequestParams
1445
- # 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.
1446
- attr_accessor :converts_to
1447
- # Determines the type of trial for this item.
1448
- attr_accessor :type
1449
-
1450
- def initialize(converts_to: nil, type: nil)
1451
- @converts_to = converts_to
1452
- @type = type
1453
- end
1454
- end
1455
- # 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`.
1456
- attr_accessor :discounts
1457
- # 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`.
1458
- attr_accessor :metadata
1459
- # The ID of the price object.
1460
- attr_accessor :price
1461
- # 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`.
1462
- attr_accessor :quantity
1463
- # 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`.
1464
- attr_accessor :tax_rates
1465
- # 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`.
1466
- attr_accessor :trial
1467
-
1468
- def initialize(
1469
- discounts: nil,
1470
- metadata: nil,
1471
- price: nil,
1472
- quantity: nil,
1473
- tax_rates: nil,
1474
- trial: nil
1475
- )
1476
- @discounts = discounts
1477
- @metadata = metadata
1478
- @price = price
1479
- @quantity = quantity
1480
- @tax_rates = tax_rates
1481
- @trial = trial
1482
- end
1483
- end
1484
- # Details for the `add_discount` type.
1485
- attr_accessor :add_discount
1486
- # Details for the `add_item` type.
1487
- attr_accessor :add_item
1488
- # Details for the `add_metadata` type: specify a hash of key-value pairs.
1489
- attr_accessor :add_metadata
1490
- # Details for the `remove_discount` type.
1491
- attr_accessor :remove_discount
1492
- # Details for the `remove_item` type.
1493
- attr_accessor :remove_item
1494
- # Details for the `remove_metadata` type: specify an array of metadata keys.
1495
- attr_accessor :remove_metadata
1496
- # Details for the `set_discounts` type.
1497
- attr_accessor :set_discounts
1498
- # Details for the `set_items` type.
1499
- attr_accessor :set_items
1500
- # Details for the `set_metadata` type: specify an array of key-value pairs.
1501
- attr_accessor :set_metadata
1502
- # The type of action the quote line performs.
1503
- attr_accessor :type
1504
-
1505
- def initialize(
1506
- add_discount: nil,
1507
- add_item: nil,
1508
- add_metadata: nil,
1509
- remove_discount: nil,
1510
- remove_item: nil,
1511
- remove_metadata: nil,
1512
- set_discounts: nil,
1513
- set_items: nil,
1514
- set_metadata: nil,
1515
- type: nil
1516
- )
1517
- @add_discount = add_discount
1518
- @add_item = add_item
1519
- @add_metadata = add_metadata
1520
- @remove_discount = remove_discount
1521
- @remove_item = remove_item
1522
- @remove_metadata = remove_metadata
1523
- @set_discounts = set_discounts
1524
- @set_items = set_items
1525
- @set_metadata = set_metadata
1526
- @type = type
1527
- end
1528
- end
1529
-
1530
- class AppliesTo < Stripe::RequestParams
1531
- # A custom string that identifies a new subscription schedule being created upon quote acceptance. All quote lines with the same `new_reference` field will be applied to the creation of a new subscription schedule.
1532
- attr_accessor :new_reference
1533
- # The ID of the schedule the line applies to.
1534
- attr_accessor :subscription_schedule
1535
- # Describes whether the quote line is affecting a new schedule or an existing schedule.
1536
- attr_accessor :type
1537
-
1538
- def initialize(new_reference: nil, subscription_schedule: nil, type: nil)
1539
- @new_reference = new_reference
1540
- @subscription_schedule = subscription_schedule
1541
- @type = type
1542
- end
1543
- end
1544
-
1545
- class CancelSubscriptionSchedule < Stripe::RequestParams
1546
- # Timestamp helper to cancel the underlying schedule on the accompanying line's start date. Must be set to `line_starts_at`.
1547
- attr_accessor :cancel_at
1548
- # If the subscription schedule is `active`, indicates if a final invoice will be generated that contains any un-invoiced metered usage and new/pending proration invoice items. Boolean that defaults to `true`.
1549
- attr_accessor :invoice_now
1550
- # If the subscription schedule is `active`, indicates if the cancellation should be prorated. Boolean that defaults to `true`.
1551
- attr_accessor :prorate
1552
-
1553
- def initialize(cancel_at: nil, invoice_now: nil, prorate: nil)
1554
- @cancel_at = cancel_at
1555
- @invoice_now = invoice_now
1556
- @prorate = prorate
1557
- end
1558
- end
1559
-
1560
- class EndsAt < Stripe::RequestParams
1561
- class DiscountEnd < Stripe::RequestParams
1562
- # The ID of a specific discount.
1563
- attr_accessor :discount
1564
-
1565
- def initialize(discount: nil)
1566
- @discount = discount
1567
- end
1568
- end
1569
-
1570
- class Duration < Stripe::RequestParams
1571
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1572
- attr_accessor :interval
1573
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1574
- attr_accessor :interval_count
1575
-
1576
- def initialize(interval: nil, interval_count: nil)
1577
- @interval = interval
1578
- @interval_count = interval_count
1579
- end
1580
- end
1581
- # Use the `end` time of a given discount.
1582
- attr_accessor :discount_end
1583
- # Time span for the quote line starting from the `starts_at` date.
1584
- attr_accessor :duration
1585
- # A precise Unix timestamp.
1586
- attr_accessor :timestamp
1587
- # Select a way to pass in `ends_at`.
1588
- attr_accessor :type
1589
-
1590
- def initialize(discount_end: nil, duration: nil, timestamp: nil, type: nil)
1591
- @discount_end = discount_end
1592
- @duration = duration
1593
- @timestamp = timestamp
1594
- @type = type
1595
- end
1596
- end
1597
-
1598
- class SetPauseCollection < Stripe::RequestParams
1599
- class Set < Stripe::RequestParams
1600
- # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
1601
- attr_accessor :behavior
1602
-
1603
- def initialize(behavior: nil)
1604
- @behavior = behavior
1605
- end
1606
- end
1607
- # Details of the pause_collection behavior to apply to the amendment.
1608
- attr_accessor :set
1609
- # Determines the type of the pause_collection amendment.
1610
- attr_accessor :type
1611
-
1612
- def initialize(set: nil, type: nil)
1613
- @set = set
1614
- @type = type
1615
- end
1616
- end
1617
-
1618
- class StartsAt < Stripe::RequestParams
1619
- class DiscountEnd < Stripe::RequestParams
1620
- # The ID of a specific discount.
1621
- attr_accessor :discount
1622
-
1623
- def initialize(discount: nil)
1624
- @discount = discount
1625
- end
1626
- end
1627
-
1628
- class LineEndsAt < Stripe::RequestParams
1629
- # The ID of a quote line.
1630
- attr_accessor :id
1631
- # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
1632
- attr_accessor :index
1633
-
1634
- def initialize(id: nil, index: nil)
1635
- @id = id
1636
- @index = index
1637
- end
1638
- end
1639
- # Use the `end` time of a given discount.
1640
- attr_accessor :discount_end
1641
- # The timestamp the given line ends at.
1642
- attr_accessor :line_ends_at
1643
- # A precise Unix timestamp.
1644
- attr_accessor :timestamp
1645
- # Select a way to pass in `starts_at`.
1646
- attr_accessor :type
1647
-
1648
- def initialize(discount_end: nil, line_ends_at: nil, timestamp: nil, type: nil)
1649
- @discount_end = discount_end
1650
- @line_ends_at = line_ends_at
1651
- @timestamp = timestamp
1652
- @type = type
1653
- end
1654
- end
1655
-
1656
- class TrialSettings < Stripe::RequestParams
1657
- class EndBehavior < Stripe::RequestParams
1658
- # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
1659
- attr_accessor :prorate_up_front
1660
-
1661
- def initialize(prorate_up_front: nil)
1662
- @prorate_up_front = prorate_up_front
1663
- end
1664
- end
1665
- # Defines how the subscription should behave when a trial ends.
1666
- attr_accessor :end_behavior
1667
-
1668
- def initialize(end_behavior: nil)
1669
- @end_behavior = end_behavior
1670
- end
1671
- end
1672
- # An array of operations the quote line performs.
1673
- attr_accessor :actions
1674
- # Details to identify the subscription schedule the quote line applies to.
1675
- attr_accessor :applies_to
1676
- # For point-in-time quote lines (having no `ends_at` timestamp), this attribute lets you set or remove whether the subscription's billing cycle anchor is reset at the Quote Line `starts_at` timestamp.For time-span based quote lines (having both `starts_at` and `ends_at`), the only valid value is `automatic`, which removes any previously configured billing cycle anchor resets during the window of time spanning the quote line.
1677
- attr_accessor :billing_cycle_anchor
1678
- # A point-in-time operation that cancels an existing subscription schedule at the line's starts_at timestamp. Currently only compatible with `quote_acceptance_date` for `starts_at`. When using cancel_subscription_schedule, the subscription schedule on the quote remains unalterable, except for modifications to the metadata, collection_method or invoice_settings.
1679
- attr_accessor :cancel_subscription_schedule
1680
- # Details to identify the end of the time range modified by the proposed change. If not supplied, the quote line is considered a point-in-time operation that only affects the exact timestamp at `starts_at`, and a restricted set of attributes is supported on the quote line.
1681
- attr_accessor :ends_at
1682
- # The ID of an existing line on the quote.
1683
- attr_accessor :id
1684
- # Changes to how Stripe handles prorations during the quote line's time span. Affects if and how prorations are created when a future phase starts.
1685
- attr_accessor :proration_behavior
1686
- # Defines how to pause collection for the underlying subscription throughout the duration of the amendment.
1687
- attr_accessor :set_pause_collection
1688
- # Timestamp helper to end the underlying schedule early, based on the acompanying line's start or end date.
1689
- attr_accessor :set_schedule_end
1690
- # Details to identify the earliest timestamp where the proposed change should take effect.
1691
- attr_accessor :starts_at
1692
- # Settings related to subscription trials.
1693
- attr_accessor :trial_settings
1694
-
1695
- def initialize(
1696
- actions: nil,
1697
- applies_to: nil,
1698
- billing_cycle_anchor: nil,
1699
- cancel_subscription_schedule: nil,
1700
- ends_at: nil,
1701
- id: nil,
1702
- proration_behavior: nil,
1703
- set_pause_collection: nil,
1704
- set_schedule_end: nil,
1705
- starts_at: nil,
1706
- trial_settings: nil
1707
- )
1708
- @actions = actions
1709
- @applies_to = applies_to
1710
- @billing_cycle_anchor = billing_cycle_anchor
1711
- @cancel_subscription_schedule = cancel_subscription_schedule
1712
- @ends_at = ends_at
1713
- @id = id
1714
- @proration_behavior = proration_behavior
1715
- @set_pause_collection = set_pause_collection
1716
- @set_schedule_end = set_schedule_end
1717
- @starts_at = starts_at
1718
- @trial_settings = trial_settings
1719
- end
1720
- end
1721
-
1722
389
  class LineItem < Stripe::RequestParams
1723
390
  class Discount < Stripe::RequestParams
1724
- class DiscountEnd < Stripe::RequestParams
1725
- class Duration < Stripe::RequestParams
1726
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1727
- attr_accessor :interval
1728
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1729
- attr_accessor :interval_count
1730
-
1731
- def initialize(interval: nil, interval_count: nil)
1732
- @interval = interval
1733
- @interval_count = interval_count
1734
- end
1735
- end
1736
- # Time span for the redeemed discount.
1737
- attr_accessor :duration
1738
- # A precise Unix timestamp for the discount to end. Must be in the future.
1739
- attr_accessor :timestamp
1740
- # The type of calculation made to determine when the discount ends.
1741
- attr_accessor :type
1742
-
1743
- def initialize(duration: nil, timestamp: nil, type: nil)
1744
- @duration = duration
1745
- @timestamp = timestamp
1746
- @type = type
1747
- end
1748
- end
1749
391
  # ID of the coupon to create a new discount for.
1750
392
  attr_accessor :coupon
1751
393
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
1752
394
  attr_accessor :discount
1753
- # Details to determine how long the discount should be applied for.
1754
- attr_accessor :discount_end
1755
395
  # ID of the promotion code to create a new discount for.
1756
396
  attr_accessor :promotion_code
1757
397
 
1758
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
398
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
1759
399
  @coupon = coupon
1760
400
  @discount = discount
1761
- @discount_end = discount_end
1762
401
  @promotion_code = promotion_code
1763
402
  end
1764
403
  end
@@ -1835,277 +474,23 @@ module Stripe
1835
474
  end
1836
475
 
1837
476
  class SubscriptionData < Stripe::RequestParams
1838
- class BillOnAcceptance < Stripe::RequestParams
1839
- class BillFrom < Stripe::RequestParams
1840
- class LineStartsAt < Stripe::RequestParams
1841
- # The ID of a quote line.
1842
- attr_accessor :id
1843
- # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
1844
- attr_accessor :index
1845
-
1846
- def initialize(id: nil, index: nil)
1847
- @id = id
1848
- @index = index
1849
- end
1850
- end
1851
- # Details of a Quote line to start the bill period from.
1852
- attr_accessor :line_starts_at
1853
- # A precise Unix timestamp.
1854
- attr_accessor :timestamp
1855
- # The type of method to specify the `bill_from` time.
1856
- attr_accessor :type
1857
-
1858
- def initialize(line_starts_at: nil, timestamp: nil, type: nil)
1859
- @line_starts_at = line_starts_at
1860
- @timestamp = timestamp
1861
- @type = type
1862
- end
1863
- end
1864
-
1865
- class BillUntil < Stripe::RequestParams
1866
- class Duration < Stripe::RequestParams
1867
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1868
- attr_accessor :interval
1869
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1870
- attr_accessor :interval_count
1871
-
1872
- def initialize(interval: nil, interval_count: nil)
1873
- @interval = interval
1874
- @interval_count = interval_count
1875
- end
1876
- end
1877
-
1878
- class LineEndsAt < Stripe::RequestParams
1879
- # The ID of a quote line.
1880
- attr_accessor :id
1881
- # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
1882
- attr_accessor :index
1883
-
1884
- def initialize(id: nil, index: nil)
1885
- @id = id
1886
- @index = index
1887
- end
1888
- end
1889
- # Details of the duration over which to bill.
1890
- attr_accessor :duration
1891
- # Details of a Quote line item from which to bill until.
1892
- attr_accessor :line_ends_at
1893
- # A precise Unix timestamp.
1894
- attr_accessor :timestamp
1895
- # The type of method to specify the `bill_until` time.
1896
- attr_accessor :type
1897
-
1898
- def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil)
1899
- @duration = duration
1900
- @line_ends_at = line_ends_at
1901
- @timestamp = timestamp
1902
- @type = type
1903
- end
1904
- end
1905
- # The start of the period to bill from when the Quote is accepted.
1906
- attr_accessor :bill_from
1907
- # The end of the period to bill until when the Quote is accepted.
1908
- attr_accessor :bill_until
1909
-
1910
- def initialize(bill_from: nil, bill_until: nil)
1911
- @bill_from = bill_from
1912
- @bill_until = bill_until
1913
- end
1914
- end
1915
-
1916
- class Prebilling < Stripe::RequestParams
1917
- # This is used to determine the number of billing cycles to prebill.
1918
- attr_accessor :iterations
1919
-
1920
- def initialize(iterations: nil)
1921
- @iterations = iterations
1922
- end
1923
- end
1924
- # Describes the period to bill for upon accepting the quote.
1925
- attr_accessor :bill_on_acceptance
1926
- # 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.
1927
- attr_accessor :billing_behavior
1928
- # When specified as `reset`, the subscription will always start a new billing period when the quote is accepted.
1929
- attr_accessor :billing_cycle_anchor
1930
477
  # The subscription's description, meant to be displayable to the customer. Use this field to optionally store an explanation of the subscription for rendering in Stripe surfaces and certain local payment methods UIs.
1931
478
  attr_accessor :description
1932
479
  # When creating a new subscription, the date of which the subscription schedule will start after the quote is accepted. When updating a subscription, the date of which the subscription will be updated using a subscription schedule. The special value `current_period_end` can be provided to update a subscription at the end of its current period. The `effective_date` is ignored if it is in the past when the quote is accepted.
1933
480
  attr_accessor :effective_date
1934
- # Behavior of the subscription schedule and underlying subscription when it ends.
1935
- attr_accessor :end_behavior
1936
481
  # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that will set metadata on the subscription or subscription schedule when the quote is accepted. If a recurring price is included in `line_items`, this field will be passed to the resulting subscription's `metadata` field. If `subscription_data.effective_date` is used, this field will be passed to the resulting subscription schedule's `phases.metadata` field. Unlike object-level metadata, this field is declarative. Updates will clear prior values.
1937
482
  attr_accessor :metadata
1938
- # If specified, the invoicing for the given billing cycle iterations will be processed when the quote is accepted. Cannot be used with `effective_date`.
1939
- attr_accessor :prebilling
1940
- # Determines how to handle [prorations](https://stripe.com/docs/subscriptions/billing-cycle#prorations). When creating a subscription, valid values are `create_prorations` or `none`.
1941
- #
1942
- # When updating a subscription, valid values are `create_prorations`, `none`, or `always_invoice`.
1943
- #
1944
- # Passing `create_prorations` will cause proration invoice items to be created when applicable. These proration items will only be invoiced immediately under [certain conditions](https://stripe.com/docs/subscriptions/upgrading-downgrading#immediate-payment). In order to always invoice immediately for prorations, pass `always_invoice`.
1945
- #
1946
- # Prorations can be disabled by passing `none`.
1947
- attr_accessor :proration_behavior
1948
483
  # Integer representing the number of trial period days before the customer is charged for the first time.
1949
484
  attr_accessor :trial_period_days
1950
485
 
1951
- def initialize(
1952
- bill_on_acceptance: nil,
1953
- billing_behavior: nil,
1954
- billing_cycle_anchor: nil,
1955
- description: nil,
1956
- effective_date: nil,
1957
- end_behavior: nil,
1958
- metadata: nil,
1959
- prebilling: nil,
1960
- proration_behavior: nil,
1961
- trial_period_days: nil
1962
- )
1963
- @bill_on_acceptance = bill_on_acceptance
1964
- @billing_behavior = billing_behavior
1965
- @billing_cycle_anchor = billing_cycle_anchor
486
+ def initialize(description: nil, effective_date: nil, metadata: nil, trial_period_days: nil)
1966
487
  @description = description
1967
488
  @effective_date = effective_date
1968
- @end_behavior = end_behavior
1969
489
  @metadata = metadata
1970
- @prebilling = prebilling
1971
- @proration_behavior = proration_behavior
1972
490
  @trial_period_days = trial_period_days
1973
491
  end
1974
492
  end
1975
493
 
1976
- class SubscriptionDataOverride < Stripe::RequestParams
1977
- class AppliesTo < Stripe::RequestParams
1978
- # A custom string that identifies a new subscription schedule being created upon quote acceptance. All quote lines with the same `new_reference` field will be applied to the creation of a new subscription schedule.
1979
- attr_accessor :new_reference
1980
- # The ID of the schedule the line applies to.
1981
- attr_accessor :subscription_schedule
1982
- # Describes whether the quote line is affecting a new schedule or an existing schedule.
1983
- attr_accessor :type
1984
-
1985
- def initialize(new_reference: nil, subscription_schedule: nil, type: nil)
1986
- @new_reference = new_reference
1987
- @subscription_schedule = subscription_schedule
1988
- @type = type
1989
- end
1990
- end
1991
-
1992
- class BillOnAcceptance < Stripe::RequestParams
1993
- class BillFrom < Stripe::RequestParams
1994
- class LineStartsAt < Stripe::RequestParams
1995
- # The ID of a quote line.
1996
- attr_accessor :id
1997
- # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
1998
- attr_accessor :index
1999
-
2000
- def initialize(id: nil, index: nil)
2001
- @id = id
2002
- @index = index
2003
- end
2004
- end
2005
- # Details of a Quote line to start the bill period from.
2006
- attr_accessor :line_starts_at
2007
- # A precise Unix timestamp.
2008
- attr_accessor :timestamp
2009
- # The type of method to specify the `bill_from` time.
2010
- attr_accessor :type
2011
-
2012
- def initialize(line_starts_at: nil, timestamp: nil, type: nil)
2013
- @line_starts_at = line_starts_at
2014
- @timestamp = timestamp
2015
- @type = type
2016
- end
2017
- end
2018
-
2019
- class BillUntil < Stripe::RequestParams
2020
- class Duration < Stripe::RequestParams
2021
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
2022
- attr_accessor :interval
2023
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
2024
- attr_accessor :interval_count
2025
-
2026
- def initialize(interval: nil, interval_count: nil)
2027
- @interval = interval
2028
- @interval_count = interval_count
2029
- end
2030
- end
2031
-
2032
- class LineEndsAt < Stripe::RequestParams
2033
- # The ID of a quote line.
2034
- attr_accessor :id
2035
- # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
2036
- attr_accessor :index
2037
-
2038
- def initialize(id: nil, index: nil)
2039
- @id = id
2040
- @index = index
2041
- end
2042
- end
2043
- # Details of the duration over which to bill.
2044
- attr_accessor :duration
2045
- # Details of a Quote line item from which to bill until.
2046
- attr_accessor :line_ends_at
2047
- # A precise Unix timestamp.
2048
- attr_accessor :timestamp
2049
- # The type of method to specify the `bill_until` time.
2050
- attr_accessor :type
2051
-
2052
- def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil)
2053
- @duration = duration
2054
- @line_ends_at = line_ends_at
2055
- @timestamp = timestamp
2056
- @type = type
2057
- end
2058
- end
2059
- # The start of the period to bill from when the Quote is accepted.
2060
- attr_accessor :bill_from
2061
- # The end of the period to bill until when the Quote is accepted.
2062
- attr_accessor :bill_until
2063
-
2064
- def initialize(bill_from: nil, bill_until: nil)
2065
- @bill_from = bill_from
2066
- @bill_until = bill_until
2067
- end
2068
- end
2069
- # Whether the override applies to an existing Subscription Schedule or a new Subscription Schedule.
2070
- attr_accessor :applies_to
2071
- # Describes the period to bill for upon accepting the quote.
2072
- attr_accessor :bill_on_acceptance
2073
- # 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.
2074
- attr_accessor :billing_behavior
2075
- # The customer the Subscription Data override applies to.
2076
- attr_accessor :customer
2077
- # The subscription's description, meant to be displayable to the customer. Use this field to optionally store an explanation of the subscription for rendering in Stripe surfaces and certain local payment methods UIs.
2078
- attr_accessor :description
2079
- # Behavior of the subscription schedule and underlying subscription when it ends.
2080
- attr_accessor :end_behavior
2081
- # Determines how to handle [prorations](https://stripe.com/docs/subscriptions/billing-cycle#prorations). When creating a subscription, valid values are `create_prorations` or `none`.
2082
- #
2083
- # When updating a subscription, valid values are `create_prorations`, `none`, or `always_invoice`.
2084
- #
2085
- # Passing `create_prorations` will cause proration invoice items to be created when applicable. These proration items will only be invoiced immediately under [certain conditions](https://stripe.com/docs/subscriptions/upgrading-downgrading#immediate-payment). In order to always invoice immediately for prorations, pass `always_invoice`.
2086
- #
2087
- # Prorations can be disabled by passing `none`.
2088
- attr_accessor :proration_behavior
2089
-
2090
- def initialize(
2091
- applies_to: nil,
2092
- bill_on_acceptance: nil,
2093
- billing_behavior: nil,
2094
- customer: nil,
2095
- description: nil,
2096
- end_behavior: nil,
2097
- proration_behavior: nil
2098
- )
2099
- @applies_to = applies_to
2100
- @bill_on_acceptance = bill_on_acceptance
2101
- @billing_behavior = billing_behavior
2102
- @customer = customer
2103
- @description = description
2104
- @end_behavior = end_behavior
2105
- @proration_behavior = proration_behavior
2106
- end
2107
- end
2108
-
2109
494
  class TransferData < Stripe::RequestParams
2110
495
  # The amount that will be transferred automatically when the invoice is paid. If no amount is set, the full amount is transferred. There cannot be any line items with recurring prices when using this field.
2111
496
  attr_accessor :amount
@@ -2120,8 +505,6 @@ module Stripe
2120
505
  @destination = destination
2121
506
  end
2122
507
  end
2123
- # Set to true to allow quote lines to have `starts_at` in the past if collection is paused between `starts_at` and now.
2124
- attr_accessor :allow_backdated_lines
2125
508
  # The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner's Stripe account. There cannot be any line items with recurring prices when using this field.
2126
509
  attr_accessor :application_fee_amount
2127
510
  # 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. There must be at least 1 line item with a recurring price to use this field.
@@ -2132,8 +515,6 @@ module Stripe
2132
515
  attr_accessor :collection_method
2133
516
  # The customer for which this quote belongs to. A customer is required before finalizing the quote. Once specified, it cannot be changed.
2134
517
  attr_accessor :customer
2135
- # The account for which this quote belongs to. A customer or account is required before finalizing the quote. Once specified, it cannot be changed.
2136
- attr_accessor :customer_account
2137
518
  # The tax rates that will apply to any line item that does not have `tax_rates` set.
2138
519
  attr_accessor :default_tax_rates
2139
520
  # A description that will be displayed on the quote PDF.
@@ -2152,27 +533,21 @@ module Stripe
2152
533
  attr_accessor :invoice_settings
2153
534
  # A list of line items the customer is being quoted for. Each line item includes information about the product, the quantity, and the resulting cost.
2154
535
  attr_accessor :line_items
2155
- # A list of [quote lines](https://docs.stripe.com/api/quote_lines) on the quote. These lines describe changes, in the order provided, that will be used to create new subscription schedules or update existing subscription schedules when the quote is accepted.
2156
- attr_accessor :lines
2157
536
  # 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`.
2158
537
  attr_accessor :metadata
2159
538
  # The account on behalf of which to charge.
2160
539
  attr_accessor :on_behalf_of
2161
540
  # When creating a subscription or subscription schedule, the specified configuration data will be used. There must be at least one line item with a recurring price for a subscription or subscription schedule to be created. A subscription schedule is created if `subscription_data[effective_date]` is present and in the future, otherwise a subscription is created.
2162
541
  attr_accessor :subscription_data
2163
- # List representing overrides for `subscription_data` configurations for specific subscription schedules.
2164
- attr_accessor :subscription_data_overrides
2165
542
  # The data with which to automatically create a Transfer for each of the invoices.
2166
543
  attr_accessor :transfer_data
2167
544
 
2168
545
  def initialize(
2169
- allow_backdated_lines: nil,
2170
546
  application_fee_amount: nil,
2171
547
  application_fee_percent: nil,
2172
548
  automatic_tax: nil,
2173
549
  collection_method: nil,
2174
550
  customer: nil,
2175
- customer_account: nil,
2176
551
  default_tax_rates: nil,
2177
552
  description: nil,
2178
553
  discounts: nil,
@@ -2182,20 +557,16 @@ module Stripe
2182
557
  header: nil,
2183
558
  invoice_settings: nil,
2184
559
  line_items: nil,
2185
- lines: nil,
2186
560
  metadata: nil,
2187
561
  on_behalf_of: nil,
2188
562
  subscription_data: nil,
2189
- subscription_data_overrides: nil,
2190
563
  transfer_data: nil
2191
564
  )
2192
- @allow_backdated_lines = allow_backdated_lines
2193
565
  @application_fee_amount = application_fee_amount
2194
566
  @application_fee_percent = application_fee_percent
2195
567
  @automatic_tax = automatic_tax
2196
568
  @collection_method = collection_method
2197
569
  @customer = customer
2198
- @customer_account = customer_account
2199
570
  @default_tax_rates = default_tax_rates
2200
571
  @description = description
2201
572
  @discounts = discounts
@@ -2205,11 +576,9 @@ module Stripe
2205
576
  @header = header
2206
577
  @invoice_settings = invoice_settings
2207
578
  @line_items = line_items
2208
- @lines = lines
2209
579
  @metadata = metadata
2210
580
  @on_behalf_of = on_behalf_of
2211
581
  @subscription_data = subscription_data
2212
- @subscription_data_overrides = subscription_data_overrides
2213
582
  @transfer_data = transfer_data
2214
583
  end
2215
584
  end
@@ -2244,36 +613,6 @@ module Stripe
2244
613
  end
2245
614
  end
2246
615
 
2247
- class MarkDraftParams < Stripe::RequestParams
2248
- # Specifies which fields in the response should be expanded.
2249
- attr_accessor :expand
2250
-
2251
- def initialize(expand: nil)
2252
- @expand = expand
2253
- end
2254
- end
2255
-
2256
- class MarkStaleParams < Stripe::RequestParams
2257
- # Specifies which fields in the response should be expanded.
2258
- attr_accessor :expand
2259
- # Reason the Quote is being marked stale.
2260
- attr_accessor :reason
2261
-
2262
- def initialize(expand: nil, reason: nil)
2263
- @expand = expand
2264
- @reason = reason
2265
- end
2266
- end
2267
-
2268
- class ReestimateParams < Stripe::RequestParams
2269
- # Specifies which fields in the response should be expanded.
2270
- attr_accessor :expand
2271
-
2272
- def initialize(expand: nil)
2273
- @expand = expand
2274
- end
2275
- end
2276
-
2277
616
  class PdfParams < Stripe::RequestParams
2278
617
  # Specifies which fields in the response should be expanded.
2279
618
  attr_accessor :expand
@@ -2283,24 +622,6 @@ module Stripe
2283
622
  end
2284
623
  end
2285
624
 
2286
- class ListPreviewInvoiceLinesParams < Stripe::RequestParams
2287
- # A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
2288
- attr_accessor :ending_before
2289
- # Specifies which fields in the response should be expanded.
2290
- attr_accessor :expand
2291
- # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
2292
- attr_accessor :limit
2293
- # A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
2294
- attr_accessor :starting_after
2295
-
2296
- def initialize(ending_before: nil, expand: nil, limit: nil, starting_after: nil)
2297
- @ending_before = ending_before
2298
- @expand = expand
2299
- @limit = limit
2300
- @starting_after = starting_after
2301
- end
2302
- end
2303
-
2304
625
  # Accepts the specified quote.
2305
626
  def accept(quote, params = {}, opts = {})
2306
627
  request(
@@ -2344,39 +665,6 @@ module Stripe
2344
665
  request(method: :get, path: "/v1/quotes", params: params, opts: opts, base_address: :api)
2345
666
  end
2346
667
 
2347
- # Preview the invoice line items that would be generated by accepting the quote.
2348
- def list_preview_invoice_lines(quote, preview_invoice, params = {}, opts = {})
2349
- request(
2350
- method: :get,
2351
- path: format("/v1/quotes/%<quote>s/preview_invoices/%<preview_invoice>s/lines", { quote: CGI.escape(quote), preview_invoice: CGI.escape(preview_invoice) }),
2352
- params: params,
2353
- opts: opts,
2354
- base_address: :api
2355
- )
2356
- end
2357
-
2358
- # Converts a stale quote to draft.
2359
- def mark_draft(quote, params = {}, opts = {})
2360
- request(
2361
- method: :post,
2362
- path: format("/v1/quotes/%<quote>s/mark_draft", { quote: CGI.escape(quote) }),
2363
- params: params,
2364
- opts: opts,
2365
- base_address: :api
2366
- )
2367
- end
2368
-
2369
- # Converts a draft or open quote to stale.
2370
- def mark_stale(quote, params = {}, opts = {})
2371
- request(
2372
- method: :post,
2373
- path: format("/v1/quotes/%<quote>s/mark_stale", { quote: CGI.escape(quote) }),
2374
- params: params,
2375
- opts: opts,
2376
- base_address: :api
2377
- )
2378
- end
2379
-
2380
668
  # Download the PDF for a finalized quote. Explanation for special handling can be found [here](https://docs.stripe.com/quotes/overview#quote_pdf)
2381
669
  def pdf(quote, params = {}, opts = {}, &read_body_chunk_block)
2382
670
  opts = { api_base: APIRequestor.active_requestor.config.uploads_base }.merge(opts)
@@ -2390,17 +678,6 @@ module Stripe
2390
678
  )
2391
679
  end
2392
680
 
2393
- # Recompute the upcoming invoice estimate for the quote.
2394
- def reestimate(quote, params = {}, opts = {})
2395
- request(
2396
- method: :post,
2397
- path: format("/v1/quotes/%<quote>s/reestimate", { quote: CGI.escape(quote) }),
2398
- params: params,
2399
- opts: opts,
2400
- base_address: :api
2401
- )
2402
- end
2403
-
2404
681
  # Retrieves the quote with the given ID.
2405
682
  def retrieve(quote, params = {}, opts = {})
2406
683
  request(