Invoice Generatorš 100% local
Create and download invoices. Privacy-first, no server uploads, no tracking.
Related Tools
Turns a short block of plain text into a laid-out invoice. It reads Client:, Tax:, Discount: and an invoice-number line, treats lines shaped like 2x Consulting @ $500 or Hosting: $120 as line items, and prints a fixed-width bill with a subtotal, any discount, tax and a total due. The client name and the amounts are worked out in the page's own script and never reach a server, which matters when you are typing someone else's billing details into a browser tool.
How to use it
- Type one line per item, using the Nx Item @ Price shape for anything with a quantity.
- Add Client: Acme Corp, Tax: 20% or Discount: 10% on their own lines if you need them.
- Press Process, then copy the invoice text out and put your own numbering and payment details on it.
Worked example
Client: Acme Corp
2x Consulting @ $500
Hosting: $120
Tax: 20%becomesāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
INVOICE INV-001 2026-09-27
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Bill to: Acme Corp
Due: 2026-10-27 (net 30)
Description Qty Rate Amount
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Consulting 2 $500.00 $1000.00
Hosting 1 $120.00 $120.00
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Subtotal: $1120.00
Tax (20.00%): $224.00
TOTAL DUE: $1344.00
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Payment: bank transfer / PayPal / as agreed
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāThe arithmetic: 2 x 500 + 120 = $1120.00 subtotal, 20% tax = $224.00, total $1344.00. Both dates come from the clock when you press Process - the issue date is today and the due date is today plus 30 days, so your run will show different dates from the ones above.
Client: Acme Corp
Amount: $1,000
Date: 2024-01-15becomesEnter at least one line item, e.g. "2Ć Consulting @ $500" or "Consulting: $500"This is the input the page starts with, and it errors. The gate requires a line containing @ or $ with a number, or a bare number, and the comma in $1,000 stops the Amount line from qualifying.
When to use it
- Billing a client when you have no invoicing software and just need a clean text layout to send or print.
- Checking the tax and the total on a small job before entering the figures into an accounting package.
- Building the body of an invoice email where a full template would be more setup than the job is worth.
What it does not do
- The output is plain text, not a PDF: no logo, no VAT or tax number, no purchase-order field, and no running invoice counter between visits.
- Dates come from your system clock - today, and today plus 30 days - with no way to set net 15, net 60 or a fixed due date.
- A line only becomes an item if it matches Nx Item @ Price, Item: Price, or is a bare number, so a thousands separator such as Amount: $1,000 fails the first check.
- One tax rate is applied to the discounted subtotal; per-line rates and compound tax are not modelled.
- The printed table truncates each description to 22 characters without an ellipsis, so a long item name is silently cut.