- ERP & CRM
- AI agents
The returned parcel goes back on a shelf, never into stock
You scan, and the stock updates by itself.
The problem
In the warehouse of a cash-on-delivery brand in Morocco, three jobs were done by hand: finding the next order to pack, putting a returned parcel back into stock, and identifying a delivery from the supplier before it could be counted. Each one meant reading one screen, then typing into another.
What I built
One screen with three stations, running on the office PC in the warehouse. Packing advances with the space bar. A returned parcel is read by a USB scanner and goes back into stock without a click. A product that arrives is photographed with a webcam: the label is read and the picture is matched against the catalogue, and the operator confirms the suggested match and the quantity. Every write to the store goes through a queue that can be held in simulation.
Technical details
- USB scanner typing QWERTY on a French keyboard: the decoder fires only on a character no real code can contain, and applying it twice changes nothing
- Writes to the store queue in Postgres behind a simulation flag, so the whole chain can run dry before anything leaves
- A variant deleted from the store is kept as a snapshot, so a return of a discontinued product can still go back into stock
- Label reading capped at 800 pixels, because full webcam resolution took minutes on that processor
Stack
- Node
- React 18
- Supabase Postgres
- Edge functions
- PaddleOCR
- rembg
- Shopify Admin API
- Playwright
The result
The station runs in the warehouse on a desktop PC with no graphics card: the label reading and the cut-out happen on that machine, not in an online service. And nothing reaches the store until the queue is taken out of simulation.
A similar project in mind?
Tell me about your business and when you need it. You get a proposal by email.