Class: Stripe::SubscriptionItemUpdateParams

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

Defined Under Namespace

Classes: BillingThresholds, CurrentTrial, Discount, PriceData

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

attr_accessor, coerce_params, coerce_value, discriminator, discriminator_fields, new, #to_h

Constructor Details

#initialize(billing_thresholds: nil, current_trial: nil, discounts: nil, expand: nil, metadata: nil, off_session: nil, payment_behavior: nil, plan: nil, price: nil, price_data: nil, proration_behavior: nil, proration_date: nil, quantity: nil, tax_rates: nil) ⇒ SubscriptionItemUpdateParams

Returns a new instance of SubscriptionItemUpdateParams.



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# File 'lib/stripe/params/subscription_item_update_params.rb', line 113

def initialize(
  billing_thresholds: nil,
  current_trial: nil,
  discounts: nil,
  expand: nil,
  metadata: nil,
  off_session: nil,
  payment_behavior: nil,
  plan: nil,
  price: nil,
  price_data: nil,
  proration_behavior: nil,
  proration_date: nil,
  quantity: nil,
  tax_rates: nil
)
  @billing_thresholds = billing_thresholds
  @current_trial = current_trial
  @discounts = discounts
  @expand = expand
  @metadata = 
  @off_session = off_session
  @payment_behavior = payment_behavior
  @plan = plan
  @price = price
  @price_data = price_data
  @proration_behavior = proration_behavior
  @proration_date = proration_date
  @quantity = quantity
  @tax_rates = tax_rates
end

Instance Attribute Details

#billing_thresholds ⇒ Object

Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.



85
86
87
# File 'lib/stripe/params/subscription_item_update_params.rb', line 85

def billing_thresholds
  @billing_thresholds
end

#current_trial ⇒ Object

The trial offer to apply to this subscription item.



87
88
89
# File 'lib/stripe/params/subscription_item_update_params.rb', line 87

def current_trial
  @current_trial
end

#discounts ⇒ Object

The coupons to redeem into discounts for the subscription item.



89
90
91
# File 'lib/stripe/params/subscription_item_update_params.rb', line 89

def discounts
  @discounts
end

#expand ⇒ Object

Specifies which fields in the response should be expanded.



91
92
93
# File 'lib/stripe/params/subscription_item_update_params.rb', line 91

def expand
  @expand
end

#metadata ⇒ Object

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.



93
94
95
# File 'lib/stripe/params/subscription_item_update_params.rb', line 93

def 
  @metadata
end

#off_session ⇒ Object

Indicates if a customer is on or off-session while an invoice payment is attempted. Defaults to false (on-session).



95
96
97
# File 'lib/stripe/params/subscription_item_update_params.rb', line 95

def off_session
  @off_session
end

#payment_behavior ⇒ Object

Controls how Stripe handles payment when a subscription update requires payment and collection_method=charge_automatically.



97
98
99
# File 'lib/stripe/params/subscription_item_update_params.rb', line 97

def payment_behavior
  @payment_behavior
end

#plan ⇒ Object

The identifier of the new plan for this subscription item.



99
100
101
# File 'lib/stripe/params/subscription_item_update_params.rb', line 99

def plan
  @plan
end

#price ⇒ Object

The ID of the price object. You can use either price or price_data, but not both, to set or change this item's price. If you're updating an existing item without changing its price, omit both. When changing a subscription item's price, quantity is set to 1 unless a quantity parameter is provided.



101
102
103
# File 'lib/stripe/params/subscription_item_update_params.rb', line 101

def price
  @price
end

#price_data ⇒ Object

Data used to generate a new Price object inline. You can use either price or price_data, but not both, to set or change this item's price. If you're updating an existing item without changing its price, omit both.



103
104
105
# File 'lib/stripe/params/subscription_item_update_params.rb', line 103

def price_data
  @price_data
end

#proration_behavior ⇒ Object

Determines how to handle prorations when the billing cycle changes (e.g., when switching plans, resetting billing_cycle_anchor=now, or starting a trial), or if an item's quantity changes. The default value is create_prorations.



105
106
107
# File 'lib/stripe/params/subscription_item_update_params.rb', line 105

def proration_behavior
  @proration_behavior
end

#proration_date ⇒ Object

If set, the proration will be calculated as though the subscription was updated at the given time. This can be used to apply the same proration that was previewed with the upcoming invoice endpoint.



107
108
109
# File 'lib/stripe/params/subscription_item_update_params.rb', line 107

def proration_date
  @proration_date
end

#quantity ⇒ Object

The quantity you'd like to apply to the subscription item you're creating.



109
110
111
# File 'lib/stripe/params/subscription_item_update_params.rb', line 109

def quantity
  @quantity
end

#tax_rates ⇒ Object

A list of Tax Rate ids. These Tax Rates will override the default_tax_rates on the Subscription. When updating, pass an empty string to remove previously-defined tax rates.



111
112
113
# File 'lib/stripe/params/subscription_item_update_params.rb', line 111

def tax_rates
  @tax_rates
end

Class Method Details

.field_encodings ⇒ Object



145
146
147
148
149
# File 'lib/stripe/params/subscription_item_update_params.rb', line 145

def self.field_encodings
  @field_encodings = {
    price_data: { kind: :object, fields: { unit_amount_decimal: :decimal_string } },
  }
end