Class: Stripe::SubscriptionScheduleService::CreateParams

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

Defined Under Namespace

Classes: DefaultSettings, Phase, Prebilling

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

#to_h

Constructor Details

#initialize(billing_behavior: nil, customer: nil, default_settings: nil, end_behavior: nil, expand: nil, from_subscription: nil, metadata: nil, phases: nil, prebilling: nil, start_date: nil) ⇒ CreateParams

Returns a new instance of CreateParams.



762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
# File 'lib/stripe/services/subscription_schedule_service.rb', line 762

def initialize(
  billing_behavior: nil,
  customer: nil,
  default_settings: nil,
  end_behavior: nil,
  expand: nil,
  from_subscription: nil,
  metadata: nil,
  phases: nil,
  prebilling: nil,
  start_date: nil
)
  @billing_behavior = billing_behavior
  @customer = customer
  @default_settings = default_settings
  @end_behavior = end_behavior
  @expand = expand
  @from_subscription = from_subscription
  @metadata = 
  @phases = phases
  @prebilling = prebilling
  @start_date = start_date
end

Instance Attribute Details

#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.



742
743
744
# File 'lib/stripe/services/subscription_schedule_service.rb', line 742

def billing_behavior
  @billing_behavior
end

#customerObject

The identifier of the customer to create the subscription schedule for.



744
745
746
# File 'lib/stripe/services/subscription_schedule_service.rb', line 744

def customer
  @customer
end

#default_settingsObject

Object representing the subscription schedule’s default settings.



746
747
748
# File 'lib/stripe/services/subscription_schedule_service.rb', line 746

def default_settings
  @default_settings
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.



748
749
750
# File 'lib/stripe/services/subscription_schedule_service.rb', line 748

def end_behavior
  @end_behavior
end

#expandObject

Specifies which fields in the response should be expanded.



750
751
752
# File 'lib/stripe/services/subscription_schedule_service.rb', line 750

def expand
  @expand
end

#from_subscriptionObject

Migrate an existing subscription to be managed by a subscription schedule. If this parameter is set, a subscription schedule will be created using the subscription’s item(s), set to auto-renew using the subscription’s interval. When using this parameter, other parameters (such as phase values) cannot be set. To create a subscription schedule with other modifications, we recommend making two separate API calls.



752
753
754
# File 'lib/stripe/services/subscription_schedule_service.rb', line 752

def from_subscription
  @from_subscription
end

#metadataObject

Set of [key-value pairs](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`.



754
755
756
# File 'lib/stripe/services/subscription_schedule_service.rb', line 754

def 
  @metadata
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.



756
757
758
# File 'lib/stripe/services/subscription_schedule_service.rb', line 756

def phases
  @phases
end

#prebillingObject

If specified, the invoicing for the given billing cycle iterations will be processed now.



758
759
760
# File 'lib/stripe/services/subscription_schedule_service.rb', line 758

def prebilling
  @prebilling
end

#start_dateObject

When the subscription schedule starts. We recommend using ‘now` so that it starts the subscription immediately. You can also use a Unix timestamp to backdate the subscription so that it starts on a past date, or set a future date for the subscription to start on.



760
761
762
# File 'lib/stripe/services/subscription_schedule_service.rb', line 760

def start_date
  @start_date
end