> ## Documentation Index
> Fetch the complete documentation index at: https://developer.jtl-software.com/llms.txt
> Use this file to discover all available pages before exploring further.

# PurchaseOrderLineItem

> A single position of a purchase order.



**Kind**: `object`

## Fields

**`lineItemId`**: `ID!`

Unique ID of the line item.

---

**`lineItemType`**: `PurchaseOrderLineItemType!`

The kind of position (item or free position — shipping surcharge, discount and small-quantity surcharge are excluded from lineItems and appear under allowancesAndCharges instead). Read-only discriminator; the create path only ever produces item positions. A missing value on the underlying row is coalesced to FreePosition — for this field, absent and explicitly-zero are the same fact, not "unknown" (human decision, resolves the legacy contradiction between accessors that documented it as either).

---

**`itemId`**: `ID`

ID of the ordered item, or NULL for a line item that never references one (shipping position, surcharge, discount, free position). The underlying kArtikel column is NOT NULL with no CHECK/foreign key; a non-item position is written with the literal 0, which is coalesced to NULL here (human decision, live GraphQL bug fix — exposing the raw 0 as an ID crashed the key-to-ID converter).

---

**`itemNumber`**: `String`

The item's own article number.

---

**`supplierItemNumber`**: `String`

The supplier's article number for this item.

---

**`name`**: `String`

Name of the item.

---

**`supplierItemName`**: `String`

The supplier's own name/description for this item.

---

**`quantity`**: `Decimal!`

Ordered quantity.

---

**`deliveredQuantity`**: `Decimal!`

Quantity delivered so far.

---

**`openQuantity`**: `Decimal!`

Quantity not yet delivered.

---

**`netPurchasePriceAmount`**: `Decimal!`

Net purchase price per unit.

---

**`vatRatePercentage`**: `Decimal!`

VAT rate in percent.

---

**`deliveryTimeInDays`**: `Int`

Delivery time in days.

---

**`deliveryDate`**: `DateTime`

Requested delivery date for this position.

---

**`note`**: `String`

Free-text note on the position.

---

**`sortOrder`**: `Int!`

Position's sort order within the order.

---

**`packagingUnit`**: `String`

Packaging unit designation.

---

**`packagingQuantity`**: `Decimal`

Quantity per packaging unit.

---

**`confirmedQuantity`**: `Decimal`

Quantity confirmed by the supplier for this line item. NULL when no confirmation has been received yet. Not settable on create; patchable through the update endpoint while the order is not Completed.

---

**`confirmedDeliveryDate`**: `DateTime`

Delivery date confirmed by the supplier for this line item. NULL when no confirmation has been received yet. Not settable on create; patchable through the update endpoint while the order is not Completed.

---

**`confirmedPrice`**: `Decimal`

Net price confirmed by the supplier for this line item. NULL when no confirmation has been received yet. Not settable on create; patchable through the update endpoint while the order is not Completed.

---

**`isLineItemConfirmed`**: `Boolean`

Whether the supplier has confirmed this line item. NULL when no confirmation status has been set, distinct from false ("reviewed and not confirmed"). Not settable on create; patchable through the update endpoint while the order is not Completed. Independent of the order header's IsConfirmed — neither flag is derived from the other.

