Open-source Warehouse Control System

The WCS you
actually control.

openWCS orchestrates your automation — conveyors, ASRS, AMRs, AutoStore — and the real-time flow of goods, sitting between your WMS/ERP and the machines. Open, vendor-neutral, and yours to change.

AGPL-3.0 open source · self-host · no per-flow license fees

openWCS orchestrating an automated warehouse — conveyors, racking and robots
WMS / ERP openWCS Conveyor ASRS AMR AutoStore
The openWCS handheld process designer running in the browser.
Inside openWCS: design the operator flow visually and watch it run in a live preview.

Feature standout · Digital twin Built

Watch your warehouse run. Live, in 3D.

Almost no WCS lets you see what it is doing. openWCS renders your whole layout as a live 3D digital twin in the browser: every conveyor, ASRS aisle and station coloured by its real-time state, every tote moving along the scan trail the hardware actually reported. No SCADA package, no extra server: it is part of the open-source UI.

Live equipment state

Idle, running, faulted

Every machine is coloured by what it is doing right now: idle, running with an amber pulse, faulted in red. Click any piece of equipment to see the device tasks behind its state.

Real movement

Totes replay the real scan trail

Handling units glide through the model along the scans the floor actually reported; nothing is invented. Click a tote for its full transport trace, recirculation loops included.

Inside the racks

See storage fill and drain

Stored totes sit in the ASRS rack at their exact cell positions, so you can watch aisles fill and drain as put-away and retrieval run. A level selector handles multi-floor sites.

What openWCS does

An open WCS that does the real work — and lets you change it.

openWCS is a full warehouse control system built in the open: the same capabilities you expect from a commercial WCS, with none of the lock-in. Run it yourself, read every line, and adapt it to your building.

Equipment

Vendor-neutral by design

A uniform device contract with adapters for conveyors, ASRS, AMRs and AutoStore. Add a vendor without re-architecting — their protocol stays in the adapter.

Conveyor routing

Routing you can see

Draw the conveyor topology in a visual editor, route handling units by shortest path through their targets, enforce loop limits — and even learn the layout from live traffic.

Processes

Design your own flows

A built-in BPMN designer: model goods-in, outbound and cycle-count processes in the browser, deploy instantly, and have their steps originate real WCS work.

Inventory

Real-time, event-sourced stock

Durable stock projected from an append-only transaction log, with location-scoped availability and reservations. Rebuildable, auditable, and yours to query.

Outbound

Allocation, cubing & labels

Pick-location allocation with UoM breakdown, multi-size cubing into shippers (largest-first, line-traceable), per-carton dispatch labels, and batch picking.

Pick stations

Goods-to-person, your way

Configure each station's picking layout: 1-to-1, 1-to-N batch slots, or a put-wall. The operator screen adapts to match, and pick-to-light is driven on the cubbies (orange until picked, green when done) so the floor follows the lights.

Host API

Integrate your WMS once

One canonical, vendor-neutral Host API for orders, ASNs and confirmations. SAP and Manhattan adapters translate into it; idempotency and webhooks included.

Security

Secure by design

Gateway JWT validation, per-endpoint role-based access control, and Keycloak — all toggleable so you can start simple and lock down for production.

Architecture

Built to evolve

Independent microservices, schema-per-service Postgres, a Kafka event backbone, and contract-first APIs — so you can extend or replace any part. Cloud-native: every service is stateless and scales horizontally on Kubernetes behind any load balancer.

Open

No lock-in, ever

Open source. Self-host on your own infrastructure, fork it, and integrate whoever you like. Leaving is never a rip-and-replace.

Data access

Your database, one query away

A built-in admin console browses every schema and table and runs SELECT-only SQL against the live system, guarded by a read-only transaction, timeouts and row caps. Standard WCSs never let you near your own data.

Slotting

Slotting & replenishment

Configurable put-away for ASRS/AutoStore/AMR blocks — velocity-to-exit, multi-deep same-SKU lanes, aisle redundancy and fill balancing — plus fixed pick-face min/max with opportunistic replenishment and direct-to-pick.

Multilanguage

Speaks your team's language

The operator and management UI ships in English, German, French, Spanish and Chinese out of the box, with a per-user language preference. Few WCS platforms offer multiple languages without a paid add-on.

The problem

Your WCS shouldn’t be a black box.

Most warehouse control systems are shipped by the integrator who installed your equipment — closed software, tied to their stack and their contract. The logic that routes your totes and allocates your stock is hidden, and every change goes through them. That’s fine until you need to move fast.

Opaque

Black-box logic

You can’t see how routing, allocation or cubing decisions are actually made — so you can’t trust, tune, or debug them.

Slow

Every change is a quote

A new pick path or process tweak means a change request, a price, and a place in someone else’s queue.

Locked in

One vendor, one stack

The WCS is bound to the integrator’s preferred hardware and protocols. Adding a new device family means going back to them.

Hostage

Your data isn’t yours

Operational history and live state live inside a system you can’t query or export on your terms.

Risk

Their roadmap, not yours

Their priorities, their pricing, their support window. Switching later means a rip-and-replace project.

Cost

Pay to keep the lights on

Licenses, support contracts and change fees compound — for software you’ll never own or fully see.

openWCS vs. a locked-in integrator WCS

Same control floor. Different rules.

Capability Typical integrator WCS openWCS
Source & ownershipClosed binary you licenseOpen source you run and own
Change a process or pick pathPaid change request, weeks of lead timeDraw it in the BPMN/topology editor and deploy yourself
Equipment vendorsTied to the integrator’s preferred hardwareVendor-neutral adapters over a uniform device contract
Conveyor routing logicOpaque PLC / black-box rulesVisual, shortest-path, editable — and learnable from traffic
WMS / ERP integrationBespoke interface, re-built per integratorOne canonical Host API; SAP/Manhattan adapters translate in
Your operational dataTrapped inside the vendor’s systemEvent-sourced log + Postgres you host, with a built-in read-only SQL console to browse and query it live
Switching / exitRip-and-replace projectNo license lock-in — fork, self-host, extend
Cost modelLicense + support + per-change feesFree core; pay only for hardware, ops and the partners you choose
Slotting & replenishmentVendor's fixed rules, opaque and hard to tuneConfigurable put-away scoring + min/max replenishment you can read and change
Floor visibilityA SCADA add-on, priced and scoped by the vendorA live 3D digital twin built into the UI: equipment state, moving totes, rack fill

Under the hood

Transparent by construction.

A clean microservice architecture you can read end to end: each service owns its data, movements are events on an append-only log, and equipment lives behind adapters.

            ┌──────────── API gateway ── JWT · RBAC ────────────┐
  WMS / ERP ─►  Host API  ─►  order-management · master-data · inventory
            │                          │  (event-sourced transaction log → Kafka)
            │   process-engine (BPMN) ─► flow-orchestrator ─► device adapters
            │   allocation · slotting · goods-to-person (put-to-light) stations
            └──────────────────────────┴────►  Conveyor · ASRS · AMR · AutoStore
Java 21 · Spring Boot

Domain services

master-data, inventory, orders, allocation, slotting, goods-to-person stations, flow-orchestrator, txlog, IAM — each independently deployable.

Go

Equipment adapters

Lightweight drivers that speak each vendor’s protocol and the uniform device contract.

Postgres · Kafka

Event backbone

Schema-per-service stores and an append-only event log — auditable, replayable, rebuildable.

Built in the open

Take control of your control system.

Read the code, run the stack with Docker Compose, and shape it to your warehouse. Contributions welcome.