Integration with Other Modules
Inventory workspace access controls what the employee can see and do. The background POS and Accounting integrations below continue for authorised transactions even when that emplo...
Inventory workspace access controls what the employee can see and do. The background POS and Accounting integrations below continue for authorised transactions even when that employee cannot open the POS or Accounting workspace. Dependency permissions never grant another module's navigation by themselves.
Accounting Integration
When the Accounting module is enabled, inventory stock movements automatically create General Ledger entries through an event-driven system:
- Stock received → Debits Inventory account, credits the appropriate account
- Stock sold → Debits COGS account, credits Inventory account
- Stock adjusted → Creates adjustment journal entries
This happens via the StockMovementRecorded event, which the Core module's InventoryGLListener picks up and processes.
Each product can be linked to specific GL accounts:
- Inventory Account — where stock value is recorded (asset)
- COGS Account — where cost of goods sold is recorded (expense)
- Revenue Account — where sales revenue is recorded (income)
Receipt origin matters. A manual Inventory receipt normally debits Inventory and credits the configured receipt offset account. A Procurement goods receipt debits Inventory and credits GRNI so the later supplier invoice can clear GRNI into Accounts Payable without receiving the stock twice.
Procurement Integration
When Procurement is enabled:
- A Procurement goods receipt uses Inventory products, locations, batches, serials, and stock movements.
- Receipt-linked supplier-invoice stock lines clear GRNI and do not create a second stock receipt.
- Direct stock invoices without a prior receipt may use the product or default Inventory account and can receive through Accounting's bill workflow.
- Receipt/invoice value differences that cannot clear GRNI exactly are marked for review rather than silently creating an Accounting bill.
- Service and non-inventory lines use the configured purchase-expense account and do not change stock.
POS Integration
When the POS module is enabled:
- POS sales automatically deduct inventory using the stock service.
- If FEFO is enforced, POS sales deduct from the earliest-expiring batch.
- Stock levels update in real time after each sale.
Pharmacy Integration
When the Pharmacy module is enabled:
- Products used in pharmacy must be type Goods, active, and sellable.
- Batch tracking, expiry tracking, and FEFO are enforced and cannot be disabled.
- Serial tracking can be used for high-value pharmaceutical items.
Asset Management Integration
Procurement and Accounting can hand qualifying purchases into Asset Management, but an Inventory product is not automatically a fixed asset. Keep resale stock in Inventory and use Asset Management for controlled assets that are capitalized, assigned, depreciated, audited, impaired, or disposed.