Invoice Numbering and Sequence for Hosting Providers
A gap in an invoice sequence is a question you have to answer, and "the software did it" is not an answer. Where hosting businesses generate gaps and how to stop.
A gap in an invoice sequence is a question you have to answer, and "the software did it" is not an answer. Where hosting businesses generate gaps and how to stop.
Invoice numbering is the most boring thing your billing platform does and the first thing an auditor asks about. Get it wrong and the problem is not cosmetic — in a good part of Europe, a gap in an invoice sequence is a question you have to answer, and "the software did it" is not an answer.
This is what the rules generally require, where hosting businesses trip over them, and what to check in whatever platform you run.
Not legal or tax advice. Invoice and record-keeping rules are national, they change, and they differ by entity type and turnover. This post describes the common shape of the requirements and the platform behaviour that supports them. Confirm the specifics for your jurisdiction with your accountant before you rely on any of it.
Across most of the EU and the UK, a compliant sales invoice has to carry a unique identifying number from a sequence that runs without gaps, along with the issue date, the supply date if it differs, your identity and VAT registration, the customer's identity, a description of what was supplied, the net amount, the VAT rate and amount, and the total. Credit notes generally have to reference the invoice they correct.
Two properties do most of the work: unique and sequential. Uniqueness stops the same number describing two different transactions. Sequence is what makes suppression detectable — if invoices run 1001, 1002, 1004, the missing one is a question, and the whole point of the rule is that you have to be able to answer it.
Cancelling instead of crediting. An invoice is issued in error and someone deletes it. The number vanishes and the sequence has a hole. The correct action is almost always to issue a credit note that references the original and leaves both documents in the record. Deleting a document that was sent to a customer is the single most common way a clean set of books becomes an awkward conversation.
Zero-value invoices. A free plan, a fully credit-covered renewal or a €0 trial conversion still generates a document in most systems, and it consumes a number. That is fine — but if you did not expect it, you will find a block of your sequence spent on documents nobody meant to issue. Worth knowing what your platform does at zero before you find out at year end.
Failed orders. An invoice is raised at checkout, the payment fails, and the order is abandoned. Whether that document should exist at all depends on whether it was ever issued to the customer, which is why proformas matter — see below.
Test transactions in production. Every test order you place against a live gateway burns a real invoice number. Do your testing in a separate environment, or accept that your sequence contains your own experiments.
Multiple entities, one platform. If you invoice from two legal entities, they need two independent sequences. A shared sequence across entities is not a sequence for either of them.
A proforma is a request for payment, not a tax document. It does not enter your VAT return, it does not need to be in the sales invoice sequence, and abandoning one costs you nothing. The final invoice is issued when payment is received.
For a hosting business with a checkout, this maps cleanly onto reality: the customer places an order and gets a proforma; when the payment settles, a sequential tax invoice is issued. Failed and abandoned checkouts never touch the invoice sequence, because they never got that far. If your jurisdiction and accountant support this pattern, it removes the largest source of gaps in one move — and it is why platforms that support a separate proforma document with its own numbering are easier to keep clean than platforms where every checkout mints a tax invoice immediately.
The riskiest moment for your numbering is the day you change platforms. The new system starts at 1 unless you tell it otherwise, and now you have two documents numbered 1 in the same tax year from the same entity.
Before cutover: record the last issued number in the old system, set the new system's starting number above it, and keep the old system's documents archived and readable. Importers move invoice records, but the numbering configuration is a setting you have to carry across deliberately. We covered the wider sequencing of a platform move in which platforms ship an importer and the process itself in the vendor-neutral migration checklist.
FluxBilling issues sequential invoices with a configurable prefix, and keeps proformas as a separate document type with their own numbering, so an abandoned checkout does not consume a tax invoice number. Credit notes reference the invoice they correct rather than the original being edited or removed. Invoices, proformas and credit notes all come out through the same accounting export, in XLSX, CSV, SAGA XML or bulk PDF, with EU VAT allocation handled in the export rather than by hand.
One honest caveat: multi-entity invoicing from a single instance is not something we would point you at today. If you invoice from two legal entities, talk to us about the setup before assuming it is a configuration switch.
See billing features and current pricing. For what happens to these documents at the end of the year, see year-end financial close for hosting businesses.
Nobody chooses a billing platform on invoice numbering, and nobody who has been through a tax inspection with a gappy sequence forgets it. The test is simple: pull your last hundred invoices, sort by number, and look for holes. If there are any, find out why now, while the answer is still in someone's memory.
A chargeback is the customer’s bank deciding for you, taking the money, and charging a fee whether you win or not. Most are communication failures, and three small fixes remove them.
The gap between "this invoice is overdue" and "this server is gone" is a policy, not a feature. Most businesses never write it down, so it exists anyway as whatever the software defaults to.
Getting money in is built carefully. Getting it back out is built in a hurry, and that is where the accounting goes wrong. Four operations that look like one.