Document numbering
How Winlium gives each document its number, and where an administrator changes the number format.
In one minute
Every document in Winlium, such as a delivery order or a purchase order, gets a unique number when you save it. An administrator can choose the prefix, the length, an optional date and when the count restarts. A change only affects the next number. Numbers already issued never change.
Why Winlium has it
Each business writes its numbers differently. One company wants PO-001-20261006. Another wants PO/0001/2026. Winlium lets each company set its own format, and it guarantees that two documents never share a number, even when two people save at the same moment.
How it works in Winlium
Each document type has one numbering scheme per company. Winlium builds the number from these parts, in this order: prefix, branch code (only for per-branch numbering), date (if you put it before the number), the running number, date (if you put it after the number), then the suffix.
Example parts: prefix PO, separator -, length 3, date after the number. Winlium renders PO-043-20261006.
Settings in the editor
Open the settings page of the module (see the table of locations below), find Document Numbering, and select Edit on a row.
Screenshot pending
Numbering editor for a document type, showing mode, prefix, suffix, separator, number length, date and restart options
- 1Next number will look like
- 2Mode
- 3Save numbering
| Field | Type | Required | Details |
|---|---|---|---|
| Mode | Dropdown | Yes | System-generated: Winlium assigns the number and rejects any number you type. Entered manually: you must type a number and Winlium never generates one. Either: Winlium generates one unless you type one. System-generatedEntered manuallyEither |
| Prefix | Text | No | Hidden when Mode is Entered manually. Up to 12 characters. |
| Suffix | Text | No | Up to 12 characters. Added at the very end with no separator, so "/2026" works. |
| Separator | Text | No | Default: - Up to 3 characters. Leave empty to run the parts together, for example SPB0015. |
| Number length | Number | Yes | From 1 to 12. The running number is padded with zeros to this many digits. |
| Include date | Dropdown | Yes | The date comes from the company business date. No dateYear (2026)Year + month (202608)Full date (20260806) |
| Date position | Dropdown | Shown when a date is included | Before the numberAfter the number |
| Restart numbering | Dropdown | Yes | A new period starts again at 1. NeverEvery yearEvery monthEvery day |
| Numbering scope | Dropdown | Yes | Disabled for document types that have no branch. One series for the companyA separate series per branch |
| Force uppercase | Yes/No switch | No | Shows the whole number in capitals. |
| Reason for the change (optional) | Text | No | Up to 500 characters. Saved in the numbering audit log. |
Checks Winlium makes when you save
- Per branch on a type with no branch. Winlium refuses: "Document type cannot be numbered per branch: this document type has no branch to key on...". Use One series for the company.
- Too short to stay unique. With no prefix, no suffix, no date and a length under 3, Winlium refuses and asks you to add a prefix or raise the length to at least 3.
- Restart without a matching date. This is a warning, not an error. A yearly restart with no year in the number repeats numbers each year. Add a date or choose Never.
- Changing Restart numbering starts a new series at 1 for the next period.
Where each document type is set
| Settings page | Document types you can configure |
|---|---|
| Inventory Settings | Delivery Order, Goods Receipt Voucher, Stock Request Transfer, Stock Request Receipt, Return to Supplier, Inventory Transfer, Inventory Count, Inventory Journal Batch, Inventory Credit Note, Price Update Batch, Inventory Item |
| Purchase Settings | Purchase Order, Request for Quotation |
| Requisition Settings | Requisition, Requisition Delivery |
| Manufacturing Settings | Manufacturing Order, Update Cost, Production Yield Adjustment |
| Sales Settings | Sales Quotation, Sales Order, Sales Lead |
| Project Settings | Project Invoice, Job Card, Project |
Factory formats
These are the formats a company has until an administrator changes them.
| Document | Example number | Notes |
|---|---|---|
| Delivery Order | DO-001 | |
| Goods Receipt Voucher | GRV-0001 | |
| Stock Request Transfer / Receipt | SRT-001 / SRR-001 | |
| Return to Supplier | RTS-001 | |
| Inventory Transfer | TR-001 | |
| Inventory Credit Note | ICN-001 | |
| Inventory Count, Inventory Journal Batch, Price Update Batch | 001 | No prefix |
| Inventory Item | ITM-0001 | Mode: Either |
| Supplier Bill | SPB0001 | No separator |
| Purchase Order | PO-001-20261006 | Date after the number |
| Request for Quotation | RFQ-20261006-001 | Date before the number |
| Requisition / Requisition Delivery | REQ-001 / DEL-001 | |
| Manufacturing Order | MFG-MFO-001 | |
| Update Cost | UPC-001 | Mode: Either |
| Production Yield Adjustment | MFG-PYA-001 | Mode: Either |
| Sales Quotation / Order / Lead | SLQ-20261006-000001, SO-..., SLD-... | Length 6, restarts every day |
| Project Invoice / Job Card / Project | PINV-0001 / JC-0001 / PRJ-0001 |
Example
Example only. Adaeze Foods in Ikeja wants purchase orders to restart each year and carry the year. She opens Purchase Settings, selects Edit on Purchase Order, sets Include date to Year (2026), Date position to After the number, and Restart numbering to Every year. Next number will look like shows PO-001-2026. She selects Save numbering. Her next order is the first of the year, PO-001-2026. In January 2027 the count begins again at PO-001-2027.
Where it applies
- The six settings pages in the table above, each in its own Document Numbering section.
- Counters are per company. Two companies on the same Winlium never share a count.
- With A separate series per branch, each branch has its own count and the branch code appears in the number.
- Numbers are given when the document is saved, not when you open the form. The preview on a form is a guess, because someone else may save first.
- A failed save does not use up a number. Deleting a document does not free its number for reuse, because the counter only moves forward.
- Winlium takes the date from the company business date, not the computer clock.
Common mistakes
- Changing the prefix and expecting old documents to change. They keep their numbers.
- Typing a number when Mode is System-generated. Winlium rejects it with: "Document type numbering is set to Internal, so the number is assigned by the system and cannot be supplied".
- Leaving a number blank when Mode is Entered manually. Winlium says a number must be supplied.
- Looking for Document Numbering in Accounting Settings or Expense Settings. It is not there today.
- Choosing a yearly restart without a year in the format.
- Entering an item code that is already in use. Winlium says: Item code "code" is already used by "item name". Item codes must be unique within a company, regardless of letter case.