Class: Stripe::SubscriptionScheduleUpdateParams

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

Defined Under Namespace

Classes: BillingSchedule, 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, billing_schedules: 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.



913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 913

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



895
896
897
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 895

def billing_behavior
  @billing_behavior
end

#billing_schedulesObject

Sets the billing schedules for the subscription schedule.



897
898
899
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 897

def billing_schedules
  @billing_schedules
end

#default_settingsObject

Object representing the subscription schedule’s default settings.



899
900
901
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 899

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.



901
902
903
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 901

def end_behavior
  @end_behavior
end

#expandObject

Specifies which fields in the response should be expanded.



903
904
905
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 903

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



905
906
907
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 905

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.



907
908
909
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 907

def phases
  @phases
end

#prebillingObject

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



909
910
911
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 909

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



911
912
913
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 911

def proration_behavior
  @proration_behavior
end

Class Method Details

.field_encodingsObject



935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 935

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