Skip to main content

Trigger conditions: 17 building blocks

A condition is a single test the engine runs against the customer's cart and context - for example, "is the cart subtotal at least $50?" or "is a product from the Sneakers collection in the cart?" Valotrix Cart Rewards has 17 conditions. You combine them with AND, OR, and NOT to build any trigger you need.

The 17 conditions, in plain language

About the cart (4)

  • Cart subtotal at or above $X. The total price of items the customer added (before discounts and shipping) is at least the threshold. Per-currency thresholds supported - see Markets & currency.
  • Cart subtotal at most $X. The upper-bound sibling of the one above - the subtotal of items the customer added (gifts excluded) is at or below the threshold. Use it to cap an offer to smaller carts, or pair it with the "at or above" version to build a "subtotal between $X and $Y" band. Per-currency and per-market thresholds supported, same as the lower bound.
  • Cart total at or above $X. Like the subtotal but includes shipping and tax. Useful when you want the trigger to fire on the final amount the customer pays.
  • Cart has at least N items. Total item count, regardless of which products. Use this for "buy any 3 items" promos.

About specific products in the cart (6)

  • Cart has a specific product. Triggers when a chosen product (any variant) is in the cart.
  • Cart has a specific variant. Tighter than the above - triggers only when a specific variant of a product is in the cart (e.g. "Red, size M" only).
  • Cart has a product from a specific collection. Triggers when any product from a chosen collection is in the cart. Most flexible for category-wide promos.
  • Cart has at least N of a specific product or variant. "Buy 2 sneakers" type rules. You pick a product or variant and a minimum quantity.
  • A cart line has a specific custom note. Advanced - triggers when any cart line has a specific key/value line-property attached. Use this when you're tagging products with custom data via a third-party customizer or product-options app.
  • Cart contains (or doesn't contain) a subscription product. Triggers if any line in the cart is a subscription, or - in the inverted version - if no line is a subscription. Use for "free gift on subscription orders" or "free gift only on one-time orders" recipes.

About the customer (2)

  • Customer has a specific tag. Triggers when the logged-in customer has a tag you specify in their Shopify customer record. Pair with Shopify Flow to keep tags fresh (e.g. tag VIPs after spending $500 lifetime).
  • Customer is logged in. Or, in the inverted version (combined with NOT), the customer is a guest. Use to make a campaign exclusive to account holders, or to nudge guest-only flash perks.

About where the customer is shopping (2)

  • Customer is in a specific market. Use this for market-handle-level scoping (handy when your Shopify Markets are organized by region).
  • Customer is in a specific country. Country code-based - easier to set up if your markets line up with countries.

About discount codes the customer has applied (3)

  • Any discount code is applied. Triggers when the customer has any code in the cart.
  • No discount code is applied. The opposite - useful to keep gifts off carts that already have a promo.
  • A specific discount code is applied. Triggers only when one specific code is the active one.

That's 17 conditions total.

Combining with AND / OR / NOT

The condition builder lets you nest these into expressions:

  • AND - both sides must be true. Example: cart subtotal at least $50 AND a product from the Summer collection is in the cart.
  • OR - at least one side must be true. Example: customer has the VIP tag OR customer is logged in.
  • NOT - invert the condition. Example: NOT (customer is logged in) → matches guests only.

You can nest these as deep as you want. The campaign editor shows the tree visually so you can see what you've built.

Which conditions are on which plan

  • Free - 3 conditions: cart subtotal (at or above), cart subtotal at most, and cart total.
  • Growth - adds 7 more for 10 total: cart item count plus all 6 line-level conditions (specific product, specific variant, collection, minimum quantity, custom note, subscription line).
  • Pro / Scale - adds the final 7 for 17 total: the 2 customer conditions, the 2 market/country conditions, and the 3 discount-code conditions.

If you downgrade, the campaign editor flags conditions you've used that are above your new plan, and the rule keeps its data. Re-upgrading restores everything.

If you're a developer looking for the exact configuration keys, JSON shape, parameter names, and per-condition examples, head to the reference page on condition types.


Next: How free gifts get a 100% discount →