Skip to Content

Odoo POS System in Thailand: Complete Setup Guide for Retail & Restaurants

July 29, 2026 by
Elevanta Marketing

Running a retail store or restaurant in Thailand without the right POS system is like driving without a dashboard. You're moving, but you don't really know what's happening. The Odoo POS system in Thailand connects your billing, inventory, accounting, and customer data in one place- no separate software, no manual syncing, no end-of-day guesswork.

This is for shop owners, restaurant managers, and operations leads across Bangkok, Si Racha, Chonburi, and beyond who want a POS that actually talks to the rest of their business. Not just a cash register. A system.

What Is the Odoo POS System and Why Do Thai Businesses Use It

Most POS systems process a sale and stop there. Odoo keeps going: inventory updates, revenue posts to Odoo accounting, and the transaction hits your sales report automatically. No manual entry. No syncing between apps. It all happens in the background.

And it runs in a browser. Any tablet, laptop, or PC can serve as a POS terminal. Thai businesses run it on cheap Android tablets, and it works fine. So why choose Odoo over a standalone POS? Three reasons: PromptPay connects natively, inventory syncs across branches in real time, and VAT, PND, and e-Tax invoices are all handled from the same system.

Odoo POS for Retail vs Restaurant

This question comes up constantly, and most competitor articles skip right past it. They treat Odoo POS like one thing. It's not.

Retail Mode: What It Covers

Retail mode is built around products, barcodes, and a fast checkout process. You scan items, apply discounts, accept payment, print a receipt, and move on. It handles loyalty programs, gift cards, customer accounts, and product variants, size, color, and weight. Stock updates the moment the sale closes.

Restaurant Mode

Restaurant mode adds everything a food business needs. Table management with a visual floor plan. Order routing to the kitchen. Course sequencing so drinks go out before mains. Split the bill so that a table of six can each pay separately. It's a different interface, different workflow, different setup.

Which One Should You Choose?

Retail shop, convenience store, clothing boutique, use retail mode. Sit-down restaurant, café, hotel dining, use restaurant mode. For a food court stall with no table service, retail mode is simpler and faster. You can switch between modes, but set the right one from day one. Changing mid-operation creates confusion for your team.

How to Set Up Odoo POS for Retail Stores in Thailand

Products, Barcodes & Categories

Start at Point of Sale → Configuration → Settings → enable your POS.

Then go to Products and make sure every item has a barcode assigned. Odoo reads standard EAN-13 barcodes, the same ones on most Thai retail packaging. Organize products into categories. Clothing on one screen, accessories on another. Fewer taps per transaction means faster checkout, especially during peak hours.

Cashier Roles & PIN Access

Go to Configuration → Settings → Employee Login.

Enable PIN-based access so each cashier logs in with their own code. This tracks who processed which transaction, useful for accountability and shift reports. Manager override PIN is separate. Set it so only managers can apply discounts above a set percentage or process refunds.

Thai Tax Invoice & Receipt Format

This is where most Thai retail setups miss something. Go to Configuration → Settings → Bills & Receipts. Enable Tax Invoice. Enter your company Tax ID and Branch Number, 00000 for the head office.

Every receipt that prints after this will carry your Tax ID, branch number, and VAT breakdown, fully compliant with Revenue Department requirements. Don't skip this step. A receipt without your Tax ID is not a valid tax document in Thailand.

How to Set Up Odoo POS for Restaurants in Thailand

Restaurant setup is different from retail, with more moving parts, more staff touchpoints, and more things that can go wrong during a busy Friday night service. Get these three areas right, and your front-of-house runs smoothly from day one.

Floor Plan & Table Management

Go to Configuration → Settings → enable Tables.

Then open Floor Plans and draw your dining area. Add tables, name them, and set their capacity. You can have multiple floors, a ground floor, a rooftop, a private room, each as a separate floor plan. When service starts, staff tap a table to open an order. The table color changes to show it's occupied. Managers see the whole floor at a glance from any device.

Kitchen Display System (KDS)

Enable Kitchen Display at Configuration → Settings → Kitchen Display. Assign product categories to the kitchen; food items go to the kitchen screen, and beverages go to the bar screen.

When a waiter submits an order, it appears instantly on the kitchen display. No printed tickets. No shouting across the pass. The kitchen marks items done, and the waiter's screen updates automatically. For busy restaurants in Bangkok, this alone cuts order errors significantly.

Split Bills & Course Orders

Split billing is under the Order screen: tap Split, select which items go to which customer, and process separate payments. Customers pay for what they ordered, nothing more complicated. Course ordering lets you control when items go to the kitchen. Send starters first, hold mains until the table is ready. Tap Send to Kitchen per course. This keeps your kitchen from firing everything at once and your customers from waiting for cold food.

PromptPay QR Code Setup in Odoo POS

This is the most searched question about the Odoo POS system in Thailand, and most guides answer it for invoicing, not for the POS screen. Here's the POS-specific setup.

Step 1: Go to Point of Sale → Configuration → Payment Methods → create a new payment method → name it "PromptPay" → set type to "Online" → enable QR Code.

Step 2: Link it to your bank account. Go to Accounting → Configuration → Bank Accounts → open your account → set Proxy Type to Tax ID or Phone Number → enter your PromptPay Proxy Value → make sure the city field is filled in, or the QR won't generate.

Step 3: Add PromptPay to your POS session at Configuration → Point of Sale → open your POS → Payment Methods → add PromptPay.

When a customer pays, the cashier selects PromptPay, the QR code appears on screen, the customer scans it with their banking app, and the payment is confirmed. Fast, clean, no cash handling.

Does Odoo POS Work With GrabFood, Foodpanda, & Lineman?

Over 70% of Bangkok restaurants partner with at least two delivery platforms. So this question matters, and almost nobody answers it clearly for Odoo users in Thailand. The direct answer: Odoo doesn't have a native, built-in GrabFood or Foodpanda connector in the standard package. But there are real solutions.

Third-party connectors:

The Odoo App Store has paid modules that connect Odoo to GrabFood and Foodpanda via Odoo third-party connectors. These sync incoming orders directly into your Odoo POS so delivery orders appear alongside dine-in orders. Prices range from ฿1,900 to ฿15,000 per year, depending on the connector.

Custom integration: 

For restaurants with higher volume, a custom Odoo API integration connects your Odoo POS directly to the GrabFood Merchant API. Orders come in automatically. No manual entry. Elevanta has built these integrations for Thai restaurant operators.

Manual flow

Run delivery orders through a separate tablet and manually record them in Odoo at the end of the shift. Not ideal, but an option for low-volume operators who aren't ready to invest in a connector yet.

Odoo POS Pricing in Thailand: How Much Does It Cost?

The POS module itself is included in both the Standard and Enterprise Odoo plans, with no separate POS licence fee.

Cost Component

Estimated Cost (THB)

Notes

Odoo Standard licence

฿950–฿1,100/user/month

All apps included

Odoo Enterprise licence

฿1,300–฿1,430/user/month

Studio + multi-company

POS setup & configuration

฿30,000–฿80,000

One-time

PromptPay + payment gateway

฿15,000–฿50,000

One-time integration

Hardware (tablet, printer, scanner)

฿8,000–฿25,000

Per terminal

GrabFood/Foodpanda connector

฿1,900–฿15,000/year

Third-party module

These are estimated ranges; actual cost depends on your specific setup, number of users, and integrations required. For a confirmed quote tailored to your Odoo business process, contact Elevanta directly.

For a single-location restaurant or retail store starting fresh, budget ฿60,000–฿150,000 all-in for the first year, including setup, integration, and hardware. Multi-branch operations with custom delivery integrations run ฿200,000–฿500,000+, depending on complexity.

Odoo POS vs Other POS Systems in Thailand

Thai businesses compare Odoo against several local and global options. Here's the honest breakdown:

  • Loyverse: great for small cafés and simple retail. But no ERP connection and no accounting. Outgrown the moment inventory needs to talk to your books.

  • Square: works for Western-market businesses. Limited PromptPay support and no Thai tax compliance mean extra manual work every month.

  • Lightspeed:  targets mid-size retail chains but is expensive. Still no Thai localization. Paying more for less local relevance.

  • Wongnai POS: built specifically for Thai restaurants and does it well. But stops there. No inventory ERP, no purchasing, no accounting.

  • Odoo POS: retail and restaurant in one system, connected to inventory, accounting, purchasing, and HR. Honest caveat: requires a proper setup partner. Configured correctly, nothing at this price point comes close.

The honest verdict: if you only need a cash register, Loyverse or Wongnai POS is simpler and cheaper. But if you need your POS connected to inventory, accounting, purchasing, and Odoo HR, Odoo wins. You're not buying a POS. You're buying a system where the POS is one part of a bigger connected operation.

For businesses managing wholesale stock alongside retail, see our detailed guide on Odoo Inventory Management for Wholesale Businesses in Thailand.

Multi-Store & Multi-Branch Management

One Odoo backend manages unlimited POS terminals across unlimited locations. Each branch has its own configuration, products, payment methods, and receipts, but the backend is shared. Head office sees sales from every location in real time. Stock transfers tracked. Reports are broken down by store, cashier, product, and time period.

For retail chains expanding across Thailand, this is what makes Odoo different from standalone POS systems. You don't outgrow it when you open a second or third branch. It scales with you.

Does Odoo POS Work Offline in Thailand?

Yes, and this matters more in Thailand than most guides acknowledge. Internet drops. Power cuts happen. WiFi routers restart at the worst possible moment during a Saturday dinner rush. Odoo POS handles this because it caches locally in the browser. When the connection drops, the POS continues to operate. The sales process is normal. Receipts print.

When the internet returns, everything syncs automatically to the Odoo server. No lost transactions. No gaps in the sales report. The one thing to know: the offline session stays open on the same device. Don't close the browser tab during an outage, as that clears the local cache. Keep the tab open, keep selling, let it sync when the connection comes back.

Hardware You Need for Odoo POS in Thailand

Odoo POS runs on any browser, which means hardware flexibility that most POS systems don't offer.

Recommended setup per terminal:

  • Tablet or PC: Android tablet (฿3,000, ฿8,000) or Windows laptop. iPad works too, but costs more.

  • Thermal receipt printer: Choose a model with humidity resistance. The Thai climate is hard on electronics. Epson TM-T82X is reliable and widely available in Thailand. Cost: ฿3,000, ฿6,000.

  • Barcode scanner: USB or Bluetooth. Any standard scanner works with Odoo. Cost: ฿500, ฿2,000.

  • Cash drawer: Connects to the receipt printer. Cost: ฿1,500, ฿3,500.

  • NFC/contactless terminal: for businesses accepting contactless cards alongside PromptPay. Cost: ฿3,000, ฿8,000.

  • Total hardware per terminal: ฿8,000, ฿25,000 depending on quality and whether you need NFC.

How Elevanta Helps Thai Businesses Set Up Odoo POS

Most Odoo POS system problems in Thailand don't happen on launch day; they happen in the setup that came before it. Wrong payment method. Missing tax invoice settings. PromptPay QR that generates but never reconciles with the bank. A GrabFood connector nobody had tested until a real order came through.

Elevanta is an Official Odoo Ready Partner based in Thailand.  We handle the full stack, PromptPay and payment gateway integration, Thai tax invoice compliance, Shopee and Lazada sync, and multi-branch configuration for retail chains across Thailand. Everything is tested before your first customer walks in, not after.

Planning to sync your Shopee and Lazada orders with your POS? Read our full guide on How to Connect Shopee & Lazada with Odoo ERP in Thailand.

Conclusion

The Odoo POS system in Thailand isn't just a billing tool. It's the front end of a connected business, inventory, accounting, delivery integrations, multi-branch reporting, and Thai compliance all running from one system. Retail stores in Bangkok, restaurants in Si Racha, chains expanding across Chonburi- the setup is the same. Get the foundation right, and the POS grows with your business.

If you want Odoo POS configured correctly from day one, PromptPay working, tax invoices compliant, and your team trained before the first shift, Elevanta is ready. Book your free consultation today.

FAQs

Q1. Does Odoo POS support PromptPay in Thailand?

Yes, Odoo POS has native PromptPay QR code support. Set it up under Payment Methods in your POS configuration. Customers scan the QR code from the POS screen, and payment is confirmed instantly.

Q2. Can Odoo POS integrate with GrabFood and Foodpanda in Thailand?

Not natively, but third-party connectors and custom API integrations are available. Paid App Store modules sync GrabFood and Foodpanda orders directly into Odoo POS.

Q3. Does Odoo POS work offline?

Yes. Odoo POS caches locally in the browser during internet outages. Transactions process normally and sync automatically when the connection returns. Don't close the browser tab during an outage.

Q4. Is Odoo POS suitable for restaurants with table service in Thailand?

Yes, restaurant mode includes floor plan management, kitchen display system, course ordering, and split billing. It's built for sit-down service, not just fast checkout.

Q5. How much does Odoo POS cost in Thailand?

The POS module is included in Odoo Standard (~฿950/user/month) and Enterprise (~฿1,430/user/month). Setup, integration, and hardware add ฿60,000 and ฿150,000 for a single location in the first year.

What Is an ERP System: A Complete Guide for Small and Medium Businesses in Thailand