Invoice Number Sequence Checker
Paste the invoice number column straight out of your accounting export. You get the missing numbers as a list you can take to your cancelled documents — and the duplicates, which are a different problem entirely.
🔒 Your data never leaves your browser.
The hard part is not finding gaps. It is knowing what a series is.
Real invoice numbers look like INV-2026-0001, 2026/001,
FV/1/2026, 00123. Prefixes, year segments, widths and separators all
differ — and one column often contains several independent sequences at once,
because the year changed, or a second series was opened, or a branch issues its own.
Count them as one and two perfectly healthy sequences come out looking like hundreds of gaps. So this page infers the pattern from the column, splits it into series, and checks each one on its own — and it shows you the split, because confirming it is your call, not ours.
A gap is not a violation. A duplicate is.
Cancelling an invoice leaves a hole in the sequence, and that is normal — most jurisdictions want the void recorded, not the number reused. A gap is therefore reported as something to explain, with the missing numbers listed so you can match them against your cancelled documents.
A duplicate has no innocent reading. Two documents claiming the same identity cannot be reconciled, and any reference to that number is ambiguous. That is reported as an error.
What this page does not claim
Numbering requirements differ by jurisdiction — some mandate a strict unbroken sequence, some require only that gaps be explainable, and even the definition of a "series" varies. This tool reports what is in your column. It does not tell you what your tax authority requires, and every rule below says so.
Every check this tool runs (7 rules)
SEQ-D01 The same number appears twice
A duplicated invoice number cannot be explained to an auditor: two documents claim the same identity, and any reference to that number is ambiguous. Unlike a gap, this has no innocent reading - it is a numbering fault or a duplicated export.
Fix: Find both documents. If one is a re-export of the same invoice, remove it; if they are genuinely different invoices, one has been issued with the wrong number.
Source: Own engineering rules. Numbering requirements differ by jurisdiction - some mandate strict sequence, some require only that gaps be explainable, and the definition of a "series" varies. This tool infers the pattern from the column and reports what it finds; it does not assert what your jurisdiction requires.
SEQ-G01 Gap in the sequence
One or more numbers are missing from an otherwise continuous run. A gap is NOT automatically a violation - a cancelled or voided invoice legitimately leaves a hole, and most jurisdictions expect the void to be recorded rather than the number reused. What matters is that every gap can be accounted for.
Fix: Check each missing number against your cancelled and voided documents.
Source: Own engineering rules. Numbering requirements differ by jurisdiction - some mandate strict sequence, some require only that gaps be explainable, and the definition of a "series" varies. This tool infers the pattern from the column and reports what it finds; it does not assert what your jurisdiction requires.
SEQ-S01 More than one series in this column
The values fall into several independent sequences - different prefixes, years or branch codes. Each is checked on its own. This is normal and usually correct, but it is worth confirming the split is the one you intended: counting several series as one is how a healthy set of books looks full of gaps.
Source: Own engineering rules. Numbering requirements differ by jurisdiction - some mandate strict sequence, some require only that gaps be explainable, and the definition of a "series" varies. This tool infers the pattern from the column and reports what it finds; it does not assert what your jurisdiction requires.
SEQ-W01 The number part changes width
Some numbers are zero-padded to one width and some to another - 0007 alongside 007. They sort differently as text, which breaks the ordering in any system that treats the reference as a string, and it makes the series look like two.
Fix: Pad the whole series to one width.
Source: Own engineering rules. Numbering requirements differ by jurisdiction - some mandate strict sequence, some require only that gaps be explainable, and the definition of a "series" varies. This tool infers the pattern from the column and reports what it finds; it does not assert what your jurisdiction requires.
SEQ-O01 Rows are not in numerical order
The numbers are present but the rows do not ascend. That is harmless in a spreadsheet and not harmless in an export meant to reflect issue order - a number issued out of order suggests documents were created retrospectively.
Source: Own engineering rules. Numbering requirements differ by jurisdiction - some mandate strict sequence, some require only that gaps be explainable, and the definition of a "series" varies. This tool infers the pattern from the column and reports what it finds; it does not assert what your jurisdiction requires.
SEQ-P01 Could not read a number from this row
The value has no recognisable numeric section, so it takes no part in the continuity check. Rows like this are usually headers, blank separators or notes that ended up in the column.
Source: Own engineering rules. Numbering requirements differ by jurisdiction - some mandate strict sequence, some require only that gaps be explainable, and the definition of a "series" varies. This tool infers the pattern from the column and reports what it finds; it does not assert what your jurisdiction requires.
SEQ-V01 Sequence is continuous
Every number between the lowest and highest is present exactly once.
Source: Own engineering rules. Numbering requirements differ by jurisdiction - some mandate strict sequence, some require only that gaps be explainable, and the definition of a "series" varies. This tool infers the pattern from the column and reports what it finds; it does not assert what your jurisdiction requires.
Own engineering rules — no standards body publishes a cross-jurisdiction numbering specification. What is checked is the column in front of it.