Order Update
In Saleor, order data can be modified even after it has been created. The type of changes you can make depends on the status of the order:
- Unconfirmed Orders can be freely modified using various mutations to change lines, discounts, addresses, and more.
- Confirmed Orders can be updated using the
orderUpdate
mutation to make limited changes such as modifying addresses, metadata, and customer details.
All mutations related to updating orders require the MANAGE_ORDERS
permission. Make sure your staff user or app has this permission assigned to perform any order modifications.
This flexibility supports post-checkout changes initiated by either the customer or internal operations, such as customer service corrections, business system integrations, or fulfillment adjustments.
Updating Confirmed Orders​
Once an order is confirmed, you can still make the following updates using the orderUpdate
mutation:
Available Fields​
billingAddress
– Update the customer's billing addressshippingAddress
– Update the customer's shipping addressuserEmail
– Correct or change the customer's contact emailexternalReference
– Add or update an external system ID for integrationsmetadata
/privateMetadata
– Store public or internal custom metadata for business logic or integrationslanguageCode
– Set or change the language code for localized communications
Example Use Cases​
- Correcting address typos reported by the customer
- Updating customer email for notification delivery
- Tagging the order with an ERP reference ID
- Storing custom status or fraud-check flags in private metadata
- Changing the language of invoice or email templates
Updating Unconfirmed Orders​
For UNCONFIRMED
orders, more substantial edits are allowed. These include modifying discounts, lines, and other aspects of the order.
Managing Order Lines​
orderLinesCreate
– Add new product lines to the orderorderLineUpdate
– Change the quantity or variant of an existing order lineorderLineDelete
– Remove a product line from the order
Managing Shipping Method​
orderUpdateShipping
– Change the shipping method for an unconfirmed order
Managing Discounts​
For more information about adding manual discounts, see the Manual Discounts documentation.
Order Level Discounts​
orderDiscountAdd
– Add a discount to the entire orderorderDiscountUpdate
– Update an existing order-level discountorderDiscountDelete
– Remove a discount from the order
Order Line Level Discounts​
orderLineDiscountUpdate
– Apply or modify a discount on a specific order lineorderLineDiscountRemove
– Remove a line-level discount
Other Changes​
The orderUpdate
mutation can still be used for unconfirmed orders to change:
- Customer email
- Billing and shipping addresses
- Order metadata
Order Updates Summary​
Order State | What Can Be Modified |
---|---|
Orders in UNCONFIRMED status | Lines, line discounts, order-level discounts, shipping method, addresses, email, metadata |
Confirmed orders in UNFULFILLED , FULFILLED , or RETURNED status | Addresses, email, external references, language, metadata |
This structured approach ensures safe and controlled edits at each stage of the order lifecycle, balancing flexibility and data integrity.
Managing Order Notes​
You can add or update notes on orders using the following mutations:
orderNoteAdd
– Add a new note to the orderorderNoteUpdate
– Update an existing order note
Order notes are stored in the order's events and will be displayed in the Saleor Dashboard's Order History section. These notes are accessible to staff users and apps with the MANAGE_ORDERS permission.
This feature is useful for:
- Recording customer service interactions
- Documenting special handling instructions
- Tracking order-related issues and resolutions
- Adding internal comments about the order