Mini-cart and gifts
Change the cart drawer that opens when a shopper adds a product, and the gift and reward thresholds behind its progress bar.
You change the drawer and the thresholds in the theme editor. The gifts themselves are Shopify products and metaobject entries.
Change what appears in the cart drawer
Go to Online Store > Themes > Customize, then pick the Mini cart section in the left sidebar. The drawer is built from blocks. Each block's Render location setting puts it in the header, body or footer of the drawer.
| Block | What it shows | Notable settings |
|---|---|---|
| Header | Drawer title and close button | Title, Show item count, Close button label |
| Purchase gifts progress | The spend-more progress bar | Heading, All gifts unlocked message |
| Gifts accordion | Collapsible list of gifts already added | Accordion heading, API URL |
| Line items | The products in the cart | Hidden products, Show price, Quantity labels, Empty message |
| Clear cart CTA | Empty-the-cart button and its confirmation | Button label, Confirm title, Cancel label |
| You may also like | Recommended products carousel | Collection, Max products, Add to cart label |
| Footer | Checkout button and shipping protection | Checkout button label, Shipping protection product |
| Free gift | A gift tied to a metaobject definition | Metaobject Type Name |
| Summary | Cart totals | Render location only |
| Discount code | Discount entry field | Input label, Placeholder, Submit label |
Two settings above the blocks apply to the whole drawer. Open when item is added controls whether the drawer opens on add to cart. Max drawer width (px) sets the width on desktop only. On mobile the drawer is always full width.
The Gifts accordion heading accepts {gift_count}, which the drawer replaces with the number of gifts in the cart.
Change gift thresholds
Thresholds are theme settings, not mini-cart section settings.
Open Customize, click the gear icon at the bottom of the left sidebar, then Rewards Tiers. There are four tiers. Each one has:
- Price Threshold, the cart subtotal at which the tier unlocks
- Title and Title in cart, which can differ
- Tier Image
- Desktop Subtitle and Mobile Subtitle, which accept
{threshold}for the raw number and{threshold_money}for a formatted price - Encouragement message and Cart encouragement message, shown while the shopper is still below the threshold
The same settings group holds the wording for the Unlock Your Free Bonus homepage section.
The Cart group under the gear icon has a second set of thresholds. They control the free shipping, free sample and free gift messages, and each has its own enable checkbox, amount and collection. These are separate from Rewards Tiers and show different wording. Check which message the shopper sees before you edit either set.
Change the automatic gift product
Under the gear icon, Products holds the gift the theme adds to the cart once a shopper spends enough.
| Setting | What it controls |
|---|---|
| Enable Product Gift | The whole feature, off by default |
| Product Gift | The product or products to add |
| Product Gift Collection | The collection shoppers choose a gift from |
| Product Gift Minimum Price Threshold | Cart subtotal required, in dollars |
| Product Gift Add Quantity | How many units get added |
| Product Gift Explainer Label, CTA Label, Badge Label | Wording on the product page |
| Product Gift Modal Title, Description, Skip CTA Label | Wording in the gift chooser |
Business rules
The progress bar and the gift logic use the cart subtotal after discounts. A discount code can take a shopper back below a threshold and remove a gift they had already unlocked.
When a line's quantity drops below 3, the theme removes its promotion label. This rule is in code, not in a setting, so changing it needs a developer.
The Free gift block lists gifts from a metaobject definition, minicart_free_gifts by default. Add or edit entries
under Content > Metaobjects. If the Metaobject Type Name setting names a definition that does not exist, the
block shows nothing and no error appears.
Products listed under Line items > Hidden products stay in the cart and still go to checkout. The setting only hides them from the drawer.
Verify the change
- Open the storefront in a private window so you start with an empty cart.
- Add a product priced below your lowest threshold. Confirm the drawer opens and the progress bar shows the encouragement message.
- Add enough to cross the threshold. Confirm the tier unlocks and the gift appears.
- Apply a discount code that takes the subtotal back under the threshold, and check what happens to the gift.
- Repeat on a phone. The drawer is full width there, and the mobile subtitle text is different.
If the drawer does not show your change, the browser has usually cached an old file and the setting is still saved. Do a hard refresh before you investigate further, then see Cart and line item errors.
Developer map
| Concern | Source |
|---|---|
| Drawer markup and blocks | sections/mini-cart.liquid, snippets/mini-cart.*.liquid |
| Drawer behaviour | src/entrypoints/mini-cart/elements/ |
| Cart requests and queueing | src/entrypoints/mini-cart/internals/cart-service.ts |
| Event names | src/entrypoints/mini-cart/internals/core.ts |
| Promotion label rule | src/entrypoints/mini-cart/internals/line-item-rules/promotion-label-quantity-rule.ts |
| Automatic gift product | src/components/purchase-gift-manager/index.ts |
| Reward tier values passed to JavaScript | layout/theme.liquid, around line 788 |
| How it fits together | Architecture: mini-cart |