Shopify runs the shop front; Odoo runs the business behind it. Connecting them properly is what turns a store into an operation, because an online order can then be picked, shipped, invoiced and accounted for without anyone typing it in twice. Here is how the integration works and what to watch for.
What syncs, and in which direction
Odoo to Shopify:
- Products, variants, descriptions, images and prices (or Shopify can own the content while Odoo owns stock and price).
- Stock levels, so the store never sells what you do not have.
- Fulfilment status and tracking numbers, so the customer gets a shipping email.
Shopify to Odoo:
- Orders, with line items, discounts, delivery charges and tax.
- Customers, matched to existing records where possible.
- Payments and refunds, for reconciliation.
The rule of thumb is that Odoo owns stock and fulfilment, Shopify owns the shopping experience, and orders flow one way. Deciding who owns product content (descriptions and images) is a choice; many businesses keep it in Shopify because the merchandising tools are better there.
What happens to an order
- A customer buys on Shopify. The order arrives in Odoo within minutes.
- Odoo creates the sales order, reserves stock and generates a picking for the warehouse.
- The warehouse picks and packs, prints a courier label (see courier integration), and validates the delivery.
- Odoo tells Shopify the order is fulfilled with the tracking number. Shopify emails the customer.
- Odoo raises the invoice and, when the Shopify payout arrives, reconciles it against the orders it covers, net of Shopify's fees.
The awkward cases to plan for
- Refunds and returns. Full and partial refunds must create credit notes and, where goods come back, stock movements.
- Partial fulfilment. An order shipped in two parcels needs two fulfilments sent to Shopify.
- Discounts and gift cards. Discount codes, automatic discounts and gift card payments need correct mapping so revenue and VAT are right.
- Multiple locations. If you ship from more than one warehouse, Shopify locations must map to Odoo warehouses.
- Taxes. UK VAT, exports and any overseas registrations. Get your accountant to check the mapping before launch.
- Payouts and fees. Shopify pays out in batches net of fees. Reconciliation must handle this or your bank will never match.
None of these are difficult individually; problems come from not thinking about them until they happen.
Native connector or custom?
Odoo offers a Shopify connector that covers the standard flows and suits most stores. Custom integration is used when the mapping is unusual, for example complex bundles, bespoke pricing, or when Shopify is one of several channels feeding one Odoo stock pool. We explain the general trade-off in Zapier vs custom integration, and the same logic applies here.
Timeline
A standard connector setup with testing takes a couple of weeks alongside an Odoo implementation. Custom integration with edge cases takes longer. Either way, test with real orders in a Shopify test store before going live, including a refund, a partial shipment and an export order.
If you also use Xero
Some businesses run Shopify, Odoo for operations and Xero for accounts. That works, but three systems means two integrations. Our guide to Xero and Shopify integration covers the accounts side.
If you want this set up properly, it is a core part of both our ERP and eCommerce work. Read about our integrations service or request a quote.
Key takeaways
- A Shopify to Odoo integration syncs products and stock from Odoo to Shopify, and orders and customers from Shopify to Odoo.
- Done well, an online order is picked, delivered, invoiced and accounted for with no retyping.
- The awkward parts are refunds, partial fulfilment, discounts, gift cards and multiple locations. Plan for them.
- Odoo has a native Shopify connector; custom integration is used when the standard mapping does not fit.
Frequently asked questions
Need help with ecommerce development?
eSolution Hub is a UK company with its own engineering team in Lahore. Every project starts with a free 30 minute discovery call and a written quote. Read about our ecommerce development service or request a quote.
Request a quote