Sector-Agnostic
Inventory at Scale
A high-performance backbone for managing physical and digital assets across any sector. Powers Hospitality, Ticketing, and Retail with atomic concurrency, a unified financial ledger, dynamic attributes, and a built-in barcode engine.
The Backbone of Every Sector Plugin
The Universal Inventory Engine handles database schema, availability calculations and audit trails so every sector plugin — from Hotels to Ticketing to Retail — can focus purely on its unique business rules and tailored UI.
Key Architectural Features
Six engineering decisions that make double-bookings impossible and scale inevitable.
Dynamic Attributes
Define custom fields per item type without altering the database schema. Fully extensible at runtime.
- No schema migrations needed
- Per-type attribute definitions
- Example: "Bed Type" for rooms
- Example: "Horsepower" for vehicles
- Type-safe field validation
Atomic Concurrency
Implements SELECT FOR UPDATE SQL locks. Double-bookings are mathematically impossible under any load.
- Row-level SQL locking
- High-concurrency safe
- Returns Reservation ID on success
- Returns
falseon conflict - Zero race condition exposure
Hierarchical Nodes
Items belong to infinitely nestable categories, enabling complex taxonomy trees for any industry.
- Unlimited nesting depth
- Taxonomy tree builder
- Parent-child inheritance
- Custom attributes per level
- Sector-agnostic by design
Unified Ledger
Seamlessly binds Revenue, Payroll and Expenses into a single chronological financial ledger across all modules.
- Revenue tracking
- Payroll entries
- Expense records
- Chronological audit trail
- Cross-module consolidation
Label Generation
Built-in CODE128 barcode engine. Generate and print warehouse-ready labels directly from the item view.
- CODE128 barcode standard
- Print-ready label layout
- One-click from item view
- Batch label generation
- Warehouse-optimised output
Data Portability
Enterprise-grade CSV exports for all Inventory Items and the complete Unified Transaction history.
- Full item catalogue export
- Complete transaction history
- CSV format compatibility
- External accounting support
- Scheduled export capability
Architecture
Philosophy
The engine follows a strict separation of concerns — the core handles infrastructure, sector plugins handle identity. This prevents code duplication and guarantees consistency across every domain the engine powers.
Core Engine Owns
Database schema design, availability calculations, atomic reservation locks, audit trail generation and financial ledger entries.
Sector Plugins Own
Unique business rules, domain-specific UI components, customer-facing flows, and integration with third-party APIs specific to their vertical.
Integration Layer
Standard PHP Hook actions bridge communication between the core engine and any number of registered peripheral plugins cleanly and securely.
Consistency Guarantee
Any plugin using the engine inherits zero-duplication logic, identical locking behaviour and a shared audit trail with zero additional engineering.
Operational Workflow
Three steps from initial configuration to live reservation management.
Define Typology
Create base item types (e.g., "Room", "Event Ticket") and attach required custom attributes in the Categories tab. No schema changes needed.
Provision Assets
Upload or manually input physical and digital assets into the Items Master view. Set base stock quantities, pricing and fill out custom attribute values.
Process Reservations
Manage active locks, releases and confirmations via the Reservations interface. The atomic engine prevents conflicts automatically.
Don't manually insert records if you are using a Sector Plugin. Instead, navigate to the Data Sync page — external plugins push their localised elements into the core engine cleanly and securely, avoiding duplicate records and schema conflicts.
Core Modules & Pages
The engine is divided into logical modules. Here is what each page accomplishes.
Core Inventory
- Categories & Types
Define what you are managing (e.g. "Hotel Room", "Event Ticket"). Attach custom data attributes like "Bed Size" to each type.
- Items Master
Main registry of all physical and digital units. Set stock quantities, pricing and custom attribute values. Supports barcode/label printing.
- Data Sync
Central hub for importing item data from connected Sector Plugins. Replaces manual data entry completely.
- Data Export
Export your full catalogue or complete transaction history to CSV for external analysis or accounting workflows.
Operations & Ledger
- Reservations Interface
Manage active locks, releases and confirmations. Powered by atomic SQL transactions — conflicts are impossible by design.
- Unified Financial Ledger
Revenue, Payroll and Expenses in a single chronological ledger. All sector plugin transactions flow here automatically.
- Business ERP Dashboard
High-level financial summaries, stock levels, reservation status and cross-sector analytics in one view.
- Audit Trail
Full chronological log of every inventory event — creation, update, reservation, release and financial entry.
Internal Integration API
Standard PHP Hook actions used for inter-plugin communication. Sector plugins register and consume these hooks to interact with the core engine.
| Hook Signature | Type | Behaviour |
|---|---|---|
| inventory_register_types | Action | Triggered to bulk-sync type schemas from peripheral plugins into the core engine's type registry. |
| inventory_reserve | Action | Executes the central atomic lock via SELECT FOR UPDATE. Returns a Reservation ID on success, or boolean false on conflict. |
| inventory_release | Action | Frees an existing lock array, incrementing available_qty for the affected items. |
| inventory_register_sources | Filter | Crucial filter to register bridging classes for the Manual Sync UI. Sector plugins use this to surface their data in the Data Sync hub. |
The most critical hook. Any sector plugin that needs to lock a unit must call this action. The engine's atomic SQL layer guarantees that concurrent calls cannot both succeed for the same item, making inventory conflicts impossible.
Register your plugin's bridging class here to appear as a source in the Data Sync hub. This is the correct way to push data from a Sector Plugin — never insert directly into the engine's tables.
Business ERP System
The engine acts as the financial backbone for every connected sector plugin.
Revenue Ledger
All confirmed reservation revenues from every sector plugin flow into a unified, chronological revenue ledger with full audit trail.
Payroll Entries
Payroll and staff cost events are recorded directly into the unified ledger alongside revenue, providing true P&L visibility.
Expense Tracking
Operational expenses are bound into the same ledger, enabling cross-sector financial reporting without spreadsheet exports.
ERP Dashboard
Consolidated view across all connected plugins. Track stock, reservations, revenue and expenses in a single management panel.
Compatible Sector Plugins
Any plugin that registers via the hook API becomes a first-class citizen of the engine.
Key Engine Features
What makes the Universal Inventory Engine the right foundation for every plugin.
Zero Double-Bookings
Row-level SELECT FOR UPDATE SQL locks make concurrent reservation conflicts mathematically impossible, even under extreme load.
Schema-Free Custom Fields
Add "Bed Type", "Horsepower", or any domain-specific field to any item type without touching the database schema or running migrations.
Infinite Category Trees
Build taxonomy hierarchies of unlimited depth. Hospitality, ticketing, retail — any industry's classification needs are handled natively.
Built-in Barcode Engine
Generate CODE128 barcodes and warehouse-ready printed labels for any inventory item directly from the item view — no external tools needed.
Universal Data Sync
Sector plugins push data cleanly through the Sync hub. No direct table inserts — the engine's integrity layer stays intact across all connected modules.
Unified Financial Ledger
Revenue, Payroll and Expenses from every connected sector plugin bind into one chronological ledger, giving you a complete ERP view without extra tooling.