- Home
- Apps
- SaaS Tools
- Simplify POS Access Management
Illustrative previewA build-to-order Odoo module that governs exactly what each POS user can see and do
— discounts, refunds, price overrides, cash management and session controls — enforced at the register, not just on paper.
ECOSIRE scopes, builds, installs and supports it on your Odoo 17/18/19.
What is Simplify POS Access Management?
A build-to-order Odoo module that governs exactly what each POS user can see and do — discounts, refunds, price overrides, cash management and session controls — enforced at the register, not just on paper. ECOSIRE scopes, builds, installs and supports it on your Odoo 17/18/19. 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
Most retail and hospitality teams discover the same gap the hard way: the Point of Sale is where money actually changes hands, yet Odoo out of the box gives nearly every cashier the same power at the register. A junior staffer can apply an unlimited manual discount, reopen a validated order, override a product price, delete a line, or pull cash from the drawer — and by the time it surfaces in an end-of-day report, the shrinkage has already happened. Odoo core does ship a two-tier POS security model (point_of_sale.group_pos_user and point_of_sale.group_pos_manager), but that binary distinction runs out of road quickly: it is essentially store-wide, not per-till or per-role, and it cannot express rules like "this cashier may discount up to 10% but never issue refunds" or "only a shift supervisor may reprint a receipt or change a price."
This is a made-to-order module that ECOSIRE builds specifically for your operation to close that gap. The foundation is Odoo's own security layer used properly: we define granular access groups in the module's security/ folder, wire them through ir.model.access.csv for model-level create/read/write/unlink rights, and add ir.rule record rules so managers only see the sessions, orders and registers that belong to their own store or company. On top of that we extend the POS itself — the OWL-based front-end and the pos.order, pos.session and pos.config server models — so a permission is not just a database ACL but a real gate at the register: buttons are hidden or disabled, an action is blocked, or a manager PIN/override is required before the sale can continue.
Technically, the enforcement lives on both sides of the wire. New boolean and numeric permission fields (for example a per-group maximum discount percentage, a "can refund", "can void line", "can change price", "can open cash drawer" or "can validate session" flag) are declared with fields on the relevant models and exposed through inheriting form views in XML. The POS front-end reads these on session load and enforces them client-side for a smooth cashier experience, while a @api.constrains / server-side check on pos.order validation is the authoritative backstop so nothing can be bypassed by a crafted JSON-RPC call. Sensitive events (an override, a large discount, a manager approval) are written to a lightweight audit log model so you get an accountable trail, and can be surfaced in a QWeb report or an Odoo automated action that emails a supervisor when a threshold is crossed. Everything is packaged as a clean, upgrade-safe module with its own __manifest__.py, versioned for Odoo 17.0, 18.0 or 19.0, and works on both Community and Enterprise (POS restrictions apply the same way; we flag any Enterprise-only touchpoints during scoping).
Because this is build-to-order, delivery starts with a short scoping call to map your roles, tills and the exact operations you want gated, followed by a fixed written quote. We then build against your target Odoo version, deliver and test on a staging database with your real permission matrix (UAT), and only then install on production with a rollback plan. Typical delivery is one working week from confirmed scope, depending on how many roles and edge cases are involved. Pricing starts from $999 (indicative, single-company base scope); multi-company or multi-store rollouts, deep custom permission matrices, and integration with existing loyalty, gift-card or manager-approval workflows increase the quoted scope.
What you get
- Installable source code for your version of the module, built against your target Odoo 17.0/18.0/19.0
- Installation and configuration on your environment, including the initial permission matrix wired to your roles and tills
- Technical documentation: models, permission fields, security groups, ir.rule record rules and extension points
- User guide plus a live training session for managers and administrators on configuring and using the access controls
- UAT on a staging database with your real role/till matrix, plus a documented rollback plan before production go-live
- Post-go-live support window for defect fixes and configuration adjustments
- Git repository handover with full commit history and README
- Compatibility notes covering Community vs Enterprise and any version-specific POS touchpoints
Who this is for
Multi-store retail operations manager
Runs several branches on one Odoo database and needs each store's supervisors to manage only their own tills and sessions, with cashiers unable to discount, refund or void beyond set limits. Wants an audit trail to explain end-of-day variances.
Hospitality / restaurant owner
Has high staff turnover and fast-moving service where price overrides and comped items are common. Needs manager-PIN approval on discounts, voids and refunds so shrinkage is controlled without slowing the line.
Finance / loss-prevention lead
Cares about accountability: who approved what, how large the discount was, and whether cash-drawer access is restricted. Wants override events logged and threshold breaches emailed automatically.
Odoo administrator / IT lead
Owns the Odoo instance and wants a clean, upgrade-safe module using standard security groups, ir.model.access.csv and record rules — not brittle studio hacks — with source, docs and a git handover they can maintain.
How Simplify POS Access Management Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Permission granularity | Per-role, per-till limits (discount %, refund, void, price, cash, session) tailored to you | Whatever you spec and can build in-house | Fixed set of toggles, rarely matches your exact matrix | Two tiers only: POS user vs POS manager, store-wide |
| Enforcement strength | Front-end UX gating plus authoritative server-side @api.constrains backstop | Depends on your engineering rigor | Often front-end only; bypassable via RPC in weaker ones | Coarse group-based ACLs, no per-action POS gating |
| Multi-store scoping | ir.rule record rules scope managers to their own store/company | Buildable but must be designed and tested by you | Usually global, limited multi-store awareness | No per-store manager scoping at the POS level |
| Audit & alerts | Override/discount audit log plus threshold email via automated action | Only if you build and maintain it | Rarely included or basic | No dedicated override audit trail |
| Fit to your workflow | Scoped to your roles, approvals and integrations before a line is written | Full control, but you own all the design decisions | You adapt your process to the app's assumptions | You live within core's two-tier model |
| Ownership & maintenance | Full source, git handover, docs, upgrade-safe manifest, support window | You own everything, including the maintenance burden | Vendor-controlled; you wait for their release cycle | Maintained by core, but not extensible without dev |
| Version coverage | Built and tested for your Odoo 17.0/18.0/19.0, Community or Enterprise | Whatever you target and validate | Version support varies; upgrades may lag | Ships with the version you run |
| Total cost & risk | Indicative from $999, fixed quote after scoping, UAT and rollback plan | Unbounded dev time and QA cost | Low sticker price, but gaps and rework risk | Free, but the control gap stays unsolved |
Frequently Asked Questions about Simplify POS Access Management
Is this an existing app I can download and install today?
No. This is a build-to-order module. ECOSIRE builds it specifically for your roles, tills and operations, then installs and supports it. There is no instant download — you request a quotation, we scope it, and we deliver a tested module for your Odoo version.
How long does delivery take?
Typical delivery is one working week from confirmed scope. The timeline depends on how many roles, stores and gated operations are involved and whether it must integrate with existing loyalty, gift-card or approval workflows. We agree the exact schedule with you at the end of the scoping call.
How does pricing and scoping work?
Pricing starts from $999 (indicative, single-company base scope). After a short scoping call we send a fixed written quote — no surprise costs. Drivers like multi-company/multi-store rollouts, deep custom permission matrices and third-party integrations increase the quoted scope.
Which Odoo versions and editions are supported?
We build for Odoo 17.0, 18.0 or 19.0, targeting the version you run. It works on both Community and Enterprise — POS access restrictions apply the same way. We flag any Enterprise-only touchpoints during scoping so there are no surprises.
What about support and future updates?
Every build includes a post-go-live support window for defect fixes and configuration adjustments. Because you receive the full source and git repository, you can maintain it yourself, and we offer paid support or a version upgrade when you move to a newer Odoo release.
Can a cashier bypass the restrictions with a direct API call?
No. The controls are enforced on two layers. The OWL front-end hides or disables buttons for a clean cashier experience, but the authoritative check runs server-side on pos.order validation via @api.constrains, plus ir.model.access.csv and ir.rule record rules — so a crafted JSON-RPC/XML-RPC request cannot get past the gate.
Can different roles have different limits, like discount ceilings per group?
Yes. That is the core of the module. Each POS user group gets its own permission set — for example a maximum discount percentage, whether it can refund, void lines, override prices, open the cash drawer or validate a session — all configurable from Settings without code changes once delivered.
Related Modules

Signifyd Chargeback Guarantee Connector for Odoo
A build-to-order Odoo connector that streams sales orders to Signifyd's decisioning API, auto-holds flagged orders, and reconciles guaranteed chargeback reimbursements back into Odoo. ECOSIRE scopes, builds, installs, and supports it — no instant download.

Silent Direct Printing
A build-to-order Odoo module that sends reports, labels and receipts straight to any network, USB, WiFi or Bluetooth printer with zero browser print dialog — plus rule-based auto-printing on record events. ECOSIRE scopes, builds, installs and supports it for your stack.

Smart Multi-Gateway Payment Router for Odoo
A build-to-order Odoo module that routes every payment to the cheapest or highest-performing gateway based on your rules, and automatically fails over when a provider declines or goes down. ECOSIRE builds, installs, and supports it for Odoo 17, 18, and 19.

Social Catalog and Shopping Sync for Odoo
A build-to-order Odoo module that turns your product catalog into a live, rule-driven feed for social commerce channels, keeping price, stock, variants, and imagery in sync from Odoo. ECOSIRE scopes, builds, installs, and supports it for your database.
Simplify POS Access Management
A build-to-order Odoo module that governs exactly what each POS user can see and do — discounts, refunds, price overrides, cash management and session controls — enforced at the register, not just on paper. ECOSIRE scopes, builds, installs and supports it on your Odoo 17/18/19.
- Granular POS access groups defined via the module's security/ folder and ir.model.access.csv, extending Odoo's group_pos_user / group_pos_manager beyond the native two-tier model
- Per-group maximum discount percentage enforced at the register, so a cashier cannot exceed a configured manual-discount ceiling
- Refund and return gating — a 'can refund' permission that hides or disables the refund flow for unauthorized users
- Line-void and order-delete restrictions preventing removal of scanned lines or validated orders without rights