Storefront widget
The storefront widget is a single theme app block that renders every purchase option for a product — one-time, subscribe & save, monthly box, and build-a-box — as one coherent option group, instead of several competing widgets on the same page.
Purchase-option layouts
Set from the block’s Appearance settings in the theme editor:
- Template — classic (stacked list), cards, comparison (side-by-side table), or tabs.
- Frequency display — dropdown, pills, tabs, or cards. Non-dropdown styles show real “Save X%” badges computed from the plan’s actual discount, so the badge can never drift out of sync with the real price.
- Row order — one-time-first or subscribe-first; box-first or box-last. Whichever row is first is auto-selected by default.
Pricing and trust signals
- Inline per-option pricing next to each choice.
- An auto savings pill derived from the plan’s real price adjustments — never a hand-typed label that can go stale.
- An optional subscribe benefits list (bullet points you write, e.g. “Free shipping,” “Cancel anytime”).
- An optional trust row micro-copy under the subscribe option.
Theming
- Accent, text, savings, and badge colors.
- Corner radius and card shadow.
- Per-component accent colors for the option row, frequency picker, box panel, comparison table, and trust row independently — each defaults to your main accent color if left blank.
- A sandboxed Custom CSS field, scoped to just this widget instance, for anything the visual controls don’t cover.
Monthly box presentation
When a product is sold as a curated monthly box, the widget shows a dynamic collection title, an editorial note you write per month, per-item badges, and a drag/swipe carousel previewing what’s inside that month’s box. See Monthly Boxes & Build-a-Box for how to curate the contents.
How it decides what to show
| Product has attached… | Widget renders |
|---|---|
| A regular subscription plan | One-time · Subscribe & save (with a frequency picker) |
| A monthly box plan | One-time · Monthly box (with a contents preview or item picker) |
| Both | One-time · Subscribe & save · Monthly box, as one radio group |
| Neither | The block stays hidden — nothing renders |
Because every option writes to the same selling-plan field, there’s never a conflict between which choice actually reaches checkout — whatever the customer last selected is what gets added to the cart, regardless of which theme the store uses or how it triggers “Add to cart.”