Movements is the logbook of your yards and tanks the ledger every other figure in Warehouse is derived from. Every gate in, gate out, move in the yard, tank...
Movements
Movements is the logbook of your yards and tanks the ledger every other figure in Warehouse is derived from. Every gate in, gate out, move in the yard, tank receipt, tank delivery, tank-to-tank transfer, dip correction and finished service is written here as one row, with the time, the person, the truck and the channel it came through. Nothing in this list can be edited or deleted: a unit's position, a tank's book level, a stay's storage days, the gate moves on an invoice and the CODECO sent to a line are all computed from these rows.
Where to find it: Workspace → Logistics → Warehouse → Movements. Each site also has a Movements tab with only that site's movements, and every unit's card shows its last eight.
Who can use it
Anyone with the base Warehouse permission (View sites, the live yard, units, tanks and movements). The list is read only for everyone, administrators included. Movements are created only by the gate, move, tank, dip and service actions on the screens, from the scanner, by Marvin, by an AI assistant connected through MCP, or through the API each with its own permission.
Where it sits in the operation
Warehouse keeps one writer for everything that moves. Whatever channel the action comes from, it goes through the same ledger routine: it locks the unit or tank it changes, checks the rules (slot free, tier supported, hold, tank capacity, test dates, product compatibility), writes exactly one movement, updates the unit's cached position or the tank's cached level, and commits or writes nothing at all. Only after the commit do the side effects run: the EDI message, the appointment marked arrived, the truck checked in, the notification.
Figure 1 Positions, levels, storage days and EDI are read from the ledger, never typed. That is why the yard, the invoice and the line's gate report always tell the same story.
What you see
Filter tabs by kind of movement:
All (the default)
Gate in, Gate out and Moved
Tank received, Tank delivered and Tank transfer (only when the Terminal fixed storage tanks module is on)
Under All you also see the kinds that have no tab of their own:
What happened
Written when
Changes
Gate in
Let it in on the gate form (screen, scanner, trip stop), Marvin, MCP or API
Unit to a slot or zone; status from the zone; stay opens
Gate out
Let it out
Unit to Not on site; slot freed; stay closes
Moved
Move it
Unit's zone, slot and status
Tank received
Product into a storage tank (from a truck or from a unit)
Tank level up; unit drained if it came from a unit
Tank delivered
Product out of a storage tank (to a truck or into a unit)
Tank level down; unit filled
Tank transfer
Tank to tank
Both levels
Correction
Record a dip with Set the book level to what I measured ticked, and a difference with the book
Cleaned: unit Clean. Repaired: condition Sound. Inspected: a pass moves the test date on, a fail sets the condition to Damaged. Heated: hours and temperature kept on the order
The columns:
Column
What it shows
When
Date and time, newest first.
What happened
The kind of movement. A small badge shows the channel when it was not a screen: MARVIN (a chat), MCP (a connected AI assistant), API or SYSTEM. Gate moves carry an EIR badge that opens the interchange receipt.
Unit / Storage tank
The unit number (click it to open the unit's card) and/or the tank code, with "→ other tank" for a transfer.
From
The old position (zone-bay-row-tier, or the zone alone for an unslotted zone). For a gate in it says Gate.
To
The new position. For a gate out it says Gate.
Quantity
Litres and product, when product was involved.
Truck plate
The truck recorded on the gate visit or the tank operation.
By
The team member who recorded it (for Marvin, MCP and API: the user the action ran as).
Note
The note typed with it. On a phone the note is kept for the opened card, not the row.
The list shows the latest 1,000 movements of the tab (all sites, or the site on a site's tab). Use the search box to find a unit number, a plate or a note, and the export menu to save the list to Excel or print it. For older history use a unit's card, the Throughput report, AI Reports or an AI assistant, which can read the ledger by period, kind, site and unit.
Trace a unit's history
Open Movements and type the unit number in the search box the way the list writes it "CSQU 305438" with the ISO format, "CSQU305438" when Settings → Look → Unit numbers is set to one string.
Read the rows from bottom to top: gate in, moves, services, gate out, the next gate in.
Open the EIR badge of each gate move to see the truck, seal, condition and photos at that moment.
Or open the unit's card from Units; it shows its last eight movements and its services.
Figure 2 Storage days are not a counter someone keeps: they are the distance between a Gate in row and the next Gate out row of the same unit. Record gate moves when the truck really passes.
Fix a mistake
A movement cannot be changed. Record what really happened next, and the history shows both the mistake and when it was put right:
A unit put in the wrong place: Move it to the right zone.
A unit gated out by mistake: gate it in again. The stay is split in two, so check the storage days before the month is invoiced.
A unit gated in that never came: gate it out with a note. Both rows stay.
A wrong tank level: Record a dip with the measured contents and keep Set the book level to what I measured ticked. A Correction is written for the difference ("Tank T-03 set to 48 200 L (−350 L against the book)."). Without the tick the dip is kept as a reading and the book level is not changed.
A transfer to the wrong tank: transfer the product back.
Figure 3 The ledger is append-only, like a stock card in ink: a correction is a new entry with its own time, person and note.
Controls and exceptions
No edit, no delete. There is no button, permission or assistant tool that edits or deletes a movement. The only exception is Remove the demo data, which removes the demo yard together with its own movements.
Exactly once. Every gate, move, tank and dip form carries a one-time key. Sending the same form twice (a double tap, a lost connection, a resent chat message) returns "This was already recorded." and never creates a second movement. Two identical requests arriving at the same instant are answered the same way.
All or nothing. If any rule fails, nothing is written: no movement, no visit, no change of position or level. The clerk sees why.
Side effects follow, never lead. The CODECO, the appointment marked arrived, the truck check-in and notifications are done after the movement is committed; if one of them fails, the movement still stands and the failure is logged.
The channel is recorded. Every row says whether it came from a screen, Marvin, an MCP assistant, the API or the system, and which user it ran as the audit trail for a disputed gate time.
Times are stored in UTC and shown in your time zone, so sites in different time zones sort correctly.
Inventory stock moves are not here. Goods, parts and tools of the Inventory module have their own history on each item and in the Inventory reports.
For the manager
Billing. When you bill a month (see Rates), Warehouse reads this ledger per client: storage days from the stays (gate in to gate out, after the free days), the number of gate ins and gate outs against the gate-move rates, and the cubic metres received into and delivered from storage tanks against the throughput rate. The client of a movement is the one given at the gate, otherwise the unit's owner so a missing owner is a missing invoice line.
EDI. Each committed Gate in or Gate out writes one CODECO per active partner of the unit's owner into the outbox (see EDI). A late gate move means a late gate report to the line.
KPIs to watch: gate moves per day and per hour (gate productivity), moves per unit between gate in and gate out (rehandles a high number means the stacking plan or the release sequence is off), share of rows that came through MARVIN, MCP or API, and Corrections per tank per month (a growing number points to a meter, a strapping table or a procedure problem).
Reports.Throughput sums the tank movements per month, client and product. AI Reports offers the ledger as Yard and tank movements (Warehouse) in "All business data", to count movements by kind, site, client, product and period, and to combine them with invoices and services.
Glossary
Ledger
The append-only list of movements from which positions, levels and billable quantities are derived.
Movement
One recorded event: gate in, gate out, move, tank received, tank delivered, tank transfer, correction, or a completed service.
Visit
One truck at the gate; a gate movement links to it, and the EIR is printed from it.
EIR
Equipment Interchange Receipt: truck, seal, condition, damage sides, VGM and photos at the gate move.
Stay
The time between a unit's gate in and its next gate out; the base for storage days and dwell time.
Dwell time
How long a unit stays in the yard; read from its stays.
Book level
The tank contents according to the ledger, as opposed to the physical level measured by a dip.
Correction
A movement that sets a tank's book level to a measured dip.
Idempotency key
The one-time key on every form or call that stops the same action being recorded twice.
Rehandle
A move that does not bring the unit closer to the gate or its service; visible as extra Moved rows inside a stay.
CODECO
The EDIFACT gate-in / gate-out report sent to the line or tank operator.
Channel (Via)
Where a movement came from: screen, MARVIN, MCP, API or SYSTEM.