1 min read

Flagship section

Le Coffret — box builder

Let customers compose their own box, piece by piece, with live pricing, bundle rewards and optional add-ons like ribbons and gift boxes. It is entirely data-driven — connect products and it just works.

How it works#

The builder shows an empty box of a fixed capacity. Customers tap flavours to place pieces until the box is full, choose any add-ons, and add the whole thing to the cart in one action. The composition is recorded as line-item properties, so it flows through to the order and the packing slip.

The coffret box builder — an empty nine-slot box on the left and the pieces picker on the right
The box builder on the storefront — fill the nine slots from the pieces list; the price and count update live.

Two ways to price a box

The builder supports a fixed-price box (one product, one price regardless of contents) and a sum-of-pieces box (price adds up from each connected piece). The Pricing & add to cart setting picks the mode, or leaves it on Automatic.

Pricing modes

Automatic
Uses the connected coffret product’s price if there is one; otherwise falls back to summing connected pieces. The safe default.
Fixed price
Always charges the connected coffret product’s price. Pieces are decorative choices recorded as properties. Best for a set “box of 9”.
Sum of pieces
Each piece is its own product; the total is the sum. Best for pick-and-mix pricing. Pair with the minimum pieces rule.

Setup#

Add the Coffret box builder section, then configure the section settings and add Piece blocks (or a Pieces from collection block) for the flavours customers can choose.

SettingTypeDefaultDescription
atc_modeselectAutomaticPricing & add-to-cart behaviour (Automatic / Fixed price / Sum of pieces).
coffret_productproductFixed-price mode: the product added when the box is sealed. Its composition rides along as properties.
capacitynumber9Pieces per coffret — the size of the box grid.
fill_ruleselectWhether add-to-cart requires a full box or just a minimum number of pieces.
min_piecesnumber4Used with the minimum rule; capped at capacity.
ribbon_optionalcheckboxMakes every add-on group skippable at once (no defaults preselected).

Piece blocks

Each Piece block is one flavour. Connect a product to make it a real, priced item; leave the product empty for a purely decorative choice. You can also drop in a Pieces from collection block to pull a whole collection of flavours at once.

SettingTypeDefaultDescription
productproductThe product this piece adds (optional in fixed-price mode).
nametextDisplay name — defaults to the product title.
notetextA short tasting note shown in the piece details dialog.
color_basecolorShell colour of the piece token in the box.
color_topcolorAccent colour of the piece token.

Piece details dialog

Every product-linked piece gets a small “eye” button. Tapping it opens a details dialog with a large image, price and the tasting note — without adding the piece. Tapping the rest of the pill adds it.

Bundle discount#

Reward a full box with an automatic bundle message and — optionally — an auto-applied discount code at checkout.

SettingTypeDefaultDescription
discount_percentnumber00 turns the message off. Must match a discount you configured in Shopify admin.
discount_min_piecesnumberHow many pieces unlock the bundle.
discount_codetextOptional code auto-applied at checkout when the box qualifies.

Create the discount in admin first

The builder displays and can auto-apply a discount, but it does not create one. Set up a matching automatic discount or code in Discounts, then enter the same percentage (and code) here so the maths and checkout agree.
Bundle discount settings in the theme editor
Bundle discount settings in the theme editor.

Add-ons (ribbons, boxes, stickers)#

The Add-on option block lets customers finish their box — a gift box, a ribbon, a sticker, a gift note. Here’s how they behave on the storefront:

  • Grouped, single-select choices. Options that share a Group (Box, Ribbon, Sticker…) render as one row, and the customer picks one option per group.
  • They unlock after the first piece. The add-on area stays locked (with a hint) until at least one piece is placed — compose first, then finish with the wrapping.
  • Thumbnail or swatch + a “+ price” badge. Paid options add their price to the box’s live total the moment they’re selected.
  • Optional or required. An optional group is skippable; otherwise its first option is preselected.

Connect a product to charge for an option (a paid add-on, added to the cart as its own line); leave it empty for a free one.

SettingTypeDefaultDescription
grouptextRibbonOptions with the same group form one selectable row.
nametextThe option’s label.
imageimageThumbnail — falls back to the linked product image, then a colour swatch.
colorcolorSwatch colour when there is no image.
productproductConnect to charge for the option (a paid add-on).
optionalcheckboxLets shoppers skip this group.

Add-on products are best kept out of your storefront — see Add-on products for the recommended “unlisted” setup.

What lands in the order#

When the box is added, its choices are attached as line-item properties, so your team sees exactly what to pack:

order line item
Le Grand Coffret  ×1
  Pieces:  Palet d'Or, Cœur Framboise, Caramel Beurre Salé, …
  Box:     Walnut Gift Box
  Ribbon:  Silk — Champagne

Silk Ribbon  ×1        (paid add-on, its own line)
Walnut Gift Box ×1     (paid add-on, its own line)

Properties vs. lines

The box records every choice as line-item properties (Pieces, Box, Ribbon…). Each paid add-on is also its own cart line so it’s billed and fulfilled; free options are recorded on the box only. Full detail on Add-on products.
Last updated July 2026