Compare projected purchasing with account-specific expectations and examine the activity associated with a shortfall. Xect AI brings relevant product, cart, availability, and pricing information into a prioritized review workflow for account and finance teams, scoring purchasing patterns in MLflow and routing flagged accounts to a revenue-risk queue the same day.
This page covers two distinct exceptions. Account purchasing variance compares each account’s modeled expected monthly spend, with its own seasonality and variance band, against its projected spend for the same period; a shortfall against that baseline is a trigger for review, not a confirmed loss. Discount and margin exceptions are separate: individual orders priced outside an account’s approved band. When projected spend falls short of expected, the SAP Commerce events behind it — the SKU that stopped, the volume that halved, the carts that never converted, the sessions that met a stockout — become evidence for that review. Xect AI runs the comparison in MLflow, the diagnostics in a flow and the write-up through an agent, so the account reaches the #revenue-risk queue with that evidence attached before the review is scheduled.
Orders, carts, searches, stock events and discounts from SAP Commerce land in the Business Operators Hub as versioned Avro events. A feature node computes trailing 30- and 90-day spend, days since last order, SKU-level frequency, open cart value, stockout exposure and search failures.
A scheduled flow posts micro-batches of 50 to 200 accounts to RevenueForecaster@champion and receives expected monthly spend, projected spend, the delta and a risk flag. If serving is unavailable, the flow scores on rule-based variance and marks the alert provisional. Model-service interruptions produce a visible processing status and, where configured, provisional rule-based alerts.
For every flagged account, four diagnostics run in parallel — investigative factors, not summable causes: an SKU decline past an example 40% threshold, a cart open past an example 14-day threshold, a stockout met in session, and a failed search. The Revenue Risk Agent turns the results into the paragraph the account executive reads, with the gap in dollars.
The Notification Router posts the card with Review open carts and Assign to AE; the connector opens the CRM task; a discount outside the account’s band pauses the order for approval. Everything is logged with the model version that raised it.
One scores, one explains, one files. Each hands off with the features and the model run ID attached.
Scores every account against its own baseline, every day
Owns the scheduled scoring flow: shapes the features from the event stream, checks them against the model signature, calls RevenueForecaster@champion in batches and filters on risk_flag. It also owns the fallback: rule-based variance when the serving container is restarting.
Identifies factors for investigation and writes the alert
Runs the diagnostics in parallel — stopped or dropped SKUs, carts open too long, stockouts in sessions, repeated searches for an alternative — then writes the narrative: Acme Corp −35%, $210K gap, four factors identified. The Industry Knowledge Graph supplies the commerce schema, so the paragraph is specific without a hand-written prompt.
Files the task, posts the card, holds the discount
Opens the CRM task for the account owner, posts the card with its two actions, and where DiscountLeakage@champion flags an order outside the account’s margin band, pauses it for approval. When a save play needs a credit or a price change, the Human in the Loop gate holds it with the context on screen.
Expected $600K, projected $390K — a forecast comparison, not a realized loss. The score runs daily, so the account owner hears about the shortfall this month, not in the quarterly review.
Three carts never ordered, Product X stopped, Product Y down 42%, Product Z out of stock in two sessions. The alert lists them as factors to investigate; the AE opens with them.
Discount depth is scored against the account’s own band as the order is placed. Out-of-policy discounts are routed for review before the order completes, instead of being found months later in finance.
Model-generated alerts carry the model version, features and run ID. When a new champion is promoted after validation, the alias updates and downstream flows are unchanged; alerts produced by the rule-based fallback carry the rule version, execution record and provisional status instead.
A slow August is not an alert and a slow Tuesday is. The baseline belongs to the account.
This page covers expected-behavior scoring and revenue-risk queues for B2B commerce. For the opportunity side of the same accounts, see the Revenue Opportunity Engine; for margin controls in billing, see Autonomous Billing Ops.
Thousands of replenishment accounts on SAP Commerce, each with its own seasonality. Scoring per account finds the ones drifting away weeks before the revenue report does.
See the industry pageA purchasing change may reflect substitution, availability, changed demand, or other account circumstances requiring review. The diagnostics provide the sessions and searches behind the gap for that review.
See the industry pageProject phases end and volumes fall for legitimate reasons. The modeled baseline helps distinguish a finished project phase from an account that may have shifted purchasing elsewhere, though confirming the reason still requires an account review.
See the industry pageLong tails of low-value lines can hide a 42% volume drop on one product. SKU-level frequency features flag it, and the stockout diagnostic indicates whether a fulfillment issue on your side coincided with the decline.
Talk to us about MRODiscount drift, off-band pricing and unexplained credits appear as order-time flags with an approval gate, so margin policy is enforced where the order is placed.
Talk to us about margin controlsOwns the number and needs the at-risk account ranked, explained and delivered with the actions attached.
Owns margin and pricing policy and needs discount exceptions caught while the order can still be corrected.
Owns the revenue reporting and needs the variance explained before the meeting, not reconstructed during it.
Owns RevenueForecaster in MLflow and needs the champion wired to a real queue without a workflow change per release.
Technical implementation walkthrough behind this page: schedule trigger, feature node, /invocations, diagnostics, sinks.
The forecast-band approach applied to any event stream, one model per stream.
Five queues on one event stream for SAP Commerce B2B.
SAP Commerce, OCC, Salesforce, HubSpot, Slack and Teams without custom code.
Review how account expectations, supporting activity, and exception criteria can inform a commercial review process. Agree the evidence needed to distinguish normal purchasing changes from actionable risk.