Skip to main content

Product catalogs

Maintain reusable libraries of materials and pricing that link to your estimate line items.

Written by Sarah Chen

Product catalogs are organization-wide libraries of materials, labor rates, and other priced items. Products you add to a catalog are available across every project in your organization, so you only need to set up pricing once.

How catalogs are organized

Each catalog is a named collection of products. You might create one catalog per supplier, one per trade, or one for materials and another for labor -- whatever fits your workflow. Catalogs belong to your organization, not to individual projects.

Open the Products section in the project sidebar to reach your catalogs. The section lists each catalog by name with a package icon; catalogs awaiting review show a Draft badge. Click a catalog to view its products in the main table.

One catalog per type can be the Default. The default catalog can't be deleted.

Creating a catalog

Expand the Products section in the project sidebar and click the + button on its row, then enter a name in the New catalog dialog. The catalog appears under Products, ready to receive products. You can rename or delete a catalog later from its actions menu.

Adding products

Select a catalog and click Import in the toolbar to open the add dialog. The dialog has two tabs: Quick add and Import from file.

The Quick add tab lets you enter products directly. Each product has five core fields:

Field

Description

Name

The product description or title

SKU

A unique identifier for the product

Cost per unit

The base price per unit, with a currency selector so a catalog can mix currencies

Unit of measure

How the product is sold (each, bag, roll, sq ft, etc.)

Markup %

Percentage markup applied to the cost

Fill in multiple rows to add several products at once. You can also paste pricing text into the text area and click Extract to let AI parse product names, costs, and other fields automatically. AI extraction uses credits, so you'll be prompted to top up if your balance runs out.

Importing from files

Switch to the Import from file tab in the add dialog to bring in products from an external file. Supported formats are CSV, XLSX, PDF, and TXT.

For CSV and Excel files, Exayard reads the column headers and maps them to product fields automatically. A preview shows example values from the file so you can verify the mapping before importing. Adjust any incorrect mappings with the column dropdowns. Name, Unit of measure, and Cost per unit must be mapped before the import can proceed; SKU and Markup % are optional.

For PDF and plain text files, AI extracts product information from the document content. This handles unstructured price lists and supplier quotes that don't follow a strict table format, and uses credits like the Extract button.

Imported products land in a Draft catalog. Review the results, then approve the catalog to make it active or merge its products into an existing catalog.

Editing products

Click any cell in the product table to edit it inline. Double-click a cell or press Enter to select its contents for editing. Changes save automatically.

Select multiple products with the checkboxes to perform batch operations like deletion.

Linking products to estimates

When you add a line item to a takeoff symbol, you can link it to a product from your catalogs. Linking copies the product's current name, SKU, cost per unit, unit of measure, and markup percentage onto the line item as a snapshot. Editing the product in the catalog later does not change line items already linked to it.

You can override any of these values on a line item without breaking the link. This is useful when a project requires a one-time price adjustment.

Custom properties

If the built-in fields aren't enough, your organization can define custom properties for products in Settings. Custom fields -- like supplier, lead time, or color -- appear alongside the standard fields in the product form and table columns. See Custom properties for setup details.

Did this answer your question?