Inspiration
I wanted a simple, beginner-friendly tool to practice Python programming while creating something practical. Generating invoices manually is repetitive, so automating it with a clear console interface felt like a perfect learning project.
What it does
The Simple Invoice Generator collects item details, calculates totals, applies discounts, and produces a neatly formatted invoice. It also saves the invoice automatically to a text file for record keeping.
How we built it
Language: Python
Libraries: Only built-in libraries like datetime
Process:
Gather item names, quantities, and prices from the user
Calculate each item’s total and the subtotal
Apply a user-specified discount
Format the invoice and print it in the console
Save the invoice to invoice.txt
Challenges we ran into
Formatting the invoice so that columns align neatly in the console
Handling dynamic numbers of items without hardcoding
Ensuring calculations for subtotal, discount, and grand total were accurate for any input
Accomplishments that we're proud of
Built a fully functional, beginner-friendly invoice generator
Automatically saves invoices for record keeping
Demonstrates practical application of Python basics like loops, lists, and string formatting
What we learned
How to handle user input dynamically
Formatting console output for readability
Applying basic arithmetic and percentages in Python
Writing and saving output to a text file
What's next for Simple Invoice Generator
Allow exporting invoices to PDF
Include tax calculation and multiple discount types
Optionally, integrate with CSV or Excel for batch invoice generation
Built With
- console-based
- datetime
- python
Log in or sign up for Devpost to join the conversation.