stripe 15.0.0 → 15.1.0.pre.beta.2

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 (617) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1559 -676
  3. data/Gemfile +1 -1
  4. data/OPENAPI_VERSION +1 -1
  5. data/VERSION +1 -1
  6. data/lib/stripe/api_operations/nested_resource.rb +35 -35
  7. data/lib/stripe/api_requestor.rb +29 -1
  8. data/lib/stripe/api_version.rb +1 -1
  9. data/lib/stripe/connection_manager.rb +1 -3
  10. data/lib/stripe/errors.rb +54 -0
  11. data/lib/stripe/event_types.rb +75 -0
  12. data/lib/stripe/events/v2_core_account_including_configuration_customer_capability_status_updated_event.rb +23 -0
  13. data/lib/stripe/events/v2_core_account_including_configuration_customer_updated_event.rb +21 -0
  14. data/lib/stripe/events/v2_core_account_including_configuration_merchant_capability_status_updated_event.rb +23 -0
  15. data/lib/stripe/events/v2_core_account_including_configuration_merchant_updated_event.rb +21 -0
  16. data/lib/stripe/events/v2_core_account_including_configuration_recipient_capability_status_updated_event.rb +23 -0
  17. data/lib/stripe/events/v2_core_account_including_configuration_recipient_updated_event.rb +21 -0
  18. data/lib/stripe/events/v2_core_account_including_identity_updated_event.rb +21 -0
  19. data/lib/stripe/events/v2_core_account_including_requirements_updated_event.rb +21 -0
  20. data/lib/stripe/events/v2_core_account_link_completed_event.rb +13 -0
  21. data/lib/stripe/events/v2_core_account_person_created_event.rb +23 -0
  22. data/lib/stripe/events/v2_core_account_person_deleted_event.rb +23 -0
  23. data/lib/stripe/events/v2_core_account_person_updated_event.rb +23 -0
  24. data/lib/stripe/events/v2_money_management_financial_account_created_event.rb +21 -0
  25. data/lib/stripe/events/v2_money_management_financial_address_activated_event.rb +21 -0
  26. data/lib/stripe/events/v2_money_management_financial_address_failed_event.rb +21 -0
  27. data/lib/stripe/events/v2_money_management_inbound_transfer_available_event.rb +23 -0
  28. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_failed_event.rb +21 -0
  29. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_processing_event.rb +21 -0
  30. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_queued_event.rb +21 -0
  31. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_returned_event.rb +21 -0
  32. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_succeeded_event.rb +21 -0
  33. data/lib/stripe/events/v2_money_management_outbound_payment_canceled_event.rb +21 -0
  34. data/lib/stripe/events/v2_money_management_outbound_payment_created_event.rb +21 -0
  35. data/lib/stripe/events/v2_money_management_outbound_payment_failed_event.rb +21 -0
  36. data/lib/stripe/events/v2_money_management_outbound_payment_posted_event.rb +21 -0
  37. data/lib/stripe/events/v2_money_management_outbound_payment_returned_event.rb +21 -0
  38. data/lib/stripe/events/v2_money_management_outbound_transfer_canceled_event.rb +21 -0
  39. data/lib/stripe/events/v2_money_management_outbound_transfer_created_event.rb +21 -0
  40. data/lib/stripe/events/v2_money_management_outbound_transfer_failed_event.rb +21 -0
  41. data/lib/stripe/events/v2_money_management_outbound_transfer_posted_event.rb +21 -0
  42. data/lib/stripe/events/v2_money_management_outbound_transfer_returned_event.rb +21 -0
  43. data/lib/stripe/events/v2_money_management_received_credit_available_event.rb +23 -0
  44. data/lib/stripe/events/v2_money_management_received_credit_failed_event.rb +21 -0
  45. data/lib/stripe/events/v2_money_management_received_credit_returned_event.rb +21 -0
  46. data/lib/stripe/events/v2_money_management_received_credit_succeeded_event.rb +21 -0
  47. data/lib/stripe/events/v2_money_management_received_debit_canceled_event.rb +21 -0
  48. data/lib/stripe/events/v2_money_management_received_debit_failed_event.rb +21 -0
  49. data/lib/stripe/events/v2_money_management_received_debit_pending_event.rb +21 -0
  50. data/lib/stripe/events/v2_money_management_received_debit_succeeded_event.rb +21 -0
  51. data/lib/stripe/events/v2_money_management_received_debit_updated_event.rb +21 -0
  52. data/lib/stripe/oauth.rb +1 -1
  53. data/lib/stripe/object_types.rb +53 -0
  54. data/lib/stripe/resources/account.rb +714 -3
  55. data/lib/stripe/resources/account_notice.rb +123 -0
  56. data/lib/stripe/resources/account_session.rb +299 -1
  57. data/lib/stripe/resources/balance_settings.rb +105 -0
  58. data/lib/stripe/resources/billing/credit_balance_summary.rb +2 -0
  59. data/lib/stripe/resources/billing/credit_balance_transaction.rb +4 -0
  60. data/lib/stripe/resources/billing/credit_grant.rb +10 -0
  61. data/lib/stripe/resources/billing/meter_error_report.rb +59 -0
  62. data/lib/stripe/resources/billing_portal/session.rb +6 -0
  63. data/lib/stripe/resources/capital/financing_offer.rb +179 -0
  64. data/lib/stripe/resources/capital/financing_summary.rb +55 -0
  65. data/lib/stripe/resources/capital/financing_transaction.rb +114 -0
  66. data/lib/stripe/resources/card.rb +2 -0
  67. data/lib/stripe/resources/cash_balance.rb +2 -0
  68. data/lib/stripe/resources/charge.rb +1472 -0
  69. data/lib/stripe/resources/checkout/session.rb +368 -9
  70. data/lib/stripe/resources/confirmation_token.rb +243 -4
  71. data/lib/stripe/resources/coupon.rb +31 -2
  72. data/lib/stripe/resources/credit_note.rb +10 -0
  73. data/lib/stripe/resources/credit_note_line_item.rb +9 -0
  74. data/lib/stripe/resources/customer.rb +2 -0
  75. data/lib/stripe/resources/customer_balance_transaction.rb +2 -0
  76. data/lib/stripe/resources/customer_cash_balance_transaction.rb +2 -0
  77. data/lib/stripe/resources/customer_session.rb +6 -1
  78. data/lib/stripe/resources/discount.rb +2 -0
  79. data/lib/stripe/resources/event.rb +33 -0
  80. data/lib/stripe/resources/financial_connections/account.rb +20 -1
  81. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +27 -0
  82. data/lib/stripe/resources/financial_connections/institution.rb +90 -0
  83. data/lib/stripe/resources/financial_connections/session.rb +62 -2
  84. data/lib/stripe/resources/funding_instructions.rb +1 -1
  85. data/lib/stripe/resources/fx_quote.rb +184 -0
  86. data/lib/stripe/resources/gift_cards/card.rb +208 -0
  87. data/lib/stripe/resources/gift_cards/transaction.rb +272 -0
  88. data/lib/stripe/resources/identity/verification_session.rb +10 -0
  89. data/lib/stripe/resources/invoice.rb +1124 -16
  90. data/lib/stripe/resources/invoice_item.rb +78 -2
  91. data/lib/stripe/resources/invoice_line_item.rb +55 -1
  92. data/lib/stripe/resources/invoice_payment.rb +2 -53
  93. data/lib/stripe/resources/issuing/cardholder.rb +2 -1
  94. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +602 -0
  95. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +82 -0
  96. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +86 -0
  97. data/lib/stripe/resources/issuing/settlement.rb +53 -0
  98. data/lib/stripe/resources/issuing/transaction.rb +6 -0
  99. data/lib/stripe/resources/line_item.rb +37 -0
  100. data/lib/stripe/resources/login_link.rb +2 -1
  101. data/lib/stripe/resources/mandate.rb +24 -0
  102. data/lib/stripe/resources/margin.rb +115 -0
  103. data/lib/stripe/resources/order.rb +2859 -0
  104. data/lib/stripe/resources/payment_attempt_record.rb +1078 -0
  105. data/lib/stripe/resources/payment_intent.rb +5540 -654
  106. data/lib/stripe/resources/payment_intent_amount_details_line_item.rb +65 -0
  107. data/lib/stripe/resources/payment_method.rb +209 -6
  108. data/lib/stripe/resources/payment_method_configuration.rb +354 -0
  109. data/lib/stripe/resources/payment_method_domain.rb +13 -0
  110. data/lib/stripe/resources/payment_record.rb +1607 -0
  111. data/lib/stripe/resources/payout.rb +6 -0
  112. data/lib/stripe/resources/person.rb +25 -1
  113. data/lib/stripe/resources/price.rb +30 -0
  114. data/lib/stripe/resources/privacy/redaction_job.rb +254 -0
  115. data/lib/stripe/resources/privacy/redaction_job_root_objects.rb +35 -0
  116. data/lib/stripe/resources/privacy/redaction_job_validation_error.rb +25 -0
  117. data/lib/stripe/resources/product.rb +59 -0
  118. data/lib/stripe/resources/promotion_code.rb +10 -0
  119. data/lib/stripe/resources/quote.rb +2042 -6
  120. data/lib/stripe/resources/quote_line.rb +274 -0
  121. data/lib/stripe/resources/quote_preview_invoice.rb +663 -0
  122. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +337 -0
  123. data/lib/stripe/resources/refund.rb +11 -0
  124. data/lib/stripe/resources/setup_attempt.rb +21 -0
  125. data/lib/stripe/resources/setup_intent.rb +617 -21
  126. data/lib/stripe/resources/source.rb +29 -0
  127. data/lib/stripe/resources/subscription.rb +292 -9
  128. data/lib/stripe/resources/subscription_item.rb +84 -3
  129. data/lib/stripe/resources/subscription_schedule.rb +1007 -10
  130. data/lib/stripe/resources/tax/association.rb +89 -0
  131. data/lib/stripe/resources/tax/form.rb +211 -0
  132. data/lib/stripe/resources/tax/registration.rb +180 -0
  133. data/lib/stripe/resources/tax_id.rb +12 -2
  134. data/lib/stripe/resources/terminal/reader.rb +406 -0
  135. data/lib/stripe/resources/terminal/reader_collected_data.rb +31 -0
  136. data/lib/stripe/resources/token.rb +61 -0
  137. data/lib/stripe/resources/transfer.rb +6 -0
  138. data/lib/stripe/resources/treasury/financial_account.rb +22 -3
  139. data/lib/stripe/resources/treasury/financial_account_features.rb +2 -0
  140. data/lib/stripe/resources/treasury/outbound_payment.rb +4 -1
  141. data/lib/stripe/resources/treasury/outbound_transfer.rb +37 -0
  142. data/lib/stripe/resources/treasury/received_credit.rb +38 -1
  143. data/lib/stripe/resources/treasury/received_debit.rb +40 -1
  144. data/lib/stripe/resources/v2/core/account.rb +1715 -0
  145. data/lib/stripe/resources/v2/core/account_link.rb +54 -0
  146. data/lib/stripe/resources/v2/core/person.rb +272 -0
  147. data/lib/stripe/resources/v2/core/vault/gb_bank_account.rb +72 -0
  148. data/lib/stripe/resources/v2/core/vault/us_bank_account.rb +37 -0
  149. data/lib/stripe/resources/v2/financial_address_credit_simulation.rb +18 -0
  150. data/lib/stripe/resources/v2/financial_address_generated_microdeposits.rb +20 -0
  151. data/lib/stripe/resources/v2/money_management/adjustment.rb +49 -0
  152. data/lib/stripe/resources/v2/money_management/financial_account.rb +56 -0
  153. data/lib/stripe/resources/v2/money_management/financial_address.rb +66 -0
  154. data/lib/stripe/resources/v2/money_management/inbound_transfer.rb +92 -0
  155. data/lib/stripe/resources/v2/money_management/outbound_payment.rb +127 -0
  156. data/lib/stripe/resources/v2/money_management/outbound_payment_quote.rb +74 -0
  157. data/lib/stripe/resources/v2/money_management/outbound_setup_intent.rb +43 -0
  158. data/lib/stripe/resources/v2/money_management/outbound_transfer.rb +115 -0
  159. data/lib/stripe/resources/v2/money_management/payout_method.rb +73 -0
  160. data/lib/stripe/resources/v2/money_management/payout_methods_bank_account_spec.rb +47 -0
  161. data/lib/stripe/resources/v2/money_management/received_credit.rb +134 -0
  162. data/lib/stripe/resources/v2/money_management/received_debit.rb +106 -0
  163. data/lib/stripe/resources/v2/money_management/transaction.rb +76 -0
  164. data/lib/stripe/resources/v2/money_management/transaction_entry.rb +66 -0
  165. data/lib/stripe/resources.rb +90 -0
  166. data/lib/stripe/services/account_notice_service.rb +101 -0
  167. data/lib/stripe/services/account_person_service.rb +84 -0
  168. data/lib/stripe/services/account_service.rb +609 -2
  169. data/lib/stripe/services/account_session_service.rb +269 -1
  170. data/lib/stripe/services/application_fee_service.rb +1 -1
  171. data/lib/stripe/services/apps_service.rb +1 -1
  172. data/lib/stripe/services/balance_settings_service.rb +96 -0
  173. data/lib/stripe/services/billing/credit_balance_summary_service.rb +4 -1
  174. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +4 -0
  175. data/lib/stripe/services/billing/credit_grant_service.rb +8 -0
  176. data/lib/stripe/services/billing/meter_service.rb +1 -1
  177. data/lib/stripe/services/billing_portal/session_service.rb +4 -0
  178. data/lib/stripe/services/billing_portal_service.rb +1 -1
  179. data/lib/stripe/services/billing_service.rb +1 -1
  180. data/lib/stripe/services/capital/financing_offer_service.rb +112 -0
  181. data/lib/stripe/services/capital/financing_summary_service.rb +28 -0
  182. data/lib/stripe/services/capital/financing_transaction_service.rb +79 -0
  183. data/lib/stripe/services/capital_service.rb +15 -0
  184. data/lib/stripe/services/charge_service.rb +1350 -0
  185. data/lib/stripe/services/checkout/session_service.rb +269 -7
  186. data/lib/stripe/services/checkout_service.rb +1 -1
  187. data/lib/stripe/services/climate_service.rb +1 -1
  188. data/lib/stripe/services/coupon_service.rb +17 -1
  189. data/lib/stripe/services/credit_note_service.rb +5 -1
  190. data/lib/stripe/services/customer_service.rb +1 -1
  191. data/lib/stripe/services/customer_session_service.rb +4 -1
  192. data/lib/stripe/services/entitlements_service.rb +1 -1
  193. data/{rbi/stripe/services/account_external_account_service.rbi → lib/stripe/services/external_account_service.rb} +135 -123
  194. data/{rbi/stripe/services/tax/transaction_line_item_service.rbi → lib/stripe/services/financial_connections/account_inferred_balance_service.rb} +21 -17
  195. data/lib/stripe/services/financial_connections/account_service.rb +8 -3
  196. data/{rbi/stripe/services/climate/supplier_service.rbi → lib/stripe/services/financial_connections/institution_service.rb} +36 -25
  197. data/lib/stripe/services/financial_connections/session_service.rb +34 -2
  198. data/lib/stripe/services/financial_connections_service.rb +3 -2
  199. data/lib/stripe/services/forwarding_service.rb +1 -1
  200. data/lib/stripe/services/fx_quote_service.rb +123 -0
  201. data/lib/stripe/services/gift_cards/card_service.rb +170 -0
  202. data/lib/stripe/services/gift_cards/transaction_service.rb +209 -0
  203. data/lib/stripe/services/gift_cards_service.rb +14 -0
  204. data/lib/stripe/services/identity/verification_session_service.rb +8 -0
  205. data/lib/stripe/services/identity_service.rb +1 -1
  206. data/lib/stripe/services/invoice_item_service.rb +74 -2
  207. data/lib/stripe/services/invoice_line_item_service.rb +33 -1
  208. data/lib/stripe/services/invoice_service.rb +1053 -17
  209. data/lib/stripe/services/issuing/cardholder_service.rb +2 -1
  210. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +504 -0
  211. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +66 -0
  212. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +83 -0
  213. data/lib/stripe/services/issuing/transaction_service.rb +4 -0
  214. data/lib/stripe/services/issuing_service.rb +6 -2
  215. data/lib/stripe/services/margin_service.rb +119 -0
  216. data/{rbi/stripe/services/source_transaction_service.rbi → lib/stripe/services/order_line_item_service.rb} +20 -16
  217. data/lib/stripe/services/order_service.rb +2268 -0
  218. data/lib/stripe/services/payment_attempt_record_service.rb +49 -0
  219. data/{rbi/stripe/services/quote_line_item_service.rbi → lib/stripe/services/payment_intent_amount_details_line_item_service.rb} +20 -16
  220. data/lib/stripe/services/payment_intent_service.rb +4711 -278
  221. data/lib/stripe/services/payment_link_service.rb +1 -1
  222. data/lib/stripe/services/payment_method_configuration_service.rb +252 -0
  223. data/lib/stripe/services/payment_method_service.rb +137 -6
  224. data/lib/stripe/services/payment_record_service.rb +542 -0
  225. data/lib/stripe/services/payout_service.rb +4 -0
  226. data/lib/stripe/services/price_service.rb +19 -0
  227. data/lib/stripe/services/privacy/redaction_job_service.rb +231 -0
  228. data/{rbi/stripe/services/climate/product_service.rbi → lib/stripe/services/privacy/redaction_job_validation_error_service.rb} +36 -25
  229. data/lib/stripe/services/privacy_service.rb +13 -0
  230. data/lib/stripe/services/product_service.rb +39 -1
  231. data/lib/stripe/services/promotion_code_service.rb +8 -0
  232. data/{rbi/stripe/services/credit_note_line_item_service.rbi → lib/stripe/services/quote_line_service.rb} +20 -16
  233. data/{rbi/stripe/services/payment_link_line_item_service.rbi → lib/stripe/services/quote_preview_invoice_service.rb} +20 -16
  234. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +35 -0
  235. data/lib/stripe/services/quote_service.rb +1727 -8
  236. data/lib/stripe/services/radar_service.rb +1 -1
  237. data/lib/stripe/services/reporting_service.rb +1 -1
  238. data/lib/stripe/services/setup_intent_service.rb +577 -21
  239. data/lib/stripe/services/sigma_service.rb +1 -1
  240. data/lib/stripe/services/source_service.rb +1 -1
  241. data/lib/stripe/services/subscription_item_service.rb +75 -3
  242. data/lib/stripe/services/subscription_schedule_service.rb +911 -10
  243. data/lib/stripe/services/subscription_service.rb +253 -9
  244. data/lib/stripe/services/tax/association_service.rb +31 -0
  245. data/lib/stripe/services/tax/calculation_service.rb +1 -1
  246. data/lib/stripe/services/tax/form_service.rb +100 -0
  247. data/lib/stripe/services/tax/registration_service.rb +117 -0
  248. data/lib/stripe/services/tax/transaction_service.rb +1 -1
  249. data/lib/stripe/services/tax_id_service.rb +8 -2
  250. data/lib/stripe/services/tax_service.rb +4 -2
  251. data/lib/stripe/services/terminal/reader_collected_data_service.rb +28 -0
  252. data/lib/stripe/services/terminal/reader_service.rb +180 -0
  253. data/lib/stripe/services/terminal_service.rb +3 -2
  254. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +155 -4
  255. data/lib/stripe/services/test_helpers/issuing_service.rb +1 -1
  256. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +43 -0
  257. data/lib/stripe/services/test_helpers/terminal_service.rb +1 -1
  258. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +25 -1
  259. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +25 -1
  260. data/lib/stripe/services/test_helpers/treasury_service.rb +1 -1
  261. data/lib/stripe/services/test_helpers_service.rb +1 -1
  262. data/lib/stripe/services/token_service.rb +61 -0
  263. data/lib/stripe/services/transfer_service.rb +5 -1
  264. data/lib/stripe/services/treasury/financial_account_features_service.rb +4 -1
  265. data/lib/stripe/services/treasury/financial_account_service.rb +17 -3
  266. data/lib/stripe/services/treasury/outbound_payment_service.rb +4 -1
  267. data/lib/stripe/services/treasury/outbound_transfer_service.rb +24 -0
  268. data/lib/stripe/services/treasury_service.rb +1 -1
  269. data/lib/stripe/services/v1_services.rb +13 -3
  270. data/lib/stripe/services/v2/billing_service.rb +1 -1
  271. data/lib/stripe/services/v2/core/account_link_service.rb +76 -0
  272. data/lib/stripe/services/v2/core/account_service.rb +4130 -0
  273. data/lib/stripe/services/v2/core/accounts/person_service.rb +1040 -0
  274. data/lib/stripe/services/v2/core/vault/gb_bank_account_service.rb +135 -0
  275. data/lib/stripe/services/v2/core/vault/us_bank_account_service.rb +109 -0
  276. data/lib/stripe/services/v2/core/vault_service.rb +18 -0
  277. data/lib/stripe/services/v2/core_service.rb +5 -2
  278. data/lib/stripe/services/v2/money_management/adjustment_service.rb +75 -0
  279. data/lib/stripe/services/v2/money_management/financial_account_service.rb +44 -0
  280. data/lib/stripe/services/v2/money_management/financial_address_service.rb +81 -0
  281. data/lib/stripe/services/v2/money_management/inbound_transfer_service.rb +126 -0
  282. data/lib/stripe/services/v2/money_management/outbound_payment_quote_service.rb +80 -0
  283. data/lib/stripe/services/v2/money_management/outbound_payment_service.rb +202 -0
  284. data/lib/stripe/services/v2/money_management/outbound_setup_intent_service.rb +237 -0
  285. data/lib/stripe/services/v2/money_management/outbound_transfer_service.rb +174 -0
  286. data/lib/stripe/services/v2/money_management/payout_method_service.rb +95 -0
  287. data/lib/stripe/services/v2/money_management/payout_methods_bank_account_spec_service.rb +32 -0
  288. data/lib/stripe/services/v2/money_management/received_credit_service.rb +71 -0
  289. data/lib/stripe/services/v2/money_management/received_debit_service.rb +44 -0
  290. data/lib/stripe/services/v2/money_management/transaction_entry_service.rb +70 -0
  291. data/lib/stripe/services/v2/money_management/transaction_service.rb +74 -0
  292. data/lib/stripe/services/v2/money_management_service.rb +31 -0
  293. data/lib/stripe/services/v2/test_helper_service.rb +15 -0
  294. data/lib/stripe/services/v2/test_helpers/financial_address_service.rb +50 -0
  295. data/lib/stripe/services/v2_services.rb +5 -3
  296. data/lib/stripe/services.rb +54 -1
  297. data/lib/stripe/stripe_configuration.rb +3 -1
  298. data/lib/stripe/stripe_object.rb +1 -1
  299. data/lib/stripe/util.rb +7 -1
  300. data/lib/stripe/version.rb +1 -1
  301. data/lib/stripe.rb +53 -0
  302. data/rbi/stripe.rbi +191592 -0
  303. data/stripe.gemspec +4 -1
  304. metadata +149 -325
  305. data/lib/stripe/services/invoice_payment_service.rb +0 -83
  306. data/rbi/stripe/resources/account.rbi +0 -4840
  307. data/rbi/stripe/resources/account_link.rbi +0 -74
  308. data/rbi/stripe/resources/account_session.rbi +0 -894
  309. data/rbi/stripe/resources/apple_pay_domain.rbi +0 -90
  310. data/rbi/stripe/resources/application.rbi +0 -20
  311. data/rbi/stripe/resources/application_fee.rbi +0 -118
  312. data/rbi/stripe/resources/application_fee_refund.rbi +0 -37
  313. data/rbi/stripe/resources/apps/secret.rbi +0 -195
  314. data/rbi/stripe/resources/balance.rbi +0 -180
  315. data/rbi/stripe/resources/balance_transaction.rbi +0 -144
  316. data/rbi/stripe/resources/bank_account.rbi +0 -127
  317. data/rbi/stripe/resources/billing/alert.rbi +0 -201
  318. data/rbi/stripe/resources/billing/alert_triggered.rbi +0 -28
  319. data/rbi/stripe/resources/billing/credit_balance_summary.rbi +0 -63
  320. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +0 -147
  321. data/rbi/stripe/resources/billing/credit_grant.rbi +0 -291
  322. data/rbi/stripe/resources/billing/meter.rbi +0 -226
  323. data/rbi/stripe/resources/billing/meter_event.rbi +0 -64
  324. data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +0 -64
  325. data/rbi/stripe/resources/billing/meter_event_summary.rbi +0 -35
  326. data/rbi/stripe/resources/billing_portal/configuration.rbi +0 -645
  327. data/rbi/stripe/resources/billing_portal/session.rbi +0 -345
  328. data/rbi/stripe/resources/capability.rbi +0 -125
  329. data/rbi/stripe/resources/card.rbi +0 -125
  330. data/rbi/stripe/resources/cash_balance.rbi +0 -32
  331. data/rbi/stripe/resources/charge.rbi +0 -2054
  332. data/rbi/stripe/resources/checkout/session.rbi +0 -3951
  333. data/rbi/stripe/resources/climate/order.rbi +0 -245
  334. data/rbi/stripe/resources/climate/product.rbi +0 -75
  335. data/rbi/stripe/resources/climate/supplier.rbi +0 -72
  336. data/rbi/stripe/resources/confirmation_token.rbi +0 -1793
  337. data/rbi/stripe/resources/connect_collection_transfer.rbi +0 -26
  338. data/rbi/stripe/resources/country_spec.rbi +0 -85
  339. data/rbi/stripe/resources/coupon.rbi +0 -252
  340. data/rbi/stripe/resources/credit_note.rbi +0 -747
  341. data/rbi/stripe/resources/credit_note_line_item.rbi +0 -101
  342. data/rbi/stripe/resources/customer.rbi +0 -1009
  343. data/rbi/stripe/resources/customer_balance_transaction.rbi +0 -56
  344. data/rbi/stripe/resources/customer_cash_balance_transaction.rbi +0 -151
  345. data/rbi/stripe/resources/customer_session.rbi +0 -200
  346. data/rbi/stripe/resources/discount.rbi +0 -53
  347. data/rbi/stripe/resources/dispute.rbi +0 -761
  348. data/rbi/stripe/resources/entitlements/active_entitlement.rbi +0 -58
  349. data/rbi/stripe/resources/entitlements/active_entitlement_summary.rbi +0 -23
  350. data/rbi/stripe/resources/entitlements/feature.rbi +0 -117
  351. data/rbi/stripe/resources/ephemeral_key.rbi +0 -44
  352. data/rbi/stripe/resources/event.rbi +0 -146
  353. data/rbi/stripe/resources/exchange_rate.rbi +0 -66
  354. data/rbi/stripe/resources/file.rbi +0 -143
  355. data/rbi/stripe/resources/file_link.rbi +0 -141
  356. data/rbi/stripe/resources/financial_connections/account.rbi +0 -339
  357. data/rbi/stripe/resources/financial_connections/account_owner.rbi +0 -35
  358. data/rbi/stripe/resources/financial_connections/account_ownership.rbi +0 -23
  359. data/rbi/stripe/resources/financial_connections/session.rbi +0 -123
  360. data/rbi/stripe/resources/financial_connections/transaction.rbi +0 -124
  361. data/rbi/stripe/resources/forwarding/request.rbi +0 -216
  362. data/rbi/stripe/resources/funding_instructions.rbi +0 -437
  363. data/rbi/stripe/resources/identity/verification_report.rbi +0 -351
  364. data/rbi/stripe/resources/identity/verification_session.rbi +0 -517
  365. data/rbi/stripe/resources/invoice.rbi +0 -3733
  366. data/rbi/stripe/resources/invoice_item.rbi +0 -475
  367. data/rbi/stripe/resources/invoice_line_item.rbi +0 -432
  368. data/rbi/stripe/resources/invoice_payment.rbi +0 -114
  369. data/rbi/stripe/resources/invoice_rendering_template.rbi +0 -104
  370. data/rbi/stripe/resources/issuing/authorization.rbi +0 -1283
  371. data/rbi/stripe/resources/issuing/card.rbi +0 -741
  372. data/rbi/stripe/resources/issuing/cardholder.rbi +0 -744
  373. data/rbi/stripe/resources/issuing/dispute.rbi +0 -913
  374. data/rbi/stripe/resources/issuing/personalization_design.rbi +0 -338
  375. data/rbi/stripe/resources/issuing/physical_bundle.rbi +0 -79
  376. data/rbi/stripe/resources/issuing/token.rbi +0 -226
  377. data/rbi/stripe/resources/issuing/transaction.rbi +0 -1061
  378. data/rbi/stripe/resources/line_item.rbi +0 -72
  379. data/rbi/stripe/resources/login_link.rbi +0 -18
  380. data/rbi/stripe/resources/mandate.rbi +0 -187
  381. data/rbi/stripe/resources/payment_intent.rbi +0 -9731
  382. data/rbi/stripe/resources/payment_link.rbi +0 -1801
  383. data/rbi/stripe/resources/payment_method.rbi +0 -1822
  384. data/rbi/stripe/resources/payment_method_configuration.rbi +0 -3154
  385. data/rbi/stripe/resources/payment_method_domain.rbi +0 -212
  386. data/rbi/stripe/resources/payout.rbi +0 -300
  387. data/rbi/stripe/resources/person.rbi +0 -371
  388. data/rbi/stripe/resources/plan.rbi +0 -373
  389. data/rbi/stripe/resources/price.rbi +0 -694
  390. data/rbi/stripe/resources/product.rbi +0 -557
  391. data/rbi/stripe/resources/product_feature.rbi +0 -26
  392. data/rbi/stripe/resources/promotion_code.rbi +0 -261
  393. data/rbi/stripe/resources/quote.rbi +0 -1123
  394. data/rbi/stripe/resources/radar/early_fraud_warning.rbi +0 -98
  395. data/rbi/stripe/resources/radar/value_list.rbi +0 -170
  396. data/rbi/stripe/resources/radar/value_list_item.rbi +0 -131
  397. data/rbi/stripe/resources/refund.rbi +0 -516
  398. data/rbi/stripe/resources/reporting/report_run.rbi +0 -191
  399. data/rbi/stripe/resources/reporting/report_type.rbi +0 -57
  400. data/rbi/stripe/resources/reserve_transaction.rbi +0 -23
  401. data/rbi/stripe/resources/reversal.rbi +0 -51
  402. data/rbi/stripe/resources/review.rbi +0 -154
  403. data/rbi/stripe/resources/setup_attempt.rbi +0 -477
  404. data/rbi/stripe/resources/setup_intent.rbi +0 -3860
  405. data/rbi/stripe/resources/shipping_rate.rbi +0 -305
  406. data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +0 -75
  407. data/rbi/stripe/resources/source.rbi +0 -1496
  408. data/rbi/stripe/resources/source_mandate_notification.rbi +0 -77
  409. data/rbi/stripe/resources/source_transaction.rbi +0 -127
  410. data/rbi/stripe/resources/subscription.rbi +0 -1964
  411. data/rbi/stripe/resources/subscription_item.rbi +0 -370
  412. data/rbi/stripe/resources/subscription_schedule.rbi +0 -1495
  413. data/rbi/stripe/resources/tax/calculation.rbi +0 -474
  414. data/rbi/stripe/resources/tax/calculation_line_item.rbi +0 -88
  415. data/rbi/stripe/resources/tax/registration.rbi +0 -2485
  416. data/rbi/stripe/resources/tax/settings.rbi +0 -141
  417. data/rbi/stripe/resources/tax/transaction.rbi +0 -351
  418. data/rbi/stripe/resources/tax/transaction_line_item.rbi +0 -54
  419. data/rbi/stripe/resources/tax_code.rbi +0 -44
  420. data/rbi/stripe/resources/tax_deducted_at_source.rbi +0 -23
  421. data/rbi/stripe/resources/tax_id.rbi +0 -167
  422. data/rbi/stripe/resources/tax_rate.rbi +0 -239
  423. data/rbi/stripe/resources/terminal/configuration.rbi +0 -1388
  424. data/rbi/stripe/resources/terminal/connection_token.rbi +0 -37
  425. data/rbi/stripe/resources/terminal/location.rbi +0 -224
  426. data/rbi/stripe/resources/terminal/reader.rbi +0 -587
  427. data/rbi/stripe/resources/test_helpers/test_clock.rbi +0 -134
  428. data/rbi/stripe/resources/token.rbi +0 -1217
  429. data/rbi/stripe/resources/topup.rbi +0 -222
  430. data/rbi/stripe/resources/transfer.rbi +0 -199
  431. data/rbi/stripe/resources/treasury/credit_reversal.rbi +0 -119
  432. data/rbi/stripe/resources/treasury/debit_reversal.rbi +0 -131
  433. data/rbi/stripe/resources/treasury/financial_account.rbi +0 -865
  434. data/rbi/stripe/resources/treasury/financial_account_features.rbi +0 -260
  435. data/rbi/stripe/resources/treasury/inbound_transfer.rbi +0 -295
  436. data/rbi/stripe/resources/treasury/outbound_payment.rbi +0 -592
  437. data/rbi/stripe/resources/treasury/outbound_transfer.rbi +0 -431
  438. data/rbi/stripe/resources/treasury/received_credit.rbi +0 -302
  439. data/rbi/stripe/resources/treasury/received_debit.rbi +0 -256
  440. data/rbi/stripe/resources/treasury/transaction.rbi +0 -215
  441. data/rbi/stripe/resources/treasury/transaction_entry.rbi +0 -192
  442. data/rbi/stripe/resources/v2/amount.rbi +0 -14
  443. data/rbi/stripe/resources/v2/billing/meter_event.rbi +0 -37
  444. data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +0 -41
  445. data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +0 -31
  446. data/rbi/stripe/resources/v2/event.rbi +0 -48
  447. data/rbi/stripe/resources/v2/event_destination.rbi +0 -91
  448. data/rbi/stripe/resources/webhook_endpoint.rbi +0 -170
  449. data/rbi/stripe/services/account_capability_service.rbi +0 -51
  450. data/rbi/stripe/services/account_link_service.rbi +0 -58
  451. data/rbi/stripe/services/account_login_link_service.rbi +0 -22
  452. data/rbi/stripe/services/account_person_service.rbi +0 -923
  453. data/rbi/stripe/services/account_service.rbi +0 -4143
  454. data/rbi/stripe/services/account_session_service.rbi +0 -572
  455. data/rbi/stripe/services/apple_pay_domain_service.rbi +0 -78
  456. data/rbi/stripe/services/application_fee_refund_service.rbi +0 -93
  457. data/rbi/stripe/services/application_fee_service.rbi +0 -78
  458. data/rbi/stripe/services/apps/secret_service.rbi +0 -151
  459. data/rbi/stripe/services/apps_service.rbi +0 -9
  460. data/rbi/stripe/services/balance_service.rbi +0 -21
  461. data/rbi/stripe/services/balance_transaction_service.rbi +0 -93
  462. data/rbi/stripe/services/billing/alert_service.rbi +0 -152
  463. data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +0 -68
  464. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +0 -59
  465. data/rbi/stripe/services/billing/credit_grant_service.rbi +0 -211
  466. data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +0 -42
  467. data/rbi/stripe/services/billing/meter_event_service.rbi +0 -42
  468. data/rbi/stripe/services/billing/meter_event_summary_service.rbi +0 -54
  469. data/rbi/stripe/services/billing/meter_service.rbi +0 -163
  470. data/rbi/stripe/services/billing_portal/configuration_service.rbi +0 -511
  471. data/rbi/stripe/services/billing_portal/session_service.rbi +0 -204
  472. data/rbi/stripe/services/billing_portal_service.rbi +0 -10
  473. data/rbi/stripe/services/billing_service.rbi +0 -15
  474. data/rbi/stripe/services/charge_service.rbi +0 -448
  475. data/rbi/stripe/services/checkout/session_line_item_service.rbi +0 -33
  476. data/rbi/stripe/services/checkout/session_service.rbi +0 -2585
  477. data/rbi/stripe/services/checkout_service.rbi +0 -9
  478. data/rbi/stripe/services/climate/order_service.rbi +0 -142
  479. data/rbi/stripe/services/climate_service.rbi +0 -11
  480. data/rbi/stripe/services/confirmation_token_service.rbi +0 -20
  481. data/rbi/stripe/services/country_spec_service.rbi +0 -44
  482. data/rbi/stripe/services/coupon_service.rbi +0 -196
  483. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +0 -167
  484. data/rbi/stripe/services/credit_note_service.rbi +0 -416
  485. data/rbi/stripe/services/customer_balance_transaction_service.rbi +0 -92
  486. data/rbi/stripe/services/customer_cash_balance_service.rbi +0 -45
  487. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +0 -44
  488. data/rbi/stripe/services/customer_funding_instructions_service.rbi +0 -59
  489. data/rbi/stripe/services/customer_payment_method_service.rbi +0 -57
  490. data/rbi/stripe/services/customer_payment_source_service.rbi +0 -232
  491. data/rbi/stripe/services/customer_service.rbi +0 -651
  492. data/rbi/stripe/services/customer_session_service.rbi +0 -116
  493. data/rbi/stripe/services/customer_tax_id_service.rbi +0 -72
  494. data/rbi/stripe/services/dispute_service.rbi +0 -424
  495. data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +0 -55
  496. data/rbi/stripe/services/entitlements/feature_service.rbi +0 -107
  497. data/rbi/stripe/services/entitlements_service.rbi +0 -10
  498. data/rbi/stripe/services/ephemeral_key_service.rbi +0 -53
  499. data/rbi/stripe/services/event_service.rbi +0 -83
  500. data/rbi/stripe/services/exchange_rate_service.rbi +0 -44
  501. data/rbi/stripe/services/file_link_service.rbi +0 -124
  502. data/rbi/stripe/services/file_service.rbi +0 -116
  503. data/rbi/stripe/services/financial_connections/account_owner_service.rbi +0 -42
  504. data/rbi/stripe/services/financial_connections/account_service.rbi +0 -133
  505. data/rbi/stripe/services/financial_connections/session_service.rbi +0 -88
  506. data/rbi/stripe/services/financial_connections/transaction_service.rbi +0 -92
  507. data/rbi/stripe/services/financial_connections_service.rbi +0 -11
  508. data/rbi/stripe/services/forwarding/request_service.rbi +0 -134
  509. data/rbi/stripe/services/forwarding_service.rbi +0 -9
  510. data/rbi/stripe/services/identity/verification_report_service.rbi +0 -87
  511. data/rbi/stripe/services/identity/verification_session_service.rbi +0 -323
  512. data/rbi/stripe/services/identity_service.rbi +0 -10
  513. data/rbi/stripe/services/invoice_item_service.rbi +0 -368
  514. data/rbi/stripe/services/invoice_line_item_service.rbi +0 -259
  515. data/rbi/stripe/services/invoice_payment_service.rbi +0 -71
  516. data/rbi/stripe/services/invoice_rendering_template_service.rbi +0 -82
  517. data/rbi/stripe/services/invoice_service.rbi +0 -2920
  518. data/rbi/stripe/services/issuing/authorization_service.rbi +0 -146
  519. data/rbi/stripe/services/issuing/card_service.rbi +0 -495
  520. data/rbi/stripe/services/issuing/cardholder_service.rbi +0 -587
  521. data/rbi/stripe/services/issuing/dispute_service.rbi +0 -707
  522. data/rbi/stripe/services/issuing/personalization_design_service.rbi +0 -243
  523. data/rbi/stripe/services/issuing/physical_bundle_service.rbi +0 -59
  524. data/rbi/stripe/services/issuing/token_service.rbi +0 -99
  525. data/rbi/stripe/services/issuing/transaction_service.rbi +0 -105
  526. data/rbi/stripe/services/issuing_service.rbi +0 -16
  527. data/rbi/stripe/services/mandate_service.rbi +0 -20
  528. data/rbi/stripe/services/payment_intent_service.rbi +0 -7759
  529. data/rbi/stripe/services/payment_link_service.rbi +0 -1352
  530. data/rbi/stripe/services/payment_method_configuration_service.rbi +0 -2211
  531. data/rbi/stripe/services/payment_method_domain_service.rbi +0 -112
  532. data/rbi/stripe/services/payment_method_service.rbi +0 -840
  533. data/rbi/stripe/services/payout_service.rbi +0 -205
  534. data/rbi/stripe/services/plan_service.rbi +0 -284
  535. data/rbi/stripe/services/price_service.rbi +0 -546
  536. data/rbi/stripe/services/product_feature_service.rbi +0 -69
  537. data/rbi/stripe/services/product_service.rbi +0 -479
  538. data/rbi/stripe/services/promotion_code_service.rbi +0 -214
  539. data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +0 -31
  540. data/rbi/stripe/services/quote_service.rbi +0 -686
  541. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +0 -85
  542. data/rbi/stripe/services/radar/value_list_item_service.rbi +0 -111
  543. data/rbi/stripe/services/radar/value_list_service.rbi +0 -143
  544. data/rbi/stripe/services/radar_service.rbi +0 -11
  545. data/rbi/stripe/services/refund_service.rbi +0 -185
  546. data/rbi/stripe/services/reporting/report_run_service.rbi +0 -135
  547. data/rbi/stripe/services/reporting/report_type_service.rbi +0 -35
  548. data/rbi/stripe/services/reporting_service.rbi +0 -10
  549. data/rbi/stripe/services/review_service.rbi +0 -84
  550. data/rbi/stripe/services/setup_attempt_service.rbi +0 -65
  551. data/rbi/stripe/services/setup_intent_service.rbi +0 -3596
  552. data/rbi/stripe/services/shipping_rate_service.rbi +0 -241
  553. data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +0 -46
  554. data/rbi/stripe/services/sigma_service.rbi +0 -9
  555. data/rbi/stripe/services/source_service.rbi +0 -663
  556. data/rbi/stripe/services/subscription_item_service.rbi +0 -324
  557. data/rbi/stripe/services/subscription_schedule_service.rbi +0 -1192
  558. data/rbi/stripe/services/subscription_service.rbi +0 -1596
  559. data/rbi/stripe/services/tax/calculation_line_item_service.rbi +0 -33
  560. data/rbi/stripe/services/tax/calculation_service.rbi +0 -230
  561. data/rbi/stripe/services/tax/registration_service.rbi +0 -1689
  562. data/rbi/stripe/services/tax/settings_service.rbi +0 -93
  563. data/rbi/stripe/services/tax/transaction_service.rbi +0 -146
  564. data/rbi/stripe/services/tax_code_service.rbi +0 -44
  565. data/rbi/stripe/services/tax_id_service.rbi +0 -112
  566. data/rbi/stripe/services/tax_rate_service.rbi +0 -185
  567. data/rbi/stripe/services/tax_service.rbi +0 -12
  568. data/rbi/stripe/services/terminal/configuration_service.rbi +0 -1120
  569. data/rbi/stripe/services/terminal/connection_token_service.rbi +0 -25
  570. data/rbi/stripe/services/terminal/location_service.rbi +0 -184
  571. data/rbi/stripe/services/terminal/reader_service.rbi +0 -344
  572. data/rbi/stripe/services/terminal_service.rbi +0 -12
  573. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +0 -746
  574. data/rbi/stripe/services/test_helpers/customer_service.rbi +0 -33
  575. data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +0 -848
  576. data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +0 -76
  577. data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +0 -69
  578. data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +0 -711
  579. data/rbi/stripe/services/test_helpers/issuing_service.rbi +0 -14
  580. data/rbi/stripe/services/test_helpers/refund_service.rbi +0 -22
  581. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +0 -62
  582. data/rbi/stripe/services/test_helpers/terminal_service.rbi +0 -11
  583. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +0 -92
  584. data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +0 -64
  585. data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +0 -125
  586. data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +0 -125
  587. data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +0 -87
  588. data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +0 -87
  589. data/rbi/stripe/services/test_helpers/treasury_service.rbi +0 -15
  590. data/rbi/stripe/services/test_helpers_service.rbi +0 -15
  591. data/rbi/stripe/services/token_service.rbi +0 -1189
  592. data/rbi/stripe/services/topup_service.rbi +0 -176
  593. data/rbi/stripe/services/transfer_reversal_service.rbi +0 -101
  594. data/rbi/stripe/services/transfer_service.rbi +0 -152
  595. data/rbi/stripe/services/treasury/credit_reversal_service.rbi +0 -84
  596. data/rbi/stripe/services/treasury/debit_reversal_service.rbi +0 -88
  597. data/rbi/stripe/services/treasury/financial_account_features_service.rbi +0 -198
  598. data/rbi/stripe/services/treasury/financial_account_service.rbi +0 -562
  599. data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +0 -117
  600. data/rbi/stripe/services/treasury/outbound_payment_service.rbi +0 -304
  601. data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +0 -157
  602. data/rbi/stripe/services/treasury/received_credit_service.rbi +0 -72
  603. data/rbi/stripe/services/treasury/received_debit_service.rbi +0 -59
  604. data/rbi/stripe/services/treasury/transaction_entry_service.rbi +0 -111
  605. data/rbi/stripe/services/treasury/transaction_service.rbi +0 -122
  606. data/rbi/stripe/services/treasury_service.rbi +0 -18
  607. data/rbi/stripe/services/v1_services.rbi +0 -77
  608. data/rbi/stripe/services/v2/billing/meter_event_adjustment_service.rbi +0 -39
  609. data/rbi/stripe/services/v2/billing/meter_event_service.rbi +0 -42
  610. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +0 -20
  611. data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +0 -55
  612. data/rbi/stripe/services/v2/billing_service.rbi +0 -14
  613. data/rbi/stripe/services/v2/core/event_destination_service.rbi +0 -200
  614. data/rbi/stripe/services/v2/core/event_service.rbi +0 -38
  615. data/rbi/stripe/services/v2/core_service.rbi +0 -12
  616. data/rbi/stripe/services/v2_services.rbi +0 -10
  617. data/rbi/stripe/services/webhook_endpoint_service.rbi +0 -131
@@ -83,6 +83,8 @@ module Stripe
83
83
  attr_accessor :created
84
84
  # Only return subscription schedules for the given customer.
85
85
  attr_accessor :customer
86
+ # Only return subscription schedules for the given account.
87
+ attr_accessor :customer_account
86
88
  # 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.
87
89
  attr_accessor :ending_before
88
90
  # Specifies which fields in the response should be expanded.
@@ -101,6 +103,7 @@ module Stripe
101
103
  completed_at: nil,
102
104
  created: nil,
103
105
  customer: nil,
106
+ customer_account: nil,
104
107
  ending_before: nil,
105
108
  expand: nil,
106
109
  limit: nil,
@@ -112,6 +115,7 @@ module Stripe
112
115
  @completed_at = completed_at
113
116
  @created = created
114
117
  @customer = customer
118
+ @customer_account = customer_account
115
119
  @ending_before = ending_before
116
120
  @expand = expand
117
121
  @limit = limit
@@ -228,16 +232,44 @@ module Stripe
228
232
  class Phase < Stripe::RequestParams
229
233
  class AddInvoiceItem < Stripe::RequestParams
230
234
  class Discount < Stripe::RequestParams
235
+ class DiscountEnd < Stripe::RequestParams
236
+ class Duration < Stripe::RequestParams
237
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
238
+ attr_accessor :interval
239
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
240
+ attr_accessor :interval_count
241
+
242
+ def initialize(interval: nil, interval_count: nil)
243
+ @interval = interval
244
+ @interval_count = interval_count
245
+ end
246
+ end
247
+ # Time span for the redeemed discount.
248
+ attr_accessor :duration
249
+ # A precise Unix timestamp for the discount to end. Must be in the future.
250
+ attr_accessor :timestamp
251
+ # The type of calculation made to determine when the discount ends.
252
+ attr_accessor :type
253
+
254
+ def initialize(duration: nil, timestamp: nil, type: nil)
255
+ @duration = duration
256
+ @timestamp = timestamp
257
+ @type = type
258
+ end
259
+ end
231
260
  # ID of the coupon to create a new discount for.
232
261
  attr_accessor :coupon
233
262
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
234
263
  attr_accessor :discount
264
+ # Details to determine how long the discount should be applied for.
265
+ attr_accessor :discount_end
235
266
  # ID of the promotion code to create a new discount for.
236
267
  attr_accessor :promotion_code
237
268
 
238
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
269
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
239
270
  @coupon = coupon
240
271
  @discount = discount
272
+ @discount_end = discount_end
241
273
  @promotion_code = promotion_code
242
274
  end
243
275
  end
@@ -312,16 +344,44 @@ module Stripe
312
344
  end
313
345
 
314
346
  class Discount < Stripe::RequestParams
347
+ class DiscountEnd < Stripe::RequestParams
348
+ class Duration < Stripe::RequestParams
349
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
350
+ attr_accessor :interval
351
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
352
+ attr_accessor :interval_count
353
+
354
+ def initialize(interval: nil, interval_count: nil)
355
+ @interval = interval
356
+ @interval_count = interval_count
357
+ end
358
+ end
359
+ # Time span for the redeemed discount.
360
+ attr_accessor :duration
361
+ # A precise Unix timestamp for the discount to end. Must be in the future.
362
+ attr_accessor :timestamp
363
+ # The type of calculation made to determine when the discount ends.
364
+ attr_accessor :type
365
+
366
+ def initialize(duration: nil, timestamp: nil, type: nil)
367
+ @duration = duration
368
+ @timestamp = timestamp
369
+ @type = type
370
+ end
371
+ end
315
372
  # ID of the coupon to create a new discount for.
316
373
  attr_accessor :coupon
317
374
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
318
375
  attr_accessor :discount
376
+ # Details to determine how long the discount should be applied for.
377
+ attr_accessor :discount_end
319
378
  # ID of the promotion code to create a new discount for.
320
379
  attr_accessor :promotion_code
321
380
 
322
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
381
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
323
382
  @coupon = coupon
324
383
  @discount = discount
384
+ @discount_end = discount_end
325
385
  @promotion_code = promotion_code
326
386
  end
327
387
  end
@@ -354,16 +414,44 @@ module Stripe
354
414
 
355
415
  class Item < Stripe::RequestParams
356
416
  class Discount < Stripe::RequestParams
417
+ class DiscountEnd < Stripe::RequestParams
418
+ class Duration < Stripe::RequestParams
419
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
420
+ attr_accessor :interval
421
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
422
+ attr_accessor :interval_count
423
+
424
+ def initialize(interval: nil, interval_count: nil)
425
+ @interval = interval
426
+ @interval_count = interval_count
427
+ end
428
+ end
429
+ # Time span for the redeemed discount.
430
+ attr_accessor :duration
431
+ # A precise Unix timestamp for the discount to end. Must be in the future.
432
+ attr_accessor :timestamp
433
+ # The type of calculation made to determine when the discount ends.
434
+ attr_accessor :type
435
+
436
+ def initialize(duration: nil, timestamp: nil, type: nil)
437
+ @duration = duration
438
+ @timestamp = timestamp
439
+ @type = type
440
+ end
441
+ end
357
442
  # ID of the coupon to create a new discount for.
358
443
  attr_accessor :coupon
359
444
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
360
445
  attr_accessor :discount
446
+ # Details to determine how long the discount should be applied for.
447
+ attr_accessor :discount_end
361
448
  # ID of the promotion code to create a new discount for.
362
449
  attr_accessor :promotion_code
363
450
 
364
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
451
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
365
452
  @coupon = coupon
366
453
  @discount = discount
454
+ @discount_end = discount_end
367
455
  @promotion_code = promotion_code
368
456
  end
369
457
  end
@@ -409,6 +497,18 @@ module Stripe
409
497
  @unit_amount_decimal = unit_amount_decimal
410
498
  end
411
499
  end
500
+
501
+ class Trial < Stripe::RequestParams
502
+ # 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.
503
+ attr_accessor :converts_to
504
+ # Determines the type of trial for this item.
505
+ attr_accessor :type
506
+
507
+ def initialize(converts_to: nil, type: nil)
508
+ @converts_to = converts_to
509
+ @type = type
510
+ end
511
+ end
412
512
  # The coupons to redeem into discounts for the subscription item.
413
513
  attr_accessor :discounts
414
514
  # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to a configuration item. Metadata on a configuration item will update the underlying subscription item's `metadata` when the phase is entered, adding new keys and replacing existing keys. Individual keys in the subscription item's `metadata` can be unset by posting an empty value to them in the configuration item's `metadata`. To unset all keys in the subscription item's `metadata`, update the subscription item directly or unset every key individually from the configuration item's `metadata`.
@@ -423,6 +523,8 @@ module Stripe
423
523
  attr_accessor :quantity
424
524
  # A list of [Tax Rate](https://stripe.com/docs/api/tax_rates) ids. These Tax Rates will override the [`default_tax_rates`](https://stripe.com/docs/api/subscriptions/create#create_subscription-default_tax_rates) on the Subscription. When updating, pass an empty string to remove previously-defined tax rates.
425
525
  attr_accessor :tax_rates
526
+ # Options that configure the trial on the subscription item.
527
+ attr_accessor :trial
426
528
 
427
529
  def initialize(
428
530
  discounts: nil,
@@ -431,7 +533,8 @@ module Stripe
431
533
  price: nil,
432
534
  price_data: nil,
433
535
  quantity: nil,
434
- tax_rates: nil
536
+ tax_rates: nil,
537
+ trial: nil
435
538
  )
436
539
  @discounts = discounts
437
540
  @metadata = metadata
@@ -440,6 +543,16 @@ module Stripe
440
543
  @price_data = price_data
441
544
  @quantity = quantity
442
545
  @tax_rates = tax_rates
546
+ @trial = trial
547
+ end
548
+ end
549
+
550
+ class PauseCollection < Stripe::RequestParams
551
+ # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
552
+ attr_accessor :behavior
553
+
554
+ def initialize(behavior: nil)
555
+ @behavior = behavior
443
556
  end
444
557
  end
445
558
 
@@ -454,6 +567,23 @@ module Stripe
454
567
  @destination = destination
455
568
  end
456
569
  end
570
+
571
+ class TrialSettings < Stripe::RequestParams
572
+ class EndBehavior < Stripe::RequestParams
573
+ # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
574
+ attr_accessor :prorate_up_front
575
+
576
+ def initialize(prorate_up_front: nil)
577
+ @prorate_up_front = prorate_up_front
578
+ end
579
+ end
580
+ # Defines how the subscription should behave when a trial ends.
581
+ attr_accessor :end_behavior
582
+
583
+ def initialize(end_behavior: nil)
584
+ @end_behavior = end_behavior
585
+ end
586
+ end
457
587
  # A list of prices and quantities that will generate invoice items appended to the next invoice for this phase. You may pass up to 20 items.
458
588
  attr_accessor :add_invoice_items
459
589
  # A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the application owner's Stripe account. The request must be made by a platform account on a connected account in order to set an application fee percentage. For more information, see the application fees [documentation](https://stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions).
@@ -486,14 +616,20 @@ module Stripe
486
616
  attr_accessor :metadata
487
617
  # The account on behalf of which to charge, for each of the associated subscription's invoices.
488
618
  attr_accessor :on_behalf_of
619
+ # If specified, payment collection for this subscription will be paused. Note that the subscription status will be unchanged and will not be updated to `paused`. Learn more about [pausing collection](https://stripe.com/docs/billing/subscriptions/pause-payment).
620
+ attr_accessor :pause_collection
489
621
  # Whether the subscription schedule will create [prorations](https://stripe.com/docs/billing/subscriptions/prorations) when transitioning to this phase. The default value is `create_prorations`. This setting controls prorations when a phase is started asynchronously and it is persisted as a field on the phase. It's different from the request-level [proration_behavior](https://stripe.com/docs/api/subscription_schedules/update#update_subscription_schedule-proration_behavior) parameter which controls what happens if the update request affects the billing configuration of the current phase.
490
622
  attr_accessor :proration_behavior
491
623
  # The data with which to automatically create a Transfer for each of the associated subscription's invoices.
492
624
  attr_accessor :transfer_data
493
625
  # If set to true the entire phase is counted as a trial and the customer will not be charged for any fees.
494
626
  attr_accessor :trial
627
+ # Specify trial behavior when crossing phase boundaries
628
+ attr_accessor :trial_continuation
495
629
  # Sets the phase to trialing from the start date to this date. Must be before the phase end date, can not be combined with `trial`
496
630
  attr_accessor :trial_end
631
+ # Settings related to subscription trials.
632
+ attr_accessor :trial_settings
497
633
 
498
634
  def initialize(
499
635
  add_invoice_items: nil,
@@ -512,10 +648,13 @@ module Stripe
512
648
  iterations: nil,
513
649
  metadata: nil,
514
650
  on_behalf_of: nil,
651
+ pause_collection: nil,
515
652
  proration_behavior: nil,
516
653
  transfer_data: nil,
517
654
  trial: nil,
518
- trial_end: nil
655
+ trial_continuation: nil,
656
+ trial_end: nil,
657
+ trial_settings: nil
519
658
  )
520
659
  @add_invoice_items = add_invoice_items
521
660
  @application_fee_percent = application_fee_percent
@@ -533,14 +672,33 @@ module Stripe
533
672
  @iterations = iterations
534
673
  @metadata = metadata
535
674
  @on_behalf_of = on_behalf_of
675
+ @pause_collection = pause_collection
536
676
  @proration_behavior = proration_behavior
537
677
  @transfer_data = transfer_data
538
678
  @trial = trial
679
+ @trial_continuation = trial_continuation
539
680
  @trial_end = trial_end
681
+ @trial_settings = trial_settings
682
+ end
683
+ end
684
+
685
+ class Prebilling < Stripe::RequestParams
686
+ # This is used to determine the number of billing cycles to prebill.
687
+ attr_accessor :iterations
688
+ # Whether to cancel or preserve `prebilling` if the subscription is updated during the prebilled period. The default value is `reset`.
689
+ attr_accessor :update_behavior
690
+
691
+ def initialize(iterations: nil, update_behavior: nil)
692
+ @iterations = iterations
693
+ @update_behavior = update_behavior
540
694
  end
541
695
  end
696
+ # 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.
697
+ attr_accessor :billing_behavior
542
698
  # The identifier of the customer to create the subscription schedule for.
543
699
  attr_accessor :customer
700
+ # The identifier of the account to create the subscription schedule for.
701
+ attr_accessor :customer_account
544
702
  # Object representing the subscription schedule's default settings.
545
703
  attr_accessor :default_settings
546
704
  # Behavior of the subscription schedule and underlying subscription when it ends. Possible values are `release` or `cancel` with the default being `release`. `release` will end the subscription schedule and keep the underlying subscription running. `cancel` will end the subscription schedule and cancel the underlying subscription.
@@ -553,26 +711,34 @@ module Stripe
553
711
  attr_accessor :metadata
554
712
  # List representing phases of the subscription schedule. Each phase can be customized to have different durations, plans, and coupons. If there are multiple phases, the `end_date` of one phase will always equal the `start_date` of the next phase.
555
713
  attr_accessor :phases
714
+ # If specified, the invoicing for the given billing cycle iterations will be processed now.
715
+ attr_accessor :prebilling
556
716
  # When the subscription schedule starts. We recommend using `now` so that it starts the subscription immediately. You can also use a Unix timestamp to backdate the subscription so that it starts on a past date, or set a future date for the subscription to start on.
557
717
  attr_accessor :start_date
558
718
 
559
719
  def initialize(
720
+ billing_behavior: nil,
560
721
  customer: nil,
722
+ customer_account: nil,
561
723
  default_settings: nil,
562
724
  end_behavior: nil,
563
725
  expand: nil,
564
726
  from_subscription: nil,
565
727
  metadata: nil,
566
728
  phases: nil,
729
+ prebilling: nil,
567
730
  start_date: nil
568
731
  )
732
+ @billing_behavior = billing_behavior
569
733
  @customer = customer
734
+ @customer_account = customer_account
570
735
  @default_settings = default_settings
571
736
  @end_behavior = end_behavior
572
737
  @expand = expand
573
738
  @from_subscription = from_subscription
574
739
  @metadata = metadata
575
740
  @phases = phases
741
+ @prebilling = prebilling
576
742
  @start_date = start_date
577
743
  end
578
744
  end
@@ -693,16 +859,44 @@ module Stripe
693
859
  class Phase < Stripe::RequestParams
694
860
  class AddInvoiceItem < Stripe::RequestParams
695
861
  class Discount < Stripe::RequestParams
862
+ class DiscountEnd < Stripe::RequestParams
863
+ class Duration < Stripe::RequestParams
864
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
865
+ attr_accessor :interval
866
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
867
+ attr_accessor :interval_count
868
+
869
+ def initialize(interval: nil, interval_count: nil)
870
+ @interval = interval
871
+ @interval_count = interval_count
872
+ end
873
+ end
874
+ # Time span for the redeemed discount.
875
+ attr_accessor :duration
876
+ # A precise Unix timestamp for the discount to end. Must be in the future.
877
+ attr_accessor :timestamp
878
+ # The type of calculation made to determine when the discount ends.
879
+ attr_accessor :type
880
+
881
+ def initialize(duration: nil, timestamp: nil, type: nil)
882
+ @duration = duration
883
+ @timestamp = timestamp
884
+ @type = type
885
+ end
886
+ end
696
887
  # ID of the coupon to create a new discount for.
697
888
  attr_accessor :coupon
698
889
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
699
890
  attr_accessor :discount
891
+ # Details to determine how long the discount should be applied for.
892
+ attr_accessor :discount_end
700
893
  # ID of the promotion code to create a new discount for.
701
894
  attr_accessor :promotion_code
702
895
 
703
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
896
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
704
897
  @coupon = coupon
705
898
  @discount = discount
899
+ @discount_end = discount_end
706
900
  @promotion_code = promotion_code
707
901
  end
708
902
  end
@@ -777,16 +971,44 @@ module Stripe
777
971
  end
778
972
 
779
973
  class Discount < Stripe::RequestParams
974
+ class DiscountEnd < Stripe::RequestParams
975
+ class Duration < Stripe::RequestParams
976
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
977
+ attr_accessor :interval
978
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
979
+ attr_accessor :interval_count
980
+
981
+ def initialize(interval: nil, interval_count: nil)
982
+ @interval = interval
983
+ @interval_count = interval_count
984
+ end
985
+ end
986
+ # Time span for the redeemed discount.
987
+ attr_accessor :duration
988
+ # A precise Unix timestamp for the discount to end. Must be in the future.
989
+ attr_accessor :timestamp
990
+ # The type of calculation made to determine when the discount ends.
991
+ attr_accessor :type
992
+
993
+ def initialize(duration: nil, timestamp: nil, type: nil)
994
+ @duration = duration
995
+ @timestamp = timestamp
996
+ @type = type
997
+ end
998
+ end
780
999
  # ID of the coupon to create a new discount for.
781
1000
  attr_accessor :coupon
782
1001
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
783
1002
  attr_accessor :discount
1003
+ # Details to determine how long the discount should be applied for.
1004
+ attr_accessor :discount_end
784
1005
  # ID of the promotion code to create a new discount for.
785
1006
  attr_accessor :promotion_code
786
1007
 
787
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
1008
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
788
1009
  @coupon = coupon
789
1010
  @discount = discount
1011
+ @discount_end = discount_end
790
1012
  @promotion_code = promotion_code
791
1013
  end
792
1014
  end
@@ -819,16 +1041,44 @@ module Stripe
819
1041
 
820
1042
  class Item < Stripe::RequestParams
821
1043
  class Discount < Stripe::RequestParams
1044
+ class DiscountEnd < Stripe::RequestParams
1045
+ class Duration < Stripe::RequestParams
1046
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1047
+ attr_accessor :interval
1048
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1049
+ attr_accessor :interval_count
1050
+
1051
+ def initialize(interval: nil, interval_count: nil)
1052
+ @interval = interval
1053
+ @interval_count = interval_count
1054
+ end
1055
+ end
1056
+ # Time span for the redeemed discount.
1057
+ attr_accessor :duration
1058
+ # A precise Unix timestamp for the discount to end. Must be in the future.
1059
+ attr_accessor :timestamp
1060
+ # The type of calculation made to determine when the discount ends.
1061
+ attr_accessor :type
1062
+
1063
+ def initialize(duration: nil, timestamp: nil, type: nil)
1064
+ @duration = duration
1065
+ @timestamp = timestamp
1066
+ @type = type
1067
+ end
1068
+ end
822
1069
  # ID of the coupon to create a new discount for.
823
1070
  attr_accessor :coupon
824
1071
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
825
1072
  attr_accessor :discount
1073
+ # Details to determine how long the discount should be applied for.
1074
+ attr_accessor :discount_end
826
1075
  # ID of the promotion code to create a new discount for.
827
1076
  attr_accessor :promotion_code
828
1077
 
829
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
1078
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
830
1079
  @coupon = coupon
831
1080
  @discount = discount
1081
+ @discount_end = discount_end
832
1082
  @promotion_code = promotion_code
833
1083
  end
834
1084
  end
@@ -874,6 +1124,18 @@ module Stripe
874
1124
  @unit_amount_decimal = unit_amount_decimal
875
1125
  end
876
1126
  end
1127
+
1128
+ class Trial < Stripe::RequestParams
1129
+ # 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.
1130
+ attr_accessor :converts_to
1131
+ # Determines the type of trial for this item.
1132
+ attr_accessor :type
1133
+
1134
+ def initialize(converts_to: nil, type: nil)
1135
+ @converts_to = converts_to
1136
+ @type = type
1137
+ end
1138
+ end
877
1139
  # The coupons to redeem into discounts for the subscription item.
878
1140
  attr_accessor :discounts
879
1141
  # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to a configuration item. Metadata on a configuration item will update the underlying subscription item's `metadata` when the phase is entered, adding new keys and replacing existing keys. Individual keys in the subscription item's `metadata` can be unset by posting an empty value to them in the configuration item's `metadata`. To unset all keys in the subscription item's `metadata`, update the subscription item directly or unset every key individually from the configuration item's `metadata`.
@@ -888,6 +1150,8 @@ module Stripe
888
1150
  attr_accessor :quantity
889
1151
  # A list of [Tax Rate](https://stripe.com/docs/api/tax_rates) ids. These Tax Rates will override the [`default_tax_rates`](https://stripe.com/docs/api/subscriptions/create#create_subscription-default_tax_rates) on the Subscription. When updating, pass an empty string to remove previously-defined tax rates.
890
1152
  attr_accessor :tax_rates
1153
+ # Options that configure the trial on the subscription item.
1154
+ attr_accessor :trial
891
1155
 
892
1156
  def initialize(
893
1157
  discounts: nil,
@@ -896,7 +1160,8 @@ module Stripe
896
1160
  price: nil,
897
1161
  price_data: nil,
898
1162
  quantity: nil,
899
- tax_rates: nil
1163
+ tax_rates: nil,
1164
+ trial: nil
900
1165
  )
901
1166
  @discounts = discounts
902
1167
  @metadata = metadata
@@ -905,6 +1170,16 @@ module Stripe
905
1170
  @price_data = price_data
906
1171
  @quantity = quantity
907
1172
  @tax_rates = tax_rates
1173
+ @trial = trial
1174
+ end
1175
+ end
1176
+
1177
+ class PauseCollection < Stripe::RequestParams
1178
+ # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
1179
+ attr_accessor :behavior
1180
+
1181
+ def initialize(behavior: nil)
1182
+ @behavior = behavior
908
1183
  end
909
1184
  end
910
1185
 
@@ -919,6 +1194,23 @@ module Stripe
919
1194
  @destination = destination
920
1195
  end
921
1196
  end
1197
+
1198
+ class TrialSettings < Stripe::RequestParams
1199
+ class EndBehavior < Stripe::RequestParams
1200
+ # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
1201
+ attr_accessor :prorate_up_front
1202
+
1203
+ def initialize(prorate_up_front: nil)
1204
+ @prorate_up_front = prorate_up_front
1205
+ end
1206
+ end
1207
+ # Defines how the subscription should behave when a trial ends.
1208
+ attr_accessor :end_behavior
1209
+
1210
+ def initialize(end_behavior: nil)
1211
+ @end_behavior = end_behavior
1212
+ end
1213
+ end
922
1214
  # A list of prices and quantities that will generate invoice items appended to the next invoice for this phase. You may pass up to 20 items.
923
1215
  attr_accessor :add_invoice_items
924
1216
  # A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the application owner's Stripe account. The request must be made by a platform account on a connected account in order to set an application fee percentage. For more information, see the application fees [documentation](https://stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions).
@@ -951,6 +1243,8 @@ module Stripe
951
1243
  attr_accessor :metadata
952
1244
  # The account on behalf of which to charge, for each of the associated subscription's invoices.
953
1245
  attr_accessor :on_behalf_of
1246
+ # If specified, payment collection for this subscription will be paused. Note that the subscription status will be unchanged and will not be updated to `paused`. Learn more about [pausing collection](https://stripe.com/docs/billing/subscriptions/pause-payment).
1247
+ attr_accessor :pause_collection
954
1248
  # Whether the subscription schedule will create [prorations](https://stripe.com/docs/billing/subscriptions/prorations) when transitioning to this phase. The default value is `create_prorations`. This setting controls prorations when a phase is started asynchronously and it is persisted as a field on the phase. It's different from the request-level [proration_behavior](https://stripe.com/docs/api/subscription_schedules/update#update_subscription_schedule-proration_behavior) parameter which controls what happens if the update request affects the billing configuration of the current phase.
955
1249
  attr_accessor :proration_behavior
956
1250
  # The date at which this phase of the subscription schedule starts or `now`. Must be set on the first phase.
@@ -959,8 +1253,12 @@ module Stripe
959
1253
  attr_accessor :transfer_data
960
1254
  # If set to true the entire phase is counted as a trial and the customer will not be charged for any fees.
961
1255
  attr_accessor :trial
1256
+ # Specify trial behavior when crossing phase boundaries
1257
+ attr_accessor :trial_continuation
962
1258
  # Sets the phase to trialing from the start date to this date. Must be before the phase end date, can not be combined with `trial`
963
1259
  attr_accessor :trial_end
1260
+ # Settings related to subscription trials.
1261
+ attr_accessor :trial_settings
964
1262
 
965
1263
  def initialize(
966
1264
  add_invoice_items: nil,
@@ -979,11 +1277,14 @@ module Stripe
979
1277
  iterations: nil,
980
1278
  metadata: nil,
981
1279
  on_behalf_of: nil,
1280
+ pause_collection: nil,
982
1281
  proration_behavior: nil,
983
1282
  start_date: nil,
984
1283
  transfer_data: nil,
985
1284
  trial: nil,
986
- trial_end: nil
1285
+ trial_continuation: nil,
1286
+ trial_end: nil,
1287
+ trial_settings: nil
987
1288
  )
988
1289
  @add_invoice_items = add_invoice_items
989
1290
  @application_fee_percent = application_fee_percent
@@ -1001,13 +1302,30 @@ module Stripe
1001
1302
  @iterations = iterations
1002
1303
  @metadata = metadata
1003
1304
  @on_behalf_of = on_behalf_of
1305
+ @pause_collection = pause_collection
1004
1306
  @proration_behavior = proration_behavior
1005
1307
  @start_date = start_date
1006
1308
  @transfer_data = transfer_data
1007
1309
  @trial = trial
1310
+ @trial_continuation = trial_continuation
1008
1311
  @trial_end = trial_end
1312
+ @trial_settings = trial_settings
1313
+ end
1314
+ end
1315
+
1316
+ class Prebilling < Stripe::RequestParams
1317
+ # This is used to determine the number of billing cycles to prebill.
1318
+ attr_accessor :iterations
1319
+ # Whether to cancel or preserve `prebilling` if the subscription is updated during the prebilled period. The default value is `reset`.
1320
+ attr_accessor :update_behavior
1321
+
1322
+ def initialize(iterations: nil, update_behavior: nil)
1323
+ @iterations = iterations
1324
+ @update_behavior = update_behavior
1009
1325
  end
1010
1326
  end
1327
+ # 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.
1328
+ attr_accessor :billing_behavior
1011
1329
  # Object representing the subscription schedule's default settings.
1012
1330
  attr_accessor :default_settings
1013
1331
  # Behavior of the subscription schedule and underlying subscription when it ends. Possible values are `release` or `cancel` with the default being `release`. `release` will end the subscription schedule and keep the underlying subscription running. `cancel` will end the subscription schedule and cancel the underlying subscription.
@@ -1018,26 +1336,598 @@ module Stripe
1018
1336
  attr_accessor :metadata
1019
1337
  # List representing phases of the subscription schedule. Each phase can be customized to have different durations, plans, and coupons. If there are multiple phases, the `end_date` of one phase will always equal the `start_date` of the next phase. Note that past phases can be omitted.
1020
1338
  attr_accessor :phases
1339
+ # If specified, the invoicing for the given billing cycle iterations will be processed now.
1340
+ attr_accessor :prebilling
1021
1341
  # If the update changes the current phase, indicates whether the changes should be prorated. The default value is `create_prorations`.
1022
1342
  attr_accessor :proration_behavior
1023
1343
 
1024
1344
  def initialize(
1345
+ billing_behavior: nil,
1025
1346
  default_settings: nil,
1026
1347
  end_behavior: nil,
1027
1348
  expand: nil,
1028
1349
  metadata: nil,
1029
1350
  phases: nil,
1351
+ prebilling: nil,
1030
1352
  proration_behavior: nil
1031
1353
  )
1354
+ @billing_behavior = billing_behavior
1032
1355
  @default_settings = default_settings
1033
1356
  @end_behavior = end_behavior
1034
1357
  @expand = expand
1035
1358
  @metadata = metadata
1036
1359
  @phases = phases
1360
+ @prebilling = prebilling
1037
1361
  @proration_behavior = proration_behavior
1038
1362
  end
1039
1363
  end
1040
1364
 
1365
+ class AmendParams < Stripe::RequestParams
1366
+ class Amendment < Stripe::RequestParams
1367
+ class AmendmentEnd < Stripe::RequestParams
1368
+ class DiscountEnd < Stripe::RequestParams
1369
+ # The ID of a specific discount.
1370
+ attr_accessor :discount
1371
+
1372
+ def initialize(discount: nil)
1373
+ @discount = discount
1374
+ end
1375
+ end
1376
+
1377
+ class Duration < Stripe::RequestParams
1378
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1379
+ attr_accessor :interval
1380
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1381
+ attr_accessor :interval_count
1382
+
1383
+ def initialize(interval: nil, interval_count: nil)
1384
+ @interval = interval
1385
+ @interval_count = interval_count
1386
+ end
1387
+ end
1388
+ # Use the `end` time of a given discount.
1389
+ attr_accessor :discount_end
1390
+ # Time span for the amendment starting from the `amendment_start`.
1391
+ attr_accessor :duration
1392
+ # A precise Unix timestamp for the amendment to end. Must be after the `amendment_start`.
1393
+ attr_accessor :timestamp
1394
+ # Select one of three ways to pass the `amendment_end`.
1395
+ attr_accessor :type
1396
+
1397
+ def initialize(discount_end: nil, duration: nil, timestamp: nil, type: nil)
1398
+ @discount_end = discount_end
1399
+ @duration = duration
1400
+ @timestamp = timestamp
1401
+ @type = type
1402
+ end
1403
+ end
1404
+
1405
+ class AmendmentStart < Stripe::RequestParams
1406
+ class AmendmentEnd < Stripe::RequestParams
1407
+ # The position of the previous amendment in the `amendments` array after which this amendment should begin. Indexes start from 0 and must be less than the index of the current amendment in the array.
1408
+ attr_accessor :index
1409
+
1410
+ def initialize(index: nil)
1411
+ @index = index
1412
+ end
1413
+ end
1414
+
1415
+ class DiscountEnd < Stripe::RequestParams
1416
+ # The ID of a specific discount.
1417
+ attr_accessor :discount
1418
+
1419
+ def initialize(discount: nil)
1420
+ @discount = discount
1421
+ end
1422
+ end
1423
+ # Details of another amendment in the same array, immediately after which this amendment should begin.
1424
+ attr_accessor :amendment_end
1425
+ # Use the `end` time of a given discount.
1426
+ attr_accessor :discount_end
1427
+ # A precise Unix timestamp for the amendment to start.
1428
+ attr_accessor :timestamp
1429
+ # Select one of three ways to pass the `amendment_start`.
1430
+ attr_accessor :type
1431
+
1432
+ def initialize(amendment_end: nil, discount_end: nil, timestamp: nil, type: nil)
1433
+ @amendment_end = amendment_end
1434
+ @discount_end = discount_end
1435
+ @timestamp = timestamp
1436
+ @type = type
1437
+ end
1438
+ end
1439
+
1440
+ class DiscountAction < Stripe::RequestParams
1441
+ class Add < Stripe::RequestParams
1442
+ class DiscountEnd < Stripe::RequestParams
1443
+ # The type of calculation made to determine when the discount ends.
1444
+ attr_accessor :type
1445
+
1446
+ def initialize(type: nil)
1447
+ @type = type
1448
+ end
1449
+ end
1450
+ # The coupon code to redeem.
1451
+ attr_accessor :coupon
1452
+ # An ID of an existing discount for a coupon that was already redeemed.
1453
+ attr_accessor :discount
1454
+ # Details to determine how long the discount should be applied for.
1455
+ attr_accessor :discount_end
1456
+ # 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.
1457
+ attr_accessor :index
1458
+ # The promotion code to redeem.
1459
+ attr_accessor :promotion_code
1460
+
1461
+ def initialize(
1462
+ coupon: nil,
1463
+ discount: nil,
1464
+ discount_end: nil,
1465
+ index: nil,
1466
+ promotion_code: nil
1467
+ )
1468
+ @coupon = coupon
1469
+ @discount = discount
1470
+ @discount_end = discount_end
1471
+ @index = index
1472
+ @promotion_code = promotion_code
1473
+ end
1474
+ end
1475
+
1476
+ class Remove < Stripe::RequestParams
1477
+ # The coupon code to remove from the `discounts` array.
1478
+ attr_accessor :coupon
1479
+ # The ID of a discount to remove from the `discounts` array.
1480
+ attr_accessor :discount
1481
+ # The ID of a promotion code to remove from the `discounts` array.
1482
+ attr_accessor :promotion_code
1483
+
1484
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
1485
+ @coupon = coupon
1486
+ @discount = discount
1487
+ @promotion_code = promotion_code
1488
+ end
1489
+ end
1490
+
1491
+ class Set < Stripe::RequestParams
1492
+ # The coupon code to replace the `discounts` array with.
1493
+ attr_accessor :coupon
1494
+ # An ID of an existing discount to replace the `discounts` array with.
1495
+ attr_accessor :discount
1496
+ # An ID of an existing promotion code to replace the `discounts` array with.
1497
+ attr_accessor :promotion_code
1498
+
1499
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
1500
+ @coupon = coupon
1501
+ @discount = discount
1502
+ @promotion_code = promotion_code
1503
+ end
1504
+ end
1505
+ # Details of the discount to add.
1506
+ attr_accessor :add
1507
+ # Details of the discount to remove.
1508
+ attr_accessor :remove
1509
+ # Details of the discount to replace the existing discounts with.
1510
+ attr_accessor :set
1511
+ # Determines the type of discount action.
1512
+ attr_accessor :type
1513
+
1514
+ def initialize(add: nil, remove: nil, set: nil, type: nil)
1515
+ @add = add
1516
+ @remove = remove
1517
+ @set = set
1518
+ @type = type
1519
+ end
1520
+ end
1521
+
1522
+ class ItemAction < Stripe::RequestParams
1523
+ class Add < Stripe::RequestParams
1524
+ class Discount < Stripe::RequestParams
1525
+ class DiscountEnd < Stripe::RequestParams
1526
+ class Duration < Stripe::RequestParams
1527
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1528
+ attr_accessor :interval
1529
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1530
+ attr_accessor :interval_count
1531
+
1532
+ def initialize(interval: nil, interval_count: nil)
1533
+ @interval = interval
1534
+ @interval_count = interval_count
1535
+ end
1536
+ end
1537
+ # Time span for the redeemed discount.
1538
+ attr_accessor :duration
1539
+ # A precise Unix timestamp for the discount to end. Must be in the future.
1540
+ attr_accessor :timestamp
1541
+ # The type of calculation made to determine when the discount ends.
1542
+ attr_accessor :type
1543
+
1544
+ def initialize(duration: nil, timestamp: nil, type: nil)
1545
+ @duration = duration
1546
+ @timestamp = timestamp
1547
+ @type = type
1548
+ end
1549
+ end
1550
+ # ID of the coupon to create a new discount for.
1551
+ attr_accessor :coupon
1552
+ # ID of an existing discount on the object (or one of its ancestors) to reuse.
1553
+ attr_accessor :discount
1554
+ # Details to determine how long the discount should be applied for.
1555
+ attr_accessor :discount_end
1556
+ # ID of the promotion code to create a new discount for.
1557
+ attr_accessor :promotion_code
1558
+
1559
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
1560
+ @coupon = coupon
1561
+ @discount = discount
1562
+ @discount_end = discount_end
1563
+ @promotion_code = promotion_code
1564
+ end
1565
+ end
1566
+
1567
+ class Trial < Stripe::RequestParams
1568
+ # 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.
1569
+ attr_accessor :converts_to
1570
+ # Determines the type of trial for this item.
1571
+ attr_accessor :type
1572
+
1573
+ def initialize(converts_to: nil, type: nil)
1574
+ @converts_to = converts_to
1575
+ @type = type
1576
+ end
1577
+ end
1578
+ # The discounts applied to the item. Subscription item discounts are applied before subscription discounts.
1579
+ attr_accessor :discounts
1580
+ # 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`.
1581
+ attr_accessor :metadata
1582
+ # The ID of the price object.
1583
+ attr_accessor :price
1584
+ # Quantity for this item.
1585
+ attr_accessor :quantity
1586
+ # 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`.
1587
+ attr_accessor :tax_rates
1588
+ # Options that configure the trial on the subscription item.
1589
+ attr_accessor :trial
1590
+
1591
+ def initialize(
1592
+ discounts: nil,
1593
+ metadata: nil,
1594
+ price: nil,
1595
+ quantity: nil,
1596
+ tax_rates: nil,
1597
+ trial: nil
1598
+ )
1599
+ @discounts = discounts
1600
+ @metadata = metadata
1601
+ @price = price
1602
+ @quantity = quantity
1603
+ @tax_rates = tax_rates
1604
+ @trial = trial
1605
+ end
1606
+ end
1607
+
1608
+ class Remove < Stripe::RequestParams
1609
+ # ID of a price to remove.
1610
+ attr_accessor :price
1611
+
1612
+ def initialize(price: nil)
1613
+ @price = price
1614
+ end
1615
+ end
1616
+
1617
+ class Set < Stripe::RequestParams
1618
+ class Discount < Stripe::RequestParams
1619
+ class DiscountEnd < Stripe::RequestParams
1620
+ class Duration < Stripe::RequestParams
1621
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1622
+ attr_accessor :interval
1623
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1624
+ attr_accessor :interval_count
1625
+
1626
+ def initialize(interval: nil, interval_count: nil)
1627
+ @interval = interval
1628
+ @interval_count = interval_count
1629
+ end
1630
+ end
1631
+ # Time span for the redeemed discount.
1632
+ attr_accessor :duration
1633
+ # A precise Unix timestamp for the discount to end. Must be in the future.
1634
+ attr_accessor :timestamp
1635
+ # The type of calculation made to determine when the discount ends.
1636
+ attr_accessor :type
1637
+
1638
+ def initialize(duration: nil, timestamp: nil, type: nil)
1639
+ @duration = duration
1640
+ @timestamp = timestamp
1641
+ @type = type
1642
+ end
1643
+ end
1644
+ # ID of the coupon to create a new discount for.
1645
+ attr_accessor :coupon
1646
+ # ID of an existing discount on the object (or one of its ancestors) to reuse.
1647
+ attr_accessor :discount
1648
+ # Details to determine how long the discount should be applied for.
1649
+ attr_accessor :discount_end
1650
+ # ID of the promotion code to create a new discount for.
1651
+ attr_accessor :promotion_code
1652
+
1653
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
1654
+ @coupon = coupon
1655
+ @discount = discount
1656
+ @discount_end = discount_end
1657
+ @promotion_code = promotion_code
1658
+ end
1659
+ end
1660
+
1661
+ class Trial < Stripe::RequestParams
1662
+ # 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.
1663
+ attr_accessor :converts_to
1664
+ # Determines the type of trial for this item.
1665
+ attr_accessor :type
1666
+
1667
+ def initialize(converts_to: nil, type: nil)
1668
+ @converts_to = converts_to
1669
+ @type = type
1670
+ end
1671
+ end
1672
+ # 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`.
1673
+ attr_accessor :discounts
1674
+ # 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`.
1675
+ attr_accessor :metadata
1676
+ # The ID of the price object.
1677
+ attr_accessor :price
1678
+ # 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`.
1679
+ attr_accessor :quantity
1680
+ # 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`.
1681
+ attr_accessor :tax_rates
1682
+ # 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`.
1683
+ attr_accessor :trial
1684
+
1685
+ def initialize(
1686
+ discounts: nil,
1687
+ metadata: nil,
1688
+ price: nil,
1689
+ quantity: nil,
1690
+ tax_rates: nil,
1691
+ trial: nil
1692
+ )
1693
+ @discounts = discounts
1694
+ @metadata = metadata
1695
+ @price = price
1696
+ @quantity = quantity
1697
+ @tax_rates = tax_rates
1698
+ @trial = trial
1699
+ end
1700
+ end
1701
+ # Details of the subscription item to add. If an item with the same `price` exists, it will be replaced by this new item. Otherwise, it adds the new item.
1702
+ attr_accessor :add
1703
+ # Details of the subscription item to remove.
1704
+ attr_accessor :remove
1705
+ # Details of the subscription item to replace the existing items with. If an item with the `set[price]` already exists, the `items` array is not cleared. Instead, all of the other `set` properties that are passed in this request will replace the existing values for the configuration item.
1706
+ attr_accessor :set
1707
+ # Determines the type of item action.
1708
+ attr_accessor :type
1709
+
1710
+ def initialize(add: nil, remove: nil, set: nil, type: nil)
1711
+ @add = add
1712
+ @remove = remove
1713
+ @set = set
1714
+ @type = type
1715
+ end
1716
+ end
1717
+
1718
+ class MetadataAction < Stripe::RequestParams
1719
+ # Key-value pairs to add to schedule phase metadata. These values will merge with existing schedule phase metadata.
1720
+ attr_accessor :add
1721
+ # Keys to remove from schedule phase metadata.
1722
+ attr_accessor :remove
1723
+ # Key-value pairs to set as schedule phase metadata. Existing schedule phase metadata will be overwritten.
1724
+ attr_accessor :set
1725
+ # Select one of three ways to update phase-level `metadata` on subscription schedules.
1726
+ attr_accessor :type
1727
+
1728
+ def initialize(add: nil, remove: nil, set: nil, type: nil)
1729
+ @add = add
1730
+ @remove = remove
1731
+ @set = set
1732
+ @type = type
1733
+ end
1734
+ end
1735
+
1736
+ class SetPauseCollection < Stripe::RequestParams
1737
+ class Set < Stripe::RequestParams
1738
+ # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
1739
+ attr_accessor :behavior
1740
+
1741
+ def initialize(behavior: nil)
1742
+ @behavior = behavior
1743
+ end
1744
+ end
1745
+ # Details of the pause_collection behavior to apply to the amendment.
1746
+ attr_accessor :set
1747
+ # Determines the type of the pause_collection amendment.
1748
+ attr_accessor :type
1749
+
1750
+ def initialize(set: nil, type: nil)
1751
+ @set = set
1752
+ @type = type
1753
+ end
1754
+ end
1755
+
1756
+ class TrialSettings < Stripe::RequestParams
1757
+ class EndBehavior < Stripe::RequestParams
1758
+ # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
1759
+ attr_accessor :prorate_up_front
1760
+
1761
+ def initialize(prorate_up_front: nil)
1762
+ @prorate_up_front = prorate_up_front
1763
+ end
1764
+ end
1765
+ # Defines how the subscription should behave when a trial ends.
1766
+ attr_accessor :end_behavior
1767
+
1768
+ def initialize(end_behavior: nil)
1769
+ @end_behavior = end_behavior
1770
+ end
1771
+ end
1772
+ # Details to identify the end of the time range modified by the proposed change. If not supplied, the amendment is considered a point-in-time operation that only affects the exact timestamp at `amendment_start`, and a restricted set of attributes is supported on the amendment.
1773
+ attr_accessor :amendment_end
1774
+ # Details to identify the earliest timestamp where the proposed change should take effect.
1775
+ attr_accessor :amendment_start
1776
+ # For point-in-time amendments (having no `amendment_end`), this attribute lets you set or remove whether the subscription's billing cycle anchor is reset at the `amendment_start` timestamp.For time-span based amendments (having both `amendment_start` and `amendment_end`), the only value valid is `automatic`, which removes any previously configured billing cycle anchor resets scheduled to occur during the window of time spanned by the amendment.
1777
+ attr_accessor :billing_cycle_anchor
1778
+ # Changes to the coupons being redeemed or discounts being applied during the amendment time span.
1779
+ attr_accessor :discount_actions
1780
+ # Changes to the subscription items during the amendment time span.
1781
+ attr_accessor :item_actions
1782
+ # Instructions for how to modify phase metadata
1783
+ attr_accessor :metadata_actions
1784
+ # Changes to how Stripe handles prorations during the amendment time span. Affects if and how prorations are created when a future phase starts. In cases where the amendment changes the currently active phase, it is used to determine whether or how to prorate now, at the time of the request. Also supported as a point-in-time operation when `amendment_end` is `null`.
1785
+ attr_accessor :proration_behavior
1786
+ # Defines how to pause collection for the underlying subscription throughout the duration of the amendment.
1787
+ attr_accessor :set_pause_collection
1788
+ # Ends the subscription schedule early as dictated by either the accompanying amendment's start or end.
1789
+ attr_accessor :set_schedule_end
1790
+ # Settings related to subscription trials.
1791
+ attr_accessor :trial_settings
1792
+
1793
+ def initialize(
1794
+ amendment_end: nil,
1795
+ amendment_start: nil,
1796
+ billing_cycle_anchor: nil,
1797
+ discount_actions: nil,
1798
+ item_actions: nil,
1799
+ metadata_actions: nil,
1800
+ proration_behavior: nil,
1801
+ set_pause_collection: nil,
1802
+ set_schedule_end: nil,
1803
+ trial_settings: nil
1804
+ )
1805
+ @amendment_end = amendment_end
1806
+ @amendment_start = amendment_start
1807
+ @billing_cycle_anchor = billing_cycle_anchor
1808
+ @discount_actions = discount_actions
1809
+ @item_actions = item_actions
1810
+ @metadata_actions = metadata_actions
1811
+ @proration_behavior = proration_behavior
1812
+ @set_pause_collection = set_pause_collection
1813
+ @set_schedule_end = set_schedule_end
1814
+ @trial_settings = trial_settings
1815
+ end
1816
+ end
1817
+
1818
+ class Prebilling < Stripe::RequestParams
1819
+ class BillFrom < Stripe::RequestParams
1820
+ class AmendmentStart < Stripe::RequestParams
1821
+ # The position of the amendment in the `amendments` array with which prebilling should begin. Indexes start from 0 and must be less than the total number of supplied amendments.
1822
+ attr_accessor :index
1823
+
1824
+ def initialize(index: nil)
1825
+ @index = index
1826
+ end
1827
+ end
1828
+ # Start the prebilled period when a specified amendment begins.
1829
+ attr_accessor :amendment_start
1830
+ # Start the prebilled period at a precise integer timestamp, starting from the Unix epoch.
1831
+ attr_accessor :timestamp
1832
+ # Select one of several ways to pass the `bill_from` value.
1833
+ attr_accessor :type
1834
+
1835
+ def initialize(amendment_start: nil, timestamp: nil, type: nil)
1836
+ @amendment_start = amendment_start
1837
+ @timestamp = timestamp
1838
+ @type = type
1839
+ end
1840
+ end
1841
+
1842
+ class BillUntil < Stripe::RequestParams
1843
+ class AmendmentEnd < Stripe::RequestParams
1844
+ # The position of the amendment in the `amendments` array at which prebilling should end. Indexes start from 0 and must be less than the total number of supplied amendments.
1845
+ attr_accessor :index
1846
+
1847
+ def initialize(index: nil)
1848
+ @index = index
1849
+ end
1850
+ end
1851
+
1852
+ class Duration < Stripe::RequestParams
1853
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1854
+ attr_accessor :interval
1855
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1856
+ attr_accessor :interval_count
1857
+
1858
+ def initialize(interval: nil, interval_count: nil)
1859
+ @interval = interval
1860
+ @interval_count = interval_count
1861
+ end
1862
+ end
1863
+ # End the prebilled period when a specified amendment ends.
1864
+ attr_accessor :amendment_end
1865
+ # Time span for prebilling, starting from `bill_from`.
1866
+ attr_accessor :duration
1867
+ # End the prebilled period at a precise integer timestamp, starting from the Unix epoch.
1868
+ attr_accessor :timestamp
1869
+ # Select one of several ways to pass the `bill_until` value.
1870
+ attr_accessor :type
1871
+
1872
+ def initialize(amendment_end: nil, duration: nil, timestamp: nil, type: nil)
1873
+ @amendment_end = amendment_end
1874
+ @duration = duration
1875
+ @timestamp = timestamp
1876
+ @type = type
1877
+ end
1878
+ end
1879
+ # The beginning of the prebilled time period. The default value is `now`.
1880
+ attr_accessor :bill_from
1881
+ # The end of the prebilled time period.
1882
+ attr_accessor :bill_until
1883
+ # When the prebilling invoice should be created. The default value is `now`.
1884
+ attr_accessor :invoice_at
1885
+ # Whether to cancel or preserve `prebilling` if the subscription is updated during the prebilled period. The default value is `reset`.
1886
+ attr_accessor :update_behavior
1887
+
1888
+ def initialize(bill_from: nil, bill_until: nil, invoice_at: nil, update_behavior: nil)
1889
+ @bill_from = bill_from
1890
+ @bill_until = bill_until
1891
+ @invoice_at = invoice_at
1892
+ @update_behavior = update_behavior
1893
+ end
1894
+ end
1895
+
1896
+ class ScheduleSettings < Stripe::RequestParams
1897
+ # Behavior of the subscription schedule and underlying subscription when it ends.
1898
+ attr_accessor :end_behavior
1899
+
1900
+ def initialize(end_behavior: nil)
1901
+ @end_behavior = end_behavior
1902
+ end
1903
+ end
1904
+ # Changes to apply to the phases of the subscription schedule, in the order provided.
1905
+ attr_accessor :amendments
1906
+ # Specifies which fields in the response should be expanded.
1907
+ attr_accessor :expand
1908
+ # Provide any time periods to bill in advance.
1909
+ attr_accessor :prebilling
1910
+ # In cases where the amendment changes the currently active phase,
1911
+ # specifies if and how to prorate at the time of the request.
1912
+ attr_accessor :proration_behavior
1913
+ # Changes to apply to the subscription schedule.
1914
+ attr_accessor :schedule_settings
1915
+
1916
+ def initialize(
1917
+ amendments: nil,
1918
+ expand: nil,
1919
+ prebilling: nil,
1920
+ proration_behavior: nil,
1921
+ schedule_settings: nil
1922
+ )
1923
+ @amendments = amendments
1924
+ @expand = expand
1925
+ @prebilling = prebilling
1926
+ @proration_behavior = proration_behavior
1927
+ @schedule_settings = schedule_settings
1928
+ end
1929
+ end
1930
+
1041
1931
  class CancelParams < Stripe::RequestParams
1042
1932
  # Specifies which fields in the response should be expanded.
1043
1933
  attr_accessor :expand
@@ -1065,6 +1955,17 @@ module Stripe
1065
1955
  end
1066
1956
  end
1067
1957
 
1958
+ # Amends an existing subscription schedule.
1959
+ def amend(schedule, params = {}, opts = {})
1960
+ request(
1961
+ method: :post,
1962
+ path: format("/v1/subscription_schedules/%<schedule>s/amend", { schedule: CGI.escape(schedule) }),
1963
+ params: params,
1964
+ opts: opts,
1965
+ base_address: :api
1966
+ )
1967
+ end
1968
+
1068
1969
  # Cancels a subscription schedule and its associated subscription immediately (if the subscription schedule has an active subscription). A subscription schedule can only be canceled if its status is not_started or active.
1069
1970
  def cancel(schedule, params = {}, opts = {})
1070
1971
  request(