8.3 Point of Sale (POS)
Key Takeaways
- Each till is a Point of Sale configuration that defines its product categories, pricelists, payment methods, stock location/operation type, journals, and Restaurant mode.
- A session opens with a cash balance and closes with cash control — the drawer is counted, compared to the expected amount, and the totals post to accounting.
- Payment methods are cash (uses a cash journal, computes change, feeds cash control) or bank/card (uses a bank journal); an order can split across several methods.
- POS links to Inventory through its stock location so sales reduce on-hand stock, and to Accounting through its sales, cash, and bank journals.
- Restaurant mode adds floors and tables, kitchen/preparation printers, bill splitting, and tips on top of the same session, inventory, and accounting backbone.
The Point of Sale App
Odoo Point of Sale (POS) is a browser-based till for in-person selling that works both online and offline and syncs with Inventory and Accounting. It suits retail shops and, with the Restaurant features enabled, bars and restaurants. The exam expects you to know the session lifecycle, the order-and-payment flow, and how POS ties back to stock and the ledger.
Creating a POS configuration
Each till is a Point of Sale configuration created under Point of Sale ▸ Configuration ▸ Point of Sale. The configuration sets which product categories appear, the pricelist(s), the payment methods allowed, the operation type / stock location for inventory moves, the accounting journals, receipt options, and whether Restaurant mode is on. Several tills can share settings or run independently, and each is launched with New Session.
Opening and closing a session, cash control
A session is one continuous period a cashier operates a POS. Opening a session records the opening cash balance in the drawer. During the session, sales, refunds, and manual cash in / cash out movements are tracked. At the end, closing the session triggers cash control: the cashier counts the drawer, Odoo compares the counted amount with the expected amount, and any gap is recorded as a cash difference. Closing then posts the session's totals to accounting. Because settlement happens at session close, keeping sessions short and reconciled is standard practice.
The POS interface and taking orders
The register screen shows a product grid with category tabs on one side and the current order (order lines) on the other. The cashier taps products to add lines, adjusts quantity, unit price, or discount, and can attach a customer to the order (needed for invoicing or loyalty). A search bar and barcode scanner speed up product entry, orders can be put on hold, and internal or customer notes can be added. When ready, the cashier presses Payment.
Payment methods
Payment methods are defined in Configuration ▸ Payment Methods and then allowed on each POS. Two broad kinds exist:
| Method type | Behavior |
|---|---|
| Cash | Opens the drawer, computes change, feeds cash control; posts to a cash journal |
| Bank / card | Card or terminal payment (Stripe, Adyen, Viva, and others); posts to a bank journal |
An order can be split across several methods, and change is calculated automatically for cash. Card payments can use an integrated terminal so the amount is sent to the reader directly, reducing keying errors.
Linking POS to Inventory and Accounting
POS is not a silo. Each configuration points at a stock location / operation type, so every sale reduces on-hand inventory (in real time or at session close, depending on settings), keeping stock accurate across channels. On the finance side, POS posts to the journals set on the configuration: a sales journal for revenue and tax, plus the cash and bank journals tied to each payment method. Closing a session creates the accounting entries that carry money from POS into the general ledger, and any order can be turned into a full customer invoice when a buyer requests one.
Receipts
After payment the cashier can print or email the receipt. Receipt content — header, footer, logo, and optional details — is set on the POS configuration. The receipt shows the order reference used for returns, and a prior order can be reprinted from the session's order list.
Refunds, discounts, and price control
POS handles more than straight sales. A cashier can process a return / refund by recalling the original order or entering negative quantities, apply a line discount or a global discount on the whole order, and — when allowed — override the unit price. Configuration tightens this: you can require a manager PIN for discounts, refunds, or price changes, and set cash rounding rules for currencies without small coins. Tax can be shown per line, and the till always respects the active pricelist and any loyalty reward attached to the customer, so the amount charged matches the shared pricing rules used elsewhere in Odoo.
Restaurant features
Enabling Is a Bar/Restaurant unlocks hospitality tools that reuse the same session, payment, inventory, and accounting plumbing:
- Floors and tables — draw a visual floor plan, place tables, and assign an order to a table so a server manages several open checks at once.
- Kitchen order / preparation display — send items to a kitchen printer or preparation screen so the kitchen or bar starts work while the guest is still seated.
- Bill splitting and merging — split a check by guest or item, or transfer and merge orders between tables.
- Tips and courses — capture gratuities and fire appetizers and mains separately.
Offline mode, employees, and loyalty
Two more capabilities round out POS knowledge. First, POS is built to keep selling when the network drops: orders are stored offline in the browser and sync automatically once the connection returns, so a checkout never stalls at the counter. Second, a single till can require multi-employee login, where cashiers switch identity with a personal PIN/badge and each order records who rang it. On top of these, the shared Loyalty engine adds loyalty programs, gift cards, an eWallet, and promotion or discount codes that behave consistently across POS, eCommerce, and Sales — so a customer's points, wallet balance, and pricing follow them from the shop counter to the website.
What happens when a cashier closes a POS session?
Which Restaurant feature lets a server assign an order to a specific table and manage several open checks at once?