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.



743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 743

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.



727
728
729
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 727

def billing_behavior
  @billing_behavior
end

#default_settingsObject

Object representing the subscription schedule’s default settings.



729
730
731
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 729

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.



731
732
733
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 731

def end_behavior
  @end_behavior
end

#expandObject

Specifies which fields in the response should be expanded.



733
734
735
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 733

def expand
  @expand
end

#metadataObject

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



735
736
737
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 735

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.



737
738
739
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 737

def phases
  @phases
end

#prebillingObject

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



739
740
741
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 739

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



741
742
743
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 741

def proration_behavior
  @proration_behavior
end

Class Method Details

.field_encodingsObject



763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 763

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