Invoice generator

DocumentsFill in the form, watch the invoice take shape, download the PDF. No account, no email gate, and nothing you type, including bank details, is sent anywhere.

Everything you type stays on this device. Nothing you open is ever uploaded. There is no server to upload it to.

What this does

Fill in who you are, who you are billing and what for, and the invoice assembles itself beside the form as you type: letterhead, line items, tax breakdown, totals, bank details. Download and you have a proper PDF, with real selectable text, repeating table headers on long invoices, and a filename made from the number and the client’s name.

There is no account to create and no email address to hand over before the download button works. That is not a promotional gesture. An invoice contains your bank account, your VAT number and your client’s address, and the usual way to get a free PDF is to type all of that into a form on someone’s server, which then builds the document and keeps a copy of what you sent. Here the PDF is built by your browser, on your machine, from data that never left it. The FAQ explains how to watch the network panel and confirm that for yourself.

How to use it

  1. Choose Invoice or Quote, set the number and dates, and pick the currency and the number format you want. Payment terms fill in the due date for you; choose Custom to set it by hand.
  2. Add your business details and, if you like, a logo. These are remembered in your browser, so you do it once.
  3. Add the client, then the items. Each line has a quantity, a unit price, an optional discount and a tax rate with a label of your choosing. Press Enter on an item to start the next one, and use section headings to group a long list.
  4. Add a discount on the subtotal, shipping, payments already received and your bank details if you want them on the document. A payment link prints as a clickable address, and a tick puts a QR code of it under the address, captioned “Scan to pay”, for the client who has the paper copy and a phone.
  5. Check the preview, then download the PDF. Next time, New invoice keeps your letterhead and settings, increments the number, and clears the rest.

How the sums are done

Money is handled as whole units of the currency’s smallest coin (pence, cents, yen) and never as a decimal fraction in floating point, which is the usual source of totals that are a penny out. Rounding is half up, at every point where rounding happens. The order of operations is fixed:

  1. Line amount is unit price times quantity, rounded.
  2. Line discount, if any, comes off that amount.
  3. Subtotal is the sum of the line amounts after their discounts.
  4. A discount on the subtotal is taken next. A percentage is applied to each line; a fixed amount is split across the lines in proportion, using the largest-remainder method so the parts add up to exactly what you entered, and it can never exceed the subtotal.
  5. Tax is calculated on each line’s discounted amount at that line’s rate, rounded per line, and then summed by rate and label for the breakdown. This is the per-line method; rounding once on each rate’s subtotal instead can differ by a penny, and you should know which one a tool uses. This one rounds per line.
  6. Shipping and other charges are added after tax and are not taxed. If a delivery charge should carry tax, enter it as a line item.
  7. Balance due is the total less any amount already paid, and it will go negative if the client has overpaid.

What it does not do: tax rules

The tool does arithmetic on the rates you enter. It has no table of VAT or sales-tax rates, no notion of which fields an invoice must carry in which country, and no built-in wording for reverse charges, exemptions or margin schemes. That is a decision rather than a gap. Tax rules move, e-invoicing rules are moving faster, and a generator that encoded them would be silently wrong for somebody within a year, which is a worse outcome than making no claim.

So the tax label on each line is free text. “VAT”, “Zero-rated”, “Exempt”, “GST”, “Reverse charge”: whatever your invoice needs to say, you say it, and the breakdown repeats it faithfully. Every other field is optional. What an invoice in your jurisdiction is required to contain is yours to know or to ask an accountant.

Saving, and where your data lives

The draft is written to your browser’s local storage as you type. That is a small store that belongs to this site on this device only: it is not a cookie, it is not sent with any request, and nothing on our side can read it. It is what lets a refresh keep your work and lets your business details be there next time. A large logo is downscaled before it is stored, because the store is only a few megabytes and a phone photograph would fill it.

Two consequences follow. A different browser, or the same browser in private mode, starts empty. And anyone else who uses this browser profile on this computer could open this page and see the last draft, bank details included, which is exactly what the Clear saved data button is for.

Limitations

One layout, black on white. No templates or accent colours yet. The document is laid out to be read and filed, not to be admired.

Latin, Greek and Cyrillic scripts. The embedded font covers these plus every currency symbol. Chinese, Japanese, Korean, Arabic, Hebrew, Thai and emoji are not included; the form warns you which characters would print as a question mark before you export.

No client book, no history. The tool keeps one draft and your own details. Finished invoices are the PDFs you downloaded; keep them wherever you keep your accounts.

Not an accounting system. It does not track whether an invoice was paid, send reminders or produce reports, and it makes no claim about compliance anywhere. It produces a correctly added-up document from what you typed.

Frequently asked questions

Is my invoice, or my bank details, uploaded anywhere?

No. The form, the preview and the PDF itself are all built inside your browser tab, and there is no server for any of it to go to. Watch your browser's network panel (F12) while you fill it in and export: no request carries what you typed. Most free invoice generators render the PDF on their servers, which means the invoice, your account number and your client's address pass through them.

Do I need an account, or to give an email address?

No, and there is no gate on the download. The form remembers your business details in your own browser instead, so next time the letterhead is already filled in. That memory lives on your device alone, and the Clear saved data button deletes it.

Does it know the VAT rules for my country?

Deliberately not. You type the rate on each line and give it whatever label you use, and the tool does the arithmetic and prints a breakdown by rate. It does not decide what rate applies, which fields your jurisdiction requires or what wording a reverse-charge invoice needs, because rules change and a tool that is quietly out of date is worse than one that never claimed to know. What your invoice must contain is yours to check.

How are the totals calculated?

In integers, never in floating point. Each line is price times quantity, less its own discount, rounded to the smallest unit of the currency. A discount on the subtotal comes off next, then tax is worked out per line at that line's rate and summed by rate. Rounding is half up at every step, and a fixed discount is split across lines so the parts add up exactly. The page below spells the order out.

Why does the tax breakdown show more than one row?

Because it groups by rate and by label. Lines at 20% and lines at 5% get a row each, and two lines at 0% labelled "Zero-rated" and "Exempt" get a row each too, since the label is how you tell the reader which is which. If you want one row, use one rate and one label.

What happens if I refresh the page?

Nothing is lost. The draft is saved in your browser's local storage as you type, on this device, and comes back when the page does. It is not synced anywhere: another browser or another computer starts blank. To keep a copy of a finished invoice, download the PDF.

Can it do quotes?

Yes. Switch the document type to Quote and the title, the number label and the date label change, the payment and balance sections drop out, and the next document number carries on from the last one.

Can it put a QR code for my payment link on the invoice?

Yes. Enter the link under Payment details and tick the box beneath it, and the PDF prints a QR code of the link under the address with the caption "Scan to pay". The code is about 30 mm square, drawn as vector shapes so it stays sharp at any print size, and it is made on this device like the rest of the document. It encodes exactly the link you typed and nothing else, so what a phone opens is your payment page.

Which characters and currencies does the PDF support?

Any currency your browser can format, with its own symbol and its own number of decimal places. The PDF embeds a font that covers Latin, Greek and Cyrillic scripts and every currency sign, so accented names and addresses print correctly. Characters outside that (Chinese, Japanese, Arabic, Thai and emoji) are flagged before you export and would print as a question mark.