ImprovementJuly 16, 2026

Inventory: bulk-load your shelf count from a CSV

Typing a warehouse's worth of opening balances one product at a time was never the plan. Import → Inventory takes a CSV — download the blank template right on the upload step — and posts an opening-balance adjustment per row. Rows match your Product Library by Part # first, then by exact Product Name; anything that doesn't match comes back as a per-row error naming the line, never a silent skip. Leave Unit Cost blank and it falls back to the pool's average, then the catalog cost — and if there's no cost basis anywhere, the row errors instead of seeding worthless stock. There's an Import CSV button on the Inventory page too.

Sharpening on the page itself:

  • Average cost and unit cost show cents — $4.10, not $4. Cost-per-unit is exactly where the pennies matter.
  • Last Activity shows a date again (a timestamp-format bug rendered "Invalid Date").
  • The Issue / Transfer / Return / Adjust buttons now explain themselves on hover — what moves, what gets charged, and at which cost. Issue charges the job at weighted-average; Return credits at what the job actually paid; Transfer is a return + issue pair at carried cost; Adjust touches the pool only.
  • The tables run full width instead of stopping at a fixed column, and "+ Opening balance" finally looks like the button it is.

Open it in the app →

Want in?

STrOp is onboarding California specialty contractors in small batches — bid through warranty in a single pipeline.

Request beta access →