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.



3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
# File 'lib/stripe/services/invoice_service.rb', line 3426

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.



3412
3413
3414
# File 'lib/stripe/services/invoice_service.rb', line 3412

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.



3414
3415
3416
# File 'lib/stripe/services/invoice_service.rb', line 3414

def billing_behavior
  @billing_behavior
end

#billing_modeObject

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



3416
3417
3418
# File 'lib/stripe/services/invoice_service.rb', line 3416

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.



3418
3419
3420
# File 'lib/stripe/services/invoice_service.rb', line 3418

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.



3420
3421
3422
# File 'lib/stripe/services/invoice_service.rb', line 3420

def phases
  @phases
end

#prebillingObject

Provide any time periods to bill in advance.



3422
3423
3424
# File 'lib/stripe/services/invoice_service.rb', line 3422

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.



3424
3425
3426
# File 'lib/stripe/services/invoice_service.rb', line 3424

def proration_behavior
  @proration_behavior
end