Petrol Station Management
The complete petrol station, in one app. Stations as extended warehouses with self-ageing license tracking, fuel products with regulated pump prices, wetstock tanks with dip variance, pumps and totalizer meters, a fuel Point of Sale that deducts the tank, the forecourt mini-mart, shifts with cash control and fuel-sales analytics — everything a forecourt runs on, built in. Nothing else to buy.
Forecourt modules in one app — stations, fuel products, tanks, pumps, fuel POS, mini-mart and reports — with nothing else to buy.
Verified end-to-end on our live demo: a POS fuel sale deducts the exact litres from the station tank and fills the shift and fuel-sales totals.
Multi-station, multi-brand, 24-hour forecourts with self-ageing license alerts and per-shift cash reconciliation.
Everything a forecourt runs on, in one app
Every screenshot below is a real screen from a working Odoo 18 install — verified end-to-end on our live demo.

Every station on one board
Each station is a card showing its auto code, brand and live tank and pump counts, topped with a status badge. The list colours a row amber when a license is Expiring Soon and red when it has Expired, so one glance tells you which sites need attention today.

Brand, license, GPS and a real workflow
Flag a warehouse as a petrol station and a Station Details tab appears with brand, license number and expiry, GPS coordinates, address, operating hours, facility flags and manager. Activate, Suspend or Close it with manager-gated workflow buttons, and jump to its tanks, pumps and staff from the stat buttons.

Metered fuels, regulated pump prices
Mark any product as fuel and it becomes a metered, storable product priced in litres, with a pump price and an EPRA-style ceiling the app refuses to exceed. Petrol, diesel, kerosene, LPG and CNG are all supported, with fuel colour codes and density, ready for tanks, pumps and the till.

Live litres, dip readings, variance
Fuel tanks are stock locations with a live volume and fill percentage drawn from real stock. Enter a physical dip and the reading snapshots book stock, computes the variance in litres and percent, and warns when it exceeds your threshold — then one click adjusts the tank to reality, logged to the chatter.

Nozzles wired to tanks, meters that move stock
Pumps carry nozzles, each linked to a tank and priced from the fuel's pump price. Totalizer readings compute the volume sold automatically, a regression guard stops the meter running backwards, and confirming can book the tank stock move — with a double-confirm guard so a litre is never counted twice.

Sell fuel at the till, deduct the tank
A fuel popup where the cashier enters litres or a shilling amount (the other back-solved from the pump price), picks the pump and captures the plate. Add to order and the sale deducts the station tank, prints pump and litres on the receipt, and lands in your reports — verified live end-to-end.

Station name, pump, litres, plate
The receipt prints your station name in the header and the fuel detail on the line — pump number, litres, price per litre, and the plate and odometer when you capture them. Behind it, the sale has already deducted the station tank and fed the shift and fuel-sales reports.

The forecourt shop, on the same till
The convenience shop is built in — no separate purchase. Flag a product as a mart item and it joins the shop list and drops onto the same POS as your fuel. Drinks, snacks, motor oil, accessories: the whole forecourt shelf in one place.

Cost, live margin and a one-click reorder rule
Set the cost and the shop shows the live margin percent as you price. Enter a minimum and reorder quantity and one button turns them into a real Odoo reordering rule, so the fast movers restock themselves. Category-driven expiry tracks perishables by date while motor oil is left alone.

Fuel-sales analytics and a daily summary PDF
Fuel-sales pivots and graphs by station, product and pump, plus a daily station summary you can print as a PDF — all populated from the real POS fuel sales, so your end-of-day numbers are one click away.

Float in, count out, variance computed
Open a shift with a cash float and close it with a physical count. Total Fuel Sales and Total Shop Sales for the station within the shift window are aggregated from the Point of Sale automatically, splitting fuel lines from shop lines, so the cash variance against expected is calculated for you — not a guess.
Every feature, at a glance
One purchase, the whole forecourt. Every feature below is a real screen from a working Odoo 18 install — and the screenshot gallery at the top of this page is a full-size slideshow of them all.
Every station on one kanban with live tank and pump counts and a license status badge.
Brand, license, GPS, address and manager, with Activate / Suspend / Close buttons.
Opening and closing times per station, or a single 24-hour flag for round-the-clock sites.
Mark car wash, restaurant, service bay, mini-mart and LPG on each station.
Attendants, cashiers and managers with codes, admin-only POS PINs and certifications.
Petrol, diesel, kerosene, LPG and CNG as metered, storable products priced in litres.
A pump price and an EPRA-style ceiling the app refuses to exceed, plus density and colour.
Shell, TotalEnergies, Rubis, Vivo and more, assignable per station for clean brand reporting.
Company-level options for variance thresholds, meter stock behaviour and defaults.
Fuel tanks as stock locations with live volume and fill percentage from real stock.
Capacity, safe min/max levels, product, tank type and calibration dates per tank.
Physical dip snapshots book stock and flags variance in litres and percent against your threshold.
Bring a tank to the physical dip with a proper, chatter-logged inventory adjustment.
Pumps per station with type, service dates and a draft / active / maintenance workflow.
Each nozzle links to a tank, inherits the fuel and prices from the pump price in one click.
Enter the new totalizer; volume sold computes itself, with a regression guard against a lower reading.
Confirming books a tank-to-customer stock move for the litres sold, with a double-confirm guard.
Fuel products on the Point of Sale; tapping one opens the fuel popup on a fuel POS.
Pick the pump, enter litres or a shilling amount (the other back-solved), capture the plate.
Pump number, litres and price-per-litre ride on the order line into the backend.
Cash, card or mobile money; pair with our M-Pesa POS for STK-Push fuel payments.
Station name, pump and litres print on the receipt; the sale deducts the station tank.
Flag a product as a mart item and it drops onto the same till as your fuel.
Live margin from cost, and a button that turns min/reorder quantities into an Odoo reordering rule.
Hierarchical shop categories; flag one for expiry and its products switch to date tracking.
Float in, count out; fuel and shop totals pulled from the POS so cash variance is real.
Slice fuel sales by station, product and pump in a live pivot from real POS orders.
Bar and line views of volume and value for quick trend reading.
A printable end-of-day station summary populated from the real fuel sales.
Live in an afternoon
Tick "Is Petrol Station" on any warehouse for an automatic station code, add your fuels with pump prices, then your tanks, pumps and nozzles. Rich demo data ships with the app, so every screen is populated the moment you install.
Tick "Is Fuel POS" on a till and pick the station warehouse — sales draw fuel from that station's tanks. Run shifts with cash declaration; fuel and shop totals and the fuel-sales reports fill in automatically.
The complete forecourt suite
Four focused apps that share the same data and security. Petrol Station Management runs the forecourt end to end; add Fleet cards, Car Wash and Service Bay as your site grows.
Other Odoo services we offer
Common questions
What exactly is included?
Does a fuel sale really deduct the tank?
Does it run on a POS machine at the pump?
How does the license tracking stay current?
Can I run many stations on one system?
Will I double-deduct fuel stock?
What does the module need to run?
Talk to us today
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Employees (hr) • Inventory (stock) • Invoicing (account) • Point of Sale (point_of_sale) |
| Lines of code | 2959 |
| Technical Name |
aminitech_petrol_station |
| License | OPL-1 |
| Website | https://aminitechsolutions.com |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module