Skip to main content
Schema2020-08-27object

invoiceitem

Sometimes you want to add a charge or credit to a customer, but actually charge or credit the customer's card only at the end of a regular billing cycle. This is useful for combining several charges (to minimize per-transaction fees), or for having Stripe tabulate your usage-based billing totals. Related guide: [Subscription Invoices](https://stripe.com/docs/billing/invoices/subscription#adding-upcoming-invoice-items).

Source
openapi/spec3.json
Commit
d70de345383d
Active snapshot
da69df7e6e11

InvoiceItem

object

Sometimes you want to add a charge or credit to a customer, but actually charge or credit the customer's card only at the end of a regular billing cycle. This is useful for combining several charges (to minimize per-transaction fees), or for having Stripe tabulate your usage-based billing totals. Related guide: [Subscription Invoices](https://stripe.com/docs/billing/invoices/subscription#adding-upcoming-invoice-items).

amount integer
required

Amount (in the `currency` specified) of the invoice item. This should always be equal to `unit_amount * quantity`.

currency string
required

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

customer
required

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

date integer (unix-time)
required

Time at which the object was created. Measured in seconds since the Unix epoch.

description string
optionalnullable

An arbitrary string attached to the object. Often useful for displaying to users.

discountable boolean
required

If true, discounts will apply to this invoice item. Always false for prorations.

discounts array
optionalnullable

The discounts which apply to the invoice item. Item discounts are applied before invoice discounts. Use `expand[]=discounts` to expand each discount.

id string
required

Unique identifier for the object.

invoice
optionalnullable

The ID of the invoice this invoice item belongs to.

livemode boolean
required

Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.

metadata object
optionalnullable

Set of [key-value pairs](https://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.

object string
required

String representing the object's type. Objects of the same type share the same value.

price
optionalnullable

The price of the invoice item.

proration boolean
required

Whether the invoice item was created automatically as a proration adjustment when the customer switched plans.

quantity integer
required

Quantity of units for the invoice item. If the invoice item is a proration, the quantity of the subscription that the proration was computed for.

subscription
optionalnullable

The subscription that this invoice item has been created for, if any.

subscription_item string
optional

The subscription item that this invoice item has been created for, if any.

tax_rates array
optionalnullable

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.

unit_amount integer
optionalnullable

Unit amount (in the `currency` specified) of the invoice item.

unit_amount_decimal string (decimal)
optionalnullable

Same as `unit_amount`, but contains a decimal value with at most 12 decimal places.