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

# Build a product configuration

> Create a configurable product with option groups, rules, and formulas.

## Introduction

This guide walks you through building a product configuration from scratch: attaching it to a base product, adding the three group types, setting up rules and formulas, and getting it ready for your sales reps.

## Prerequisites

Before you start, make sure you have:

* A base product already created in your catalog.
* A pricebook set up if you plan to use the **Inherited from pricebook** price mode for any option.
* Access to the **Products & pricing** section of your workspace.

## Access

<Steps>
  <Step title="Open Product Configuration">
    From the left sidebar, go to **Products & pricing > Product Configuration**.
  </Step>
</Steps>

## Steps

<Steps>
  <Step title="Create the configuration">
    Click **+ New configuration**. In the **New configuration** dialog, choose the **Product** you want to configure, then click **Continue**.
  </Step>

  <Step title="Set the product details">
    Click the pencil icon next to the configuration's name to open **General information**. Here you can set:

    * **Name** — the configuration's display name.
    * **Internal reference** — an optional reference for your team.
    * **Base product** — the catalog product this configuration is attached to.
    * **Hide price details** — turn this on to hide every option's price from the quote and DealRoom.
  </Step>

  <Step title="Add an Item group">
    In the **Configuration** panel, click **+ Add**, then choose **Item**. Set a **Selection type** (Radio buttons, Checkboxes, Dropdown, Multi-select, or one of the two card layouts), and turn on **Required** if a choice is mandatory.

    Add options to the group — each one is either a catalog product or a custom attribute. For each option, set:

    * **Price**: Inherited from pricebook, Formula, or Fixed amount.
    * **Quantity**: Same as base product, Formula, or Fixed amount.
  </Step>

  <Step title="Add a Question group">
    Click **+ Add**, then choose **Question**. Pick a **Selection type** — in addition to the Item group types, Question groups support Toggle, Number input, Free text, and Date.

    If you want the answer stored somewhere, set **Save as** to **Custom field** and pick the field. Leave it on **None** if the answer is only used to drive rules.
  </Step>

  <Step title="Add a Calculated group">
    Click **+ Add**, then choose **Calculated**. Give the group a name, then click **Define formula** on its first calculated item to open the **Formula editor**.

    Build your expression using the ARITHMETIC, COMPARISON, and FUNCTIONS buttons, and insert variables from **INSERT VARIABLE** instead of typing them by hand. A green border and "Valid formula" message confirm the expression is correct.

    Set a **Display format** (for example, Number), and turn off **Display calculated field** if you only need the value as an input to other formulas. Add more calculated items to the same group if you need several related values.
  </Step>

  <Step title="Add rules">
    Select a group or an option, then click **Add rule** in its **Rules** section. In the **Edit rule** dialog:

    1. Build your **IF** condition — pick a field, an operator (`is`, `is not`, `>`, `<`, `>=`, `<=`), and a value. Use **+ AND** or **+ OR** to add more conditions.
    2. Choose the **THEN** action, and optionally an **ELSE** action.
    3. Click **Save**.

    Switch to **Raw text** if you prefer to write the condition as an expression directly. Available actions depend on what the rule is attached to: groups support Show, Hide, Warning banner, and Error banner; Item group options support Show, Hide, Required, and Exclude; Question group options support Show and Hide.

    <Note>
      A rule can only reference groups that come before it in the order, so build your groups top to bottom before wiring up rules between them.
    </Note>
  </Step>

  <Step title="Reorder groups">
    Drag a group by its handle (⠿) in the **Configuration** panel to move it up or down. Reordering changes which groups are "upstream" and available to rules and formulas in the groups below.
  </Step>

  <Step title="Preview and activate">
    Use the live preview in the center panel to test your selections, rules, and calculated values exactly as a sales rep would see them. Adjust any group, option, rule, or formula until the behavior matches what you expect.

    Once everything looks right, save your changes. Your configuration shows as **Active** in the Product Configuration list, which makes it available to add to quotes.
  </Step>
</Steps>

## What happens next

Once a configuration is active, sales reps can add its base product to a quote and open the configurator to make selections. Their choices generate the matching line items, with prices and quantities calculated automatically. If the quote reaches a DealRoom, the customer can adjust any option you've marked optional or made editable.

## Troubleshooting

<AccordionGroup>
  <Accordion title="My formula shows \'Invalid expression\'">
    Check that every variable was inserted using **INSERT VARIABLE** rather than typed by hand, and that parentheses and quotes are balanced. The formula editor only turns green once the expression is valid.
  </Accordion>

  <Accordion title="My rule doesn't seem to fire">
    Confirm the group or option the rule depends on comes before the rule's own group in the order. Rules can't reference anything downstream.
  </Accordion>

  <Accordion title="An option's price field is grayed out">
    Custom attribute options can't use the **Inherited from pricebook** mode, since there's no catalog product to inherit from. Switch to **Formula** or **Fixed amount**.
  </Accordion>

  <Accordion title="Two rules are giving conflicting results">
    Remember the resolution order: Hide always overrides Show, and Required always overrides Exclude.
  </Accordion>

  <Accordion title="A calculated value isn't appearing on the configuration screen">
    Check the **Display calculated field** setting for that formula. If it's turned off, the value is only available as a variable for other formulas, not shown directly.
  </Accordion>
</AccordionGroup>

## Related

<CardGroup cols={2}>
  <Card title="Product configurator reference" icon="sliders" href="/user-guide/catalog/reference/product-configurator">
    Full reference for group types, rules, formulas, and DealRoom behavior.
  </Card>

  <Card title="Bundle" icon="boxes-stacked" href="/user-guide/catalog/reference/catalog-vs-pricebook-vs-bundle">
    Group a fixed set of products under one price.
  </Card>

  <Card title="Pricebook" icon="tags" href="/user-guide/catalog/reference/catalog-vs-pricebook-vs-bundle">
    Manage the prices that configured products can inherit from.
  </Card>

  <Card title="DealRoom" icon="globe" href="/user-guide/dealroom/reference/what-is-dealroom">
    See how customers interact with a configured product online.
  </Card>
</CardGroup>
