Inventory Management System.
Built for a working motor-parts shop. Still in use.
Developed a desktop inventory and billing application for a motor-parts business, bringing stock management, purchasing, sales, customer records, supplier records, and reporting into one unified, transaction-safe workflow.
# 01 // SYSTEM ARCHITECTURE & DATA FLOW
PyQt6 Interface
Dashboard · Billing · Parts
Transaction Engine
Stock checks & discounts
SQLite Database
Foreign keys & backups
PDFs & Gemini
Invoice generation & OCR
The application separates UI presentation from transactional data logic. PyQt6 captures shop interactions, the transaction engine guarantees atomic stock updates, and an embedded SQLite database provides zero-latency offline persistence with integrated automatic backup tools and professional PDF invoice rendering.
# 02 // CORE OPERATIONAL WORKFLOWS
Sales, purchases, and voids are wrapped in atomic SQLite transactions. Customer bills validate available inventory before committing decrements, while voiding an invoice automatically restocks items and rolls back balances on failure.
Instant part selection, line-item discounts, and customer account association. Generates clean, branded PDF invoices with shop logo, tax numbers, and bank details ready for thermal or standard A4 printing.
Supports manual entry or assisted digital extraction from incoming supplier invoice PDFs and images using configured Google Gemini API parsing, matching incoming items against existing part numbers before committing restocks.
Real-time calculations for total parts, gross inventory valuation, and daily revenue. Includes low-stock threshold badges, batch editing, CSV import/export, keyboard shortcuts, and local database backup/restore.
# 03 // CHALLENGES & PRACTICAL LEARNINGS
Peak counter hours risked race conditions and phantom sales. Handled by strictly validating stock before checkout and wrapping stock decrements and bill lines in atomic SQLite transactions, with automatic restock on voided sales.
Suppliers submit invoices across diverse PDF layouts and scanned formats. Built an assisted ingestion pipeline with OCR/Gemini extraction paired with a human review modal to match extracted lines against existing part numbers.
Daily retail counter work demanded maximum speed. Designed keyboard shortcuts, multi-attribute part search, batch inventory editing, and instant branded PDF receipt generation instead of a generic multi-step CRUD interface.
Outcome: Real-World Daily Operation
Developed for a working motor-parts shop to manage stock and billing. The software remains in continuous, active daily use for the shop's commercial day-to-day operations, handling stock tracking, supplier intakes, customer billing, and daily closing valuations.