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

# Creating a Box Product

> Learn how to create and configure a box product in WooCommerce with BoxBuilder.

A box product is a standard WooCommerce Simple Product with BoxBuilder enabled. This means it works with all existing WooCommerce features — shipping, taxes, coupons, and more.

## Create the Product

<Steps>
  <Step title="Add a new product">
    Go to **Products → Add New** in your WordPress admin.
  </Step>

  <Step title="Set product details">
    Fill in the standard WooCommerce fields:

    * **Product name**: e.g., "Build Your Own Chocolate Box"
    * **Description**: Describe the box experience for your customers
    * **Short description**: A brief summary shown on the product page
    * **Product image**: The main box image customers will see
    * **Product gallery**: Additional images of the box or example configurations
  </Step>

  <Step title="Set the price">
    In the **General** tab of the Product Data panel:

    * For **Fixed pricing**: Set the price you want to charge for the box (e.g., \$29.99)
    * For **Per-item pricing**: Set the price to 0 — the total will be calculated from the selected items
  </Step>

  <Step title="Enable BoxBuilder">
    Click the **BoxBuilder** tab in the Product Data panel. Check **Enable BoxBuilder**.
  </Step>
</Steps>

## Configure the Box

Once BoxBuilder is enabled, you'll see the configuration options:

### Capacity

| Setting           | Description                                                                 |
| ----------------- | --------------------------------------------------------------------------- |
| **Capacity Type** | **Fixed** — exact number of items. **Range** — minimum and maximum.         |
| **Max Items**     | Maximum number of items the box can hold (e.g., 12)                         |
| **Min Items**     | Minimum items required (only shown for Range type)                          |
| **Allow Partial** | If enabled, customers can add the box to cart without filling it completely |

<Tip>
  Use **Range** capacity when you want flexibility. For example, a box that holds 6–12 items lets customers choose how full they want their box.
</Tip>

### Pricing Model

| Model           | How It Works                                     | Best For                                         |
| --------------- | ------------------------------------------------ | ------------------------------------------------ |
| **Fixed Price** | One price for the whole box, regardless of items | Gift boxes with a set price point                |
| **Per-Item**    | Total = sum of each item's price                 | Build-your-own where items have different values |

<Info>
  **Hybrid pricing** (base price + per-item) is available in [BoxBuilder Pro](/plugins/boxbuilder/pricing-models).
</Info>

### Product Source

Choose which products customers can pick from:

| Source                | Description                                   |
| --------------------- | --------------------------------------------- |
| **All Products**      | Every published, in-stock WooCommerce product |
| **By Category**       | Only products from selected categories        |
| **Specific Products** | Hand-picked individual products               |

<Tip>
  Using **By Category** is the most common approach. Create categories like "Chocolates", "Sweets", "Nuts" and assign your products to them. Then select those categories as the product source for your box.
</Tip>

### Layout

| Option                | Description                                                |
| --------------------- | ---------------------------------------------------------- |
| **Layout Style**      | **Grid** (card-based) or **List** (compact rows)           |
| **Products Per Page** | Number of products to show before pagination (default: 12) |

### Gift Message

Gift messages are controlled globally in **BoxBuilder → Settings → Gift Message** tab. When enabled, a text field appears in the box builder for customers to type a personal message.

## Box Overview in Admin

After creating box products, you can manage them from **BoxBuilder → All Boxes**. This page shows:

* All products with BoxBuilder enabled
* Capacity and pricing model for each box
* Quick links to edit or view each box

## Example Configurations

<AccordionGroup>
  <Accordion title="12-Piece Chocolate Gift Box — Fixed $29.99">
    * Capacity: Fixed, 12 items
    * Pricing: Fixed Price
    * Product price: \$29.99
    * Product source: Category "Chocolates"
    * Layout: Grid
    * Gift message: Enabled
  </Accordion>

  <Accordion title="Build Your Own Snack Box — Per Item">
    * Capacity: Range, 6–12 items
    * Pricing: Per-Item
    * Product price: \$0.00
    * Product source: Categories "Chips", "Cookies", "Drinks"
    * Layout: Grid
    * Allow partial: Yes
  </Accordion>

  <Accordion title="Curated Flower Bouquet — Fixed $49.99">
    * Capacity: Fixed, 8 items
    * Pricing: Fixed Price
    * Product price: \$49.99
    * Product source: Specific products (hand-picked flowers)
    * Layout: Grid
    * Gift message: Enabled
  </Accordion>
</AccordionGroup>

## Next Steps

* [Product Selection](/plugins/boxbuilder/product-selection) — control which products appear and how
* [Pricing Models](/plugins/boxbuilder/pricing-models) — detailed pricing configuration
* [Gift Messages](/plugins/boxbuilder/gift-messages) — customize the gift message experience
