- Home
- Apps
- SaaS Tools
- POS Grocery & Supermarket Suite
Illustrative previewAn FMCG-focused Odoo Point of Sale pack engineered for supermarkets and grocery chains:
high-speed barcode and PLU scanning, weighed-product price-embedded barcodes, multi-buy promotions, and electronic shelf-label sync.
ECOSIRE builds it to your scope, installs it, and supports it after go-live.
What is POS Grocery & Supermarket Suite?
An FMCG-focused Odoo Point of Sale pack engineered for supermarkets and grocery chains: high-speed barcode and PLU scanning, weighed-product price-embedded barcodes, multi-buy promotions, and electronic shelf-label sync. ECOSIRE builds it to your scope, installs it, and supports it after go-live. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Key Features
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your Odoo.
- 3
Go live + support
You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.
Technical Specifications
- Odoo Compatibility
- Odoo 17, Odoo 18, Odoo 19
- Editions
- Enterprise & Community
- License
- Licence confirmation required
- Python Requirement
- Python 3.10+
- Database
- PostgreSQL 12+
About this Product
Grocery retail lives and dies on checkout throughput and price accuracy, and this is exactly where a stock Odoo POS starts to strain. Native point_of_sale handles a clean barcode and a fixed unit price well, but a real supermarket lane deals with GS1 price-embedded scale labels (20/21 prefixes that carry weight or amount in the barcode), deli counters selling by the kilo, multi-buy shelf tags like "3 for 100", and thousands of SKUs whose prices must stay identical between the shelf edge and the till. Out of the box, Odoo cannot decode a weighed barcode into product plus quantity, cannot express mix-and-match promotions across a product family, and has no channel to push a price change out to electronic shelf labels. Cashiers end up keying weights by hand and the store leaks margin through pricing mismatches.
The POS Grocery & Supermarket Suite is an Odoo module set we build on top of point_of_sale to close that gap. At its core is a barcode-rule engine extending barcode.rule that parses embedded-weight and embedded-price GS1 formats, so a scanned scale label resolves to the right product.product, quantity, and line total in one beep without a keystroke. A pos.pricelist-aware promotion model (models.Model with @api.depends computes) evaluates multi-buy, mix-and-match, and threshold discounts server-side at order validation, so the receipt and the shelf tag always agree. PLU lookups for loose produce are backed by an indexed lookup table and surfaced in a fast keypad screen built with OWL components in the POS front end, keeping the cashier on the keyboard and off the mouse.
Technically, the suite ships as clean, upgrade-safe addons: each has its own __manifest__.py declaring dependencies on point_of_sale (and pos_hr for lane/cashier management), models under models/, XML/OWL views, ir.model.access.csv plus record rules so a store manager sees only their store's data, and QWeb receipt and end-of-day reports. Electronic shelf-label sync runs through a documented integration layer: an ir.cron automated action batches price and stock deltas and delivers them to your ESL gateway over its API, while the same JSON-RPC/XML-RPC surface lets head-office systems push pricelist updates in. Cash-drawer and lane management extend the session model so each register reconciles independently at close. Everything targets Odoo 17.0, 18.0, and 19.0, and we scope Community versus Enterprise honestly up front — several capabilities (like advanced barcode-driven inventory) behave differently on Community, and we tell you which before you commit.
Because this is a build-to-order product, you are not downloading a finished app from apps.odoo.com. After a short scoping call we confirm your Odoo version, edition, hardware (scanners, scales, ESL gateway, drawer/printer models), and the exact promotion and barcode rules your stores use. We then build the suite to that scope, deliver it on a staging instance for UAT, and only move to production once you have signed off. Typical delivery is one working week from confirmed scope, and you receive the full source, documentation, and a support window after go-live.
What you get
- Installable, upgrade-safe Odoo source code for your exact version (17.0/18.0/19.0) and edition
- Installation and configuration on your instance, including barcode rules, PLU tables, and ESL gateway wiring
- Technical documentation covering module structure, models, security rules, and the ESL/RPC integration surface
- User guide plus a live training session for cashiers, store managers, and administrators
- UAT on a staging instance with a documented test plan and a rollback plan before production cutover
- Post-go-live support window for defect fixes and configuration assistance
- Git repository handover with full commit history and branch structure
- Configuration reference for scanners, scales, cash drawers, and receipt printers used in your stores
Who this is for
Supermarket & Hypermarket Operators
Multi-lane stores that need weighed-item and price-embedded-barcode checkout to run without manual keying, and shelf-edge prices that never drift from the till.
Grocery Chain Head Office
Central teams managing pricelists and promotions across many stores who need to push price and promo changes down (and pull sales up) via the Odoo RPC API with per-store data isolation.
Store Managers
Front-line managers responsible for cash-up, lane reconciliation, and promotion accuracy who need per-lane drawer control and end-of-day QWeb reports for clean sign-off.
Odoo Implementation Partners
Partners delivering an FMCG rollout who want a scoped, documented POS extension with clean security and clear Community-vs-Enterprise boundaries rather than building the barcode and promotion engine from scratch.
How POS Grocery & Supermarket Suite Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Weighed / price-embedded barcodes | GS1 scale-label parser built into the barcode-rule engine | Possible but you build and maintain the decoder yourself | Partial; often fixed prefixes only | Not decoded — cashier keys weight manually |
| Multi-buy & mix-and-match promos | Server-side engine evaluated at order validation, receipt matches shelf tag | Bespoke build, tested at your cost | Basic discounts, limited family-level logic | Simple pricelists only, no true mix-and-match |
| Electronic shelf-label sync | Batched `ir.cron` push to your ESL gateway API | Full integration built from zero | Rarely included | No ESL channel |
| Per-lane cash-drawer management | Independent session reconciliation per register | Extend `pos.session` yourself | Varies by module | Basic single-session handling |
| Multi-store data isolation | Record rules scope data per store, RPC for head office | You design the security model | Often generic access only | Company-level only, no per-store rules |
| Odoo version fit (17/18/19) | Built and tested for your exact version and edition | Depends on your team's version discipline | May lag new releases | Core only, no grocery features |
| Support & ownership | Post-go-live window + full source and git handover | You own it and all maintenance | Vendor SLA, no source | Community/Enterprise support, no custom logic |
| Delivery model | Build-to-order, UAT on staging, one working week from scope | Long internal build cycle | Instant download but generic fit | Included, but gaps remain |
Frequently Asked Questions about POS Grocery & Supermarket Suite
How long does delivery take?
This is a build-to-order product, so we build it to your confirmed scope rather than shipping a fixed download. Typical delivery is one working week from the point where scope is confirmed — your Odoo version and edition, hardware, barcode formats, and promotion rules. Larger multi-store rollouts with heavy customization can run longer, and we tell you honestly during scoping if that applies.
Does it handle weighed items and scale barcodes?
Yes. The suite extends Odoo's `barcode.rule` engine to decode GS1 price-embedded and weight-embedded scale labels, so a single scan resolves to the correct product, quantity, and line total. We configure the exact prefixes and formats your scales produce during the build.
Which Odoo versions and editions do you support?
We build and target Odoo 17.0, 18.0, and 19.0. It works on both Community and Enterprise, but a few capabilities behave differently on Community (for example advanced barcode-driven inventory flows). We confirm your edition during scoping and document exactly which features apply so there are no surprises.
Can it sync prices to our electronic shelf labels?
Yes. We build an integration layer that batches price and stock changes through an `ir.cron` automated action and delivers them to your ESL gateway over its API. We need your ESL vendor and gateway details during scoping to build against the correct interface.
How do updates and support work after go-live?
Every engagement includes a post-go-live support window for defect fixes and configuration help. Because you receive the full source and git repository, you own the code outright. We also offer ongoing support and Odoo version-upgrade services (for example moving from 18.0 to 19.0) as a separate arrangement when you need it.
Do I download this from the Odoo App Store?
No. This is not an existing apps.odoo.com download. ECOSIRE builds the module to your scope, installs it, validates it on staging with you, and supports it after go-live. You then receive installable source code and the git repository.
How does central control across multiple stores work?
Head office can push pricelist and promotion updates and pull sales data through Odoo's JSON-RPC/XML-RPC API. Record rules scope each store's data so managers only see their own store, while central teams retain catalog and pricing control across the estate.
Related Modules

POS Customer-Facing Display (Dual Screen)
A branded second screen that mirrors the cashier's Odoo POS session in real time — live cart, running total, promotions, loyalty points, and payment status shown to the customer. Built to order, installed, and supported by ECOSIRE.

POS Delivery Aggregator Hub (Talabat, Careem, Uber Eats, Deliveroo)
Bring every delivery-app order into one Odoo POS screen with two-way menu, price and stock sync. Built, installed and supported by ECOSIRE.

POS Kitchen Direct Printing
A build-to-order Odoo Point of Sale extension that auto-detects and manages POS receipt and kitchen printers, routes order lines to the right station, and adds a one-click test print with Self Order support. ECOSIRE scopes, builds, installs, and supports it for Odoo 17.0/18.0/19.0.

POS Kitchen Display System (KDS)
Real-time digital kitchen order screens for Odoo POS — route, time, and bump tickets across grill, fryer, bar and cold stations.
POS Grocery & Supermarket Suite
An FMCG-focused Odoo Point of Sale pack engineered for supermarkets and grocery chains: high-speed barcode and PLU scanning, weighed-product price-embedded barcodes, multi-buy promotions, and electronic shelf-label sync. ECOSIRE builds it to your scope, installs it, and supports it after go-live.
- GS1 price-embedded barcode parser extending `barcode.rule` that decodes embedded-weight and embedded-price scale labels into product, quantity, and line total on a single scan
- PLU keypad screen built as an OWL component for fast loose-produce entry, backed by an indexed PLU-to-product lookup table
- Multi-buy, mix-and-match, and threshold promotion engine evaluated server-side at order validation so receipt totals always match shelf tags
- Pricelist-aware promotion model using `@api.depends` computed fields to keep effective prices consistent across pricelists and stores