The two offer types
Pick Offer (Buy X Get Y)
Trigger by a specific product or variant. When the customer adds X to their cart, they can pick 1+ items from a curated pool — each at a flat price, percent off, or fixed-amount off the regular price.
Free Gift (cart-value tiers)
Trigger by the cart’s subtotal crossing one or more thresholds. The gift variant is auto-added at €0 by the Cart Transform Function — no manual selection, no checkout step.
- Glood Pick Offer (Buy X Get Y)
- Glood Free Gift
Pick offers
A pick offer says “buy this product, and you can add up to N items from this pool at a special price.”What the customer sees
- On the PDP — a panel below the price/description with the offer title, a slot meter (“1 / 2 Selected”), and gift cards rendered as checkboxes with thumbnails, prices, and qty steppers. Picks are committed to the cart together with the main product when the customer clicks Add to cart.
- In the cart drawer / cart page — a collapsed “Add gifts” pill on the trigger line that expands into a swipeable carousel of pool items. A “Reselect” CTA on already-redeemed gift lines lets the customer swap one gift for another without leaving the drawer.
How the pricing is applied
The Glood Discount Function reads the cart-line attributes the storefront writes (__glood_uo_external_id, __glood_uo_role: 'pick', __glood_uo_slot_index) and applies the configured per-pool-item price. Each picked variant gets its own line in the cart with the adjusted price; the Cart Transform Function groups them visually under the trigger product so the customer sees a “bundle.”
Free-gift offers
A free-gift offer says “spend more, get this gift free.”What the customer sees
The same theme block surfaces a multi-tier progress panel:- Locked tier — “Spend €X more to unlock
{gift name}.” - Auto-added — the gift is qualified but the Cart Transform Function hasn’t injected the line yet (rare; sub-second).
- ✓ In cart — the gift is in the cart at €0.
0.00 directly into the cart, and the line stays as long as the subtotal stays above the tier’s threshold. Cross back below the threshold and the line is removed.
For tiers configured with multiple variants (e.g., “free t-shirt — customer picks the size”), the panel renders a <select> + Add button instead of auto-adding; the customer commits the variant explicitly.
Where the offers surface
Both offer types use the same two theme blocks:
Plus a mini-cart adapter — a single marker
<div> per cart line lets the theme dev drop the carousel/CTA into ANY theme-owned cart drawer (Dawn, custom, hand-rolled). See the developer reference for the integration contract.
Enable Upsell Offers from the app embed
Even after the app is installed, the storefront upsell pipeline stays inert until the merchant flips one switch inside the Glood app embed. This single toggle controls whetherglood-upsell.js, glood-upsell.css, the inline window.glood.upsell.* payload, and the gloodSwiper bundle get injected on every storefront page. With it off, no PDP panel, no mini-cart carousel, no free-gift progress — even if you’ve placed the theme blocks.
Step-by-step
- From your Shopify admin, go to Online Store → Themes.
- Find your live theme, click Customize to open the Theme Editor.
- In the bottom-left navigation, click Theme Settings.
- Select App embeds.
- Find Glood.AI Recommendations in the list and toggle it ON (if it isn’t already — this is the master switch for ALL Glood features).
- Click the embed name to expand its settings. Scroll to the Enable upsell offers checkbox and tick it.
- Click Save in the top right.
The Enable upsell offers checkbox is independent of the embed’s main ON/OFF toggle. The main toggle controls all Glood features (recommendations, search, bundles, upsell); the Enable upsell offers checkbox specifically gates the upsell asset bundle. Both must be on for the panels to render.
Verify the embed is active
After saving, visit any product page on your storefront and open DevTools → Console. Type:- Returns
'object'→ the embed is loaded and the upsell payload is in place. Continue to “Quick activation” below to add the theme blocks. - Returns
'undefined'→ the embed didn’t load. Re-check the toggle is ON and the Enable upsell offers checkbox is ticked, then hard-refresh (Cmd+Shift+R).
Quick activation
Once the embed is enabled, three more steps to a live offer:- Install the app — the Cart Transform Function and Discount Functions deploy automatically.
- Drop the blocks — drag Glood Upsell for PDP into your product template and Glood Upsell for Cart into your cart drawer / cart page sections.
- Create the offer — in the Glood admin dashboard, create a Pick or Free Gift offer; assign trigger products / tier thresholds; save.
How the pieces fit together
Next steps
- Enable the app embed → — turn on the storefront-side scripts and styles
- JS triggers & developer hooks → — register callbacks, drive selections programmatically, integrate with custom themes
- Existing block placement guide → — auto-listener behaviour, custom variant pickers, linked vs standalone modes