Stock Movements
A movement is one change to what the clinic holds: twelve jars arrived, 20 g of mask was used on a facial, a bottle was moved to the other store, a count found three fewer than the books said.
The list of movements is the record. Your balances are a summary of it — the system can rebuild every balance from the movements at any time, and if the two ever disagree, the movements are what is right.
Find it under Money → Products and services → Stock movements.
Where to Find It
Click an address to open that screen on your own clinic. The first click asks which clinic you are, then remembers it. Addresses holding a {id} need a specific record, so they are shown but not linked.
| Screen | Address |
|---|---|
| Stock movements | /inventory/movements |
| One item's history | /inventory/items/{id}/movements |
Sold, or Used
This is the distinction the whole of stock control turns on, and it is one toggle on each line of a visit:
| On a visit line | What the patient pays | What happens to the shelf | Where the cost lands |
|---|---|---|---|
| Sold | The line's price | Comes off | Cost of goods sold |
| Used | Nothing | Comes off | A cost of the visit |
A jar of mask sold at reception is revenue. The 20 g of that jar used during her facial is a cost of doing the work. Both leave the shelf — that is the part clinics most often get wrong on paper — and only one of them is billed.
TIP
A used line is never charged to the patient. It carries a price only so the clinic can see what its own materials cost. The visit's total counts the sold lines and nothing else.
Stock Moves When the Visit Is Saved
Not when the invoice is written. A visit that is never invoiced still used the gel, and a consumed line is never invoiced at all — so the shelf follows the visit.
What follows from that, and is worth knowing:
- Saving the same visit twice does not take the stock twice. Each line moves stock once, ever.
- Changing a line's quantity from 2 to 5 moves the difference, not another 5.
- Deleting a line puts its stock back, at the cost it went out at.
- An invoice written from that visit takes nothing further off the shelf. It says so on the line.
A line typed straight onto an invoice at the desk — not copied from any visit — is the origin of that sale, so it does move stock.
Moving Stock by Hand
Stock movements offers three, for what happens away from a visit:
| Action | What it is for |
|---|---|
| Issue stock | Something left the shelf without a visit — a sample, a breakage you are recording as an issue |
| Correct the balance | A count found more or fewer than the books said. Also how you type an opening balance |
| Move between stores | The same goods, a different cupboard |
A transfer writes two movements that belong together — out of one store, into the other — and the clinic's total does not change, because nothing was bought or used. Its cost travels with it.
Nothing Here Can Be Edited
There is no pencil and no cross on a movement row, and that is deliberate.
A movement is a record of something that happened. Editing it would rewrite history that other things already depend on — last month's cost of sales, an average cost, a stocktake somebody signed. So instead:
- Reverse it. The system records the opposite movement, at the original's cost, and both stay in the list. You can always see what happened and what was done about it.
- Add a note. The one thing on an existing row you can change, because it explains the row rather than restating it.
TIP
This is the same rule the journal follows for money, for the same reason: a record you can quietly change is not a record.
Issuing More Than You Hold
By default the clinic allows it and shows a warning. A negative balance is not a system error — it is the system telling you the truth: something went out that was never recorded as coming in, usually because the opening balances have not been entered yet.
The owner can change this in the inventory settings to refuse the save instead. Worth doing only once your opening balances are in; before that, it stops people recording work they actually did.
One Item's History
From an item, open its movements: every row, oldest at the bottom, with the balance after each one — which is the column to check against a shelf — and, for anyone allowed to see costs, what the average cost stood at after each row.
The item's own page carries the same history as a Stock movements tab, beside its information: open a product and the latest movements are there, with the balance and the average cost above them. The tab shows the most recent rows only; View full ledger opens the whole history. The tab appears for a counted item in a clinic with inventory on, and only for a user allowed to see stock movements.
If the Balances Ever Look Wrong
The owner can rebuild the balances from the movement list, on the movements screen. It recomputes every balance from the history and changes no history at all.
You should never need it. It exists because a summary can drift and a record cannot, and the way back should be one button rather than a support ticket.
Who Can See It
| Permission | Lets somebody |
|---|---|
| See stock movements | Read the ledger and any item's history |
| Record stock movements | Issue, correct, transfer, and reverse |
| See what things cost | See unit costs and values on those screens |
Recording a visit needs none of them. The movement a visit causes is automatic — a therapist who can save her work does not need a stock permission to do it.