Playbooks/ Dernière mise à jour: 2026-09-29

Playbook: goods left at zero cost — and every number after it is wrong

The situation

A product went live before anyone entered its cost price. The warehouse shipped it correctly — eight units here, twenty there. Each shipment was recorded in the books at zero cost.

Nothing failed, so nobody noticed. But every one of those movements did three things wrong at once:

  • Cost of goods sold came out too low — the units left, their cost didn't.
  • Gross margin came out too high — revenue with no cost behind it.
  • Inventory value no longer matched the shelf — the books and the warehouse drifted apart.

The screenshots come from the Otiox demo workspace. To follow along, choose Switch to demo in the sidebar — changes there never touch your live data.

Step 1 — See the warnings

Go to Finance → Transaction Ledger.

Transaction Ledger summary: warnings and missing values
Transaction Ledger summary: warnings and missing values

The summary counts warnings and missing values at the top. In the demo, dozens of events are missing a value — and every one of them is a number in your reports that is wrong.

Step 2 — Open the Missing Value view

Choose Missing Value.

The Missing Value view: events booked without a cost
The Missing Value view: events booked without a cost

Every event booked without a cost, in one list: stock out, positive adjustments, receipts. Each carries the status Needs cost data.

Step 3 — Open one entry

Open a stock-out of the trending product.

A stock-out of eight units at $0.00, with no journal amount
A stock-out of eight units at $0.00, with no journal amount

Eight units left the warehouse. Unit cost $0.00, total $0.00. The suggested journal entry — loss against inventory — has no amount. Under Exceptions / Warnings, Otiox says exactly what it looked for: a cost price on the product, purchase or receipt data, or lot cost.

Step 4 — Rebuild its economics

Set the product's cost price (or record the priced receipt), then choose Rebuild Event Economics on the entry.

The same entry recomputed: $30 per unit, $240 cost of goods, journal entry with amounts
The same entry recomputed: $30 per unit, $240 cost of goods, journal entry with amounts

The entry is recomputed from the real cost: $30 per unit, $240 cost of goods, status Completed. The suggested journal now carries the amounts — $240 expense against $240 inventory. The entry records its cost source, its confidence and when it was recomputed, and the change is written to the ledger's audit log.

Work the Missing Value view down to zero before every close. Each line you leave there is a margin that looks better than it is.

What you have at the end

  • Every movement booked without a cost, in one list.
  • The reason, and where to fix it.
  • Each entry recomputed from the real cost, with a journal entry that matches.

Related

  • Use case: Missing Cost — /use-cases/missing-cost
  • Use case: Unposted Builds — /use-cases/unposted-builds