Skip to content

sagargupta312/Retail-POS-Inventory-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

DMM Management System

A desktop-based Retail POS, Inventory, and Customer Management System built using Python, CustomTkinter, and MySQL.

This project simulates a real-world shop workflow including billing, stock management, customer tracking, and bill history. It was developed during my first semester to understand how GUI applications, databases, and business logic work together.


Features

  • Inventory Management – Add, update, delete products with real-time stock tracking
  • Billing / POS – Auto-fill products, validate stock, calculate discounts, keyboard shortcuts
  • Customer Management – Auto-create customers, track total spend and last visit
  • Bill History – Search bills by date, bill ID, or customer with total sales summary

Tech Stack

  • Language: Python
  • GUI: CustomTkinter, Tkinter (Treeview)
  • Database: MySQL
  • Architecture: Modular (UI and DB logic separated)

How to Run the Program

  1. Clone the repository

    git clone https://github.com/your-username/DMM-Management-System.git
    cd DMM-Management-System
  2. Install required Python packages

    pip install -r requirements.txt
  3. Install and start MySQL server

  4. Create the database and tables:

    SOURCE database/schema.sql;
  5. Update MySQL credentials in the DB config files (host, user, password)

  6. Run the application:

    python login_gui.py

Database Setup

The database schema is provided in:

/database/schema.sql

Run it in MySQL before starting the application.


Screenshots

Screenshots of major application flows are shown below.

Login Screen

Screenshot 2026-01-29 115833

Home Dashboard

Screenshot 2026-01-29 115853

Inventory Management

Screenshot 2026-01-29 120900

Billing / POS

Screenshot 2026-01-29 121023

Save Bill

Screenshot 2026-01-29 121214

Customer Management

Screenshot 2026-01-29 121345

Bill History

---Screenshot 2026-01-29 121413

How the System Works (Short)

  1. Login – User logs in to access the dashboard.
  2. Inventory Setup – Products are added with price, MRP, quantity, category, and distributor.
  3. Billing Process – Enter Product ID to auto-fill details, add items to the bill, and calculate totals.
  4. Stock Update – Product stock is automatically reduced after saving a bill.
  5. Customer Tracking – Customer is identified using phone number and total purchase is updated.
  6. Bill Storage – Bill and bill items are saved in the database.
  7. History & Reports – Bills can be searched by date, bill ID, or customer, with total sales shown.

md

Screenshot 2026-01-29 121446

Use of AI Assistance

AI tools (ChatGPT) were used as a development assistant, mainly for:

  • UI layout ideas (button placement, spacing)
  • Improving code readability
  • Debugging small issues

⚠️ Known Limitations

  • No role-based authentication
  • No transaction rollback handling
  • Desktop-only application

This project represents my learning journey and is intended to evolve over time.

Note: DMM refers to D Mega Mart, a retail store used as the context for this project.
Reference link: https://share.google/mhjDfRAQyUuNqbT6c

About

Desktop-based Retail POS, Inventory & Customer Management System built using Python, CustomTkinter, and MySQL.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages