Fuel is controlled by feel
You know the monthly total you paid. You do not know what 12345-A-6 burned on Tangier–Murcia, nor whether it is more than last month.
Diesel is a haulier’s largest cost and the last one to be measured. The product does not claim to see inside the tank: it keeps a fill-up journal, imports your fuel-card statements and computes real consumption between two full tanks. What you get is not a magic number — it is a deviation from your own norm, truck by truck.
You know the monthly total you paid. You do not know what 12345-A-6 burned on Tangier–Murcia, nor whether it is more than last month.
Three hundred rows a month: the total is checked, the file is filed. The row that stands out is only noticed once the total has already grown.
The driver brings the receipt, the card reports the transaction. The spend doubles in the spreadsheet and consumption becomes wrong — in the flattering direction, which is worse.
Every fill-up is a row: truck, litres, amount, odometer, full tank or not, a photo of the receipt. Rows arrive from two places — a receipt typed in and an imported card statement — and live in the same journal, with their origin shown.
The detail that matters. Automatic reconciliation pairs a card transaction with a typed receipt less than 24 hours apart when the amount or the litres match. A reconciled pair is ONE physical fill-up: it counts once in consumption.
The reading entered on a fill-up moves the tractor’s odometer forward. A reading lower than the current one is accepted into the journal — catching up on old receipts is legitimate — but it does not touch the odometer, and the screen says so on that row.
The detail that matters. It is a warning, not a refusal: the rule protects the odometer without blocking data entry. The fill-up and the odometer move are written in a single transaction, so the two cannot drift apart.
L/100 km over 30 and 90 days, per tractor, is computed on segments that begin and end with a full tank and an odometer reading. Nothing is stored: the figure is rebuilt from the journal on every read.
The detail that matters. Fewer than two reliable points? The screen shows «—», never 0. A zero in a consumption column is a lie that reads as a performance.
Every truck carries its own L/100 km norm and, if you want one, a winter norm. What is coloured is the deviation, not the absolute figure: a tractor at 34 litres can be perfectly normal, and another at 29 litres can be a leak.
The detail that matters. The «fuel deviation» alert rule (15 % over a rolling 30 days) ships disabled, like every rule. A norm is the owner’s knowledge: until you provide it, the product keeps quiet rather than inventing a threshold.
The issuer’s CSV or XLSX — Afriquia, TotalEnergies, anyone else — is read, previewed (rows ready, duplicates, errors) and then applied. The product remembers each issuer’s columns: the second import needs no setup. An import rolls back in full.
The detail that matters. Duplicates are RECORDED with their status instead of being silently dropped: you see what the file contained, not what the software decided to keep.
Masked number, issuer, the tractor or driver it is assigned to, a monthly ceiling, status active / blocked / returned. A returned card stays in the history with its past transactions.
The detail that matters. The full number is never displayed again after entry. A fill-up made with another tractor’s card raises a warning on save — often the first visible sign of a habit worth looking into.
| Date | Tractor | Station | Litres | Amount | Odometer | Source |
|---|---|---|---|---|---|---|
| 12/08 | 12345-A-6 | AFRIQUIA · Tanger Med | 420 | 5 460 MAD | 412 300 | Card |
| 12/08 | 12345-A-6 | AFRIQUIA · Tanger Med | 420 | 5 460 MAD | 412 300 | Receipt · matched |
| 09/08 | 23456-B-6 | TOTAL · Agadir | 380 | 4 940 MAD | 298 110 | Receipt |
| 07/08 | 45678-C-6 | SHELL · Kénitra | 310 | 4 030 MAD | below current | Receipt |
A whole fleet’s consumption can be ruined by one digit too many on an odometer. Here the typo enters the journal but never reaches the truck: the tractor’s odometer only moves up.
Cancelling an import removes its rows while naming the reason, and the file stays in the list with its status. You always know what was loaded, and why it was taken out.
Siphoning detection, off-route fill-ups: without a level sensor and GPS, those words would be marketing. They arrive with telematics, and not one line earlier.
It is entered once and never shown in clear again — not in the journal, not in an export, not in an alert e-mail.
Fill-up entry by the driver from their phone, receipt photo included, arrives with the driver app. The journal already accepts two sources: the day the app switches on, it will simply have a third one, with nothing changing in your data.
The module works on its own, on the fleet included in the seat. With Maintenance, the odometer is the same everywhere: a fill-up, a workshop visit and a tyre all speak about the same kilometre.
Yes: the import is only one of the two sources. A journal kept from receipts already gives real consumption per truck, provided the odometer is noted at the pump — that is the only discipline the module asks for. With the Driver cash module, that same cash-paid fill-up also becomes a reimbursed expense.
Two full tanks with odometer readings on the same truck are enough for a first segment; a month of journal gives an average worth arguing about. Until there are enough points the column shows «—»: the product would rather stay silent than let you decide on noise.
Create the account, tick your modules, add the trucks — the first mission leaves today.