A desktop-based Automated Billing System built with Python and Tkinter. It allows businesses to manage customer transactions, select products across categories, auto-calculate taxes, and generate itemized bills — all through a clean GUI interface.
| Tool | Purpose |
|---|---|
| Python | Core programming language |
| Tkinter & ttk | GUI / Desktop interface |
| String & Float parsing | Data calculation logic |
| OOP & Event-driven programming | App architecture |
- ✅ 3-level product selection — Category → Subcategory → Product
- ✅ Dynamic dropdowns — subcategory and product lists update automatically
- ✅ Cart system — Add multiple items with price × quantity calculation
- ✅ Auto tax calculation — 18% GST applied on subtotal
- ✅ Bill area — Live text display of all cart items
- ✅ Action buttons — Add to Cart, Total, Print, Save, Clear, Email, Exit
- ✅ Customer details form — Name, Phone, Bill Number with Search
| Category | Subcategory | Sample Products |
|---|---|---|
| Electronics | Mobile, Headphone, Earbuds | iPhone, Sony WH-1000XM4, AirPods |
| Clothing | Pant, Shirt, T-Shirt | Jeans, Formal Shirt, Polo T-Shirt |
| Books | Fiction, Sci-Fi, Drama | 1984, Dune, Hamlet |
Billing-Analytics-Automation/ │ ├── main.py # Full application — GUI + logic ├── main.py.zip # Compressed version └── README.md # Project documentation
# No external libraries needed — uses Python standard library only
python main.pyRequires Python 3.x installed on your system.
add_to_cart()— calculatesprice × quantityand appends to bill textareacalculate_total()— parses bill text, sums all Total Price lines, applies 18% GSTcategory_selected()/subcategory_selected()— event-driven cascade filteringclear_fields()— resets all form fields and bill area to default state
Simulates a real retail POS (Point of Sale) system used in shops, pharmacies, and billing counters. Demonstrates skills in:
- Data input validation & processing
- Business rule implementation (tax logic)
- User interface design for non-technical end users
Arifa Sarkar — Aspiring Data Analyst
GitHub