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.



415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
# File 'lib/stripe/services/invoice_item_service.rb', line 415

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.



356
357
358
# File 'lib/stripe/services/invoice_item_service.rb', line 356

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



359
360
361
# File 'lib/stripe/services/invoice_item_service.rb', line 359

def currency
  @currency
end

#customerObject

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



362
363
364
# File 'lib/stripe/services/invoice_item_service.rb', line 362

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.



365
366
367
# File 'lib/stripe/services/invoice_item_service.rb', line 365

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.



368
369
370
# File 'lib/stripe/services/invoice_item_service.rb', line 368

def discountable
  @discountable
end

#discountsObject

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



371
372
373
# File 'lib/stripe/services/invoice_item_service.rb', line 371

def discounts
  @discounts
end

#expandObject

Specifies which fields in the response should be expanded.



374
375
376
# File 'lib/stripe/services/invoice_item_service.rb', line 374

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.



377
378
379
# File 'lib/stripe/services/invoice_item_service.rb', line 377

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.



380
381
382
# File 'lib/stripe/services/invoice_item_service.rb', line 380

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



383
384
385
# File 'lib/stripe/services/invoice_item_service.rb', line 383

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.



386
387
388
# File 'lib/stripe/services/invoice_item_service.rb', line 386

def period
  @period
end

#priceObject

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



389
390
391
# File 'lib/stripe/services/invoice_item_service.rb', line 389

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.



392
393
394
# File 'lib/stripe/services/invoice_item_service.rb', line 392

def price_data
  @price_data
end

#quantityObject

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



395
396
397
# File 'lib/stripe/services/invoice_item_service.rb', line 395

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.



398
399
400
# File 'lib/stripe/services/invoice_item_service.rb', line 398

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.



401
402
403
# File 'lib/stripe/services/invoice_item_service.rb', line 401

def tax_behavior
  @tax_behavior
end

#tax_codeObject



404
405
406
# File 'lib/stripe/services/invoice_item_service.rb', line 404

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.



407
408
409
# File 'lib/stripe/services/invoice_item_service.rb', line 407

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.



410
411
412
# File 'lib/stripe/services/invoice_item_service.rb', line 410

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.



413
414
415
# File 'lib/stripe/services/invoice_item_service.rb', line 413

def unit_amount_decimal
  @unit_amount_decimal
end