Document Types
A document type declares that a pair of your datastores — a header and its lines — behaves as a transactional document. Sales invoice, purchase order, quotation, despatch note, credit note: the same shape each time.
Where to find it
Architect Panel → ERP - Setup:
- Documents — the console — work with actual documents
- Document Types — declare a type and point it at a binding
- Document Conversion Map — which field becomes which when one type becomes another
Architect Panel → Data:
- Record Numbering — the number scheme that allocates references
The engine owns no data
A document type stores no records of its own. It points at a binding whose header and line roles name your datastores.
So adopting documents requires migrating nothing — an existing orders datastore can be declared a document type and carry on holding exactly the same rows.
Defining one
Each type carries a name, its binding, and its direction — sales-side or purchase-side. Direction matters because it determines the sign of any stock movement or ledger posting the document produces: a despatch takes stock out, a goods receipt puts it in.
Numbering
Pair each type with a number scheme so references are allocated rather than typed. A predictable sequence per type per entity is what auditors expect, and it removes an entire category of duplicate-reference problems.
Choosing your types
Declare a type per genuinely different lifecycle, not per layout variation.
A pro-forma following exactly the same path as a normal invoice is a flag on the invoice, not a separate type. Two types sharing a status list and a conversion map are usually one type wearing two hats — and every extra type multiplies the transitions and maps you have to maintain.
Worked example
A distributor declares four types: Quotation, Sales Order, Despatch Note and Sales Invoice, all sales-side, each over its own header and lines datastores which already existed. Each gets a number scheme. Credit Note is a fifth type because its lifecycle genuinely differs — it can only be raised against an invoice.
Recommendations
- One type per lifecycle, not per layout.
- Always pair with a number scheme.
- Set direction deliberately — it drives the sign of everything downstream.
- Declare existing datastores as types rather than building new ones.