Invoice generator
Create professional invoices with multi-tax rules, discounts, logo upload, and a clean PDF-ready layout.
From
Bill to
Apply discounts on each item instead of one invoice-level discount.
Invoice discount
Tax settings
Use this when Tax 2 applies to the subtotal plus Tax 1.
Your Business Name
Business address
Invoice
Number: INV-001
Issue date: 2026-08-28
Due date: -
Bill to
Client name
Client address
Summary
| Description | Qty | Rate | Amount |
|---|---|---|---|
| Item description | 1 | $0.00 | $0.00 |
- Fill in your business information and optionally upload a logo.
- Enter your client details, invoice number, issue date, and due date.
- Add line items with descriptions, quantities, and rates.
- Choose invoice-level discounts or switch on line item discounts.
- Set one or two tax rates, and enable tax-on-tax when Tax 2 applies on top of Tax 1.
- Review the live invoice preview, then print or save the invoice as a PDF.
Input:
Item: Website development, quantity 1, rate $2,500
Invoice discount: 10%, before taxes
Tax 1: GST 5%
Tax 2: QST 9.975%, tax-on-tax enabled
Output:
Subtotal: $2,500.00
Pre-tax discount: $250.00
Taxable subtotal: $2,250.00
Total includes Tax 1 and Tax 2 calculated from the selected tax rules.
Can I calculate two taxes on an invoice?
Yes. Use Tax 1 and Tax 2 for regions with multiple taxes. Enable the tax-on-tax option when the second tax should be calculated on top of the first tax.
How do invoice discounts work?
Invoice discounts can be a fixed dollar amount or a percentage. You can apply the discount before taxes or after taxes depending on your billing rules.
Can I discount individual line items?
Yes. Turn on line item discounts to apply percentage or dollar discounts to each item instead of using one invoice-level discount.
Can I add my own logo?
Yes. Upload an image from your device and it will appear in the invoice preview and print layout. The image stays in your browser while you work.
Is my invoice data stored?
No. Invoice data is processed locally in your browser and is not stored on our servers.