Skip to main content

Out-of-stock gifts

Every gift product has finite inventory. Sooner or later, a campaign that uses a specific gift will hit zero. Valotrix Cart Rewards has one per-rule toggle that controls runtime behavior, plus one shop-wide background check that auto-disables broken rules.

Per-rule toggle: "Continue if a gift is out of stock"

In the rule editor's Rewards panel, the toggle "Continue if a gift is out of stock" controls what happens when the engine evaluates a cart whose qualifying customer would get a gift that's currently OOS.

  • Off (default) - "If any gift product is out of stock, no gifts are added. The entire reward is paused until all products are back in stock." The customer crosses the threshold and nothing happens. Use this when a partial gift would feel wrong (e.g. a curated bundle where a missing piece breaks the experience).
  • On - "If one of your gift products is out of stock, the remaining gifts are still added. Example: You offer Product A + Product B as gifts. If Product A sells out, customers still get Product B." Use this for "any of these" reward sets where any in-stock gift is better than no gift.

This toggle is per-rule, not per-campaign. A multi-rule campaign can mix policies if it makes sense.

Shop-wide auto-disable: when ALL gift variants are OOS

Independent of the per-rule toggle, a background check runs whenever you open the campaign list. It scans every enabled rule's gift variants against Shopify's inventory; for any rule where every gift variant is:

  • Out of stock, AND
  • Inventory-tracked, AND
  • Set to stop selling when out of stock (the strict mode in Shopify's inventory settings)

…the rule is disabled automatically. You'll see it in the campaign list with the rule toggled off, and you'll get an email with the subject "⚠️ N rule(s) auto-disabled - <your-shop>" (where N is the count and <your-shop> is your .myshopify.com domain). Delivery is limited to one per hour per shop so a flurry of stockouts doesn't spam your inbox.

Rules with at least one in-stock variant stay enabled. Rules whose variants are set to allow overselling when out of stock are never auto-disabled - Valotrix Cart Rewards trusts the inventory setting you chose.

Why background check, not webhooks

A natural-feeling design would listen to Shopify's inventory webhooks and disable rules in real time. We chose the campaign-list approach instead because:

  1. It's safe to run repeatedly - the check is just a read; running it 10 times has the same outcome as running it once.
  2. It avoids piling up webhook volume on stores with thousands of variants and frequent restocks.
  3. Merchants who don't open the campaign list are unlikely to be running active gift promos, so the timing matches when you're actually paying attention.

The trade-off is a small timing window: a customer who's checking out at the exact moment of stockout may still see the gift add successfully (and the discount still applies). For gifts where shipping fulfillment matters, pair this with the Shopify Flow recipe for auto-disable on stockout for a real-time backup.

What's NOT supported

  • No "fallback gift product" substitute. The "continue if a gift is out of stock" toggle filters out-of-stock variants from your existing gift list - it doesn't pull in a replacement product. To run "Product A or B if A is out of stock," configure the rule with both A and B in the gift list and turn the toggle on.
  • No per-campaign auto-disable behavior selector. Auto-disable runs at the rule level shop-wide; you can't customize it per campaign.

Next: Full FAQ →