# Best Practices

The patterns below come from teams running catalogs in production. They aren't rules — just things that tend to keep catalogs healthy as they grow.

## Use multiple catalogs for different audiences

A single catalog doesn't have to serve every portal. It's usually cleaner to maintain a few small, focused catalogs than one giant one with conditional logic everywhere.

* A **retail catalog** with Shopping Cart enabled and only consumer-facing categories selected.
* A **wholesale catalog** with Quantity Breaks and Price Levels enabled, restricted by a Catalog-Specific Criteria rule on a custom field.
* A **limited catalog** for a specific product line or vendor.

Assign each catalog to the workflow that should use it. Different roles see different products and pricing without any per-item exclusion lists.

## Save vs Save & Update — pick deliberately

* **Save** stores the configuration without rebuilding. Use it when you're staging changes you want to review before publishing.
* **Save & Update** stores *and* rebuilds. Use it when changes need to reach the portal now.

Avoid repeatedly rebuilding large catalogs (thousands of items) during peak hours — each rebuild re-queries NetSuite for every matching item.

## Enable only the Settings you need

Each toggle in the Settings section adds data to the catalog output and time to the build. Be selective:

| Toggle                  | Turn on only when…                                                 |
| ----------------------- | ------------------------------------------------------------------ |
| **Price Levels**        | The portal shows customer-specific pricing.                        |
| **Quantity Breaks**     | The catalog is for B2B or wholesale workflows.                     |
| **Item Vendor**         | A portal page surfaces vendor information.                         |
| **Locations**           | A portal displays per-location availability.                       |
| **Add Pricing Fields**  | Your NetSuite items use supplemental rate fields the portal needs. |
| **Enable Matrix Items** | The catalog includes items with size/colour/etc. variants.         |

For a small catalog used in a single workflow, keeping settings minimal makes builds faster and outputs smaller.

## Use Catalog-Specific Criteria to narrow output

Rather than building separate catalogs for small variations, add criteria rules to filter within one catalog:

* Filter by a custom field — a specific product line, department, or class.
* Combine multiple rows using AND logic.
* Click **Preview Items** before saving to verify the filter does what you expect.

Remember: Global Criteria (`isinactive = False` AND your subsidiary) is always applied. You only need to add criteria that narrow beyond it.

## Keep the NetSuite Fields section accurate

This section tends to drift over time as NetSuite fields are renamed or retired. A periodic clean-up is worth it:

* Remove field cards you no longer need.
* Update **Output Labels** to match the language your portal users expect (e.g. rename `itemid` to *Item Number*).
* Use **Filter configured fields…** to find a specific card when the list gets long.

## Set up Attributes before enabling Matrix Items

Enabling **Enable Matrix Items** without configured Attributes results in variant data flowing through to the portal with no labels or selectors. The standard order:

1. Open the catalog.
2. In **Attributes**, add a row for each variant dimension your matrix items use.
3. Map each row to its NetSuite custom field and pick a Direction.
4. Then turn on **Enable Matrix Items** in Settings.
5. **Save & Update**.

## Rebuild after NetSuite data changes

The catalog is a snapshot built at a point in time. It does not auto-update when NetSuite data changes. Reprocess when:

* New items have been added to categories the catalog includes.
* Pricing or item field data has changed and you want the portal to reflect it.
* Categories have been restructured in NetSuite.

The 🔄 **Refresh** icon on a catalog row only refreshes its build status. To trigger a fresh rebuild, use **Reprocess** (the ▷ Play icon) on the row, or open the catalog and click **Save & Update**.

## Verify category selection after NetSuite changes

If your NetSuite Admin adds, renames, or restructures item categories, open the affected catalogs and review the **Categories** section. New categories aren't auto-selected — you have to check them manually and save. Use **Search categories by name…** in long trees.

## Review periodically

A short quarterly check-in keeps catalogs from quietly drifting:

* Are there any catalogs no one uses any more? Delete them.
* Are status badges consistently *Completed*? If a catalog is regularly *Failed*, fix the root cause.
* Are NetSuite Fields still mapped to fields that exist?
* Are Attributes still pointing at the right `custitem` fields after any NetSuite cleanup?

## Related

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Creating a Catalog</strong></td><td>The full Edit Catalog page reference.</td><td><a href="/pages/sqKV6Gm0WqBRQeT9aFbs">/pages/sqKV6Gm0WqBRQeT9aFbs</a></td></tr><tr><td><strong>Managing Catalogs</strong></td><td>The list page — search, statuses, row actions.</td><td><a href="/pages/oPkqFjI7D5rqe7O1Tktf">/pages/oPkqFjI7D5rqe7O1Tktf</a></td></tr></tbody></table>


---

# Agent Instructions: 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:

```
GET https://docs.in8sync.com/client-admin-guide/creating-catalogs/best-practices.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
