Class: Stripe::SubscriptionScheduleUpdateParams

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

Defined Under Namespace

Classes: DefaultSettings, Phase

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(default_settings: nil, end_behavior: nil, expand: nil, metadata: nil, phases: nil, proration_behavior: nil) ⇒ SubscriptionScheduleUpdateParams



585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 585

def initialize(
  default_settings: nil,
  end_behavior: nil,
  expand: nil,
  metadata: nil,
  phases: nil,
  proration_behavior: nil
)
  @default_settings = default_settings
  @end_behavior = end_behavior
  @expand = expand
   = 
  @phases = phases
  @proration_behavior = proration_behavior
end

Instance Attribute Details

#default_settingsObject

Object representing the subscription schedule's default settings.



573
574
575
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 573

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.



575
576
577
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 575

def end_behavior
  @end_behavior
end

#expandObject

Specifies which fields in the response should be expanded.



577
578
579
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 577

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.



579
580
581
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 579

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



581
582
583
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 581

def phases
  @phases
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.



583
584
585
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 583

def proration_behavior
  @proration_behavior
end

Class Method Details

.field_encodingsObject



601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
# File 'lib/stripe/params/subscription_schedule_update_params.rb', line 601

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