- ہوم
- Apps
- SaaS Tools
- POS User Restrict
مثالی پیش منظرA build-to-order Odoo Point of Sale module that controls who can open a POS session and confines each user to their own orders and sessions.
ECOSIRE scopes, builds, installs, and supports it for you — this is not an off-the-shelf download.
POS User Restrict کیا ہے؟
A build-to-order Odoo Point of Sale module that controls who can open a POS session and confines each user to their own orders and sessions. ECOSIRE scopes, builds, installs, and supports it for you — this is not an off-the-shelf download. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
اہم خصوصیات
آرڈر پر تیار، مکمل طور پر آپ کے لیے
خود سیٹ اپ کی ضرورت نہیں — ایک کام کرنے والی ایپ جو ECOSIRE بناتا، انسٹال اور سپورٹ کرتا ہے۔
- 1
آپ آرڈر دیتے ہیں
ایک بار کی تعمیر کی قیمت سے آغاز کریں۔ آغاز پر ہم آپ کے ساتھ مل کر دائرہ کار طے کرتے ہیں۔
- 2
ہم بناتے اور انسٹال کرتے ہیں
ECOSIRE اسے آپ کے Odoo پر بناتا، ترتیب دیتا اور انسٹال کرتا ہے۔
- 3
لائیو + معاونت
آپ تقریباً ایک کاروباری ہفتے میں لائیو ہو جاتے ہیں، گو لائیو کے بعد دو ہفتوں کی معاونت کے ساتھ۔ ہمارے فراہم کردہ کوڈ کی خرابیاں مفت درست کی جاتی ہیں۔
تکنیکی تفصیلات
- Odoo ہم آہنگی
- Odoo 17, Odoo 18, Odoo 19
- ایڈیشنز
- Enterprise اور Community
- لائسنس
- لائسنس کی تصدیق درکار ہے
- Python کی ضرورت
- Python 3.10+
- ڈیٹابیس
- PostgreSQL 12+
اس مصنوع کے بارے میں
Out of the box, Odoo Point of Sale treats access as coarse-grained: any user in the point_of_sale.group_pos_user group can typically open any configured POS, resume any open session, and browse the full backend order list under pos.order. On a busy shop floor with multiple cashiers, shifts, and locations, that creates real problems — a cashier can pick up or edit another operator's session, staff see turnover and refund history that isn't theirs, and managers lose the ability to tie a drawer to a single accountable person. Odoo's native res.groups and menu-level access controls stop at "can use POS / cannot use POS"; they do not express "this user may only touch their own sessions and orders," which is exactly the row-level boundary retail operations need. That is where the standard model runs out of road.
ECOSIRE builds a POS access-restriction module that layers row-level and configuration-level control on top of Odoo's security stack. The core mechanism is ir.rule record rules on pos.session and pos.order, evaluated against the logged-in user so that a restricted operator only sees and resumes sessions and orders they own, while managers retain a global view through a dedicated bypass group. We add a pos.config-level allow-list — an allowed_user_ids many2many (or per-config user assignment, decided at scoping) enforced both in the backend and in the POS session-opening flow — so a user can only launch the specific registers assigned to them. Access rights are declared cleanly in ir.model.access.csv and new res.groups records (for example a "POS Restricted User" versus "POS Manager" split), and the frontend is adjusted with OWL/JS overrides in the POS UI so the register picker and open-orders list respect the same boundaries the backend enforces — the restriction holds whether the user comes in through the point-of-sale interface or the pos.order backend menus.
Everything is packaged as a proper installable module: a versioned __manifest__.py depending on point_of_sale, models and any compute logic under models/ following Odoo ORM conventions (models.Model, typed fields, @api.depends/@api.constrains where server-side validation is needed to block cross-user session pickup), security artifacts, backend views in XML, and the POS OWL overrides. Because the boundary is enforced server-side through record rules — not just hidden in the UI — it also holds for programmatic access over the XML-RPC/JSON-RPC API, so an integration or script running as a restricted user is bound by the same rules. We target your exact platform: Odoo 17.0, 18.0, or 19.0, and Community or Enterprise (POS behaves differently between the two, and the OWL POS framework changed across these versions, so we build and test against your specific edition rather than shipping a one-size binary).
Delivery is build-to-order. After a short scoping call we confirm exactly how "ownership" should work for your floor — per-user, per-shift, per-register, or per-location — plus manager bypass rules and any edge cases (shared drawers, supervisor overrides, returns handled by a different operator). We then build against your Odoo version and edition, run UAT on a staging database, and install to production with a rollback plan. Typical delivery is one working week from confirmed scope. Pricing starts from $999 (indicative, single-company base scope); multi-company enforcement, multiple restriction dimensions (register plus location plus shift), integration with an existing custom POS flow, or migration of historical session/order ownership data increases the quoted scope. You receive a fixed quote after the scoping call — the from-price is indicative, not a firm figure.
What you get
- Installable, versioned module source code built for your exact Odoo version (17.0/18.0/19.0) and edition (Community/Enterprise)
- Installation and configuration on your environment, including group assignment and per-config allow-list setup
- Technical documentation covering models, record rules, groups, `pos.config` fields, and how to extend the restriction logic
- End-user and administrator guide plus a live training session for your POS managers and floor supervisors
- UAT on a staging database with a documented rollback plan before any production change
- Post-go-live support window for bug fixes and adjustments to the agreed scope
- Private git repository handover with full commit history and tagged release
- Configuration handover sheet mapping each user/register/location to its restriction rules for future maintenance
Who this is for
Multi-cashier retail operations manager
Runs several registers and shifts and needs each cashier locked to their own sessions and orders so drawers are accountable and staff can't edit each other's turnover or refunds.
Odoo administrator at a growing retailer
Owns the Odoo instance and wants POS access restrictions enforced server-side through record rules and groups — not brittle UI hacks — so the boundary also holds over the API and survives upgrades.
Multi-location franchise or chain owner
Needs users confined to the registers and locations they belong to, with a manager bypass for oversight, across many POS configs without hand-maintaining fragile per-user menus.
Finance / loss-prevention lead
Wants a clean audit boundary where each order and session traces to one accountable operator, reducing the risk of unauthorized edits, voids, or refunds on another user's transactions.
How POS User Restrict Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo نیٹو |
|---|---|---|---|---|
| What you get | Made-to-order module built, installed, and supported by ECOSIRE | In-house or contractor code you must spec and maintain | Generic off-the-shelf apps.odoo.com download | Only coarse can-use / cannot-use POS access |
| Enforcement depth | Server-side `ir.rule` + `@api.constrains`, holds over API | Depends entirely on your developer's rigor | Often UI-only hiding, variable rule quality | Group and menu access only, no per-user row rules |
| Restriction dimensions | Per-user, register, location, or shift — chosen with you | Whatever you build and re-build as needs change | Fixed to the author's assumptions | None beyond the POS user group |
| Version & edition fit | Built and tested for your exact 17/18/19 + Community/Enterprise | You own all version-compatibility work | May lag your version or not match your edition | Native, but only native behavior |
| Manager bypass & overrides | Dedicated manager group + override path designed in | Must be designed and coded yourself | May be absent or hard-coded | Not applicable |
| Delivery & risk | UAT on staging + rollback plan, one working week from scope | Timeline and QA depend on your team | Instant install but unknown fit and no scoping | Instant, but doesn't solve the requirement |
| Support & ownership | Post-go-live support window + private git repo handover | You are the only line of support | Vendor support varies; source may be closed | Covered by your Odoo support, feature not present |
| Total cost of ownership | From $999 indicative, fixed quote after scoping | Often higher once dev + maintenance are counted | Low sticker price, hidden fit/rework cost | Included, but capability is missing |
Frequently Asked Questions about POS User Restrict
Is this an existing app I can download and install right now?
No. This is a build-to-order module. ECOSIRE builds it for your specific Odoo version and edition after a scoping call, then installs and supports it. There is no instant download — you are commissioning a productized service, not buying shelf software.
How long does delivery take?
Typical delivery is one working week from confirmed scope. The exact timeline depends on how many restriction dimensions you need (per-user, per-register, per-location, per-shift), whether multi-company enforcement is involved, and any integration with an existing custom POS flow. We confirm the schedule in your fixed quote.
How does pricing and scoping work?
Pricing starts from $999 as an indicative single-company base-scope figure. After a short scoping call we agree the exact ownership model, manager bypass rules, and edge cases, then send a fixed quote. Multi-company, additional restriction dimensions, custom-flow integration, or historical ownership-data migration increase the quoted scope.
Will it work on my Odoo version and edition?
Yes — we build and test against your specific target: Odoo 17.0, 18.0, or 19.0, Community or Enterprise. The POS OWL framework differs across these versions and Enterprise adds POS features Community doesn't, so we don't ship a generic binary; we compile and QA for your exact stack.
Does the restriction only hide things in the UI, or is it truly enforced?
It is truly enforced. The core boundary is `ir.rule` record rules and `@api.constrains` guards at the ORM layer, so a restricted user is bound whether they act through the POS interface, the backend `pos.order` menus, or the XML-RPC/JSON-RPC API. The OWL frontend overrides keep the UI consistent with that server-side enforcement.
What about managers and supervisors who need to see everything?
We create a dedicated manager group with a global-view bypass rule, plus an optional override path for legitimate cross-user actions like returns or corrections. Restricted operators stay confined to their own sessions and orders while authorized roles retain full oversight.
What support and updates do I get after go-live?
Every engagement includes a post-go-live support window for bug fixes and in-scope adjustments, plus a private git repository handover so you own the source. Compatibility work for a future Odoo major-version upgrade is quoted separately as a new scope when you decide to migrate.
Related Modules

POS Tap to Pay — Contactless NFC on Mobile Devices
A build-to-order Odoo Point of Sale extension that lets staff accept contactless NFC card and mobile-wallet payments directly on a phone or tablet — no separate card terminal. ECOSIRE scopes, builds, installs, and supports it against your Odoo 17/18/19 environment.

POS Terminal Payments for Odoo
A build-to-order Odoo integration that connects your card payment terminal to Odoo Point of Sale so cashiers trigger, capture, and reconcile terminal transactions without leaving the POS screen. ECOSIRE scopes, builds, installs, and supports it for you.

POS Weighing Scale Integration
Connect electronic and barcode weighing scales to Odoo POS so weighted products price automatically by price-per-kg at the register.

POS WhatsApp Receipt Sender
A build-to-order Odoo Point of Sale extension that delivers each order receipt to the customer's WhatsApp number — either automatically at payment validation or manually from the POS session. ECOSIRE scopes, builds, installs and supports it for your Odoo 17, 18 or 19.
POS User Restrict
A build-to-order Odoo Point of Sale module that controls who can open a POS session and confines each user to their own orders and sessions. ECOSIRE scopes, builds, installs, and supports it for you — this is not an off-the-shelf download.
- Row-level `ir.rule` record rules on `pos.session` so a restricted user only sees and resumes their own sessions, never a colleague's open drawer
- Row-level `ir.rule` on `pos.order` confining each operator to the orders they created, enforced in both the POS frontend and the backend `pos.order` list
- Dedicated `res.groups` split — e.g. `POS Restricted User` versus `POS Manager` — with the manager group granted a global-view bypass rule
- `pos.config` allow-list (`allowed_user_ids` many2many) so each user can only open the specific registers assigned to them