Skip to main content
Metrics type: Key MetricsCategory: Ecommerce Platform
Revenue at Risk (live) for the selected period.

At a glance

A single live figure summing the revenue currently exposed by open, unresolved issues across your Salesforce Commerce Cloud (SFCC, formerly Demandware) realm: stock-outs on in-demand SKUs, stalled and failed orders, orders awaiting downstream sync, and integrations sitting on end-of-life API versions. It is not money you have lost; it is money at risk of slipping if the open issues are not worked. Think of it as the realm’s exposure gauge, a number that should sit near zero on a healthy estate and that climbs the moment something starts going wrong.

Calculation

Calculated automatically from your Salesforce Commerce Cloud data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

Worked example

A Fortune-500 retailer runs a single SFCC B2C realm with several DTC sites and a B2B portal. At 09:14 on 12 Jun 26 the card reads a non-zero exposure. Decomposing it across the source signals: Things to notice:
  1. The headline is a roll-up, not a single cause. 138,600looksalarmingasonenumber,butitisthreeunrelatedproblemsstackedtogether:astockissue,agatewayissue,andasyncbacklog.Thecardsjobistomakeyoulook;thesiblingsjobistotellyouwhere.Open[OrdersAwaitingDownstreamSync(24h)](/nervecentre/kpicards/salesforcecommercecloud/ordersawaitingdownstreamsync24h)firsthere,itisthelargestsinglecontributorat138,600 looks alarming as one number, but it is three unrelated problems stacked together: a stock issue, a gateway issue, and a sync backlog. The card's job is to make you look; the siblings' job is to tell you where. Open [Orders Awaiting Downstream Sync (24h)](/nerve-centre/kpi-cards/salesforce-commerce-cloud/orders-awaiting-downstream-sync-24h) first here, it is the largest single contributor at 71,200.
  2. The biggest exposure is recoverable, not lost. The 71,200inunsyncedordersisfullyrealisablerevenue,theordersareconfirmedandpaid;theysimplyhavenotreachedtheOMS.Theexposureexistsbecauseifthesyncstaysbroken,fulfilmentstallsandthoseorderscancancelorchargeback.Fixthesyncandthe71,200 in unsynced orders is fully realisable revenue, the orders are confirmed and paid; they simply have not reached the OMS. The exposure exists because if the sync stays broken, fulfilment stalls and those orders can cancel or charge back. Fix the sync and the 71,200 drops straight out of this total.
  3. The EOL integration contributes $0 today but is flagged. The deprecated OCAPI cartridge is still working, so it carries no current exposure, but it processes live checkout traffic and will break when the version is removed. Some configurations surface that forward risk here as a watch item rather than a dollar figure. Pair with Integrations on EOLd / EOL-Soon Versions.
  4. The alert fired the instant the total left zero. Because the trigger is >$0, Vortex IQ flagged this the moment the first issue opened, not after it crossed a threshold. On a healthy realm this card sits at zero and stays quiet; the alert is essentially a “something needs working” signal for the whole estate.

Sibling cards merchants should reference together

Reconciling against Salesforce Commerce Cloud

Where to look in Business Manager: There is no single Business Manager report that equals this card, because it is a Vortex IQ composite that stitches together signals SFCC exposes in different places. To verify each component:
  • Stock-out exposure: Merchant Tools, Products and Catalogs, Inventory, check the relevant inventory list for the flagged SKUs and their allocation.
  • Failed / stalled orders: Merchant Tools, Ordering, Orders, filter by status FAILED (and review confirmation_status) over the live window.
  • Sync backlog: this is usually visible in your OMS or middleware rather than Business Manager directly; in SFCC, Merchant Tools, Ordering, Orders shows the confirmed orders, and the gap against OMS acknowledgement is the backlog.
  • Integration / API version risk: Administration, Site Development, and the relevant OCAPI / SCAPI configuration; cross-check against Salesforce’s published version deprecation schedule.
Because the card is a live exposure estimate rather than a posted figure, treat Business Manager as the place to confirm each underlying issue, not to match the headline dollar amount exactly. Why our number may legitimately differ from anything in Business Manager:

Known limitations / merchant FAQs

Is this money I have already lost? No. It is revenue currently exposed by open issues, not realised loss. Most of it is recoverable: a confirmed order awaiting sync is still paid and still yours; restocking an out-of-stock SKU removes its contribution; upgrading an EOL integration removes that forward risk. The number is a call to action, not a tally of damage. When an issue is resolved its contribution drops out of the total. Why does the alert fire at any non-zero value instead of a threshold? Because on a healthy realm this number should be zero. There are no open stock-outs on hero SKUs, no failed orders piling up, no sync backlog, and no integrations on dead API versions. A threshold would let small exposures accumulate silently. A >$0 trigger treats the card as a binary “something needs working” signal for the whole estate, then the siblings tell you what. The number jumped suddenly. Where do I start? Decompose it. This card is a roll-up, so a jump is one (or more) of its sources moving. Open the siblings in this rough order of typical impact: Orders Awaiting Downstream Sync, Failed Orders, Order Processing Backlog, Stock-Out Burst, then the integration / API health cards. A sudden jump is usually an incident (a gateway timeout window, a sync outage); a slow climb is usually a backlog building. Why is the time window “RT” and not a period? Exposure is a live state, not a flow over a window. There is no meaningful “30-day revenue at risk”, there is only how much is exposed right now. The card recomputes on each connector refresh, so a resolved issue stops counting almost immediately and a new one appears within a cycle. Does it double-count if one order is both failed and unsynced? The composite is built to attribute each open issue to a single primary source so the headline does not double-count the same exposure. If you ever see the sum of the sibling figures exceed this card, that is the de-duplication at work, the card is the conservative single number; the siblings are the per-signal detail. Why is the figure mixed-currency on our international realm? Same reason as realm-wide revenue: SFCC runs many sites in many currencies under one realm, and the live exposure can stitch them together without FX. For a clean single-currency read, decompose by site via the sibling cards or pin per-site panels. A base-currency rollup is on the connector roadmap. Can I tune which signals feed this card? The composition is set by the connector’s risk model, but the alert threshold of each contributing signal (for example, what counts as an in-demand SKU for stock-out exposure, or how long an order can be unsynced before it counts) is configurable per profile in the Alert Rules tab. Tuning those changes what flows into this total. It reads zero. Does that mean everything is perfect? It means none of the tracked risk signals are currently open: no exposed stock-outs, no failed or stalled orders, no sync backlog, no integrations on dead versions. That is the healthy state and the goal. It does not cover risks outside this card’s scope (for example, a marketing or pricing problem), so keep reading the rest of the Nerve Centre, but for operational exposure, zero is exactly what you want to see.

Tracked live in Vortex IQ Nerve Centre

Revenue at Risk (live) is one of hundreds of KPI pulses Vortex IQ tracks across Salesforce Commerce Cloud and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.