> ## 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.

# CreateAdvanceShippingNoticeCommandRequestInput

> Creates an advance shipping notice for a purchase order, in every status of the order, optionally with its packages and line items in one call. Without a number the ERP draws the next free number of the order. The expected delivery date defaults to the day of creation. An order can have any number of notices. Errors arrive as GraphQL errors with the code in 'extensions.code'; a refusal because of the current state also lists every reason in 'extensions.blockers'. Codes: an invalid request, for example a text with control characters; PURCHASE_ORDER_NOT_FOUND (the order was not found); ADVANCE_SHIPPING_NOTICE_NUMBER_DUPLICATE (another notice of the order has the number); ADVANCE_SHIPPING_NOTICE_PACKAGE_NUMBER_DUPLICATE (another package of the notice has the package number); ADVANCE_SHIPPING_NOTICE_WEIGHT_OUT_OF_RANGE (the weight is below 0 or above 1,000,000); ADVANCE_SHIPPING_NOTICE_DIMENSION_OUT_OF_RANGE (the width, height or depth is below 0 or above 1,000,000); ADVANCE_SHIPPING_NOTICE_IDENTIFIER_EMPTY (an identifier has an empty name or value); ADVANCE_SHIPPING_NOTICE_ITEM_NOT_ON_PURCHASE_ORDER (the item is not on the purchase order of the notice); ADVANCE_SHIPPING_NOTICE_PACKAGE_NUMBER_UNKNOWN (no package of the notice has the package number); ADVANCE_SHIPPING_NOTICE_QUANTITY_OUT_OF_RANGE or ADVANCE_SHIPPING_NOTICE_QUANTITY_NOT_WHOLE (the quantity is below 0, 10,000,000 or more, or not a whole number for an item that is not divisible); ADVANCE_SHIPPING_NOTICE_SERIAL_NUMBER_COUNT_MISMATCH (serial numbers were sent and their count is not the quantity); ADVANCE_SHIPPING_NOTICE_SERIAL_NUMBER_DUPLICATE (a serial number appears twice in the notice); ADVANCE_SHIPPING_NOTICE_BATCH_NOT_ALLOWED, ADVANCE_SHIPPING_NOTICE_SHELF_LIFE_EXPIRATION_DATE_NOT_ALLOWED or ADVANCE_SHIPPING_NOTICE_SERIAL_NUMBERS_NOT_ALLOWED (the item is not tracked that way). - Request



**Kind**: `input`

## Fields

**`purchaseOrderId`**: `ID!` (required)

The ID of the purchase order.

---

**`clientId`**: `String`

A temporary identifier chosen by the client, for example to match the answer to an optimistic update. It is not stored and is returned unchanged.

---

**`number`**: `String`

The number of the notice, unique within the purchase order. When omitted: the next free number of the order.

---

**`expectedDeliveryDate`**: `DateTime`

When the delivery is expected. When omitted: the day of creation.

---

**`note`**: `String`

A note on the notice. The ERP stores it without full Unicode support: characters it cannot store are replaced, typically by '?'.

---

**`packages`**: `[AdvanceShippingNoticePackageCreationInput]!` (required)

The packages. Empty or omitted: none.

---

**`lineItems`**: `[AdvanceShippingNoticeLineItemCreationInput]!` (required)

The line items. Empty or omitted: none. A line item refers to a package of this call by its package number.

---

**`idempotencyKey`**: `String`

Client-supplied idempotency key. When provided, a repeated request with the same key and payload replays the original result instead of re-executing the mutation.

