Case study · Software

Tööriistamaailm – warehouse management software (WMS)

A warehouse management system for a tool retailer: orders arrive automatically, pickers move from shelf to shelf in the right order with a Zebra scanner, and stock, receiving and stocktaking stay in sync with Erply.

Client
Tööriistamaailm
Industry
Tool retail and e-commerce
Technologies
NestJS, React, TypeScript, MySQL, Android (Zebra), Erply API

Request a similar solution

Tööriistamaailm – warehouse management software (WMS) – desktop view
Tööriistamaailm – warehouse management software (WMS) – tablet view
Tööriistamaailm – warehouse management software (WMS) – mobile view

Hover over the devices to scroll through the pageThe page scrolls automatically on the devices

The client

Tööriistamaailm sells tools both online and in stores. There are thousands of products, many of them in different shelf locations. Sales and inventory accounting run in Erply, and orders are collected by a separate order manager.

The challenge

Erply knows how many items are in stock, but not which shelf they are on. Without shelf locations, picking depends on people’s memory. The new system had to manage warehouse work down to the shelf location, run on a scanner in the warehouse worker’s hand and keep stock in sync with Erply.

The solution

We developed a web-based warehouse management system (WMS). The same application runs on the warehouse computer and on Zebra scanners. Orders arrive automatically from the order manager, and every change reaches all devices in real time.

OrderAn order comes from the online store or POS via the order manager into the WMS.
PickingThe system builds a pick list in shelf-location order.
ScannerThe picker scans the location and the product, and errors show up immediately.
DispatchThe order is packed and dispatched, and the status goes back to the order manager.
  • Scanner-based picking: a pick list in shelf-location order, location and product scanning, and bundles split into components. Multi-order wave picking combines quantities on one route.
  • Zebra handheld: an Android app using the scanner’s DataWedge. Without a scanner, the phone camera can be used. GS1 bulk packaging labels are also supported.
  • Works offline too: if WiFi drops, actions are stored on the device and sent when the connection returns. No duplicate entries.
  • 2D and 3D warehouse map: shelves and locations are drawn on the map, and barcode labels are printed as PDFs. A picking heatmap shows the most active locations.
  • Picking analytics: the system finds fast-moving products that are too far from the packing table and suggests moving them closer.
  • Receiving and putaway: purchase invoices come from Erply and goods are checked with a scanner. Partial receipts trigger an email.
  • Stocktaking and stock movements: stocktaking, relocation, returns to shelf, and Erply write-offs and stock registrations with shelf locations. Entries to Erply are idempotent.
  • Reports: a daily email comparing Erply and WMS stock, plus CSV exports.
  • Users and permissions: roles (warehouse manager, picker, warehouse worker, viewer), login via the order manager and API keys for external systems.

Technology

NestJS and TypeScript, MySQL (TypeORM), React and Vite, real-time connection (Socket.IO), a Capacitor Android app with Zebra DataWedge, IndexedDB for offline work, the Erply API and automated deployment with Bitbucket Pipelines. The screenshots show sample data.

Need a similar solution? See our warehouse management system page.

More projects

Want something similar?

Describe your situation – we will tell you honestly what makes sense and what it costs.

Request a quote →