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.



881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
# File 'lib/stripe/services/subscription_schedule_service.rb', line 881

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.



852
853
854
# File 'lib/stripe/services/subscription_schedule_service.rb', line 852

def billing_behavior
  @billing_behavior
end

#customerObject

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



855
856
857
# File 'lib/stripe/services/subscription_schedule_service.rb', line 855

def customer
  @customer
end

#default_settingsObject

Object representing the subscription schedule’s default settings.



858
859
860
# File 'lib/stripe/services/subscription_schedule_service.rb', line 858

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.



861
862
863
# File 'lib/stripe/services/subscription_schedule_service.rb', line 861

def end_behavior
  @end_behavior
end

#expandObject

Specifies which fields in the response should be expanded.



864
865
866
# File 'lib/stripe/services/subscription_schedule_service.rb', line 864

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.



867
868
869
# File 'lib/stripe/services/subscription_schedule_service.rb', line 867

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



870
871
872
# File 'lib/stripe/services/subscription_schedule_service.rb', line 870

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.



873
874
875
# File 'lib/stripe/services/subscription_schedule_service.rb', line 873

def phases
  @phases
end

#prebillingObject

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



876
877
878
# File 'lib/stripe/services/subscription_schedule_service.rb', line 876

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.



879
880
881
# File 'lib/stripe/services/subscription_schedule_service.rb', line 879

def start_date
  @start_date
end