Bundle offers
Show a cart upsell that offers a second product at a discount when a specific product is added to the cart.
A bundle offer is a cart-level promotion: when a customer adds Product A to their cart, they see an offer to add Product B at a discount, shown right in the cart, before checkout. The offer is attached to a product, not to a discount rule, so there's no coupon code and no minimum spend required.
Bundle offers vs kits vs Discount Rules
| Mechanism | Where it shows | When to use |
|---|---|---|
| Bundle offer | Cart page, next to the trigger product | "Add a lens to go with this camera and save 15%" |
| Kit | Its own product page, search, categories | "A gift box with a bottle and two glasses", sold as one item |
| Discount Rule (Bundle type) | Applied automatically to the cart total | Silently discount any cart that already contains the combination |
Use a bundle offer when you want the upsell to be visible and clickable in the cart. Use a Discount Rule when you want the discount to apply quietly if the customer already has both products.
A bundle offer is not a way to sell a set as one item. It has no product page, no web address of its own, and customers cannot search for it or find it in a category, because it is a promotion on top of products you already sell. If what you want is a gift box or a starter set that sits on the shelf as a single thing with one price, one photo set and its own page, that is a kit, not a bundle offer. Adding both products through a bundle offer puts two separate lines in the order; a kit puts one.
How to create a bundle offer
- Go to Products in the sidebar.
- Scroll the products table to the right until you see the Bundles column.
- Find the product you want to use as the trigger (Product A). The Bundles cell shows a count of active offers, or "+ Add" if none exist yet.

- Click the count or the + Add text in the Bundles cell. The Bundle Offers dialog opens.

- Click + Create Bundle Offer. Fill in the form:
| Field | What to enter |
|---|---|
| Bundle product | Search and select the product to offer alongside the trigger (Product B). |
| Name | A short label for this offer, e.g. "Camera + Lens Bundle". Shown in your dashboard. |
| Discount | Choose % or fixed amount ($), then enter the value. Applied to the bundle product's regular price. |

- Click Create Bundle Offer. The offer is live immediately.
Multi-product bundles: the dialog creates one offered product per bundle offer. To offer three or more products together as a single bundle deal, create the offer via the API or ask BOBO to set it up.
Enabling and disabling
Each bundle offer row has a toggle. Turn it off to pause the offer without deleting it, which is useful for time-sensitive promotions.
What the customer sees
When Product A is in the cart, the storefront displays a bundle offer card:
- An image and name for Product B
- The discounted price (original price struck through, bundle price shown)
- A one-click "Add to cart" button for Product B
If the customer adds Product B via the bundle, both products appear as separate line items in the order, each with its own stock deduction and fulfillment.
Only if your cart page was built to draw it. Creating a bundle here makes the offer available to your website; your cart page still has to ask for it and render the card. If nobody built that in, the bundle is live and correct and no customer ever sees it, so check that before you go looking for a fault in the trigger product or the discount. A storefront scaffolded recently with npx create-brainerce-store already draws bundles; an older or hand-built shop probably does not, and does not gain it by itself. See a feature you turned on is not showing on your website.
What happens if the customer removes the trigger product
The bundle discount does not survive. The discount exists because Product A is in the cart, so if the customer later deletes Product A, or drops its quantity to zero, Product B stays in the cart at its full price. The customer is not charged the bundle price for Product B on its own, and there is nothing you need to configure for that: the cart re-checks the condition on every change and again when checkout is created.
The same thing happens if you delete the bundle offer, or edit it so a different product is now the trigger, while a customer is mid-session. Any cart still holding that discount is re-checked against the offer as it stands now, and a discount the offer no longer justifies is removed. Pausing an offer with its toggle does not touch carts that already accepted it.
Changing the discount moves carts in progress in one direction only. If you lower the percentage or amount on a live bundle offer, customers still shopping see the smaller discount, because the cart works the price out from the offer as it stands now. If you raise it, customers who already accepted the old offer keep what they accepted; they do not get the bigger discount without accepting again. Clearing the discount entirely removes it from those carts. As with deleting, pause the offer with its toggle instead if customers may be mid-checkout.
If you want the discounted price to hold on its own, that is a sale price on Product B (see managing products), or a Discount Rule, not a bundle offer.
Common patterns
Accessory bundle: Camera → Add a lens (15% off). Drone → Add an extra battery ($20 off).
Complete the look: Dress → Add the matching shoes (10% off). Laptop → Add a sleeve ($5 off).
Complementary products: AirPods → Add a case (12% off). Phone → Add a screen protector (free/discounted).
What's next?
- Kits sell several products together as a single item with its own product page, which is the right tool when the set should be findable in search.
- Order bumps show a one-click add-on at the checkout page (separate from the cart).
- Discount Rules: the Bundle rule type applies cart discounts automatically without any offer card.
- Related products are "you might also like" suggestions on product pages.
Kits (sell several products as one)
Create a kit that sells several of your products together as a single item, with a price and a sale price you set like any other product, and stock always worked out from the contents.
Order bumps
Show a one-click add-on offer at checkout, a product the customer can add without leaving the checkout flow.