Bundles and offers are how you sell more than one product at a time, or steer
buyers toward an add-on. They live in a different place from discounts: a
discount lowers the price of items already in the cart, while a bundle or
offer decides which products get grouped, what they cost together, and where
that grouping appears on your storefront.
Sellerlane has four distinct tools, and they are reached two different ways:
Fixed bundle
A real catalog product that bundles several items at one price. Created in
the product editor (product type Bundle), so it is searchable and
has its own product page.
Box builder
Customers assemble their own box by picking from sections you define, up to a
set number of items, at a price you control. Under Offers → Box builder.
Frequently bought together
A set of add-on products offered alongside what customers are already
buying, to lift average order value. Under
Offers → Frequently bought together.
Upsell rule
A “when this is in the cart, recommend that” rule that surfaces extra
products (optionally at a special price). Under Offers → Upsell.
Bundles and offers vs discounts
This is the most common point of confusion, so it is worth stating plainly.
There is no “set price” discount type in the discount engine. A literal
price like “any 2 for ₹999” comes from a bundle or offer (as a Price cap —
buyers pay at most ₹999, less if their picks total less), or from a
Buy X Get Y discount — not from a percentage or amount-off discount. If you
want a capped price for a set of items, use a bundle or offer here, not a discount.
See discounts for the price-reduction side.
Each bundle, offer, and upsell rule carries its own pricing model, chosen
independently of any discount you may also be running:
Pricing model
What the buyer pays
Price cap
The lower of the selection’s combined component total or the cap. The cap is a ceiling, never a floor — cheaper selections keep their own total, so the storefront advertises it as “Up to …”.
Percentage Off
A percentage taken off the combined component price.
Amount Off
A flat amount taken off the combined component price.
For Price cap you can also set a Compare At Price so the storefront can
show the original total struck through next to the bundle or offer price.
The fixed/discounted amount applies once to the selected offer group, not once
per component. Sellerlane allocates that parent amount to components using a
deterministic largest-remainder calculation so component tax, discount, refund,
COGS, and inventory rows always add back to the bundle total. See
Financial semantics.
How offers combine with discounts
An offer sets a price; a discount reduces a price. When the cart is
recalculated, money is worked out in three layers, always in the same order:
Prices — the catalog or contract price and any volume pricing come
first; then the offer: a fixed bundle’s price is prorated across its
components, and a Box builder, Frequently bought together, or upsell group
is repriced to its offer price.
Discounts — codes and automatic discounts run next, under the
combination rules:
product discounts first, then order discounts, then shipping discounts.
Tenders — loyalty points, store credit, and gift cards pay the
discounted total; they never change a price.
That ordering gives you a precise set of rules:
A cart line carries at most one offer. A line is a fixed bundle, part of
one Box builder or Frequently bought together group, or part of one upsell
group — never two of these at once.
Offer prices are not discounts. An offer has no code, no usage limits,
and no per-customer caps, and it never counts toward the discount
combination rules. On the cart and order the saving is recorded under the
offer’s name — the cart shows it on the items it touched, alongside any
discount codes — but it is not a removable code chip.
Product discounts skip offer-priced items by default. A product
discount (or a Buy X Get Y “get” reward) does not touch items that are
already priced by a Box builder, Frequently bought together, or upsell
offer — unless that discount’s Combinations section has Bundle & offer
prices ticked. Order and shipping discounts are never blocked this way.
Earned rewards are the exception: discounts minted by loyalty
redemptions and referral
programs always apply to offer-priced items — a customer’s earned reward is
never silently skipped.
When a discount does apply, it calculates on the offer price. A 20%
discount on a Box builder offer that is already 30% off takes 20% of the
offer price, not of the original component total.
Minimum purchase requirements see offer prices. A “minimum ₹1,000”
discount is checked against what the buyer would actually pay after offer
pricing — not against the original catalog total. An order discount’s
minimum is additionally checked after product discounts.
A Price cap offer is a ceiling, never a floor. If the buyer’s picks
already total less than the cap, they pay the lower catalog total.
An offer can only lower what the buyer pays.
Fixed bundles are discounted as one product. A product discount that
should reach a fixed bundle must target the bundle product itself; the
discount then spreads across the components automatically for tax and
refund purposes.
Where offers don’t apply
Upsell offers are online-only. Box builder and Frequently bought together
offers can also be enabled for POS, but an upsell rule has no POS option.
Gift cards are never offer items. The product pickers for fixed-bundle
components, Box builder and Frequently bought together sections, and upsell
recommendations leave gift-card products out, and saving an offer that
references one is rejected. A gift card is stored value — prorating a
discounted offer price across one could issue more value than the buyer
paid. Sell gift cards at their own price instead.
Company (B2B) purchases never take offers. Bundles, offers and upsells
are refused on company carts, and any offer lines already in a cart are removed
when it switches into company context. See
B2B isolation.
Checkout shows only one-click recommendations. Box builder and upsell
builders appear on offer pages, product pages, and cart surfaces, not on
the checkout page.
Fixed bundles (catalog products)
A fixed bundle is an ordinary product whose type is Bundle. Because it is a
catalog product, it shows up in search and collections and has a normal product
page where the buyer adds the whole group to the cart in one click.
Go to Products and create a new product (or open an existing one) and set
the product type to Bundle.
In Bundle Composition, add the component products that make up the
bundle. For products with variants you can allow all variants or restrict
the buyer to an allowlist of specific variants per component.
Set the Bundle Price — the price the buyer pays for the whole bundle.
Choose a Bundle Inventory Tracking Method:
Track at bundle level — the bundle has its own stock count, separate
from the component products.
Track based on component products — the bundle is only available when
every component has enough stock; you manage each product’s inventory
individually.
Add images, description, SEO, and a status as you would for any product, then
save.
Once published, the bundle behaves like any other product: it is indexed for
search, can be added to collections, and
renders on its own product page. For how product types differ, see
product types.
Refunds and returns for bundles
The order snapshots the bundle parent and every fulfillment component. A
component refund cannot exceed that component’s allocated order value. Returns
currently use component returns only: each selected component follows the
ordinary return, refund, and restock lifecycle at its order-line quantity. A
whole-bundle policy is not supported. To return every item in a bundle, select
every component quantity; the system still records and caps each component
independently. Changing the product later never changes an existing order’s
allocations or policy snapshot.
Box builder
A Box builder offer lets the buyer fill their own box from sections you
define — for example “Choose 1 main”, “Choose 2 sides” — and pay a price you
control for the assembled box. Find it under Offers → Box builder.
Open Offers → Box builder and choose Create offer.
On the General tab, give the offer an Offer name and set Minimum
Units and Maximum Units — the smallest and largest number of items a
customer may put in the box. Use the Active toggle to control whether the
offer is live, and the Online Store and Point of Sale toggles to
control where it is available. In the Active dates card, set a Start
date & time (required) and optionally toggle Set end date to add an
expiry — offers are scheduled exactly like
discounts, in the
store’s timezone.
On the Pricing tab, set the Pricing Model (Price cap, Percentage
Off, or Amount Off) and the corresponding cap or discount. For Price cap
you can add an optional Compare At Price.
On the Products & Sections tab, add one or more sections. Each section
has its own name and its own min/max units, and you pick which products (and
which variants) the buyer may choose from in that section. A Box builder
offer can have up to 10 sections.
Fill in the offer’s page content: an optional Description shown on the
offer’s page, and a Featured image. In the SEO card, set the Meta
title, Meta description, and the page’s Web address, and pick a
Theme template if you’ve created a
bundle alternate. Blank fields fall back
sensibly — the offer name serves as the title, the description as the
listing text, and the first product image stands in for a missing featured
image.
Save the offer. Once it is Active, inside its Active dates, and
Online Store enabled, its storefront page is live at /bundles/<handle>
— the SEO card shows the exact URL and lets you edit the web address
(old URLs redirect automatically).
Frequently bought together
A Frequently bought together offer presents a set of add-on products alongside
what customers are already buying, to lift average order value. Find it under
Offers → Frequently bought together.
It is structurally a simpler Box builder: it has exactly one section, and
the section name and min/max units come from the offer itself, so you only
manage one list of products.
Open Offers → Frequently bought together and choose Create offer.
On the General tab, name the offer and set Minimum Units and
Maximum Units for how many of the grouped products are offered together.
Use the Active, Online Store, and Point of Sale toggles to control
availability, and the Active dates card to schedule when the offer runs,
the same way as a Box builder offer.
On the Pricing tab, set the Pricing Model and price the same way as a
Box builder offer.
On the Products & Sections tab (shown as Offer products here), select
the products that should be offered together. The single section
automatically uses the offer name and the min/max units you set on the
General tab.
The Description, Featured image, SEO card, and Theme template
selector work the same way as on a Box builder offer. Save.
Upsell rules
An upsell rule is a “when / then” rule: when the cart matches your trigger
conditions, then recommend a set of products, optionally at a special price.
Find it under Offers → Upsell.
Unlike the other offers, an upsell does not pre-define a fixed set of items — it
picks recommendations dynamically from the conditions you set.
Open Offers → Upsell and create a new rule, then give it a name.
On the Conditions tab, build your Trigger Conditions (“When customer
adds products… selected conditions are met”). Each condition targets either
Specific Products or Products from Collections, with an operator like
Equals any of, Not equals any of, or Is any product.
Build your Recommendation Conditions (“Then recommend products”). These
use operators including Same as trigger, Different from trigger, Equals
any of, and Not equals any of, so you can recommend the same item, a
different one, or a specific set.
On the Pricing Settings tab, choose a Pricing Model (Percentage Off,
Amount Off, or Price cap) and enter the cap or discount that applies to
the recommended products.
Set a Sort strategy for how recommendations are ordered: No sorting,
Price: Low to High, Price: High to Low, or Best Selling.
Set Min. products to get a discount (the minimum the buyer must add for
the offer price to apply — must be greater than 1) and Max recommendations
(how many products to show — must be greater than 1).
In the Placement card, choose where the rule appears: the product
page, cart page, cart drawer, and the post-purchase rail on
the order confirmation page (see
Post-purchase offers — that surface serves
one-tap cards, so builder-style offers never appear there).
In the Active dates card, set a Start date & time (required) and an
optional end date — the same scheduling as the other offers and
discounts. The rule
recommends only inside its window.
Save. New rules are added to the bottom of the priority list.
Priority
Every upsell rule has a Priority. When more than one rule could fire, the
priority order decides which wins. On the Upsell list, drag the rules by
their handle to reorder them — the top rule has priority 1, the next has
priority 2, and so on. Reordering saves immediately.
Where offers appear on the storefront
A Box builder or Frequently bought together offer reaches buyers three ways:
through its own page, through storefront search, and through the recommendation
surfaces your theme renders in context.
Every Box builder and Frequently bought together offer that is active, inside
its dates, and online-enabled has its own storefront page at
/bundles/<handle>, rendered by your theme’s bundle template (which
receives the offer as bundle_rule_offer) — or by the
alternate template chosen in the form’s
Theme template dropdown; a ?view= parameter in a link still overrides
the stored choice. The handle is generated from the offer name, and the
offer form’s SEO card shows the page URL ready to copy. Its Web
address field lets you edit the handle — changing it moves the page, and the
old URL redirects to the new one automatically, so shared and indexed links
keep working. Link the page from your navigation with the menu editor’s
Offers link type, from a campaign, or from anywhere else a URL works.
The page’s title and description come from the SEO card’s meta title and
meta description, falling back to the offer’s name and description when
blank, and a link shared to social networks carries the offer’s Featured
image — or, when none is set, the first product image in the offer.
Live offers are searchable. While its page is live, a Box builder or
Frequently bought together offer is indexed for
storefront search:
it appears in a dedicated Bundles group in the predictive-search drop-down
and as a result card on the search results page, matching on the offer’s name
and its component products. A fixed bundle surfaces as a full product tile
instead, because it is a catalog product. Taking an offer offline removes it
from search along with its page.
To merchandise offers beyond their own pages — a “Deals” or “Bundles” landing
page, for example — add the theme’s Bundle list section to any page in the
theme editor: it renders a card grid of your
live Box builder and Frequently bought together offers (up to a maximum you
choose), each with its savings badge, its featured image (else a collage of
component images), and a link to its /bundles/<handle> page.
Offers also surface contextually. The storefront engine exposes each offer type
to Liquid as a drop your theme renders in its recommendation and offer
sections — typically on the product page and in the cart — and you can pin the
bundle-builder section on any other page in the
theme editor:
bundle_rule_offer with its bundle_section_offer sections
Frequently bought together
bundle_rule_offer
Upsell rule
upsell_rule_offer
Any placed recommendation
recommended_offer
A fixed bundle renders on its own product page because it is a catalog product,
and an upsell rule has no dedicated page — it appears only where its trigger
conditions match. Inspect live values from a template with
{{ object | json }} while you build, and see the
Liquid objects reference for the full
property list of each drop.
Post-purchase offers
After a buyer places an order, the order confirmation page can show a few
one-tap add-ons. Place an upsell rule on the Post-purchase
surface and its recommendations are served first, priced with the rule’s
pricing model as a one-tap discount — the card shows the discounted price with
the original struck through. With nothing placed, the rail works with no
configuration at all: it fills automatically from products frequently bought
together with what’s on the order, topped up with best sellers. Either way the
rail never shows products already on the order. An add-on can be a single
product or one of your fixed bundles; bundle cards are labelled as such and
append the whole kit, priced and itemised exactly as it would be in the cart.
Buyers can pick a quantity of up to 10, and the card shows how long the offer
has left — or they can tap No thanks, which declines the offer and closes
it for that order. A decline is recorded as an explicit refusal, so your
analytics can tell it apart from an offer that was
simply ignored until it expired.
How the buyer pays depends on how they paid for the order:
Cash on delivery — one tap. The item goes onto the same order and the
courier simply collects the new total on delivery. No second checkout, no
second delivery, no payment step.
Prepaid — the order is already paid, so there is nothing left to grow.
The card shows what the add-on will cost and sends the buyer to your payment
provider’s page to pay just that amount. The item joins the same order once
the payment lands, so it still ships in the same parcel.
Either way the appended line is badged as a post-purchase add-on on the order
detail page.
The amendment is tightly fenced:
One add-on per order, inside a 60-minute window that starts the
first time the confirmation page shows the offer. Opening a prepaid payment
extends the window if little time is left, so nobody is sent to a payment
page that expires under them.
The order must still be unshipped, and still awaiting cash-on-delivery
collection on the COD path, when the buyer accepts.
On the COD path your
cash-on-delivery rules
are re-checked against the new total — an add-on that would push the order
past a COD limit is refused. Either way a single add-on is capped at 25%
of the order total. For a bundle, the cap and the COD re-check read the whole
bundle’s total, quantity included.
Everything appended ships in the same delivery, so add-ons are physical,
shippable, in-stock items only. A bundle is offered only when every one of
its components qualifies.
On the prepaid path the price is fixed when the buyer is sent to pay. If
anything about the item changes before the payment lands — a price change, a
component going out of stock, the order being cancelled or shipped — the
add-on is refused and the payment is refunded rather than applied at a
different price.
Troubleshooting
An offer does not appear online — confirm the offer or rule is Active,
that today falls inside its Active dates, and that Online Store is
enabled — a Scheduled or Expired badge on the form means the window,
not the toggle, is keeping it offline. That is all a Box builder or Frequently
bought together page at /bundles/<handle> needs; if a recommendation card is
missing from a product or cart page, also check that your theme renders the
offer section on that surface.
An offer doesn’t show up in search — offers are indexed only while their
/bundles/<handle> page is live, so the same Active + Active dates +
Online Store check applies. A fixed bundle is searched as a product; check
the product’s status instead.
The offer price looks wrong — re-check the Pricing Model. Price cap
charges the lower of the selection’s combined total or the cap (it never
raises a cheaper selection to the cap); Percentage Off and Amount
Off are taken off the combined component total.
I want a strike-through “was” price — set a Compare At Price on a Price
cap bundle or offer so the theme can show the original total.
Two upsell rules both match — the rule with the higher Priority (nearer
the top of the list) wins; drag to reorder.
A Box builder buyer can’t reach the right count — check each section’s
min/max units and the offer’s overall Minimum / Maximum Units; the totals
must allow a valid selection.
Next steps
Discounts — percentage, amount-off, free
shipping, and Buy X Get Y, distinct from bundles and offers.
Product types — how the Bundle product type
fits alongside physical, digital, event, and gift-card products.
Themes and the editor — place and style the
offer sections that render your bundles and upsells.
Search and discovery — how fixed-bundle
products and live offers are indexed and surfaced in storefront search.