Class: Stripe::SubscriptionScheduleUpdateParams

Inherits:
RequestParams show all
Defined in:
lib/stripe/params/subscription_schedule_update_params.rb

Defined Under Namespace

Classes: DefaultSettings, Phase, Prebilling

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

attr_accessor, coerce_params, coerce_value, new, #to_h

Constructor Details

#initialize(billing_behavior: nil, default_settings: nil, end_behavior: nil, expand: nil, metadata: nil, phases: nil, prebilling: nil, proration_behavior: nil) ⇒ SubscriptionScheduleUpdateParams

Returns a new instance of SubscriptionScheduleUpdateParams.



803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 803

def initialize(
  billing_behavior: nil,
  default_settings: nil,
  end_behavior: nil,
  expand: nil,
  metadata: nil,
  phases: nil,
  prebilling: nil,
  proration_behavior: nil
)
  @billing_behavior = billing_behavior
  @default_settings = default_settings
  @end_behavior = end_behavior
  @expand = expand
  @metadata = 
  @phases = phases
  @prebilling = prebilling
  @proration_behavior = proration_behavior
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.



787
788
789
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 787

def billing_behavior
  @billing_behavior
end

#default_settingsObject

Object representing the subscription schedule's default settings.



789
790
791
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 789

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.



791
792
793
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 791

def end_behavior
  @end_behavior
end

#expandObject

Specifies which fields in the response should be expanded.



793
794
795
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 793

def expand
  @expand
end

#metadataObject

Set of key-value pairs 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.



795
796
797
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 795

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. Note that past phases can be omitted.



797
798
799
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 797

def phases
  @phases
end

#prebillingObject

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



799
800
801
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 799

def prebilling
  @prebilling
end

#proration_behaviorObject

If the update changes the billing configuration (item price, quantity, etc.) of the current phase, indicates how prorations from this change should be handled. The default value is create_prorations.



801
802
803
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 801

def proration_behavior
  @proration_behavior
end

Class Method Details

.field_encodingsObject



823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 823

def self.field_encodings
  @field_encodings = {
    phases: {
      kind: :array,
      element: {
        kind: :object,
        fields: {
          add_invoice_items: {
            kind: :array,
            element: {
              kind: :object,
              fields: {
                price_data: { kind: :object, fields: { unit_amount_decimal: :decimal_string } },
              },
            },
          },
          items: {
            kind: :array,
            element: {
              kind: :object,
              fields: {
                price_data: { kind: :object, fields: { unit_amount_decimal: :decimal_string } },
              },
            },
          },
        },
      },
    },
  }
end