Skip to main content

How to Use: Inventory Report


What This Report Tells You

The Inventory Report covers the movement and margin of every item you stock — ship's store goods, fuel, parts, anything flagged as an inventory item in Dockwa.

It answers two questions at once: what do I have, and what am I making on it?

For each item you get quantity on hand, how much sold in the period, what you paid, what you charged, and the resulting markup and margin. Behind that, a full transaction log of every sale, return, and delivery.

Only items marked as inventory items in Sales > Items appear. Services and non-stocked items are excluded by design.


How to Run It

  1. Go to Reports and select Inventory.

  2. Choose your start and end dates. It defaults to last calendar month.

  3. Click Export.


The Two Tabs

Summary — one row per item, with a totals row at the bottom for the quantity columns. This is your stock and margin overview.

Detail — one row per transaction, in chronological order, covering four event types:

  • Sale and Return — items sold to and returned by customers

  • Receive inventory and Return inventory — stock coming in from a vendor, or going back to them

The Detail tab carries vendor, reference number, and notes on receiving events, so you can tie a delivery back to a purchase order or packing slip.


Things Worth Knowing Before You Read It

Sales show as negative quantities.

The Detail tab is written from the stock's point of view, so anything leaving the shelf is a negative number and anything arriving is positive. On the Summary tab, "Quantity sold" is a plain positive count — the sign flip only lives in the detail.

Quantity on hand is as of your end date, not today.

The column header states the date so there's no ambiguity. Run the report through the end of last month and you'll see what was on the shelf then, not what's there this morning.

Average purchase price falls back to your history.

Dockwa first looks at priced deliveries inside your date range and weights them by quantity. If you didn't receive that item during the period, it uses the weighted average of every priced delivery up to your end date instead — so the column stays populated and margin still calculates on slow-moving stock.

Deliveries entered without a price don't contribute to this figure at all. If an item's purchase price, markup, and margin are all blank, that's usually the reason.

Average retail price is what you actually charged, not your list price.

It's weighted across the sales in the period, so discounts and price overrides pull it down. Compare it against "Current retail price" — the item's price right now — and a persistent gap tells you how much discounting is happening at the register.

Markup and margin are different numbers. Markup measures profit against what you paid; margin measures it against what you charged. An item bought at $10 and sold at $15 carries a 50% markup and a 33% margin. Both are here because vendors and buyers tend to talk in markup while accountants think in margin.

Some items draw from another item's stock. If you sell singles out of a case, or a dispensed product tied to a bulk item, those sales roll up into the parent item's quantities rather than being counted separately.

A GL Code column appears only if you've set up GL codes.

It shows the revenue code the item is mapped to — the same mapping your accounting integration uses — so you can check that items are pointed at the right account before anything syncs.


When to Use It

Set reorder points.

Quantity sold over a known period against quantity on hand is your reorder math. Run the same month across two years for anything seasonal.

Find the item Margins.

Sort the Summary by margin, ascending. Low-margin items that move slowly are candidates to drop; low-margin items that move fast are candidates for a price increase or a better vendor.

Check your fuel margin.

Fuel moves in volume where small per-gallon differences add up. Average purchase price against average retail price, at four decimals, is the cleanest read you'll get on whether your pricing is keeping pace with your deliveries.

Measure your discounting.

A wide gap between average retail price and current retail price means items are going out the door below list. Worth knowing whether that's deliberate.

Investigate shrinkage.

Compare the expected quantity change against a physical count. Gaps point to theft, breakage, or receiving that never got entered.

Reconcile vendor deliveries.

The Detail tab's vendor, reference number, and notes let you tie receiving events back to invoices and packing slips when something doesn't match.

Feed your accounting close.

Purchase price and quantity sold are the inputs for cost of goods sold, and inventory adjustments recorded here should line up with the numbers going to your accounting system.

Audit your GL mappings.

If you're running an accounting integration, scan the GL Code column for items mapped to the wrong revenue account before the sync compounds the error.


Common Questions

Why is an item missing?

It isn't flagged as an inventory item. Check the item under Settings > Items.

Why are purchase price, markup, and margin blank?

No priced delivery has ever been entered for that item. Enter a price when receiving inventory and the figures will populate.

Why doesn't quantity on hand match what's on the shelf?

It reflects your end date rather than today, and it only counts movement Dockwa knows about. Stock that left without being rung up won't be reflected.

Did this answer your question?