A build-to-order Odoo POS extension that gives multi-floor venues a true drag-and-drop floor designer with custom table shapes, seat capacities, visual merge/split, and a live occupancy and turn-time heat-map. ECOSIRE builds, installs, and supports it for Odoo 17, 18, and 19. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $199.00 USD; request a quote for a scoped proposal.

A build-to-order Odoo POS extension that gives multi-floor venues a true drag-and-drop floor designer with custom table shapes, seat capacities, visual merge/split, and a live occupancy and turn-time heat-map. ECOSIRE builds, installs, and supports it for Odoo 17, 18, and 19.
ابھی کوئی ادائیگی نہیں۔ یہ ہماری ٹیم کو قیمت کی درخواست بھیجتا ہے — ہم قیمت اور اگلے اقدامات کے ساتھ ای میل کے ذریعے رابطہ کریں گے۔
Larger restaurants, food halls, and multi-room venues quickly outgrow Odoo's stock POS floor editor. Odoo Point of Sale ships with a basic pos.floor and pos.table model set and a simple background editor, but it assumes a handful of rectangular or round tables on a single flat plane. Once you run two or three floors, a rooftop, a private dining room, and a bar with irregular booths, the native editor runs out of road: you cannot model a real seat count per table shape, you cannot see which sections are turning fast versus sitting idle, and merging two parties across tables is a clumsy, error-prone operation for your floor staff during a Friday rush.
OWL drag-and-drop floor editor embedded in the POS frontend with grid snapping and per-table rotation
Extends native `pos.floor` and `pos.table` models rather than patching core, keeping upgrades clean
Custom table shapes (round, square, rectangular, booth, bar-stool, L-shaped) with configurable width/height
Per-table seat capacity as a real `fields.Integer` used in occupancy and party-size validation
Multi-floor and multi-room layouts with named sections and independent background images per floor
Live occupancy heat-map computed via `@api.depends` on active `pos.order` links per table
POS Restaurant Floor Plan Designer Pro is the layer we build on top of native POS to close that gap. We extend pos.floor and pos.table with new fields and compute methods (models.Model, fields.Integer seat capacity, fields.Selection for shape, @api.depends computed occupancy state) and ship an OWL-based drag-and-drop editor that runs inside the POS frontend. Managers lay out multi-floor and multi-room plans visually, snap tables to a grid, assign custom shapes and sizes, and set exact seat counts per table. On the live POS screen, a color-graded heat-map overlays each table with its current occupancy and turn-time so a host can read the room at a glance and seat the next party into the fastest-turning section. Merge and split are handled visually — drag one table onto another to combine orders, split them back apart when the party separates — with the underlying pos.order links kept consistent.
Technically the module is a clean, upgrade-safe addon: a proper __manifest__.py declaring the POS dependency, ORM extensions rather than core patches, ir.model.access.csv plus record rules so floor-plan editing is limited to manager roles while cashiers get read-only occupancy, XML/OWL views for the editor and heat-map, and optional QWeb reports for section-level occupancy and turn-time summaries. Automated actions or ir.cron jobs can roll up turn-time analytics nightly, and every new model is exposed over Odoo's XML-RPC/JSON-RPC API so a host-stand tablet, a reservations system, or a BI tool can read live table state. It targets Community and Enterprise alike; where Enterprise-only POS features exist we note the difference during scoping and never assume an edition you do not run.
Because this is build-to-order, nothing is a black-box download. After a short scoping call we confirm the exact floors, table shapes, seat rules, and heat-map thresholds you need, then build the version pinned to your Odoo release (17.0, 18.0, or 19.0). Typical delivery is 2 to 4 weeks from confirmed scope. We install it on a staging database first, run UAT with your team against real layouts, then deploy to production with a rollback plan and hand over the full git repository. You own the source, the docs, and a post-go-live support window — no per-seat lock-in and no dependency on a marketplace listing.
Runs a venue with two or more floors, a rooftop, or private rooms and needs one accurate visual plan of every section instead of the flat single-floor stock editor.
Seats parties during peak service and wants a live heat-map of occupancy and turn-time to route guests to the fastest-turning tables and merge or split parties without cashier errors.
Standardizes POS across multiple locations and needs consistent, role-scoped floor-plan tooling plus API access to feed reservations and BI dashboards.
Owns the Odoo deployment and wants an upgrade-safe addon that extends `pos.floor`/`pos.table` cleanly, ships with proper access rules, and comes with source and docs they control.
Buy the license on ecosire.com and download the POS Restaurant Floor Plan Designer Pro module ZIP from your account dashboard.
Extract the ZIP into your Odoo custom addons folder on the server (or upload via Apps > Install from file on Odoo.sh / runbot).
Activate Developer Mode, open Apps, click Update Apps List, search for POS Restaurant Floor Plan Designer Pro, and press Install.
Open the new menu, paste your ECOSIRE license key, connect any external credentials (Shopify, Amazon, Stripe, etc.), and save.
Run the built-in connection test, sync your first 10 records, and schedule the recurring cron. Contact support if anything fails.
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Multi-floor / multi-room layouts | Built in, unlimited floors and named rooms | Possible but you design it from scratch | Often single-floor or capped | |
| Custom table shapes & seat counts | Configurable shapes with real per-table capacity | Whatever you build and maintain | Limited preset shapes | |
| Live occupancy & turn-time heat-map | Color-graded, computed from live orders | Build and tune the logic yourself | Rarely offered | |
| Visual merge / split tables | Drag-to-merge with consistent order linkage | Complex to get order links right | Basic or manual only | |
| Odoo version fit | Pinned build for 17/18/19, edition-aware | Depends on your developer | May lag new releases | |
| Access control | Role-scoped via access CSV + record rules | You implement the security model | Varies, often coarse | |
| API / integration | New models exposed via XML-RPC/JSON-RPC | You expose and document it | Usually closed | |
| Ownership & support | Full source + git handover + support window | You own it and all maintenance | Vendor-locked, per-listing updates |
This is a build-to-order module, so there is no instant download. After a short scoping call to confirm floors, table shapes, seat rules, and heat-map thresholds, typical delivery is 2 to 4 weeks from confirmed scope. Complex multi-location or integration requirements can extend that, and we tell you the realistic timeline before you commit.
We build against Odoo 17.0, 18.0, and 19.0, and pin the module to the exact release you run. It works with both Community and Enterprise POS; where a capability depends on Enterprise-only features, we flag it during scoping and design around your edition.
Every build includes a post-go-live support window for bug fixes and configuration tweaks, and you receive the full git repository so nothing is locked to a marketplace listing. Beyond the included window, or to port the module to a future Odoo version, we offer ongoing support and version-upgrade engagements.
We extend the native `pos.floor` and `pos.table` models through the ORM and add our own models rather than patching core files, which keeps the addon upgrade-safe. When you move to a new major Odoo version we rebuild and retest against it; the git handover means you or your own team can maintain it too.
Yes. Every new model is exposed over Odoo's XML-RPC and JSON-RPC API, so live occupancy and turn-time can feed a host-stand tablet, a reservations platform, or a BI tool like Power BI. We scope the exact fields and endpoints you need as part of the build.
Access is role-scoped with `ir.model.access.csv` and record rules. Managers can create and edit layouts, shapes, and thresholds, while cashiers and hosts get read-only access to the live occupancy heat-map. We tailor the exact permission matrix to your team structure.
You own it. There is no per-seat license and no dependency on an apps.odoo.com listing. We hand over the full source and git history, so your team can read, extend, or maintain the module independently.
A build-to-order Odoo POS extension that gives multi-floor venues a true drag-and-drop floor designer with custom table shapes, seat capacities, visual merge/split, and a live occupancy and turn-time heat-map. ECOSIRE builds, installs, and supports it for Odoo 17, 18, and 19.