This Inventory Management System is a web-based solution designed for efficient tracking and management of products, suppliers, warehouses, purchase orders, and sales. The system ensures real-time stock updates, robust data integrity, and visual analytics for informed decision-making. Built using PHP and MySQL, it leverages best practices in database normalization (BCNF) and enforces data consistency with ON DELETE CASCADE constraints.
- ✅ Real-time Stock Management: Automatic stock increase on purchase, decrease on sale, and reversal on deletion.
- 🔐 Data Integrity:
ON DELETE CASCADEmaintains referential integrity across all tables. - 📊 Visual Analytics: Graphs display current stock, sales, and purchase trends.
- 🧭 User-Friendly Interface: Dropdown menus and auto-validation for efficient operations.
- 📄 Comprehensive Reporting: Track inventory, supplier performance, and sales history.
| Action | Effect on Product Quantity |
|---|---|
| Purchase | Increases quantity |
| Sale | Decreases quantity |
| Delete Purchase | Decreases quantity |
| Delete Sale | Increases quantity |
Below are some screenshots of the Inventory Management System interface.
- Suppliers:
supplier_id(PK) - Products:
product_id(PK),supplier_id(FK),warehouse_id(FK),quantity_in_stock - Warehouses:
warehouse_id(PK) - PurchaseOrders:
order_id(PK),supplier_id(FK) - PurchaseOrderDetails:
detail_id(PK),order_id(FK),product_id(FK),quantity - Sales:
sale_id(PK) - SalesDetails:
detail_id(PK),sale_id(FK),product_id(FK),quantity
All foreign keys use
ON DELETE CASCADEfor automatic cleanup of related records.
- Admin: Manages products, suppliers, inventory, and views analytics.
- Customer: Places sale orders and views order details.
- Supplier: Receives purchase orders and updates supplier info.
- System: Updates inventory and ensures data consistency automatically.
- 💻 Backend: PHP
- 🛢️ Database: MySQL
- 📈 Visualization: amCharts5
- 🧮 Design Tools: Canva (for DFDs and ER Diagram)
- Clone the repository and set up your PHP and MySQL environment.
- Import the database schema from the provided SQL file.
- Configure your database connection in the PHP source code.
- Launch the application via a local or hosted PHP server.
- Use the dashboard to manage inventory and visualize performance.
- 🔐 User authentication and role-based access control.
- 📦 Exportable reports and customizable dashboards.
⚠️ Automated low-stock alerts and order confirmations.






