Class: Stripe::PriceCreateParams

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

Defined Under Namespace

Classes: CurrencyOptions, CustomUnitAmount, ProductData, Recurring, Tier, TransformQuantity

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(active: nil, billing_scheme: nil, currency: nil, currency_options: nil, custom_unit_amount: nil, expand: nil, lookup_key: nil, metadata: nil, nickname: nil, product: nil, product_data: nil, recurring: nil, tax_behavior: nil, tiers: nil, tiers_mode: nil, transfer_lookup_key: nil, transform_quantity: nil, unit_amount: nil, unit_amount_decimal: nil) ⇒ PriceCreateParams

Returns a new instance of PriceCreateParams.



263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
# File 'lib/stripe/params/price_create_params.rb', line 263

def initialize(
  active: nil,
  billing_scheme: nil,
  currency: nil,
  currency_options: nil,
  custom_unit_amount: nil,
  expand: nil,
  lookup_key: nil,
  metadata: nil,
  nickname: nil,
  product: nil,
  product_data: nil,
  recurring: nil,
  tax_behavior: nil,
  tiers: nil,
  tiers_mode: nil,
  transfer_lookup_key: nil,
  transform_quantity: nil,
  unit_amount: nil,
  unit_amount_decimal: nil
)
  @active = active
  @billing_scheme = billing_scheme
  @currency = currency
  @currency_options = currency_options
  @custom_unit_amount = custom_unit_amount
  @expand = expand
  @lookup_key = lookup_key
  @metadata = 
  @nickname = nickname
  @product = product
  @product_data = product_data
  @recurring = recurring
  @tax_behavior = tax_behavior
  @tiers = tiers
  @tiers_mode = tiers_mode
  @transfer_lookup_key = transfer_lookup_key
  @transform_quantity = transform_quantity
  @unit_amount = unit_amount
  @unit_amount_decimal = unit_amount_decimal
end

Instance Attribute Details

#activeObject

Whether the price can be used for new purchases. Defaults to true.



225
226
227
# File 'lib/stripe/params/price_create_params.rb', line 225

def active
  @active
end

#billing_schemeObject

Describes how to compute the price per period. Either per_unit or tiered. per_unit indicates that the fixed amount (specified in unit_amount or unit_amount_decimal) will be charged per unit in quantity (for prices with usage_type=licensed), or per unit of total usage (for prices with usage_type=metered). tiered indicates that the unit pricing will be computed using a tiering strategy as defined using the tiers and tiers_mode attributes.



227
228
229
# File 'lib/stripe/params/price_create_params.rb', line 227

def billing_scheme
  @billing_scheme
end

#currencyObject

Three-letter ISO currency code, in lowercase. Must be a supported currency.



229
230
231
# File 'lib/stripe/params/price_create_params.rb', line 229

def currency
  @currency
end

#currency_optionsObject

Prices defined in each available currency option. Each key must be a three-letter ISO currency code and a supported currency.



231
232
233
# File 'lib/stripe/params/price_create_params.rb', line 231

def currency_options
  @currency_options
end

#custom_unit_amountObject

When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.



233
234
235
# File 'lib/stripe/params/price_create_params.rb', line 233

def custom_unit_amount
  @custom_unit_amount
end

#expandObject

Specifies which fields in the response should be expanded.



235
236
237
# File 'lib/stripe/params/price_create_params.rb', line 235

def expand
  @expand
end

#lookup_keyObject

A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters.



237
238
239
# File 'lib/stripe/params/price_create_params.rb', line 237

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



239
240
241
# File 'lib/stripe/params/price_create_params.rb', line 239

def 
  @metadata
end

#nicknameObject

A brief description of the price, hidden from customers.



241
242
243
# File 'lib/stripe/params/price_create_params.rb', line 241

def nickname
  @nickname
end

#productObject

The ID of the Product that this Price will belong to.



243
244
245
# File 'lib/stripe/params/price_create_params.rb', line 243

def product
  @product
end

#product_dataObject

These fields can be used to create a new product that this price will belong to.



245
246
247
# File 'lib/stripe/params/price_create_params.rb', line 245

def product_data
  @product_data
end

#recurringObject

The recurring components of a price such as interval and usage_type.



247
248
249
# File 'lib/stripe/params/price_create_params.rb', line 247

def recurring
  @recurring
end

#tax_behaviorObject

Only required if a default tax behavior was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of inclusive, exclusive, or unspecified. Once specified as either inclusive or exclusive, it cannot be changed.



249
250
251
# File 'lib/stripe/params/price_create_params.rb', line 249

def tax_behavior
  @tax_behavior
end

#tiersObject

Each element represents a pricing tier. This parameter requires billing_scheme to be set to tiered. See also the documentation for billing_scheme.



251
252
253
# File 'lib/stripe/params/price_create_params.rb', line 251

def tiers
  @tiers
end

#tiers_modeObject

Defines if the tiering price should be graduated or volume based. In volume-based tiering, the maximum quantity within a period determines the per unit price, in graduated tiering pricing can successively change as the quantity grows.



253
254
255
# File 'lib/stripe/params/price_create_params.rb', line 253

def tiers_mode
  @tiers_mode
end

#transfer_lookup_keyObject

If set to true, will atomically remove the lookup key from the existing price, and assign it to this price.



255
256
257
# File 'lib/stripe/params/price_create_params.rb', line 255

def transfer_lookup_key
  @transfer_lookup_key
end

#transform_quantityObject

Apply a transformation to the reported usage or set quantity before computing the billed price. Cannot be combined with tiers.



257
258
259
# File 'lib/stripe/params/price_create_params.rb', line 257

def transform_quantity
  @transform_quantity
end

#unit_amountObject

A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge. One of unit_amount, unit_amount_decimal, or custom_unit_amount is required, unless billing_scheme=tiered.



259
260
261
# File 'lib/stripe/params/price_create_params.rb', line 259

def unit_amount
  @unit_amount
end

#unit_amount_decimalObject

Same as unit_amount, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of unit_amount and unit_amount_decimal can be set.



261
262
263
# File 'lib/stripe/params/price_create_params.rb', line 261

def unit_amount_decimal
  @unit_amount_decimal
end

Class Method Details

.field_encodingsObject



305
306
307
308
309
310
311
312
313
314
315
316
# File 'lib/stripe/params/price_create_params.rb', line 305

def self.field_encodings
  @field_encodings = {
    tiers: {
      kind: :array,
      element: {
        kind: :object,
        fields: { flat_amount_decimal: :decimal_string, unit_amount_decimal: :decimal_string },
      },
    },
    unit_amount_decimal: :decimal_string,
  }
end