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.



747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 747

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.



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

def billing_behavior
  @billing_behavior
end

#default_settingsObject

Object representing the subscription schedule’s default settings.



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

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.



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

def end_behavior
  @end_behavior
end

#expandObject

Specifies which fields in the response should be expanded.



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

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



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

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.



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

def phases
  @phases
end

#prebillingObject

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



743
744
745
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 743

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



745
746
747
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 745

def proration_behavior
  @proration_behavior
end

Class Method Details

.field_encodingsObject



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
793
794
795
796
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 767

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