Odoo Omnichannel Retail: Link Webshop, POS and Stock in Odoo 19/20
Odoo omnichannel retail for Odoo 19 and 20: link webshop, POS and warehouse stock in one database, set up click and collect, and follow our checklist.
Most omnichannel articles list Odoo apps and stop there. A retailer needs to know how stock, prices and orders actually flow between the webshop, the tills and the warehouse. Our Odoo eCommerce development services start with that flow, not with a theme.
This guide is for retail owners and eCommerce leads running a webshop and stores on Odoo 19 or 20. If you also sell on Shopify or marketplaces, see our guide to Odoo eCommerce integration with Shopify, WooCommerce and marketplaces covers those connectors.
What is Odoo omnichannel retail?
Odoo omnichannel retail means running your webshop, stores and warehouse on one Odoo database, so every channel sees the same products, stock, prices and customers. There is no middleware copying data from one system to another.
In a typical setup, the Odoo Website and eCommerce apps run the online store, Point of Sale runs the tills, Inventory holds the warehouses and stock moves, and Accounting books every sale. A customer created at the till is the same contact who logs in to the webshop.
With separate tools, the webshop, POS and ERP each keep their own stock count and a sync job tries to keep them equal. In Odoo, there is one count per location.
Which Odoo apps do you need for omnichannel retail?
A working Odoo omnichannel retail setup needs five core apps, plus a few optional ones for loyalty, barcode work and shipping. Each app has a clear job.
| Odoo app | Job in omnichannel retail | Notes |
|---|---|---|
| Website and eCommerce | Online catalog, cart, checkout, customer portal | Community and Enterprise |
| Point of Sale | Store tills, cash control, receipts, store pickups | Community and Enterprise |
| Inventory | Warehouses, locations, routes, transfers, replenishment | Required for multi-store stock |
| Sales | Quotations and orders that POS can load and settle | Links web, phone and store orders |
| Accounting | Invoices, POS session entries, payments | One ledger for all channels |
| Barcode (optional) | Scanning for receipts, picking and counts | Enterprise only |
Loyalty programs, gift cards and discount codes are part of Sales, eCommerce and POS. Our Odoo app selector helps when you are unsure which apps a store needs.
How does Odoo keep webshop and POS stock in sync?
Odoo does not sync webshop and POS stock: both read the same on-hand quantity in the same database. A store sale and a web order both reduce stock in the warehouse they are linked to.
Three settings decide what each channel sees:
- Website warehouse: in Website settings, Inventory Defaults lets you pick the warehouse the webshop sells from, choose whether to keep selling when out of stock, and show available quantity.
- Available quantity: Odoo shows the on-hand quantity minus what is already reserved for outgoing transfers, so a picked order is not sold twice.
- POS warehouse: each point of sale works from a store warehouse, and staff can long press a product to see on-hand and forecast stock, including warehouse information.
On the Odoo forum, a retailer with one central warehouse and nine store warehouses wanted the online shop to check only the central location. In older versions, that took customization.
Current versions handle this with a default webshop warehouse. Design the warehouse model first. Our Odoo warehouse management guide for Odoo 19 and 20 explains routes and locations in depth.
Native Odoo omnichannel vs a connector-based setup

Native Odoo channels share one database, while connector-based setups copy data between Odoo and outside platforms on a schedule. The table shows where each approach stands.
| Factor | Native Odoo (Website + POS + Inventory) | Connector to Shopify, WooCommerce or marketplaces |
|---|---|---|
| Stock accuracy | One count per location, no sync | Depends on sync interval and API limits |
| Prices and promotions | Shared pricelists and loyalty programs | Mapped per platform, often duplicated |
| Customers | One contact across web and store | Matched by email or ID, duplicates possible |
| Orders | Native sales orders and POS orders | Imported orders, field mapping needed |
| Upgrade risk | Standard Odoo upgrade path | Connector must be retested on each upgrade |
| Best fit | Retailers happy to run the webshop on Odoo | Brands committed to another storefront |
Many retailers mix both: Odoo for the webshop and stores, plus a marketplace connector. Keep the native channels as the core and treat outside channels as feeds into the same stock.
How does Odoo click and collect work?
Odoo click and collect is a delivery method of type "Pick up in store" that lets shoppers reserve online and collect from a store warehouse. Odoo's Click & Collect documentation sets it up in five steps:
- Go to Website, then Configuration, then Settings, and enable Click & Collect in the eCommerce section.
- Open Configure Pickup Locations and check the provider is set to Pick up in store.
- In the Stores tab, add each warehouse where customers can collect.
- Give every store warehouse a complete address; incomplete addresses are not shown to shoppers.
- Publish the delivery method so it appears at checkout.
Shoppers cannot choose a store where the product is out of stock unless Continue Selling is on. With Show Available Qty enabled, the product page shows stock per store. Pay on Site is enabled by default when Click & Collect is turned on, so customers can pay at pickup.
One limit matters for groups. The Odoo 20 docs say the warehouse company must match the website company. Odoo 20 release notes add pickup points from other companies through intercompany flows, so test this on your own database before you promise it.
What changed for Odoo omnichannel in Odoo 20?
Odoo 20 adds several features that help omnichannel retailers, but it also changes POS accounting, so plan the upgrade carefully. These are the changes we check first, taken from our Odoo 20 eCommerce release notes and POS notes.
- Stock-based product publishing: products unpublish themselves when out of stock and come back when stock returns.
- Return management: customers can request returns from the portal for delivered orders.
- Preferred delivery date: shoppers can pick a delivery day, which also helps pickup scheduling.
- Multiple currencies at the till: a POS payment method can accept several currencies.
- Simplified inventory: eCommerce and POS can run without the Inventory app, with one on-hand quantity per product.
- Suggested min and max: reordering rules can suggest stock levels from demand history.
Simplified inventory suits a single small shop; it has no warehouses or transfers, so multi-store retailers still need Inventory.
The biggest change is POS accounting. Our Odoo 20 Point of Sale release notes explain that sessions now post one global sale, with payment entries generated on a schedule. Custom reports that read old session entries need review.
Choosing a version? See Odoo 19 vs Odoo 20 for new or running projects covers the trade-offs.
How do prices, loyalty and customers work across channels?
Odoo uses the same pricelists, loyalty programs and customer records in the webshop and at the till, so a promotion can run everywhere or in one channel only. You decide per program.
Odoo's loyalty and discount programs have an Available On setting for Sales, eCommerce and Point of Sale. You can limit a program to one website or to selected points of sale.
Pricelists work the same way. In the POS, turn on Flexible Pricelists to offer several price lists at the till. In Odoo 20, the webshop pricelist selector sits in the header and footer, so visitors can switch currency or price list from any page.
Gift cards and eWallets are loyalty program types too, so they can work in both channels. Agree the rules with finance first.
How do you design Odoo multi warehouse for stores and the webshop?
Give each store its own warehouse, keep a central warehouse for web fulfilment, and connect them with replenishment routes. This Odoo multi warehouse model keeps store stock and web stock visible and separate.
A common design for a retailer with one distribution center and several stores looks like this:
- Central warehouse: default warehouse for the webshop and source for store replenishment.
- Store warehouses: one per shop, each linked to its POS and listed as a Click & Collect store.
- Resupply routes: stores resupply from the central warehouse, driven by reordering rules.
- Ship later: a POS sale can be delivered later from a chosen warehouse.
The Odoo ship later option sits in POS settings under Inventory. Per Odoo's POS shop features docs, you choose the warehouse, an optional route and a shipping policy. At payment, the cashier picks Ship Later and Odoo creates the delivery order.
POS can also load quotations and sales orders from the Sales app and settle them in full or with a down payment.
Odoo omnichannel retail setup checklist
Follow this omnichannel retail setup checklist in order: decisions first, configuration second, testing last. Skipping the early steps is the most common reason a go-live slips.
- Map channels: list webshop, stores, phone orders, B2B portal and any outside channel.
- Design warehouses: central, store and returns locations, with addresses for pickup.
- Clean products: one SKU, barcode and variant structure for every channel.
- Set pricing: base pricelist, store pricelists, currency and tax display rules.
- Define fulfilment: which warehouse ships web orders, which stores offer click and collect, and the ship later policy.
- Configure loyalty: decide which programs, gift cards and codes run in which channel.
- Set accounting: journals for web and POS sales, payment methods and session closing rules.
- Load data: customers, opening stock per location and open orders.
- Test end to end: buy online, collect in store, return at the till, and check stock and ledger.
- Train and launch: store staff, web team and warehouse, then one pilot store before the rest.
For a quick budget and timeline from your answers, use our free Odoo project estimate tool.
Which retail sectors benefit most from Odoo omnichannel?
Odoo omnichannel fits any retailer with stock in more than one place, but the setup focus changes by sector. The table shows the pain point we see most and how Odoo handles it.
| Industry | Pain or cost driver | Odoo approach | How iVentureTeam helps |
|---|---|---|---|
| Fashion and apparel | Size and color variants across stores | Variants, store warehouses, portal returns | Variant model and returns flow |
| Grocery and specialty food | Expiry dates and fast stock turns | Lots with expiry, POS expired-lot warning | Lot setup and replenishment rules |
| Electronics | Serial numbers and warranties | Serial tracking in POS and web orders | Serial flows and repair links |
| Furniture and home | Bulky goods sold in store | POS ship later, preferred delivery date | Delivery routes and scheduling |
| Health and beauty | Loyalty-driven repeat sales | Shared loyalty and eWallet programs | Program design across channels |
| Wholesale with retail outlets | B2B and B2C prices on one catalog | Pricelists, minimum quantities, restricted packagings | Pricelist and website rules |
See more on our Odoo ERP for retail page.
How much does an Odoo omnichannel setup cost?
An Odoo omnichannel project costs licenses plus implementation, and the implementation usually costs more in year one. Use these figures as a starting point, not a quote.
On the Odoo pricing page, US prices billed yearly are US$31.10 per user a month for Standard and US$61.00 for Custom, with first-year discounts for new customers. Choose Custom if you need several companies, Studio, the external API or Odoo.sh.
Our published Odoo implementation ranges are US$3k to US$9k for small projects (4 to 8 weeks), US$9k to US$27k for mid-size (8 to 14 weeks) and US$27k to US$150k+ for large ones (12 to 24 weeks). Data migration adds US$1.2k to US$9k depending on the source system and years of history.
Cost drivers in retail are the number of stores, variant complexity, custom webshop design, POS hardware and any outside channels. Our Odoo POS implementation guide covers hardware and till rollout in detail.
How iVentureTeam helps with Odoo omnichannel retail

iVentureTeam designs and builds Odoo omnichannel retail setups where the webshop, stores and warehouse run on one database. We have delivered 150+ ERP projects across 35+ countries with 40+ Odoo specialists over 13+ years.
- Channel and warehouse design: a stock and fulfilment model before any configuration.
- Webshop build: catalog, checkout, click and collect and portal returns on Odoo eCommerce.
- Store rollout: POS setup, hardware, cash control and staff training, store by store.
- Data and go-live: product, customer and opening stock migration, plus end-to-end testing.
- Full projects: our Odoo implementation services cover the whole rollout, from discovery to support.
Odoo omnichannel retail case study: BeRobin
A Dutch eCommerce retailer moved product imports, customer credits and warehouse scanning into Odoo, with eCommerce and Inventory working on the same data. BeRobin BV is based in the Netherlands, and the project took 14 weeks.
BeRobin's catalog was growing faster than its processes. Every new product meant a manual pull from external GS1 databases, promotions ran without a system for credits or referrals, and the storefront broke on mobile and tablet.
We automated GS1 product imports into Odoo, built referral, loyalty and store credit programs, and added mobile barcode scanning for warehouse staff. We also reworked the cart, product page, sorting and checkout, and built a multi-vendor pricelist module.
BeRobin's operations manager said: "Orders come in from the webshop and go out the door without anyone retyping product data." Read the BeRobin Odoo eCommerce and GS1 automation case study.
The bottom line on Odoo omnichannel
If your webshop and stores can both run on Odoo, native Odoo omnichannel gives you one stock count, one customer list and one ledger without sync jobs. The hard part is design, not software.
Decide your warehouse model, pricing rules and fulfilment options first. Then configure, test a full buy, collect and return cycle, and launch with one pilot store. Odoo 20 adds useful features, but check its POS accounting change before you upgrade.
Ready to run your webshop and stores on one Odoo database?

Get a channel and warehouse design from a team that has built Odoo retail setups. Plan your Odoo omnichannel rollout with us, call +91-90235-15208, or email business@iventureteam.com.
Frequently Asked Questions
Does Odoo support omnichannel retail?
+
Yes. Odoo's Website, eCommerce, Point of Sale and Inventory apps share one database, so stock, prices, loyalty programs and customers are the same in every channel. Outside channels such as Shopify need a connector.
Does Odoo POS sync with Odoo eCommerce?
+
There is nothing to sync. POS and eCommerce read the same products and stock in one database. Each channel is linked to a warehouse, and sales in either channel reduce stock in that warehouse.
How do I set up click and collect in Odoo?
+
Enable Click & Collect in Website settings, set the delivery method provider to Pick up in store, add the store warehouses in the Stores tab and publish the method. Each store warehouse needs a complete address.
Can customers pay in store for an online order?
+
Yes. When Click & Collect is enabled, Odoo enables the Pay on Site payment method by default. POS can also load a quotation or sales order and settle it in full or with a down payment.
Can Odoo show stock per store on the website?
+
Yes, for click and collect. With Show Available Qty enabled, the pickup location selector on the product page shows the quantity available in each store warehouse.
Do I need the Inventory app for Odoo omnichannel?
+
For more than one location, yes. Odoo 20 lets POS and eCommerce run without Inventory using one on-hand quantity per product, but that mode has no warehouses or transfers, so it suits only a single small shop.
Can loyalty points be used online and in store?
+
Yes. Odoo loyalty programs have an Available On setting for Sales, eCommerce and Point of Sale. You can limit a program to certain websites or points of sale, or leave the fields blank to use it everywhere.
Which Odoo plan do I need for omnichannel?
+
Standard covers Website, eCommerce, POS and Inventory for one company. Choose Custom, at US$61.00 per user a month billed yearly in the US, if you need multi-company, Studio, the external API or Odoo.sh.
How long does an Odoo omnichannel implementation take?
+
Our published ranges are 4 to 8 weeks for small projects, 8 to 14 weeks for mid-size and 12 to 24 weeks for large ones. Number of stores, variants, custom design and outside channels drive the timeline.
Ready to put this into action?
Talk to iVentureTeam about Odoo, AI automation, or custom development — get a free, no-obligation consultation.
Free Odoo tools
All tools- Odoo Health CheckVersion, modules, findings and upgrade cost
- Odoo App SelectorWhich apps you need, by industry
- Odoo Project EstimateIndicative cost and timeline in minutes
- Odoo Implementation Cost CalculatorImplementation cost and timeline, in minutes
- Odoo Migration Cost CalculatorVersion jump or legacy ERP, priced in minutes
Continue reading
Best Odoo eCommerce Theme for Odoo 19 and 20: Choose, Customize, Cost
Best Odoo eCommerce theme for Odoo 19 and 20: built-in vs Apps Store vs custom themes, hosting limits, upgrade risks and what a custom Odoo theme costs.
Odoo Sales Order Approval: Thresholds, Studio Rules and Audit Trail
Odoo sales order approval for Odoo 19 and 20: Studio approval rules on Confirm, amount thresholds, purchase approval, custom modules and audit trail.
Odoo Raw Material Shortage: Reorder Rules, Safety Stock, MRP Alerts
Prevent raw material shortages in Odoo 19 and 20 with reordering rules, safety stock, real supplier lead times, the MPS and MRP shortage alerts, step by step.
