Purpose
The Inventory module provides real-time tracking and management of physical inventory for all catalog items. Track stock levels, reserve materials to jobs, and maintain accurate valuations with comprehensive integration across procurement and project workflows.
โก Recent System Update: The inventory system has been rebuilt for performance. You can now load 5,000+ inventory records instantly with smooth filtering and search. The "Products & Services" module has been renamed to Catalog, and "Use" terminology has changed to Deplete throughout the system.
List View
View and manage all inventory records with real-time stock levels and valuations
- View all physical inventory with instant loading of thousands of items
- Track stock quantities, reserved quantities, and available inventory
- Monitor weighted average cost and total valuation for each item
- Filter by location, catalog category, or inventory status
- Generate reports for inventory as of date, sold, and received quantities
View Options
Display all inventory records
The Inventory module displays all physical inventory records with instant loading capability. View thousands of inventory items with real-time stock levels, reserved quantities, unit of measurement, weighted average cost, and total valuation. The system provides performance improvements allowing you to view your entire inventory instantly without filters or pagination.
| Column | Description |
|---|---|
| Item Name | Catalog item name linked to this inventory record |
| Inventory | Total physical quantity currently on hand (Stock + Reserve) |
| Unit of Measurement | How the item is tracked in inventory (each, lineal feet, bags, boxes, etc.) |
| Location | Physical location where inventory is stored (optional field) |
| Valuation | Total dollar value of inventory on hand calculated using weighted average cost |
Search Options
Search inventory records by item name, catalog category, location, or other criteria to quickly locate specific inventory items.
| Search Option | Description |
|---|---|
| Item Name | Search by catalog item name or partial name match |
| Location | Filter inventory by physical storage location |
| Category | Filter by catalog category or product type |
Advanced Filters
Use Advanced Filter to create complex queries based on stock levels, valuation, location, or any combination of inventory fields. Save frequently used filters for quick access.
Common Filter Examples:
- Items with stock below minimum threshold
- Inventory at specific location
- Items with valuation above certain amount
- Reserved inventory for active jobs
- Items needing reorder based on min/max settings
Actions
Perform actions on inventory records from the list view or selected record view.
| Action | Description |
|---|---|
| View Reports | Generate inventory reports from Gear menu including Inventory As Of, Sold, and Received |
| Data Grid | Customize visible columns, sort order, grouping, and pinned fields |
| Export | Export inventory data to Excel or CSV format |
| Advanced Filter | Create and save complex inventory queries |
Selected Record View
Detailed view of individual inventory records with stock levels, reserve quantities, and valuation
When an inventory record is selected from the list view, the Selected Record section displays detailed information about stock quantities, reserved quantities, weighted average cost, total valuation, and location. View related jobs or contracts that have reserved inventory, and generate item-specific reports.
Inventory Details
Inventory is divided into two categories: Stock represents available inventory not yet designated to any job or contract, while Reserve represents inventory set aside for specific jobs or contracts.
| Stock | Available inventory quantity that can be pulled for jobs or sold directly. Not yet designated to any specific job or contract. |
| Reserve | Inventory quantity designated to specific jobs or contracts. Reserved items are still physically in inventory but allocated to particular work orders. |
| Total Inventory | Combined quantity of Stock + Reserve representing total physical inventory on hand |
The system calculates inventory valuation using weighted average cost methodology. Each time inventory is received through purchase orders, the system recalculates the weighted average cost based on the quantity and price paid.
| Weighted Average Cost | Unit cost calculated by averaging all received inventory costs weighted by quantity. Updates automatically when new inventory is received. |
| Valuation | Total dollar value calculated by multiplying total quantity by weighted average cost (Quantity ร Unit Cost = Valuation) |
Note: Weighted average cost methodology provides accurate valuation when receiving inventory at different price points. The system automatically adjusts the average cost as new inventory is received.
Location tracking is an optional feature that allows you to specify where inventory is physically stored. Locations can represent aisles, rooms, storage areas, bins, buildings, vehicles, or job sites.
| Location | Physical storage location for inventory items (optional field) |
| Location Restrictions | When enabled, jobs can be restricted to pull inventory only from specific locations unless override permissions are granted |
View all jobs or contracts that currently have reserved inventory for this item. Click to navigate to specific job records to see quantities and depletion status.
Displayed Information:
- Job or contract name and number
- Reserved quantity for each job
- Depleted quantity (items already used)
- Link to view full job details
Inventory Reports
Generate a report showing inventory valuation as of any specific date. This report displays quantities and valuations for all items based on historical data, allowing you to view inventory status at any point in time.
Report Includes:
- Item name and catalog information
- Quantity on hand as of specified date
- Weighted average cost as of date
- Total valuation for each item
Generate a report showing how much inventory was sold or depleted within a specified date range. View both quantity counts and valuation for items depleted during the period.
Report Includes:
- Item name and catalog information
- Quantity depleted within date range
- Weighted average cost for depleted items
- Total valuation of depleted inventory
- Breakdown by job or contract if needed
Generate a report showing how much inventory was received within a specified date range. View quantity counts and valuation for items received through purchase orders.
Report Includes:
- Item name and catalog information
- Quantity received within date range
- Purchase price for received items
- Total valuation of received inventory
- Related purchase order information
Frequently Asked Questions
Common questions and step-by-step guidance for working with inventory
Product Setup & Management
Creating an inventory product in the Catalog module requires only a description field, with all other fields optional for flexible product setup.
- Navigate to Catalog module in the top navigation
- Click the + (Plus Icon) to create a new catalog item
- Enter the Description field (required)
- Optionally configure additional fields: ID, SKU, Unit, Default Cost, Markup
- Check the Stock checkbox to enable inventory tracking for this item
- Assign a Vendor if this item has a preferred supplier
- Configure GL Accounts under the Accounting tab if using TRUE Accounting
- Click Save to create the product
Optional Configuration:
- Reorder Min/Max: Set automatic reorder thresholds
- Default Location: Assign a physical storage location
- Vendor-Specific Pricing: Configure different prices per vendor
- Unit of Measurement Conversions: Define purchase, inventory, and sales unit relationships
Note: Only the description field is mandatory. You can create a basic product and enhance it with additional details later as needed.
These three checkboxes control key inventory behaviors for catalog products, determining how items are tracked and displayed throughout the system.
| Checkbox | Purpose & Behavior |
|---|---|
| Archive | Marks the product as inactive without deleting it from the system. Archived products no longer appear in product searches or selection lists but preserve all historical data. Use this for discontinued items or seasonal products no longer in active use. |
| Stock | Indicates this item is used for stock and inventory purposes. When checked, the system enables inventory tracking, stock pulls, reserve quantities, and depletion workflows. Products without this checkbox are treated as non-inventory items (services or intangibles). |
| Unique | Enables serialized tracking for items requiring individual identification. Use for high-value equipment, assets, or items with serial numbers that must be tracked individually rather than as bulk quantities. |
Tip: Use Archive instead of deleting products to preserve historical job costing, purchase order records, and inventory transactions for reporting and audit purposes.
The price book import/export feature allows you to update catalog item pricing, costs, and quantities in bulk using Excel or CSV files rather than editing each product individually.
Export Price Book:
- Navigate to Catalog module
- Click the Gear icon in the top right
- Select Export Price Book
- System generates a CSV/Excel file with all catalog items
- Open file and review current pricing, costs, and quantities
Import Price Book:
- Make updates to the exported file (pricing, costs, on-hand quantities)
- Save the file in CSV or Excel format
- Navigate to Catalog module
- Click the Gear icon in the top right
- Select Import Price Book
- Upload your modified file
- System validates and applies bulk updates to matching products
- Review import results and verify changes applied correctly
Tip: Use the export/import workflow when implementing price changes across multiple products, updating vendor costs after negotiations, or performing initial inventory setup with on-hand quantities.
On-hand inventory quantities can be updated manually for individual items or in bulk using the price book import process. Use these methods for initial inventory setup or periodic physical count adjustments.
- Navigate to Catalog module
- Open the product you want to update
- Locate the Inventory section
- Click Add Inventory button
- Enter the quantity to add to current stock
- Optionally enter a cost for valuation purposes
- Click Save to update inventory levels
- Export the price book from Catalog module
- Open the exported file in Excel or CSV editor
- Update the on-hand quantity column for each product
- Update the default cost column if needed for valuation
- Save the file
- Import the price book using the import function
- System updates all inventory quantities in bulk
- Navigate to Catalog module
- Open the product requiring adjustment
- Click Shrinkage button
- Enter the quantity to reduce from current stock (for loss, damage, theft)
- Enter notes explaining the adjustment
- System reduces inventory and creates audit trail
Note: Manual quantity adjustments should be used for physical count corrections, initial setup, or shrinkage. Normal inventory increases should come from receiving purchase orders to maintain accurate cost tracking.
General Ledger (GL) account assignment for inventory items controls where transactions post in TRUE Accounting. Each product can have three GL accounts: Revenue (for invoices), Cost of Goods Sold (for bills), and Inventory Asset (for stock tracking).
- Navigate to Catalog module
- Open the product to configure
- Click the Accounting tab
- Assign Revenue Account (posts when item appears on AR invoices)
- Assign COGS Account (posts when item appears on vendor bills)
- Assign Inventory Account (posts for stock tracking and valuation)
- Click Save to apply GL account assignments
GL Account Types Explained:
- Revenue Account: Income account credited when this item is sold on customer invoices
- COGS Account: Expense account debited when this item is purchased on vendor bills
- Inventory Account: Asset account tracking the value of stock on hand (typically account 2000)
- Accounts cascade from Company Preferences defaults if not set per product
Tip: If you don't assign GL accounts at the product level, the system uses defaults from Settings โ Company Preferences โ Chart of Accounts. Configure defaults there for consistent account usage across all products.
Both ID and SKU are optional identifier fields for catalog products, but they serve different purposes in inventory management and product identification.
| Field | Purpose & Usage |
|---|---|
| ID | Internal company identifier or part number used within your organization. This may be a custom numbering system, manufacturer part number, or internal reference code. The ID field is searchable throughout the system and appears on reports. |
| SKU | Stock Keeping Unit - typically used for retail or warehouse identification. This is often a barcode-compatible identifier used for inventory scanning, e-commerce integration, or warehouse management. SKU is also searchable and appears in inventory reports. |
When to Use Each Field:
- Use ID for manufacturer part numbers, vendor codes, or internal numbering systems
- Use SKU for barcode labels, warehouse location codes, or e-commerce product identifiers
- Both fields are optional - you can use one, both, or neither depending on your needs
- Search works with both fields, so use whichever makes sense for your business processes
Note: Many companies use ID for manufacturer part numbers and SKU for their own internal warehouse codes, allowing easy cross-reference between vendor catalogs and internal inventory systems.
Core Concepts
Inventory is divided into two categories that determine how items are allocated and tracked.
Stock:
- Available inventory not designated to any job or contract
- Can be pulled for new jobs or sold directly
- Represents unallocated physical inventory on hand
- Shows in stock count when performing stock pulls
Reserve:
- Inventory designated to specific jobs or contracts
- Still physically in inventory but allocated to particular work
- Prevents double-allocation of inventory across multiple jobs
- Can be returned to stock if job requirements change
Note: Total inventory equals Stock + Reserve. When performing stock pulls from jobs, the system moves inventory from Stock to Reserve to designate it for that specific job.
Catalog & Unit of Measurement
The Products & Services module has been renamed to Catalog. All functionality remains the same, but the module name has been updated to better reflect its purpose as your product and service catalog.
How to Access:
- Click Catalog in the top navigation
- View all catalog items with inventory tracking enabled
- Manage unit of measurement conversions and pricing
Unit of measurement conversions allow you to define how items are inventoried, purchased, and sold using different units. This is useful when vendors sell in bulk but you inventory by individual pieces, or when you sell by one unit but purchase in another.
Steps to Configure:
- Navigate to Catalog module
- Open the catalog item you want to configure
- Locate the Unit of Measurement section
- Define Inventory UOM (how you track it)
- Define Purchase UOM and conversion (how vendor sells it)
- Define Sales UOM and conversion (how you sell it)
- System will automatically convert between units in POs, jobs, and inventory
Common Examples:
- Inventory: Track as individual pieces (Each)
- Purchase: Vendor sells in bags of 100 pieces (1 bag = 100 each)
- Sales: Sell individually or by bag (1 bag = 100 each)
- When you order 1 bag on PO, system adds 100 pieces to inventory
- Inventory: Track as linear feet (LF)
- Purchase: Vendor sells in rolls of 200 LF (1 roll = 200 LF)
- Sales: Sell by linear feet (LF)
- When you order 1 roll on PO, system adds 200 LF to inventory
- Inventory: Track as individual tubes (Each)
- Purchase: Vendor sells in cases of 12 tubes (1 case = 12 tubes)
- Sales: Sell by linear feet of coverage (1 tube = 14 LF)
- System converts between tubes, cases, and linear feet automatically
Tip: If many items follow the same pattern (like all fittings sold in bags of 100), you can copy and paste unit of measurement settings between catalog items to save time.
If unit of measurement is not explicitly configured for a catalog item, the system defaults to Each (EA) with 1:1 conversion across inventory, purchasing, and sales. This means one unit purchased equals one unit in inventory equals one unit sold.
When Default is Sufficient:
- Items purchased, inventoried, and sold as individual units
- No need for bulk or unit conversions
- Simplified inventory tracking without unit complexity
Job Workflows
Stock pulls move inventory from Stock to Reserve, designating it for a specific job or contract. This prevents double-allocation and tracks which jobs have inventory set aside.
- Open the Job record
- Navigate to Items mode
- Locate the catalog item you want to pull stock for
- Click Stock Pull button or action
- Enter quantity to pull from stock
- System moves quantity from Stock to Reserve
- Reserved inventory now appears in job's inventory list
Note: If location tracking is enabled and the job is assigned to a specific facility, stock pulls may be restricted to that location unless override permissions are granted.
Depleting inventory (previously called "Used") removes inventory from stock and marks it as consumed for a specific job. The system has renamed "Used" to "Deplete" for clarity. Multiple methods are available depending on your workflow.
- Open the Job record
- Navigate to Items mode
- Click View Inventory button
- Select items to deplete with checkboxes
- Enter quantities to deplete
- Click Deplete action button
- System removes quantity from Reserve first, then Stock if needed
- Open the Job record
- Navigate to Inventory mode
- View reserved and depleted inventory lists
- Select items from reserved inventory
- Enter quantities to deplete
- Click Deplete button
- Items move from reserved to depleted status
- Create or open a Ticket for the job
- Ensure ticket outcome is set to Deplete Inventory
- Add line items to ticket from job catalog items
- Enter quantities used in ticket line items
- Complete and save ticket
- System automatically depletes specified quantities when ticket is processed
- Create Material records from job items
- Link materials to catalog items
- Enter quantities depleted
- Save material records
- System depletes inventory based on material record quantities
- Open the Job record
- Navigate to Items mode or Inventory mode
- Click Deplete Reserved Inventory action
- System depletes all reserved inventory for the job at once
- Use when job is complete and all reserved inventory has been used
Tip: The system depletes from Reserve first, then automatically pulls from Stock if additional quantity is needed. Choose the depletion method that best matches your workflow.
If job requirements change or reserved inventory is no longer needed, you can return reserved items back to stock to make them available for other jobs.
- Open the Job record
- Navigate to Inventory mode
- View reserved inventory items
- Select items to return with checkboxes
- Enter quantities to return
- Click Return action button
- System moves quantity from Reserve back to Stock
View reserved and depleted inventory for any job from the job record's Inventory mode or Items mode.
- Open the Job record
- Navigate to Items mode
- Click Refresh icon to update procurement counts
- View procurement status for each item
- Click View Inventory to see detailed inventory breakdown
- Open the Job record
- Navigate to Inventory mode
- View Reserved tab for inventory designated to this job
- View Depleted tab for inventory already used
- See quantities, valuations, and related actions
Reports
The Inventory As Of report shows inventory quantities and valuations as of any specific date, useful for financial reporting, audits, and historical analysis.
- Navigate to Inventory module
- Click Gear icon in top right
- Select Reports
- Choose Inventory As Of report
- Enter the date for the report
- Optionally filter by location or category
- System generates PDF with quantities, costs, and valuations as of that date
Tip: Use this report for month-end financial reporting by running it as of the last day of each month to track inventory valuation changes over time.
The Inventory Sold report shows which items were depleted during a specified date range, including quantities and valuations.
- Navigate to Inventory module
- Click Gear icon in top right
- Select Reports
- Choose Inventory Sold report
- Enter start and end dates for the report
- Optionally filter by location, job, or category
- System generates PDF showing depleted quantities and valuations
The Inventory Received report shows which items were received through purchase orders during a specified date range, including quantities and valuations.
- Navigate to Inventory module
- Click Gear icon in top right
- Select Reports
- Choose Inventory Received report
- Enter start and end dates for the report
- Optionally filter by vendor, location, or category
- System generates PDF showing received quantities, costs, and valuations
Reordering
Set minimum and maximum thresholds in the Catalog to trigger reorder alerts when stock falls below minimum levels. The system can automatically calculate quantities needed to reach maximum levels.
- Navigate to Catalog module
- Open the catalog item to configure
- Locate Inventory section
- Enter Reorder Min quantity (alert threshold)
- Enter Reorder Max quantity (target stock level)
- Save the catalog item
- System will alert when inventory falls below minimum and suggest reorder quantities
Note: Minimum threshold triggers alerts and appears in reorder reports. Maximum threshold helps the system calculate optimal reorder quantities to replenish stock.
The Generate Reorders feature analyzes your inventory against minimum thresholds and creates purchase order requests for items needing replenishment.
- Navigate to Purchase Orders module (or Requests)
- Click Generate Reorders button or action
- System identifies all items below minimum threshold
- Review suggested quantities (calculated to reach maximum levels)
- Adjust quantities as needed
- Select items to include in reorder requests
- System creates purchase order requests grouped by vendor
Tip: Run reorder reports regularly to identify items needing replenishment before they run out completely, preventing delays on jobs.
Reorder reports show all items currently below minimum threshold without requiring you to create purchase order requests immediately.
- Navigate to Catalog module
- Click Gear icon in top right
- Select Reports
- Choose Reorder Report
- System generates PDF listing items below minimum with suggested quantities
- Use report to plan purchasing without creating formal requests
The system can send automatic alerts to team members when inventory falls below minimum thresholds, ensuring timely replenishment.
- Navigate to Settings
- Select Alerts or Notifications
- Locate inventory reorder alerts
- Assign alert to users responsible for purchasing
- Configure alert frequency and thresholds
- Assigned users receive notifications when items need reordering
QuickBooks Integration
QuickBooks has significant limitations on inventory synchronization. QuickBooks only allows inventory changes through itemized invoices and bills, not through direct inventory adjustments.
QuickBooks Limitations:
- Cannot sync inventory depletion outside of invoices
- Cannot sync inventory receiving outside of vendor bills
- Cannot sync stock pulls or reserve designations
- Cannot sync location changes or transfers
- QuickBooks API restricts inventory control to invoice and bill line items only
What Can Sync:
- Invoices with inventory items deplete QuickBooks inventory
- Vendor bills with inventory items increase QuickBooks inventory
- Manual adjustments made directly in QuickBooks
Note: Many clients use TRUE Accounting instead of QuickBooks for full real-time inventory tracking and integration. TRUE Accounting provides complete inventory control without QuickBooks limitations.
TRUE Accounting is a full-blown accounting system built directly into TRUE ERP, providing real-time inventory tracking without synchronization limitations.
TRUE Accounting Advantages:
- Real-time inventory updates without syncing delays
- All inventory actions create automatic journal entries
- Stock pulls, depletions, and receiving post immediately
- Credits, adjustments, and transfers tracked in real-time
- Financial reports always reflect current inventory status
- No separate system to manage or reconcile
- All accounting happens in same system as operations
Tip: Contact TRUE Support to schedule a demo of TRUE Accounting to see how it provides seamless inventory and financial tracking without QuickBooks limitations.
System Updates
Recent system updates have significantly improved inventory performance, allowing you to view thousands of inventory records instantly without filters or pagination.
Performance Improvements:
- View all inventory records instantly (5,500+ items load immediately)
- Faster data grid manipulation with column sorting and filtering
- Improved weighted average cost calculations
- Optimized reporting for As Of, Sold, and Received reports
- Enhanced stock pull and depletion workflows
- Real-time procurement status updates in job items
Note: The backend inventory engine has been completely rebuilt for performance while maintaining the same user interface and workflows you're familiar with.
Several terms have been updated for clarity and consistency across the inventory system.
| Old Term | New Term |
|---|---|
| Products & Services | Renamed to Catalog for clarity |
| Used | Changed to Deplete for inventory depletion actions |
Reason for Changes:
- Catalog: Better reflects the module's purpose as your product and service catalog
- Deplete: More accurate term for removing inventory from stock (vs. ambiguous "used")
With improved performance allowing you to view all inventory at once, this is an ideal time to review and clean up duplicate or outdated records.
Cleanup Process:
- Navigate to Inventory module and view all records
- Use data grid sorting to identify duplicate item names
- Use Advanced Filter to find items with zero inventory
- Review outdated items no longer used
- Contact TRUE Support for assistance merging duplicates or archiving outdated items
- Schedule periodic reviews to maintain clean inventory data
Tip: Contact TRUE Support if you need assistance with inventory data cleanup, merging duplicates, or establishing best practices for ongoing inventory management.
Access to the Inventory module is controlled by user permissions. If you cannot see or access this module:
- Contact your system administrator
- Request the Module Access (Inventory) permission (ID #25)
- Once granted, you'll find the module in the Materials workflow
Note: Administrators can manage permissions in Settings โ Users / Access โ select user โ Access tab.
The Inventory module has several security permissions controlling specific actions:
| Permission | Function |
|---|---|
| Deplete Inventory (ID #1596) | Mark items as Done (used, consumed, installed, sold) |
| Return Items to Stock (ID #1597) | Return items previously marked as Done |
| Delete Inventory (ID #1600) | Permanently delete inventory records |
| Export Inventory (ID #1595) | Export inventory items to Excel |
| Resolve Problem (ID #1598) | Clear problem flags on inventory items |
| Move Inventory to a new Location (ID #1650) | Transfer inventory between locations without Tickets |
| Deny Inventory Costs (ID #1649) | Prevent viewing inventory cost information |
The Alert when Product Reorder Threshold Exceeded permission (ID #1119) notifies users when stock levels fall below the minimum reorder threshold set for each product.
To enable low inventory alerts:
- Navigate to Settings โ Users / Access
- Select the user who should receive alerts (typically Purchasing Manager)
- Go to the Access tab
- Find the Inventory section
- Enable Alert when Product Reorder Threshold Exceeded
- Set minimum reorder thresholds on individual product records in the Catalog
Reserve vs. Deplete Workflow
These are two key workflows for managing inventory on jobs, and understanding when to use each is critical for accurate job costing and inventory tracking.
๐ก Key Benefit: Reserve inventory enables accurate work-in-progress (WIP) tracking, prevents double-booking of materials, and ensures proper job costing throughout the project lifecycle.
Reserve Only Workflow
Use this when materials are set aside for a job but not yet used or delivered:
- Customer places phone order for materials
- Create job and use Stock Pull โ Reserve Only
- Inventory moves from "On-Hand" to "Reserved" status
- Materials physically set aside in warehouse
- When customer picks up, use Deplete Reserved Inventory
- Job costing updated with actual weighted average cost
Reserve + Deplete Workflow
Use this for immediate over-the-counter sales:
- Customer at counter wants to purchase materials
- Create job and use Stock Pull โ Reserve + Deplete
- Inventory immediately moves from "On-Hand" to "Depleted"
- Customer receives materials right away
- Job costing immediately updated with actual cost
Important Concepts
- Reserved inventory is WIP: Different tax and accounting treatment than on-hand stock
- Reserve duration varies: Could be six months or a split second depending on workflow
- Prevents double-booking: Reserved items cannot be sold to other customers
- Invoicing is independent: You can invoice before depleting inventory
- Job completion check: System prevents job completion if reserved inventory exists
The system prevents job completion when reserved inventory exists because it indicates unfinished inventory transactions. You must either deplete the reserved inventory or return it to stock before completing the job.
What Reserved Inventory Means
Reserved inventory indicates materials that have been pulled from stock for a specific job but not yet used or delivered. This creates an incomplete state that must be resolved.
How to Complete the Job
Choose one of these options:
-
Deplete Reserved Inventory (Materials were used)
- Navigate to Jobs module
- Open the job record
- Click Inventory mode
- Select items to deplete
- Click Deplete Reserved Inventory
- Job can now be completed
-
Return to Stock (Materials were not used)
- Navigate to Jobs module
- Open the job record
- Click Inventory mode
- Select items to return
- Click Return to Stock
- Materials move back to on-hand inventory
โ ๏ธ Important: This validation exists to prevent inventory tracking errors. Reserved inventory represents a financial commitment and must be properly accounted for before closing a project.
Use Deplete Reserved Inventory when materials previously reserved for a job have been used, delivered, or installed. This completes the inventory transaction and updates job costing with actual costs.
Common Scenarios
- Customer pickup: Phone order materials are picked up from warehouse
- Job delivery: Materials delivered to job site
- Installation completion: Materials have been installed
- Job completion workflow: Finalizing all inventory before closing job
- Ticket completion: Field work completed and materials consumed
Steps to Deplete Reserved Inventory
- Navigate to Jobs module and open the job
- Click Inventory mode to view job inventory
- Review reserved items and quantities
- Select the items to deplete (or select all)
- Click Deplete Reserved Inventory button
- System updates job costing with weighted average cost
What Happens When You Deplete
- Inventory status changes from "Reserved" to "Depleted"
- Job costing ledger shows invoiced cost entry
- Weighted average cost is applied to the transaction
- Available inventory count decreases
- Transaction history records user, date, and time
Job Costing Integration
Inventory integration with job costing automatically tracks committed costs, invoiced costs, and actual costs through multiple inventory states, providing real-time project profitability tracking and accurate cost accounting.
๐ก Key Benefit: This multi-ledger job costing integration provides enterprise-level cost tracking and work-in-progress (WIP) accounting for accurate project management.
Cost Types in Job Costing
Committed Cost (Stock Reservation)
- Appears when inventory is reserved from stock
- Based on weighted average cost at time of reservation
- Shows project cost exposure before materials are used
- Enables early identification of budget variances
Invoiced Cost (Inventory Depletion)
- Appears when reserved inventory is depleted
- Uses weighted average cost at depletion time
- Replaces committed cost in job costing ledger
- Reflects actual materials consumed on project
Bill-Based Cost (PO Procurement)
- For materials purchased via Purchase Orders
- Job costing comes from bill, NOT inventory movement
- Direct-ship items bypass inventory entirely
- Actual vendor cost appears in job costing
Workflow Example: Stock Inventory to Job
- Job created with estimated material costs
- Stock Pull โ Reserve Only: Committed cost appears in job costing
- Committed cost shows potential budget variance immediately
- Materials delivered to job site
- Deplete Reserved Inventory: Invoiced cost replaces committed cost
- Job costing ledger shows actual weighted average cost
Key Concepts
- Weighted Average Cost drives all calculations: Automatically calculated and applied
- One entry per line item: Not duplicated for bills (PO-based procurement)
- Budget vs. Job Costing: Committed costs appear without budget revision
- Early variance detection: See cost overruns before depletion
- Running ledger: Complete transaction history for all cost types
Why This Matters
This integration enables:
- Real-time project profitability tracking
- Identification of cost overruns before project completion
- Accurate COGS calculations for financial reporting
- Work-in-progress (WIP) valuation for balance sheet
- Complete audit trail from procurement to usage
Location Management
TRUE ERP's location system is extremely flexible and can represent any physical or logical place where inventory is stored. Locations are entirely optional - most starting customers use no locations at all.
Common Location Types
- Physical spaces: Warehouse aisles, bins, shelves, rooms
- Buildings: Warehouse A, Warehouse B, main office
- Geographic branches: Sarasota location, Tampa location, Orlando location
- Vehicles: Truck #1, Truck #2, service van
- Job sites: Temporary on-site storage for active projects
- People: Valuable small items that travel with specific workers
Use Cases for Different Location Types
Warehouse Locations
Track inventory by aisle and bin for efficient picking in large warehouses. Example: "Aisle 3, Bin 12"
Multi-Branch Operations
Separate inventory for different geographic locations. System can auto-pull from branch-specific stock based on job facility assignment.
Vehicle Tracking
Track materials loaded on service trucks. Prevents stock-pull from vehicles (use "Disable Stock Pull" setting).
Person as Location
Small valuable items that travel with workers (example: specialized tools, calibration equipment). Provides accountability tracking.
๐ก Graduation Philosophy: Most customers start with NO locations and add them as business complexity grows. You can scale from simple to enterprise-level multi-facility tracking without migrating systems.
When to Use Locations
- Space management: Large warehouse requiring organized picking
- Geographic separation: Multiple branches or facilities
- Vehicle inventory: Service trucks carrying stock
- Accountability: Tracking who has specific items
- Job site storage: Materials staged at project locations
Multi-facility inventory is a powerful enterprise-level feature that automatically pulls inventory from the correct branch based on job facility assignment, preventing cross-branch inventory errors.
โก Collegiate-Level Feature: This is an advanced capability requiring operational maturity. Most customers don't need multi-facility tracking when starting out.
How Facility-Based Stock Pull Works
- Job is assigned to a facility (e.g., Sarasota Branch, Tampa Branch)
- Locations are linked to facilities in Locations module
- Facilities are linked to divisions in organizational hierarchy
- When using Stock Pull, system prioritizes inventory from job's facility
- If sufficient inventory exists at assigned facility, pull happens automatically
- If insufficient, user receives error message requiring override permission
Setup Hierarchy
The system follows this organizational structure:
- Division: Top-level organizational unit
- Facility: Linked to division (e.g., Service Order Branch)
- Location: Linked to facility (e.g., Sarasota Warehouse)
Permission-Based Controls
- Standard users: Restricted to their branch's inventory only
- System prevents "dumb things": Cannot accidentally deplete wrong branch's stock
- Insufficient inventory message: Stops users, forces coordination
- Manager override permission: Allows cross-branch pulls when necessary
- Manual reserve: Bypasses facility rules (requires proper permissions)
Business Benefits
- Prevents users from depleting other branches' inventory
- Forces communication and coordination between branches
- Maintains accurate branch-level inventory counts
- Enables proper inventory valuation by location
- Supports branch-level P&L reporting
Moving inventory between locations does not change total quantity - it only changes where the inventory is physically stored. This is useful for organizing warehouse space or transferring stock between branches.
Method 1: Direct Location Transfer
- Navigate to Inventory module
- Locate the inventory item you want to move
- Click the Actions menu
- Select Move Location (or similar action)
- Specify quantity to move
- Select destination location
- Confirm the transfer
Method 2: Ticket-Based Location Change
Use this method for field workflows where materials are moved as part of job processes:
- Create a ticket with job items
- Set ticket outcome to Change Location
- When ticket is marked complete, specify new location
- Inventory transfers without depleting stock
Important Notes
- Total quantity unchanged: Moving location doesn't add or remove inventory
- Transaction history: System records user, date, time, and locations
- Sub-ledgers created: Each location has its own sub-ledger record
- Journal entries: May be created depending on facility/class setup (requires investigation)
โ ๏ธ Investigation Needed: Journal entry creation for cross-facility location transfers (especially with different class assignments) requires verification with development team.
Weighted Average Cost
Weighted Average Cost (WHAC) is the costing method TRUE ERP uses to value inventory and calculate cost of goods sold. It provides a simple, accounting-standard approach that automatically recalculates whenever new inventory is received.
How It Works
The system calculates weighted average cost using this formula:
Weighted Average Cost = (Total Value of Inventory) รท (Total Quantity)
Example Calculation
Starting inventory:
- 100 units @ $10.00 each = $1,000 total value
- Current WHAC: $1,000 รท 100 = $10.00/unit
Receive new shipment:
- 50 units @ $12.00 each = $600 value
- New total: 150 units with $1,600 value
- New WHAC: $1,600 รท 150 = $10.67/unit
Deplete inventory:
- Job uses 25 units
- Job costing entry: 25 ร $10.67 = $266.75
- Remaining: 125 units @ $10.67 = $1,333.75 total value
Why TRUE Uses Weighted Average (Not FIFO)
- Simplicity: Easier to understand and maintain
- Accounting standards: Acceptable for most businesses
- System performance: Less complex calculations than FIFO/LIFO
- Practical reality: Most businesses don't track specific lots received
- Consistency: Matches how most small-mid businesses operate
Where WHAC Appears
- Inventory module: Displays current WHAC for each item
- Job costing: Used for committed and invoiced cost calculations
- Reports: Inventory valuation and on-hand reports
- COGS: Cost of goods sold in financial statements
- Sub-ledgers: Location-specific WHAC when using locations
๐ก Automatic Calculation: You never need to manually calculate WHAC. The system automatically recalculates whenever inventory is received at a different price.
Catalog Integration
The Stock checkbox in Catalog items is a simple filter flag that helps you quickly identify items you normally keep in stock. It does NOT indicate whether an item currently has inventory on hand or affect inventory tracking in any way.
What the Stock Checkbox Does
- Filtering only: Allows you to filter catalog view to show only items marked as stock
- Quick identification: Helps identify which products you typically inventory
- User preference: Optional organizational tool, not a system requirement
- No inventory impact: Does not create inventory records or track quantities
What the Stock Checkbox Does NOT Do
- Does not show current inventory levels
- Does not indicate "in stock" or "out of stock" status
- Does not automatically enable inventory tracking
- Does not affect purchasing, pricing, or job costing
How to Use the Stock Checkbox
- Navigate to Catalog module
- Open a catalog item record
- Check the Stock checkbox for items you typically inventory
- Use the "Show Stock" filter in list view to see only stocked items
- Actual inventory quantities are tracked in the Inventory module
๐ก Best Practice: Use the Stock checkbox to mark items you regularly keep on hand, then use the filter to quickly find those items when adding to jobs or purchase orders.
The Catalog module is where you DEFINE products and services, while the Inventory module is where you TRACK quantities of those products. Using catalog for inventory is optional but recommended for standardization.
Catalog: Product Definitions
The Catalog module stores:
- Product descriptions: What the item is called
- Pricing information: Default cost, markup, pricing codes
- Unit of measurement: Each, Box, Linear Foot, etc.
- GL account mappings: Revenue, COGS, inventory accounts
- Stock designation: Items you typically keep in inventory
Inventory: Quantity Tracking
The Inventory module tracks:
- Quantities on hand: How many you currently have
- Reserved quantities: Materials committed to jobs
- Weighted average cost: Current valuation
- Location details: Where inventory is stored
- Transaction history: All movements in and out
How They Work Together
- Create catalog item: Define the product in Catalog module
- Receive inventory: When you receive product via purchase order, system creates inventory record automatically
- Link maintained: Inventory record links back to catalog item for pricing, GL accounts, and standardization
- Quantities tracked: All inventory movements (reserve, deplete, transfer) are recorded in Inventory module
Can You Use Inventory Without Catalog?
Yes, but it's not recommended:
- Manual entry: You can manually add inventory without catalog items
- Non-standard items: These are "unique" items not standardized
- Less efficient: No standardized pricing, GL accounts, or descriptions
- Recommended approach: Use catalog for items you regularly purchase and stock
๐ก Think of it this way: Catalog is your product library (what you CAN sell), Inventory is your warehouse (what you HAVE on hand). Catalog items can exist without inventory, but inventory items linked to catalog are standardized and easier to manage.
Troubleshooting
Use manual inventory adjustments to correct quantities when conducting physical counts, recording shrinkage, or adding initial inventory during onboarding. The system provides two adjustment methods: adding inventory (increase) and shrinkage (decrease).
Method 1: Manually Add Inventory (Increase Quantity)
Use this to increase inventory quantities:
- Navigate to Catalog module
- Locate the catalog item
- Click the Inventory popover (displays current quantity)
- Click Manually Add Inventory
- Enter quantity to add
- Select location (if using location tracking)
- Enter cost per unit
- System adds quantity and updates weighted average cost
Method 2: Record Shrinkage (Decrease Quantity)
Use this to decrease inventory quantities:
- Navigate to Inventory module
- Locate the inventory item
- Click Shrinkage or adjustment action
- Enter quantity to remove
- Select reason (damaged, lost, theft, etc.)
- System decreases quantity and records transaction
Common Reasons for Manual Adjustments
- Initial onboarding: Adding starting inventory when first implementing system
- Physical count corrections: Adjusting system quantities to match actual count
- Shrinkage: Recording damaged, lost, or stolen items
- Found inventory: Discovering items not previously recorded
- Receiving errors: Correcting mistakes from purchase order receiving
Important Notes
- Transaction history: All manual adjustments are recorded with user, date, and time
- Weighted average cost: Adding inventory at different cost updates WHAC automatically
- Location specific: If using locations, adjustments apply to specific location
- Audit trail: View all adjustments in inventory transaction history
โ ๏ธ Best Practice: Avoid frequent manual adjustments by ensuring purchase order receiving and job depletion workflows are completed properly. Manual adjustments should be the exception, not the routine.
Inventory discrepancies occur when system quantities don't match physical warehouse counts. Common causes include reserved inventory not depleted, incomplete purchase order receiving, or missing manual adjustments.
Common Causes of Discrepancies
1. Reserved Inventory Not Depleted
- Issue: Materials pulled for jobs show as "reserved" but not yet "depleted"
- System shows: On-hand quantity includes reserved materials
- Physical reality: Materials are already on job site
- Solution: Use "Deplete Reserved Inventory" button to complete transaction
2. Purchase Order Not Fully Received
- Issue: Purchase order created but receiving not completed in system
- System shows: Old inventory quantity
- Physical reality: New shipment arrived and on shelf
- Solution: Complete PO receiving process to add inventory
3. Stock Pull Without Proper Depletion
- Issue: Materials physically pulled but stock pull workflow not completed
- System shows: Higher quantity than actually on hand
- Solution: Use proper Reserve + Deplete or direct deplete workflows
4. Shrinkage Not Recorded
- Issue: Items damaged, lost, or stolen but not recorded
- Solution: Record shrinkage transactions for missing items
5. Location Tracking Confusion
- Issue: Counting only one location when inventory spread across multiple
- Solution: Check all locations, view sub-ledger by location
How to Investigate Discrepancies
- Navigate to Inventory module and locate item
- Click quantity to view sub-ledger (shows on-hand vs reserved)
- Check for reserved inventory waiting to be depleted
- Review transaction history for recent movements
- Verify all locations if using location tracking
- Compare system total to physical count
Correcting Discrepancies
After identifying the cause:
- If reserved inventory exists: Complete depletion workflow for materials already used
- If PO not received: Complete receiving process in Purchase Orders module
- If physical count differs: Use manual adjustment (add inventory or record shrinkage)
- Document reason for adjustment in notes
๐ก Prevention: Conduct regular physical counts, ensure all workflows are completed (especially depletion), and train team on proper stock pull procedures to minimize discrepancies.
Configuration & Administration
Access to the Inventory module and its functions is controlled through user permissions configured in the Users / Access module. Module access permission #25 controls whether a user can access Inventory.
Module Access Permission
| Permission | Description |
|---|---|
| Inventory (ID: 25) | User can access the Inventory module in the Materials workflow. Without this permission, Inventory module will not appear in navigation. |
How to Grant Inventory Access
- Click Gear Icon (Settings) โ Users / Access
- Select the user who needs access
- Navigate to Permissions or Access section
- Find Inventory in the Materials workflow permissions
- Enable the permission checkbox
- Save user changes
Related Permissions
Users may also need these permissions for full inventory functionality:
- Catalog (Materials): Required to view/edit catalog items that link to inventory
- Purchase Orders (Procurement): Required to receive inventory via PO
- Locations (Settings): Required to configure inventory storage locations
- Jobs (Jobs): Required to reserve/deplete inventory for jobs
- Tickets (Tickets): Required for field inventory depletion workflows
Common Permission Scenarios
Warehouse Manager
- Inventory: โ Full access
- Catalog: โ Edit catalog items
- Purchase Orders: โ Receive inventory
- Purpose: Manage all inventory operations
Field Worker
- Inventory: โ View only (no manual adjustments)
- Jobs: โ Stock pull/reserve for jobs
- Tickets: โ Complete tickets with depletion
- Purpose: Pull inventory for jobs, cannot adjust quantities
Office Staff (No Inventory Access)
- Inventory: โ No access
- Catalog: โ View pricing for quotes
- Purpose: Create quotes and jobs without inventory visibility
โ ๏ธ Security Note: Grant inventory access only to users who need to view or modify inventory quantities. Improper access can lead to unauthorized adjustments or visibility into inventory valuation.