About Invoice Generator
This tool turns a short form into a complete invoice: your business name and contact lines, the client, an invoice number, issue and due dates, a line-item table, a subtotal, one tax line and the total due. The result is a single HTML file with its styles built in, so it opens in any browser, prints cleanly and can be saved as a PDF from the print dialog. You can also copy the HTML to adapt as a template. Line items are typed one per line as description, quantity, unit price. There is no account, logo upload, saved history or direct PDF button, and the invoice is built in your browser without being uploaded.
How to type line items
Each line needs three values separated by commas. The last value is read as the unit price and the one before it as the quantity. Everything earlier is the description.
| You type | Description | Qty | Unit price | Amount |
|---|---|---|---|---|
| Website design, 1, 1200 | Website design | 1 | $1,200.00 | $1,200.00 |
| Logo revisions, 3, 45 | Logo revisions | 3 | $45.00 | $135.00 |
| Consulting (hours), 12.5, 80 | Consulting (hours) | 12.5 | $80.00 | $1,000.00 |
| Travel (miles), 38, 0.45 | Travel (miles) | 38 | $0.45 | $17.10 |
| Design, development and testing, 2, $1500 | Design, development and testing | 2 | $1,500.00 | $3,000.00 |
| Design, 2, 1,500 | Design, 2 | 1 | $500.00 | $500.00 |
The last row shows the one trap: do not type a thousands comma in a price. 1,500 is split at the comma, so the price is read as 500 and the quantity as 1. Type 1500 instead. Commas inside the description are fine.
Worked invoice examples with tax
Real totals from the tool for four sets of inputs.
Default example, no tax
Website design, 1, 1200 / Hosting (annual), 1, 180 / Logo revisions, 3, 45. Tax / VAT rate: 0. Currency symbol: $
Subtotal $1,515.00. Tax (0%) $0.00. Total due $1,515.00
UK tradesperson charging 20% VAT
Plumbing labour (hours), 3.5, 65 / Copper pipe 15mm (m), 6, 4.20 / Call-out fee, 1, 40. Tax / VAT rate: 20. Currency symbol: £
Subtotal £292.70. Tax (20%) £58.54. Total due £351.24
Line amounts are £227.50, £25.20 and £40.00.
Indian invoice with 18% tax
Logo design, 1, 15000 / Business cards, 500, 4. Tax / VAT rate: 18. Currency symbol: ₹
Subtotal ₹17,000.00. Tax (18%) ₹3,060.00. Total due ₹20,060.00
The tax appears as a single line. A split into CGST and SGST is not produced.
Monthly retainer with a 7.5% rate
Monthly retainer, 1, 2500. Tax / VAT rate: 7.5. Currency symbol: €
Subtotal €2,500.00. Tax (7.5%) €187.50. Total due €2,687.50
Invoice total formula
Total due = sum of (quantity x unit price) x (1 + tax rate / 100)
Tax is applied once, to the whole subtotal, at the single rate you enter. Amounts are rounded to two decimal places when displayed. The tool does not support a different rate per line, tax-inclusive prices, discounts or shipping as separate total lines. If some items are taxed at another rate, issue them on a separate invoice or work out the tax yourself and enter it as its own line with the rate set to 0.
What appears on the generated invoice
| Part of the invoice | Comes from | Details |
|---|---|---|
| Seller block, top left | Your business name; Your address / email / phone | Name as the heading, each line of the address box on its own line |
| Invoice panel, top right | Invoice number, Invoice date, Due date | The word INVOICE, the number with a # in front, and both dates in YYYY-MM-DD form |
| Bill to | Bill to; Client address / email | Client name followed by each address line |
| Line-item table | Line items | Columns: Description, Qty, Unit price, Amount |
| Totals | Line items, Tax / VAT rate, Currency symbol | Subtotal, Tax with the rate in brackets, and Total in bold |
| Footer note | Notes / payment terms | Small grey text under the totals; left out if the box is empty |
The labels on the invoice are fixed in English. The tax line always reads Tax, so mention VAT or GST and your registration number in the address or notes box if you need them shown.
Common payment terms to put in the notes
| Term | Meaning |
|---|---|
| Due on receipt | Payment is expected as soon as the invoice arrives |
| Net 7 | Payment is due 7 days after the invoice date |
| Net 15 | Payment is due 15 days after the invoice date |
| Net 30 | Payment is due 30 days after the invoice date |
| Net 60 | Payment is due 60 days after the invoice date |
| 2/10 net 30 | A 2% discount if paid within 10 days, otherwise the full amount in 30 days |
| 50% upfront | Half is payable before work starts and the rest on completion |
Whatever term you write, set the Due date field to match, because the due date is typed, not calculated from the notes.
Using the HTML as an invoice template
The output is one self-contained file. All the CSS sits in a style block in the head, there are no images, web fonts or scripts, and the text uses Arial with a Helvetica and sans-serif fallback. That means the file looks the same offline, as an email attachment or on another computer.
The structure is simple to edit by hand: a header with two columns, a Bill to block, an ordinary HTML table for the line items and a right-aligned totals box. A print rule removes the page padding so the browser's own margins apply. To add a logo, put an img tag above the business name. To change a label such as Tax to VAT, edit the text in the file after downloading.
Because the file stays editable, anyone who receives the HTML could change it. Send clients the PDF version and keep the HTML as your working copy.
How to use it
- 1
Enter Your business name and Your address / email / phone, then the client under Bill to and Client address / email.
- 2
Set the Invoice number, Invoice date and Due date. The due date starts 30 days after today.
- 3
Type the Currency symbol, such as $, £ or €.
- 4
List Line items one per line as description, quantity, unit price, for example Logo revisions, 3, 45.
- 5
Enter a Tax / VAT rate if you charge tax, and edit Notes / payment terms.
- 6
Press Generate invoice, check the preview and totals, then download the HTML file and print it or save it as a PDF.