> For the complete documentation index, see [llms.txt](https://docs.hotwax.co/documents/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hotwax.co/documents/learn-shopify/shopify-integration/orders/order-updates.md).

# Order Updates

### Synchronizing order updates

Sometimes customers or customer service representatives (CSRs) make changes to Shopify orders that need to be accurately reflected in HotWax Commerce to ensure the fulfillment process meets the customer's requirements. HotWax Commerce can update the following details from Shopify:

* Adding items to an order
* Removing items from an order
* Changing item quantities
* Refunded transactions

When a new order is created, HotWax Commerce stores the complete order JSON in the order history. Later, when an order is updated in Shopify, Shopify triggers the `orders/updated` webhook. AWS EventBridge routes this webhook event to an Amazon SQS queue, where HotWax Commerce polls for the update.

Once HotWax Commerce receives the event, it compares the new order JSON against the JSON stored in the order history. HotWax Commerce identifies the differences and applies changes only to the modified fields instead of updating the entire order. This event-driven flow ensures that order modifications sync quickly and accurately.

### Syncing Shopify order tags

Shopify order tags are also included in order updates. This allows merchants to use Shopify Flow, fraud tools, or customer service workflows to update an order's handling instructions after the order is created.

For example, merchants can configure Shopify Flow to apply a `Hold` tag when an order needs manual review and an `Approved` tag when the order is ready for fulfillment. HotWax Commerce syncs these tag changes from Shopify so the Order Management System (OMS) can use the latest tag values when deciding whether an order should remain in brokering or proceed to facility allocation.

#### Hold and Approved tag flow

1. A customer places an order in Shopify.
2. Shopify Flow evaluates the order against the merchant's review conditions, such as order value, risk level, or product-specific rules.
3. If the order requires review, Shopify Flow adds the `Hold` tag. The order remains in the brokering queue and is not allocated to a facility.
4. After a CSR reviews the order in Shopify, they remove the `Hold` tag and add the `Approved` tag.
5. The `orders/updated` webhook syncs the updated tags to HotWax Commerce.
6. On the next allocation run, orders with the `Approved` tag become eligible for facility allocation and fulfillment.

If the order does not meet any manual-review condition, Shopify Flow can add the `Approved` tag automatically. In that case, once the order is downloaded and the tag is synced, the order can proceed through the standard allocation process.

{% hint style="info" %}
When merchants use an approval-based tag flow, the `Approved` tag is required before an order can proceed to allocation and fulfillment. Orders without the required approval tag remain in the brokering queue until Shopify is updated and the tag change is synced.
{% endhint %}

To learn more about how HotWax Commerce syncs order fulfillment updates with Shopify, read the [Shopify integration overview](/documents/learn-shopify/shopify-integration/readme.md). Read further to learn how HotWax Commerce manages [presell orders](/documents/learn-shopify/shopify-integration/preorders-and-backorders.md) and [BOPIS orders](/documents/learn-shopify/shopify-integration/bopis-orders.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.hotwax.co/documents/learn-shopify/shopify-integration/orders/order-updates.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
