Class: Stripe::InvoiceItemService::CreateParams

Inherits:
RequestParams show all
Defined in:
lib/stripe/services/invoice_item_service.rb

Defined Under Namespace

Classes: Discount, Period, PriceData

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

#to_h

Constructor Details

#initialize(amount: nil, currency: nil, customer: nil, description: nil, discountable: nil, discounts: nil, expand: nil, invoice: nil, margins: nil, metadata: nil, period: nil, price: nil, price_data: nil, quantity: nil, subscription: nil, tax_behavior: nil, tax_code: nil, tax_rates: nil, unit_amount: nil, unit_amount_decimal: nil) ⇒ CreateParams

Returns a new instance of CreateParams.



349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
# File 'lib/stripe/services/invoice_item_service.rb', line 349

def initialize(
  amount: nil,
  currency: nil,
  customer: nil,
  description: nil,
  discountable: nil,
  discounts: nil,
  expand: nil,
  invoice: nil,
  margins: nil,
  metadata: nil,
  period: nil,
  price: nil,
  price_data: nil,
  quantity: nil,
  subscription: nil,
  tax_behavior: nil,
  tax_code: nil,
  tax_rates: nil,
  unit_amount: nil,
  unit_amount_decimal: nil
)
  @amount = amount
  @currency = currency
  @customer = customer
  @description = description
  @discountable = discountable
  @discounts = discounts
  @expand = expand
  @invoice = invoice
  @margins = margins
  @metadata = 
  @period = period
  @price = price
  @price_data = price_data
  @quantity = quantity
  @subscription = subscription
  @tax_behavior = tax_behavior
  @tax_code = tax_code
  @tax_rates = tax_rates
  @unit_amount = unit_amount
  @unit_amount_decimal = unit_amount_decimal
end

Instance Attribute Details

#amountObject

The integer amount in cents (or local equivalent) of the charge to be applied to the upcoming invoice. Passing in a negative ‘amount` will reduce the `amount_due` on the invoice.



309
310
311
# File 'lib/stripe/services/invoice_item_service.rb', line 309

def amount
  @amount
end

#currencyObject

Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](stripe.com/docs/currencies).



311
312
313
# File 'lib/stripe/services/invoice_item_service.rb', line 311

def currency
  @currency
end

#customerObject

The ID of the customer who will be billed when this invoice item is billed.



313
314
315
# File 'lib/stripe/services/invoice_item_service.rb', line 313

def customer
  @customer
end

#descriptionObject

An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.



315
316
317
# File 'lib/stripe/services/invoice_item_service.rb', line 315

def description
  @description
end

#discountableObject

Controls whether discounts apply to this invoice item. Defaults to false for prorations or negative invoice items, and true for all other invoice items.



317
318
319
# File 'lib/stripe/services/invoice_item_service.rb', line 317

def discountable
  @discountable
end

#discountsObject

The coupons and promotion codes to redeem into discounts for the invoice item or invoice line item.



319
320
321
# File 'lib/stripe/services/invoice_item_service.rb', line 319

def discounts
  @discounts
end

#expandObject

Specifies which fields in the response should be expanded.



321
322
323
# File 'lib/stripe/services/invoice_item_service.rb', line 321

def expand
  @expand
end

#invoiceObject

The ID of an existing invoice to add this invoice item to. When left blank, the invoice item will be added to the next upcoming scheduled invoice. This is useful when adding invoice items in response to an invoice.created webhook. You can only add invoice items to draft invoices and there is a maximum of 250 items per invoice.



323
324
325
# File 'lib/stripe/services/invoice_item_service.rb', line 323

def invoice
  @invoice
end

#marginsObject

The ids of the margins to apply to the invoice item. When set, the ‘default_margins` on the invoice do not apply to this invoice item.



325
326
327
# File 'lib/stripe/services/invoice_item_service.rb', line 325

def margins
  @margins
end

#metadataObject

Set of [key-value pairs](stripe.com/docs/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`.



327
328
329
# File 'lib/stripe/services/invoice_item_service.rb', line 327

def 
  @metadata
end

#periodObject

The period associated with this invoice item. When set to different values, the period will be rendered on the invoice. If you have [Stripe Revenue Recognition](stripe.com/docs/revenue-recognition) enabled, the period will be used to recognize and defer revenue. See the [Revenue Recognition documentation](stripe.com/docs/revenue-recognition/methodology/subscriptions-and-invoicing) for details.



329
330
331
# File 'lib/stripe/services/invoice_item_service.rb', line 329

def period
  @period
end

#priceObject

The ID of the price object. One of ‘price` or `price_data` is required.



331
332
333
# File 'lib/stripe/services/invoice_item_service.rb', line 331

def price
  @price
end

#price_dataObject

Data used to generate a new [Price](stripe.com/docs/api/prices) object inline. One of ‘price` or `price_data` is required.



333
334
335
# File 'lib/stripe/services/invoice_item_service.rb', line 333

def price_data
  @price_data
end

#quantityObject

Non-negative integer. The quantity of units for the invoice item.



335
336
337
# File 'lib/stripe/services/invoice_item_service.rb', line 335

def quantity
  @quantity
end

#subscriptionObject

The ID of a subscription to add this invoice item to. When left blank, the invoice item is added to the next upcoming scheduled invoice. When set, scheduled invoices for subscriptions other than the specified subscription will ignore the invoice item. Use this when you want to express that an invoice item has been accrued within the context of a particular subscription.



337
338
339
# File 'lib/stripe/services/invoice_item_service.rb', line 337

def subscription
  @subscription
end

#tax_behaviorObject

Only required if a [default tax behavior](stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) 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.



339
340
341
# File 'lib/stripe/services/invoice_item_service.rb', line 339

def tax_behavior
  @tax_behavior
end

#tax_codeObject



341
342
343
# File 'lib/stripe/services/invoice_item_service.rb', line 341

def tax_code
  @tax_code
end

#tax_ratesObject

The tax rates which apply to the invoice item. When set, the ‘default_tax_rates` on the invoice do not apply to this invoice item.



343
344
345
# File 'lib/stripe/services/invoice_item_service.rb', line 343

def tax_rates
  @tax_rates
end

#unit_amountObject

The integer unit amount in cents (or local equivalent) of the charge to be applied to the upcoming invoice. This ‘unit_amount` will be multiplied by the quantity to get the full amount. Passing in a negative `unit_amount` will reduce the `amount_due` on the invoice.



345
346
347
# File 'lib/stripe/services/invoice_item_service.rb', line 345

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.



347
348
349
# File 'lib/stripe/services/invoice_item_service.rb', line 347

def unit_amount_decimal
  @unit_amount_decimal
end