Retail

Stock Loss Analyst

Finds where the number changed, before blaming anyone

Version 2Published Sep 2, 2026
RetailExtractclaude-sonnet-5Read-only · auto8 hard rules5 handover rulesResult
8hard rules
Things it must never do, enforced in every run
5handover rules
Conditions where it stops and gives the work to a person
10output fields
A structured result, not a paragraph you have to re-read
≤6steps per run
Bounded work: at most 4 tool calls, enforced by the runtime

Read-only by design. This agent has no path to sending, spending, publishing or committing anything. Where that limit is the product, removing it would remove the reason to trust the output.

Live wiring for version 2. Tool nodes are the capabilities this agent is registered to call — nothing else can run.

Overview

Shrinkage is treated as a security problem, and the response is cameras, guards and suspicion. That is expensive, it damages the people who work there, and it targets the smaller half of the problem. Process error — receiving mistakes, unrecorded waste, markdowns applied wrongly, transfers that left one site and never arrived, supplier shortfalls nobody checked — is a very large share of total loss.

It gets blamed on theft because process error is invisible. Nobody files a report saying "we received 48 and recorded 50". It appears only as a difference at a stock count months later, by which time the cause is unrecoverable and theft is the only explanation anyone can name.

So the useful analysis is not about people. It is about finding where in the chain the number changed: at receiving, at transfer, at markdown, at waste, or genuinely unexplained. Each has a different fix, and only the last is a security question.

This agent traces loss to its point of origin, sizes each cause, and reports location and process patterns. It never names or profiles an individual — a tool that points at an employee on statistical evidence causes real harm and is usually wrong.

Benefits

Loss reduced by fixing process

Which is cheaper than security and works on the larger share.

Staff not treated as suspects

For losses that turn out to be paperwork.

An honest unexplained figure

Which is the only number worth a security response.

What it does

  • Finds where the number changed

    Receiving, transfer, markdown, waste or genuinely unexplained. Only the last one is a security question.

  • Checks receiving against what was ordered

    Nobody files a report saying they received 48 and recorded 50. It only ever shows up at a count.

  • Traces transfers that never arrived

    Left one site, never landed at another. Invisible to both, because each site's own numbers reconcile.

  • Separates unrecorded waste

    Damage and expiry that happened and was never written down. Not theft, and fixed completely differently.

  • Sizes what is genuinely unexplained

    The honest residual, after everything traceable has been traced. Usually far smaller than assumed.

  • Names nobody

    It reports process and location patterns only. A tool that accuses an employee on statistics causes real harm and is usually wrong.

What this changes

What this changes about your week

It takes over
Tracing stock loss to the point in the chain where the number changed.
Done today by
Assumed to be theft, and answered with cameras.
How often
After each stock count, when the cause is already unrecoverable.
Typical manual effort
Receiving, transfers, waste and markdowns all have to be reconciled separately.

Why Retail in particular. Most loss is process error, which is invisible — nobody files a report saying they received 48 and recorded 50. The security response targets the smaller half at greater cost, and damages the people who work there.

  • Runs unattended

    Started by you or by an event, and it finishes on its own. Nothing waits for someone to be at a desk.

  • The same standard every time

    The two-hundredth item is held to the bar the first one was. Consistency is the part people cannot sustain.

  • It cannot act on its own

    Stock Loss Analyst has no path to sending, spending or committing. That limit is why its output is safe to act on.

How it runs

This agent runs server-side through the PROMIVO runtime. Each run is logged step by step and every tool call is permission-checked before it executes.

  1. 1InputValidated against the agent input schema
  2. 2Modelclaude-sonnet-5 with automatic fallback
  3. 3Toolsextract_structured_data
  4. 4PermissionsRuns READ actions automatically; anything higher waits for approval
  5. 5OutputStructured result matching the output schema
  6. 6LoggingTokens, duration and every step recorded

Demo

Demo dataIllustrative sample output, abridged.

Input

{
  "counts": [],
  "period": "H1 2026",
  "currency": "USD",
  "salesAtCost": 14200000
}

Output

{
  "escalate": true,
  "totalLoss": 412000,
  "disclaimer": "An analysis of your own stock records. No individual is named, identified or profiled, no allegation of theft or dishonesty is made about anyone, no surveillance or investigation of any person is recommended, and no stock record has been adjusted.",
  "attribution": [
    {
      "cause": "receiving-discrepancy",
      "amount": 118000,
      "processFix": "Quantities are being confirmed from the delivery note rather than counted. Two suppliers account for most of it.",
      "sharePercent": 28.6
    },
    {
      "cause": "unrecorded-waste",
      "amount": 96000,
      "processFix": "Chilled categories show waste far below what shelf life predicts. The waste is happening and not being written down — a training fix, and not a loss of stock to anyone.",
      "sharePercent": 23.3
    },
    {
      "cause": "transfer-not-received",
      "amount": 61000,
      "processFix": "Transfers between two sites reconcile at neither end. Each site's own numbers balance, which is why neither has ever raised it.",
      "sharePercent": 14.8
    },
    {
      "cause": "unexplained",
      "amount": 74000,
      "processFix": "The honest residual after everything traceable was traced. This is the only portion a security response could address, and it is 0.52% of sales at cost.",
      "sharePercent": 18
    }
  ],
  "untraceable": [
    "Six weeks of markdown records are missing, so 22,000 could not be attributed either way."
  ],
  "escalationReason": "One store's unexplained rate is 3.4 times the estate median, and one supplier delivers short on more than a third of deliveries.",
  "locationPatterns": [
    "One store's unexplained rate is 3.4x the estate median. Reported as a location pattern for a process review, with no assessment of anyone who works there."
  ],
  "supplierFindings": [
    "One supplier has delivered short against ordered quantity on 31 of 88 deliveries. That is a commercial conversation, not a loss finding."
  ],
  "unexplainedAmount": 74000,
  "unexplainedSharePercent": 18
}

Requirements

Integrations

No integrations required.

Before you start

  • Stock count results against book stock
  • Receiving records against purchase orders
  • Transfers in and out, both ends where possible
  • Waste and markdown records
  • Requires the All-Access plan or higher

Use cases

After a stock count

Where the difference came from, while records still exist.

A store with persistent loss

Whether its pattern differs from the estate.

Supplier disputes

Where receiving consistently falls short of what was ordered.

Before investing in security

How much of the loss it could actually address.

Pricing

All-Access

Billed monthly through your PROMIVO subscription. Cancel at any time.

Runs consume your plan allowance for agent executions and tokens. See plan limits

FAQ

Does it identify who is responsible?

No, and it refuses to. It reports process and location patterns. Statistical evidence about a named employee is both harmful and usually wrong, and no output of this agent will ever contain one.

Is it a security tool?

The opposite. It exists because most loss is process error and the security response targets the smaller half at greater cost.

What if most of the loss really is unexplained?

Then it says so, with the figure. An honest unexplained residual is the only number that justifies a security response, and it is usually much smaller than the total everyone assumed.

Reviews

Reviews open once customers have run this agent.

Need this agent to work differently?

Tell us what to change and our team will scope a customised version for your business.

Customize this agent