Configurable combo meals and forced/optional modifiers with upsell pricing and kitchen-ready tickets — built for your Odoo POS. One-time license from $199.00 USD for Odoo 17, 18, 19 — includes 12 months of updates and support.

Configurable combo meals and forced/optional modifiers with upsell pricing and kitchen-ready tickets — built for your Odoo POS.
No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.
Selling meal deals and made-to-order items in Odoo Point of Sale usually means a wall of near-duplicate products, manual price math, and kitchen tickets that never show what the customer actually asked for. POS Combo Meals & Modifiers is a build-to-order Odoo module that ECOSIRE designs, develops, installs, and supports specifically for your QSR operation — no generic download, no guesswork.
Combo/meal-deal builder: one POS product spans multiple component slots (main, side, drink) with configurable min/max choices per slot
Component product groups: each slot draws from a curated set of eligible products so cashiers only see valid choices
Fixed-price, delta-price, and bundle pricing ('any 2 for', 'make it a meal') resolved by @api.depends computed fields on the order line
Forced modifier groups that block the POS order line until a valid selection is made (bun, spice level, cook temperature)
Optional modifier groups (extra cheese, add bacon, no onions) attached as structured records, not free-text notes
Per-modifier price adjustments that flow correctly to the receipt, the accounting journal entries, and sales reporting
At the core is a combo builder that lets a single POS product represent a whole meal deal. You define component slots (main, side, drink) as new models.Model records, each pointing at a group of eligible products, with min/max choices and per-choice price deltas resolved by @api.depends computed fields. Cashiers pick one main, one side, one drink from an OWL-based selection screen, and the order line price is calculated automatically — deposit pricing, "any two for" bundles, and fixed-price combos are all supported.
Modifiers work the same way. Forced modifier groups (for example, "choose your bun" or "spice level") block the line until a valid selection is made; optional groups (extra cheese, add bacon, no onions) attach cleanly with per-modifier price adjustments that flow through to the receipt, the journal entries, and your sales analytics. Because modifiers are stored as structured records rather than free-text notes, they report correctly, cost correctly, and print correctly.
That last point matters most in the kitchen. The module writes full combo composition and every modifier onto the KDS and the printed kitchen ticket via a customized QWeb receipt/order template, so expo and line cooks see "Combo #2 — no pickles, extra cheese, large fries" instead of a bare SKU. Upsell prompts (size up, add a dessert, make it a meal) fire at the moment of selection to lift average ticket without slowing the line.
ECOSIRE builds the module against your exact Odoo edition and version. It targets Odoo 17, 18, and 19, works on Community or Enterprise POS, respects your access model through ir.model.access.csv and record rules, and — where your workflow needs it — exposes the combo/modifier data over Odoo's XML-RPC/JSON-RPC API for kiosks, aggregators, or your own front end. You get a clean, upgrade-safe addon in its own __manifest__.py, not a pile of studio hacks.
This is a fixed-scope engagement with a typical 2–4 week lead time from confirmed requirements to installed, tested, and trained. You are buying the build and the handover, not an instant download.
Runs one or more quick-service outlets selling meal deals and customizable items. Needs combos priced and rung up in seconds without a product SKU explosion, and wants the kitchen to see exactly what was ordered.
Oversees menus and pricing across multiple locations. Needs consistent combo and modifier definitions, reliable upsell prompts to lift average ticket, and clean sales reporting on which combos and add-ons actually sell.
Owns the Odoo instance and cares about upgrade safety and access control. Wants a clean, documented addon with proper ir.model.access.csv and record rules — not Studio patches — that survives version upgrades and integrates with kiosks via the API.
Buy the license on ecosire.com and download the POS Combo Meals & Modifiers 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 Combo Meals & Modifiers, 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 |
|---|---|---|---|---|
| Combo meals as a single POS product (no SKU explosion) | ||||
| Forced + optional modifier groups with per-modifier price deltas | ||||
| Full combo + modifier detail on KDS / printed kitchen ticket | ||||
| Size / add-on upsell prompts at point of selection | ||||
| Built and tested for your exact Odoo 17/18/19 edition | ||||
| Menu, pricing, and kitchen layout configured to your real operation | ||||
| Structured records for accurate costing + POS analytics (not free-text notes) | ||||
| Clean addon with __manifest__.py, ir.model.access.csv, record rules (upgrade-safe, no Studio hacks) | ||||
| Included training, documentation, and post-launch support window |
Typical lead time is 2–4 weeks from the point your requirements (menu structure, combo rules, modifier groups, pricing, and kitchen ticket layout) are confirmed. This is a build-to-order engagement — ECOSIRE develops the module for your Odoo instance, tests it on staging, then installs it on production. It is not an instant apps.odoo.com download. Simpler menus land nearer two weeks; complex multi-outlet or API-integrated builds land nearer four.
Every build includes a 30-day post-launch support window for bug fixes and configuration adjustments. You receive full source code and Git access, so your team can maintain it, and ECOSIRE offers optional ongoing support/maintenance retainers. When you upgrade Odoo (for example 18 to 19), we can provide a paid compatibility pass — because the module is a clean addon with its own __manifest__.py and no Studio hacks, upgrades are straightforward.
We build against Odoo 17, 18, and 19, on either Community or Enterprise Point of Sale. Tell us your exact version and edition at kickoff and the module is developed and tested specifically for it, using the OWL POS architecture and QWeb templates native to that release.
Yes. That is a core part of the build. Full combo composition and every modifier (including negatives like 'no onions') are written to the printed kitchen ticket and the Kitchen Display System via a customized QWeb order/receipt template — so the line sees 'Combo #2, extra cheese, no pickles, large fries', not a bare SKU. The exact layout is tailored to your outlet during the engagement.
They are stored as structured Odoo records (via proper models.Model definitions and computed price fields), not free-text order notes. That means per-modifier price adjustments flow into the receipt, the accounting journal entries, and POS sales analytics, and component products can be tracked against inventory. You get real reporting on which combos and add-ons sell — something free-text approaches cannot give you.
Yes. Configuration lives in back-office records secured by ir.model.access.csv and record rules, so authorized POS managers can add or change combos, modifier groups, and prices without a developer. Your documentation and training session cover exactly how. If you prefer, ECOSIRE can also manage menu changes for you under a support retainer.
Configurable combo meals and forced/optional modifiers with upsell pricing and kitchen-ready tickets — built for your Odoo POS.