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

# Menu Linking & Price Sync

> Match your storekit menu to the Comtrex till by POS ID, browse the till catalogue from the dashboard, and pull prices and tax rates from the till.

Comtrex does not import a menu into storekit. You build the menu in storekit — categories, products, modifiers, images and descriptions — and link each product and modifier to the till with its Comtrex item number in the **POS ID** field. Once items are linked you can pull the till's prices (and optionally tax rates) into your menu with **Price sync**.

<Info>
  There is no **Sync Menu** button for Comtrex. If you're used to Lightspeed or Toast importing categories and products, expect to build the menu yourself — see [CSV Import](/docs/guides/menu/csv-import) for the fastest way to do that.
</Info>

## How Linking Works

Every item on the till has an item number (Zonal usually calls it the PLU). When storekit sends an order it lists each product and modifier by that number, so the till can ring it through as the right item. storekit reads the number from the **POS ID** field on your product or modifier.

| storekit            | Comtrex                                                                |
| ------------------- | ---------------------------------------------------------------------- |
| Product **POS ID**  | Item number of the sales item                                          |
| Modifier **POS ID** | Item number of the ingredient / condiment item                         |
| Table **POS ID**    | Table number — see [Dine-in](/docs/guides/integrations/pos/comtrex/dine-in) |

<Warning>
  A product or modifier with an empty **POS ID** is silently left off the order sent to the till. The order still goes through and the guest is still charged for it, so an unlinked item shows up as a mismatch between storekit and the till rather than as a failed order. Link everything before you go live.
</Warning>

## Browse the Till Catalogue

You don't have to ask Zonal for a list of item numbers — the dashboard can read them from the till.

<Steps>
  <Step title="Open the Comtrex integration">
    Go to **Stores** → your store → **Settings** → **Integrations** → **Comtrex**. The connection has to be saved first (see [Connecting Comtrex](/docs/guides/integrations/pos/comtrex/connect)).
  </Step>

  <Step title="Load the catalogue">
    Scroll to **Till catalogue** and click **Load catalogue**. storekit asks the till for its item sync and shows a summary — for example *2 lists · 5 items · 1 modifier groups* — followed by every list.
  </Step>

  <Step title="Find the item numbers">
    Expand a list to see each item's name, its POS ID and its till price. Modifier groups are listed the same way with a *Modifier* badge. Copy the POS ID you need into the matching storekit product or modifier.
  </Step>
</Steps>

<Frame caption="The Till catalogue section after Load catalogue">
  <img src="https://mintcdn.com/storekit/ESLFABunh773fqh0/images/comtrex/till-catalogue.png?fit=max&auto=format&n=ESLFABunh773fqh0&q=85&s=6b80de0aa45de526ce02f978dccf87a3" alt="The Till catalogue section listing Mains and Drinks lists with item names, POS IDs and prices, plus a Sauces modifier group, with Refresh and Download raw JSON buttons" width="992" height="293" data-path="images/comtrex/till-catalogue.png" />
</Frame>

Once loaded, **Load catalogue** becomes **Refresh**, and **Download raw JSON** saves the till's full response for you or Zonal to inspect.

<Note>
  The catalogue is whatever the till returns to storekit's item sync request. If an item you expect is missing, ask Zonal to check that it's included in the lists the RTO interface publishes.
</Note>

## Link Products and Modifiers

<Tabs>
  <Tab title="Products">
    <Steps>
      <Step title="Open the product">
        Go to **Menus**, open your menu, and click a product to open the **Edit product** drawer.
      </Step>

      <Step title="Enter the POS ID">
        On the **Details** tab, scroll to **POS ID** and enter the till's item number.
      </Step>

      <Step title="Save">
        Click **Save changes**. Repeat for every product.
      </Step>
    </Steps>

    <Frame caption="The POS ID field in the Edit product drawer">
      <img src="https://mintcdn.com/storekit/ESLFABunh773fqh0/images/comtrex/product-pos-id.png?fit=max&auto=format&n=ESLFABunh773fqh0&q=85&s=979864afbbb4407ba83576c22a4fe090" alt="The Edit product drawer with the POS ID field highlighted under the product details" width="1440" height="900" data-path="images/comtrex/product-pos-id.png" />
    </Frame>
  </Tab>

  <Tab title="Modifiers">
    <Steps>
      <Step title="Open the modifier">
        Open the product, switch to the **Modifiers** tab, and click the modifier option you want to link.
      </Step>

      <Step title="Enter the POS ID">
        Enter the till's ingredient item number in **POS ID**.
      </Step>

      <Step title="Save">
        Click **Save changes**.
      </Step>
    </Steps>
  </Tab>

  <Tab title="In bulk">
    Export your menu as a spreadsheet, fill the **Product POS ID** column, and import it back — see [CSV Import](/docs/guides/menu/csv-import). This is much faster than editing hundreds of products one by one.
  </Tab>
</Tabs>

## Price Sync

Once products are linked, **Price sync** pulls the till's current prices into your storekit menu so the two never drift. It runs against your store's active menu, updates only products whose **POS ID** matches an item in the till catalogue, and never creates, deletes or moves anything.

<Frame caption="The Price sync section — preview first, then apply">
  <img src="https://mintcdn.com/storekit/ESLFABunh773fqh0/images/comtrex/price-sync.png?fit=max&auto=format&n=ESLFABunh773fqh0&q=85&s=ed94bff24ad7077be6e2a60e7fdc36a0" alt="The Price sync section with a Preview price sync row described as Compare till prices with your active menu" width="992" height="126" data-path="images/comtrex/price-sync.png" />
</Frame>

<Steps>
  <Step title="Open the preview">
    In **Stores** → your store → **Settings** → **Integrations** → **Comtrex**, scroll to **Price sync** and click **Preview price sync**. storekit contacts the till — this can take up to two minutes — and shows the **Price sync preview**.
  </Step>

  <Step title="Review the changes">
    The summary reads *N to update · N unchanged · N unmatched* with the number of increases and decreases beneath. Each row shows the storekit item, the matching POS item, and the current and new price.

    * **Not found on the till** lists products whose POS ID isn't in the catalogue. Their prices won't change — fix the POS ID or ask Zonal about the item.
    * **Conflicting till prices** appears when the till reports more than one price for the same POS ID; the first price found will be applied.
    * Tick **Include tax rates** to also copy each item's tax rate from the till. The preview gains a **Tax** column so you can check it before applying.
  </Step>

  <Step title="Apply">
    Click **Apply changes**. The sync continues in the background and you'll see *Prices synced successfully* when it finishes. Click **Close** to leave without changing anything.
  </Step>
</Steps>

<Frame caption="A Price sync preview with two price changes, three unchanged items and one product not found on the till">
  <img src="https://mintcdn.com/storekit/ESLFABunh773fqh0/images/comtrex/price-sync-preview.png?fit=max&auto=format&n=ESLFABunh773fqh0&q=85&s=b52a8fdbbcb442f90c28f62f69bb8a9e" alt="The Price sync preview modal showing a summary of 2 to update, 3 unchanged and 1 unmatched, the Include tax rates checkbox, a table of changed prices, and a Not found on the till section, with Close and Apply changes buttons" width="800" height="380" data-path="images/comtrex/price-sync-preview.png" />
</Frame>

### What Price Sync Does and Doesn't Do

|                                                                     |     |
| ------------------------------------------------------------------- | :-: |
| Update the price of linked products                                 |  ✓  |
| Update the tax rate of linked products (with **Include tax rates**) |  ✓  |
| Update modifier prices                                              |  ✗  |
| Create, archive or rename products                                  |  ✗  |
| Change categories, images, descriptions or allergens                |  ✗  |
| Run automatically on a schedule                                     |  ✗  |

Price sync is always started by you from the dashboard. If Zonal changes prices on the till, rerun **Preview price sync** — nothing in storekit updates until you do.

<Note>
  Price sync reads the same catalogue as **Till catalogue**. If a product's POS ID doesn't appear there, it will show under **Not found on the till** even if the number is right on the till itself.
</Note>

## Next Steps

<CardGroup cols={2}>
  <Card title="Orders" icon="receipt" href="/docs/guides/integrations/pos/comtrex/orders">
    See how linked items are sent to the till
  </Card>

  <Card title="Troubleshooting" icon="wrench" href="/docs/guides/integrations/pos/comtrex/troubleshooting">
    Fix missing items and unmatched POS IDs
  </Card>
</CardGroup>


## Related topics

- [Comtrex (Zonal)](/docs/guides/integrations/pos/comtrex/overview.md)
- [Connecting Comtrex](/docs/guides/integrations/pos/comtrex/connect.md)
- [POS Menu Sync](/docs/guides/menu/pos-menu-sync.md)
- [Syrve Menu Sync](/docs/guides/integrations/pos/syrve/menu-sync.md)
- [TISSL](/docs/guides/integrations/pos/tissl.md)
