Client name kept private. Same retail group as the card payments project.
The problem
The retail group tags its products with RFID. Scanning stock is only useful if the scans can be turned into product data, matched against what the system says should be in the store, and reported in a way managers can act on.
What I built
RFID services (Python)
- EPC encoding and decoding. Converting between the EPC values stored on RFID tags and the group's product codes.
- Scan and match. Services that read scanned tags and match them against the expected stock.
- API service. An API layer so other systems can use the scan and match results.
- Store installation. Start-up scripts and an installation guide so the services can be set up the same way at each location.
Operations dashboard (Django)
- Reports for sales, stock snapshots and stock transfers between locations, including RFID-based sales reports.
- Scripts that pull sales and stock data from the retail system into the dashboard.
- Deployed with Docker, Gunicorn and Nginx.
Stack
Python · RFID / EPC · Django · Docker · Gunicorn · Nginx
What this means for your project
Hardware and legacy-system integrations reward careful data mapping more than clever code. If you need devices, an old system and a modern dashboard to agree with each other, I've done that in production.