Modules
A module is an operational capability — a kind of record that does something, moves stock, and progresses through a lifecycle. Where master data is the set of stable nouns, modules are the verbs: placing a purchase order, producing finished goods, shipping a sale.
The defining idea of the Pharus architecture is that each module is independent. Each one has its own lifecycle and its own well-defined effect on inventory. You can adopt a module on its own, and you can combine modules in different ways depending on how your business runs — that's what the Pipelines section is about.
Orders
The four order modules each represent a commitment that plays out over time.
| Module | In one line |
|---|---|
| Purchase Orders | Buy materials or finished goods from a vendor |
| Work Orders | Send materials out for contract assembly and get products back |
| Production Orders | Subcontract full manufacturing of a product |
| Sales Orders | Commit to ship products to a customer |
Inventory
The inventory modules are the running record of stock.
| Module | In one line |
|---|---|
| Materials Inventory | The ledger of raw-material stock |
| Finished Goods Inventory | The ledger of product stock |
| Inventory Transfers | Move stock between locations |
How modules touch inventory
Every order module ultimately writes to one or both inventory ledgers. Rather than flipping a single stock number, each event is appended as a ledger entry, and the current position is derived by summing those entries. The vocabulary is shared across modules:
- ORDER — quantity placed but not yet received (an expectation).
- RECEIVE — stock arriving into a location.
- DEMAND — quantity committed out (a customer order, a production input).
- ALLOCATE — committed quantity set aside for a specific job.
- CONSUME — stock actually used up or shipped.
- PRODUCE — finished goods created by a work or production order.
- TRANSFER, ADJUST, DISPOSE — manual movements and corrections.
Each module's page spells out exactly which of these it writes and when. The inventory pages explain how the events sum into on-hand, on-order, demand, and allocated positions.
Everything here is reachable through the REST API and the MCP server.