Odoo 20 POS in Jordan: What's New for Retail Stores and Restaurants
Odoo 20 adds multi-currency checkout, pay-after-meal QR codes, stock without the Inventory app and a simpler session close. Here is what Jordanian shops and restaurants can use, what to test against JoFotara, and how to upgrade.
Published 2026-10-06 · METCH
Odoo 20 POS at the counter: what changes for shops in Jordan
Odoo 20 was released in September 2026, and most of its Point of Sale changes target the busy hour at the till. For a store in Jordan, these are worth trying first:
- Several currencies on one register. A gift shop in Wadi Musa or a hotel boutique at the Dead Sea can take US dollars from one visitor and dinars from the next. Your company currency stays JOD, as JoFotara requires. Odoo has not yet documented how change and exchange rates work at the till, so confirm both in a demo.
- Order search by receipt or invoice number, so a returned item's original order is found in seconds.
- A new, very restrictive Supervised access level (the other levels were renamed), suited to trainees and extra staff hired for Ramadan and Eid.
- A warning when a cashier selects an expired product, useful for groceries and pharmacies.
- Drag-and-drop product layout, so best sellers sit where cashiers reach first.
- Any label printer can connect through a USB proxy, and labels can show the base unit price, such as the price per kilo at a nut and coffee roastery.
- A simplified receipt option when printing or reprinting: subtotals and taxes, no order lines. It changes what is printed, not what is recorded.
Pricing gets more flexible too, via the pricelist and loyalty engine POS shares with Sales: rules for set periods or weekdays, expiring loyalty points, and discount codes limited to one use per customer. Test each at the till first.
Restaurants and cafés: self-ordering, kitchen tickets and service fees
The restaurant changes in Odoo 20 shorten the path from the table to the kitchen:
- An order-specific QR code lets guests order from their phones and pay after the meal, which fits a long Friday family lunch.
- Self-order notes, such as no onions, appear on the kitchen display.
- Optional products, like an extra sauce, show on mobile and kiosk.
- Snooze hides an item from the POS and self-order menu for a while, say when the kunafa runs out.
- For big tables, POS suggests turning separate lines into a combo, which keeps a large mansaf order tidy.
- Split per product prints one preparation ticket per item, and several printers can be linked to one POS with the cashier choosing which to use.
- Bookings get their own Kanban and pivot views.
Service fees are now added through presets such as Dine In, Takeout and Delivery, and the amount appears on invoices. Each preset can carry its own pricelist, fiscal position, opening hours and capacity. If you add a service charge to dine-in bills, as many sit-down restaurants in Jordan do, set it on the Dine In preset and ask your accountant how it is taxed and reported to JoFotara.
Self-order customers can also get their receipt by WhatsApp or SMS. WhatsApp needs an official Business Platform account, not the WhatsApp Business App on a shop phone.
Most UrbanPiper settings now live inside POS. Its provider list includes Talabat for Jordan, but the connector needs Odoo Enterprise and a separate UrbanPiper subscription.
Stock without the Inventory app: a fit for small shops and cafés
One of the quieter Odoo 20 changes may matter most to small businesses. Point of Sale and eCommerce can now work with simplified stock without installing the Inventory app: one on-hand quantity per product and no required transfers. Stock on hand and its accounting value can still be managed, so cost of sales is not a guess, and sales orders can be fulfilled, with shipping confirmation emails, without Inventory as well.
For a single café, a bookshop or a boutique that also sells online, this means one number per product that drops whether the sale happens at the till or on the website. Staff can start selling without first learning receipts, deliveries and stock locations.
Simplified stock has limits. Keep the full Inventory app if you:
- run more than one branch and move goods between them, say between Amman and Irbid
- need lots and expiry dates, as pharmacies and food distributors usually do
- work from a warehouse, with reordering rules or barcode receiving
Before you decide, confirm two things in a demo: whether the new expired-product warning at the till works without Inventory, and how bills of materials (recipes) behave in simplified mode. Starting simple and adding Inventory when a second branch opens is a sensible path, as long as you know in advance where that line sits for your business.
Closing the day and staying in line with JoFotara
When a session closes, Odoo 20 now creates one global sale, which simplifies accounting entries and removes miscellaneous ones. Payment journal entries can also be generated automatically at a time you set, without closing the session, which helps cafés open past midnight or through Ramadan nights. Existing controls still apply: a maximum cash difference that needs a manager above the limit, no closing a restaurant POS while draft orders are open, and Odoo's advice to close the register daily. In Accounting, cash journals can now be secured with entry hashing on reconciliation.
On JoFotara, be precise about what is new. JoFotara-compliant POS receipts are also available from Odoo 18, and improved refund synchronization from Odoo 17, so neither is exclusive to Odoo 20. New in Odoo 20 is support for several JoFotara submission scenarios for invoices and POS receipts, plus supplier country and tax number checks and error handling in the Send wizard. Agree with your accountant which scenario fits your business.
Odoo's Jordan documentation sets these rules for invoices; test receipts against them too:
- The company currency must be JOD, and standard general sales tax is 16%.
- Odoo keeps JOD to 3 decimals while the Income and Sales Tax Department expects 9, so differences under 0.001 can appear.
- JoFotara rejects negative lines and does not support global or fixed-amount discounts. Loyalty rewards and discount codes can produce exactly such lines, so run every promotion through a test database and use only per-line percentage discounts.
- Invoice QR codes can be checked in the Sanad app.
Upgrading your store to Odoo 20 without losing a trading day
Standard support for Odoo 17 ended in September 2026, and Odoo 18's is planned to end in September 2027, while Odoo 20 is planned to be supported until September 2029. If your shop or restaurant runs an older version, plan the move around your trading calendar instead of squeezing it in:
- Request an upgraded test database and run real tills on it: barcode scanners, receipt and kitchen printers, scales and card terminals.
- Re-test JoFotara from end to end: a normal sale, a refund, and every promotion you plan to run.
- Schedule the production upgrade outside trading hours. The database is unavailable while it is being upgraded, so avoid Thursday nights, Ramadan evenings and the days before Eid.
- Before starting, close every POS session and make sure orders taken offline have synced. Do not reload a till's browser or clear its cache until they have.
- Train cashiers on the new Supervised level, the renamed access levels and the full and simplified receipts.
- Budget for SMS and AI credits, and for a WhatsApp Business Platform account if you plan to send receipts by WhatsApp.
If you would like a second pair of eyes, METCH, a certified Odoo partner working with shops and restaurants in Jordan, can help. Book a free consultation to review your POS setup or to estimate the cost of the upgrade before you commit.
Frequently asked questions
Can one Odoo 20 point of sale take payment in both US dollars and Jordanian dinars?
Yes. Odoo 20 supports multiple currencies at checkout in the same point of sale, so a tourist can pay in dollars and the next customer in dinars. Keep JOD as the company currency for JoFotara. Odoo has not yet documented how change and exchange rates are handled at the till, so test both in a demo before training cashiers.
Do I still need the Inventory app for a small shop or café on Odoo 20?
Not always. Point of Sale and eCommerce can now run on simplified stock, with one on-hand quantity per product and no required transfers, and stock value is still managed in accounting. Keep the full Inventory app if you move goods between branches, track lots and expiry dates, or run a warehouse.
Does Odoo 20 send POS receipts and refunds to JoFotara?
Yes, though neither is exclusive to Odoo 20: JoFotara-compliant POS receipts are also available from Odoo 18, and improved refund synchronization from Odoo 17. Odoo 20 adds support for several JoFotara submission scenarios for invoices and POS receipts. Test receipts, refunds and promotions in a test database, because JoFotara rejects negative lines.
Do WhatsApp and SMS receipts cost extra, and what do I need to switch them on?
SMS receipts use prepaid credits bought from Odoo, and Arabic messages fit 70 characters per SMS, or 67 per part when split, so keep them short. WhatsApp receipts need Odoo Enterprise, an official WhatsApp Business Platform account and pre-approved templates; a personal number or the WhatsApp Business App will not work. Meta also requires a payment method on the account, so check Meta's own message pricing.
Need help with this?
METCH is a certified Odoo partner serving Jordan — book a free consultation.
Get a proposal