---
title: Pricing
date: 2026-07-02T14:32:00+01:00
author: John Henry Donovan
canonical_url: "https://johnhenry.ie/plugins/bundle-builder/docs/guide/pricing"
section: Plugins
---
esc

↑↓ to navigate↵ to selectesc to close

Menu On this page 

- [Return to top](#)

Documentation

Documentation

# Pricing

Set pricing per bundle in the **Pricing** field.

## Fixed price

Choose **Fixed price** and enter the bundle's price. You can also set a **Promotional Price** if you want the bundle to go on sale. Both values are stored as the bundle's base price and base promotional price.

![](https://johnhenry.ie/images/plugins/docs/bundle-builder/bundle-pricing-fixed.png)## Automatic

Choose **Automatic (sum of components − discount)** and set a discount:

- **Discount type**: *Percentage off* or *Flat amount off*.
- **Discount amount**: e.g. `10` for 10%, or `5` for €5 off.

![](https://johnhenry.ie/images/plugins/docs/bundle-builder/bundle-pricing-automatic.png)The price is computed as:

```bash
price = Σ (component sale price × quantity) − discount   (floored at 0)
```

…and that's stored as the bundle's base price on save. Each component's **sale price** is its promotional/catalog-pricing-rule price when one applies, otherwise its regular price, so if a component is currently on sale, that shows up in the bundle's total, rather than the bundle always being priced off the component's full list price.

### Keeping prices in sync

When a component product is saved, deleted, or restored from the trash, every *automatically* priced bundle containing it gets **recalculated**: queued rather than run straight away, so saving a component that's used across many bundles doesn't hold up the save while every one of them gets resaved. Fixed-price bundles are left alone.

Warning A sale or catalog pricing rule that changes **without** the component product itself being saved (say, editing a Sale's discount, or a date-scoped pricing rule expiring) doesn't currently trigger a recalculation. The bundle's stored price catches up the next time the component is saved, or the bundle is resaved directly. If that matters for your store, resave the affected bundles after changing a sale or pricing rule.

Tip Because the bundle is a single fixed price, the total doesn't change depending on which variant the customer later picks; it's always worked out from each component's **default variant**.

On this page
