Local Browser Processing and Data Privacy
The Invoice Generator operates entirely within a single browser tab. When you enter billing details, itemized charges, or tax rates, all processing happens locally in your browser. No data is uploaded to any external server.
This local processing model ensures that sensitive business information, client addresses, and financial figures remain strictly within your local environment. Because the tool does not transmit your inputs over the internet, you can draft documents without the risk of data interception or third-party storage. However, because the data is not saved on a server, closing or refreshing the browser tab will clear your current workspace.
Invoice Structure and Required Fields
A professional invoice requires specific structural elements to ensure both parties can identify the transaction details. The Invoice Generator organizes these elements into distinct sections within the "Invoice details" workspace:
- Parties: This section contains the sender and receiver details. The "From" field displays your business name, address, and contact details. The "Bill to" field contains your customer's name and billing details.
- Invoice Details: This includes the "Invoice number" (the reference identifier shown on the draft) and the "Issue date". You can also add an optional "Due date" to establish a payment deadline.
- Items: You can add up to 20 lines of itemized charges. Each item requires a "Description", a "Quantity" (which must be greater than 0 and use no more than 6 decimal places), and a "Unit price" (a valid, non-negative price).
- Tax & terms: This section allows you to select your "Currency", choose a "Tax label" (such as VAT, GST, Sales Tax, or a generic Tax label), enter a "Tax rate" from 0% to 100%, and write optional "Payment terms" (such as bank transfer details).
Decimal Precision and Multi-Currency Calculations
The tool calculates totals using specific rounding rules based on the selected currency. Changing the currency only labels and formats the draft; it does not perform currency conversion or look up exchange rates.
The calculations follow a strict mathematical sequence to prevent rounding discrepancies:
- Line Totals: Each line total is calculated by multiplying the quantity by the unit price. This result is rounded to the selected currency's standard decimal places.
- Subtotal: The "Subtotal" is the sum of these rounded line totals.
- Tax: The tax amount is calculated by multiplying the subtotal by the user-entered tax rate. This tax figure is then rounded to the selected currency's decimal places.
- Total Due: The "Total due" is the sum of the subtotal and the rounded tax amount.
If you enter a unit price with more decimal places than the selected currency supports, the tool will display the error message: "The unit price has more decimal places than this currency supports."
Validation Rules and Error Messages
To ensure the invoice draft is complete and mathematically sound, the workspace validates your inputs in real time. The tool displays specific error messages if any rules are violated:
| Input Field | Validation Rule | Error Message |
|---|---|---|
| Parties | Both sender and client details must be filled. | "Enter both the sender and the client." |
| Invoice Details | Invoice number and issue date are required. | "Enter an invoice number and issue date." |
| Items List | At least one item must be present in the list. | "Add at least one item with a description, quantity and unit price." |
| Item Fields | Description, quantity, and unit price must all be filled. | "Complete the description, quantity and unit price for this item." |
| Quantity | Must be greater than 0 and have no more than 6 decimal places. | "Quantity must be greater than 0 and use no more than 6 decimal places." |
| Unit Price | Must be a non-negative, valid number. | "Enter a valid, non-negative unit price." |
| Tax Rate | Must be a percentage between 0% and 100%. | "Enter a tax rate from 0% to 100%." |
| Item Limit | Maximum of 20 items allowed on one invoice. | "This draft already has the maximum of 20 items." |
| Item Amount | Total line amount must not exceed system limits. | "That item amount is too large for this draft." |
When the workspace is incomplete, the status bar displays: "Add both parties and at least one item to prepare the draft." Once all validation rules are met, the status changes to: "Draft ready to print."
Generating and Saving the PDF Draft
The Invoice Generator does not require external software or plugins to generate a PDF. Instead, it utilizes your browser's native print capabilities.
Once your draft is ready, you can toggle from the "Edit" tab to the "Preview" tab to view the "Print preview". The preview displays a clean, formatted document titled "INVOICE" with a "Draft" badge. If you leave the sender or client details empty during editing, the preview will display the placeholders "Your business details" or "Your client details". If no items are added, it shows "Add an item to the invoice". If payment terms are omitted, it displays "No payment terms entered".
To save the document, click the "Print / Save PDF" action. This opens your browser's print dialog, where you can select "Save as PDF" as the destination instead of a physical printer. This process ensures that the document is formatted cleanly for digital distribution or physical printing.
Understanding Tax Compliance and Draft Limitations
This tool is a layout and calculation helper for drafting invoices; it is not automated tax compliance software.
The user is entirely responsible for determining the correct tax rate and tax label (such as VAT, GST, or Sales Tax) based on their local tax jurisdiction. The tool does not validate tax registration numbers, determine tax eligibility, or verify local invoicing rules. Because it only generates a draft, you must manually confirm that the final document meets all local legal, tax, and record-keeping requirements before issuing it to a client or filing it with tax authorities.
Frequently Asked Questions
How are line totals and tax calculated?
Each line is quantity multiplied by unit price and rounded to the selected currency’s decimal places. The subtotal is the sum of those displayed lines; tax is the subtotal multiplied by the rate you enter, and the total is subtotal plus tax.
Does changing the currency convert my prices?
No. The currency choice labels and formats the draft; it never looks up an exchange rate or changes the numbers you entered. Convert prices separately before switching currency when you need a real exchange.
Is this a compliant tax invoice or ready for filing?
Not automatically. It is a printable draft and does not choose a tax rate, determine jurisdiction, validate registration numbers or check local invoice rules. Confirm every required field, rate and record-keeping rule before issuing or filing it.
Where is my invoice data stored?
Your invoice details stay in this browser tab and are never uploaded to BroBroGo. All calculations and document rendering happen locally within your browser.