# TransactionLineItemInput

Input · GraphQL API

Data for individual line items on a transaction.

## Fields

- `name` (`String!`) — required: Item name. Maximum 35 characters, or 127 characters for PayPal transactions. *Required for Level 3 processing*.
- `kind` (`TransactionLineItemType!`) — required: Indicates whether the line item is a sale or refund. *Required for Level 3 processing*.
- `quantity` (`String!`) — required: Number of units of the item purchased. Can include up to 4 decimal places. This value can't be negative or zero. *Required for Level 3 processing*.
- `unitAmount` (`String!`) — required: Per-unit price of the item. Maximum 4 decimal places, or 2 decimal places for PayPal transactions. This value can't be negative or zero. *Required for Level 3 processing*.
- `totalAmount` (`String!`) — required: Total price amount for the line item: quantity multiplied by unitAmount. Can include up to 2 decimal places. *Required for Level 3 processing*.
- `unitTaxAmount` (`String`): Per-unit tax price of the item. Can include up to 2 decimal places. This value can't be negative or zero. *Required for Level 3 processing*.
- `taxAmount` (`String`): Tax amount for the line item. Can include up to 2 decimal places. This value can't be negative. *Required for Level 3 processing*.
- `discountAmount` (`String`): Amount of discount for the line item. Can include up to 2 decimal places. This value can't be negative. Please note that this field is not used on PayPal transactions. *Required for Level 3 processing*.
- `unitOfMeasure` (`String`): The unit of measure or the unit of measure code. Maximum 12 characters. *Required for Level 3 processing*.
- `productCode` (`String`): Product or UPC code for the item. Maximum 12 characters, or 127 characters for PayPal transactions. *Required for Level 3 processing*.
- `commodityCode` (`String`): Code used to classify items purchased and track the total amount spent across various categories of products and services. Different corporate purchasing organizations may use different standards, but the [United Nations Standard Products and Services Code (UNSPSC)](https://www.unspsc.org/) is frequently used. Maximum 12 characters. *Required for Level 3 processing*.
- `description` (`String`): Item description. Maximum 127 characters. *Required for Level 3 processing*.
- `url` (`String`): A URL to information about the product. *Required for Level 3 processing*.
- `itemType` (`String`): The type of the line item, i.e., physical, digital etc.
- `imageUrl` (`String`): URL to an image that represents the product. Max 1024 characters.
- `upc` (`LineItemUpcInput`): UPC of the line item.

## Used by

- [CaptureTransactionOptionsInput](/braintree/graphql/reference/types/capture-transaction-options-input) — Input; lineItems
- [InStoreTransactionInput](/braintree/graphql/reference/types/in-store-transaction-input) — Input; lineItems
- [PartialCaptureTransactionOptionsInput](/braintree/graphql/reference/types/partial-capture-transaction-options-input) — Input; lineItems
- [RefundInput](/braintree/graphql/reference/types/refund-input) — Input; lineItems
- [TransactionInput](/braintree/graphql/reference/types/transaction-input) — Input; lineItems
- [TransactionRiskEvaluateInput](/braintree/graphql/reference/types/transaction-risk-evaluate-input) — Input; lineItems

## GraphQL definition

```graphql
input TransactionLineItemInput {
  name: String!
  kind: TransactionLineItemType!
  quantity: String!
  unitAmount: String!
  totalAmount: String!
  unitTaxAmount: String
  taxAmount: String
  discountAmount: String
  unitOfMeasure: String
  productCode: String
  commodityCode: String
  description: String
  url: String
  itemType: String
  imageUrl: String
  upc: LineItemUpcInput
}
```

---

[View the complete GraphQL schema on GitHub](https://raw.githubusercontent.com/braintree/graphql-api/refs/heads/master/schema.graphql)