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

Share this project:

Updates