Fuel
Workshop, Fuel turns the transaction files of your fuel cards into fills on vehicles. Every fill lands on the vehicle that took it, consumption is counted from one full tank to the next against the vehicle's norm, and fills that do not add up are flagged before anyone has to look for them. The monthly invoice of the card supplier is then only compared with the card rows, so fuel is never counted twice.
Before you start
- Your organization has the TMS add-on. Open Fleet, Workshop, Fuel.
- Everyone can see the fuel figures. Uploading files, saving card suppliers and setting a vehicle's norms needs a role that may change TMS data with the Fleet module. Control thresholds, Environmental fee rates and archiving a card supplier are an admin's.
- For fills to find their vehicles: the plates in the file, or the fuel cards in Workshop, Equipment with their Card number, handed over to a driver or a vehicle (see Equipment and handover).
- For consumption: a fuel norm on the vehicle (or the company norm), kilometres from the odometer or telematics, and fills marked as full tanks.
The Fuel tab
- Upload card file is the main button. The ⋯ menu holds Card suppliers, Control thresholds, Environmental fee rates and Environmental fee report.
- Period: Last 30 days, Last 90 days (default), This month, Last month or Custom (at most 400 days).
- The totals: Fuelled (litres), Distance and Average (l/100 km).
- Consumption per vehicle, Unusual fills and Card supplier invoices below.
Before the first file: "Upload a fuel card transactions file (DKV, E100, Eurowag …). Every fill lands on a vehicle by its plate or by the driver's card, consumption is counted from full tank to full tank, and unusual fills are flagged."
Uploading a card file
The dialog has three steps: File, Preview and Saved. With New supplier, the step Columns comes after File.
- File: choose the Supplier (one you saved, with "last used 28.10.2026"), Generic CSV file ("Columns recognised by their names") or New supplier ("Map the columns once, the next files read by themselves"). Choose the file: "CSV or XLSX, up to 5 MB, as the card supplier sends it." Click Next.
- Columns (only with New supplier; a Generic CSV file goes straight to Preview): "We read the headers and the first rows. Check the guess and save the supplier: its next files are read the same way, without asking." Point each field to its column (below), give the supplier a Name, and click Save supplier.
- Preview: "What will be saved", row by row with Date, Vehicle, Driver, Litres, Net and Status: new, no vehicle, already saved or not read. The summary reads "48 new, 3 already saved, 2 without a vehicle (card not assigned), 1 not read" and "In total 6 240 l for 31 450.00 PLN net." Click Save 48 transactions.
- Saved: "Card file saved", the transactions saved, the unusual fills found, and the supplier invoices that now only settle the cards. Show fills without a vehicle takes you to the fleet costs that wait for a vehicle.
Presets read the files of DKV, E100, Shell, UTA, IDS, Orlen and Eurowag. Any other file is read through its column mapping. A file has up to 5 000 rows.
The column mapping
"Needed: the date, the plate or the card number, and the net or the gross amount."
| Setting | What it means | Example |
|---|---|---|
| Fields | Date, Time or Date and time, Plate, Card number, Driver, Litres, Unit price, Net amount, VAT, Gross amount, Currency, Country, Station, Product, Transaction number, Odometer, Full tank. Each points to a column of the file, or "not in the file". | Date: "Data transakcji" |
| File format | One of the presets, or Other. | DKV |
| Supplier in contractors | "Its purchase invoices are matched with the card rows." Without it: "Without the supplier we cannot recognise its invoices: an invoice approved for a vehicle adds to the fuel from the cards." | DKV Euro Service |
| Decimal separator | comma (12,50) or dot (12.50). | comma |
| Date format | recognise it, or a fixed format. | recognise it |
| Amounts in the file | net or gross. A gross amount needs the VAT rate of the country. | net |
| Every fill fills the tank (when the file says nothing) | The default for the full-tank mark. | on |
| This supplier's invoices only settle the card transactions | "The fuel reaches the vehicles from the card file. With this on, the monthly invoice books no second cost; it is only compared with the card rows." | on |
| Products | "A word in the product name picks the cost category, for example "adblue" is AdBlue and "maut" is a toll." Up to 200 words per supplier. | "adblue" → AdBlue |
Suggest columns (AI) proposes the mapping for a new supplier: "Only the header and the first 5 rows go to the AI, once for this supplier." Uncertain columns are marked "check". It uses AI credits and needs AI reads documents and writes drafts switched on; otherwise "AI is turned off for this company. Map the columns yourself, it takes a minute." The saved supplier reads its next files without AI.
How a fill finds its vehicle
In this order:
- The card is in Workshop, Equipment and handed over to a vehicle: that vehicle ("Assigned by the vehicle's card").
- The card is handed over to a driver: the tractor of that driver's set at the moment of the fill ("Assigned by the driver's card").
- Otherwise the plate in the file.
- Otherwise no vehicle: the fill waits under Without a vehicle in the fleet costs.
The preview says why, row by row: "Card: Marek Zieliński. At that time they drove PO 5KM21 (PO 7XR48 on the card).", "Card: Marek Zieliński, but at that time they were in no set: assigned by the plate PO 7XR48.", "Card 7083 changed hands that day: assigned by the plate PO 5KM21.", "We do not know the vehicle WGM 12345." A card number matches by the whole number or its last digits (at least four).
Duplicates and corrections
"A file imported twice adds nothing." A transaction already in the costs shows "already saved" ("This transaction is already in the costs."), and a correction, a changed amount or VAT rate, or a storno of a transaction never books it a second time. Imports run one at a time per organization.
Rows that cannot be read say why: "The transaction has no date.", "We do not understand the date "31/31/2026".", ""12,5a" is not a number (litres).", "The amount is gross and there is no VAT rate for AT: add it to the card supplier."
Card suppliers
⋯, Card suppliers: "How the file of each supplier is read. A new supplier is added when its first file is uploaded." Each shows Last used, "columns suggested by AI" when the AI helped, and "invoices only settle the cards". Edit changes the mapping; Archive (admins): "Its saved transactions stay. New files can no longer be read with these columns."
Consumption per vehicle
"Full tank to full tank, against the vehicle's norm for the season."
Each vehicle row shows its average ("33.9 l/100 km"), the norm ("norm 29.0", or "company norm 30.0"), how far above it is ("17% above the norm"), the kilometres and where they come from ("2 800 km (odometer)", "telematics" or "odometer and telematics"), the litres fuelled, AdBlue as a share of diesel ("AdBlue 4.2 %") and the number of unusual fills. Show the segments of PO 5KM21 opens the Full-to-full segments, each "28.10 to 03.11" with its consumption against the norm, and Open the vehicle card.
When a vehicle cannot be measured, the row says what is missing:
| Message | What to do |
|---|---|
| "No norm: set it on the vehicle card" | Open Fuel norms on the vehicle (below). |
| "No kilometres: link telematics or note the odometer at the pump" | Link telematics, or have the odometer in the card file or on the fill. |
| "Not enough full tanks to measure: mark "full tank" on the fills" | Mark Full tank on fills ("Consumption is counted between two full tanks."), or switch on the supplier's default. |
Segments shorter than the Shortest segment counted (300 km by default) are left out. A fill with no full-tank mark counts as a full tank when the supplier's default says so.
Fuel norms of a vehicle
On the vehicle card, Service and costs, Fuel consumption, Fuel norms: "A norm can depend on the season and change over time (a new engine, a reefer unit). Periods of one fuel must not overlap."
| Field | What it means | Example |
|---|---|---|
| Fuel | Diesel, Petrol, LNG or CNG. | Diesel |
| Base norm (l/100 km) | The norm when no season applies. Between 0 and 200. | 29.0 |
| Summer (l/100 km), Winter (l/100 km) | Seasonal norms. | 28.5, 31.0 |
| Winter from (dd.mm), Winter until (dd.mm) | 01.11 to 31.03 by default; the rest of the year is summer. | 01.11, 31.03 |
| Reefer unit (l/h) | The reefer's own norm, between 0 and 20. | 2.5 |
| Valid from, Valid until | Add a period for a norm that changed. | 01.01.2026 |
| Tank capacity (l) | Between 1 and 2 000. Used for the "more than the tank holds" check. | 820 |
| Environmental fee category | For the yearly fee; "from the vehicle type: Tractor unit" when empty. | Tractor unit |
"Until the vehicle has its own norm, the company norm of 30.0 l/100 km applies." The panel on the vehicle card shows "Last 90 days, full tank to full tank", "Norm now (winter): 31.0 l/100 km", "Tank 820 l" and a bar per segment against the norm.
Unusual fills
"Resolve one when it is explained, dismiss it when it is not a problem." Each unusual fill is also an issue in Issues.
| Unusual fill | When | Weight |
|---|---|---|
| More than the tank holds | The litres are above the tank capacity plus the margin. | Urgent |
| Two fills close together | Two fills on one card (or one vehicle without a card) within the set hours. | To check |
| A fill abroad where the vehicle was not | Telematics puts the vehicle in another country at that time. | Urgent |
| A segment above the norm | The consumption between two full tanks is above the norm by more than the set share. | To check |
A file without times never raises "two fills close together". Fills without a vehicle raise a note too.
Control thresholds
⋯, Control thresholds (admins): "When a fill counts as unusual. A change applies to the next imports."
| Threshold | Default | Range |
|---|---|---|
| More than the tank holds, above | 5 % | 0 to 50 % |
| Two fills on one card within | 2 h | 0 to 24 h |
| Segment above the norm by more than | 15 % | 1 to 100 % |
| Shortest segment counted | 300 km | 0 to 5 000 km |
| Vehicle position checked within | 30 min | 5 to 240 min |
| Flag a fill in a country the vehicle was not in | on | on or off |
Values from the law show the fuel density and the threshold below which no environmental fee is paid, read-only, with their source and "to verify": "Confirm them with your accountant."
Card supplier invoices
"These invoices only settle the card transactions. The vehicles already carry the fuel from the card file, so an invoice is not counted a second time."
When the monthly invoice of a card supplier arrives (from KSeF or typed in, see TMS carrier costs and payments), it settles the card rows of the same month and vehicle instead of adding fuel again. The table shows the Invoice, Supplier, Period, Invoice net, Card rows net and the Difference; "More than 1% apart: compare the invoice with the card file." An invoice with no card rows for that month stays a cost of the vehicle.
The environmental fee
⋯, Environmental fee report turns the litres of each vehicle into tonnes by the fuel density and multiplies them by the rates for its category, Euro class and fuel.
⋯, Environmental fee rates (admins): "Quanty ships no rates. Type them in from the yearly announcement of the Minister of Climate and Environment (obwieszczenie) for the year you settle." Each rate has the Year, Category (Passenger car, Truck up to 3.5 t, Truck over 3.5 t, Tractor unit, Bus, Other), Euro class, Fuel, zł per Mg, Source and Checked. Up to 200 rates a year.
The report never shows a missing value as zero:
- "The fee for 2026 is not worked out while rates or vehicle details are missing (3 lines). It is never shown as zero." Missing lines say "no rates", "no Euro class" or "no vehicle category".
- "Fee for 2026: 412.00 PLN. It does not exceed 800.00 PLN, so nothing is paid." or "Fee for 2026: 1 240.00 PLN, due by 31.03.2027."
- "Unverified rates: 2. Compare them with the official notice."
- "540 l from the cards have no vehicle and are not in the fee: assign those fills."
- "Fuel density, the threshold and the due date are statutory values: confirm them with your accountant before you file."
The report Fleet fuel consumption in Reports lists the consumption of every vehicle for any period, with AdBlue and unusual fills (see TMS overview).
Good to know
- The Fleet costs tab has its own Import from fuel card for a plain CSV with date, plate and net amount (up to 5 MB). The Fuel tab's Upload card file does more: card suppliers, card assignment, full tanks and the checks.
- A fill's PLN value uses the NBP rate of the working day before the fill.
- Fuel issued from your own tank through the parts store books a fuel cost on the vehicle too (see The parts store).
- Fuel against the norm also feeds the road card and the drivers' fuel bonus and deduction proposals (see Driver pay).
Not tax advice
The environmental fee report does the arithmetic with the rates you type in. Which rates apply, and whether and when you file, is for your accountant to confirm.
Related pages
- TMS fleet and workshop.
- The vehicle card: the fuel panel of one vehicle.
- Equipment and handover: fuel cards and who holds them.
- The workshop: fleet costs and fills without a vehicle.
- Road cards and the VAT mileage log.