Who we are

About IT Horizon

A boutique technology house engineering enterprise systems with the precision of a luxury maison.

Our story
Odoo Partner

Comprehensive Odoo

End-to-end Odoo 20 Enterprise, implemented, customized, integrated and supported by our own senior team.

Become a client
Odoo apps

Every app, configured for the Gulf

Finance, sales, supply chain, HR, marketing and services apps implemented with the local tax, payroll and language rules each country needs.

All Odoo apps
What we do

Beyond ERP

Strategy, product engineering and customer-experience work that turns systems into advantage.

Talk to us
Sectors

Industry depth

Domain fluency across the sectors that define the GCC economy, and the regulations behind them.

Discuss your sector
Learn · grow · succeed

Insights

Real-world ideas, case studies and sessions to help your business work smarter with Odoo.

Browse the blog
Contact usالعربيةBook a consultation
Home/Blog/Odoo in Kuwait · Guide
Odoo in Kuwait · Guide · 7 min read

Odoo for restaurants and cafés in Kuwait: POS, kitchen, delivery and stock

What Odoo does for a restaurant or café in Kuwait: tables and kitchen screens, recipe costs, the central kitchen, delivery orders and payroll. For owners and operations managers of restaurant groups and cafés, with one branch or several.

Odoo runs a restaurant or café on Point of Sale for tables, orders and payments, a kitchen display for the stations, Inventory and Manufacturing for ingredients and recipes, and Accounting for the daily close. Planning, Attendances and Payroll cover the staff. Everything sits in one database, so a dish sold at a branch reduces that branch’s ingredients, and the day’s sales, costs and cash are in Accounting as soon as the register is closed.

What a restaurant needs and where it is in Odoo

NeedOdoo app or settingNotes
Floor plan, tables, transfers, split billsPoint of Sale with Is a Bar/Restaurant onStandard in Point of Sale
Kitchen screens by stationPreparation display (the Kitchen Display app in Odoo 20)Odoo Enterprise
KNET paymentsA payment method for each KNET terminalStandalone terminal, or integrated per bank
Arabic receiptsReceipt in Arabic, English or bothBilingual layout set during setup
Recipe costs and ingredient stockKit bills of materials (Manufacturing app)Ingredients deducted at each sale
Central kitchen to branchesInventory: resupply between warehousesTransfers from the central kitchen
Delivery platform ordersUrbanPiper connector or a custom integrationScoped case by case
Shifts, attendance and salariesPlanning, Attendances, PayrollKuwait payroll rules configured
Daily close and margin per branchRegister closing and the POS orders reportCash counted for each session

Point of Sale for tables, counters and takeaway

In Odoo Point of Sale a restaurant is a shop with the Is a Bar/Restaurant option switched on. You draw each floor with its tables and seats, and staff take orders by table on a tablet or at the counter. An order can move to another table, two tables can be merged for a larger group, and dishes can be grouped in courses so the mains go to the kitchen when the starters are cleared.

  • Split bills by item or by guest, each part paid separately.
  • Tips added to the order as an amount or a percentage.
  • Dine-in and takeaway on the same screen, with different prices or taxes per order type where needed.
  • Table bookings taken from the register in recent versions, through the Appointments app.
  • Offline selling: the register keeps taking orders when the internet drops and syncs them when it returns.

Guests can also order from a QR code on the table or from a self-order kiosk, and those orders reach the same kitchen screens. More on Odoo Point of Sale.

Kitchen display and printers

When a waiter presses Send, each item goes to the station that prepares it: grill, cold kitchen, bar or pastry. A station can have a printer, a screen or both. The preparation display shows orders by stage, such as To prepare, Ready and Completed, highlights an order that has passed the time set for its stage, and shows the average preparation time. An order status screen at the counter tells takeaway customers when their order is ready.

The preparation display is part of Odoo Enterprise, and in Odoo 20 it opens as the Kitchen Display app. Kitchen printers connect over the network or through an IoT box.

KNET, cash and Arabic receipts in Kuwait

Odoo connects out of the box to card terminals from a list of providers, among them Adyen, Stripe, Viva.com and Worldline. KNET terminals issued by Kuwaiti banks are not on that list, so there are two ways to take KNET:

  1. Standalone terminal. The cashier keys the amount into the bank’s terminal and selects the KNET payment method in Odoo. Each payment method posts to its own journal, so the bank’s KNET settlement can be matched against it.
  2. Integrated terminal. Where the acquiring bank offers a way to connect its terminal, the register sends the amount and the approval comes back to the order. This is a custom integration that we scope per bank and terminal model.

At the end of the day the cashier closes the register. Odoo shows the expected amount for each payment method, the cashier enters the cash count, and any difference is posted to a cash difference account. You can set a maximum difference above which a manager has to approve the closing.

Kuwait has no VAT, so receipts carry no tax lines. Prices are in Kuwaiti dinars to three decimals, and menu items can be named in Arabic and English. Receipts can print in Arabic or English, and a receipt with both languages is a change to the receipt layout that we make during setup.

Recipes, ingredient stock and the central kitchen

A dish in Odoo is a product with a bill of materials of the Kit type: 150 g of chicken, a portion of rice, 30 ml of sauce, a container. Bills of materials come with the Manufacturing app, so it has to be installed. When the dish is sold at the register, Odoo deducts the ingredients from that branch’s stock and costs the sale from the ingredients, so the margin on each dish follows ingredient prices.

Sauces, dough, marinades and other items made in batches have normal bills of materials and are produced with manufacturing orders. A central kitchen is set up as its own warehouse that produces them, and each branch is a warehouse resupplied from it: a reordering rule at the branch, or a daily request, creates a delivery from the central kitchen and a receipt at the branch.

Waste and staff meals are recorded as scrap or as moves to a location of their own, so they appear in the cost instead of in the count difference. A weekly or monthly count per branch then shows the gap between what the recipes say was used and what is left on the shelf. More on Odoo Inventory.

Orders from delivery apps

Delivery orders need to reach the same kitchen screens, stock and daily close as dine-in orders. Odoo Enterprise 18 and later includes a connector to UrbanPiper, a separate order aggregation service with its own subscription. Odoo publishes the platforms it covers country by country, and each platform also needs a reseller account on your side.

We build delivery integrations case by case: through UrbanPiper where it covers your platforms, directly where a platform gives API access, or by entering platform orders at the register when volumes are low. We confirm the route during scoping. Each platform gets its own payment method, so its payouts can be checked against the orders.

Staff schedules and payroll

Planning builds the weekly rota by role (waiter, cashier, cook, driver) and by branch, and publishes each person’s shifts to them. Attendances records check-in and check-out on a kiosk tablet at each branch. Payroll uses the worked days, overtime and leave to compute the payslips.

For Kuwait, the payroll setup covers end-of-service indemnity, leave, PIFSS contributions for Kuwaiti staff and the bank salary file. The Odoo Payroll page describes it in detail.

Daily closing and margin per branch

Each branch has its own register, or several. Closing a register posts the day’s sales and payments to Accounting by payment method: cash, KNET, credit card and each delivery platform. The POS orders report shows sales and margin by point of sale, product and category, so the owner can compare branches the next morning.

A full profit and loss per branch, with rent and salaries in it, needs one decision at the start: each branch as its own company, or a branch analytic account on costs alongside the POS report for sales. We agree which with your accountant during design.

What IT Horizon does for restaurants

We start with one branch: a workshop on the menu, the stations, the payment methods and how stock is counted today. We load the menu with its recipes in Arabic and English, set up floor plans, printers and kitchen screens, and run a full test service on a copy of the database before the first live day. Cashier and kitchen training is at the branch, in Arabic or English. Once the first branch runs well, the others follow on the same setup, and we stay on support through the first weeks.

We are based in Salmiya, have 10+ years of Odoo work behind us, and work on site at your branches during setup and go-live.

What to do next

  1. List your branches, kitchen stations and payment methods, including each delivery platform you sell through.
  2. Write down the recipes of five dishes with quantities. That is enough to test recipe costing.
  3. Book a consultation with that list. A consultant shows the floor plan, the kitchen display and recipe costing in Odoo and outlines the scope for your branches.
FAQ

Common questions

Yes. KNET is set up as a payment method, with the bank’s terminal used standalone or, where the bank supports it, integrated with the register. Each KNET method posts to its own journal, so settlements can be reconciled against it.

Yes. Odoo Enterprise has a preparation display, the Kitchen Display app in Odoo 20, that shows each station its items by stage with a timer per stage. Kitchen printers per station work too, alone or next to the screens.

Yes. Each dish gets a Kit bill of materials listing its ingredients, which needs the Manufacturing app. Each sale deducts the ingredients from the branch’s stock and costs the sale from them.

Odoo Enterprise 18 and later has a connector to UrbanPiper, which needs an UrbanPiper subscription and an account with each platform. We scope each delivery integration case by case, depending on the platforms you use.

The register keeps taking orders in offline mode and syncs them when the connection returns. The browser must not be closed or reloaded while offline, and card terminals need their own connection.

Yes. The POS orders report shows sales and margin by point of sale, product and category, and closing each register posts the day’s takings to Accounting by payment method.

Need help with your Odoo project?

Tell us what you are working on. A senior consultant will reply with how we would approach it.

Phone
+965 5015 3388
WhatsApp
Message us
Email
[email protected]
Office
Salem Al Mubarak Street, Salmiya, Kuwait
Hours
Sunday to Thursday, 8:00 to 19:00