Odoo 19 vs Shopify
Shopify is remarkably good at selling online. But a store is not a business. Behind the checkout, you still have purchasing, actual inventory, accounting, French-compliant invoicing and customer service. Odoo 19 covers the whole chain, store included.
Why merchants supplement or replace Shopify
Three walls you hit as you grow.
A commission on every sale
Shopify charges transaction fees if you don't use Shopify Payments: 2% on the Basic plan, 1% on Grow, 0.6% on Advanced. Card fees come on top of that. As revenue grows, this line becomes the single biggest cost of your software.
Apps that add up
Out of the box, the store doesn't handle purchasing, accounting, B2B quotes or after-sales service. Each gap is filled with a paid monthly app. A mature store often runs about ten of them, and each one is one more point of failure.
French compliance
Shopify doesn't issue invoices that comply with French law, and it doesn't keep your books. With France's e-invoicing reform, you will need a business management system behind it anyway. The question is no longer whether you need one, but which one.
The technical verdict
A visual comparison of out-of-the-box capabilities, with no custom development or third-party modules.
Consumer e-commerce
Checkout flow
B2B sales
Inventory and logistics
Purchasing and suppliers
Accounting and compliance
In-store point of sale
Customer relationship and after-sales
Marketing and customer acquisition
Openness and data control
1. Consumer e-commerce
Shopify's home turf. Let's say it plainly.
| Feature | Shopify | Odoo 19 |
|---|---|---|
| Building the storeThemes, blocks, quick launch | Excellent, very rich theme ecosystem | Built-in website builder, fewer third-party themes |
| Optimized checkoutThis is where conversion is won or lost | The industry benchmark, accelerated checkout | Effective, but less finely tuned |
| One-click paymentCustomers don't have to re-enter anything | Shop Pay, very effective | Customer accounts and saved cards |
| Product variantsSizes, colors, materials | Three options per product at most, 2,048 variants | Unlimited attributes, product configurator |
| Promo codes and loyaltyDrive store activity | Built-in promotions, loyalty through an app | Promotions and loyalty cards included |
| Abandoned cartsRecover lost sales | Built-in reminders | Built-in reminders since version 19 |
| SEOGet found without paying for it | Good, fixed URL structure | Full control over URLs and meta tags |
| Selling on marketplacesAmazon, Google Shopping | Built-in sales channels | Amazon connector, Google Merchant Center |
| Selling internationallyCurrencies, languages, taxes | Shopify Markets, advanced options on Plus | Multi-currency, multi-language, country-specific taxes |
2. B2B sales
This is where many merchants hit the limit.
| Feature | Shopify | Odoo 19 |
|---|---|---|
| Negotiated quotesThe customer asks for a price before buying | Draft orders with negotiated prices, but no quote requests from the customer, no revisions and no signature | Quotes, follow-ups, signature, conversion into an order |
| Customer-specific catalogsEXTRA COSTEach customer sees their own products and prices | At most 3 catalogs on plans below Plus, assigned by market, not by customer; assigning one to a company is reserved for Plus, from €2,100/month | Customer pricelists, with no limit on how many |
| Volume pricingThe more you buy, the less you pay | Available for B2B | Quantity-based pricing rules |
| Payment termsInvoice due 30 days end of month | B2B payment options, with no accounting tracking | Payment terms and overdue invoice follow-up |
| Customer credit and order holdsDon't deliver to a customer who has stopped paying | Not available | Credit limits and warnings |
| Blanket and recurring ordersFramework agreements, subscriptions | Through a third-party app | Built-in subscriptions |
| Sales reps and commissionsA sales force behind the store | Not available | CRM, teams, commission plans |
3. Inventory, warehouse and shipping
A store manages quantities. A business manages logistics.
| Feature | Shopify | Odoo 19 |
|---|---|---|
| Quantity trackingThe basic counter | Fine for a simple operation | Real-time, forecasted and reserved stock |
| Warehouse locationsKnow where each item physically sits | Simple locations, a single bin per variant and per location, created by file import | Hierarchical locations and directed putaway |
| Barcode pickingPaperless, error-free picking | Through a third-party app | Built-in Barcode app |
| Lot and serial number traceabilityProduct recalls, warranty, use-by dates | Not available | Full upstream and downstream traceability |
| Cycle countsCount stock without closing shop | Manual adjustments | Cycle counts by location |
| Packages and packagingPallets, boxes, nested packages | Not available | Nested packages since version 19 |
| Inventory valuationWhat your stock is worth on the balance sheet | Inventory value report, but no configurable costing method and no journal entries | FIFO, average cost, automatic journal entries |
| Direct shipping from suppliersThe supplier ships to your customer | Through a third-party app | Built-in dropshipping |
4. Purchasing and suppliers
Shopify closed part of the gap in 2026. The rest of the chain is still missing.
| Feature | Shopify | Odoo 19 |
|---|---|---|
| Purchase ordersStructure what you buy | Built-in purchase orders and receipts, but no requests for quotation, no vendor price history and no vendor bills | Requests for quotation, orders, receipts, three-way matching |
| Automatic replenishmentReorder before you run out | Not available | Reordering rules, planning horizon, forecasts |
| Purchase prices and supplier discountsTrack your actual cost | Not available | Vendor pricelists and history |
| Receiving and quality controlCheck what comes in | Not available | Receipts and quality checks |
| Vendor billsMatch the order, the receipt and the bill | Not available | Three-way matching |
| Actual margin per productSale price minus actual purchase cost | Cost entered by hand | Calculated from the actual purchase cost |
5. Accounting and French compliance
In France, this is the section that settles it.
| Feature | Shopify | Odoo 19 |
|---|---|---|
| Invoices compliant with French lawMandatory details and continuous numbering | VAT invoices for EU orders, but no guaranteed sequential numbering, no credit notes, and not sent automatically | Compliant invoicing |
| E-invoicing 2026Structured format and approved platform (PA) | Out of scope | Odoo has been an approved platform (PA) with the DGFiP, the French tax authority, since April 2026 |
| Chart of accounts and journal entriesThe accounting itself | Out of scope | Full French accounting |
| VAT returnIncluding intra-EU sales | Tax calculation, no return | CA3 (French VAT return) generated and ready to file online |
| Bank reconciliationMatch incoming payments | Out of scope | Bank synchronization |
| Accounting entries fileThe FEC (French audit file) for tax audits | Out of scope | Built-in export |
| Access for your accounting firmYour accountant works directly in the software | Exports that need reworking | Dedicated access |
6. Physical stores and omnichannel
When the online store meets the physical store.
| Feature | Shopify | Odoo 19 |
|---|---|---|
| Touchscreen registerEXTRA COSTTake payments in store | Shopify POS Pro at €79/month per location | Point of Sale included, no cost per store |
| Shared stock for online and in-storeOne inventory, two channels | Built-in | Built-in, with locations |
| In-store pickupOrder online, pick up in store | Built-in | Built-in since version 18 |
| Offline modeTake payments even without internet | Limited | Register works offline |
| Loyalty across channelsPoints count everywhere | Through an app | One program across the online store, the website and the register |
| Invoice from the registerA business customer asks for an invoice | Receipt, invoice through an app | Compliant invoice on the spot |
7. Customer relationship and after-sales
Selling is one thing. Keeping the customer is another.
| Feature | Shopify | Odoo 19 |
|---|---|---|
| Unified customer recordThe full history in one place | Orders only | Quotes, orders, invoices, tickets, conversations |
| Structured after-sales serviceTickets, priorities, response-time commitments | Shopify Inbox for conversations, but no tickets, no priorities and no response-time commitments | Helpdesk with SLAs included |
| Returns and credit notesHandle a return properly | Built-in returns, no accounting credit note | Return, credit note and journal entry |
| Warranties and repairsFollow a product after the sale | Not available | Repairs and maintenance |
| Email and automationKeep your customer base engaged | Shopify Email, limited | Email marketing and automated workflows |
| ChatbotAnswer your visitors | Through an app | Live chat included |
| Satisfaction surveysMeasure perceived quality | Through an app | Surveys included |
| Prospecting and sales pipelineTrack a deal before the sale | Built-in customer records and segments, but no leads, no opportunities and no pipeline | Full CRM with pipeline and forecasting |
8. Marketing and customer acquisition
Shopify has good tools to engage shoppers. They often stop at the storefront.
| Feature | Shopify | Odoo 19 |
|---|---|---|
| Email campaignsTalk to your audience | Shopify Messaging, 10,000 free emails per month, then $1 per 1,000 | Email marketing included, no imposed sending limit |
| Automated workflowsOne action triggers the next | Shopify Flow from Basic up, but focused on store events | Workflows across the whole business: sales, inventory, accounting |
| Customer segmentationTarget precisely | Segments based on purchase behavior | Segmentation on all your data, including invoices and tickets |
| Landing pages and blogBring in visitors without paying for ads | Basic blog, theme-based pages | Full website, blog, forms and free-form pages |
| Forms and lead captureTurn a visitor into a contact | Through an app | Forms linked directly to the CRM |
| Sales attributionKnow which channel really pays off | Acquisition reports from the Grow plan up | Attribution and analytics, down to actual margin |
| Online advertisingManage paid campaigns | Built-in Meta, Google and TikTok integrations | Ad platform connections, less mature |
| Events and appointmentsSell time or a seat, too | Through an app | Events and appointment booking included |
9. Openness, data and lock-in
The question that matters the day you want to change course.
| Feature | Shopify | Odoo 19 |
|---|---|---|
| Access to the source codeUnderstand and change how it behaves | Closed core; customization limited to the theme, extensions and functions | Open foundation, readable and editable modules |
| Access to your databaseGet all of your data back | Exports by object type, through the interface or the API | Full copy of the PostgreSQL database, ready to download |
| Programming interface (API)Connect the store to your other tools | Rich API, but with rate limits | Full API on every model, no imposed rate limits |
| Custom fields and screensFit the software to your business | Metafields and metaobjects with dedicated screens, but these are content objects, not business data models | Fields, views and screens you can customize without code |
| Business-specific rulesWhat makes your business unique | A private app you have to build and host | Custom development built into the same platform |
| Hosting of your choiceOn your servers, with us, or with the vendor | Shopify only | Odoo.sh, Odoo cloud, or independent hosting |
| Costs that grow with your revenueBUILT-INPaying more because you sell more | Commissions proportional to revenue | Per-user pricing, regardless of sales volume |
10. What it really costs
Let's compare what you actually pay, for a store with €500,000 in annual revenue.
Shopify Advanced plus add-ons
The plan alone, before fees and apps are added.
- Advanced plan at €384/month, 15 staff accounts
- 0.6% transaction fees if you don't use Shopify Payments
- Card fees from 1.1% plus €0.25 per transaction
- Shopify POS Pro at €79/month per store
- Apps for accounting, after-sales service, returns and loyalty
- And still no accounting or purchasing management
Odoo 19 Enterprise
No commission on your revenue.
- eCommerce, Point of Sale and Website included
- Sales, Purchase, Inventory, Accounting, CRM and Helpdesk included
- No percentage taken from your sales
- No extra cost for each additional store
- Bank fees are still those charged by your payment provider
Subscribe through a partner rather than directly
Hors du Commun, an Odoo integrator in Lyon, is an official Odoo partner. Going through us costs you nothing more, and gives you three things a direct subscription doesn't.
A 60-day trial instead of 15
We extend your test database ourselves, so you can put the software through a real monthly cycle, month-end close included, instead of skimming through a demo.
3 to 10% off the license
On average, depending on your commitment. We know what to negotiate, and with whom at Odoo.
A free seat for your accountant
We work with accounting firms that are Odoo partners, or negotiate access for your current firm.
Hors du Commun partner link.
Your questions, answered
What merchants ask us before making the move.
Many of our clients keep Shopify as their storefront and connect Odoo behind it for operations, inventory, purchasing and accounting. That's the setup to favor when the store converts well and the problem lies further down the chain. We connect the two.
Shopify has spent ten years optimizing its buying journey and its theme ecosystem, and Odoo doesn't claim to match it there. On the other hand, an order placed in Odoo triggers the stock movement, the invoice, the journal entry and the follow-up without any connector. The choice depends on where you're losing time.
On €1 million in revenue, 0.6% in transaction fees comes to €6,000 a year, plus card fees and the subscription. Odoo takes nothing from your sales: the bill depends only on the number of users.
With Shopify, customer-specific catalogs are reserved for the Plus plan, starting at €2,100 a month. Odoo handles customer pricelists, negotiated quotes, payment terms and credit limits out of the box, on the same store.
Shopify exports products, variants, customers and orders. The real work is restructuring the variants: Shopify allows only three options per product, which pushes merchants to create separate products where Odoo would use attributes. We check every SKU against the master file.
A Shopify theme uses its own technology and can't be transferred. If your store converts well as it is, that's often the argument for keeping it and migrating only the back office.
Shopify issues order receipts, not invoices that comply with French law. With e-invoicing becoming mandatory, a business management system is essential behind the store, whichever one you use.
Shopify POS Pro is billed at €79 per month per location. Three stores therefore add nearly €2,900 a year. Odoo's Point of Sale is included, however many registers you run.
Apps for invoicing, accounting, returns management, loyalty or customer service cover functions that are included in Odoo. We list your apps and their monthly cost as early as the audit: that's often what tips the balance.
We build the mapping table between old and new URLs and set up permanent redirects before the switchover. It's precise work, but it's familiar ground.
We set up the store on a test database with your real products, you run your own purchase scenarios, and the switchover only happens once you've signed off on those scenarios.
Shopify is a closed service: you rent access to it. Odoo runs on a PostgreSQL database you can get a full copy of, and its foundation is open. You can even host it elsewhere, including with us.
Let's talk about your project
We start by looking at where you're really losing time: in the store, or behind it. Depending on the answer, we'll suggest connecting Shopify to Odoo or bringing everything into one place. The cost of the audit is deducted from the project.
Request an assessment