Agentis Solution

Margin Checks on Every Promotional Order, Before It Ships

A per-order margin layer for promotional traffic (coupon stacks, sitewide sales, BFCM campaigns, loyalty redemptions) that flags or holds below-floor orders before fulfillment, without touching checkout.

The Problem

Promotional traffic concentrates margin risk. During a campaign, accidental discount stacking (WELCOME10 + SUMMER20 + a free-shipping threshold + a loyalty redemption) can drop an order below cost without any single team having visibility, because each discount was valid on its own. The result is a celebrated 'top revenue month' with negative-margin orders hiding inside it, discovered only when the month closes.

How Agentis Solves It

Agentis checks the full discount stack on every promotional order within 60 seconds of it being placed, comparing the resulting net margin against your configured floor (per SKU, per category, or per channel). The discounts were already applied at checkout, and Agentis doesn't change what the customer saw. What it does is make sure a below-floor order doesn't ship unnoticed: it flags the order with the leak and a recommended fix, or holds it automatically before fulfillment under rules you approve. Because it sees each order as it arrives, it also shows which codes and combinations are producing the losses, so marketing can fix the campaign in Shopify while it is still running.

Key Benefits

  • See the true margin of every promotional order while the campaign runs, not after it ends
  • Run promotions with a backstop: below-floor orders are flagged or held before they ship
  • Know which code or combination is losing money, order by order, without a post-mortem
  • Give marketing room to experiment because finance sees the margin impact of every order

Platform Features

  • —Per-order evaluation of coupon codes, automatic discounts, app-based promos, and loyalty redemptions
  • —Per-SKU, per-category, and per-channel margin floors
  • —Code-level margin reporting, so a loss-making code can be paused or edited in Shopify
  • —MAP-aware rules that flag or hold orders where a MAP-protected SKU sold below its floor
  • —Separate floors for BFCM and other campaign windows
  • —Flag-only mode for testing a rule against live orders before turning on holds

Built for

Marketing and finance teams at mid-market and enterprise Shopify Plus merchants running 5+ promotional campaigns annually

Frequently Asked Questions

Will margin governance hurt our conversion rate?

Agentis does not touch checkout, so the purchase experience is unchanged: the customer sees the same prices and discounts, and completes the order the same way. Agentis checks each order after it is placed, within 60 seconds, so there is no added latency for a shopper to react to. The only orders affected are the ones that fall below your floor, and the effect is on fulfillment, not on the sale: a flagged order continues with an alert to your team, and a held order waits before it ships until someone releases, adjusts, or cancels it. Flag-only mode lets you see how many orders each rule would hold before any are. If you also want to change which discounts can combine at checkout, that is a separate decision made in Shopify's discount settings, informed by what the per-order data shows.

How does it interact with native Shopify combinability rules?

Shopify lets you set, per discount, which other discount classes it can combine with. That setting acts inside checkout, and it is necessary but not sufficient: it governs which discount types may combine, not whether the resulting order is profitable. Two discounts that are each acceptable alone can, together with a free-shipping threshold and a loyalty redemption, push an order below cost, and Shopify will allow it because the combination is technically permitted. Agentis checks the result after the order is placed: it computes the order's net margin against your floor per SKU, category, or channel, and flags or holds below-floor orders before they ship. Keep your combinability settings for the combinations you never want, and use Agentis's code-level data to see which permitted combinations are losing money, then tighten the settings where the evidence says to.

What happens to the customer when an order is held?

Nothing at checkout. The customer places the order normally and receives the usual confirmation, because Agentis acts after the order is placed. A hold pauses that order before fulfillment, so it does not ship until your team reviews it. From there your team decides, under your own policies: release it as-is if the loss is acceptable (a deliberate loss-leader, a VIP customer), adjust it, or cancel and refund it and contact the customer. Every hold and every release is written to the Evidence Ledger with the inputs behind it. Because most stores reserve holds for the clearest cases and use flags for everything else, the number of customers whose orders are paused is usually small, and you can see that number in flag-only mode before turning holds on.

Can we run BFCM with different margin floors than the rest of the year?

Yes. Floors can be set for a campaign window, so BFCM can run with relaxed floors, or different category-specific floors, without changing the rules for the rest of the year. Within that window, floors can still vary per SKU, per category, and per channel, so a loss-leader category can run looser while protected categories hold their normal floor. During a high-traffic weekend, the per-order view matters most: because each order is checked within 60 seconds, a code that spreads faster than planned, or a stack nobody modeled, shows up within the first orders rather than in the January close, and marketing can pause or edit it in Shopify. Set up the BFCM floors ahead of time, review them against last year's stacking patterns in flag-only mode, and confirm the end date so standard floors return automatically.

Sources

Key Concepts

Free Audit, No Commitment

Protect Every Order's Profit Margin

See exactly how much margin Agentis can recover for your store in 7 days, no commitment required.