# `Stripe.Params.InvoiceCreatePreviewParams.InvoiceItems`
[🔗](https://github.com/jeffhuen/tiger_stripe/blob/main/lib/stripe/params/invoice_create_preview_params.ex#L132)

Nested parameters.

# `t`

```elixir
@type t() :: %Stripe.Params.InvoiceCreatePreviewParams.InvoiceItems{
  amount: integer() | nil,
  currency: String.t() | nil,
  description: String.t() | nil,
  discountable: boolean() | nil,
  discounts: map() | nil,
  invoiceitem: String.t() | nil,
  metadata: map() | nil,
  period:
    Stripe.Params.InvoiceCreatePreviewParams.InvoiceItems.Period.t() | nil,
  price: String.t() | nil,
  price_data:
    Stripe.Params.InvoiceCreatePreviewParams.InvoiceItems.PriceData.t() | nil,
  quantity: integer() | nil,
  quantity_decimal: String.t() | nil,
  tax_behavior: String.t() | nil,
  tax_code: map() | nil,
  tax_rates: map() | nil,
  unit_amount: integer() | nil,
  unit_amount_decimal: String.t() | nil
}
```

* `amount` - The integer amount in cents (or local equivalent) of previewed invoice item.
* `currency` - 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). Only applicable to new invoice items. Format: ISO 4217 currency code.
* `description` - An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking. Max length: 5000.
* `discountable` - Explicitly controls whether discounts apply to this invoice item. Defaults to true, except for negative invoice items.
* `discounts` - The coupons to redeem into discounts for the invoice item in the preview.
* `invoiceitem` - The ID of the invoice item to update in preview. If not specified, a new invoice item will be added to the preview of the upcoming invoice. Max length: 5000.
* `metadata` - Set of [key-value pairs](https://docs.stripe.com/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`.
* `period` - 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](https://docs.stripe.com/revenue-recognition) enabled, the period will be used to recognize and defer revenue. See the [Revenue Recognition documentation](https://docs.stripe.com/revenue-recognition/methodology/subscriptions-and-invoicing) for details.
* `price` - The ID of the price object. One of `price` or `price_data` is required. Max length: 5000.
* `price_data` - Data used to generate a new [Price](https://docs.stripe.com/api/prices) object inline. One of `price` or `price_data` is required.
* `quantity` - Non-negative integer. The quantity of units for the invoice item. Use `quantity_decimal` instead to provide decimal precision. This field will be deprecated in favor of `quantity_decimal` in a future version.
* `quantity_decimal` - Non-negative decimal with at most 12 decimal places. The quantity of units for the invoice item. Format: decimal string.
* `tax_behavior` - Only required if a [default tax behavior](https://docs.stripe.com/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. Possible values: `exclusive`, `inclusive`, `unspecified`.
* `tax_code` - A [tax code](https://docs.stripe.com/tax/tax-categories) ID.
* `tax_rates` - The tax rates that apply to the item. When set, any `default_tax_rates` do not apply to this item.
* `unit_amount` - 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. If you want to apply a credit to the customer's account, pass a negative unit_amount.
* `unit_amount_decimal` - 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. Format: decimal string.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
