Class: Stripe::InvoiceService::CreatePreviewParams::ScheduleDetails

Inherits:
RequestParams
  • Object
show all
Defined in:
lib/stripe/services/invoice_service.rb

Defined Under Namespace

Classes: Amendment, BillingMode, Phase, Prebilling

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

#to_h

Constructor Details

#initialize(amendments: nil, billing_behavior: nil, billing_mode: nil, end_behavior: nil, phases: nil, prebilling: nil, proration_behavior: nil) ⇒ ScheduleDetails

Returns a new instance of ScheduleDetails.



3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
# File 'lib/stripe/services/invoice_service.rb', line 3502

def initialize(
  amendments: nil,
  billing_behavior: nil,
  billing_mode: nil,
  end_behavior: nil,
  phases: nil,
  prebilling: nil,
  proration_behavior: nil
)
  @amendments = amendments
  @billing_behavior = billing_behavior
  @billing_mode = billing_mode
  @end_behavior = end_behavior
  @phases = phases
  @prebilling = prebilling
  @proration_behavior = proration_behavior
end

Instance Attribute Details

#amendmentsObject

Changes to apply to the phases of the subscription schedule, in the order provided.



3488
3489
3490
# File 'lib/stripe/services/invoice_service.rb', line 3488

def amendments
  @amendments
end

#billing_behaviorObject

Configures when the subscription schedule generates prorations for phase transitions. Possible values are ‘prorate_on_next_phase` or `prorate_up_front` with the default being `prorate_on_next_phase`. `prorate_on_next_phase` will apply phase changes and generate prorations at transition time. `prorate_up_front` will bill for all phases within the current billing cycle up front.



3490
3491
3492
# File 'lib/stripe/services/invoice_service.rb', line 3490

def billing_behavior
  @billing_behavior
end

#billing_modeObject

Controls how prorations and invoices for subscriptions are calculated and orchestrated.



3492
3493
3494
# File 'lib/stripe/services/invoice_service.rb', line 3492

def billing_mode
  @billing_mode
end

#end_behaviorObject

Behavior of the subscription schedule and underlying subscription when it ends. Possible values are ‘release` or `cancel` with the default being `release`. `release` will end the subscription schedule and keep the underlying subscription running. `cancel` will end the subscription schedule and cancel the underlying subscription.



3494
3495
3496
# File 'lib/stripe/services/invoice_service.rb', line 3494

def end_behavior
  @end_behavior
end

#phasesObject

List representing phases of the subscription schedule. Each phase can be customized to have different durations, plans, and coupons. If there are multiple phases, the ‘end_date` of one phase will always equal the `start_date` of the next phase.



3496
3497
3498
# File 'lib/stripe/services/invoice_service.rb', line 3496

def phases
  @phases
end

#prebillingObject

Provide any time periods to bill in advance.



3498
3499
3500
# File 'lib/stripe/services/invoice_service.rb', line 3498

def prebilling
  @prebilling
end

#proration_behaviorObject

In cases where the ‘schedule_details` params update the currently active phase, specifies if and how to prorate at the time of the request.



3500
3501
3502
# File 'lib/stripe/services/invoice_service.rb', line 3500

def proration_behavior
  @proration_behavior
end