Stock Changes Only Through Documents: How the CRM Keeps the Warehouse Honest
Ask a small firm where its stock number comes from and you will often get a shrug. Someone counted it once, someone else sold a few, a delivery arrived and was never booked in, and the number in the system drifted away from the number on the shelf. After that nobody trusts the system, so everybody keeps a private note, and the private notes disagree. This is not a discipline problem. It is a design problem: if a balance can be typed over, it eventually will be.
Firmspace takes that possibility away. The quantity on hand is not a field you edit. It is the sum of movements, and every movement is produced by posting a warehouse document. There are six kinds: a receipt brings goods in, an issue sends them out, a transfer moves them between warehouses, a write-off removes them, a surplus books in what was found, and an inventory count compares the shelf with the books. Each one gets its own number and its own prefix in the journal, so a document is not an anonymous event. It has an author, a date, a note and a paper trail.
The reports are built on the same movements, which is why they cannot contradict each other. Stock on hand, stock per warehouse, stock as of a past date, turnover for a period and the product card are all calculations over the same journal. The CRM says this outright in the code: the reports agree with the product card by definition, because there is only one source. You can still choose how goods are valued — average cost or FIFO, set in the finance settings — but that is a costing method, not a second version of the truth.
An inventory count is where this design earns its money. You do not rewrite the balance to match the shelf. You enter the counted quantity, and the system compares it with the book quantity and keeps only the difference: a positive difference becomes a surplus document, a negative one becomes a shortage, and the count is posted against the warehouse you counted. Lines where the shelf and the books agree are not thrown away. They stay in the inventory document as evidence that those items were actually counted, which is exactly what an auditor wants to see and what a spreadsheet can never show.
Errors are corrected by reversal, never by deletion. If a document was wrong, you post a reversal: it repeats the same movements with the opposite sign, and it stays in the journal next to the original. The list marks both sides, so a reader sees the mistake and the correction in the order they happened. Nothing is quietly edited, which means a stock history that looks messy is usually a stock history that is true.
AI touches this world in two places, and neither of them is the shelf. The first is reading. Goods arrive with delivery notes and supplier invoices, and the assistant lives in a chat that also reaches your documents, Drive and OneDrive, so the paperwork can be pulled in and read instead of retyped. The second is proposing. The warehouse robot in the Robot Office is given a skills set, and a skill is simply a named list of tools — stock and purchasing, in this case — that includes listing products, booking receipts and corrections, keeping suppliers and raising purchase orders for goods that are running out. Its duties say it should propose quantities from stock levels and reorder levels. Proposing is the operative word.
The line between reading and writing is enforced twice over. A robot that has only reading skills has no write tool to call at all, and a robot that has a write tool still puts its change in front of you for a confirmation before it counts. A robot only acts on its own if you have explicitly set it up that way. Meanwhile the tools themselves are honest about their limits: the stock tool that changes a quantity is described in the platform as an adjustment with a reason — goods received, write-off, inventory count or return — and it asks for confirmation. There is no tool that sets a balance to an arbitrary number because somebody felt like it.
Under the confirmation layer the arithmetic is the same as the manual screens. Recording a correction writes movements with the same consequences for cost and for the reports, because it lands in the same journal. That is worth pausing on: letting an assistant adjust stock does not create a second, softer bookkeeping world with different rules. The robot is a faster hand on the same ledger.
The assistant's stock picture is also narrow by design, and useful for it. Asked what is running out, it lists goods and marks each one as out, low or fine — out means zero or less, low means at or below the reorder level you set, and if you never set a reorder level, only zero will be flagged. It returns counts alongside the list, sorted by the smallest quantity first, so the answer to what should I order is a column, not a paragraph. Products that are neither goods nor services are left untouched by that logic.
Beyond the immediate shortage there is analysis you can run over the movement journal: ABC analysis splits products by the share of revenue they carry, dead stock finds items that still sit on the shelf and have not sold for a long stretch, and turnover compares how fast goods move in a period. These are the numbers that turn a stock list into a purchasing decision. They are computed from your own movements and sales — no industry averages are mixed in, and no benchmark is invented to make a chart look better.
What remains firmly human is the count itself. No robot walks the shelves. Somebody stands in front of the rack with a list and writes down what is actually there, and that is the input the inventory document needs. The same is true outside the warehouse: procedures that exist only on paper, like a transport waybill issued by an operator, are not claimed as automated, and the assistant is instructed not to say that such a document was issued when it was not. A purchasing suggestion is a suggestion until a person agrees and the document is posted.
Put together, the arrangement gives a small firm something it rarely has: a stock figure it can argue with. When inventory differs from the books, the difference is not a mystery, it is a document that names the item, the quantity and the person who posted it. When the assistant proposes an order, the proposal is traceable to a reorder level you chose. The warehouse stays honest not because everyone is careful, but because the software removed the one operation that made honesty optional — typing a new number over the old one.