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.

Stock & Valuation
Monitor available stock, reserved quantities, and weighted average cost calculations
Location Tracking
Optional tracking by aisle, bin, building, vehicle, or job site
Reorder Alerts
Set min/max thresholds to trigger automatic procurement alerts
Job Integration
Stock pull, reserve, and deplete materials directly from jobs
Reporting
As of date, sold/received quantities, and valuation changes
Integrations
Catalog, Jobs, Purchase Orders, Invoicing, QuickBooks

โšก 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.

  1. Navigate to Catalog module in the top navigation
  2. Click the + (Plus Icon) to create a new catalog item
  3. Enter the Description field (required)
  4. Optionally configure additional fields: ID, SKU, Unit, Default Cost, Markup
  5. Check the Stock checkbox to enable inventory tracking for this item
  6. Assign a Vendor if this item has a preferred supplier
  7. Configure GL Accounts under the Accounting tab if using TRUE Accounting
  8. 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:

  1. Navigate to Catalog module
  2. Click the Gear icon in the top right
  3. Select Export Price Book
  4. System generates a CSV/Excel file with all catalog items
  5. Open file and review current pricing, costs, and quantities

Import Price Book:

  1. Make updates to the exported file (pricing, costs, on-hand quantities)
  2. Save the file in CSV or Excel format
  3. Navigate to Catalog module
  4. Click the Gear icon in the top right
  5. Select Import Price Book
  6. Upload your modified file
  7. System validates and applies bulk updates to matching products
  8. 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.

  1. Navigate to Catalog module
  2. Open the product you want to update
  3. Locate the Inventory section
  4. Click Add Inventory button
  5. Enter the quantity to add to current stock
  6. Optionally enter a cost for valuation purposes
  7. Click Save to update inventory levels
  1. Export the price book from Catalog module
  2. Open the exported file in Excel or CSV editor
  3. Update the on-hand quantity column for each product
  4. Update the default cost column if needed for valuation
  5. Save the file
  6. Import the price book using the import function
  7. System updates all inventory quantities in bulk
  1. Navigate to Catalog module
  2. Open the product requiring adjustment
  3. Click Shrinkage button
  4. Enter the quantity to reduce from current stock (for loss, damage, theft)
  5. Enter notes explaining the adjustment
  6. 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).

  1. Navigate to Catalog module
  2. Open the product to configure
  3. Click the Accounting tab
  4. Assign Revenue Account (posts when item appears on AR invoices)
  5. Assign COGS Account (posts when item appears on vendor bills)
  6. Assign Inventory Account (posts for stock tracking and valuation)
  7. 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:

  1. Click Catalog in the top navigation
  2. View all catalog items with inventory tracking enabled
  3. 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:

  1. Navigate to Catalog module
  2. Open the catalog item you want to configure
  3. Locate the Unit of Measurement section
  4. Define Inventory UOM (how you track it)
  5. Define Purchase UOM and conversion (how vendor sells it)
  6. Define Sales UOM and conversion (how you sell it)
  7. 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.

  1. Open the Job record
  2. Navigate to Items mode
  3. Locate the catalog item you want to pull stock for
  4. Click Stock Pull button or action
  5. Enter quantity to pull from stock
  6. System moves quantity from Stock to Reserve
  7. 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.

  1. Open the Job record
  2. Navigate to Items mode
  3. Click View Inventory button
  4. Select items to deplete with checkboxes
  5. Enter quantities to deplete
  6. Click Deplete action button
  7. System removes quantity from Reserve first, then Stock if needed
  1. Open the Job record
  2. Navigate to Inventory mode
  3. View reserved and depleted inventory lists
  4. Select items from reserved inventory
  5. Enter quantities to deplete
  6. Click Deplete button
  7. Items move from reserved to depleted status
  1. Create or open a Ticket for the job
  2. Ensure ticket outcome is set to Deplete Inventory
  3. Add line items to ticket from job catalog items
  4. Enter quantities used in ticket line items
  5. Complete and save ticket
  6. System automatically depletes specified quantities when ticket is processed
  1. Create Material records from job items
  2. Link materials to catalog items
  3. Enter quantities depleted
  4. Save material records
  5. System depletes inventory based on material record quantities
  1. Open the Job record
  2. Navigate to Items mode or Inventory mode
  3. Click Deplete Reserved Inventory action
  4. System depletes all reserved inventory for the job at once
  5. 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.

  1. Open the Job record
  2. Navigate to Inventory mode
  3. View reserved inventory items
  4. Select items to return with checkboxes
  5. Enter quantities to return
  6. Click Return action button
  7. 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.

  1. Open the Job record
  2. Navigate to Items mode
  3. Click Refresh icon to update procurement counts
  4. View procurement status for each item
  5. Click View Inventory to see detailed inventory breakdown
  1. Open the Job record
  2. Navigate to Inventory mode
  3. View Reserved tab for inventory designated to this job
  4. View Depleted tab for inventory already used
  5. 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.

  1. Navigate to Inventory module
  2. Click Gear icon in top right
  3. Select Reports
  4. Choose Inventory As Of report
  5. Enter the date for the report
  6. Optionally filter by location or category
  7. 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.

  1. Navigate to Inventory module
  2. Click Gear icon in top right
  3. Select Reports
  4. Choose Inventory Sold report
  5. Enter start and end dates for the report
  6. Optionally filter by location, job, or category
  7. 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.

  1. Navigate to Inventory module
  2. Click Gear icon in top right
  3. Select Reports
  4. Choose Inventory Received report
  5. Enter start and end dates for the report
  6. Optionally filter by vendor, location, or category
  7. 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.

  1. Navigate to Catalog module
  2. Open the catalog item to configure
  3. Locate Inventory section
  4. Enter Reorder Min quantity (alert threshold)
  5. Enter Reorder Max quantity (target stock level)
  6. Save the catalog item
  7. 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.

  1. Navigate to Purchase Orders module (or Requests)
  2. Click Generate Reorders button or action
  3. System identifies all items below minimum threshold
  4. Review suggested quantities (calculated to reach maximum levels)
  5. Adjust quantities as needed
  6. Select items to include in reorder requests
  7. 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.

  1. Navigate to Catalog module
  2. Click Gear icon in top right
  3. Select Reports
  4. Choose Reorder Report
  5. System generates PDF listing items below minimum with suggested quantities
  6. 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.

  1. Navigate to Settings
  2. Select Alerts or Notifications
  3. Locate inventory reorder alerts
  4. Assign alert to users responsible for purchasing
  5. Configure alert frequency and thresholds
  6. 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:

  1. Navigate to Inventory module and view all records
  2. Use data grid sorting to identify duplicate item names
  3. Use Advanced Filter to find items with zero inventory
  4. Review outdated items no longer used
  5. Contact TRUE Support for assistance merging duplicates or archiving outdated items
  6. 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:

  1. Contact your system administrator
  2. Request the Module Access (Inventory) permission (ID #25)
  3. 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:

  1. Navigate to Settings โ†’ Users / Access
  2. Select the user who should receive alerts (typically Purchasing Manager)
  3. Go to the Access tab
  4. Find the Inventory section
  5. Enable Alert when Product Reorder Threshold Exceeded
  6. 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:

  1. Customer places phone order for materials
  2. Create job and use Stock Pull โ†’ Reserve Only
  3. Inventory moves from "On-Hand" to "Reserved" status
  4. Materials physically set aside in warehouse
  5. When customer picks up, use Deplete Reserved Inventory
  6. Job costing updated with actual weighted average cost

Reserve + Deplete Workflow

Use this for immediate over-the-counter sales:

  1. Customer at counter wants to purchase materials
  2. Create job and use Stock Pull โ†’ Reserve + Deplete
  3. Inventory immediately moves from "On-Hand" to "Depleted"
  4. Customer receives materials right away
  5. 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:

  1. Deplete Reserved Inventory (Materials were used)
    1. Navigate to Jobs module
    2. Open the job record
    3. Click Inventory mode
    4. Select items to deplete
    5. Click Deplete Reserved Inventory
    6. Job can now be completed
  2. Return to Stock (Materials were not used)
    1. Navigate to Jobs module
    2. Open the job record
    3. Click Inventory mode
    4. Select items to return
    5. Click Return to Stock
    6. 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

  1. Navigate to Jobs module and open the job
  2. Click Inventory mode to view job inventory
  3. Review reserved items and quantities
  4. Select the items to deplete (or select all)
  5. Click Deplete Reserved Inventory button
  6. 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

  1. Job created with estimated material costs
  2. Stock Pull โ†’ Reserve Only: Committed cost appears in job costing
  3. Committed cost shows potential budget variance immediately
  4. Materials delivered to job site
  5. Deplete Reserved Inventory: Invoiced cost replaces committed cost
  6. 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

  1. Job is assigned to a facility (e.g., Sarasota Branch, Tampa Branch)
  2. Locations are linked to facilities in Locations module
  3. Facilities are linked to divisions in organizational hierarchy
  4. When using Stock Pull, system prioritizes inventory from job's facility
  5. If sufficient inventory exists at assigned facility, pull happens automatically
  6. 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

  1. Navigate to Inventory module
  2. Locate the inventory item you want to move
  3. Click the Actions menu
  4. Select Move Location (or similar action)
  5. Specify quantity to move
  6. Select destination location
  7. Confirm the transfer

Method 2: Ticket-Based Location Change

Use this method for field workflows where materials are moved as part of job processes:

  1. Create a ticket with job items
  2. Set ticket outcome to Change Location
  3. When ticket is marked complete, specify new location
  4. 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

  1. Navigate to Catalog module
  2. Open a catalog item record
  3. Check the Stock checkbox for items you typically inventory
  4. Use the "Show Stock" filter in list view to see only stocked items
  5. 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

  1. Create catalog item: Define the product in Catalog module
  2. Receive inventory: When you receive product via purchase order, system creates inventory record automatically
  3. Link maintained: Inventory record links back to catalog item for pricing, GL accounts, and standardization
  4. 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:

  1. Navigate to Catalog module
  2. Locate the catalog item
  3. Click the Inventory popover (displays current quantity)
  4. Click Manually Add Inventory
  5. Enter quantity to add
  6. Select location (if using location tracking)
  7. Enter cost per unit
  8. System adds quantity and updates weighted average cost

Method 2: Record Shrinkage (Decrease Quantity)

Use this to decrease inventory quantities:

  1. Navigate to Inventory module
  2. Locate the inventory item
  3. Click Shrinkage or adjustment action
  4. Enter quantity to remove
  5. Select reason (damaged, lost, theft, etc.)
  6. 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

  1. Navigate to Inventory module and locate item
  2. Click quantity to view sub-ledger (shows on-hand vs reserved)
  3. Check for reserved inventory waiting to be depleted
  4. Review transaction history for recent movements
  5. Verify all locations if using location tracking
  6. Compare system total to physical count

Correcting Discrepancies

After identifying the cause:

  1. If reserved inventory exists: Complete depletion workflow for materials already used
  2. If PO not received: Complete receiving process in Purchase Orders module
  3. If physical count differs: Use manual adjustment (add inventory or record shrinkage)
  4. 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

  1. Click Gear Icon (Settings) โ†’ Users / Access
  2. Select the user who needs access
  3. Navigate to Permissions or Access section
  4. Find Inventory in the Materials workflow permissions
  5. Enable the permission checkbox
  6. 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.