Tips at the Till: Separate the Gratuity, Its Payment and Staff Distribution
A tip feature needs more than a percentage button. Decide how the customer chooses a gratuity, which payment method collects it and how the recorded amount reaches the people responsible for distribution. A tip shown on an order does not, by itself, prove that staff have received it.
This guide helps scope a restaurant or shop POS integration. It does not determine whether a payment counts legally as a tip, how it is taxed or how employees must share it. Have those rules reviewed for your business before automating the handover.
Keep the gratuity identifiable
In a fictional café, a customer pays for lunch by card and leaves a cash tip. Recording one combined card amount would misdescribe what happened. Keep the purchase amount, gratuity amount and their payment allocation distinguishable, even when the customer sees one convenient checkout.
The Odoo 19 restaurant documentation gives a concrete implementation example: enabling tips selects a dedicated tip product used only for tips. It also says to choose only one tip product per POS. That is a product-specific arrangement, not a universal accounting model. Ask your implementer how the chosen system identifies gratuities in receipts, reports and exported records without disguising them as ordinary menu items.
Do not confuse a voluntary gratuity with a mandatory service charge. If both exist, specify separate customer wording and obtain the appropriate professional advice on their treatment. A similar-looking amount field does not make them the same business event.
Specify the payment combination
Odoo documents paying the order and the tip with different payment methods. Its instructions select the order's payment method first, then the tip's method and amount before validation. This is useful evidence that your brief should describe the actual combination, not merely ask whether the POS “supports tips”.
Request a demonstration of the combinations you need: purchase and tip on the same card, card purchase with cash tip, and no tip. Decide whether cash handed directly to an employee is recorded in the POS at all and how that policy avoids counting it again as drawer cash. This is a requirement to settle with your advisers, not a claim that Odoo automatically handles every arrangement.
Do not assume tips can always be added later
A gratuity chosen before payment and an addition after payment are different workflows. Odoo explicitly limits its documented after-payment option to a US POS using specified Adyen or Stripe terminals. Its separate terminal-tipping option names Adyen. Those restrictions must not become a promise that any terminal in any country supports the same sequence.
Confirm the installed software, terminal, payment provider and territory before agreeing the customer journey. If your setup cannot add a tip after payment, design the choice before payment instead of asking staff to edit a settled amount informally. For an uncertain terminal result, require a status check and reconciliation before another money-changing attempt.
Make refusal straightforward and distribution separate
Odoo's documented after-payment screen includes “No Tip” as well as suggested percentages and a custom amount. For your interface, ask for a clear way to decline and a readable final amount before confirmation. Suggested percentages should not obscure whether anything was actually selected.
Then define the staff handover separately: who reviews recorded tips, which period the report covers and how corrections reach the person responsible for distribution. Do not label a collection report “paid to staff” unless that separate outcome is established. The cited guide is not evidence of a payroll or tip-pooling mechanism.
Bring these scenarios to your POS integration brief: a declined tip, a custom amount, mixed payment methods, an unsupported later addition and an unresolved terminal response. Acceptance should show where the gratuity was recorded and collected, while leaving distribution and professional policy approval explicit.