May 25, 2026 · 8 min read
Open-source ecommerce order management system
A plain-English guide to the ecommerce order management system, the case for a self-hosted open-source OMS, and where OpenLinker honestly is today.
If you sell on more than one channel, sooner or later someone says the words “order management system” and everyone nods like they know what it means. We’ve been on both sides of that conversation. So before we tell you where we’re trying to take OpenLinker, let’s be plain about what an ecommerce OMS actually is — and why we think the best version of one is open source and self-hosted.
A quick honesty note up front: OpenLinker is not a finished OMS today. It’s alpha. An open-source ecommerce OMS is the goal we’re building toward, not a box we’ve already ticked. We’ll get to exactly where we are further down. (If you haven’t read it yet, why we built OpenLinker is the better place to start.)
What an ecommerce order management system actually does
An ecommerce order management system is the layer that sits between where your orders come from and everything that has to happen after. Orders arrive from a storefront, from marketplaces, sometimes from a phone call — and the OMS is the single place that tracks each one through its whole order lifecycle: captured, paid, allocated against stock, picked, shipped, invoiced, sometimes returned.
The crucial word is single. The reason multichannel order management is hard isn’t any one of those steps — it’s that you’re doing all of them across several systems that don’t agree with each other. The OMS is the source of truth that makes them agree. In practice that means a few concrete jobs:
- Order ingestion — pulling every order in from every channel, reliably, without duplicates and without dropping any.
- Multichannel inventory sync — when something sells on one channel, every other channel’s available stock goes down too, so you don’t oversell.
- Fulfillment and shipping — turning an order into a labeled, tracked parcel.
- Invoicing — issuing the document the order needs, in the format the market expects.
- A shared status vocabulary — so “shipped” means the same thing everywhere.
A SaaS channel manager does a slice of this — mostly the listing and order-routing part. An OMS is the broader idea: orchestrating the order’s whole life, not just moving it between a shop and a marketplace. The two overlap, but they aren’t synonyms, and conflating them is how merchants end up surprised by what their tool doesn’t do.
Why every multichannel merchant eventually needs one
On one channel you don’t need an OMS. You need it the moment you’re on two, because that’s when the spreadsheets start.
It usually goes like this. A shop does well on its own storefront, opens an Allegro account, and for a while someone copies orders across by hand and updates stock by memory. Then a product oversells because two channels both thought it had inventory. Then a customer asks where their parcel is and nobody can answer without opening three tabs. The pain isn’t dramatic — it’s a slow tax on everyone’s day, and it scales with success. An OMS is what you reach for when that tax gets too expensive to keep paying in human hours.
The open-source case: data, cost, control
Most order management software is SaaS, and open-source order management software is still the exception. SaaS makes a specific trade you don’t always see at signup.
Cost. Many channel managers and OMS platforms charge per order. That’s a fee that grows precisely as your business grows — the better you do, the more you pay to keep doing it. An open-source, self-hosted OMS has no per-order pricing, because there’s no meter. You pay for the server you’d be paying for anyway.
Data. Your order history, your customers, your pricing logic — in a SaaS, all of it lives on someone else’s infrastructure under someone else’s policies. Self-hosted means it stays with you. For some merchants that’s a compliance question; for most it’s just the basic discomfort of your competitive know-how living on a server you can’t see.
Control. This is the one we feel most. A closed SaaS lets you configure what its makers anticipated. The marketplace rule it didn’t plan for, the ERP it doesn’t speak to, the pricing wrinkle that’s specific to your business — you build around the tool, not into it. Open source flips that: the behavior is yours to change because the code is yours to read.
We made this full argument in why we built OpenLinker, and the cost side specifically in OpenLinker vs BaseLinker.
What “self-hosted OMS” means in practice
“Self-hosted” sounds heavier than it is, but let’s not pretend it’s free either — that’s the honest part.
It means the OMS runs on infrastructure you control: your own server, your own cloud account, your own database. Nobody can change the price, sunset a feature you depend on, or read your customer data. The trade, as we put it elsewhere, is that you host it. Someone has to run the box, apply updates, and keep the lights on.
The most common objection is fair: who maintains it? For an agency, that maintenance is the offering — they deploy and run it for a client as billable work the client used to hand to a SaaS vendor anyway. For an in-house team, it’s roughly the operational weight of any other self-hosted service you already run. It’s not zero. It’s a known, bounded cost you own outright, instead of an unbounded monthly bill you rent. Which trade is better depends entirely on whether ownership is worth that weight to you — and for a lot of shops, it is.
Where OpenLinker is today — honestly
Here’s the part we refuse to fudge. OpenLinker is alpha. Pre-1.0. It is not a complete OMS, and we won’t describe it as one.
What’s live today:
- PrestaShop, WooCommerce, and Allegro — live today. PrestaShop and WooCommerce both run as shops — catalog, inventory, and the full order lifecycle (PrestaShop ships a companion module for marketplace shipping; WooCommerce covers source, destination, inventory, and product publish via the REST API). Allegro covers the full offer suite — OAuth, a cursor-based event journal, GPSR product-safety data, category lookup by EAN, seller policies. Two live shops against the same ports is the clearest proof the plugin model holds.
- Cursor-based, resumable order ingestion — the real watermark logic behind “nothing’s lost if anything pauses.” This is a genuine proof point, not a slide.
- Bidirectional inventory sync across your ecommerce channels — shop and marketplace, both directions.
- A listing wizard and an AI content assistant for offer descriptions (Anthropic or OpenAI, admin-switchable, per-provider encrypted keys).
Also live: ERLI (a second marketplace), InPost and DPD shipping, and invoicing via Subiekt nexo, KSeF (Poland’s national e-invoicing system), and inFakt — the adapters that proved out the marketplace, shipping, and invoicing ports.
Planned, and not done: Shopify, eBay, Amazon, and the other shipping and invoicing providers. We keep the integrations scorecard public and current precisely so nobody confuses “planned” with “shipping.” If it’s not on the live list above, please don’t assume it works yet.
An open-source OMS as our north star
So why tell you all this if we’re openly not there yet? Because the destination is the point, and we’d rather be honest about the road than oversell the car.
The goal is a self-hosted, open-source OMS — the orchestration layer for a multichannel shop, owned outright, with no per-order tax. We’re approaching it deliberately from the architecture up rather than the feature list down. The system has a hexagonal core: a framework-free domain, capability ports, and a stable plugin SDK that adapters compile against. The shape of OpenLinker is plugin-native architecture — new shops, marketplaces, shipping carriers, and invoicing providers are adapters built against a stable contract, not forks of the core.
That choice is what lets an OMS grow into the long tail of order orchestration without rotting. It’s also why we keep saying an agency can build the integrations a client needs on top of a foundation they don’t have to maintain. The longer version lives on the architecture page.
Who this is — and isn’t — for right now
We’d rather you self-select honestly than be disappointed later.
A good fit today: e-commerce development agencies who want to build on a foundation instead of renting one, and technically-confident teams whose live needs are PrestaShop, WooCommerce, and Allegro. If that’s you, the agencies page is written for exactly this.
Not a fit yet: a non-technical merchant who wants a one-click hosted tool with a support hotline; a shop whose channels are Shopify-only or Amazon-only (those adapters are planned, not built); anyone who needs a finished, fully supported OMS in production this quarter. We’ll get there. We’re not there.
What comes next — and how to follow along
We’re building this in the open, on purpose, and we’d rather have you early than impressed.
- Star and watch the repo on GitHub — the single clearest signal that an open-source OMS is worth building.
- Talk to us as a design partner — we’re working closely with the first agencies and there’s room for more.
An open-source, self-hosted OMS is the thing we want to exist. We’re not done. Come build the rest of it with us.