Class: Stripe::InvoiceItem::CreateParams

Inherits:
RequestParams show all
Defined in:
lib/stripe/resources/invoice_item.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.



377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
# File 'lib/stripe/resources/invoice_item.rb', line 377

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.



337
338
339
# File 'lib/stripe/resources/invoice_item.rb', line 337

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



339
340
341
# File 'lib/stripe/resources/invoice_item.rb', line 339

def currency
  @currency
end

#customerObject

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



341
342
343
# File 'lib/stripe/resources/invoice_item.rb', line 341

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.



343
344
345
# File 'lib/stripe/resources/invoice_item.rb', line 343

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.



345
346
347
# File 'lib/stripe/resources/invoice_item.rb', line 345

def discountable
  @discountable
end

#discountsObject

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



347
348
349
# File 'lib/stripe/resources/invoice_item.rb', line 347

def discounts
  @discounts
end

#expandObject

Specifies which fields in the response should be expanded.



349
350
351
# File 'lib/stripe/resources/invoice_item.rb', line 349

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.



351
352
353
# File 'lib/stripe/resources/invoice_item.rb', line 351

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.



353
354
355
# File 'lib/stripe/resources/invoice_item.rb', line 353

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



355
356
357
# File 'lib/stripe/resources/invoice_item.rb', line 355

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.



357
358
359
# File 'lib/stripe/resources/invoice_item.rb', line 357

def period
  @period
end

#priceObject

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



359
360
361
# File 'lib/stripe/resources/invoice_item.rb', line 359

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.



361
362
363
# File 'lib/stripe/resources/invoice_item.rb', line 361

def price_data
  @price_data
end

#quantityObject

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



363
364
365
# File 'lib/stripe/resources/invoice_item.rb', line 363

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.



365
366
367
# File 'lib/stripe/resources/invoice_item.rb', line 365

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.



367
368
369
# File 'lib/stripe/resources/invoice_item.rb', line 367

def tax_behavior
  @tax_behavior
end

#tax_codeObject



369
370
371
# File 'lib/stripe/resources/invoice_item.rb', line 369

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.



371
372
373
# File 'lib/stripe/resources/invoice_item.rb', line 371

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.



373
374
375
# File 'lib/stripe/resources/invoice_item.rb', line 373

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.



375
376
377
# File 'lib/stripe/resources/invoice_item.rb', line 375

def unit_amount_decimal
  @unit_amount_decimal
end