Vai al contenuto
DocumentationWhat the builder checks

What the builder checks

The rules the campaign builder enforces before you publish, what it blocks outright, what it warns about, and the handful of things to watch for that it does not catch yet.

The builder validates your campaign as you type and again before you publish. This page lists what it blocks (you cannot publish until it is fixed), what it warns about (you can proceed, but read the note), and what it does not catch yet (so you can check it yourself).

What is blocked

RuleWhy
A campaign name is requiredAny length is fine, even one character; it is internal and seeds the Shopify discount title
Two tiers cannot share a thresholdDuplicate thresholds are rejected, flagged the moment you type them
Percentage or amount tiers cannot be 0A zero-value tier would be a no-op discount
Set price cannot use Whole cart countingThis combination is rejected; use "Across matching products" or narrower
Buy X Get Y "Specific items" needs a filled poolYou must add at least one get variant before publishing
Targeting picks are required when the scope needs themA products, variants, collections, or tags scope needs at least one pick
The end must be after the startAn end date at or before the start is rejected, and a campaign whose end has already passed cannot be published
These stop you from publishing until fixed

What warns you

  • Targeting drift: when auto-join is off and a new product starts matching your collection or tag, the dashboard flags it (the product still gets the discount).
  • The live example and receipt in the builder rail update as you type, so you can catch a set basis or repeat setting that produces a surprising result before you publish.
  • Stacking conflicts between your campaigns are detected and surfaced, including when you would exceed the store-wide slot limit.

What to watch for yourself

A few things are not caught yet. None of them will break your store, but they are worth a manual check.

Set price is per unit, not the whole cart

A set price sets the price of each eligible unit, not a total for the cart. "Set price $25" means every eligible item is $25, not "any of these for $25 total".

Include and exclude conflicts

If the same product is in both the include and exclude lists, the exclude wins and the item is left out. The builder does not warn on the overlap yet.

Buy X Get Y "Specific items" needs its pool

This one is blocked at publish, but it is the most common reason a Buy X Get Y campaign will not save: make sure the get pool has at least one variant.

Money thresholds and multiple currencies

Watch out

Spend thresholds are measured in your store currency, without conversion

A spend threshold and any fixed money amount are set in your store’s currency. At checkout, the amount arrives in the shopper’s currency and is compared against your number without converting between currencies. So a "spend $100" goal is measured as "spend 100" in whatever currency the shopper pays in, which is not equivalent across currencies. Percentage rewards are always correct in any currency. If you sell in several currencies, prefer percentage-based goals until full multi-currency handling ships.

Reference

A validation matrix (each rule with a concrete example) will be generated from the schema and tested fixtures.

Utilizziamo cookie essenziali per il funzionamento del sito e, solo con il Suo consenso, cookie di analisi per comprendere il traffico. Legga la nostra Informativa sui Cookie.