Capture, pool, and report tips at Odoo POS checkout with card-terminal prompts and per-employee tip allocation. Built, installed, and supported by ECOSIRE. One-time license from $149.00 USD for Odoo 17, 18, 19 — includes 12 months of updates and support.

Capture, pool, and report tips at Odoo POS checkout with card-terminal prompts and per-employee tip allocation. Built, installed, and supported by ECOSIRE.
No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.
Odoo Point of Sale handles orders, payments, and receipts beautifully — but it has no real concept of a tip. Restaurants and cafes that run on Odoo end up tracking gratuities on paper, in spreadsheets, or as awkward "miscellaneous product" line items that pollute sales reports and never reconcile against what the card processor actually settled. When it's time to pay staff, someone spends an afternoon adding it all up by hand.
Add a tip at the POS payment screen as a fixed amount, a percentage of the bill, or an automatic round-up to the nearest whole currency unit
Card-terminal tip prompt integration — for Odoo-supported terminals (Adyen, Stripe, Viva and similar), the tip is entered on the terminal and read back into the order so the recorded tip equals the charged amount
Per-waiter tip attribution — assign each tip to the serving employee, captured on a new tip field of the pos.order record
Pooled tip mode — route tips into a shared pool for equal, hours-weighted, or role-weighted distribution defined in configuration
Split-bill tip handling — when a table pays per guest, each split carries its own tip and totals reconcile correctly with no double counting
Tip payout & reconciliation QWeb report showing tips per employee, per pool, and per payment method for any date range or POS session
POS Tip Management is a build-to-order Odoo module that ECOSIRE designs, builds, installs, and supports for your specific POS configuration. It gives your cashiers a fast, unambiguous way to add a tip at checkout — as a fixed amount, a percentage of the bill, or a round-up to the nearest whole — and it records every gratuity as first-class data your accountant and your team leads can actually trust.
Under the hood it is a proper Odoo module: a new pos.order.tip model (and tip fields on pos.order / pos.order.line) with computed totals via @api.depends, wired into the POS front end through OWL components on the payment screen so the tip prompt feels native, not bolted on. Where your card terminals support it (Adyen, Stripe, Viva, and similar Odoo-integrated payment terminals), we surface the on-terminal tip prompt and read the customer's selection back into the order so the recorded tip matches the amount the guest was actually charged.
Tips can be attributed to the serving employee or dropped into a shared pool for later distribution, and split bills carry per-guest tips correctly so a table that pays separately doesn't lose or double-count gratuities. At period close, a QWeb tip payout and reconciliation report shows tips collected per employee, per pool, and per payment method, cross-checked against POS session and payment-provider totals — the number you hand to payroll, backed by the number the bank settled.
Because this is net-new work tailored to your setup, ECOSIRE ships it with security (ir.model.access.csv plus record rules so waiters see their own tips while managers see the floor), configurable pooling and split rules, documentation, and hands-on training. It runs on Odoo 17, 18, and 19, Community or Enterprise, and every tip figure is exposed over Odoo's XML-RPC / JSON-RPC API for downstream payroll or BI. Typical delivery is 2 to 4 weeks from requirements sign-off — this is a made-for-you module we build and install, not an instant apps.odoo.com download.
Wants gratuities captured cleanly at checkout and paid out to staff accurately, without tips muddying sales reports or eating a manager's afternoon at period close.
Needs a fast, unambiguous tip button for cashiers, fair pooled or per-waiter distribution, and a single report that reconciles tips against the session and the card terminal before payout.
Wants tips posted to the right account (and optionally a tips-payable liability), reconciled against payment-provider settlement, and exportable via API into payroll — with a clean audit trail.
Buy the license on ecosire.com and download the POS Tip Management 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 Tip Management, 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 |
|---|---|---|---|---|
| POS payment-screen tip entry (amount / % / round-up) | Native OWL tip flow with all three modes and manager-editable presets | Possible but you design and test the whole UX yourself | Varies by app; often amount-only or one fixed mode | |
| Card-terminal tip prompt read back into the order | Configured and tested against your specific integrated terminal | Requires deep payment-terminal integration work in-house | Rarely supported; often manual entry only | |
| Per-waiter and pooled tip allocation | Both, with equal / hours- / role-weighted pooling rules | Buildable but the distribution logic is non-trivial | Some support per-waiter; pooling rules usually limited | |
| Correct tips on split bills per guest | Each split carries its own tip; totals reconcile | Edge cases (double counting) easy to get wrong | Frequently unsupported or buggy on splits | |
| Tip payout & reconciliation report vs settlement | QWeb report reconciled to session + payment-provider totals | You build the report and reconciliation from scratch | Basic totals at best; rarely reconciled to settlement | |
| Role-based visibility (waiter vs manager) | ir.model.access.csv + record rules scoped to your roles | Must design the security model yourself | Often all-or-nothing access | |
| Tips kept out of product sales figures | Dedicated tip model + account mapping, clean reports | Achievable with careful data modeling | Some log tips as products, polluting sales data | |
| Fit, delivery, and ongoing support | Built to your spec in 2-4 weeks, installed, trained, supported | Timeline and support depend entirely on your team | Instant install but generic; support is vendor-generic |
This is a build-to-order module we develop specifically for your Odoo setup, not an instant download. Typical delivery is 2 to 4 weeks from the day requirements are signed off. We build on a dev/staging instance first, review it with you, then install on production. Timing depends on scope — the tip modes you need, your payment-terminal model, and your pooling and payout rules — and we confirm a firm date after a short scoping call.
For payment terminals that Odoo integrates with (such as Adyen, Stripe, and Viva), the customer selects or enters the tip on the terminal itself, and the module reads that amount back into the pos.order so the recorded tip equals what the card was charged. If your terminal doesn't support on-device tip prompts, the cashier enters the tip on the Odoo payment screen instead — either way it's captured as structured data. Tell us your exact terminal model during scoping and we'll confirm the terminal-prompt path before we quote.
Yes. Each tip can be attributed to the serving employee, or routed into a shared pool distributed equally or weighted by hours or role, per your configuration. On split bills, every guest's split carries its own tip and the totals reconcile correctly with no double counting. We configure the default mode and any per-POS overrides to match how your floor actually works.
No. Tips are stored as first-class data on a dedicated tip model with computed totals, not as fake product lines, so your product sales figures stay clean. We map tips to a dedicated income or liability account and can optionally post a tips-payable journal entry, so your books and payouts stay separate and auditable. The reconciliation report cross-checks recorded tips against POS session and payment-provider settlement totals.
Every build includes a post-launch support and bug-fix window with a defined SLA — defects we introduce are fixed at no charge. Beyond that we offer an optional ongoing maintenance plan covering enhancements, new tip rules, and compatibility upgrades. Because we build across Odoo 17, 18, and 19, we also provide a version-upgrade path so the module keeps working when you move to a newer Odoo release.
Yes. The module is built to run on Odoo 17, 18, and 19 and works on both Community and Enterprise editions of Point of Sale. We target the version you specify and can maintain it across an upgrade. All tip data is also exposed over Odoo's XML-RPC / JSON-RPC API, so you can pull it into payroll or a BI tool regardless of edition.
Capture, pool, and report tips at Odoo POS checkout with card-terminal prompts and per-employee tip allocation. Built, installed, and supported by ECOSIRE.