Creates an item to be added to a draft invoice (up to 250 items per invoice). If no invoice is specified, the item will be on the next invoice created for the customer specified.
Parameters
- customerstringRequired
The ID of the customer who will be billed when this invoice item is billed.
- amountinteger
The integer amount in cents of the charge to be applied to the upcoming invoice. Passing in a negative
amount
will reduce theamount_
on the invoice.due - currencyenum
Three-letter ISO currency code, in lowercase. Must be a supported currency.
- descriptionstring
An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.
- 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
. - 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 enabled, the period will be used to recognize and defer revenue. See the Revenue Recognition documentation for details.
- pricestring
The ID of the price object. One of
price
orprice_
is required.data
More parameters
- discountableboolean
- discountsarray of objects
- invoicestring
- price_
dataobject - quantityinteger
- subscriptionstring
- tax_
behaviorenumRecommended if calculating taxes - tax_
codestringRecommended if calculating taxes - tax_
ratesarray of strings - unit_
amountinteger - unit_
amount_ decimalstring
Returns
The created invoice item object is returned if successful. Otherwise, this call raises an error.
{ "id": "ii_1MtGUtLkdIwHu7ixBYwjAM00", "object": "invoiceitem", "amount": 1099, "currency": "usd", "customer": "cus_NeZei8imSbMVvi", "date": 1680640231, "description": "T-shirt", "discountable": true, "discounts": [], "invoice": null, "livemode": false, "metadata": {}, "period": { "end": 1680640231, "start": 1680640231 }, "plan": null, "price": { "id": "price_1MtGUsLkdIwHu7ix1be5Ljaj", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1680640229, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NeZe7xbBdJT8EN", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 1099, "unit_amount_decimal": "1099" }, "proration": false, "quantity": 1, "subscription": null, "tax_rates": [], "test_clock": null, "unit_amount": 1099, "unit_amount_decimal": "1099"}
Updates the amount or description of an invoice item on an upcoming invoice. Updating an invoice item is only possible before the invoice it’s attached to is closed.
Parameters
- amountinteger
The integer amount in cents of the charge to be applied to the upcoming invoice. If you want to apply a credit to the customer’s account, pass a negative amount.
- descriptionstring
An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.
- 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
. - 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 enabled, the period will be used to recognize and defer revenue. See the Revenue Recognition documentation for details.
- pricestring
The ID of the price object. One of
price
orprice_
is required.data
More parameters
- discountableboolean
- discountsarray of objects
- price_
dataobject - quantityinteger
- tax_
behaviorenumRecommended if calculating taxes - tax_
codestringRecommended if calculating taxes - tax_
ratesarray of strings - unit_
amountinteger - unit_
amount_ decimalstring
Returns
The updated invoice item object is returned upon success. Otherwise, this call raises an error.
{ "id": "ii_1MtGUtLkdIwHu7ixBYwjAM00", "object": "invoiceitem", "amount": 1099, "currency": "usd", "customer": "cus_NeZei8imSbMVvi", "date": 1680640231, "description": "T-shirt", "discountable": true, "discounts": [], "invoice": null, "livemode": false, "metadata": { "order_id": "6735" }, "period": { "end": 1680640231, "start": 1680640231 }, "plan": null, "price": { "id": "price_1MtGUsLkdIwHu7ix1be5Ljaj", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1680640229, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NeZe7xbBdJT8EN", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 1099, "unit_amount_decimal": "1099" }, "proration": false, "quantity": 1, "subscription": null, "tax_rates": [], "test_clock": null, "unit_amount": 1099, "unit_amount_decimal": "1099"}
Retrieves the invoice item with the given ID.
Parameters
No parameters.
Returns
Returns an invoice item if a valid invoice item ID was provided. Raises an error otherwise.
{ "id": "ii_1MtGUtLkdIwHu7ixBYwjAM00", "object": "invoiceitem", "amount": 1099, "currency": "usd", "customer": "cus_NeZei8imSbMVvi", "date": 1680640231, "description": "T-shirt", "discountable": true, "discounts": [], "invoice": null, "livemode": false, "metadata": {}, "period": { "end": 1680640231, "start": 1680640231 }, "plan": null, "price": { "id": "price_1MtGUsLkdIwHu7ix1be5Ljaj", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1680640229, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NeZe7xbBdJT8EN", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 1099, "unit_amount_decimal": "1099" }, "proration": false, "quantity": 1, "subscription": null, "tax_rates": [], "test_clock": null, "unit_amount": 1099, "unit_amount_decimal": "1099"}
Returns a list of your invoice items. Invoice items are returned sorted by creation date, with the most recently created invoice items appearing first.
Parameters
- customerstring
The identifier of the customer whose invoice items to return. If none is provided, all invoice items will be returned.
More parameters
- createdobject
- ending_
beforestring - invoicestring
- limitinteger
- pendingboolean
- starting_
afterstring
Returns
A dictionary with a data
property that contains an array of up to limit
invoice items, starting after invoice item starting_
. Each entry in the array is a separate invoice item object. If no more invoice items are available, the resulting array will be empty.
{ "object": "list", "url": "/v1/invoiceitems", "has_more": false, "data": [ { "id": "ii_1MtGUtLkdIwHu7ixBYwjAM00", "object": "invoiceitem", "amount": 1099, "currency": "usd", "customer": "cus_NeZei8imSbMVvi", "date": 1680640231, "description": "T-shirt", "discountable": true, "discounts": [], "invoice": null, "livemode": false, "metadata": {}, "period": { "end": 1680640231, "start": 1680640231 }, "plan": null, "price": { "id": "price_1MtGUsLkdIwHu7ix1be5Ljaj", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1680640229, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NeZe7xbBdJT8EN", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 1099, "unit_amount_decimal": "1099" }, "proration": false, "quantity": 1, "subscription": null, "tax_rates": [], "test_clock": null, "unit_amount": 1099, "unit_amount_decimal": "1099" } ]}
Deletes an invoice item, removing it from an invoice. Deleting invoice items is only possible when they’re not attached to invoices, or if it’s attached to a draft invoice.
Parameters
No parameters.
Returns
An object with the deleted invoice item’s ID and a deleted flag upon success. Otherwise, this call raises an error, such as if the invoice item has already been deleted.
{ "id": "ii_1MtGUtLkdIwHu7ixBYwjAM00", "object": "invoiceitem", "deleted": true}