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

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

Defined Under Namespace

Classes: Amendment, 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.



3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
# File 'lib/stripe/services/invoice_service.rb', line 3399

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.



3385
3386
3387
# File 'lib/stripe/services/invoice_service.rb', line 3385

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.



3387
3388
3389
# File 'lib/stripe/services/invoice_service.rb', line 3387

def billing_behavior
  @billing_behavior
end

#billing_modeObject

Configure billing_mode to opt in improved credit proration behavior.When the schedule creates a subscription, the subscription’s ‘billing_mode` will be set to the same value as the schedule’s ‘billing_mode`.



3389
3390
3391
# File 'lib/stripe/services/invoice_service.rb', line 3389

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.



3391
3392
3393
# File 'lib/stripe/services/invoice_service.rb', line 3391

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.



3393
3394
3395
# File 'lib/stripe/services/invoice_service.rb', line 3393

def phases
  @phases
end

#prebillingObject

Provide any time periods to bill in advance.



3395
3396
3397
# File 'lib/stripe/services/invoice_service.rb', line 3395

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.



3397
3398
3399
# File 'lib/stripe/services/invoice_service.rb', line 3397

def proration_behavior
  @proration_behavior
end