Skip to content

Inventory moving-average valuation (1.5.0) — Production Readiness Audit ​

FieldValue
Date2026-10-17
StatusGo for production — feature Pest green; SPA value columns + KPI wired
ScopeProduct-level moving average cost on stock in / PO receive; stock value APIs and UI
Cataloginventory 1.4.0 → 1.5.0
CompanionInventory user guide · CHANGELOG

Executive summary ​

Inbound stock (manual adjust or purchase-order receive) updates products.cost as a weighted moving average. Stock movements store unit_cost. Stock levels expose average cost and on-hand value; stats expose total_inventory_value. Soft Accounting stock-out journals use the current average. Transfers do not change product cost.

Go / No-Go: Go. Migrate-only. No new permissions.

GateResult
Platform freezePass
Moving average on stock in with unit_costPass (Pest)
PO receive folds unit_price into averagePass (Pest)
Stock levels + stats expose valuePass (Pest)
Catalog bump + CatalogSeeder companionPass (Pest)

Deploy ​

  1. php artisan migrate --force (stock_movements.unit_cost, inventory 1.5.0 catalog bump). Do not db:seed.
  2. Confirm modules.version for inventory is 1.5.0.
  3. Deploy Frontend after production build; hard-refresh SPA.
  4. Smoke: stock in with unit cost → Avg cost / Value / Inventory value KPI; receive PO → product cost updates.

Official documentation for the EloSync SaaS Platform.