Magento 2 Odoo Connector: Orders, Stock, Shipments (Miko)
by Tripster Developers https://tripsterdevelopers.com/odoo/$ 432.23
Magento 2 Odoo Connector: orders, customers, stock and real shipments
Connect a Magento 2 store to Odoo and keep both sides in step, on a schedule. Built on the Magento 2 REST API with an integration access token, and written around how Magento actually models a shop rather than how another platform does.
Downloading the ZIP by hand? Take both: put
miko_ecommerce_core in your addons folder alongside this one, or Odoo reports an unmet dependency.Why this one
Knows a configurable is not sellable
A configurable product is a shell; its simple children carry the SKU, price and stock. Importing the shell is how a connector ends up ordering something with no stock record.
Never doubles an order
Magento sends the configurable parent alongside its simple child, both carrying the same money. Only the sellable line is imported.
SKU-safe
Magento addresses stock by SKU, and SKUs routinely contain slashes and spaces. Every one is URL encoded, every time.
Real shipments, not a status flag
A validated Odoo delivery creates an actual Magento shipment with its tracking number, and the shipment id is kept so it can never ship twice.
Readable error messages
Magento messages carry %1-style placeholders. They are substituted, so you see which SKU failed instead of a sentence with a gap in it.
Safe by default
Order confirmation, invoicing, stock publishing, shipments and the scheduler all start switched off.
What syncs, and which way
| Records | Direction | Notes |
|---|---|---|
| Orders | Magento to Odoo | Line discounts, shipping and per-line tax. Configurable parents skipped so the order is not doubled. |
| Products | Magento to Odoo | Simple, virtual and downloadable — the sellable ones. SKU and stock item id kept. |
| Customers | Magento to Odoo | Matched on exact email; both street lines and the region code carried across |
| Stock levels | Odoo to Magento | Available‑to‑promise or on hand, written by SKU |
| Shipments | Odoo to Magento | A real Magento shipment with its tracking number when the Odoo delivery is validated |
| Taxes | Mapped by you | Anything unmapped stops and asks rather than under‑billing |
How it works
- 1
Create the API credentials in your store
Read and write access to products, customers, orders and inventory. The exact permission list is in Requirements below. - 2
Add the store in Odoo and press Test Connection
It verifies the credentials, names the store back to you, and says exactly what to fix if anything is wrong. - 3
Import, then look at what arrived
Products, then customers, then orders. Nothing is confirmed or invoiced yet: those switches start off on purpose. - 4
Turn on the schedule and the write-back
Once you are happy with what came in, enable the scheduled sync, stock publishing and fulfilment individually.
One store, every setting in one place
Runs on a schedule, or right now
Stock and shipments, back to the store
Never a silent under-billing
When something fails, you are told what to fix
Detailed capabilities
Setup notes
- System, Extensions, Integrations in Magento admin: create it, grant Catalog, Sales and Customers, then Activate it — a token that was never activated returns a 401 and nothing else.
- Optional store view code scopes every call to one storefront.
- Pagination is sorted by entity_id ascending, so a record cannot shift between pages mid-import and be read twice or skipped.
What is not built yet
- Product and customer export (Odoo to Magento) is not implemented, so the direction setting only offers Magento to Odoo. A setting that can be chosen and silently does nothing is worse than one that is not offered.
When something fails
- Failed is transient — a dropped connection, a rate limit, a 502. Retried automatically with exponential backoff.
- Needs attention means something has to change first: a tax with no mapping, a product not in Odoo, a revoked key. Never retried on a timer, because a timer cannot fix it, and each one carries the sentence saying what to do.
- Every job keeps the exact payload that caused it, so a retry replays the failure without asking the store for the data again.
- A Retry button on every job, and a dashboard filtered to what still needs a person.
Requirements
- Odoo 16, 17, 18 or 19, Community or Enterprise.
- The free E‑Commerce Connector Engine (Miko).
- Magento 2 with the REST API reachable over HTTPS, and an integration access token with Catalog, Sales and Customers granted and the integration activated.
- Odoo Online cannot run third-party modules containing Python, so this needs Odoo.sh or a self‑hosted install.
Support
Email support for every version listed above, from the people who wrote it. Every release is certified against real Odoo images before it ships, and the test count is stated on this page rather than implied.
Questions
Why are products import-only?
- Because export is not built yet, and we would rather the setting say so than offer a direction that quietly does nothing.
Does it handle configurable products?
- Yes. The simple children are imported as the sellable products; the configurable shell is skipped, on both the catalogue and the order.
Which Odoo versions are supported?
- Every listed version is certified on each release by installing the module into a real Odoo image of that series and running the full test suite. A version is only listed once it passes.
Does this work on Odoo Online?
- No. Odoo Online cannot run third-party modules containing Python, which is Odoo's rule rather than ours. Odoo.sh and self-hosted installs are fine.
What does support cover?
- Installation problems, defects, and questions about how the module behaves, by email, for the versions listed on this page. Custom development and changes to Odoo core behaviour are separate work.
How do I report a problem?
- Email support@tripsterdevelopers.com with your Odoo version, the module version, and what you did. If a job failed, the job record holds the exact payload and the error, which answers most questions immediately.
Explore our other Odoo apps
E-Commerce Connector Engine
miko_ecommerce_coreShopify Odoo Connector
miko_shopifyWooCommerce Odoo Connector
miko_woocommerceBarcode Validator & Catalog Audit
miko_catalog_healthEmail Validation & Duplicate Contacts
miko_contact_healthMargin Control & Sold Below Cost
miko_margin_healthVendor Price Check & Supplier Audit
miko_supplier_healthMCP Server for AI
miko_mcp_serverSearch the Apps store for the technical name, or open Tripster Developers at the top of this page to see everything we publish.
Questions before you buy?
Email support@tripsterdevelopers.com and a developer who wrote this will answer, usually the same working day (New Zealand time).
Built by Tripster Developers.
Magento is a trademark of Adobe Inc. Odoo is a trademark of Odoo S.A. This module is not affiliated with, endorsed by, or sponsored by either company; the names and logos are used only to say what it connects.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Invoicing (account) • Sales (sale_management) • Discuss (mail) |
| Community Apps Dependencies | Show |
| Lines of code | 1755 |
| Technical Name |
miko_magento |
| License | OPL-1 |
| Website | https://tripsterdevelopers.com/odoo/ |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module