ComposeKit Docs Support Privacy

Documentation

ComposeKit docs

Everything you need to build bundles, volume discounts, mix & match sets, BOGO offers, subscription boxes, and guided configurators — with discounts applied automatically at checkout. No Shopify Plus, no theme code.

Fixed bundles

Group complementary products into a curated set.

Multi-product bundles

Always-included groups mixed with pick-one steps.

Mix & match

Let customers build their own bundle from your catalog.

Volume discounts

Tiered quantity breaks that scale with quantity.

Buy X get Y

Automatic BOGO — free or partly discounted.

Composite configurator

Guided multi-step builds with compatibility rules.

Free gift

Auto-added gift at a quantity or spend threshold.

Subscription bundles

Buy once or subscribe, discount intact.

Per-unit variants

A different size or colour for every unit in the bundle.

Coupon blocking

Stop codes stacking on top of bundle discounts.

Six widget layouts

Cards, grid, list, compact, minimal, sidebar.

Live price sync

Component prices never go stale.

Overview

ComposeKit adds a bundle/offer widget to your storefront. You create configurators in the app admin, choose which products they include, and set the discount. When a shopper clicks the add button, every component is added to the cart as a real Shopify line item and the discount is applied automatically at checkout — the shopper never needs a code.

Three things make up an offer:

The same pricing engine is shared by the storefront widget, the admin live preview, the POS tile, the cart and checkout — so what a shopper is quoted is what they are charged.

Installation

1
Install the app. From the Shopify App Store, click Add app and approve the requested permissions.
2
Open ComposeKit from Apps in your Shopify admin. The home page is your Configurators list.
3
Activate bundle pricing — one click, see below. Without it, widgets render but discounts don't apply.
4
Create your first configurator, or start from a template on the Templates page.
5
Add the widget to your theme as an app block, or paste the shortcode wherever you want it.

Activate bundle pricing NEW

One click on the ComposeKit home page — required before discounts work.

ComposeKit prices bundles with Shopify Functions, which have to be registered on your store. If they aren't, the home page shows a banner:

Bundle pricing is not active on this store. Widgets render on your storefront, but discounts will not apply in cart or checkout until the pricing engine is activated.

Click Activate bundle pricing and you're done — it registers ComposeKit's cart transform and checkout validation. A second, softer banner may appear: Checkout validation is off — activating it also blocks invalid configurations at checkout. The Pricing engine card at the top of the home page always shows the current state as Active or Inactive.

Place the widget

No code editing — the widget is a theme app block.

  1. Go to Online Store → Themes → Customize.
  2. Open the product template (or any other template) and add the ComposeKit configurator app block where you want the bundle to appear.
  3. Save. The widget renders wherever an active configurator applies.

The block only renders when the product has an Active configurator and Hide bundle widget on product pages is off. In the theme editor you'll see a short placeholder message explaining which of those is missing.

Block settings

SettingWhat it does
ProductLeave empty on a product page to use that product. Required when you place the block on the Home page or any non-product page.
Design layoutUse app settings, Image cards, Product grid (big images), Classic list, Compact rows, Minimal (borderless), or Sidebar (summary beside options).
Grid columns1–8, used by the Product grid layout.
Color schemeFollow theme, Light, or Dark. Use Dark on dark themes if the widget looks washed out.
Show selected image previewShows a large preview image of the selected components above the options. Off by default.
Custom border & spacingOverrides the store-wide style for this block only — then set Border width, Option spacing and Option padding.
Intro text · Total label · Button labelThe widget's copy. Defaults: “Choose the components for your finished product.”, “Configuration total”, “Add configuration to cart”.
Accent colorOverrides the accent for this placement.
Which setting wins? Placement settings (block / shortcode) override the per-configurator Step 5 · Style settings, which override the store-wide Settings page defaults.

Shortcode placement NEW

Put a bundle widget on a landing page, a blog post, or anywhere in your theme.

Every configurator has a shortcode, shown in Step 1 of the editor and in the Shortcode column of the Configurators list (with a Copy button):

[composekit product="my-bundle-handle"]

There are two ways to use it:

  1. As a section or block. In the theme editor, add the Bundle shortcode widget app section (or block) wherever you want the widget, and paste the shortcode into its settings.
  2. Inside rich text. To use it in a page or blog body, turn on the ComposeKit shortcode app embed once (Theme settings → App embeds), then paste the shortcode into the content.

Shortcode attributes

[composekit product="my-bundle-handle"
            total="Bundle total"
            button="Add to cart"
            layout="cards"
            columns="3"
            scheme="dark"]

layout accepts cards, grid, list, compact or minimal; columns takes 1–8; scheme takes light or dark. The app embed itself also carries layout, columns, colour scheme, and optional border/spacing/padding overrides.

Tip: Combine the shortcode with Hide bundle widget on product pages when you want the bundle to live only on a dedicated landing page.

Templates & demo data NEW

Ten ready-made presets, plus a full demo catalog you can practise on.

The Configurator templates page gives you a working structure in one click — you only connect your own variants afterwards. Each card shows the plan it needs; most work on the Free plan.

Bundle offersPreset
Fixed bundle15% off a set package.
Mix-and-match bundle10% off, shoppers pick 1–6 items.
Multi-product bundleFrequently-bought-together package at 10% off.
Volume discountThree tiers: 2 → 10%, 3 → 15%, 5 → 20%.
Buy X get YBuy 2, get 1 free.
Gift with purchaseFree gift unlocked at 3+ items.
Subscription boxCurated box, buy once or subscribe, 10% off.
Composite configuratorsPreset
Build a PCProcessor, Motherboard, Memory, Storage — ready for compatibility rules.
Build a BikeFrame, Wheels, Accessories.
Product + add-onsA base product with optional add-ons.

Load demo data

The Load demo data button creates a full demo catalog (PC parts and coffee) with a working configurator for every feature. It is safe to run more than once: existing products and configurators are never overwritten, and missing product images are filled in.

The 5-step editor

A Setup progress card at the top tracks where you are — only two steps are required.

StepWhat you set
1 · ProductTitle, Status (Active/Draft), configurator type, the parent Shopify product, and the shortcode.
2 · PricingDiscount or tiers or BOGO rules, discount cap, subscriptions, free gift, parent price sync, cart display, translations.
3 · ComponentsComponent groups, the variants in them, selection type, quantity rules, per-unit variant pickers.
4 · Rules (optional)Conditional compatibility rules — show, hide, require or limit a group.
5 · Style (optional)Accent colour, radius, size, layout, grid columns, colour scheme, branding.

A Widget preview card sits beside the form on every step and renders the default selection with the same pricing engine the storefront and checkout use, so the total you see is the total your shopper pays. It also respects your current plan, so it shows exactly what will be saved.

Status matters. Only Active configurators render on the storefront, count against your plan's configurator limit, and take part in coupon blocking and subscription pricing. Draft saves your work without going live.

Fixed bundles — “Better together”

A curated set of products sold together at a bundle price.

  1. Create a configurator → choose Fixed bundle.
  2. Add the products that make up the bundle and set each one's Quantity.
  3. Set a bundle discount (percentage, amount off, or a fixed bundle price).
  4. Set Status to Active and save.

Every component in every group always ships with the bundle at its configured quantity — shoppers don't pick or change quantities, so selection and quantity settings stay hidden. A component with a quantity above 1 shows as “× N” in the widget, and the editor shows the maths (price × qty = line total).

Example Coffee Grinder + House Blend → 10% off the set.

Multi-product bundles

Ship a fixed package, but let shoppers pick their option where it matters.

By default, every component in a multi-product bundle group ships with the bundle at its configured quantity — the shopper can see it but can't untick it. Turn on Let shoppers choose in this group to convert that one group into a pick-your-option step, while the rest of the package stays fixed.

Setting it up

  1. Create a configurator → choose Multi-product bundle.
  2. In Step 1, pick the product that represents the package at checkout (usually a dedicated “Bundle” product). Customers buy it and it expands into the components with the discount applied.
  3. In Step 3 · Components, add a group for each part of the package.
  4. Leave a group as-is to make it always included — set each component's Quantity and you're done.
  5. Tick Let shoppers choose in this group on any group that should be a choice. The group resets to a clean single pick (Selection = Single, Required on) and the selection controls become editable for that group only.

How the two group types behave

 Always included (default)Let shoppers choose
In the widgetPre-selected, checkbox disabled — the title shows “× N” when the quantity is above 1.Radio buttons for a single pick, checkboxes for multiple, plus a quantity input when Selection = Multiple.
QuantitiesEach component's configured Quantity is used.Per-component quantities are ignored; the group's min / max / step rules apply instead.
RequiredAlways in the bundle.Required by default — add-to-cart is blocked until the shopper picks.

Groups are independent, so one bundle can freely mix always-included groups with pick-one groups. Existing multi-product bundles created before this feature keep their original always-included behaviour.

Example A gift box that always contains the candle and the card, plus a group where the shopper picks one of three scents.

Mix & match — “Build your own”

Customers pick their favourites, with live pricing as they choose.

  1. Create a configurator → choose Mix and match.
  2. Add the eligible variants to a group and set Minimum / Maximum / Step (pick any N).
  3. Set the bundle discount. The total updates live as items are selected.

Volume discounts — “Buy more, save more”

Quantity breaks that reward larger orders.

  1. Create a configurator → choose Volume discount (quantity breaks).
  2. Add tiers with Buy at least and Discount percent — e.g. 2+ → 10%, 3+ → 15%, 5+ → 20%.
  3. Add as many tiers as you like; each must use a different quantity.

The highest tier the shopper reaches discounts the whole bundle. Tiers render as clickable pills reading “Buy 3+” / “Save 15%”, with a Best value badge on the top tier; reached tiers are highlighted. Clicking a pill bumps the selection straight to that tier's quantity.

Plan note: Volume tiers unlock on Starter. On the Free plan you can select the mode but the tier fields stay disabled.

BOGO — “Buy X get Y”

Buy X, get Y free — or at a partial discount.

  1. Create a configurator → choose Buy X get Y.
  2. Set Buy quantity (X), Get quantity (Y), and Get discount percent — 100 means free, 50 means half price.
  3. Save. The discount applies automatically — no code for shoppers to enter.

ComposeKit repeats the cycle across the whole selection: buy 2 get 1 on 6 units discounts 2 units. The cheapest eligible units are the discounted ones, so the shopper always gets a fair result, and BOGO never stacks on top of the base bundle discount.

Subscriptions are not available for Buy X get Y configurators — the Allow subscription purchase option is hidden in this mode.

Composite configurator — “Guided builds”

Walk customers through required component groups to assemble a finished product.

  1. Create a configurator → choose Composite configurator.
  2. Add a group per decision (Processor, Memory, Storage…) and mark which are Required.
  3. Optionally add compatibility rules so incompatible parts can't be combined.

Every component stays a real SKU in the cart, so stock and fulfilment work normally.

Plan note: Composite configurators require Growth or higher.

Free gift

Add a gift automatically once the shopper hits a threshold.

In Step 2, tick Offer a free gift and set:

The widget shows live progress — “Add 2 more to unlock a free gift: Travel Mug” or “Spend $20.00 to unlock a free gift: Travel Mug” — and switches to “Free gift included: Travel Mug” when met. The gift is added by the pricing engine at 0.00, so it can't be gamed from the browser.

Plan note: Free gifts require Starter or higher. Free gifts don't apply to subscription orders yet.

Subscription bundles NEW

Let shoppers buy the bundle once or on a recurring plan, discount intact.

  1. In Step 2, tick Allow subscription purchase.
  2. Make sure every component product is part of the selling plan offered on the parent product's page.
  3. Save. Your theme's own selling-plan selector drives the choice — ComposeKit reads it.

When a shopper picks a selling plan, components are added as separate subscription lines and the bundle discount is applied automatically at checkout. When they pick one-time purchase, the normal merged bundle line is used instead.

Good to know. Subscriptions require Starter or higher, aren't available for Buy X get Y, and free gifts don't apply to subscription orders yet. If a shopper selects a plan on a bundle that doesn't allow it, they see: “Subscriptions are not available for this configuration yet. Choose one-time purchase instead.” Subscription lines don't carry the “You save” cart note.

Component groups & quantity rules NEW

Set in Step 3 · Components. Each group becomes a section in the widget.

FieldWhat it does
Group nameThe section heading shoppers see. Translatable per locale.
SelectionSingle → radio buttons, one pick. Multiple → checkboxes plus a quantity input.
RequiredAdd-to-cart is blocked until the shopper picks in this group.
Minimum / Maximum / StepQuantity rules for Multiple groups — e.g. min 3, step 3 means 3, 6, 9. Enforced in the widget, at POS, in the cart and at checkout.
Quantity (per component)Fixed-package groups only: how many units of that component ship with the bundle.

Add components by searching (Search products or variants) and selecting several at once with Add selected components, or one at a time in single-selection groups. A variant can only appear once per group.

Per-unit variant pickers

Let a shopper buying three t-shirts choose a different size for each one.

When a bundle asks for more than one unit of the same product — a volume tier, a fixed quantity, a BOGO total — shoppers can pick that product's options independently for each unit, instead of being locked to a single variant for all of them.

Turning it on

  1. Open the configurator → Step 3 · Components.
  2. Inside the component box, find Let shoppers choose per unit and tick the options you want to expose — these are that product's own Shopify option names (Size, Colour, Model…). The control only appears if the product actually has options.
  3. Optional: tick Also use as a variant selector for a single unit to show the dropdowns even at quantity 1. With it on, the row's title, price and image follow the picked variant; with it off, the dropdowns appear only from 2 units up.
  4. Save the configurator.

What the shopper sees

A panel below the component with one row per physical unit — #1, #2, #3… — each with a dropdown per exposed option. Changing a dropdown swaps that unit to the matching variant and re-prices the bundle immediately. Sold-out picks are flagged inline and block add-to-cart. At a single unit the “#1” label is dropped, so it reads as an ordinary variant dropdown.

Good to know

Example “Buy 3 tees, save 20%” — the shopper takes S in navy, M in navy, and L in white, all in one bundle.

Pricing options

Set in Step 2 · Pricing. Hidden for Volume and Buy X get Y, which price from their own rules.

Bundle discountWhat it does
Percentage offA straight percentage off the bundle subtotal.
Amount offA currency amount off the bundle, converted to the equivalent percentage of the selection subtotal.
Fixed bundle priceThe shopper pays exactly this total; ComposeKit works backwards to the equivalent discount.

How the price reaches the cart

ComposeKit bakes the bundle discount into each component's unit price rather than applying it as a single line-level discount. Each cart line shows its own discounted share, and the bundle total is the sum of its components — so what the widget quotes is what checkout charges.

All-or-none pricing. Shopify requires that in an expanded bundle either every component carries a price or none do. If a single component's price is missing — usually an older configurator saved before component prices were stored — ComposeKit falls back to Shopify's legacy allocation for the whole bundle. If a bundle's total ever looks wrong or undiscounted, open the configurator and re-save it so every component has a current price.

Discount cap NEW

A hard ceiling on how much any single order can be discounted.

Tick Cap the maximum discount in Step 2 and set Maximum discount amount. No order is ever discounted by more than this amount, whichever configurator type or discount you use — including BOGO, where every discounted unit is scaled down proportionally so the total lands exactly on the cap.

Useful for high-ticket catalogs where a flat percentage would give away too much on the biggest builds.

Block coupon codes NEW

Stop discount codes stacking on top of your bundle discounts. On by default.

Bundle discounts are already applied automatically, so a shopper who also enters a coupon code would be double-discounted. ComposeKit prevents that store-wide.

Go to Settings → Discounts:

The setting applies to every Active configurator and takes effect at checkout as soon as you save.

One Shopify limitation: a code that was already applied to the cart before the bundle was added can't be revoked. Codes entered after the bundle is in the cart are rejected as expected.
Want codes to work on bundles? Turn the setting off. Shopify still allows only one automatic discount per line, so plan your offers so they don't unintentionally overlap.

Parent price sync NEW

Keep your bundle product honest in Meta, Google and TikTok catalogs.

A bundle's real price comes from its components, so the parent product's own price is often wrong — which is a problem the moment you publish it to an ad or social catalog.

Tick Keep parent product price in sync (ad & social catalogs) in Step 2. On save — and whenever a component's price changes — the parent product's price is set to the discounted total of the default selection, so ads, feeds and search results quote the right number.

Cart display & hiding the widget NEW

Cart line display

Cart line display in Step 2 chooses how the bundle appears in the cart:

What shoppers read in the cart

Grouped bundle lines carry readable line properties that any theme renders: Includes (e.g. “Ceramic Mug - Large × 2, House Blend × 1, Travel Mug × 1 (Free gift)”), Regular price, and You save. All three are translatable.

Hide bundle widget

Tick Hide bundle widget on product pages to keep the widget off the product page. Discounts still apply in cart and checkout, and the widget still renders anywhere you place it with the shortcode or the Bundle shortcode widget section.

Compatibility rules NEW

Step 4 — stop shoppers building something you can't ship.

Each rule reads as a sentence: If {variant}, then {action} {group}.

ActionEffect
ShowThe target group only appears once this variant is chosen.
HideThe target group disappears (and any selections in it are dropped).
RequireThe target group becomes mandatory.
LimitThe target group's maximum quantity drops to your Maximum value.

Rules are enforced everywhere — the storefront widget, the POS tile, the cart and checkout — so a rule can't be bypassed by editing the cart.

Plan note: Conditional logic unlocks on Growth. Existing rules stay visible on lower plans but can't be saved.

Appearance & layouts NEW

Six layouts, light/dark control, and spacing you can tune — no CSS.

LayoutBest for
Image cardsThe default — thumbnails, highlighted selection, strikethrough prices.
Product gridBig product images side by side; set Grid columns 1–8.
Classic listCompact text rows, no images.
Compact rowsDense list with small thumbnails.
MinimalBorderless rows with hairline dividers, no images.
SidebarOptions with a summary panel beside them.

In Step 5 · Style you also get Accent color, Border radius, Widget size (Compact / Standard / Large), Color scheme (Follow theme / Light / Dark) and Show ComposeKit branding. The store-wide Settings page adds Border width, Option spacing and Option padding.

Dark themes: if the widget looks washed out, set Color scheme to Dark instead of Follow theme. Removing the “Powered by ComposeKit” line requires Growth or higher.

Translations & custom text NEW

Two layers: store-wide labels, and per-bundle names.

Store-wide widget labels

Settings → Widget language overrides every label the widget shows, per locale:

{
  "fr": {
    "strings": {
      "required": "Obligatoire",
      "outOfStock": "Épuisé",
      "youSave": "Vous économisez {amount}"
    }
  }
}

Overridable keys: required, outOfStock, youSave, giftIncluded, giftSpendMore, giftAddMore, chooseOption, chooseOneOption, itemOutOfStock, quantitySteps, quantityMax, addToCartError, subscriptionUnavailable, quantityFor, cartIncludes, cartFreeGift, cartRegularPrice, cartYouSave. Leave it as {} for English defaults.

Per-configurator names

The Translations (optional) card in Step 2 overrides this bundle's title and group names per locale:

{"fr":{"title":"Configurez votre planche","groupNames":{"frame":"Cadre"}}}

Paste the JSON and click Apply translations.


Settings page NEW

Store-wide defaults, with a live preview beside them.

CardSettings
Widget defaultsDesign layout, Grid columns, Color scheme, Accent color, Corner radius, Border width, Option spacing, Option padding, Cart line display, Default locale, Support email.
DiscountsBlock coupon codes on bundle orders and its custom message — see Block coupon codes.
Widget languageStore-wide label translations — see Translations.
CompatibilityConfirms what's supported: theme app block, contextual currencies, subscription selling-plan forwarding, Shopify-managed component inventory, and the ComposeKit POS tile.
Live previewA sample widget that updates as you change the settings.

Everything here is a default — each configurator and each theme placement can still override it.

Automatic price refresh NEW

Component prices never go stale.

Most bundle apps store component prices when you save and let them drift. ComposeKit listens for product updates: when you change a variant's price in Shopify, every configurator using that variant is refreshed automatically, the parent price is re-synced if you enabled it, and the checkout pricing rules are rebuilt.

There is nothing to configure. If a total ever looks stale anyway, opening the configurator and saving it forces a full refresh.

Import & export NEW

Move a configurator between stores, or keep a backup.

Analytics

The Analytics page shows, per configurator:

Views and adds to cart are tracked on all plans. Purchases and revenue require Growth or higher.

Point of Sale NEW

Build the same bundles on the shop floor.

The ComposeKit POS tile lets staff pick a configurator, choose components and add the configuration to the POS cart. It honours required groups, single/multiple selection, min/max/step quantity rules, compatibility rules and stock, and it writes the same data as the storefront widget, so the same pricing and validation apply.

Current POS limits. The POS tile doesn't yet show bundle prices or savings, has no per-unit variant pickers, and doesn't handle fixed components with a quantity above 1 — for those bundles, use the storefront widget.

Plans & billing NEW

Flat pricing, never revenue-based. All paid plans include a 14-day trial.

 FreeStarterGrowthEnterprise
Monthly$0$6.99$9.99$14.99
Active configurators2525Unlimited
Components per configurator525UnlimitedUnlimited
Bundle discounts (%, $, fixed price)
Buy X get Y
Volume tiers
Live inventory sync
Quantity rules
Per-unit variant pickers
Discount cap
Coupon-code blocking
Free gift
Subscription bundles
Separate cart components
Composite configurators
Conditional compatibility logic
Multi-currency support
Remove ComposeKit branding
AnalyticsBasicBasicFullFull
Config export API

Switch Billing interval to Yearly to save 10%. Shopify prorates upgrades and downgrades. If you cancel, your store returns to the Free plan and configurators beyond the Free limits are paused, not deleted — they come back when you upgrade again.


How discounts apply

ComposeKit applies discounts using Shopify's native discount and Functions APIs. This means:

Only one automatic discount can apply to a given line at a time, per Shopify's discount rules. Configure offers so they don't unintentionally overlap. Coupon codes are rejected on bundle orders unless you turn that off in Settings → Discounts.

Troubleshooting

Discounts aren't applying at all

Open the ComposeKit home page and check the Pricing engine card. If it reads Inactive, click Activate bundle pricing — widgets render without it, but nothing is discounted until it's registered.

The cart total doesn't match the widget price

Open the configurator and save it again. This refreshes every component's stored price; a single missing price disables per-item pricing for the whole bundle and falls back to Shopify's default allocation.

Shoppers see “This ComposeKit configuration is incomplete or incompatible”

The bundle line in the cart no longer matches the configurator — usually because you edited the configurator after the item was added, or the selection was altered. Ask the shopper to remove the line and configure the product again. Buying the parent product on its own is unaffected; it simply sells at its own price with no bundle discount.

A shopper's coupon code was rejected at checkout

That's Block coupon codes on bundle orders, which is on by default. Turn it off in Settings → Discounts if you want codes to stack, or set a friendlier message under the discount-code field.

New variants don't show in the per-unit dropdowns

The variant list is captured on save. Re-open the configurator, re-tick the options under Let shoppers choose per unit, and save.

Shoppers can't untick an item in a multi-product bundle

That group is set to always-included. Tick Let shoppers choose in this group on the group to make it selectable.

The widget doesn't appear on a product page

Check four things: the ComposeKit app block is added to the product template; the configurator's Status is Active; it's assigned to that product; and Hide bundle widget on product pages is off.

The widget looks washed out or unreadable on my theme

Set Color scheme to Dark (or Light) instead of Follow theme — in the theme block for one placement, in Step 5 for one configurator, or in Settings for the whole store.

Subscription bundles aren't discounted

Check that Allow subscription purchase is on, your plan is Starter or higher, and every component is part of the selling plan on the parent product. Buy X get Y bundles can't be sold on subscription.

My bundle product shows the wrong price in Google/Meta ads

Tick Keep parent product price in sync (ad & social catalogs) in Step 2 and save — the parent's price is then kept at the discounted bundle total.

FAQ

Do my customers need to enter a discount code?

No. All ComposeKit discounts are applied automatically at checkout. By default, codes customers do enter on a bundle order are rejected so they can't stack — you can turn that off in Settings.

Does this require Shopify Plus?

No. ComposeKit works on all Shopify plans.

Will it work with my theme?

Yes. The widget is added as a theme app block, so it works with any Online Store 2.0 theme without editing code. You can also place it anywhere with the shortcode.

Can I put a bundle on a landing page instead of a product page?

Yes — use the shortcode, optionally with Hide bundle widget on product pages turned on.

Can I run multiple offers at once?

Yes — create as many configurators as your plan allows. Shopify permits only one automatic discount per line, so avoid overlapping offers on the same products.

Can shoppers pick a different size for each item in a bundle?

Yes — see Per-unit variant pickers. Units that end up on the same variant are merged into one cart line.

Can customers subscribe to a bundle?

Yes, on Starter and above — see Subscription bundles. Buy X get Y is the one exception.

Do component prices update when I change them in Shopify?

Yes, automatically — see Automatic price refresh.

Can I translate the widget?

Yes — store-wide labels in Settings → Widget language, and per-bundle titles and group names in Step 2. See Translations.

Can I cap how much a bundle discounts?

Yes — Cap the maximum discount works across every offer type, including BOGO.

Does it work with POS?

Yes, with limits — see Point of Sale.

Can I remove the “Powered by ComposeKit” line?

Yes, on Growth and above — untick Show ComposeKit branding in Step 5.

What happens to my configurators if I downgrade or cancel?

Nothing is deleted. Configurators beyond the new plan's limits are paused, and reactivate when you upgrade again.

What happens to my data if I uninstall?

Your configuration data is deleted or anonymized within 30 days. See our Privacy Policy.

How do I get help?

Email us — see Support below. We typically reply within one business day.

Support

Need a hand? We're happy to help — we typically reply within one business day.

Email: aktofy.store@gmail.com
Website: https://aktofy.store/
Privacy: Privacy Policy