Odoo POS is the point-of-sale module inside Odoo, the open-source ERP used by more than twelve million people worldwide. For Australian retailers, it replaces the common stack of Square or Vend plus Xero plus Cin7 with one system that takes payment at the till, prints a compliant GST tax invoice, decrements stock across stores in real time, and posts the sale to the right tax account without a nightly sync. It is built on the same database as Odoo Inventory, Accounting, Purchase and eCommerce, which is the difference that matters when a retailer outgrows a standalone POS.

We are a Perth-based Odoo consultancy. This is what we tell retailers when they ask whether Odoo POS fits, where the Australian rough edges are, and what the all-in cost actually looks like in AUD.

What Odoo POS is and how it fits Australian retail

Odoo POS runs in the browser on any modern device — a Windows till, an iPad, an Android tablet, a Mac mini under the counter. Cashiers open a session, scan or tap products, apply a discount or loyalty code, take payment by card or cash, and the system prints a receipt and updates stock. Each register is a “session” that opens with a starting float and closes with a counted till and a journal entry that posts to Odoo Accounting.

For a small Australian retailer running Square or Lightspeed beside Xero, the appeal is not the POS itself — Square is excellent — it is the absence of the sync. When the same product record drives the till, the warehouse, the online store and the purchase order, you stop reconciling four systems and start running one. That matters more as store count and SKU count climb.

A homewares retailer in Subiaco we worked with had three stores, a Shopify storefront and a small warehouse. They were running Vend at the tills, Cin7 for stock, Shopify for online and Xero for accounting, with four integrations and a bookkeeper who spent half a day a week investigating mismatches. Moving everything into Odoo took eleven weeks and removed two of the four monthly subscriptions; the bookkeeper got that half day back.

Odoo POS features Australian retailers actually use

The product sheet lists dozens of features. In practice, Australian retailers lean on a much smaller set.

Sales, returns and exchanges

The core flow is scan, take payment, print. Returns and exchanges run through the same screen with a positive line for the new item and a negative line for the return, and the system handles the GST adjustment automatically. Refunds to card go back through the payment terminal; refunds in cash come out of the till and show in the session close.

Products, variants and barcodes

Products carry size and colour variants, multiple barcodes (factory and re-tagged), price lists per store or per customer tier, and unit-of-measure conversions for retailers who sell loose. The same product record drives stock, purchasing and the online store, so a price change at head office reaches every till and Shopify at the same time.

Customer accounts, loyalty and gift cards

Customers can be created at the till and linked to an account that tracks lifetime spend, loyalty points, gift card balance and prior receipts. Loyalty rules are configurable — points per dollar, multipliers on a category, threshold rewards. Gift cards are first-class objects with their own ledger, which matters for the ATO treatment of unredeemed balances.

Offline mode

Odoo POS keeps working when the internet drops. Sessions cache locally and re-sync when the connection returns. Payment terminals that need a live link to the bank — most of them — will obviously stop authorising cards during the outage, but the till keeps recording cash and accountable transactions.

Australian payment terminals and EFTPOS integration

This is the question we get first and it is the one most generic Odoo articles dodge.

Odoo integrates with three payment terminal options that matter in Australia:

  • Tyro — direct integration via the Tyro Adapter for Odoo. The terminal sits next to the till on the Tyro network, Odoo sends the amount, the customer taps or inserts, the result returns to the till and the receipt prints. Tyro supports EFTPOS, Visa, Mastercard, American Express and Alipay, with surcharging configurable at the terminal.
  • Linkly (PC-EFTPOS) — the most common path for retailers on CBA, Westpac, NAB or ANZ merchant facilities, because Linkly fronts the bank-supplied terminals. Odoo talks to Linkly, Linkly talks to the bank. This is the route to take if your merchant agreement is with one of the big four and you do not want to switch acquirers.
  • Square — integration is available for retailers already on Square hardware who want Odoo for everything else. Square is usually the cheapest route for a single-store retailer turning under a million a year.

We point retailers to Tyro first when they are buying fresh hardware, because the integration is cleanest and the merchant rates are sharp. If the retailer already has a bank-supplied terminal with a tied contract, Linkly is the realistic option. Either way, the integration removes the manual “key in the amount” step that creates 90% of EFTPOS mismatches.

A note on surcharging: from 2026 the RBA’s surcharging reforms tighten what retailers can pass on, with a ban on debit card surcharges proposed for 2026 implementation. Both Tyro and Linkly let you configure surcharging per card scheme, which Odoo respects on the receipt and the journal entry. Check the current RBA position before you set rates.

GST tax invoice compliance at the point of sale

The ATO has specific requirements for a tax invoice over $82.50 including GST. It must show the words “Tax Invoice”, the seller’s identity and ABN, the date, a brief description of items, the GST amount (or a statement that the total includes GST), and the buyer’s identity and ABN for sales over $1,000.

Odoo POS handles the first five automatically. The receipt template is configurable per register; we set it once during implementation with the ABN, the trading name, the GST tax line and the “Tax Invoice” header. For sales over $1,000 — common in jewellery, electronics, furniture — the cashier prompts for the customer’s ABN and the receipt prints as a compliant tax invoice.

GST itself is handled at the product level. Each product carries a tax code (10% GST, GST-free for fresh food and some health items, input-taxed for residential rent), and the POS calculates the tax line correctly per item. The journal entry posts to the right GST collected account and rolls into the BAS at the end of the period without spreadsheet manipulation.

The trap we see most often is mis-coded GST-free products — a grocer that sells both fresh and packaged food needs the tax code on every product right, and a one-off import of products from an old POS will often blanket-code everything as 10%. We run a GST audit as part of any retail go-live to catch that before the first BAS.

Multi-store, multi-register and franchise reporting

Most articles stop at the single-store walkthrough. Multi-store is where Odoo POS earns its keep.

Stores, registers and sessions

Each physical store is a “POS Configuration” in Odoo with its own assigned warehouse, price list, journal, tax mapping and payment methods. Inside a store, each till is a register that opens its own session. A retailer with three stores and two tills per store runs six concurrent sessions, all writing to the same product, customer and stock database.

Inventory is consumed from the assigned warehouse in real time, so a stock movement at the Subiaco store immediately shows in the Joondalup store’s available-to-sell — useful for staff phoning around to find a size for a customer.

Group reporting and dashboards

Sales by store, by hour, by category, by staff member, by payment method roll into Odoo’s reporting in real time. There is no end-of-day push because every sale is already in the ledger. For multi-entity retailers — a franchisor running 12 sites with separate companies — multi-company in Odoo isolates the financials per entity and rolls up a consolidated view for the group.

Inter-store transfers

Stock transfers between stores run as internal transfers in Odoo Inventory, with barcode scanning at pick and receipt. The receiving store’s available-to-sell updates as soon as the transfer is validated. For franchise operators where the head office sells to franchisees, the same transfer becomes an inter-company sale with an invoice and a payment.

POS hardware that works in Australia

Buy the right hardware once and forget it. Here is what we specify on Australian retail implementations.

  • Receipt printers — Epson TM-m30 or TM-T88 series via USB or Ethernet, both supported out of the box by Odoo POS. Avoid no-name printers; the ESC/POS dialect varies and you will waste a day on a $40 saving.
  • Barcode scanners — Honeywell Voyager or Zebra DS2208, USB-HID mode. The scanner emulates a keyboard, which is how Odoo expects it. Bluetooth scanners work too but introduce pairing headaches; wired is more reliable.
  • Cash drawers — any RJ-11 drawer that triggers off the receipt printer. The printer fires the open pulse on each cash transaction.
  • Customer-facing display — a second screen showing the cart and total to the customer. Odoo POS has a built-in customer display, served as a second browser window on a tablet or small monitor.
  • Payment terminals — Tyro Yoxa or Linkly-fronted bank terminals (CBA Smart Mini, Westpac EFTPOS 1i, NAB Easy Tap, ANZ POS Plus) as described above.
  • Tills — a small Windows PC or a Mac mini for the counter, or a 10-inch Android tablet for mobile registers in markets or pop-ups.

Hardware budget for a single counter, fresh build, is around $1,800 to $2,400 in 2026 AUD excluding the payment terminal, which is supplied by the acquirer.

How Odoo POS connects to inventory and accounting

This is the reason most retailers move to Odoo in the first place.

Every sale at the till writes a stock move that decrements the assigned warehouse and a journal entry that posts revenue, GST collected and cost of goods sold in real time. End-of-session creates a single bank/cash journal entry per payment method, which reconciles against the bank feed (CBA, NAB, ANZ, Westpac, Macquarie, Bankwest are all supported via Yodlee or direct feed in Australia).

Purchasing runs from the same product file: reorder rules per store and per warehouse trigger purchase orders to suppliers, with landed costs (freight, duty, customs) absorbed into the inventory valuation so margin reporting is honest. eCommerce — Odoo’s own or a Shopify integration — sells the same SKU from the same stock, which removes the “we sold it online and in store at the same time” oversell problem.

For deeper warehouse mechanics, see our companion piece on Odoo Inventory for Australian warehouses. For the accounting end of the same ledger and how it pairs with Peppol e-invoicing and Odoo payroll for Australian businesses, those articles cover the detail.

Odoo POS pricing in AUD

Odoo POS is included in the Odoo Standard and Custom plans. There is no per-register surcharge. The licence model is per user, billed in AUD.

In 2026 Australian pricing, the One App Free plan ($0/user/month) gives you POS only on Odoo Online, which works for a sole-trader market stall but breaks the moment you want inventory or accounting. Odoo Standard sits around $37.50 AUD per user per month and includes every module on Odoo Online. Odoo Custom is around $56 AUD per user per month and adds Odoo Studio, multi-company and Odoo.sh hosting with custom modules.

For a three-store retailer with eight users — owner, bookkeeper, store managers, casuals on POS — that is roughly $300 to $450 a month in licence on Standard, or $3,600 to $5,400 a year. Cashier-only users running solely on the POS terminal can sometimes be configured as a single shared POS user, which the Odoo Enterprise vs Community article explains.

Implementation cost is a separate line. For a single-store retailer on standard Odoo, expect $18k to $35k all-in. For a multi-store retailer with inventory migration, Shopify connection and a Tyro integration, expect $45k to $90k. We cover the detail in Odoo implementation cost in Australia.

Where Odoo POS does not fit

Honest answer matters more than sales copy.

Odoo POS is overkill for a single-counter cafe doing $400k a year and using Xero. Square Stand at the counter and Xero in the back office is faster to set up, cheaper to run, and easier to staff. Odoo POS earns its place when the retailer also needs deep inventory, multi-store, purchasing, B2B wholesale alongside retail, or an integrated online store — not when it is just a till.

Restaurant features (floor plans, course timing, kitchen displays) are functional but trail dedicated hospitality POS like Lightspeed Restaurant or Square for Restaurants. Odoo POS can run a small cafe or a takeaway, but a 200-seat venue with a 15-station kitchen is better on a specialist.

High-volume convenience retail — petrol stations, big format grocery — needs scanner throughput and offline behaviour that pure web POS cannot match. There are Odoo deployments in that space but they involve specialist add-ons we would not recommend for a first implementation.

Implementing Odoo POS in Australia

A retail implementation typically runs eight to fourteen weeks. The shape is product file in, GST audit done, hardware specified and ordered, terminals integrated, staff trained, soft launch at one store, cutover at the rest. Our implementation method puts the GST audit and the payment terminal connection in the first phase because both have lead times outside our control.

The Subiaco homewares retailer we mentioned ran the migration over the slow trading window in February. The three stores switched on consecutive Mondays, the Shopify store cut over on the second Sunday night, and the first BAS lodged from the new system three weeks later reconciled to the cent.

If you are evaluating Odoo POS for an Australian retail business — single store or multi-store, with or without eCommerce — talk to us. We will tell you straight whether it fits, what the realistic cost is, and what the right adjacent modules are. Book a conversation and we will spend an hour mapping it to your shape.

Frequently asked.

Can I use Odoo in Australia?

Yes. Odoo ships an Australian localisation pack with the GST chart of accounts, BAS report, ABA bank files, TPAR and native Peppol BIS Billing 3.0 e-invoicing. Odoo POS sits on top of that ledger, so every sale at the till posts to the right GST account in real time. It runs on Odoo Online, Odoo.sh or self-hosted, and is used by Australian retailers across fashion, homewares, hospitality and convenience.

What is the best POS software in Australia?

There is no single best. Square and Lightspeed lead pure single-store retail; Vend (Lightspeed Retail X) and Retail Express suit multi-store fashion and lifestyle; Odoo wins when the retailer also needs inventory, purchasing, eCommerce and accounting in one ledger. The right pick depends on store count, SKU depth, and whether you want POS to plug into an ERP or sit beside Xero.

How to use Odoo for a retail shop?

Install the POS module, load products with GST tax codes, connect a payment terminal (Tyro, Linkly or Square), pair a receipt printer and barcode scanner, and create a register per till. Cashiers open a session, scan items, take payment, and close the session at end of day. Sales, stock movements and GST post automatically to Odoo Accounting.

Which is the best POS software for retail?

For single-store boutique retail, Square or Lightspeed Retail are hard to beat on simplicity. For multi-store retail with deep inventory, purchasing and supplier management, Odoo POS paired with Odoo Inventory is the strongest mid-market option in Australia. The decision usually comes down to whether you want a standalone POS or POS as part of one connected ERP.

What is Odoo Australia?

Odoo is a Belgian open-source ERP used by more than twelve million people worldwide. It is not an Australian company, but it ships a full Australian localisation — GST, BAS, ABA, TPAR, STP and Peppol — and is delivered locally through a partner network. Odoo Australia generally refers to that local partner community and the Australian-specific feature set inside the product.

What is the 200 day rule in Australia?

Not applicable to Odoo POS. The 200 day rule is an immigration test for tax residency, unrelated to retail point-of-sale software. Australian retailers running Odoo POS need to meet ATO requirements for tax invoices, GST reporting on the BAS, record-keeping for at least five years, and Fair Work payroll obligations through STP Phase 2.