stripe 17.3.0.pre.alpha.1 → 17.3.0.pre.alpha.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 (52) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stripe/api_version.rb +1 -1
  3. data/lib/stripe/object_types.rb +1 -1
  4. data/lib/stripe/params/account_create_params.rb +33 -1
  5. data/lib/stripe/params/account_person_create_params.rb +33 -1
  6. data/lib/stripe/params/account_person_update_params.rb +33 -1
  7. data/lib/stripe/params/account_update_params.rb +33 -1
  8. data/lib/stripe/params/capital/financing_offer_create_params.rb +5 -5
  9. data/lib/stripe/params/capital/financing_offer_refill_params.rb +5 -5
  10. data/lib/stripe/params/delegated_checkout/requested_session_create_params.rb +1 -1
  11. data/lib/stripe/params/delegated_checkout/requested_session_update_params.rb +1 -1
  12. data/lib/stripe/params/invoice_create_preview_params.rb +57 -1
  13. data/lib/stripe/params/issuing/program_create_params.rb +21 -0
  14. data/lib/stripe/params/issuing/program_list_params.rb +24 -0
  15. data/lib/stripe/params/issuing/program_retrieve_params.rb +15 -0
  16. data/lib/stripe/params/issuing/program_update_params.rb +21 -0
  17. data/lib/stripe/params/quote_create_params.rb +210 -2
  18. data/lib/stripe/params/quote_update_params.rb +210 -2
  19. data/lib/stripe/params/subscription_schedule_create_params.rb +62 -2
  20. data/lib/stripe/params/subscription_schedule_update_params.rb +62 -2
  21. data/lib/stripe/params/test_helpers/capital/financing_offer_create_params.rb +5 -5
  22. data/lib/stripe/params/test_helpers/capital/financing_offer_refill_params.rb +5 -5
  23. data/lib/stripe/params/token_create_params.rb +66 -2
  24. data/lib/stripe/params.rb +4 -5
  25. data/lib/stripe/resources/delegated_checkout/requested_session.rb +19 -1
  26. data/lib/stripe/resources/discount.rb +2 -0
  27. data/lib/stripe/resources/invoice.rb +16 -0
  28. data/lib/stripe/resources/invoice_item.rb +16 -0
  29. data/lib/stripe/resources/invoice_line_item.rb +16 -0
  30. data/lib/stripe/resources/issuing/program.rb +69 -0
  31. data/lib/stripe/resources/person.rb +36 -0
  32. data/lib/stripe/resources/quote.rb +348 -1
  33. data/lib/stripe/resources/quote_preview_invoice.rb +16 -0
  34. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +174 -0
  35. data/lib/stripe/resources/subscription.rb +105 -2
  36. data/lib/stripe/resources/subscription_schedule.rb +174 -0
  37. data/lib/stripe/resources.rb +1 -1
  38. data/lib/stripe/services/issuing/program_service.rb +52 -0
  39. data/lib/stripe/services/issuing_service.rb +2 -1
  40. data/lib/stripe/services/v2_services.rb +1 -2
  41. data/lib/stripe/services.rb +1 -2
  42. data/lib/stripe/version.rb +1 -1
  43. data/rbi/stripe.rbi +2356 -203
  44. metadata +8 -10
  45. data/lib/stripe/params/v2/tax/automatic_rule_create_params.rb +0 -20
  46. data/lib/stripe/params/v2/tax/automatic_rule_deactivate_params.rb +0 -10
  47. data/lib/stripe/params/v2/tax/automatic_rule_find_params.rb +0 -17
  48. data/lib/stripe/params/v2/tax/automatic_rule_retrieve_params.rb +0 -10
  49. data/lib/stripe/params/v2/tax/automatic_rule_update_params.rb +0 -17
  50. data/lib/stripe/resources/v2/tax/automatic_rule.rb +0 -39
  51. data/lib/stripe/services/v2/tax/automatic_rule_service.rb +0 -65
  52. data/lib/stripe/services/v2/tax_service.rb +0 -15
data/rbi/stripe.rbi CHANGED
@@ -692,6 +692,9 @@ module Stripe
692
692
  # The subscription item that this coupon is applied to, if it is applied to a particular subscription item.
693
693
  sig { returns(T.nilable(String)) }
694
694
  def subscription_item; end
695
+ # The subscription schedule that this coupon is applied to, if it is applied to a particular subscription schedule.
696
+ sig { returns(T.nilable(String)) }
697
+ def schedule; end
695
698
  # Always true for a deleted object
696
699
  sig { returns(T.nilable(T::Boolean)) }
697
700
  def deleted; end
@@ -5619,6 +5622,34 @@ module Stripe
5619
5622
  @field_remappings = {}
5620
5623
  end
5621
5624
  end
5625
+ class SelfReportedIncome < ::Stripe::StripeObject
5626
+ # Amount in the minor currency unit (e.g., cents for USD)
5627
+ sig { returns(Integer) }
5628
+ def amount; end
5629
+ # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
5630
+ sig { returns(String) }
5631
+ def currency; end
5632
+ def self.inner_class_types
5633
+ @inner_class_types = {}
5634
+ end
5635
+ def self.field_remappings
5636
+ @field_remappings = {}
5637
+ end
5638
+ end
5639
+ class SelfReportedMonthlyHousingPayment < ::Stripe::StripeObject
5640
+ # Amount in the minor currency unit (e.g., cents for USD)
5641
+ sig { returns(Integer) }
5642
+ def amount; end
5643
+ # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
5644
+ sig { returns(String) }
5645
+ def currency; end
5646
+ def self.inner_class_types
5647
+ @inner_class_types = {}
5648
+ end
5649
+ def self.field_remappings
5650
+ @field_remappings = {}
5651
+ end
5652
+ end
5622
5653
  # The account the person is associated with.
5623
5654
  sig { returns(T.nilable(String)) }
5624
5655
  def account; end
@@ -5715,6 +5746,12 @@ module Stripe
5715
5746
  # Attribute for field verification
5716
5747
  sig { returns(T.nilable(Verification)) }
5717
5748
  def verification; end
5749
+ # Attribute for field self_reported_income
5750
+ sig { returns(T.nilable(SelfReportedIncome)) }
5751
+ def self_reported_income; end
5752
+ # Attribute for field self_reported_monthly_housing_payment
5753
+ sig { returns(T.nilable(SelfReportedMonthlyHousingPayment)) }
5754
+ def self_reported_monthly_housing_payment; end
5718
5755
  # Always true for a deleted object
5719
5756
  sig { returns(T.nilable(T::Boolean)) }
5720
5757
  def deleted; end
@@ -17914,6 +17951,23 @@ module Stripe
17914
17951
  end
17915
17952
  end
17916
17953
  class TotalDetails < ::Stripe::StripeObject
17954
+ class ApplicableFee < ::Stripe::StripeObject
17955
+ # The amount of the applicable fee.
17956
+ sig { returns(Integer) }
17957
+ def amount; end
17958
+ # The description of the applicable fee.
17959
+ sig { returns(T.nilable(String)) }
17960
+ def description; end
17961
+ # The display name of the applicable fee.
17962
+ sig { returns(String) }
17963
+ def display_name; end
17964
+ def self.inner_class_types
17965
+ @inner_class_types = {}
17966
+ end
17967
+ def self.field_remappings
17968
+ @field_remappings = {}
17969
+ end
17970
+ end
17917
17971
  # The amount discount of the total details.
17918
17972
  sig { returns(T.nilable(Integer)) }
17919
17973
  def amount_discount; end
@@ -17923,8 +17977,11 @@ module Stripe
17923
17977
  # The amount tax of the total details.
17924
17978
  sig { returns(T.nilable(Integer)) }
17925
17979
  def amount_tax; end
17980
+ # The applicable fees of the total details.
17981
+ sig { returns(T.nilable(T::Array[ApplicableFee])) }
17982
+ def applicable_fees; end
17926
17983
  def self.inner_class_types
17927
- @inner_class_types = {}
17984
+ @inner_class_types = {applicable_fees: ApplicableFee}
17928
17985
  end
17929
17986
  def self.field_remappings
17930
17987
  @field_remappings = {}
@@ -21064,6 +21121,17 @@ module Stripe
21064
21121
  @field_remappings = {}
21065
21122
  end
21066
21123
  end
21124
+ class ScheduleDetails < ::Stripe::StripeObject
21125
+ # The subscription schedule that generated this invoice item
21126
+ sig { returns(String) }
21127
+ def schedule; end
21128
+ def self.inner_class_types
21129
+ @inner_class_types = {}
21130
+ end
21131
+ def self.field_remappings
21132
+ @field_remappings = {}
21133
+ end
21134
+ end
21067
21135
  class SubscriptionDetails < ::Stripe::StripeObject
21068
21136
  # The subscription that generated this invoice item
21069
21137
  sig { returns(String) }
@@ -21090,11 +21158,15 @@ module Stripe
21090
21158
  # The type of parent that generated this invoice item
21091
21159
  sig { returns(String) }
21092
21160
  def type; end
21161
+ # Details about the subscription schedule that generated this invoice item
21162
+ sig { returns(T.nilable(ScheduleDetails)) }
21163
+ def schedule_details; end
21093
21164
  def self.inner_class_types
21094
21165
  @inner_class_types = {
21095
21166
  license_fee_subscription_details: LicenseFeeSubscriptionDetails,
21096
21167
  rate_card_subscription_details: RateCardSubscriptionDetails,
21097
21168
  subscription_details: SubscriptionDetails,
21169
+ schedule_details: ScheduleDetails,
21098
21170
  }
21099
21171
  end
21100
21172
  def self.field_remappings
@@ -21682,6 +21754,17 @@ module Stripe
21682
21754
  @field_remappings = {}
21683
21755
  end
21684
21756
  end
21757
+ class ScheduleDetails < ::Stripe::StripeObject
21758
+ # The schedule that generated this invoice
21759
+ sig { returns(String) }
21760
+ def schedule; end
21761
+ def self.inner_class_types
21762
+ @inner_class_types = {}
21763
+ end
21764
+ def self.field_remappings
21765
+ @field_remappings = {}
21766
+ end
21767
+ end
21685
21768
  class SubscriptionDetails < ::Stripe::StripeObject
21686
21769
  class PauseCollection < ::Stripe::StripeObject
21687
21770
  # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
@@ -21729,11 +21812,15 @@ module Stripe
21729
21812
  # The type of parent that generated this invoice
21730
21813
  sig { returns(String) }
21731
21814
  def type; end
21815
+ # Details about the schedule that generated this invoice
21816
+ sig { returns(T.nilable(ScheduleDetails)) }
21817
+ def schedule_details; end
21732
21818
  def self.inner_class_types
21733
21819
  @inner_class_types = {
21734
21820
  billing_cadence_details: BillingCadenceDetails,
21735
21821
  quote_details: QuoteDetails,
21736
21822
  subscription_details: SubscriptionDetails,
21823
+ schedule_details: ScheduleDetails,
21737
21824
  }
21738
21825
  end
21739
21826
  def self.field_remappings
@@ -22851,6 +22938,17 @@ module Stripe
22851
22938
  @field_remappings = {}
22852
22939
  end
22853
22940
  end
22941
+ class ScheduleDetails < ::Stripe::StripeObject
22942
+ # The subscription schedule that generated this line item
22943
+ sig { returns(String) }
22944
+ def schedule; end
22945
+ def self.inner_class_types
22946
+ @inner_class_types = {}
22947
+ end
22948
+ def self.field_remappings
22949
+ @field_remappings = {}
22950
+ end
22951
+ end
22854
22952
  class SubscriptionItemDetails < ::Stripe::StripeObject
22855
22953
  class ProrationDetails < ::Stripe::StripeObject
22856
22954
  class CreditedItems < ::Stripe::StripeObject
@@ -22914,12 +23012,16 @@ module Stripe
22914
23012
  # The type of parent that generated this line item
22915
23013
  sig { returns(String) }
22916
23014
  def type; end
23015
+ # Details about the subscription schedule that generated this line item
23016
+ sig { returns(T.nilable(ScheduleDetails)) }
23017
+ def schedule_details; end
22917
23018
  def self.inner_class_types
22918
23019
  @inner_class_types = {
22919
23020
  invoice_item_details: InvoiceItemDetails,
22920
23021
  license_fee_subscription_details: LicenseFeeSubscriptionDetails,
22921
23022
  rate_card_subscription_details: RateCardSubscriptionDetails,
22922
23023
  subscription_item_details: SubscriptionItemDetails,
23024
+ schedule_details: ScheduleDetails,
22923
23025
  }
22924
23026
  end
22925
23027
  def self.field_remappings
@@ -25090,6 +25192,49 @@ module Stripe
25090
25192
  end
25091
25193
  end
25092
25194
  # typed: true
25195
+ module Stripe
25196
+ module Issuing
25197
+ # An Issuing `Program` represents a card program that the user has access to.
25198
+ class Program < APIResource
25199
+ # Time at which the object was created. Measured in seconds since the Unix epoch.
25200
+ sig { returns(Integer) }
25201
+ def created; end
25202
+ # Unique identifier for the object.
25203
+ sig { returns(String) }
25204
+ def id; end
25205
+ # Whether or not this is the "default" issuing program new cards are created on. Only one active `is_default` program at the same time.
25206
+ sig { returns(T::Boolean) }
25207
+ def is_default; end
25208
+ # 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.
25209
+ sig { returns(T::Hash[String, String]) }
25210
+ def metadata; end
25211
+ # String representing the object's type. Objects of the same type share the same value.
25212
+ sig { returns(String) }
25213
+ def object; end
25214
+ # The platform's Issuing Program for which this program is associated.
25215
+ sig { returns(T.nilable(String)) }
25216
+ def platform_program; end
25217
+ # Create a Program object.
25218
+ sig {
25219
+ params(params: T.any(::Stripe::Issuing::ProgramCreateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::Issuing::Program)
25220
+ }
25221
+ def self.create(params = {}, opts = {}); end
25222
+
25223
+ # List all of the programs the given Issuing user has access to.
25224
+ sig {
25225
+ params(params: T.any(::Stripe::Issuing::ProgramListParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::ListObject)
25226
+ }
25227
+ def self.list(params = {}, opts = {}); end
25228
+
25229
+ # Updates a Program object.
25230
+ sig {
25231
+ params(program: String, params: T.any(::Stripe::Issuing::ProgramUpdateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::Issuing::Program)
25232
+ }
25233
+ def self.update(program, params = {}, opts = {}); end
25234
+ end
25235
+ end
25236
+ end
25237
+ # typed: true
25093
25238
  module Stripe
25094
25239
  module Issuing
25095
25240
  # An issuing token object is created when an issued card is added to a digital wallet. As a [card issuer](https://stripe.com/docs/issuing), you can [view and manage these tokens](https://stripe.com/docs/issuing/controls/token-management) through Stripe.
@@ -42350,6 +42495,172 @@ module Stripe
42350
42495
  @field_remappings = {}
42351
42496
  end
42352
42497
  end
42498
+ class BillingSchedule < ::Stripe::StripeObject
42499
+ class AppliesTo < ::Stripe::StripeObject
42500
+ # The billing schedule will apply to the subscription item with the given price ID.
42501
+ sig { returns(T.nilable(T.any(String, ::Stripe::Price))) }
42502
+ def price; end
42503
+ # Controls which subscription items the billing schedule applies to.
42504
+ sig { returns(String) }
42505
+ def type; end
42506
+ def self.inner_class_types
42507
+ @inner_class_types = {}
42508
+ end
42509
+ def self.field_remappings
42510
+ @field_remappings = {}
42511
+ end
42512
+ end
42513
+ class BillFrom < ::Stripe::StripeObject
42514
+ class AmendmentStart < ::Stripe::StripeObject
42515
+ # Use an index to specify the position of an amendment to start prebilling with.
42516
+ sig { returns(Integer) }
42517
+ def index; end
42518
+ def self.inner_class_types
42519
+ @inner_class_types = {}
42520
+ end
42521
+ def self.field_remappings
42522
+ @field_remappings = {}
42523
+ end
42524
+ end
42525
+ class LineStartsAt < ::Stripe::StripeObject
42526
+ # Unique identifier for the object.
42527
+ sig { returns(String) }
42528
+ def id; end
42529
+ def self.inner_class_types
42530
+ @inner_class_types = {}
42531
+ end
42532
+ def self.field_remappings
42533
+ @field_remappings = {}
42534
+ end
42535
+ end
42536
+ class Relative < ::Stripe::StripeObject
42537
+ # Specifies billing duration. Possible values are `day`, `week`, `month`, or `year`.
42538
+ sig { returns(String) }
42539
+ def interval; end
42540
+ # The multiplier applied to the interval.
42541
+ sig { returns(T.nilable(Integer)) }
42542
+ def interval_count; end
42543
+ def self.inner_class_types
42544
+ @inner_class_types = {}
42545
+ end
42546
+ def self.field_remappings
42547
+ @field_remappings = {}
42548
+ end
42549
+ end
42550
+ # Use an index to specify the position of an amendment to start prebilling with.
42551
+ sig { returns(T.nilable(AmendmentStart)) }
42552
+ def amendment_start; end
42553
+ # The time the billing schedule applies from.
42554
+ sig { returns(T.nilable(Integer)) }
42555
+ def computed_timestamp; end
42556
+ # Lets you bill the period starting from a particular Quote line.
42557
+ sig { returns(T.nilable(LineStartsAt)) }
42558
+ def line_starts_at; end
42559
+ # Timestamp is calculated from the request time.
42560
+ sig { returns(T.nilable(Relative)) }
42561
+ def relative; end
42562
+ # Use a precise Unix timestamp for prebilling to start. Must be earlier than `bill_until`.
42563
+ sig { returns(T.nilable(Integer)) }
42564
+ def timestamp; end
42565
+ # Describes how the billing schedule determines the start date. Possible values are `timestamp`, `relative`, `amendment_start`, `now`, `quote_acceptance_date`, `line_starts_at`, or `pause_collection_start`.
42566
+ sig { returns(String) }
42567
+ def type; end
42568
+ def self.inner_class_types
42569
+ @inner_class_types = {
42570
+ amendment_start: AmendmentStart,
42571
+ line_starts_at: LineStartsAt,
42572
+ relative: Relative,
42573
+ }
42574
+ end
42575
+ def self.field_remappings
42576
+ @field_remappings = {}
42577
+ end
42578
+ end
42579
+ class BillUntil < ::Stripe::StripeObject
42580
+ class AmendmentEnd < ::Stripe::StripeObject
42581
+ # Use an index to specify the position of an amendment to end prebilling with.
42582
+ sig { returns(Integer) }
42583
+ def index; end
42584
+ def self.inner_class_types
42585
+ @inner_class_types = {}
42586
+ end
42587
+ def self.field_remappings
42588
+ @field_remappings = {}
42589
+ end
42590
+ end
42591
+ class Duration < ::Stripe::StripeObject
42592
+ # Specifies billing duration. Either `day`, `week`, `month` or `year`.
42593
+ sig { returns(String) }
42594
+ def interval; end
42595
+ # The multiplier applied to the interval.
42596
+ sig { returns(T.nilable(Integer)) }
42597
+ def interval_count; end
42598
+ def self.inner_class_types
42599
+ @inner_class_types = {}
42600
+ end
42601
+ def self.field_remappings
42602
+ @field_remappings = {}
42603
+ end
42604
+ end
42605
+ class LineEndsAt < ::Stripe::StripeObject
42606
+ # Unique identifier for the object.
42607
+ sig { returns(String) }
42608
+ def id; end
42609
+ def self.inner_class_types
42610
+ @inner_class_types = {}
42611
+ end
42612
+ def self.field_remappings
42613
+ @field_remappings = {}
42614
+ end
42615
+ end
42616
+ # The timestamp the billing schedule will apply until.
42617
+ sig { returns(Integer) }
42618
+ def computed_timestamp; end
42619
+ # Specifies the billing period.
42620
+ sig { returns(T.nilable(Duration)) }
42621
+ def duration; end
42622
+ # If specified, the billing schedule will apply until the specified timestamp.
42623
+ sig { returns(T.nilable(Integer)) }
42624
+ def timestamp; end
42625
+ # Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`.
42626
+ sig { returns(String) }
42627
+ def type; end
42628
+ # Use an index to specify the position of an amendment to end prebilling with.
42629
+ sig { returns(T.nilable(AmendmentEnd)) }
42630
+ def amendment_end; end
42631
+ # Lets you bill the period ending at a particular Quote line.
42632
+ sig { returns(T.nilable(LineEndsAt)) }
42633
+ def line_ends_at; end
42634
+ def self.inner_class_types
42635
+ @inner_class_types = {
42636
+ duration: Duration,
42637
+ amendment_end: AmendmentEnd,
42638
+ line_ends_at: LineEndsAt,
42639
+ }
42640
+ end
42641
+ def self.field_remappings
42642
+ @field_remappings = {}
42643
+ end
42644
+ end
42645
+ # Specifies which subscription items the billing schedule applies to.
42646
+ sig { returns(T.nilable(T::Array[AppliesTo])) }
42647
+ def applies_to; end
42648
+ # Specifies the billing period.
42649
+ sig { returns(BillUntil) }
42650
+ def bill_until; end
42651
+ # Unique identifier for the billing schedule.
42652
+ sig { returns(String) }
42653
+ def key; end
42654
+ # Specifies the start of the billing period.
42655
+ sig { returns(T.nilable(BillFrom)) }
42656
+ def bill_from; end
42657
+ def self.inner_class_types
42658
+ @inner_class_types = {applies_to: AppliesTo, bill_until: BillUntil, bill_from: BillFrom}
42659
+ end
42660
+ def self.field_remappings
42661
+ @field_remappings = {}
42662
+ end
42663
+ end
42353
42664
  class Prebilling < ::Stripe::StripeObject
42354
42665
  # Attribute for field iterations
42355
42666
  sig { returns(Integer) }
@@ -42397,11 +42708,18 @@ module Stripe
42397
42708
  # Integer representing the number of trial period days before the customer is charged for the first time.
42398
42709
  sig { returns(T.nilable(Integer)) }
42399
42710
  def trial_period_days; end
42711
+ # Billing schedules that will be applied to the subscription or subscription schedule created from this quote.
42712
+ sig { returns(T.nilable(T::Array[BillingSchedule])) }
42713
+ def billing_schedules; end
42714
+ # Configures how the subscription schedule handles billing for phase transitions. Possible values are `phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.
42715
+ sig { returns(T.nilable(String)) }
42716
+ def phase_effective_at; end
42400
42717
  def self.inner_class_types
42401
42718
  @inner_class_types = {
42402
42719
  bill_on_acceptance: BillOnAcceptance,
42403
42720
  billing_mode: BillingMode,
42404
42721
  prebilling: Prebilling,
42722
+ billing_schedules: BillingSchedule,
42405
42723
  }
42406
42724
  end
42407
42725
  def self.field_remappings
@@ -42519,6 +42837,172 @@ module Stripe
42519
42837
  @field_remappings = {}
42520
42838
  end
42521
42839
  end
42840
+ class BillingSchedule < ::Stripe::StripeObject
42841
+ class AppliesTo < ::Stripe::StripeObject
42842
+ # The billing schedule will apply to the subscription item with the given price ID.
42843
+ sig { returns(T.nilable(T.any(String, ::Stripe::Price))) }
42844
+ def price; end
42845
+ # Controls which subscription items the billing schedule applies to.
42846
+ sig { returns(String) }
42847
+ def type; end
42848
+ def self.inner_class_types
42849
+ @inner_class_types = {}
42850
+ end
42851
+ def self.field_remappings
42852
+ @field_remappings = {}
42853
+ end
42854
+ end
42855
+ class BillFrom < ::Stripe::StripeObject
42856
+ class AmendmentStart < ::Stripe::StripeObject
42857
+ # Use an index to specify the position of an amendment to start prebilling with.
42858
+ sig { returns(Integer) }
42859
+ def index; end
42860
+ def self.inner_class_types
42861
+ @inner_class_types = {}
42862
+ end
42863
+ def self.field_remappings
42864
+ @field_remappings = {}
42865
+ end
42866
+ end
42867
+ class LineStartsAt < ::Stripe::StripeObject
42868
+ # Unique identifier for the object.
42869
+ sig { returns(String) }
42870
+ def id; end
42871
+ def self.inner_class_types
42872
+ @inner_class_types = {}
42873
+ end
42874
+ def self.field_remappings
42875
+ @field_remappings = {}
42876
+ end
42877
+ end
42878
+ class Relative < ::Stripe::StripeObject
42879
+ # Specifies billing duration. Possible values are `day`, `week`, `month`, or `year`.
42880
+ sig { returns(String) }
42881
+ def interval; end
42882
+ # The multiplier applied to the interval.
42883
+ sig { returns(T.nilable(Integer)) }
42884
+ def interval_count; end
42885
+ def self.inner_class_types
42886
+ @inner_class_types = {}
42887
+ end
42888
+ def self.field_remappings
42889
+ @field_remappings = {}
42890
+ end
42891
+ end
42892
+ # Use an index to specify the position of an amendment to start prebilling with.
42893
+ sig { returns(T.nilable(AmendmentStart)) }
42894
+ def amendment_start; end
42895
+ # The time the billing schedule applies from.
42896
+ sig { returns(T.nilable(Integer)) }
42897
+ def computed_timestamp; end
42898
+ # Lets you bill the period starting from a particular Quote line.
42899
+ sig { returns(T.nilable(LineStartsAt)) }
42900
+ def line_starts_at; end
42901
+ # Timestamp is calculated from the request time.
42902
+ sig { returns(T.nilable(Relative)) }
42903
+ def relative; end
42904
+ # Use a precise Unix timestamp for prebilling to start. Must be earlier than `bill_until`.
42905
+ sig { returns(T.nilable(Integer)) }
42906
+ def timestamp; end
42907
+ # Describes how the billing schedule determines the start date. Possible values are `timestamp`, `relative`, `amendment_start`, `now`, `quote_acceptance_date`, `line_starts_at`, or `pause_collection_start`.
42908
+ sig { returns(String) }
42909
+ def type; end
42910
+ def self.inner_class_types
42911
+ @inner_class_types = {
42912
+ amendment_start: AmendmentStart,
42913
+ line_starts_at: LineStartsAt,
42914
+ relative: Relative,
42915
+ }
42916
+ end
42917
+ def self.field_remappings
42918
+ @field_remappings = {}
42919
+ end
42920
+ end
42921
+ class BillUntil < ::Stripe::StripeObject
42922
+ class AmendmentEnd < ::Stripe::StripeObject
42923
+ # Use an index to specify the position of an amendment to end prebilling with.
42924
+ sig { returns(Integer) }
42925
+ def index; end
42926
+ def self.inner_class_types
42927
+ @inner_class_types = {}
42928
+ end
42929
+ def self.field_remappings
42930
+ @field_remappings = {}
42931
+ end
42932
+ end
42933
+ class Duration < ::Stripe::StripeObject
42934
+ # Specifies billing duration. Either `day`, `week`, `month` or `year`.
42935
+ sig { returns(String) }
42936
+ def interval; end
42937
+ # The multiplier applied to the interval.
42938
+ sig { returns(T.nilable(Integer)) }
42939
+ def interval_count; end
42940
+ def self.inner_class_types
42941
+ @inner_class_types = {}
42942
+ end
42943
+ def self.field_remappings
42944
+ @field_remappings = {}
42945
+ end
42946
+ end
42947
+ class LineEndsAt < ::Stripe::StripeObject
42948
+ # Unique identifier for the object.
42949
+ sig { returns(String) }
42950
+ def id; end
42951
+ def self.inner_class_types
42952
+ @inner_class_types = {}
42953
+ end
42954
+ def self.field_remappings
42955
+ @field_remappings = {}
42956
+ end
42957
+ end
42958
+ # The timestamp the billing schedule will apply until.
42959
+ sig { returns(Integer) }
42960
+ def computed_timestamp; end
42961
+ # Specifies the billing period.
42962
+ sig { returns(T.nilable(Duration)) }
42963
+ def duration; end
42964
+ # If specified, the billing schedule will apply until the specified timestamp.
42965
+ sig { returns(T.nilable(Integer)) }
42966
+ def timestamp; end
42967
+ # Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`.
42968
+ sig { returns(String) }
42969
+ def type; end
42970
+ # Use an index to specify the position of an amendment to end prebilling with.
42971
+ sig { returns(T.nilable(AmendmentEnd)) }
42972
+ def amendment_end; end
42973
+ # Lets you bill the period ending at a particular Quote line.
42974
+ sig { returns(T.nilable(LineEndsAt)) }
42975
+ def line_ends_at; end
42976
+ def self.inner_class_types
42977
+ @inner_class_types = {
42978
+ duration: Duration,
42979
+ amendment_end: AmendmentEnd,
42980
+ line_ends_at: LineEndsAt,
42981
+ }
42982
+ end
42983
+ def self.field_remappings
42984
+ @field_remappings = {}
42985
+ end
42986
+ end
42987
+ # Specifies which subscription items the billing schedule applies to.
42988
+ sig { returns(T.nilable(T::Array[AppliesTo])) }
42989
+ def applies_to; end
42990
+ # Specifies the billing period.
42991
+ sig { returns(BillUntil) }
42992
+ def bill_until; end
42993
+ # Unique identifier for the billing schedule.
42994
+ sig { returns(String) }
42995
+ def key; end
42996
+ # Specifies the start of the billing period.
42997
+ sig { returns(T.nilable(BillFrom)) }
42998
+ def bill_from; end
42999
+ def self.inner_class_types
43000
+ @inner_class_types = {applies_to: AppliesTo, bill_until: BillUntil, bill_from: BillFrom}
43001
+ end
43002
+ def self.field_remappings
43003
+ @field_remappings = {}
43004
+ end
43005
+ end
42522
43006
  # Attribute for field applies_to
42523
43007
  sig { returns(AppliesTo) }
42524
43008
  def applies_to; end
@@ -42540,8 +43024,18 @@ module Stripe
42540
43024
  # Determines how to handle [prorations](https://stripe.com/docs/subscriptions/billing-cycle#prorations) when the quote is accepted.
42541
43025
  sig { returns(T.nilable(String)) }
42542
43026
  def proration_behavior; end
43027
+ # Billing schedules that will be applied to the subscription or subscription schedule created from this quote.
43028
+ sig { returns(T.nilable(T::Array[BillingSchedule])) }
43029
+ def billing_schedules; end
43030
+ # Configures how the subscription schedule handles billing for phase transitions. Possible values are `phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.
43031
+ sig { returns(T.nilable(String)) }
43032
+ def phase_effective_at; end
42543
43033
  def self.inner_class_types
42544
- @inner_class_types = {applies_to: AppliesTo, bill_on_acceptance: BillOnAcceptance}
43034
+ @inner_class_types = {
43035
+ applies_to: AppliesTo,
43036
+ bill_on_acceptance: BillOnAcceptance,
43037
+ billing_schedules: BillingSchedule,
43038
+ }
42545
43039
  end
42546
43040
  def self.field_remappings
42547
43041
  @field_remappings = {}
@@ -43323,6 +43817,17 @@ module Stripe
43323
43817
  @field_remappings = {}
43324
43818
  end
43325
43819
  end
43820
+ class ScheduleDetails < ::Stripe::StripeObject
43821
+ # The schedule that generated this invoice
43822
+ sig { returns(String) }
43823
+ def schedule; end
43824
+ def self.inner_class_types
43825
+ @inner_class_types = {}
43826
+ end
43827
+ def self.field_remappings
43828
+ @field_remappings = {}
43829
+ end
43830
+ end
43326
43831
  class SubscriptionDetails < ::Stripe::StripeObject
43327
43832
  class PauseCollection < ::Stripe::StripeObject
43328
43833
  # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
@@ -43370,11 +43875,15 @@ module Stripe
43370
43875
  # The type of parent that generated this invoice
43371
43876
  sig { returns(String) }
43372
43877
  def type; end
43878
+ # Details about the schedule that generated this invoice
43879
+ sig { returns(T.nilable(ScheduleDetails)) }
43880
+ def schedule_details; end
43373
43881
  def self.inner_class_types
43374
43882
  @inner_class_types = {
43375
43883
  billing_cadence_details: BillingCadenceDetails,
43376
43884
  quote_details: QuoteDetails,
43377
43885
  subscription_details: SubscriptionDetails,
43886
+ schedule_details: ScheduleDetails,
43378
43887
  }
43379
43888
  end
43380
43889
  def self.field_remappings
@@ -44348,6 +44857,9 @@ module Stripe
44348
44857
  # The account (if any) the associated subscription's payments will be attributed to for tax reporting, and where funds from each payment will be transferred to for each of the subscription's invoices.
44349
44858
  sig { returns(T.nilable(TransferData)) }
44350
44859
  def transfer_data; end
44860
+ # Configures how the subscription schedule handles billing for phase transitions. Possible values are `phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.
44861
+ sig { returns(T.nilable(String)) }
44862
+ def phase_effective_at; end
44351
44863
  def self.inner_class_types
44352
44864
  @inner_class_types = {
44353
44865
  automatic_tax: AutomaticTax,
@@ -44852,6 +45364,172 @@ module Stripe
44852
45364
  @field_remappings = {}
44853
45365
  end
44854
45366
  end
45367
+ class BillingSchedule < ::Stripe::StripeObject
45368
+ class AppliesTo < ::Stripe::StripeObject
45369
+ # The billing schedule will apply to the subscription item with the given price ID.
45370
+ sig { returns(T.nilable(T.any(String, ::Stripe::Price))) }
45371
+ def price; end
45372
+ # Controls which subscription items the billing schedule applies to.
45373
+ sig { returns(String) }
45374
+ def type; end
45375
+ def self.inner_class_types
45376
+ @inner_class_types = {}
45377
+ end
45378
+ def self.field_remappings
45379
+ @field_remappings = {}
45380
+ end
45381
+ end
45382
+ class BillFrom < ::Stripe::StripeObject
45383
+ class AmendmentStart < ::Stripe::StripeObject
45384
+ # Use an index to specify the position of an amendment to start prebilling with.
45385
+ sig { returns(Integer) }
45386
+ def index; end
45387
+ def self.inner_class_types
45388
+ @inner_class_types = {}
45389
+ end
45390
+ def self.field_remappings
45391
+ @field_remappings = {}
45392
+ end
45393
+ end
45394
+ class LineStartsAt < ::Stripe::StripeObject
45395
+ # Unique identifier for the object.
45396
+ sig { returns(String) }
45397
+ def id; end
45398
+ def self.inner_class_types
45399
+ @inner_class_types = {}
45400
+ end
45401
+ def self.field_remappings
45402
+ @field_remappings = {}
45403
+ end
45404
+ end
45405
+ class Relative < ::Stripe::StripeObject
45406
+ # Specifies billing duration. Possible values are `day`, `week`, `month`, or `year`.
45407
+ sig { returns(String) }
45408
+ def interval; end
45409
+ # The multiplier applied to the interval.
45410
+ sig { returns(T.nilable(Integer)) }
45411
+ def interval_count; end
45412
+ def self.inner_class_types
45413
+ @inner_class_types = {}
45414
+ end
45415
+ def self.field_remappings
45416
+ @field_remappings = {}
45417
+ end
45418
+ end
45419
+ # Use an index to specify the position of an amendment to start prebilling with.
45420
+ sig { returns(T.nilable(AmendmentStart)) }
45421
+ def amendment_start; end
45422
+ # The time the billing schedule applies from.
45423
+ sig { returns(T.nilable(Integer)) }
45424
+ def computed_timestamp; end
45425
+ # Lets you bill the period starting from a particular Quote line.
45426
+ sig { returns(T.nilable(LineStartsAt)) }
45427
+ def line_starts_at; end
45428
+ # Timestamp is calculated from the request time.
45429
+ sig { returns(T.nilable(Relative)) }
45430
+ def relative; end
45431
+ # Use a precise Unix timestamp for prebilling to start. Must be earlier than `bill_until`.
45432
+ sig { returns(T.nilable(Integer)) }
45433
+ def timestamp; end
45434
+ # Describes how the billing schedule determines the start date. Possible values are `timestamp`, `relative`, `amendment_start`, `now`, `quote_acceptance_date`, `line_starts_at`, or `pause_collection_start`.
45435
+ sig { returns(String) }
45436
+ def type; end
45437
+ def self.inner_class_types
45438
+ @inner_class_types = {
45439
+ amendment_start: AmendmentStart,
45440
+ line_starts_at: LineStartsAt,
45441
+ relative: Relative,
45442
+ }
45443
+ end
45444
+ def self.field_remappings
45445
+ @field_remappings = {}
45446
+ end
45447
+ end
45448
+ class BillUntil < ::Stripe::StripeObject
45449
+ class AmendmentEnd < ::Stripe::StripeObject
45450
+ # Use an index to specify the position of an amendment to end prebilling with.
45451
+ sig { returns(Integer) }
45452
+ def index; end
45453
+ def self.inner_class_types
45454
+ @inner_class_types = {}
45455
+ end
45456
+ def self.field_remappings
45457
+ @field_remappings = {}
45458
+ end
45459
+ end
45460
+ class Duration < ::Stripe::StripeObject
45461
+ # Specifies billing duration. Either `day`, `week`, `month` or `year`.
45462
+ sig { returns(String) }
45463
+ def interval; end
45464
+ # The multiplier applied to the interval.
45465
+ sig { returns(T.nilable(Integer)) }
45466
+ def interval_count; end
45467
+ def self.inner_class_types
45468
+ @inner_class_types = {}
45469
+ end
45470
+ def self.field_remappings
45471
+ @field_remappings = {}
45472
+ end
45473
+ end
45474
+ class LineEndsAt < ::Stripe::StripeObject
45475
+ # Unique identifier for the object.
45476
+ sig { returns(String) }
45477
+ def id; end
45478
+ def self.inner_class_types
45479
+ @inner_class_types = {}
45480
+ end
45481
+ def self.field_remappings
45482
+ @field_remappings = {}
45483
+ end
45484
+ end
45485
+ # The timestamp the billing schedule will apply until.
45486
+ sig { returns(Integer) }
45487
+ def computed_timestamp; end
45488
+ # Specifies the billing period.
45489
+ sig { returns(T.nilable(Duration)) }
45490
+ def duration; end
45491
+ # If specified, the billing schedule will apply until the specified timestamp.
45492
+ sig { returns(T.nilable(Integer)) }
45493
+ def timestamp; end
45494
+ # Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`.
45495
+ sig { returns(String) }
45496
+ def type; end
45497
+ # Use an index to specify the position of an amendment to end prebilling with.
45498
+ sig { returns(T.nilable(AmendmentEnd)) }
45499
+ def amendment_end; end
45500
+ # Lets you bill the period ending at a particular Quote line.
45501
+ sig { returns(T.nilable(LineEndsAt)) }
45502
+ def line_ends_at; end
45503
+ def self.inner_class_types
45504
+ @inner_class_types = {
45505
+ duration: Duration,
45506
+ amendment_end: AmendmentEnd,
45507
+ line_ends_at: LineEndsAt,
45508
+ }
45509
+ end
45510
+ def self.field_remappings
45511
+ @field_remappings = {}
45512
+ end
45513
+ end
45514
+ # Specifies which subscription items the billing schedule applies to.
45515
+ sig { returns(T.nilable(T::Array[AppliesTo])) }
45516
+ def applies_to; end
45517
+ # Specifies the billing period.
45518
+ sig { returns(BillUntil) }
45519
+ def bill_until; end
45520
+ # Unique identifier for the billing schedule.
45521
+ sig { returns(String) }
45522
+ def key; end
45523
+ # Specifies the start of the billing period.
45524
+ sig { returns(T.nilable(BillFrom)) }
45525
+ def bill_from; end
45526
+ def self.inner_class_types
45527
+ @inner_class_types = {applies_to: AppliesTo, bill_until: BillUntil, bill_from: BillFrom}
45528
+ end
45529
+ def self.field_remappings
45530
+ @field_remappings = {}
45531
+ end
45532
+ end
44855
45533
  # ID of the Connect Application that created the schedule.
44856
45534
  sig { returns(T.nilable(T.any(String, ::Stripe::Application))) }
44857
45535
  def application; end
@@ -44924,6 +45602,12 @@ module Stripe
44924
45602
  # ID of the test clock this subscription schedule belongs to.
44925
45603
  sig { returns(T.nilable(T.any(String, ::Stripe::TestHelpers::TestClock))) }
44926
45604
  def test_clock; end
45605
+ # Billing schedules for this subscription schedule.
45606
+ sig { returns(T.nilable(T::Array[BillingSchedule])) }
45607
+ def billing_schedules; end
45608
+ # The most recent invoice this subscription schedule has generated.
45609
+ sig { returns(T.nilable(T.any(String, ::Stripe::Invoice))) }
45610
+ def latest_invoice; end
44927
45611
  end
44928
45612
  end
44929
45613
  # typed: true
@@ -49394,6 +50078,9 @@ module Stripe
49394
50078
  # The account (if any) the associated subscription's payments will be attributed to for tax reporting, and where funds from each payment will be transferred to for each of the subscription's invoices.
49395
50079
  sig { returns(T.nilable(TransferData)) }
49396
50080
  def transfer_data; end
50081
+ # Configures how the subscription schedule handles billing for phase transitions. Possible values are `phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.
50082
+ sig { returns(T.nilable(String)) }
50083
+ def phase_effective_at; end
49397
50084
  def self.inner_class_types
49398
50085
  @inner_class_types = {
49399
50086
  automatic_tax: AutomaticTax,
@@ -49898,6 +50585,172 @@ module Stripe
49898
50585
  @field_remappings = {}
49899
50586
  end
49900
50587
  end
50588
+ class BillingSchedule < ::Stripe::StripeObject
50589
+ class AppliesTo < ::Stripe::StripeObject
50590
+ # The billing schedule will apply to the subscription item with the given price ID.
50591
+ sig { returns(T.nilable(T.any(String, ::Stripe::Price))) }
50592
+ def price; end
50593
+ # Controls which subscription items the billing schedule applies to.
50594
+ sig { returns(String) }
50595
+ def type; end
50596
+ def self.inner_class_types
50597
+ @inner_class_types = {}
50598
+ end
50599
+ def self.field_remappings
50600
+ @field_remappings = {}
50601
+ end
50602
+ end
50603
+ class BillFrom < ::Stripe::StripeObject
50604
+ class AmendmentStart < ::Stripe::StripeObject
50605
+ # Use an index to specify the position of an amendment to start prebilling with.
50606
+ sig { returns(Integer) }
50607
+ def index; end
50608
+ def self.inner_class_types
50609
+ @inner_class_types = {}
50610
+ end
50611
+ def self.field_remappings
50612
+ @field_remappings = {}
50613
+ end
50614
+ end
50615
+ class LineStartsAt < ::Stripe::StripeObject
50616
+ # Unique identifier for the object.
50617
+ sig { returns(String) }
50618
+ def id; end
50619
+ def self.inner_class_types
50620
+ @inner_class_types = {}
50621
+ end
50622
+ def self.field_remappings
50623
+ @field_remappings = {}
50624
+ end
50625
+ end
50626
+ class Relative < ::Stripe::StripeObject
50627
+ # Specifies billing duration. Possible values are `day`, `week`, `month`, or `year`.
50628
+ sig { returns(String) }
50629
+ def interval; end
50630
+ # The multiplier applied to the interval.
50631
+ sig { returns(T.nilable(Integer)) }
50632
+ def interval_count; end
50633
+ def self.inner_class_types
50634
+ @inner_class_types = {}
50635
+ end
50636
+ def self.field_remappings
50637
+ @field_remappings = {}
50638
+ end
50639
+ end
50640
+ # Use an index to specify the position of an amendment to start prebilling with.
50641
+ sig { returns(T.nilable(AmendmentStart)) }
50642
+ def amendment_start; end
50643
+ # The time the billing schedule applies from.
50644
+ sig { returns(T.nilable(Integer)) }
50645
+ def computed_timestamp; end
50646
+ # Lets you bill the period starting from a particular Quote line.
50647
+ sig { returns(T.nilable(LineStartsAt)) }
50648
+ def line_starts_at; end
50649
+ # Timestamp is calculated from the request time.
50650
+ sig { returns(T.nilable(Relative)) }
50651
+ def relative; end
50652
+ # Use a precise Unix timestamp for prebilling to start. Must be earlier than `bill_until`.
50653
+ sig { returns(T.nilable(Integer)) }
50654
+ def timestamp; end
50655
+ # Describes how the billing schedule determines the start date. Possible values are `timestamp`, `relative`, `amendment_start`, `now`, `quote_acceptance_date`, `line_starts_at`, or `pause_collection_start`.
50656
+ sig { returns(String) }
50657
+ def type; end
50658
+ def self.inner_class_types
50659
+ @inner_class_types = {
50660
+ amendment_start: AmendmentStart,
50661
+ line_starts_at: LineStartsAt,
50662
+ relative: Relative,
50663
+ }
50664
+ end
50665
+ def self.field_remappings
50666
+ @field_remappings = {}
50667
+ end
50668
+ end
50669
+ class BillUntil < ::Stripe::StripeObject
50670
+ class AmendmentEnd < ::Stripe::StripeObject
50671
+ # Use an index to specify the position of an amendment to end prebilling with.
50672
+ sig { returns(Integer) }
50673
+ def index; end
50674
+ def self.inner_class_types
50675
+ @inner_class_types = {}
50676
+ end
50677
+ def self.field_remappings
50678
+ @field_remappings = {}
50679
+ end
50680
+ end
50681
+ class Duration < ::Stripe::StripeObject
50682
+ # Specifies billing duration. Either `day`, `week`, `month` or `year`.
50683
+ sig { returns(String) }
50684
+ def interval; end
50685
+ # The multiplier applied to the interval.
50686
+ sig { returns(T.nilable(Integer)) }
50687
+ def interval_count; end
50688
+ def self.inner_class_types
50689
+ @inner_class_types = {}
50690
+ end
50691
+ def self.field_remappings
50692
+ @field_remappings = {}
50693
+ end
50694
+ end
50695
+ class LineEndsAt < ::Stripe::StripeObject
50696
+ # Unique identifier for the object.
50697
+ sig { returns(String) }
50698
+ def id; end
50699
+ def self.inner_class_types
50700
+ @inner_class_types = {}
50701
+ end
50702
+ def self.field_remappings
50703
+ @field_remappings = {}
50704
+ end
50705
+ end
50706
+ # The timestamp the billing schedule will apply until.
50707
+ sig { returns(Integer) }
50708
+ def computed_timestamp; end
50709
+ # Specifies the billing period.
50710
+ sig { returns(T.nilable(Duration)) }
50711
+ def duration; end
50712
+ # If specified, the billing schedule will apply until the specified timestamp.
50713
+ sig { returns(T.nilable(Integer)) }
50714
+ def timestamp; end
50715
+ # Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`.
50716
+ sig { returns(String) }
50717
+ def type; end
50718
+ # Use an index to specify the position of an amendment to end prebilling with.
50719
+ sig { returns(T.nilable(AmendmentEnd)) }
50720
+ def amendment_end; end
50721
+ # Lets you bill the period ending at a particular Quote line.
50722
+ sig { returns(T.nilable(LineEndsAt)) }
50723
+ def line_ends_at; end
50724
+ def self.inner_class_types
50725
+ @inner_class_types = {
50726
+ duration: Duration,
50727
+ amendment_end: AmendmentEnd,
50728
+ line_ends_at: LineEndsAt,
50729
+ }
50730
+ end
50731
+ def self.field_remappings
50732
+ @field_remappings = {}
50733
+ end
50734
+ end
50735
+ # Specifies which subscription items the billing schedule applies to.
50736
+ sig { returns(T.nilable(T::Array[AppliesTo])) }
50737
+ def applies_to; end
50738
+ # Specifies the billing period.
50739
+ sig { returns(BillUntil) }
50740
+ def bill_until; end
50741
+ # Unique identifier for the billing schedule.
50742
+ sig { returns(String) }
50743
+ def key; end
50744
+ # Specifies the start of the billing period.
50745
+ sig { returns(T.nilable(BillFrom)) }
50746
+ def bill_from; end
50747
+ def self.inner_class_types
50748
+ @inner_class_types = {applies_to: AppliesTo, bill_until: BillUntil, bill_from: BillFrom}
50749
+ end
50750
+ def self.field_remappings
50751
+ @field_remappings = {}
50752
+ end
50753
+ end
49901
50754
  # ID of the Connect Application that created the schedule.
49902
50755
  sig { returns(T.nilable(T.any(String, ::Stripe::Application))) }
49903
50756
  def application; end
@@ -49967,6 +50820,12 @@ module Stripe
49967
50820
  # ID of the test clock this subscription schedule belongs to.
49968
50821
  sig { returns(T.nilable(T.any(String, ::Stripe::TestHelpers::TestClock))) }
49969
50822
  def test_clock; end
50823
+ # Billing schedules for this subscription schedule.
50824
+ sig { returns(T.nilable(T::Array[BillingSchedule])) }
50825
+ def billing_schedules; end
50826
+ # The most recent invoice this subscription schedule has generated.
50827
+ sig { returns(T.nilable(T.any(String, ::Stripe::Invoice))) }
50828
+ def latest_invoice; end
49970
50829
  # Amends an existing subscription schedule.
49971
50830
  sig {
49972
50831
  params(params: T.any(::Stripe::SubscriptionScheduleAmendParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::SubscriptionSchedule)
@@ -50125,7 +50984,84 @@ module Stripe
50125
50984
  @field_remappings = {}
50126
50985
  end
50127
50986
  end
50987
+ class BillFrom < ::Stripe::StripeObject
50988
+ class AmendmentStart < ::Stripe::StripeObject
50989
+ # Use an index to specify the position of an amendment to start prebilling with.
50990
+ sig { returns(Integer) }
50991
+ def index; end
50992
+ def self.inner_class_types
50993
+ @inner_class_types = {}
50994
+ end
50995
+ def self.field_remappings
50996
+ @field_remappings = {}
50997
+ end
50998
+ end
50999
+ class LineStartsAt < ::Stripe::StripeObject
51000
+ # Unique identifier for the object.
51001
+ sig { returns(String) }
51002
+ def id; end
51003
+ def self.inner_class_types
51004
+ @inner_class_types = {}
51005
+ end
51006
+ def self.field_remappings
51007
+ @field_remappings = {}
51008
+ end
51009
+ end
51010
+ class Relative < ::Stripe::StripeObject
51011
+ # Specifies billing duration. Possible values are `day`, `week`, `month`, or `year`.
51012
+ sig { returns(String) }
51013
+ def interval; end
51014
+ # The multiplier applied to the interval.
51015
+ sig { returns(T.nilable(Integer)) }
51016
+ def interval_count; end
51017
+ def self.inner_class_types
51018
+ @inner_class_types = {}
51019
+ end
51020
+ def self.field_remappings
51021
+ @field_remappings = {}
51022
+ end
51023
+ end
51024
+ # Use an index to specify the position of an amendment to start prebilling with.
51025
+ sig { returns(T.nilable(AmendmentStart)) }
51026
+ def amendment_start; end
51027
+ # The time the billing schedule applies from.
51028
+ sig { returns(T.nilable(Integer)) }
51029
+ def computed_timestamp; end
51030
+ # Lets you bill the period starting from a particular Quote line.
51031
+ sig { returns(T.nilable(LineStartsAt)) }
51032
+ def line_starts_at; end
51033
+ # Timestamp is calculated from the request time.
51034
+ sig { returns(T.nilable(Relative)) }
51035
+ def relative; end
51036
+ # Use a precise Unix timestamp for prebilling to start. Must be earlier than `bill_until`.
51037
+ sig { returns(T.nilable(Integer)) }
51038
+ def timestamp; end
51039
+ # Describes how the billing schedule determines the start date. Possible values are `timestamp`, `relative`, `amendment_start`, `now`, `quote_acceptance_date`, `line_starts_at`, or `pause_collection_start`.
51040
+ sig { returns(String) }
51041
+ def type; end
51042
+ def self.inner_class_types
51043
+ @inner_class_types = {
51044
+ amendment_start: AmendmentStart,
51045
+ line_starts_at: LineStartsAt,
51046
+ relative: Relative,
51047
+ }
51048
+ end
51049
+ def self.field_remappings
51050
+ @field_remappings = {}
51051
+ end
51052
+ end
50128
51053
  class BillUntil < ::Stripe::StripeObject
51054
+ class AmendmentEnd < ::Stripe::StripeObject
51055
+ # Use an index to specify the position of an amendment to end prebilling with.
51056
+ sig { returns(Integer) }
51057
+ def index; end
51058
+ def self.inner_class_types
51059
+ @inner_class_types = {}
51060
+ end
51061
+ def self.field_remappings
51062
+ @field_remappings = {}
51063
+ end
51064
+ end
50129
51065
  class Duration < ::Stripe::StripeObject
50130
51066
  # Specifies billing duration. Either `day`, `week`, `month` or `year`.
50131
51067
  sig { returns(String) }
@@ -50140,6 +51076,17 @@ module Stripe
50140
51076
  @field_remappings = {}
50141
51077
  end
50142
51078
  end
51079
+ class LineEndsAt < ::Stripe::StripeObject
51080
+ # Unique identifier for the object.
51081
+ sig { returns(String) }
51082
+ def id; end
51083
+ def self.inner_class_types
51084
+ @inner_class_types = {}
51085
+ end
51086
+ def self.field_remappings
51087
+ @field_remappings = {}
51088
+ end
51089
+ end
50143
51090
  # The timestamp the billing schedule will apply until.
50144
51091
  sig { returns(Integer) }
50145
51092
  def computed_timestamp; end
@@ -50152,8 +51099,18 @@ module Stripe
50152
51099
  # Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`.
50153
51100
  sig { returns(String) }
50154
51101
  def type; end
51102
+ # Use an index to specify the position of an amendment to end prebilling with.
51103
+ sig { returns(T.nilable(AmendmentEnd)) }
51104
+ def amendment_end; end
51105
+ # Lets you bill the period ending at a particular Quote line.
51106
+ sig { returns(T.nilable(LineEndsAt)) }
51107
+ def line_ends_at; end
50155
51108
  def self.inner_class_types
50156
- @inner_class_types = {duration: Duration}
51109
+ @inner_class_types = {
51110
+ duration: Duration,
51111
+ amendment_end: AmendmentEnd,
51112
+ line_ends_at: LineEndsAt,
51113
+ }
50157
51114
  end
50158
51115
  def self.field_remappings
50159
51116
  @field_remappings = {}
@@ -50168,8 +51125,11 @@ module Stripe
50168
51125
  # Unique identifier for the billing schedule.
50169
51126
  sig { returns(String) }
50170
51127
  def key; end
51128
+ # Specifies the start of the billing period.
51129
+ sig { returns(T.nilable(BillFrom)) }
51130
+ def bill_from; end
50171
51131
  def self.inner_class_types
50172
- @inner_class_types = {applies_to: AppliesTo, bill_until: BillUntil}
51132
+ @inner_class_types = {applies_to: AppliesTo, bill_until: BillUntil, bill_from: BillFrom}
50173
51133
  end
50174
51134
  def self.field_remappings
50175
51135
  @field_remappings = {}
@@ -70155,37 +71115,6 @@ module Stripe
70155
71115
  end
70156
71116
  end
70157
71117
  # typed: true
70158
- module Stripe
70159
- module V2
70160
- module Tax
70161
- # An AutomaticRule holds automatic Tax configuration for a BillableItem.
70162
- class AutomaticRule < APIResource
70163
- # The ID of the BillableItem.
70164
- sig { returns(String) }
70165
- def billable_item; end
70166
- # The time at which the AutomaticRule object was created.
70167
- sig { returns(String) }
70168
- def created; end
70169
- # The ID of the AutomaticRule object.
70170
- sig { returns(String) }
70171
- def id; end
70172
- # String representing the object's type. Objects of the same type share the same value of the object field.
70173
- sig { returns(String) }
70174
- def object; end
70175
- # The status of the AutomaticRule object.
70176
- sig { returns(String) }
70177
- def status; end
70178
- # A TaxCode object that will be used for automatic tax calculations.
70179
- sig { returns(String) }
70180
- def tax_code; end
70181
- # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
70182
- sig { returns(T::Boolean) }
70183
- def livemode; end
70184
- end
70185
- end
70186
- end
70187
- end
70188
- # typed: true
70189
71118
  module Stripe
70190
71119
  class V1Services < StripeService
70191
71120
  attr_reader :accounts
@@ -72407,6 +73336,7 @@ module Stripe
72407
73336
  attr_reader :fraud_liability_debits
72408
73337
  attr_reader :personalization_designs
72409
73338
  attr_reader :physical_bundles
73339
+ attr_reader :programs
72410
73340
  attr_reader :tokens
72411
73341
  attr_reader :transactions
72412
73342
  end
@@ -72672,6 +73602,36 @@ module Stripe
72672
73602
  end
72673
73603
  end
72674
73604
  # typed: true
73605
+ module Stripe
73606
+ module Issuing
73607
+ class ProgramService < StripeService
73608
+ # Create a Program object.
73609
+ sig {
73610
+ params(params: T.any(::Stripe::Issuing::ProgramCreateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::Issuing::Program)
73611
+ }
73612
+ def create(params = {}, opts = {}); end
73613
+
73614
+ # List all of the programs the given Issuing user has access to.
73615
+ sig {
73616
+ params(params: T.any(::Stripe::Issuing::ProgramListParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::ListObject)
73617
+ }
73618
+ def list(params = {}, opts = {}); end
73619
+
73620
+ # Retrieves the program specified by the given id.
73621
+ sig {
73622
+ params(program: String, params: T.any(::Stripe::Issuing::ProgramRetrieveParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::Issuing::Program)
73623
+ }
73624
+ def retrieve(program, params = {}, opts = {}); end
73625
+
73626
+ # Updates a Program object.
73627
+ sig {
73628
+ params(program: String, params: T.any(::Stripe::Issuing::ProgramUpdateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::Issuing::Program)
73629
+ }
73630
+ def update(program, params = {}, opts = {}); end
73631
+ end
73632
+ end
73633
+ end
73634
+ # typed: true
72675
73635
  module Stripe
72676
73636
  module Issuing
72677
73637
  class TokenService < StripeService
@@ -75552,7 +76512,6 @@ module Stripe
75552
76512
  attr_reader :money_management
75553
76513
  attr_reader :payments
75554
76514
  attr_reader :reporting
75555
- attr_reader :tax
75556
76515
  attr_reader :test_helpers
75557
76516
  end
75558
76517
  end
@@ -77238,52 +78197,6 @@ module Stripe
77238
78197
  end
77239
78198
  end
77240
78199
  # typed: true
77241
- module Stripe
77242
- module V2
77243
- class TaxService < StripeService
77244
- attr_reader :automatic_rules
77245
- end
77246
- end
77247
- end
77248
- # typed: true
77249
- module Stripe
77250
- module V2
77251
- module Tax
77252
- class AutomaticRuleService < StripeService
77253
- # Creates an AutomaticRule object.
77254
- sig {
77255
- params(params: T.any(::Stripe::V2::Tax::AutomaticRuleCreateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::V2::Tax::AutomaticRule)
77256
- }
77257
- def create(params = {}, opts = {}); end
77258
-
77259
- # Deactivates an AutomaticRule object. Deactivated AutomaticRule objects are ignored in future tax calculations.
77260
- sig {
77261
- params(id: String, params: T.any(::Stripe::V2::Tax::AutomaticRuleDeactivateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::V2::Tax::AutomaticRule)
77262
- }
77263
- def deactivate(id, params = {}, opts = {}); end
77264
-
77265
- # Finds an AutomaticRule object by BillableItem ID.
77266
- sig {
77267
- params(params: T.any(::Stripe::V2::Tax::AutomaticRuleFindParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::V2::Tax::AutomaticRule)
77268
- }
77269
- def find(params = {}, opts = {}); end
77270
-
77271
- # Retrieves an AutomaticRule object by ID.
77272
- sig {
77273
- params(id: String, params: T.any(::Stripe::V2::Tax::AutomaticRuleRetrieveParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::V2::Tax::AutomaticRule)
77274
- }
77275
- def retrieve(id, params = {}, opts = {}); end
77276
-
77277
- # Updates the automatic Tax configuration for an AutomaticRule object.
77278
- sig {
77279
- params(id: String, params: T.any(::Stripe::V2::Tax::AutomaticRuleUpdateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(::Stripe::V2::Tax::AutomaticRule)
77280
- }
77281
- def update(id, params = {}, opts = {}); end
77282
- end
77283
- end
77284
- end
77285
- end
77286
- # typed: true
77287
78200
  module Stripe
77288
78201
  module V2
77289
78202
  class TestHelperService < StripeService
@@ -81302,6 +82215,34 @@ module Stripe
81302
82215
  title: nil
81303
82216
  ); end
81304
82217
  end
82218
+ class SelfReportedIncome < ::Stripe::RequestParams
82219
+ # Attribute for param field amount
82220
+ sig { returns(Integer) }
82221
+ def amount; end
82222
+ sig { params(_amount: Integer).returns(Integer) }
82223
+ def amount=(_amount); end
82224
+ # Attribute for param field currency
82225
+ sig { returns(String) }
82226
+ def currency; end
82227
+ sig { params(_currency: String).returns(String) }
82228
+ def currency=(_currency); end
82229
+ sig { params(amount: Integer, currency: String).void }
82230
+ def initialize(amount: nil, currency: nil); end
82231
+ end
82232
+ class SelfReportedMonthlyHousingPayment < ::Stripe::RequestParams
82233
+ # Attribute for param field amount
82234
+ sig { returns(Integer) }
82235
+ def amount; end
82236
+ sig { params(_amount: Integer).returns(Integer) }
82237
+ def amount=(_amount); end
82238
+ # Attribute for param field currency
82239
+ sig { returns(String) }
82240
+ def currency; end
82241
+ sig { params(_currency: String).returns(String) }
82242
+ def currency=(_currency); end
82243
+ sig { params(amount: Integer, currency: String).void }
82244
+ def initialize(amount: nil, currency: nil); end
82245
+ end
81305
82246
  class Verification < ::Stripe::RequestParams
81306
82247
  class AdditionalDocument < ::Stripe::RequestParams
81307
82248
  # The back of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
@@ -81485,8 +82426,22 @@ module Stripe
81485
82426
  params(_verification: T.nilable(AccountUpdateParams::Individual::Verification)).returns(T.nilable(AccountUpdateParams::Individual::Verification))
81486
82427
  }
81487
82428
  def verification=(_verification); end
82429
+ # The credit applicant's self-reported yearly income in minor units.
82430
+ sig { returns(T.nilable(AccountUpdateParams::Individual::SelfReportedIncome)) }
82431
+ def self_reported_income; end
81488
82432
  sig {
81489
- params(address: T.nilable(AccountUpdateParams::Individual::Address), address_kana: T.nilable(AccountUpdateParams::Individual::AddressKana), address_kanji: T.nilable(AccountUpdateParams::Individual::AddressKanji), dob: T.nilable(T.any(String, AccountUpdateParams::Individual::Dob)), email: T.nilable(String), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(AccountUpdateParams::Individual::RegisteredAddress), relationship: T.nilable(AccountUpdateParams::Individual::Relationship), ssn_last_4: T.nilable(String), verification: T.nilable(AccountUpdateParams::Individual::Verification)).void
82433
+ params(_self_reported_income: T.nilable(AccountUpdateParams::Individual::SelfReportedIncome)).returns(T.nilable(AccountUpdateParams::Individual::SelfReportedIncome))
82434
+ }
82435
+ def self_reported_income=(_self_reported_income); end
82436
+ # The credit applicant's self-reported monthly housing payment in minor units.
82437
+ sig { returns(T.nilable(AccountUpdateParams::Individual::SelfReportedMonthlyHousingPayment)) }
82438
+ def self_reported_monthly_housing_payment; end
82439
+ sig {
82440
+ params(_self_reported_monthly_housing_payment: T.nilable(AccountUpdateParams::Individual::SelfReportedMonthlyHousingPayment)).returns(T.nilable(AccountUpdateParams::Individual::SelfReportedMonthlyHousingPayment))
82441
+ }
82442
+ def self_reported_monthly_housing_payment=(_self_reported_monthly_housing_payment); end
82443
+ sig {
82444
+ params(address: T.nilable(AccountUpdateParams::Individual::Address), address_kana: T.nilable(AccountUpdateParams::Individual::AddressKana), address_kanji: T.nilable(AccountUpdateParams::Individual::AddressKanji), dob: T.nilable(T.any(String, AccountUpdateParams::Individual::Dob)), email: T.nilable(String), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(AccountUpdateParams::Individual::RegisteredAddress), relationship: T.nilable(AccountUpdateParams::Individual::Relationship), ssn_last_4: T.nilable(String), verification: T.nilable(AccountUpdateParams::Individual::Verification), self_reported_income: T.nilable(AccountUpdateParams::Individual::SelfReportedIncome), self_reported_monthly_housing_payment: T.nilable(AccountUpdateParams::Individual::SelfReportedMonthlyHousingPayment)).void
81490
82445
  }
81491
82446
  def initialize(
81492
82447
  address: nil,
@@ -81511,7 +82466,9 @@ module Stripe
81511
82466
  registered_address: nil,
81512
82467
  relationship: nil,
81513
82468
  ssn_last_4: nil,
81514
- verification: nil
82469
+ verification: nil,
82470
+ self_reported_income: nil,
82471
+ self_reported_monthly_housing_payment: nil
81515
82472
  ); end
81516
82473
  end
81517
82474
  class RiskControls < ::Stripe::RequestParams
@@ -84732,6 +85689,34 @@ module Stripe
84732
85689
  title: nil
84733
85690
  ); end
84734
85691
  end
85692
+ class SelfReportedIncome < ::Stripe::RequestParams
85693
+ # Attribute for param field amount
85694
+ sig { returns(Integer) }
85695
+ def amount; end
85696
+ sig { params(_amount: Integer).returns(Integer) }
85697
+ def amount=(_amount); end
85698
+ # Attribute for param field currency
85699
+ sig { returns(String) }
85700
+ def currency; end
85701
+ sig { params(_currency: String).returns(String) }
85702
+ def currency=(_currency); end
85703
+ sig { params(amount: Integer, currency: String).void }
85704
+ def initialize(amount: nil, currency: nil); end
85705
+ end
85706
+ class SelfReportedMonthlyHousingPayment < ::Stripe::RequestParams
85707
+ # Attribute for param field amount
85708
+ sig { returns(Integer) }
85709
+ def amount; end
85710
+ sig { params(_amount: Integer).returns(Integer) }
85711
+ def amount=(_amount); end
85712
+ # Attribute for param field currency
85713
+ sig { returns(String) }
85714
+ def currency; end
85715
+ sig { params(_currency: String).returns(String) }
85716
+ def currency=(_currency); end
85717
+ sig { params(amount: Integer, currency: String).void }
85718
+ def initialize(amount: nil, currency: nil); end
85719
+ end
84735
85720
  class Verification < ::Stripe::RequestParams
84736
85721
  class AdditionalDocument < ::Stripe::RequestParams
84737
85722
  # The back of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
@@ -84915,8 +85900,22 @@ module Stripe
84915
85900
  params(_verification: T.nilable(AccountCreateParams::Individual::Verification)).returns(T.nilable(AccountCreateParams::Individual::Verification))
84916
85901
  }
84917
85902
  def verification=(_verification); end
85903
+ # The credit applicant's self-reported yearly income in minor units.
85904
+ sig { returns(T.nilable(AccountCreateParams::Individual::SelfReportedIncome)) }
85905
+ def self_reported_income; end
85906
+ sig {
85907
+ params(_self_reported_income: T.nilable(AccountCreateParams::Individual::SelfReportedIncome)).returns(T.nilable(AccountCreateParams::Individual::SelfReportedIncome))
85908
+ }
85909
+ def self_reported_income=(_self_reported_income); end
85910
+ # The credit applicant's self-reported monthly housing payment in minor units.
85911
+ sig { returns(T.nilable(AccountCreateParams::Individual::SelfReportedMonthlyHousingPayment)) }
85912
+ def self_reported_monthly_housing_payment; end
84918
85913
  sig {
84919
- params(address: T.nilable(AccountCreateParams::Individual::Address), address_kana: T.nilable(AccountCreateParams::Individual::AddressKana), address_kanji: T.nilable(AccountCreateParams::Individual::AddressKanji), dob: T.nilable(T.any(String, AccountCreateParams::Individual::Dob)), email: T.nilable(String), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(AccountCreateParams::Individual::RegisteredAddress), relationship: T.nilable(AccountCreateParams::Individual::Relationship), ssn_last_4: T.nilable(String), verification: T.nilable(AccountCreateParams::Individual::Verification)).void
85914
+ params(_self_reported_monthly_housing_payment: T.nilable(AccountCreateParams::Individual::SelfReportedMonthlyHousingPayment)).returns(T.nilable(AccountCreateParams::Individual::SelfReportedMonthlyHousingPayment))
85915
+ }
85916
+ def self_reported_monthly_housing_payment=(_self_reported_monthly_housing_payment); end
85917
+ sig {
85918
+ params(address: T.nilable(AccountCreateParams::Individual::Address), address_kana: T.nilable(AccountCreateParams::Individual::AddressKana), address_kanji: T.nilable(AccountCreateParams::Individual::AddressKanji), dob: T.nilable(T.any(String, AccountCreateParams::Individual::Dob)), email: T.nilable(String), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(AccountCreateParams::Individual::RegisteredAddress), relationship: T.nilable(AccountCreateParams::Individual::Relationship), ssn_last_4: T.nilable(String), verification: T.nilable(AccountCreateParams::Individual::Verification), self_reported_income: T.nilable(AccountCreateParams::Individual::SelfReportedIncome), self_reported_monthly_housing_payment: T.nilable(AccountCreateParams::Individual::SelfReportedMonthlyHousingPayment)).void
84920
85919
  }
84921
85920
  def initialize(
84922
85921
  address: nil,
@@ -84941,7 +85940,9 @@ module Stripe
84941
85940
  registered_address: nil,
84942
85941
  relationship: nil,
84943
85942
  ssn_last_4: nil,
84944
- verification: nil
85943
+ verification: nil,
85944
+ self_reported_income: nil,
85945
+ self_reported_monthly_housing_payment: nil
84945
85946
  ); end
84946
85947
  end
84947
85948
  class RiskControls < ::Stripe::RequestParams
@@ -88466,7 +89467,7 @@ end
88466
89467
  module Stripe
88467
89468
  module Capital
88468
89469
  class FinancingOfferCreateParams < ::Stripe::RequestParams
88469
- # Attribute for param field advance_amount
89470
+ # Amount of financing offered, in minor units. For example, 1,000 USD is represented as 100000.
88470
89471
  sig { returns(Integer) }
88471
89472
  def advance_amount; end
88472
89473
  sig { params(_advance_amount: Integer).returns(Integer) }
@@ -88476,22 +89477,22 @@ module Stripe
88476
89477
  def expand; end
88477
89478
  sig { params(_expand: T.nilable(T::Array[String])).returns(T.nilable(T::Array[String])) }
88478
89479
  def expand=(_expand); end
88479
- # Attribute for param field fee_amount
89480
+ # Fixed fee amount, in minor units. For example, 100 USD is represented as 10000.
88480
89481
  sig { returns(Integer) }
88481
89482
  def fee_amount; end
88482
89483
  sig { params(_fee_amount: Integer).returns(Integer) }
88483
89484
  def fee_amount=(_fee_amount); end
88484
- # Attribute for param field financing_type
89485
+ # The type of financing offer.
88485
89486
  sig { returns(String) }
88486
89487
  def financing_type; end
88487
89488
  sig { params(_financing_type: String).returns(String) }
88488
89489
  def financing_type=(_financing_type); end
88489
- # Attribute for param field status
89490
+ # The status of the financing offer.
88490
89491
  sig { returns(T.nilable(String)) }
88491
89492
  def status; end
88492
89493
  sig { params(_status: T.nilable(String)).returns(T.nilable(String)) }
88493
89494
  def status=(_status); end
88494
- # Attribute for param field withhold_rate
89495
+ # Per-transaction rate at which Stripe withholds funds to repay the financing.
88495
89496
  sig { returns(Float) }
88496
89497
  def withhold_rate; end
88497
89498
  sig { params(_withhold_rate: Float).returns(Float) }
@@ -88514,7 +89515,7 @@ end
88514
89515
  module Stripe
88515
89516
  module Capital
88516
89517
  class FinancingOfferRefillParams < ::Stripe::RequestParams
88517
- # Attribute for param field advance_amount
89518
+ # Amount of financing offered, in minor units. For example, 1,000 USD is represented as 100000.
88518
89519
  sig { returns(Integer) }
88519
89520
  def advance_amount; end
88520
89521
  sig { params(_advance_amount: Integer).returns(Integer) }
@@ -88524,22 +89525,22 @@ module Stripe
88524
89525
  def expand; end
88525
89526
  sig { params(_expand: T.nilable(T::Array[String])).returns(T.nilable(T::Array[String])) }
88526
89527
  def expand=(_expand); end
88527
- # Attribute for param field fee_amount
89528
+ # Fixed fee amount, in minor units. For example, 100 USD is represented as 10000.
88528
89529
  sig { returns(Integer) }
88529
89530
  def fee_amount; end
88530
89531
  sig { params(_fee_amount: Integer).returns(Integer) }
88531
89532
  def fee_amount=(_fee_amount); end
88532
- # Attribute for param field financing_type
89533
+ # The type of financing offer
88533
89534
  sig { returns(String) }
88534
89535
  def financing_type; end
88535
89536
  sig { params(_financing_type: String).returns(String) }
88536
89537
  def financing_type=(_financing_type); end
88537
- # Attribute for param field status
89538
+ # The status of the financing offer
88538
89539
  sig { returns(T.nilable(String)) }
88539
89540
  def status; end
88540
89541
  sig { params(_status: T.nilable(String)).returns(T.nilable(String)) }
88541
89542
  def status=(_status); end
88542
- # Attribute for param field withhold_rate
89543
+ # Per-transaction rate at which Stripe withholds funds to repay the financing.
88543
89544
  sig { returns(Float) }
88544
89545
  def withhold_rate; end
88545
89546
  sig { params(_withhold_rate: Float).returns(Float) }
@@ -100116,7 +101117,7 @@ module Stripe
100116
101117
  }
100117
101118
  def initialize(shipping: nil, type: nil); end
100118
101119
  end
100119
- # Attribute for param field address
101120
+ # The customer's address.
100120
101121
  sig {
100121
101122
  returns(T.nilable(DelegatedCheckout::RequestedSessionUpdateParams::FulfillmentDetails::Address))
100122
101123
  }
@@ -100414,7 +101415,7 @@ module Stripe
100414
101415
  state: nil
100415
101416
  ); end
100416
101417
  end
100417
- # Attribute for param field address
101418
+ # The customer's address.
100418
101419
  sig {
100419
101420
  returns(T.nilable(DelegatedCheckout::RequestedSessionCreateParams::FulfillmentDetails::Address))
100420
101421
  }
@@ -108700,6 +109701,88 @@ module Stripe
108700
109701
  }
108701
109702
  def initialize(flexible: nil, type: nil); end
108702
109703
  end
109704
+ class BillingSchedule < ::Stripe::RequestParams
109705
+ class AppliesTo < ::Stripe::RequestParams
109706
+ # The ID of the price object.
109707
+ sig { returns(T.nilable(String)) }
109708
+ def price; end
109709
+ sig { params(_price: T.nilable(String)).returns(T.nilable(String)) }
109710
+ def price=(_price); end
109711
+ # Controls which subscription items the billing schedule applies to.
109712
+ sig { returns(String) }
109713
+ def type; end
109714
+ sig { params(_type: String).returns(String) }
109715
+ def type=(_type); end
109716
+ sig { params(price: T.nilable(String), type: String).void }
109717
+ def initialize(price: nil, type: nil); end
109718
+ end
109719
+ class BillUntil < ::Stripe::RequestParams
109720
+ class Duration < ::Stripe::RequestParams
109721
+ # Specifies billing duration. Either `day`, `week`, `month` or `year`.
109722
+ sig { returns(String) }
109723
+ def interval; end
109724
+ sig { params(_interval: String).returns(String) }
109725
+ def interval=(_interval); end
109726
+ # The multiplier applied to the interval.
109727
+ sig { returns(T.nilable(Integer)) }
109728
+ def interval_count; end
109729
+ sig { params(_interval_count: T.nilable(Integer)).returns(T.nilable(Integer)) }
109730
+ def interval_count=(_interval_count); end
109731
+ sig { params(interval: String, interval_count: T.nilable(Integer)).void }
109732
+ def initialize(interval: nil, interval_count: nil); end
109733
+ end
109734
+ # Specifies the billing period.
109735
+ sig {
109736
+ returns(T.nilable(InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::BillUntil::Duration))
109737
+ }
109738
+ def duration; end
109739
+ sig {
109740
+ params(_duration: T.nilable(InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::BillUntil::Duration)).returns(T.nilable(InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::BillUntil::Duration))
109741
+ }
109742
+ def duration=(_duration); end
109743
+ # The end date of the billing schedule.
109744
+ sig { returns(T.nilable(Integer)) }
109745
+ def timestamp; end
109746
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
109747
+ def timestamp=(_timestamp); end
109748
+ # Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`.
109749
+ sig { returns(String) }
109750
+ def type; end
109751
+ sig { params(_type: String).returns(String) }
109752
+ def type=(_type); end
109753
+ sig {
109754
+ params(duration: T.nilable(InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::BillUntil::Duration), timestamp: T.nilable(Integer), type: String).void
109755
+ }
109756
+ def initialize(duration: nil, timestamp: nil, type: nil); end
109757
+ end
109758
+ # Configure billing schedule differently for individual subscription items.
109759
+ sig {
109760
+ returns(T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::AppliesTo]))
109761
+ }
109762
+ def applies_to; end
109763
+ sig {
109764
+ params(_applies_to: T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::AppliesTo])).returns(T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::AppliesTo]))
109765
+ }
109766
+ def applies_to=(_applies_to); end
109767
+ # The end date for the billing schedule.
109768
+ sig {
109769
+ returns(T.nilable(InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::BillUntil))
109770
+ }
109771
+ def bill_until; end
109772
+ sig {
109773
+ params(_bill_until: T.nilable(InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::BillUntil)).returns(T.nilable(InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::BillUntil))
109774
+ }
109775
+ def bill_until=(_bill_until); end
109776
+ # Specify a key for the billing schedule. Must be unique to this field, alphanumeric, and up to 200 characters. If not provided, a unique key will be generated.
109777
+ sig { returns(T.nilable(String)) }
109778
+ def key; end
109779
+ sig { params(_key: T.nilable(String)).returns(T.nilable(String)) }
109780
+ def key=(_key); end
109781
+ sig {
109782
+ params(applies_to: T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::AppliesTo]), bill_until: T.nilable(InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule::BillUntil), key: T.nilable(String)).void
109783
+ }
109784
+ def initialize(applies_to: nil, bill_until: nil, key: nil); end
109785
+ end
108703
109786
  class Phase < ::Stripe::RequestParams
108704
109787
  class AddInvoiceItem < ::Stripe::RequestParams
108705
109788
  class Discount < ::Stripe::RequestParams
@@ -109703,8 +110786,17 @@ module Stripe
109703
110786
  def proration_behavior; end
109704
110787
  sig { params(_proration_behavior: T.nilable(String)).returns(T.nilable(String)) }
109705
110788
  def proration_behavior=(_proration_behavior); end
110789
+ # Sets the billing schedules for the subscription schedule.
110790
+ sig {
110791
+ returns(T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule]))
110792
+ }
110793
+ def billing_schedules; end
110794
+ sig {
110795
+ params(_billing_schedules: T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule])).returns(T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule]))
110796
+ }
110797
+ def billing_schedules=(_billing_schedules); end
109706
110798
  sig {
109707
- params(amendments: T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::Amendment]), billing_behavior: T.nilable(String), billing_mode: T.nilable(InvoiceCreatePreviewParams::ScheduleDetails::BillingMode), end_behavior: T.nilable(String), phases: T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::Phase]), prebilling: T.nilable(T.any(String, T::Array[InvoiceCreatePreviewParams::ScheduleDetails::Prebilling])), proration_behavior: T.nilable(String)).void
110799
+ params(amendments: T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::Amendment]), billing_behavior: T.nilable(String), billing_mode: T.nilable(InvoiceCreatePreviewParams::ScheduleDetails::BillingMode), end_behavior: T.nilable(String), phases: T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::Phase]), prebilling: T.nilable(T.any(String, T::Array[InvoiceCreatePreviewParams::ScheduleDetails::Prebilling])), proration_behavior: T.nilable(String), billing_schedules: T.nilable(T::Array[InvoiceCreatePreviewParams::ScheduleDetails::BillingSchedule])).void
109708
110800
  }
109709
110801
  def initialize(
109710
110802
  amendments: nil,
@@ -109713,7 +110805,8 @@ module Stripe
109713
110805
  end_behavior: nil,
109714
110806
  phases: nil,
109715
110807
  prebilling: nil,
109716
- proration_behavior: nil
110808
+ proration_behavior: nil,
110809
+ billing_schedules: nil
109717
110810
  ); end
109718
110811
  end
109719
110812
  class SubscriptionDetails < ::Stripe::RequestParams
@@ -115856,6 +116949,91 @@ module Stripe
115856
116949
  end
115857
116950
  end
115858
116951
  # typed: true
116952
+ module Stripe
116953
+ module Issuing
116954
+ class ProgramListParams < ::Stripe::RequestParams
116955
+ # 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.
116956
+ sig { returns(T.nilable(String)) }
116957
+ def ending_before; end
116958
+ sig { params(_ending_before: T.nilable(String)).returns(T.nilable(String)) }
116959
+ def ending_before=(_ending_before); end
116960
+ # Specifies which fields in the response should be expanded.
116961
+ sig { returns(T.nilable(T::Array[String])) }
116962
+ def expand; end
116963
+ sig { params(_expand: T.nilable(T::Array[String])).returns(T.nilable(T::Array[String])) }
116964
+ def expand=(_expand); end
116965
+ # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
116966
+ sig { returns(T.nilable(Integer)) }
116967
+ def limit; end
116968
+ sig { params(_limit: T.nilable(Integer)).returns(T.nilable(Integer)) }
116969
+ def limit=(_limit); end
116970
+ # A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
116971
+ sig { returns(T.nilable(String)) }
116972
+ def starting_after; end
116973
+ sig { params(_starting_after: T.nilable(String)).returns(T.nilable(String)) }
116974
+ def starting_after=(_starting_after); end
116975
+ sig {
116976
+ params(ending_before: T.nilable(String), expand: T.nilable(T::Array[String]), limit: T.nilable(Integer), starting_after: T.nilable(String)).void
116977
+ }
116978
+ def initialize(ending_before: nil, expand: nil, limit: nil, starting_after: nil); end
116979
+ end
116980
+ end
116981
+ end
116982
+ # typed: true
116983
+ module Stripe
116984
+ module Issuing
116985
+ class ProgramCreateParams < ::Stripe::RequestParams
116986
+ # Specifies which fields in the response should be expanded.
116987
+ sig { returns(T.nilable(T::Array[String])) }
116988
+ def expand; end
116989
+ sig { params(_expand: T.nilable(T::Array[String])).returns(T.nilable(T::Array[String])) }
116990
+ def expand=(_expand); end
116991
+ # If true, makes the specified program the default for the given account.
116992
+ sig { returns(T.nilable(T::Boolean)) }
116993
+ def is_default; end
116994
+ sig { params(_is_default: T.nilable(T::Boolean)).returns(T.nilable(T::Boolean)) }
116995
+ def is_default=(_is_default); end
116996
+ # The program to use as the parent for the new program to create.
116997
+ sig { returns(String) }
116998
+ def platform_program; end
116999
+ sig { params(_platform_program: String).returns(String) }
117000
+ def platform_program=(_platform_program); end
117001
+ sig {
117002
+ params(expand: T.nilable(T::Array[String]), is_default: T.nilable(T::Boolean), platform_program: String).void
117003
+ }
117004
+ def initialize(expand: nil, is_default: nil, platform_program: nil); end
117005
+ end
117006
+ end
117007
+ end
117008
+ # typed: true
117009
+ module Stripe
117010
+ module Issuing
117011
+ class ProgramUpdateParams < ::Stripe::RequestParams
117012
+ # Specifies which fields in the response should be expanded.
117013
+ sig { returns(T.nilable(T::Array[String])) }
117014
+ def expand; end
117015
+ sig { params(_expand: T.nilable(T::Array[String])).returns(T.nilable(T::Array[String])) }
117016
+ def expand=(_expand); end
117017
+ # If true, makes the specified program the default.
117018
+ sig { returns(T.nilable(T::Boolean)) }
117019
+ def is_default; end
117020
+ sig { params(_is_default: T.nilable(T::Boolean)).returns(T.nilable(T::Boolean)) }
117021
+ def is_default=(_is_default); end
117022
+ # 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`.
117023
+ sig { returns(T.nilable(T.any(String, T::Hash[String, String]))) }
117024
+ def metadata; end
117025
+ sig {
117026
+ params(_metadata: T.nilable(T.any(String, T::Hash[String, String]))).returns(T.nilable(T.any(String, T::Hash[String, String])))
117027
+ }
117028
+ def metadata=(_metadata); end
117029
+ sig {
117030
+ params(expand: T.nilable(T::Array[String]), is_default: T.nilable(T::Boolean), metadata: T.nilable(T.any(String, T::Hash[String, String]))).void
117031
+ }
117032
+ def initialize(expand: nil, is_default: nil, metadata: nil); end
117033
+ end
117034
+ end
117035
+ end
117036
+ # typed: true
115859
117037
  module Stripe
115860
117038
  module Issuing
115861
117039
  class TokenListParams < ::Stripe::RequestParams
@@ -152131,6 +153309,155 @@ module Stripe
152131
153309
  }
152132
153310
  def initialize(flexible: nil, type: nil); end
152133
153311
  end
153312
+ class BillingSchedule < ::Stripe::RequestParams
153313
+ class AppliesTo < ::Stripe::RequestParams
153314
+ # The ID of the price object.
153315
+ sig { returns(T.nilable(String)) }
153316
+ def price; end
153317
+ sig { params(_price: T.nilable(String)).returns(T.nilable(String)) }
153318
+ def price=(_price); end
153319
+ # Controls which subscription items the billing schedule applies to.
153320
+ sig { returns(String) }
153321
+ def type; end
153322
+ sig { params(_type: String).returns(String) }
153323
+ def type=(_type); end
153324
+ sig { params(price: T.nilable(String), type: String).void }
153325
+ def initialize(price: nil, type: nil); end
153326
+ end
153327
+ class BillFrom < ::Stripe::RequestParams
153328
+ class LineStartsAt < ::Stripe::RequestParams
153329
+ # The ID of a quote line.
153330
+ sig { returns(T.nilable(String)) }
153331
+ def id; end
153332
+ sig { params(_id: T.nilable(String)).returns(T.nilable(String)) }
153333
+ def id=(_id); end
153334
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
153335
+ sig { returns(T.nilable(Integer)) }
153336
+ def index; end
153337
+ sig { params(_index: T.nilable(Integer)).returns(T.nilable(Integer)) }
153338
+ def index=(_index); end
153339
+ sig { params(id: T.nilable(String), index: T.nilable(Integer)).void }
153340
+ def initialize(id: nil, index: nil); end
153341
+ end
153342
+ # Details of a Quote line to start the bill period from.
153343
+ sig {
153344
+ returns(T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillFrom::LineStartsAt))
153345
+ }
153346
+ def line_starts_at; end
153347
+ sig {
153348
+ params(_line_starts_at: T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillFrom::LineStartsAt)).returns(T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillFrom::LineStartsAt))
153349
+ }
153350
+ def line_starts_at=(_line_starts_at); end
153351
+ # A precise Unix timestamp.
153352
+ sig { returns(T.nilable(Integer)) }
153353
+ def timestamp; end
153354
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
153355
+ def timestamp=(_timestamp); end
153356
+ # The type of method to specify the `bill_from` time.
153357
+ sig { returns(String) }
153358
+ def type; end
153359
+ sig { params(_type: String).returns(String) }
153360
+ def type=(_type); end
153361
+ sig {
153362
+ params(line_starts_at: T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillFrom::LineStartsAt), timestamp: T.nilable(Integer), type: String).void
153363
+ }
153364
+ def initialize(line_starts_at: nil, timestamp: nil, type: nil); end
153365
+ end
153366
+ class BillUntil < ::Stripe::RequestParams
153367
+ class Duration < ::Stripe::RequestParams
153368
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
153369
+ sig { returns(String) }
153370
+ def interval; end
153371
+ sig { params(_interval: String).returns(String) }
153372
+ def interval=(_interval); end
153373
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
153374
+ sig { returns(Integer) }
153375
+ def interval_count; end
153376
+ sig { params(_interval_count: Integer).returns(Integer) }
153377
+ def interval_count=(_interval_count); end
153378
+ sig { params(interval: String, interval_count: Integer).void }
153379
+ def initialize(interval: nil, interval_count: nil); end
153380
+ end
153381
+ class LineEndsAt < ::Stripe::RequestParams
153382
+ # The ID of a quote line.
153383
+ sig { returns(T.nilable(String)) }
153384
+ def id; end
153385
+ sig { params(_id: T.nilable(String)).returns(T.nilable(String)) }
153386
+ def id=(_id); end
153387
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
153388
+ sig { returns(T.nilable(Integer)) }
153389
+ def index; end
153390
+ sig { params(_index: T.nilable(Integer)).returns(T.nilable(Integer)) }
153391
+ def index=(_index); end
153392
+ sig { params(id: T.nilable(String), index: T.nilable(Integer)).void }
153393
+ def initialize(id: nil, index: nil); end
153394
+ end
153395
+ # Details of the duration over which to bill.
153396
+ sig {
153397
+ returns(T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil::Duration))
153398
+ }
153399
+ def duration; end
153400
+ sig {
153401
+ params(_duration: T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil::Duration)).returns(T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil::Duration))
153402
+ }
153403
+ def duration=(_duration); end
153404
+ # Details of a Quote line item from which to bill until.
153405
+ sig {
153406
+ returns(T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil::LineEndsAt))
153407
+ }
153408
+ def line_ends_at; end
153409
+ sig {
153410
+ params(_line_ends_at: T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil::LineEndsAt)).returns(T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil::LineEndsAt))
153411
+ }
153412
+ def line_ends_at=(_line_ends_at); end
153413
+ # A precise Unix timestamp.
153414
+ sig { returns(T.nilable(Integer)) }
153415
+ def timestamp; end
153416
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
153417
+ def timestamp=(_timestamp); end
153418
+ # The type of method to specify the `bill_until` time.
153419
+ sig { returns(String) }
153420
+ def type; end
153421
+ sig { params(_type: String).returns(String) }
153422
+ def type=(_type); end
153423
+ sig {
153424
+ params(duration: T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil::Duration), line_ends_at: T.nilable(QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil::LineEndsAt), timestamp: T.nilable(Integer), type: String).void
153425
+ }
153426
+ def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil); end
153427
+ end
153428
+ # Configure billing schedule differently for individual subscription items.
153429
+ sig {
153430
+ returns(T.nilable(T::Array[QuoteCreateParams::SubscriptionData::BillingSchedule::AppliesTo]))
153431
+ }
153432
+ def applies_to; end
153433
+ sig {
153434
+ params(_applies_to: T.nilable(T::Array[QuoteCreateParams::SubscriptionData::BillingSchedule::AppliesTo])).returns(T.nilable(T::Array[QuoteCreateParams::SubscriptionData::BillingSchedule::AppliesTo]))
153435
+ }
153436
+ def applies_to=(_applies_to); end
153437
+ # The start of the period to bill from when the Quote is accepted.
153438
+ sig { returns(QuoteCreateParams::SubscriptionData::BillingSchedule::BillFrom) }
153439
+ def bill_from; end
153440
+ sig {
153441
+ params(_bill_from: QuoteCreateParams::SubscriptionData::BillingSchedule::BillFrom).returns(QuoteCreateParams::SubscriptionData::BillingSchedule::BillFrom)
153442
+ }
153443
+ def bill_from=(_bill_from); end
153444
+ # The end of the period to bill until when the Quote is accepted.
153445
+ sig { returns(QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil) }
153446
+ def bill_until; end
153447
+ sig {
153448
+ params(_bill_until: QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil).returns(QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil)
153449
+ }
153450
+ def bill_until=(_bill_until); end
153451
+ # Specify a key for the billing schedule. Must be unique to this field, alphanumeric, and up to 200 characters. If not provided, a unique key will be generated.
153452
+ sig { returns(T.nilable(String)) }
153453
+ def key; end
153454
+ sig { params(_key: T.nilable(String)).returns(T.nilable(String)) }
153455
+ def key=(_key); end
153456
+ sig {
153457
+ params(applies_to: T.nilable(T::Array[QuoteCreateParams::SubscriptionData::BillingSchedule::AppliesTo]), bill_from: QuoteCreateParams::SubscriptionData::BillingSchedule::BillFrom, bill_until: QuoteCreateParams::SubscriptionData::BillingSchedule::BillUntil, key: T.nilable(String)).void
153458
+ }
153459
+ def initialize(applies_to: nil, bill_from: nil, bill_until: nil, key: nil); end
153460
+ end
152134
153461
  class Prebilling < ::Stripe::RequestParams
152135
153462
  # This is used to determine the number of billing cycles to prebill.
152136
153463
  sig { returns(Integer) }
@@ -152218,8 +153545,22 @@ module Stripe
152218
153545
  params(_trial_period_days: T.nilable(T.any(String, Integer))).returns(T.nilable(T.any(String, Integer)))
152219
153546
  }
152220
153547
  def trial_period_days=(_trial_period_days); end
153548
+ # Billing schedules that will be applied to the subscription or subscription schedule created when the quote is accepted.
152221
153549
  sig {
152222
- params(bill_on_acceptance: T.nilable(QuoteCreateParams::SubscriptionData::BillOnAcceptance), billing_behavior: T.nilable(String), billing_cycle_anchor: T.nilable(String), billing_mode: T.nilable(QuoteCreateParams::SubscriptionData::BillingMode), description: T.nilable(String), effective_date: T.nilable(T.any(String, T.any(String, Integer))), end_behavior: T.nilable(String), from_subscription: T.nilable(String), metadata: T.nilable(T::Hash[String, String]), prebilling: T.nilable(T.any(String, QuoteCreateParams::SubscriptionData::Prebilling)), proration_behavior: T.nilable(String), trial_period_days: T.nilable(T.any(String, Integer))).void
153550
+ returns(T.nilable(T.any(String, T::Array[QuoteCreateParams::SubscriptionData::BillingSchedule])))
153551
+ }
153552
+ def billing_schedules; end
153553
+ sig {
153554
+ params(_billing_schedules: T.nilable(T.any(String, T::Array[QuoteCreateParams::SubscriptionData::BillingSchedule]))).returns(T.nilable(T.any(String, T::Array[QuoteCreateParams::SubscriptionData::BillingSchedule])))
153555
+ }
153556
+ def billing_schedules=(_billing_schedules); end
153557
+ # Configures how the subscription schedule handles billing for phase transitions when the quote is accepted. Possible values are `phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.
153558
+ sig { returns(T.nilable(String)) }
153559
+ def phase_effective_at; end
153560
+ sig { params(_phase_effective_at: T.nilable(String)).returns(T.nilable(String)) }
153561
+ def phase_effective_at=(_phase_effective_at); end
153562
+ sig {
153563
+ params(bill_on_acceptance: T.nilable(QuoteCreateParams::SubscriptionData::BillOnAcceptance), billing_behavior: T.nilable(String), billing_cycle_anchor: T.nilable(String), billing_mode: T.nilable(QuoteCreateParams::SubscriptionData::BillingMode), description: T.nilable(String), effective_date: T.nilable(T.any(String, T.any(String, Integer))), end_behavior: T.nilable(String), from_subscription: T.nilable(String), metadata: T.nilable(T::Hash[String, String]), prebilling: T.nilable(T.any(String, QuoteCreateParams::SubscriptionData::Prebilling)), proration_behavior: T.nilable(String), trial_period_days: T.nilable(T.any(String, Integer)), billing_schedules: T.nilable(T.any(String, T::Array[QuoteCreateParams::SubscriptionData::BillingSchedule])), phase_effective_at: T.nilable(String)).void
152223
153564
  }
152224
153565
  def initialize(
152225
153566
  bill_on_acceptance: nil,
@@ -152233,7 +153574,9 @@ module Stripe
152233
153574
  metadata: nil,
152234
153575
  prebilling: nil,
152235
153576
  proration_behavior: nil,
152236
- trial_period_days: nil
153577
+ trial_period_days: nil,
153578
+ billing_schedules: nil,
153579
+ phase_effective_at: nil
152237
153580
  ); end
152238
153581
  end
152239
153582
  class SubscriptionDataOverride < ::Stripe::RequestParams
@@ -152383,6 +153726,155 @@ module Stripe
152383
153726
  }
152384
153727
  def initialize(bill_from: nil, bill_until: nil); end
152385
153728
  end
153729
+ class BillingSchedule < ::Stripe::RequestParams
153730
+ class AppliesTo < ::Stripe::RequestParams
153731
+ # The ID of the price object.
153732
+ sig { returns(T.nilable(String)) }
153733
+ def price; end
153734
+ sig { params(_price: T.nilable(String)).returns(T.nilable(String)) }
153735
+ def price=(_price); end
153736
+ # Controls which subscription items the billing schedule applies to.
153737
+ sig { returns(String) }
153738
+ def type; end
153739
+ sig { params(_type: String).returns(String) }
153740
+ def type=(_type); end
153741
+ sig { params(price: T.nilable(String), type: String).void }
153742
+ def initialize(price: nil, type: nil); end
153743
+ end
153744
+ class BillFrom < ::Stripe::RequestParams
153745
+ class LineStartsAt < ::Stripe::RequestParams
153746
+ # The ID of a quote line.
153747
+ sig { returns(T.nilable(String)) }
153748
+ def id; end
153749
+ sig { params(_id: T.nilable(String)).returns(T.nilable(String)) }
153750
+ def id=(_id); end
153751
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
153752
+ sig { returns(T.nilable(Integer)) }
153753
+ def index; end
153754
+ sig { params(_index: T.nilable(Integer)).returns(T.nilable(Integer)) }
153755
+ def index=(_index); end
153756
+ sig { params(id: T.nilable(String), index: T.nilable(Integer)).void }
153757
+ def initialize(id: nil, index: nil); end
153758
+ end
153759
+ # Details of a Quote line to start the bill period from.
153760
+ sig {
153761
+ returns(T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillFrom::LineStartsAt))
153762
+ }
153763
+ def line_starts_at; end
153764
+ sig {
153765
+ params(_line_starts_at: T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillFrom::LineStartsAt)).returns(T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillFrom::LineStartsAt))
153766
+ }
153767
+ def line_starts_at=(_line_starts_at); end
153768
+ # A precise Unix timestamp.
153769
+ sig { returns(T.nilable(Integer)) }
153770
+ def timestamp; end
153771
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
153772
+ def timestamp=(_timestamp); end
153773
+ # The type of method to specify the `bill_from` time.
153774
+ sig { returns(String) }
153775
+ def type; end
153776
+ sig { params(_type: String).returns(String) }
153777
+ def type=(_type); end
153778
+ sig {
153779
+ params(line_starts_at: T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillFrom::LineStartsAt), timestamp: T.nilable(Integer), type: String).void
153780
+ }
153781
+ def initialize(line_starts_at: nil, timestamp: nil, type: nil); end
153782
+ end
153783
+ class BillUntil < ::Stripe::RequestParams
153784
+ class Duration < ::Stripe::RequestParams
153785
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
153786
+ sig { returns(String) }
153787
+ def interval; end
153788
+ sig { params(_interval: String).returns(String) }
153789
+ def interval=(_interval); end
153790
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
153791
+ sig { returns(Integer) }
153792
+ def interval_count; end
153793
+ sig { params(_interval_count: Integer).returns(Integer) }
153794
+ def interval_count=(_interval_count); end
153795
+ sig { params(interval: String, interval_count: Integer).void }
153796
+ def initialize(interval: nil, interval_count: nil); end
153797
+ end
153798
+ class LineEndsAt < ::Stripe::RequestParams
153799
+ # The ID of a quote line.
153800
+ sig { returns(T.nilable(String)) }
153801
+ def id; end
153802
+ sig { params(_id: T.nilable(String)).returns(T.nilable(String)) }
153803
+ def id=(_id); end
153804
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
153805
+ sig { returns(T.nilable(Integer)) }
153806
+ def index; end
153807
+ sig { params(_index: T.nilable(Integer)).returns(T.nilable(Integer)) }
153808
+ def index=(_index); end
153809
+ sig { params(id: T.nilable(String), index: T.nilable(Integer)).void }
153810
+ def initialize(id: nil, index: nil); end
153811
+ end
153812
+ # Details of the duration over which to bill.
153813
+ sig {
153814
+ returns(T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::Duration))
153815
+ }
153816
+ def duration; end
153817
+ sig {
153818
+ params(_duration: T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::Duration)).returns(T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::Duration))
153819
+ }
153820
+ def duration=(_duration); end
153821
+ # Details of a Quote line item from which to bill until.
153822
+ sig {
153823
+ returns(T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::LineEndsAt))
153824
+ }
153825
+ def line_ends_at; end
153826
+ sig {
153827
+ params(_line_ends_at: T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::LineEndsAt)).returns(T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::LineEndsAt))
153828
+ }
153829
+ def line_ends_at=(_line_ends_at); end
153830
+ # A precise Unix timestamp.
153831
+ sig { returns(T.nilable(Integer)) }
153832
+ def timestamp; end
153833
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
153834
+ def timestamp=(_timestamp); end
153835
+ # The type of method to specify the `bill_until` time.
153836
+ sig { returns(String) }
153837
+ def type; end
153838
+ sig { params(_type: String).returns(String) }
153839
+ def type=(_type); end
153840
+ sig {
153841
+ params(duration: T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::Duration), line_ends_at: T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::LineEndsAt), timestamp: T.nilable(Integer), type: String).void
153842
+ }
153843
+ def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil); end
153844
+ end
153845
+ # Configure billing schedule differently for individual subscription items.
153846
+ sig {
153847
+ returns(T.nilable(T::Array[QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::AppliesTo]))
153848
+ }
153849
+ def applies_to; end
153850
+ sig {
153851
+ params(_applies_to: T.nilable(T::Array[QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::AppliesTo])).returns(T.nilable(T::Array[QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::AppliesTo]))
153852
+ }
153853
+ def applies_to=(_applies_to); end
153854
+ # The start of the period to bill from when the Quote is accepted.
153855
+ sig { returns(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillFrom) }
153856
+ def bill_from; end
153857
+ sig {
153858
+ params(_bill_from: QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillFrom).returns(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillFrom)
153859
+ }
153860
+ def bill_from=(_bill_from); end
153861
+ # The end of the period to bill until when the Quote is accepted.
153862
+ sig { returns(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil) }
153863
+ def bill_until; end
153864
+ sig {
153865
+ params(_bill_until: QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil).returns(QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil)
153866
+ }
153867
+ def bill_until=(_bill_until); end
153868
+ # Specify a key for the billing schedule. Must be unique to this field, alphanumeric, and up to 200 characters. If not provided, a unique key will be generated.
153869
+ sig { returns(T.nilable(String)) }
153870
+ def key; end
153871
+ sig { params(_key: T.nilable(String)).returns(T.nilable(String)) }
153872
+ def key=(_key); end
153873
+ sig {
153874
+ params(applies_to: T.nilable(T::Array[QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::AppliesTo]), bill_from: QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillFrom, bill_until: QuoteCreateParams::SubscriptionDataOverride::BillingSchedule::BillUntil, key: T.nilable(String)).void
153875
+ }
153876
+ def initialize(applies_to: nil, bill_from: nil, bill_until: nil, key: nil); end
153877
+ end
152386
153878
  # Whether the override applies to an existing Subscription Schedule or a new Subscription Schedule.
152387
153879
  sig { returns(QuoteCreateParams::SubscriptionDataOverride::AppliesTo) }
152388
153880
  def applies_to; end
@@ -152428,8 +153920,22 @@ module Stripe
152428
153920
  def proration_behavior; end
152429
153921
  sig { params(_proration_behavior: T.nilable(String)).returns(T.nilable(String)) }
152430
153922
  def proration_behavior=(_proration_behavior); end
153923
+ # Billing schedules that will be applied to the subscription or subscription schedule created when the quote is accepted.
152431
153924
  sig {
152432
- params(applies_to: QuoteCreateParams::SubscriptionDataOverride::AppliesTo, bill_on_acceptance: T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillOnAcceptance), billing_behavior: T.nilable(String), customer: T.nilable(String), description: T.nilable(String), end_behavior: T.nilable(String), proration_behavior: T.nilable(String)).void
153925
+ returns(T.nilable(T.any(String, T::Array[QuoteCreateParams::SubscriptionDataOverride::BillingSchedule])))
153926
+ }
153927
+ def billing_schedules; end
153928
+ sig {
153929
+ params(_billing_schedules: T.nilable(T.any(String, T::Array[QuoteCreateParams::SubscriptionDataOverride::BillingSchedule]))).returns(T.nilable(T.any(String, T::Array[QuoteCreateParams::SubscriptionDataOverride::BillingSchedule])))
153930
+ }
153931
+ def billing_schedules=(_billing_schedules); end
153932
+ # Configures how the subscription schedule handles billing for phase transitions when the quote is accepted. Possible values are `phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.
153933
+ sig { returns(T.nilable(String)) }
153934
+ def phase_effective_at; end
153935
+ sig { params(_phase_effective_at: T.nilable(String)).returns(T.nilable(String)) }
153936
+ def phase_effective_at=(_phase_effective_at); end
153937
+ sig {
153938
+ params(applies_to: QuoteCreateParams::SubscriptionDataOverride::AppliesTo, bill_on_acceptance: T.nilable(QuoteCreateParams::SubscriptionDataOverride::BillOnAcceptance), billing_behavior: T.nilable(String), customer: T.nilable(String), description: T.nilable(String), end_behavior: T.nilable(String), proration_behavior: T.nilable(String), billing_schedules: T.nilable(T.any(String, T::Array[QuoteCreateParams::SubscriptionDataOverride::BillingSchedule])), phase_effective_at: T.nilable(String)).void
152433
153939
  }
152434
153940
  def initialize(
152435
153941
  applies_to: nil,
@@ -152438,7 +153944,9 @@ module Stripe
152438
153944
  customer: nil,
152439
153945
  description: nil,
152440
153946
  end_behavior: nil,
152441
- proration_behavior: nil
153947
+ proration_behavior: nil,
153948
+ billing_schedules: nil,
153949
+ phase_effective_at: nil
152442
153950
  ); end
152443
153951
  end
152444
153952
  class TransferData < ::Stripe::RequestParams
@@ -153806,6 +155314,155 @@ module Stripe
153806
155314
  }
153807
155315
  def initialize(bill_from: nil, bill_until: nil); end
153808
155316
  end
155317
+ class BillingSchedule < ::Stripe::RequestParams
155318
+ class AppliesTo < ::Stripe::RequestParams
155319
+ # The ID of the price object.
155320
+ sig { returns(T.nilable(String)) }
155321
+ def price; end
155322
+ sig { params(_price: T.nilable(String)).returns(T.nilable(String)) }
155323
+ def price=(_price); end
155324
+ # Controls which subscription items the billing schedule applies to.
155325
+ sig { returns(String) }
155326
+ def type; end
155327
+ sig { params(_type: String).returns(String) }
155328
+ def type=(_type); end
155329
+ sig { params(price: T.nilable(String), type: String).void }
155330
+ def initialize(price: nil, type: nil); end
155331
+ end
155332
+ class BillFrom < ::Stripe::RequestParams
155333
+ class LineStartsAt < ::Stripe::RequestParams
155334
+ # The ID of a quote line.
155335
+ sig { returns(T.nilable(String)) }
155336
+ def id; end
155337
+ sig { params(_id: T.nilable(String)).returns(T.nilable(String)) }
155338
+ def id=(_id); end
155339
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
155340
+ sig { returns(T.nilable(Integer)) }
155341
+ def index; end
155342
+ sig { params(_index: T.nilable(Integer)).returns(T.nilable(Integer)) }
155343
+ def index=(_index); end
155344
+ sig { params(id: T.nilable(String), index: T.nilable(Integer)).void }
155345
+ def initialize(id: nil, index: nil); end
155346
+ end
155347
+ # Details of a Quote line to start the bill period from.
155348
+ sig {
155349
+ returns(T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillFrom::LineStartsAt))
155350
+ }
155351
+ def line_starts_at; end
155352
+ sig {
155353
+ params(_line_starts_at: T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillFrom::LineStartsAt)).returns(T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillFrom::LineStartsAt))
155354
+ }
155355
+ def line_starts_at=(_line_starts_at); end
155356
+ # A precise Unix timestamp.
155357
+ sig { returns(T.nilable(Integer)) }
155358
+ def timestamp; end
155359
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
155360
+ def timestamp=(_timestamp); end
155361
+ # The type of method to specify the `bill_from` time.
155362
+ sig { returns(String) }
155363
+ def type; end
155364
+ sig { params(_type: String).returns(String) }
155365
+ def type=(_type); end
155366
+ sig {
155367
+ params(line_starts_at: T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillFrom::LineStartsAt), timestamp: T.nilable(Integer), type: String).void
155368
+ }
155369
+ def initialize(line_starts_at: nil, timestamp: nil, type: nil); end
155370
+ end
155371
+ class BillUntil < ::Stripe::RequestParams
155372
+ class Duration < ::Stripe::RequestParams
155373
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
155374
+ sig { returns(String) }
155375
+ def interval; end
155376
+ sig { params(_interval: String).returns(String) }
155377
+ def interval=(_interval); end
155378
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
155379
+ sig { returns(Integer) }
155380
+ def interval_count; end
155381
+ sig { params(_interval_count: Integer).returns(Integer) }
155382
+ def interval_count=(_interval_count); end
155383
+ sig { params(interval: String, interval_count: Integer).void }
155384
+ def initialize(interval: nil, interval_count: nil); end
155385
+ end
155386
+ class LineEndsAt < ::Stripe::RequestParams
155387
+ # The ID of a quote line.
155388
+ sig { returns(T.nilable(String)) }
155389
+ def id; end
155390
+ sig { params(_id: T.nilable(String)).returns(T.nilable(String)) }
155391
+ def id=(_id); end
155392
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
155393
+ sig { returns(T.nilable(Integer)) }
155394
+ def index; end
155395
+ sig { params(_index: T.nilable(Integer)).returns(T.nilable(Integer)) }
155396
+ def index=(_index); end
155397
+ sig { params(id: T.nilable(String), index: T.nilable(Integer)).void }
155398
+ def initialize(id: nil, index: nil); end
155399
+ end
155400
+ # Details of the duration over which to bill.
155401
+ sig {
155402
+ returns(T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil::Duration))
155403
+ }
155404
+ def duration; end
155405
+ sig {
155406
+ params(_duration: T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil::Duration)).returns(T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil::Duration))
155407
+ }
155408
+ def duration=(_duration); end
155409
+ # Details of a Quote line item from which to bill until.
155410
+ sig {
155411
+ returns(T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil::LineEndsAt))
155412
+ }
155413
+ def line_ends_at; end
155414
+ sig {
155415
+ params(_line_ends_at: T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil::LineEndsAt)).returns(T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil::LineEndsAt))
155416
+ }
155417
+ def line_ends_at=(_line_ends_at); end
155418
+ # A precise Unix timestamp.
155419
+ sig { returns(T.nilable(Integer)) }
155420
+ def timestamp; end
155421
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
155422
+ def timestamp=(_timestamp); end
155423
+ # The type of method to specify the `bill_until` time.
155424
+ sig { returns(String) }
155425
+ def type; end
155426
+ sig { params(_type: String).returns(String) }
155427
+ def type=(_type); end
155428
+ sig {
155429
+ params(duration: T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil::Duration), line_ends_at: T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil::LineEndsAt), timestamp: T.nilable(Integer), type: String).void
155430
+ }
155431
+ def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil); end
155432
+ end
155433
+ # Configure billing schedule differently for individual subscription items.
155434
+ sig {
155435
+ returns(T.nilable(T::Array[QuoteUpdateParams::SubscriptionData::BillingSchedule::AppliesTo]))
155436
+ }
155437
+ def applies_to; end
155438
+ sig {
155439
+ params(_applies_to: T.nilable(T::Array[QuoteUpdateParams::SubscriptionData::BillingSchedule::AppliesTo])).returns(T.nilable(T::Array[QuoteUpdateParams::SubscriptionData::BillingSchedule::AppliesTo]))
155440
+ }
155441
+ def applies_to=(_applies_to); end
155442
+ # The start of the period to bill from when the Quote is accepted.
155443
+ sig { returns(T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillFrom)) }
155444
+ def bill_from; end
155445
+ sig {
155446
+ params(_bill_from: T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillFrom)).returns(T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillFrom))
155447
+ }
155448
+ def bill_from=(_bill_from); end
155449
+ # The end of the period to bill until when the Quote is accepted.
155450
+ sig { returns(T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil)) }
155451
+ def bill_until; end
155452
+ sig {
155453
+ params(_bill_until: T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil)).returns(T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil))
155454
+ }
155455
+ def bill_until=(_bill_until); end
155456
+ # Specify a key for the billing schedule. Must be unique to this field, alphanumeric, and up to 200 characters. If not provided, a unique key will be generated.
155457
+ sig { returns(T.nilable(String)) }
155458
+ def key; end
155459
+ sig { params(_key: T.nilable(String)).returns(T.nilable(String)) }
155460
+ def key=(_key); end
155461
+ sig {
155462
+ params(applies_to: T.nilable(T::Array[QuoteUpdateParams::SubscriptionData::BillingSchedule::AppliesTo]), bill_from: T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillFrom), bill_until: T.nilable(QuoteUpdateParams::SubscriptionData::BillingSchedule::BillUntil), key: T.nilable(String)).void
155463
+ }
155464
+ def initialize(applies_to: nil, bill_from: nil, bill_until: nil, key: nil); end
155465
+ end
153809
155466
  class Prebilling < ::Stripe::RequestParams
153810
155467
  # This is used to determine the number of billing cycles to prebill.
153811
155468
  sig { returns(Integer) }
@@ -153883,8 +155540,22 @@ module Stripe
153883
155540
  params(_trial_period_days: T.nilable(T.any(String, Integer))).returns(T.nilable(T.any(String, Integer)))
153884
155541
  }
153885
155542
  def trial_period_days=(_trial_period_days); end
155543
+ # Billing schedules that will be applied to the subscription or subscription schedule created when the quote is accepted.
155544
+ sig {
155545
+ returns(T.nilable(T.any(String, T::Array[QuoteUpdateParams::SubscriptionData::BillingSchedule])))
155546
+ }
155547
+ def billing_schedules; end
155548
+ sig {
155549
+ params(_billing_schedules: T.nilable(T.any(String, T::Array[QuoteUpdateParams::SubscriptionData::BillingSchedule]))).returns(T.nilable(T.any(String, T::Array[QuoteUpdateParams::SubscriptionData::BillingSchedule])))
155550
+ }
155551
+ def billing_schedules=(_billing_schedules); end
155552
+ # Configures how the subscription schedule handles billing for phase transitions when the quote is accepted. Possible values are `phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.
155553
+ sig { returns(T.nilable(String)) }
155554
+ def phase_effective_at; end
155555
+ sig { params(_phase_effective_at: T.nilable(String)).returns(T.nilable(String)) }
155556
+ def phase_effective_at=(_phase_effective_at); end
153886
155557
  sig {
153887
- params(bill_on_acceptance: T.nilable(T.any(String, QuoteUpdateParams::SubscriptionData::BillOnAcceptance)), billing_behavior: T.nilable(String), billing_cycle_anchor: T.nilable(String), description: T.nilable(String), effective_date: T.nilable(T.any(String, T.any(String, Integer))), end_behavior: T.nilable(String), metadata: T.nilable(T::Hash[String, String]), prebilling: T.nilable(T.any(String, QuoteUpdateParams::SubscriptionData::Prebilling)), proration_behavior: T.nilable(String), trial_period_days: T.nilable(T.any(String, Integer))).void
155558
+ params(bill_on_acceptance: T.nilable(T.any(String, QuoteUpdateParams::SubscriptionData::BillOnAcceptance)), billing_behavior: T.nilable(String), billing_cycle_anchor: T.nilable(String), description: T.nilable(String), effective_date: T.nilable(T.any(String, T.any(String, Integer))), end_behavior: T.nilable(String), metadata: T.nilable(T::Hash[String, String]), prebilling: T.nilable(T.any(String, QuoteUpdateParams::SubscriptionData::Prebilling)), proration_behavior: T.nilable(String), trial_period_days: T.nilable(T.any(String, Integer)), billing_schedules: T.nilable(T.any(String, T::Array[QuoteUpdateParams::SubscriptionData::BillingSchedule])), phase_effective_at: T.nilable(String)).void
153888
155559
  }
153889
155560
  def initialize(
153890
155561
  bill_on_acceptance: nil,
@@ -153896,7 +155567,9 @@ module Stripe
153896
155567
  metadata: nil,
153897
155568
  prebilling: nil,
153898
155569
  proration_behavior: nil,
153899
- trial_period_days: nil
155570
+ trial_period_days: nil,
155571
+ billing_schedules: nil,
155572
+ phase_effective_at: nil
153900
155573
  ); end
153901
155574
  end
153902
155575
  class SubscriptionDataOverride < ::Stripe::RequestParams
@@ -154046,6 +155719,159 @@ module Stripe
154046
155719
  }
154047
155720
  def initialize(bill_from: nil, bill_until: nil); end
154048
155721
  end
155722
+ class BillingSchedule < ::Stripe::RequestParams
155723
+ class AppliesTo < ::Stripe::RequestParams
155724
+ # The ID of the price object.
155725
+ sig { returns(T.nilable(String)) }
155726
+ def price; end
155727
+ sig { params(_price: T.nilable(String)).returns(T.nilable(String)) }
155728
+ def price=(_price); end
155729
+ # Controls which subscription items the billing schedule applies to.
155730
+ sig { returns(String) }
155731
+ def type; end
155732
+ sig { params(_type: String).returns(String) }
155733
+ def type=(_type); end
155734
+ sig { params(price: T.nilable(String), type: String).void }
155735
+ def initialize(price: nil, type: nil); end
155736
+ end
155737
+ class BillFrom < ::Stripe::RequestParams
155738
+ class LineStartsAt < ::Stripe::RequestParams
155739
+ # The ID of a quote line.
155740
+ sig { returns(T.nilable(String)) }
155741
+ def id; end
155742
+ sig { params(_id: T.nilable(String)).returns(T.nilable(String)) }
155743
+ def id=(_id); end
155744
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
155745
+ sig { returns(T.nilable(Integer)) }
155746
+ def index; end
155747
+ sig { params(_index: T.nilable(Integer)).returns(T.nilable(Integer)) }
155748
+ def index=(_index); end
155749
+ sig { params(id: T.nilable(String), index: T.nilable(Integer)).void }
155750
+ def initialize(id: nil, index: nil); end
155751
+ end
155752
+ # Details of a Quote line to start the bill period from.
155753
+ sig {
155754
+ returns(T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillFrom::LineStartsAt))
155755
+ }
155756
+ def line_starts_at; end
155757
+ sig {
155758
+ params(_line_starts_at: T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillFrom::LineStartsAt)).returns(T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillFrom::LineStartsAt))
155759
+ }
155760
+ def line_starts_at=(_line_starts_at); end
155761
+ # A precise Unix timestamp.
155762
+ sig { returns(T.nilable(Integer)) }
155763
+ def timestamp; end
155764
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
155765
+ def timestamp=(_timestamp); end
155766
+ # The type of method to specify the `bill_from` time.
155767
+ sig { returns(String) }
155768
+ def type; end
155769
+ sig { params(_type: String).returns(String) }
155770
+ def type=(_type); end
155771
+ sig {
155772
+ params(line_starts_at: T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillFrom::LineStartsAt), timestamp: T.nilable(Integer), type: String).void
155773
+ }
155774
+ def initialize(line_starts_at: nil, timestamp: nil, type: nil); end
155775
+ end
155776
+ class BillUntil < ::Stripe::RequestParams
155777
+ class Duration < ::Stripe::RequestParams
155778
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
155779
+ sig { returns(String) }
155780
+ def interval; end
155781
+ sig { params(_interval: String).returns(String) }
155782
+ def interval=(_interval); end
155783
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
155784
+ sig { returns(Integer) }
155785
+ def interval_count; end
155786
+ sig { params(_interval_count: Integer).returns(Integer) }
155787
+ def interval_count=(_interval_count); end
155788
+ sig { params(interval: String, interval_count: Integer).void }
155789
+ def initialize(interval: nil, interval_count: nil); end
155790
+ end
155791
+ class LineEndsAt < ::Stripe::RequestParams
155792
+ # The ID of a quote line.
155793
+ sig { returns(T.nilable(String)) }
155794
+ def id; end
155795
+ sig { params(_id: T.nilable(String)).returns(T.nilable(String)) }
155796
+ def id=(_id); end
155797
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
155798
+ sig { returns(T.nilable(Integer)) }
155799
+ def index; end
155800
+ sig { params(_index: T.nilable(Integer)).returns(T.nilable(Integer)) }
155801
+ def index=(_index); end
155802
+ sig { params(id: T.nilable(String), index: T.nilable(Integer)).void }
155803
+ def initialize(id: nil, index: nil); end
155804
+ end
155805
+ # Details of the duration over which to bill.
155806
+ sig {
155807
+ returns(T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::Duration))
155808
+ }
155809
+ def duration; end
155810
+ sig {
155811
+ params(_duration: T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::Duration)).returns(T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::Duration))
155812
+ }
155813
+ def duration=(_duration); end
155814
+ # Details of a Quote line item from which to bill until.
155815
+ sig {
155816
+ returns(T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::LineEndsAt))
155817
+ }
155818
+ def line_ends_at; end
155819
+ sig {
155820
+ params(_line_ends_at: T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::LineEndsAt)).returns(T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::LineEndsAt))
155821
+ }
155822
+ def line_ends_at=(_line_ends_at); end
155823
+ # A precise Unix timestamp.
155824
+ sig { returns(T.nilable(Integer)) }
155825
+ def timestamp; end
155826
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
155827
+ def timestamp=(_timestamp); end
155828
+ # The type of method to specify the `bill_until` time.
155829
+ sig { returns(String) }
155830
+ def type; end
155831
+ sig { params(_type: String).returns(String) }
155832
+ def type=(_type); end
155833
+ sig {
155834
+ params(duration: T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::Duration), line_ends_at: T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil::LineEndsAt), timestamp: T.nilable(Integer), type: String).void
155835
+ }
155836
+ def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil); end
155837
+ end
155838
+ # Configure billing schedule differently for individual subscription items.
155839
+ sig {
155840
+ returns(T.nilable(T::Array[QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::AppliesTo]))
155841
+ }
155842
+ def applies_to; end
155843
+ sig {
155844
+ params(_applies_to: T.nilable(T::Array[QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::AppliesTo])).returns(T.nilable(T::Array[QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::AppliesTo]))
155845
+ }
155846
+ def applies_to=(_applies_to); end
155847
+ # The start of the period to bill from when the Quote is accepted.
155848
+ sig {
155849
+ returns(T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillFrom))
155850
+ }
155851
+ def bill_from; end
155852
+ sig {
155853
+ params(_bill_from: T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillFrom)).returns(T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillFrom))
155854
+ }
155855
+ def bill_from=(_bill_from); end
155856
+ # The end of the period to bill until when the Quote is accepted.
155857
+ sig {
155858
+ returns(T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil))
155859
+ }
155860
+ def bill_until; end
155861
+ sig {
155862
+ params(_bill_until: T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil)).returns(T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil))
155863
+ }
155864
+ def bill_until=(_bill_until); end
155865
+ # Specify a key for the billing schedule. Must be unique to this field, alphanumeric, and up to 200 characters. If not provided, a unique key will be generated.
155866
+ sig { returns(T.nilable(String)) }
155867
+ def key; end
155868
+ sig { params(_key: T.nilable(String)).returns(T.nilable(String)) }
155869
+ def key=(_key); end
155870
+ sig {
155871
+ params(applies_to: T.nilable(T::Array[QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::AppliesTo]), bill_from: T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillFrom), bill_until: T.nilable(QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule::BillUntil), key: T.nilable(String)).void
155872
+ }
155873
+ def initialize(applies_to: nil, bill_from: nil, bill_until: nil, key: nil); end
155874
+ end
154049
155875
  # Whether the override applies to an existing Subscription Schedule or a new Subscription Schedule.
154050
155876
  sig { returns(QuoteUpdateParams::SubscriptionDataOverride::AppliesTo) }
154051
155877
  def applies_to; end
@@ -154093,8 +155919,22 @@ module Stripe
154093
155919
  def proration_behavior; end
154094
155920
  sig { params(_proration_behavior: T.nilable(String)).returns(T.nilable(String)) }
154095
155921
  def proration_behavior=(_proration_behavior); end
155922
+ # Billing schedules that will be applied to the subscription or subscription schedule created when the quote is accepted.
154096
155923
  sig {
154097
- params(applies_to: QuoteUpdateParams::SubscriptionDataOverride::AppliesTo, bill_on_acceptance: T.nilable(T.any(String, QuoteUpdateParams::SubscriptionDataOverride::BillOnAcceptance)), billing_behavior: T.nilable(String), customer: T.nilable(String), description: T.nilable(String), end_behavior: T.nilable(String), proration_behavior: T.nilable(String)).void
155924
+ returns(T.nilable(T.any(String, T::Array[QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule])))
155925
+ }
155926
+ def billing_schedules; end
155927
+ sig {
155928
+ params(_billing_schedules: T.nilable(T.any(String, T::Array[QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule]))).returns(T.nilable(T.any(String, T::Array[QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule])))
155929
+ }
155930
+ def billing_schedules=(_billing_schedules); end
155931
+ # Configures how the subscription schedule handles billing for phase transitions when the quote is accepted. Possible values are `phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.
155932
+ sig { returns(T.nilable(String)) }
155933
+ def phase_effective_at; end
155934
+ sig { params(_phase_effective_at: T.nilable(String)).returns(T.nilable(String)) }
155935
+ def phase_effective_at=(_phase_effective_at); end
155936
+ sig {
155937
+ params(applies_to: QuoteUpdateParams::SubscriptionDataOverride::AppliesTo, bill_on_acceptance: T.nilable(T.any(String, QuoteUpdateParams::SubscriptionDataOverride::BillOnAcceptance)), billing_behavior: T.nilable(String), customer: T.nilable(String), description: T.nilable(String), end_behavior: T.nilable(String), proration_behavior: T.nilable(String), billing_schedules: T.nilable(T.any(String, T::Array[QuoteUpdateParams::SubscriptionDataOverride::BillingSchedule])), phase_effective_at: T.nilable(String)).void
154098
155938
  }
154099
155939
  def initialize(
154100
155940
  applies_to: nil,
@@ -154103,7 +155943,9 @@ module Stripe
154103
155943
  customer: nil,
154104
155944
  description: nil,
154105
155945
  end_behavior: nil,
154106
- proration_behavior: nil
155946
+ proration_behavior: nil,
155947
+ billing_schedules: nil,
155948
+ phase_effective_at: nil
154107
155949
  ); end
154108
155950
  end
154109
155951
  class TransferData < ::Stripe::RequestParams
@@ -163573,6 +165415,86 @@ module Stripe
163573
165415
  }
163574
165416
  def initialize(flexible: nil, type: nil); end
163575
165417
  end
165418
+ class BillingSchedule < ::Stripe::RequestParams
165419
+ class AppliesTo < ::Stripe::RequestParams
165420
+ # The ID of the price object.
165421
+ sig { returns(T.nilable(String)) }
165422
+ def price; end
165423
+ sig { params(_price: T.nilable(String)).returns(T.nilable(String)) }
165424
+ def price=(_price); end
165425
+ # Controls which subscription items the billing schedule applies to.
165426
+ sig { returns(String) }
165427
+ def type; end
165428
+ sig { params(_type: String).returns(String) }
165429
+ def type=(_type); end
165430
+ sig { params(price: T.nilable(String), type: String).void }
165431
+ def initialize(price: nil, type: nil); end
165432
+ end
165433
+ class BillUntil < ::Stripe::RequestParams
165434
+ class Duration < ::Stripe::RequestParams
165435
+ # Specifies billing duration. Either `day`, `week`, `month` or `year`.
165436
+ sig { returns(String) }
165437
+ def interval; end
165438
+ sig { params(_interval: String).returns(String) }
165439
+ def interval=(_interval); end
165440
+ # The multiplier applied to the interval.
165441
+ sig { returns(T.nilable(Integer)) }
165442
+ def interval_count; end
165443
+ sig { params(_interval_count: T.nilable(Integer)).returns(T.nilable(Integer)) }
165444
+ def interval_count=(_interval_count); end
165445
+ sig { params(interval: String, interval_count: T.nilable(Integer)).void }
165446
+ def initialize(interval: nil, interval_count: nil); end
165447
+ end
165448
+ # Specifies the billing period.
165449
+ sig {
165450
+ returns(T.nilable(SubscriptionScheduleCreateParams::BillingSchedule::BillUntil::Duration))
165451
+ }
165452
+ def duration; end
165453
+ sig {
165454
+ params(_duration: T.nilable(SubscriptionScheduleCreateParams::BillingSchedule::BillUntil::Duration)).returns(T.nilable(SubscriptionScheduleCreateParams::BillingSchedule::BillUntil::Duration))
165455
+ }
165456
+ def duration=(_duration); end
165457
+ # The end date of the billing schedule.
165458
+ sig { returns(T.nilable(Integer)) }
165459
+ def timestamp; end
165460
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
165461
+ def timestamp=(_timestamp); end
165462
+ # Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`.
165463
+ sig { returns(String) }
165464
+ def type; end
165465
+ sig { params(_type: String).returns(String) }
165466
+ def type=(_type); end
165467
+ sig {
165468
+ params(duration: T.nilable(SubscriptionScheduleCreateParams::BillingSchedule::BillUntil::Duration), timestamp: T.nilable(Integer), type: String).void
165469
+ }
165470
+ def initialize(duration: nil, timestamp: nil, type: nil); end
165471
+ end
165472
+ # Configure billing schedule differently for individual subscription items.
165473
+ sig {
165474
+ returns(T.nilable(T::Array[SubscriptionScheduleCreateParams::BillingSchedule::AppliesTo]))
165475
+ }
165476
+ def applies_to; end
165477
+ sig {
165478
+ params(_applies_to: T.nilable(T::Array[SubscriptionScheduleCreateParams::BillingSchedule::AppliesTo])).returns(T.nilable(T::Array[SubscriptionScheduleCreateParams::BillingSchedule::AppliesTo]))
165479
+ }
165480
+ def applies_to=(_applies_to); end
165481
+ # The end date for the billing schedule.
165482
+ sig { returns(SubscriptionScheduleCreateParams::BillingSchedule::BillUntil) }
165483
+ def bill_until; end
165484
+ sig {
165485
+ params(_bill_until: SubscriptionScheduleCreateParams::BillingSchedule::BillUntil).returns(SubscriptionScheduleCreateParams::BillingSchedule::BillUntil)
165486
+ }
165487
+ def bill_until=(_bill_until); end
165488
+ # Specify a key for the billing schedule. Must be unique to this field, alphanumeric, and up to 200 characters. If not provided, a unique key will be generated.
165489
+ sig { returns(T.nilable(String)) }
165490
+ def key; end
165491
+ sig { params(_key: T.nilable(String)).returns(T.nilable(String)) }
165492
+ def key=(_key); end
165493
+ sig {
165494
+ params(applies_to: T.nilable(T::Array[SubscriptionScheduleCreateParams::BillingSchedule::AppliesTo]), bill_until: SubscriptionScheduleCreateParams::BillingSchedule::BillUntil, key: T.nilable(String)).void
165495
+ }
165496
+ def initialize(applies_to: nil, bill_until: nil, key: nil); end
165497
+ end
163576
165498
  class DefaultSettings < ::Stripe::RequestParams
163577
165499
  class AutomaticTax < ::Stripe::RequestParams
163578
165500
  class Liability < ::Stripe::RequestParams
@@ -163743,8 +165665,13 @@ module Stripe
163743
165665
  params(_transfer_data: T.nilable(T.any(String, SubscriptionScheduleCreateParams::DefaultSettings::TransferData))).returns(T.nilable(T.any(String, SubscriptionScheduleCreateParams::DefaultSettings::TransferData)))
163744
165666
  }
163745
165667
  def transfer_data=(_transfer_data); end
165668
+ # Configures how the subscription schedule handles billing for phase transitions. Possible values are `phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.
165669
+ sig { returns(T.nilable(String)) }
165670
+ def phase_effective_at; end
165671
+ sig { params(_phase_effective_at: T.nilable(String)).returns(T.nilable(String)) }
165672
+ def phase_effective_at=(_phase_effective_at); end
163746
165673
  sig {
163747
- params(application_fee_percent: T.nilable(Float), automatic_tax: T.nilable(SubscriptionScheduleCreateParams::DefaultSettings::AutomaticTax), billing_cycle_anchor: T.nilable(String), billing_thresholds: T.nilable(T.any(String, SubscriptionScheduleCreateParams::DefaultSettings::BillingThresholds)), collection_method: T.nilable(String), default_payment_method: T.nilable(String), description: T.nilable(String), invoice_settings: T.nilable(SubscriptionScheduleCreateParams::DefaultSettings::InvoiceSettings), on_behalf_of: T.nilable(String), transfer_data: T.nilable(T.any(String, SubscriptionScheduleCreateParams::DefaultSettings::TransferData))).void
165674
+ params(application_fee_percent: T.nilable(Float), automatic_tax: T.nilable(SubscriptionScheduleCreateParams::DefaultSettings::AutomaticTax), billing_cycle_anchor: T.nilable(String), billing_thresholds: T.nilable(T.any(String, SubscriptionScheduleCreateParams::DefaultSettings::BillingThresholds)), collection_method: T.nilable(String), default_payment_method: T.nilable(String), description: T.nilable(String), invoice_settings: T.nilable(SubscriptionScheduleCreateParams::DefaultSettings::InvoiceSettings), on_behalf_of: T.nilable(String), transfer_data: T.nilable(T.any(String, SubscriptionScheduleCreateParams::DefaultSettings::TransferData)), phase_effective_at: T.nilable(String)).void
163748
165675
  }
163749
165676
  def initialize(
163750
165677
  application_fee_percent: nil,
@@ -163756,7 +165683,8 @@ module Stripe
163756
165683
  description: nil,
163757
165684
  invoice_settings: nil,
163758
165685
  on_behalf_of: nil,
163759
- transfer_data: nil
165686
+ transfer_data: nil,
165687
+ phase_effective_at: nil
163760
165688
  ); end
163761
165689
  end
163762
165690
  class Phase < ::Stripe::RequestParams
@@ -164688,8 +166616,15 @@ module Stripe
164688
166616
  params(_start_date: T.nilable(T.any(Integer, String))).returns(T.nilable(T.any(Integer, String)))
164689
166617
  }
164690
166618
  def start_date=(_start_date); end
166619
+ # Sets the billing schedules for the subscription schedule.
166620
+ sig { returns(T.nilable(T::Array[SubscriptionScheduleCreateParams::BillingSchedule])) }
166621
+ def billing_schedules; end
166622
+ sig {
166623
+ params(_billing_schedules: T.nilable(T::Array[SubscriptionScheduleCreateParams::BillingSchedule])).returns(T.nilable(T::Array[SubscriptionScheduleCreateParams::BillingSchedule]))
166624
+ }
166625
+ def billing_schedules=(_billing_schedules); end
164691
166626
  sig {
164692
- params(billing_behavior: T.nilable(String), billing_mode: T.nilable(SubscriptionScheduleCreateParams::BillingMode), customer: T.nilable(String), customer_account: T.nilable(String), default_settings: T.nilable(SubscriptionScheduleCreateParams::DefaultSettings), end_behavior: T.nilable(String), expand: T.nilable(T::Array[String]), from_subscription: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), phases: T.nilable(T::Array[SubscriptionScheduleCreateParams::Phase]), prebilling: T.nilable(SubscriptionScheduleCreateParams::Prebilling), start_date: T.nilable(T.any(Integer, String))).void
166627
+ params(billing_behavior: T.nilable(String), billing_mode: T.nilable(SubscriptionScheduleCreateParams::BillingMode), customer: T.nilable(String), customer_account: T.nilable(String), default_settings: T.nilable(SubscriptionScheduleCreateParams::DefaultSettings), end_behavior: T.nilable(String), expand: T.nilable(T::Array[String]), from_subscription: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), phases: T.nilable(T::Array[SubscriptionScheduleCreateParams::Phase]), prebilling: T.nilable(SubscriptionScheduleCreateParams::Prebilling), start_date: T.nilable(T.any(Integer, String)), billing_schedules: T.nilable(T::Array[SubscriptionScheduleCreateParams::BillingSchedule])).void
164693
166628
  }
164694
166629
  def initialize(
164695
166630
  billing_behavior: nil,
@@ -164703,13 +166638,94 @@ module Stripe
164703
166638
  metadata: nil,
164704
166639
  phases: nil,
164705
166640
  prebilling: nil,
164706
- start_date: nil
166641
+ start_date: nil,
166642
+ billing_schedules: nil
164707
166643
  ); end
164708
166644
  end
164709
166645
  end
164710
166646
  # typed: true
164711
166647
  module Stripe
164712
166648
  class SubscriptionScheduleUpdateParams < ::Stripe::RequestParams
166649
+ class BillingSchedule < ::Stripe::RequestParams
166650
+ class AppliesTo < ::Stripe::RequestParams
166651
+ # The ID of the price object.
166652
+ sig { returns(T.nilable(String)) }
166653
+ def price; end
166654
+ sig { params(_price: T.nilable(String)).returns(T.nilable(String)) }
166655
+ def price=(_price); end
166656
+ # Controls which subscription items the billing schedule applies to.
166657
+ sig { returns(String) }
166658
+ def type; end
166659
+ sig { params(_type: String).returns(String) }
166660
+ def type=(_type); end
166661
+ sig { params(price: T.nilable(String), type: String).void }
166662
+ def initialize(price: nil, type: nil); end
166663
+ end
166664
+ class BillUntil < ::Stripe::RequestParams
166665
+ class Duration < ::Stripe::RequestParams
166666
+ # Specifies billing duration. Either `day`, `week`, `month` or `year`.
166667
+ sig { returns(String) }
166668
+ def interval; end
166669
+ sig { params(_interval: String).returns(String) }
166670
+ def interval=(_interval); end
166671
+ # The multiplier applied to the interval.
166672
+ sig { returns(T.nilable(Integer)) }
166673
+ def interval_count; end
166674
+ sig { params(_interval_count: T.nilable(Integer)).returns(T.nilable(Integer)) }
166675
+ def interval_count=(_interval_count); end
166676
+ sig { params(interval: String, interval_count: T.nilable(Integer)).void }
166677
+ def initialize(interval: nil, interval_count: nil); end
166678
+ end
166679
+ # Specifies the billing period.
166680
+ sig {
166681
+ returns(T.nilable(SubscriptionScheduleUpdateParams::BillingSchedule::BillUntil::Duration))
166682
+ }
166683
+ def duration; end
166684
+ sig {
166685
+ params(_duration: T.nilable(SubscriptionScheduleUpdateParams::BillingSchedule::BillUntil::Duration)).returns(T.nilable(SubscriptionScheduleUpdateParams::BillingSchedule::BillUntil::Duration))
166686
+ }
166687
+ def duration=(_duration); end
166688
+ # The end date of the billing schedule.
166689
+ sig { returns(T.nilable(Integer)) }
166690
+ def timestamp; end
166691
+ sig { params(_timestamp: T.nilable(Integer)).returns(T.nilable(Integer)) }
166692
+ def timestamp=(_timestamp); end
166693
+ # Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`.
166694
+ sig { returns(String) }
166695
+ def type; end
166696
+ sig { params(_type: String).returns(String) }
166697
+ def type=(_type); end
166698
+ sig {
166699
+ params(duration: T.nilable(SubscriptionScheduleUpdateParams::BillingSchedule::BillUntil::Duration), timestamp: T.nilable(Integer), type: String).void
166700
+ }
166701
+ def initialize(duration: nil, timestamp: nil, type: nil); end
166702
+ end
166703
+ # Configure billing schedule differently for individual subscription items.
166704
+ sig {
166705
+ returns(T.nilable(T::Array[SubscriptionScheduleUpdateParams::BillingSchedule::AppliesTo]))
166706
+ }
166707
+ def applies_to; end
166708
+ sig {
166709
+ params(_applies_to: T.nilable(T::Array[SubscriptionScheduleUpdateParams::BillingSchedule::AppliesTo])).returns(T.nilable(T::Array[SubscriptionScheduleUpdateParams::BillingSchedule::AppliesTo]))
166710
+ }
166711
+ def applies_to=(_applies_to); end
166712
+ # The end date for the billing schedule.
166713
+ sig { returns(T.nilable(SubscriptionScheduleUpdateParams::BillingSchedule::BillUntil)) }
166714
+ def bill_until; end
166715
+ sig {
166716
+ params(_bill_until: T.nilable(SubscriptionScheduleUpdateParams::BillingSchedule::BillUntil)).returns(T.nilable(SubscriptionScheduleUpdateParams::BillingSchedule::BillUntil))
166717
+ }
166718
+ def bill_until=(_bill_until); end
166719
+ # Specify a key for the billing schedule. Must be unique to this field, alphanumeric, and up to 200 characters. If not provided, a unique key will be generated.
166720
+ sig { returns(T.nilable(String)) }
166721
+ def key; end
166722
+ sig { params(_key: T.nilable(String)).returns(T.nilable(String)) }
166723
+ def key=(_key); end
166724
+ sig {
166725
+ params(applies_to: T.nilable(T::Array[SubscriptionScheduleUpdateParams::BillingSchedule::AppliesTo]), bill_until: T.nilable(SubscriptionScheduleUpdateParams::BillingSchedule::BillUntil), key: T.nilable(String)).void
166726
+ }
166727
+ def initialize(applies_to: nil, bill_until: nil, key: nil); end
166728
+ end
164713
166729
  class DefaultSettings < ::Stripe::RequestParams
164714
166730
  class AutomaticTax < ::Stripe::RequestParams
164715
166731
  class Liability < ::Stripe::RequestParams
@@ -164880,8 +166896,13 @@ module Stripe
164880
166896
  params(_transfer_data: T.nilable(T.any(String, SubscriptionScheduleUpdateParams::DefaultSettings::TransferData))).returns(T.nilable(T.any(String, SubscriptionScheduleUpdateParams::DefaultSettings::TransferData)))
164881
166897
  }
164882
166898
  def transfer_data=(_transfer_data); end
166899
+ # Configures how the subscription schedule handles billing for phase transitions. Possible values are `phase_start` (default) or `billing_period_start`. `phase_start` bills based on the current state of the subscription, ignoring changes scheduled in future phases. `billing_period_start` bills predictively for upcoming phase transitions within the current billing cycle, including pricing changes and service period adjustments that will occur before the next invoice.
166900
+ sig { returns(T.nilable(String)) }
166901
+ def phase_effective_at; end
166902
+ sig { params(_phase_effective_at: T.nilable(String)).returns(T.nilable(String)) }
166903
+ def phase_effective_at=(_phase_effective_at); end
164883
166904
  sig {
164884
- params(application_fee_percent: T.nilable(Float), automatic_tax: T.nilable(SubscriptionScheduleUpdateParams::DefaultSettings::AutomaticTax), billing_cycle_anchor: T.nilable(String), billing_thresholds: T.nilable(T.any(String, SubscriptionScheduleUpdateParams::DefaultSettings::BillingThresholds)), collection_method: T.nilable(String), default_payment_method: T.nilable(String), description: T.nilable(String), invoice_settings: T.nilable(SubscriptionScheduleUpdateParams::DefaultSettings::InvoiceSettings), on_behalf_of: T.nilable(String), transfer_data: T.nilable(T.any(String, SubscriptionScheduleUpdateParams::DefaultSettings::TransferData))).void
166905
+ params(application_fee_percent: T.nilable(Float), automatic_tax: T.nilable(SubscriptionScheduleUpdateParams::DefaultSettings::AutomaticTax), billing_cycle_anchor: T.nilable(String), billing_thresholds: T.nilable(T.any(String, SubscriptionScheduleUpdateParams::DefaultSettings::BillingThresholds)), collection_method: T.nilable(String), default_payment_method: T.nilable(String), description: T.nilable(String), invoice_settings: T.nilable(SubscriptionScheduleUpdateParams::DefaultSettings::InvoiceSettings), on_behalf_of: T.nilable(String), transfer_data: T.nilable(T.any(String, SubscriptionScheduleUpdateParams::DefaultSettings::TransferData)), phase_effective_at: T.nilable(String)).void
164885
166906
  }
164886
166907
  def initialize(
164887
166908
  application_fee_percent: nil,
@@ -164893,7 +166914,8 @@ module Stripe
164893
166914
  description: nil,
164894
166915
  invoice_settings: nil,
164895
166916
  on_behalf_of: nil,
164896
- transfer_data: nil
166917
+ transfer_data: nil,
166918
+ phase_effective_at: nil
164897
166919
  ); end
164898
166920
  end
164899
166921
  class Phase < ::Stripe::RequestParams
@@ -165813,8 +167835,15 @@ module Stripe
165813
167835
  def proration_behavior; end
165814
167836
  sig { params(_proration_behavior: T.nilable(String)).returns(T.nilable(String)) }
165815
167837
  def proration_behavior=(_proration_behavior); end
167838
+ # Sets the billing schedules for the subscription schedule.
167839
+ sig { returns(T.nilable(T::Array[SubscriptionScheduleUpdateParams::BillingSchedule])) }
167840
+ def billing_schedules; end
165816
167841
  sig {
165817
- params(billing_behavior: T.nilable(String), default_settings: T.nilable(SubscriptionScheduleUpdateParams::DefaultSettings), end_behavior: T.nilable(String), expand: T.nilable(T::Array[String]), metadata: T.nilable(T.any(String, T::Hash[String, String])), phases: T.nilable(T::Array[SubscriptionScheduleUpdateParams::Phase]), prebilling: T.nilable(SubscriptionScheduleUpdateParams::Prebilling), proration_behavior: T.nilable(String)).void
167842
+ params(_billing_schedules: T.nilable(T::Array[SubscriptionScheduleUpdateParams::BillingSchedule])).returns(T.nilable(T::Array[SubscriptionScheduleUpdateParams::BillingSchedule]))
167843
+ }
167844
+ def billing_schedules=(_billing_schedules); end
167845
+ sig {
167846
+ params(billing_behavior: T.nilable(String), default_settings: T.nilable(SubscriptionScheduleUpdateParams::DefaultSettings), end_behavior: T.nilable(String), expand: T.nilable(T::Array[String]), metadata: T.nilable(T.any(String, T::Hash[String, String])), phases: T.nilable(T::Array[SubscriptionScheduleUpdateParams::Phase]), prebilling: T.nilable(SubscriptionScheduleUpdateParams::Prebilling), proration_behavior: T.nilable(String), billing_schedules: T.nilable(T::Array[SubscriptionScheduleUpdateParams::BillingSchedule])).void
165818
167847
  }
165819
167848
  def initialize(
165820
167849
  billing_behavior: nil,
@@ -165824,7 +167853,8 @@ module Stripe
165824
167853
  metadata: nil,
165825
167854
  phases: nil,
165826
167855
  prebilling: nil,
165827
- proration_behavior: nil
167856
+ proration_behavior: nil,
167857
+ billing_schedules: nil
165828
167858
  ); end
165829
167859
  end
165830
167860
  end
@@ -178320,6 +180350,34 @@ module Stripe
178320
180350
  title: nil
178321
180351
  ); end
178322
180352
  end
180353
+ class SelfReportedIncome < ::Stripe::RequestParams
180354
+ # Attribute for param field amount
180355
+ sig { returns(Integer) }
180356
+ def amount; end
180357
+ sig { params(_amount: Integer).returns(Integer) }
180358
+ def amount=(_amount); end
180359
+ # Attribute for param field currency
180360
+ sig { returns(String) }
180361
+ def currency; end
180362
+ sig { params(_currency: String).returns(String) }
180363
+ def currency=(_currency); end
180364
+ sig { params(amount: Integer, currency: String).void }
180365
+ def initialize(amount: nil, currency: nil); end
180366
+ end
180367
+ class SelfReportedMonthlyHousingPayment < ::Stripe::RequestParams
180368
+ # Attribute for param field amount
180369
+ sig { returns(Integer) }
180370
+ def amount; end
180371
+ sig { params(_amount: Integer).returns(Integer) }
180372
+ def amount=(_amount); end
180373
+ # Attribute for param field currency
180374
+ sig { returns(String) }
180375
+ def currency; end
180376
+ sig { params(_currency: String).returns(String) }
180377
+ def currency=(_currency); end
180378
+ sig { params(amount: Integer, currency: String).void }
180379
+ def initialize(amount: nil, currency: nil); end
180380
+ end
178323
180381
  class Verification < ::Stripe::RequestParams
178324
180382
  class AdditionalDocument < ::Stripe::RequestParams
178325
180383
  # The back of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
@@ -178503,8 +180561,24 @@ module Stripe
178503
180561
  params(_verification: T.nilable(TokenCreateParams::Account::Individual::Verification)).returns(T.nilable(TokenCreateParams::Account::Individual::Verification))
178504
180562
  }
178505
180563
  def verification=(_verification); end
180564
+ # The credit applicant's self-reported yearly income in minor units.
180565
+ sig { returns(T.nilable(TokenCreateParams::Account::Individual::SelfReportedIncome)) }
180566
+ def self_reported_income; end
180567
+ sig {
180568
+ params(_self_reported_income: T.nilable(TokenCreateParams::Account::Individual::SelfReportedIncome)).returns(T.nilable(TokenCreateParams::Account::Individual::SelfReportedIncome))
180569
+ }
180570
+ def self_reported_income=(_self_reported_income); end
180571
+ # The credit applicant's self-reported monthly housing payment in minor units.
178506
180572
  sig {
178507
- params(address: T.nilable(TokenCreateParams::Account::Individual::Address), address_kana: T.nilable(TokenCreateParams::Account::Individual::AddressKana), address_kanji: T.nilable(TokenCreateParams::Account::Individual::AddressKanji), dob: T.nilable(T.any(String, TokenCreateParams::Account::Individual::Dob)), email: T.nilable(String), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(TokenCreateParams::Account::Individual::RegisteredAddress), relationship: T.nilable(TokenCreateParams::Account::Individual::Relationship), ssn_last_4: T.nilable(String), verification: T.nilable(TokenCreateParams::Account::Individual::Verification)).void
180573
+ returns(T.nilable(TokenCreateParams::Account::Individual::SelfReportedMonthlyHousingPayment))
180574
+ }
180575
+ def self_reported_monthly_housing_payment; end
180576
+ sig {
180577
+ params(_self_reported_monthly_housing_payment: T.nilable(TokenCreateParams::Account::Individual::SelfReportedMonthlyHousingPayment)).returns(T.nilable(TokenCreateParams::Account::Individual::SelfReportedMonthlyHousingPayment))
180578
+ }
180579
+ def self_reported_monthly_housing_payment=(_self_reported_monthly_housing_payment); end
180580
+ sig {
180581
+ params(address: T.nilable(TokenCreateParams::Account::Individual::Address), address_kana: T.nilable(TokenCreateParams::Account::Individual::AddressKana), address_kanji: T.nilable(TokenCreateParams::Account::Individual::AddressKanji), dob: T.nilable(T.any(String, TokenCreateParams::Account::Individual::Dob)), email: T.nilable(String), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(TokenCreateParams::Account::Individual::RegisteredAddress), relationship: T.nilable(TokenCreateParams::Account::Individual::Relationship), ssn_last_4: T.nilable(String), verification: T.nilable(TokenCreateParams::Account::Individual::Verification), self_reported_income: T.nilable(TokenCreateParams::Account::Individual::SelfReportedIncome), self_reported_monthly_housing_payment: T.nilable(TokenCreateParams::Account::Individual::SelfReportedMonthlyHousingPayment)).void
178508
180582
  }
178509
180583
  def initialize(
178510
180584
  address: nil,
@@ -178529,7 +180603,9 @@ module Stripe
178529
180603
  registered_address: nil,
178530
180604
  relationship: nil,
178531
180605
  ssn_last_4: nil,
178532
- verification: nil
180606
+ verification: nil,
180607
+ self_reported_income: nil,
180608
+ self_reported_monthly_housing_payment: nil
178533
180609
  ); end
178534
180610
  end
178535
180611
  # The business type.
@@ -179075,6 +181151,34 @@ module Stripe
179075
181151
  title: nil
179076
181152
  ); end
179077
181153
  end
181154
+ class SelfReportedIncome < ::Stripe::RequestParams
181155
+ # Attribute for param field amount
181156
+ sig { returns(Integer) }
181157
+ def amount; end
181158
+ sig { params(_amount: Integer).returns(Integer) }
181159
+ def amount=(_amount); end
181160
+ # Attribute for param field currency
181161
+ sig { returns(String) }
181162
+ def currency; end
181163
+ sig { params(_currency: String).returns(String) }
181164
+ def currency=(_currency); end
181165
+ sig { params(amount: Integer, currency: String).void }
181166
+ def initialize(amount: nil, currency: nil); end
181167
+ end
181168
+ class SelfReportedMonthlyHousingPayment < ::Stripe::RequestParams
181169
+ # Attribute for param field amount
181170
+ sig { returns(Integer) }
181171
+ def amount; end
181172
+ sig { params(_amount: Integer).returns(Integer) }
181173
+ def amount=(_amount); end
181174
+ # Attribute for param field currency
181175
+ sig { returns(String) }
181176
+ def currency; end
181177
+ sig { params(_currency: String).returns(String) }
181178
+ def currency=(_currency); end
181179
+ sig { params(amount: Integer, currency: String).void }
181180
+ def initialize(amount: nil, currency: nil); end
181181
+ end
179078
181182
  class UsCfpbData < ::Stripe::RequestParams
179079
181183
  class EthnicityDetails < ::Stripe::RequestParams
179080
181184
  # The persons ethnicity
@@ -179339,8 +181443,22 @@ module Stripe
179339
181443
  params(_verification: T.nilable(TokenCreateParams::Person::Verification)).returns(T.nilable(TokenCreateParams::Person::Verification))
179340
181444
  }
179341
181445
  def verification=(_verification); end
181446
+ # The credit applicant's self-reported yearly income in minor units.
181447
+ sig { returns(T.nilable(TokenCreateParams::Person::SelfReportedIncome)) }
181448
+ def self_reported_income; end
181449
+ sig {
181450
+ params(_self_reported_income: T.nilable(TokenCreateParams::Person::SelfReportedIncome)).returns(T.nilable(TokenCreateParams::Person::SelfReportedIncome))
181451
+ }
181452
+ def self_reported_income=(_self_reported_income); end
181453
+ # The credit applicant's self-reported monthly housing payment in minor units.
181454
+ sig { returns(T.nilable(TokenCreateParams::Person::SelfReportedMonthlyHousingPayment)) }
181455
+ def self_reported_monthly_housing_payment; end
181456
+ sig {
181457
+ params(_self_reported_monthly_housing_payment: T.nilable(TokenCreateParams::Person::SelfReportedMonthlyHousingPayment)).returns(T.nilable(TokenCreateParams::Person::SelfReportedMonthlyHousingPayment))
181458
+ }
181459
+ def self_reported_monthly_housing_payment=(_self_reported_monthly_housing_payment); end
179342
181460
  sig {
179343
- params(additional_tos_acceptances: T.nilable(TokenCreateParams::Person::AdditionalTosAcceptances), address: T.nilable(TokenCreateParams::Person::Address), address_kana: T.nilable(TokenCreateParams::Person::AddressKana), address_kanji: T.nilable(TokenCreateParams::Person::AddressKanji), dob: T.nilable(T.any(String, TokenCreateParams::Person::Dob)), documents: T.nilable(TokenCreateParams::Person::Documents), email: T.nilable(String), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), nationality: T.nilable(String), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(TokenCreateParams::Person::RegisteredAddress), relationship: T.nilable(TokenCreateParams::Person::Relationship), ssn_last_4: T.nilable(String), us_cfpb_data: T.nilable(TokenCreateParams::Person::UsCfpbData), verification: T.nilable(TokenCreateParams::Person::Verification)).void
181461
+ params(additional_tos_acceptances: T.nilable(TokenCreateParams::Person::AdditionalTosAcceptances), address: T.nilable(TokenCreateParams::Person::Address), address_kana: T.nilable(TokenCreateParams::Person::AddressKana), address_kanji: T.nilable(TokenCreateParams::Person::AddressKanji), dob: T.nilable(T.any(String, TokenCreateParams::Person::Dob)), documents: T.nilable(TokenCreateParams::Person::Documents), email: T.nilable(String), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), nationality: T.nilable(String), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(TokenCreateParams::Person::RegisteredAddress), relationship: T.nilable(TokenCreateParams::Person::Relationship), ssn_last_4: T.nilable(String), us_cfpb_data: T.nilable(TokenCreateParams::Person::UsCfpbData), verification: T.nilable(TokenCreateParams::Person::Verification), self_reported_income: T.nilable(TokenCreateParams::Person::SelfReportedIncome), self_reported_monthly_housing_payment: T.nilable(TokenCreateParams::Person::SelfReportedMonthlyHousingPayment)).void
179344
181462
  }
179345
181463
  def initialize(
179346
181464
  additional_tos_acceptances: nil,
@@ -179369,7 +181487,9 @@ module Stripe
179369
181487
  relationship: nil,
179370
181488
  ssn_last_4: nil,
179371
181489
  us_cfpb_data: nil,
179372
- verification: nil
181490
+ verification: nil,
181491
+ self_reported_income: nil,
181492
+ self_reported_monthly_housing_payment: nil
179373
181493
  ); end
179374
181494
  end
179375
181495
  class Pii < ::Stripe::RequestParams
@@ -183725,6 +185845,34 @@ module Stripe
183725
185845
  title: nil
183726
185846
  ); end
183727
185847
  end
185848
+ class SelfReportedIncome < ::Stripe::RequestParams
185849
+ # Attribute for param field amount
185850
+ sig { returns(Integer) }
185851
+ def amount; end
185852
+ sig { params(_amount: Integer).returns(Integer) }
185853
+ def amount=(_amount); end
185854
+ # Attribute for param field currency
185855
+ sig { returns(String) }
185856
+ def currency; end
185857
+ sig { params(_currency: String).returns(String) }
185858
+ def currency=(_currency); end
185859
+ sig { params(amount: Integer, currency: String).void }
185860
+ def initialize(amount: nil, currency: nil); end
185861
+ end
185862
+ class SelfReportedMonthlyHousingPayment < ::Stripe::RequestParams
185863
+ # Attribute for param field amount
185864
+ sig { returns(Integer) }
185865
+ def amount; end
185866
+ sig { params(_amount: Integer).returns(Integer) }
185867
+ def amount=(_amount); end
185868
+ # Attribute for param field currency
185869
+ sig { returns(String) }
185870
+ def currency; end
185871
+ sig { params(_currency: String).returns(String) }
185872
+ def currency=(_currency); end
185873
+ sig { params(amount: Integer, currency: String).void }
185874
+ def initialize(amount: nil, currency: nil); end
185875
+ end
183728
185876
  class UsCfpbData < ::Stripe::RequestParams
183729
185877
  class EthnicityDetails < ::Stripe::RequestParams
183730
185878
  # The persons ethnicity
@@ -183997,8 +186145,22 @@ module Stripe
183997
186145
  params(_verification: T.nilable(AccountPersonUpdateParams::Verification)).returns(T.nilable(AccountPersonUpdateParams::Verification))
183998
186146
  }
183999
186147
  def verification=(_verification); end
186148
+ # The credit applicant's self-reported yearly income in minor units.
186149
+ sig { returns(T.nilable(AccountPersonUpdateParams::SelfReportedIncome)) }
186150
+ def self_reported_income; end
184000
186151
  sig {
184001
- params(additional_tos_acceptances: T.nilable(AccountPersonUpdateParams::AdditionalTosAcceptances), address: T.nilable(AccountPersonUpdateParams::Address), address_kana: T.nilable(AccountPersonUpdateParams::AddressKana), address_kanji: T.nilable(AccountPersonUpdateParams::AddressKanji), dob: T.nilable(T.any(String, AccountPersonUpdateParams::Dob)), documents: T.nilable(AccountPersonUpdateParams::Documents), email: T.nilable(String), expand: T.nilable(T::Array[String]), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), nationality: T.nilable(String), person_token: T.nilable(String), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(AccountPersonUpdateParams::RegisteredAddress), relationship: T.nilable(AccountPersonUpdateParams::Relationship), ssn_last_4: T.nilable(String), us_cfpb_data: T.nilable(AccountPersonUpdateParams::UsCfpbData), verification: T.nilable(AccountPersonUpdateParams::Verification)).void
186152
+ params(_self_reported_income: T.nilable(AccountPersonUpdateParams::SelfReportedIncome)).returns(T.nilable(AccountPersonUpdateParams::SelfReportedIncome))
186153
+ }
186154
+ def self_reported_income=(_self_reported_income); end
186155
+ # The credit applicant's self-reported monthly housing payment in minor units.
186156
+ sig { returns(T.nilable(AccountPersonUpdateParams::SelfReportedMonthlyHousingPayment)) }
186157
+ def self_reported_monthly_housing_payment; end
186158
+ sig {
186159
+ params(_self_reported_monthly_housing_payment: T.nilable(AccountPersonUpdateParams::SelfReportedMonthlyHousingPayment)).returns(T.nilable(AccountPersonUpdateParams::SelfReportedMonthlyHousingPayment))
186160
+ }
186161
+ def self_reported_monthly_housing_payment=(_self_reported_monthly_housing_payment); end
186162
+ sig {
186163
+ params(additional_tos_acceptances: T.nilable(AccountPersonUpdateParams::AdditionalTosAcceptances), address: T.nilable(AccountPersonUpdateParams::Address), address_kana: T.nilable(AccountPersonUpdateParams::AddressKana), address_kanji: T.nilable(AccountPersonUpdateParams::AddressKanji), dob: T.nilable(T.any(String, AccountPersonUpdateParams::Dob)), documents: T.nilable(AccountPersonUpdateParams::Documents), email: T.nilable(String), expand: T.nilable(T::Array[String]), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), nationality: T.nilable(String), person_token: T.nilable(String), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(AccountPersonUpdateParams::RegisteredAddress), relationship: T.nilable(AccountPersonUpdateParams::Relationship), ssn_last_4: T.nilable(String), us_cfpb_data: T.nilable(AccountPersonUpdateParams::UsCfpbData), verification: T.nilable(AccountPersonUpdateParams::Verification), self_reported_income: T.nilable(AccountPersonUpdateParams::SelfReportedIncome), self_reported_monthly_housing_payment: T.nilable(AccountPersonUpdateParams::SelfReportedMonthlyHousingPayment)).void
184002
186164
  }
184003
186165
  def initialize(
184004
186166
  additional_tos_acceptances: nil,
@@ -184029,7 +186191,9 @@ module Stripe
184029
186191
  relationship: nil,
184030
186192
  ssn_last_4: nil,
184031
186193
  us_cfpb_data: nil,
184032
- verification: nil
186194
+ verification: nil,
186195
+ self_reported_income: nil,
186196
+ self_reported_monthly_housing_payment: nil
184033
186197
  ); end
184034
186198
  end
184035
186199
  end
@@ -184469,6 +186633,34 @@ module Stripe
184469
186633
  title: nil
184470
186634
  ); end
184471
186635
  end
186636
+ class SelfReportedIncome < ::Stripe::RequestParams
186637
+ # Attribute for param field amount
186638
+ sig { returns(Integer) }
186639
+ def amount; end
186640
+ sig { params(_amount: Integer).returns(Integer) }
186641
+ def amount=(_amount); end
186642
+ # Attribute for param field currency
186643
+ sig { returns(String) }
186644
+ def currency; end
186645
+ sig { params(_currency: String).returns(String) }
186646
+ def currency=(_currency); end
186647
+ sig { params(amount: Integer, currency: String).void }
186648
+ def initialize(amount: nil, currency: nil); end
186649
+ end
186650
+ class SelfReportedMonthlyHousingPayment < ::Stripe::RequestParams
186651
+ # Attribute for param field amount
186652
+ sig { returns(Integer) }
186653
+ def amount; end
186654
+ sig { params(_amount: Integer).returns(Integer) }
186655
+ def amount=(_amount); end
186656
+ # Attribute for param field currency
186657
+ sig { returns(String) }
186658
+ def currency; end
186659
+ sig { params(_currency: String).returns(String) }
186660
+ def currency=(_currency); end
186661
+ sig { params(amount: Integer, currency: String).void }
186662
+ def initialize(amount: nil, currency: nil); end
186663
+ end
184472
186664
  class UsCfpbData < ::Stripe::RequestParams
184473
186665
  class EthnicityDetails < ::Stripe::RequestParams
184474
186666
  # The persons ethnicity
@@ -184741,8 +186933,22 @@ module Stripe
184741
186933
  params(_verification: T.nilable(AccountPersonCreateParams::Verification)).returns(T.nilable(AccountPersonCreateParams::Verification))
184742
186934
  }
184743
186935
  def verification=(_verification); end
186936
+ # The credit applicant's self-reported yearly income in minor units.
186937
+ sig { returns(T.nilable(AccountPersonCreateParams::SelfReportedIncome)) }
186938
+ def self_reported_income; end
186939
+ sig {
186940
+ params(_self_reported_income: T.nilable(AccountPersonCreateParams::SelfReportedIncome)).returns(T.nilable(AccountPersonCreateParams::SelfReportedIncome))
186941
+ }
186942
+ def self_reported_income=(_self_reported_income); end
186943
+ # The credit applicant's self-reported monthly housing payment in minor units.
186944
+ sig { returns(T.nilable(AccountPersonCreateParams::SelfReportedMonthlyHousingPayment)) }
186945
+ def self_reported_monthly_housing_payment; end
186946
+ sig {
186947
+ params(_self_reported_monthly_housing_payment: T.nilable(AccountPersonCreateParams::SelfReportedMonthlyHousingPayment)).returns(T.nilable(AccountPersonCreateParams::SelfReportedMonthlyHousingPayment))
186948
+ }
186949
+ def self_reported_monthly_housing_payment=(_self_reported_monthly_housing_payment); end
184744
186950
  sig {
184745
- params(additional_tos_acceptances: T.nilable(AccountPersonCreateParams::AdditionalTosAcceptances), address: T.nilable(AccountPersonCreateParams::Address), address_kana: T.nilable(AccountPersonCreateParams::AddressKana), address_kanji: T.nilable(AccountPersonCreateParams::AddressKanji), dob: T.nilable(T.any(String, AccountPersonCreateParams::Dob)), documents: T.nilable(AccountPersonCreateParams::Documents), email: T.nilable(String), expand: T.nilable(T::Array[String]), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), nationality: T.nilable(String), person_token: T.nilable(String), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(AccountPersonCreateParams::RegisteredAddress), relationship: T.nilable(AccountPersonCreateParams::Relationship), ssn_last_4: T.nilable(String), us_cfpb_data: T.nilable(AccountPersonCreateParams::UsCfpbData), verification: T.nilable(AccountPersonCreateParams::Verification)).void
186951
+ params(additional_tos_acceptances: T.nilable(AccountPersonCreateParams::AdditionalTosAcceptances), address: T.nilable(AccountPersonCreateParams::Address), address_kana: T.nilable(AccountPersonCreateParams::AddressKana), address_kanji: T.nilable(AccountPersonCreateParams::AddressKanji), dob: T.nilable(T.any(String, AccountPersonCreateParams::Dob)), documents: T.nilable(AccountPersonCreateParams::Documents), email: T.nilable(String), expand: T.nilable(T::Array[String]), first_name: T.nilable(String), first_name_kana: T.nilable(String), first_name_kanji: T.nilable(String), full_name_aliases: T.nilable(T.any(String, T::Array[String])), gender: T.nilable(String), id_number: T.nilable(String), id_number_secondary: T.nilable(String), last_name: T.nilable(String), last_name_kana: T.nilable(String), last_name_kanji: T.nilable(String), maiden_name: T.nilable(String), metadata: T.nilable(T.any(String, T::Hash[String, String])), nationality: T.nilable(String), person_token: T.nilable(String), phone: T.nilable(String), political_exposure: T.nilable(String), registered_address: T.nilable(AccountPersonCreateParams::RegisteredAddress), relationship: T.nilable(AccountPersonCreateParams::Relationship), ssn_last_4: T.nilable(String), us_cfpb_data: T.nilable(AccountPersonCreateParams::UsCfpbData), verification: T.nilable(AccountPersonCreateParams::Verification), self_reported_income: T.nilable(AccountPersonCreateParams::SelfReportedIncome), self_reported_monthly_housing_payment: T.nilable(AccountPersonCreateParams::SelfReportedMonthlyHousingPayment)).void
184746
186952
  }
184747
186953
  def initialize(
184748
186954
  additional_tos_acceptances: nil,
@@ -184773,7 +186979,9 @@ module Stripe
184773
186979
  relationship: nil,
184774
186980
  ssn_last_4: nil,
184775
186981
  us_cfpb_data: nil,
184776
- verification: nil
186982
+ verification: nil,
186983
+ self_reported_income: nil,
186984
+ self_reported_monthly_housing_payment: nil
184777
186985
  ); end
184778
186986
  end
184779
186987
  end
@@ -187387,6 +189595,20 @@ module Stripe
187387
189595
  end
187388
189596
  end
187389
189597
  # typed: true
189598
+ module Stripe
189599
+ module Issuing
189600
+ class ProgramRetrieveParams < ::Stripe::RequestParams
189601
+ # Specifies which fields in the response should be expanded.
189602
+ sig { returns(T.nilable(T::Array[String])) }
189603
+ def expand; end
189604
+ sig { params(_expand: T.nilable(T::Array[String])).returns(T.nilable(T::Array[String])) }
189605
+ def expand=(_expand); end
189606
+ sig { params(expand: T.nilable(T::Array[String])).void }
189607
+ def initialize(expand: nil); end
189608
+ end
189609
+ end
189610
+ end
189611
+ # typed: true
187390
189612
  module Stripe
187391
189613
  module Issuing
187392
189614
  class TokenRetrieveParams < ::Stripe::RequestParams
@@ -188410,7 +190632,7 @@ module Stripe
188410
190632
  module TestHelpers
188411
190633
  module Capital
188412
190634
  class FinancingOfferCreateParams < ::Stripe::RequestParams
188413
- # Attribute for param field advance_amount
190635
+ # Amount of financing offered, in minor units. For example, 1,000 USD is represented as 100000.
188414
190636
  sig { returns(Integer) }
188415
190637
  def advance_amount; end
188416
190638
  sig { params(_advance_amount: Integer).returns(Integer) }
@@ -188420,22 +190642,22 @@ module Stripe
188420
190642
  def expand; end
188421
190643
  sig { params(_expand: T.nilable(T::Array[String])).returns(T.nilable(T::Array[String])) }
188422
190644
  def expand=(_expand); end
188423
- # Attribute for param field fee_amount
190645
+ # Fixed fee amount, in minor units. For example, 100 USD is represented as 10000.
188424
190646
  sig { returns(Integer) }
188425
190647
  def fee_amount; end
188426
190648
  sig { params(_fee_amount: Integer).returns(Integer) }
188427
190649
  def fee_amount=(_fee_amount); end
188428
- # Attribute for param field financing_type
190650
+ # The type of financing offer.
188429
190651
  sig { returns(String) }
188430
190652
  def financing_type; end
188431
190653
  sig { params(_financing_type: String).returns(String) }
188432
190654
  def financing_type=(_financing_type); end
188433
- # Attribute for param field status
190655
+ # The status of the financing offer.
188434
190656
  sig { returns(T.nilable(String)) }
188435
190657
  def status; end
188436
190658
  sig { params(_status: T.nilable(String)).returns(T.nilable(String)) }
188437
190659
  def status=(_status); end
188438
- # Attribute for param field withhold_rate
190660
+ # Per-transaction rate at which Stripe withholds funds to repay the financing.
188439
190661
  sig { returns(Float) }
188440
190662
  def withhold_rate; end
188441
190663
  sig { params(_withhold_rate: Float).returns(Float) }
@@ -188460,7 +190682,7 @@ module Stripe
188460
190682
  module TestHelpers
188461
190683
  module Capital
188462
190684
  class FinancingOfferRefillParams < ::Stripe::RequestParams
188463
- # Attribute for param field advance_amount
190685
+ # Amount of financing offered, in minor units. For example, 1,000 USD is represented as 100000.
188464
190686
  sig { returns(Integer) }
188465
190687
  def advance_amount; end
188466
190688
  sig { params(_advance_amount: Integer).returns(Integer) }
@@ -188470,22 +190692,22 @@ module Stripe
188470
190692
  def expand; end
188471
190693
  sig { params(_expand: T.nilable(T::Array[String])).returns(T.nilable(T::Array[String])) }
188472
190694
  def expand=(_expand); end
188473
- # Attribute for param field fee_amount
190695
+ # Fixed fee amount, in minor units. For example, 100 USD is represented as 10000.
188474
190696
  sig { returns(Integer) }
188475
190697
  def fee_amount; end
188476
190698
  sig { params(_fee_amount: Integer).returns(Integer) }
188477
190699
  def fee_amount=(_fee_amount); end
188478
- # Attribute for param field financing_type
190700
+ # The type of financing offer
188479
190701
  sig { returns(String) }
188480
190702
  def financing_type; end
188481
190703
  sig { params(_financing_type: String).returns(String) }
188482
190704
  def financing_type=(_financing_type); end
188483
- # Attribute for param field status
190705
+ # The status of the financing offer
188484
190706
  sig { returns(T.nilable(String)) }
188485
190707
  def status; end
188486
190708
  sig { params(_status: T.nilable(String)).returns(T.nilable(String)) }
188487
190709
  def status=(_status); end
188488
- # Attribute for param field withhold_rate
190710
+ # Per-transaction rate at which Stripe withholds funds to repay the financing.
188489
190711
  sig { returns(Float) }
188490
190712
  def withhold_rate; end
188491
190713
  sig { params(_withhold_rate: Float).returns(Float) }
@@ -212092,75 +214314,6 @@ module Stripe
212092
214314
  end
212093
214315
  end
212094
214316
  # typed: true
212095
- module Stripe
212096
- module V2
212097
- module Tax
212098
- class AutomaticRuleCreateParams < ::Stripe::RequestParams
212099
- # The BillableItem ID to set automatic Tax configuration for.
212100
- sig { returns(String) }
212101
- def billable_item; end
212102
- sig { params(_billable_item: String).returns(String) }
212103
- def billable_item=(_billable_item); end
212104
- # The TaxCode object to be used for automatic tax calculations.
212105
- sig { returns(String) }
212106
- def tax_code; end
212107
- sig { params(_tax_code: String).returns(String) }
212108
- def tax_code=(_tax_code); end
212109
- sig { params(billable_item: String, tax_code: String).void }
212110
- def initialize(billable_item: nil, tax_code: nil); end
212111
- end
212112
- end
212113
- end
212114
- end
212115
- # typed: true
212116
- module Stripe
212117
- module V2
212118
- module Tax
212119
- class AutomaticRuleFindParams < ::Stripe::RequestParams
212120
- # The BillableItem ID to search by.
212121
- sig { returns(String) }
212122
- def billable_item; end
212123
- sig { params(_billable_item: String).returns(String) }
212124
- def billable_item=(_billable_item); end
212125
- sig { params(billable_item: String).void }
212126
- def initialize(billable_item: nil); end
212127
- end
212128
- end
212129
- end
212130
- end
212131
- # typed: true
212132
- module Stripe
212133
- module V2
212134
- module Tax
212135
- class AutomaticRuleRetrieveParams < ::Stripe::RequestParams; end
212136
- end
212137
- end
212138
- end
212139
- # typed: true
212140
- module Stripe
212141
- module V2
212142
- module Tax
212143
- class AutomaticRuleUpdateParams < ::Stripe::RequestParams
212144
- # The TaxCode object to be used for automatic tax calculations.
212145
- sig { returns(String) }
212146
- def tax_code; end
212147
- sig { params(_tax_code: String).returns(String) }
212148
- def tax_code=(_tax_code); end
212149
- sig { params(tax_code: String).void }
212150
- def initialize(tax_code: nil); end
212151
- end
212152
- end
212153
- end
212154
- end
212155
- # typed: true
212156
- module Stripe
212157
- module V2
212158
- module Tax
212159
- class AutomaticRuleDeactivateParams < ::Stripe::RequestParams; end
212160
- end
212161
- end
212162
- end
212163
- # typed: true
212164
214317
  module Stripe
212165
214318
  module V2
212166
214319
  module TestHelpers