Purpose
The Materials module is designed for tracking materials for specific jobs and contracts. It provides a separate material list outside of invoice-related items, allowing for detailed management and tracking of materials throughout the project lifecycle.
Important: Materials is not used for estimating or recording pricing—it serves as a centralized hub for all job or contract-specific materials, separate from invoice items.
List View
View and manage all material records with powerful filtering and search tools
- Search and filter materials by stage, contract, procurement status, and 20+ advanced criteria
- Sort by product, vendor, procurement status, phase, cost code, or custom fields
- Track stock levels, reserved quantities, and fulfillment status at a glance
- Create materials from catalog products, manual entry, bids, or change orders
- Generate purchase orders and stock pulls directly from material lists
Button Bar / Actions
Create, import, and manage materials
The button bar provides quick access to material creation, import, and management functions.
| Add Material Options | |
| + Icon → Select Product | Choose a standardized product from your Catalog to add as a material record. Product must be predefined with SKU, cost, and pricing information |
| + Icon → Manual Entry | Add a new blank material record for non-standard items. Useful for one-time purchases that don't need to be in your product catalog |
| + Icon → Bid | Choose items from an associated Bid record to create material records. Useful when bid contains detailed material lists |
| + Icon → Change Order | Choose items from a Change Order within a related Contract record to create material records for added scope |
| Utility Functions | |
| ↻ Icon | Refreshes the list view to display the latest material data and status updates |
| 📄 Icon | Generates reports related to materials for the current filtered set |
| ⚙️ Icon | Opens additional options and settings including import/integration functions |
Search & Filter Options
Quick search and stage filtering options for finding specific materials.
| Search field | Allows searching for specific materials by product name, description, or related fields to quickly find specific records |
| "Stage" Button | Filters materials by their current stage in the procurement or project workflow |
| "Advanced Filter" Button | Opens detailed filtering options with 20+ criteria for complex material searches |
| "Expand/Collapse" Button | Toggles expanded view of material details in the list for easier viewing |
Sort Options
Sort the material list by various criteria to organize and analyze materials effectively.
| Clear | Removes all applied sorting criteria and returns to default view |
| Product | Sorts the list by product name or identifier alphabetically |
| Contract Item | Arranges materials by associated contract line items |
| Category | Sorts by material category or classification |
| Stage | Organizes materials by their current stage in the workflow |
| Phase | Sorts by project phase or sequencing |
| Cost Code | Arranges materials by associated cost codes for job costing |
| Job / Contract | Sorts by linked jobs or contracts |
| Vendor | Arranges materials by vendor or supplier |
| Procurement | Sorts by procurement status (In Stock, Out of Stock, Ordered, Received, etc.) |
| Type | Organizes materials by type or classification |
| Product Group Code | Sorts by product group classification |
| Hand | Sorts by handling, storage information, or custom field |
| Vendor No | Arranges materials by vendor identification number |
Column Headers
Information displayed in the material list view columns.
| Column | Description |
|---|---|
| PRODUCT | Displays the name or identifier of the material product |
| PROCUREMENT | Shows the procurement and inventory status for catalog items. Possible values: Quantity Zero, N/A, Done, Fulfilled, Partial, Received, Backordered, Ordered, Purchasing, Shipping, Requested, Nonstandard, (# in Stock), Out of Stock. Click status to view details. |
| STAGE | Indicates the current stage of the material in the procurement or project workflow |
| STOCK | Displays the current stock level or on-hand quantity available |
| RESERVED | Shows the quantity of material reserved for this project via Stock Pull |
| DONE | Indicates completed or used materials for this project |
| UNFULFILLED | Shows the quantity of materials not yet fulfilled or received |
| TICKETS | Relates to work tickets or issues associated with the material |
Advanced Filter
Use Advanced Filter to search materials using multiple criteria simultaneously for complex queries.
| Filter Field | Description |
|---|---|
| Product | Filter by specific product or material name |
| Purchase Order | Search by associated purchase order number |
| Purchase Date | Filter materials by their purchase date |
| Type | Select specific types of materials |
| Quantity | Filter by quantity of materials |
| Notes | Search within notes added to material records |
| Received Date | Filter by the date materials were received |
| Product Group Code | Search by product group classification |
| Unit | Filter by unit of measurement |
| Activity | Search based on associated activities |
| Production Date | Filter by production date of materials |
| Hand | Filter by additional material data or custom field |
| Stage | Filter materials by their current stage in the process |
| Procurement | Search based on procurement method or status |
| Staging Date | Filter by the date materials were staged |
| Vendor No | Search by vendor identification number |
| Cost Code | Filter by associated cost codes |
| Contract Item | Search for materials linked to specific contract items |
| Ready Date | Filter by the date materials are ready for use |
| Vendor | Filter materials by specific vendors |
| Opening | Filter by initial stock, order quantities, or room/opening identifier |
| Shipping Date | Filter by the date materials were shipped |
| Client | Search for materials associated with specific clients |
| Assigned via Job / Contract | Filter materials assigned to specific jobs or contracts |
| Phase | Search by project phase the materials are associated with |
| Additional Filter Options | |
| Unfulfilled | Show only unfulfilled material orders |
| Active | Display only active material records |
| Missing Linked Product | Show materials missing linked product information (non-standard items) |
| Stored | Filter for materials currently in storage |
| Archive | Display archived material records |
| Incomplete Work Tickets | Show materials with incomplete associated work tickets |
Selected Record View
Detailed view of individual material records with procurement and fulfillment tracking
When a material is selected from the list view, the Selected Record section displays detailed information about the material, including procurement status, stock levels, associated purchase orders, and project-specific details such as phase, cost code, and location.
Material Record Details
The material record displays comprehensive information about the product, quantities, procurement status, and project assignment.
Product Information
| Product | The name or identifier of the material. Can be linked to a catalog product (standardized) or manually entered (non-standard) |
| Quantity | Number of units required for this project |
| Unit | Unit of measurement (each, square feet, linear feet, etc.) |
| Type | Material type or classification |
| Category | Material category for organizational purposes |
Project Assignment
| Job / Contract | The job or contract this material is assigned to |
| Contract Item | Specific contract line item this material is associated with |
| Cost Code | Job costing code for tracking material expenses |
| Phase | Project phase or sequencing (Phase 1, 2, 3, etc.) |
| Opening / Room / Area | Location identifier within the project. Field name is customizable (commonly called Door ID, Opening, Room, or Area) |
Procurement & Status
| Procurement Status | Real-time status based on inventory, purchase orders, and fulfillment (In Stock, Out of Stock, Ordered, Received, Backordered, Fulfilled, etc.) |
| Stage | Current stage in the material workflow |
| Stock | Current inventory on hand for this product |
| Reserved | Quantity reserved from inventory for this project |
| Done | Quantity completed or used on the project |
| Unfulfilled | Quantity not yet fulfilled or received |
Vendor & Ordering
| Vendor | Supplier or vendor for this material |
| Vendor No | Vendor identification number |
| Purchase Order | Associated purchase order number(s) |
Date Tracking (Optional/Advanced)
| Purchase Date | When the material should be or was ordered |
| Received Date | When the material was or is expected to be received |
| Production Date | Manufacturing or production schedule date |
| Staging Date | When the material should be staged for installation |
| Ready Date | When the material will be ready for use |
| Shipping Date | When the material was shipped |
Additional Fields
| Notes | Free-text notes and comments about the material |
| Custom Fields (5) | Five fully customizable fields that can be renamed to track company-specific data |
Frequently Asked Questions
Common questions and step-by-step guidance for working with Materials
Materials Creation & Setup
Material lists are typically created from a Contract or Job record to ensure materials are properly linked to the project.
- Navigate to the Contract record
- Click View button
- Select Materials from the dropdown
- Click the + icon to add materials
- Choose creation method (Select Product, Manual Entry, Bid, Change Order, or Integrations)
- Enter quantity and project-specific details (phase, cost code, room, etc.)
- Navigate to the Job record
- Switch to Items mode
- Select the items you want to convert to materials (batch select)
- Click Actions button
- Select Create Materials
- Navigate to Materials module for the contract
- Click Gear icon
- Select Integrations
- Choose from spreadsheet import or canned integrations (Glazier Studio, Stack, or other takeoff software)
Products and Materials serve different purposes in TRUE ERP.
Product (in Catalog):
- Standardized definition that lives in your Catalog module
- Includes SKU, cost, price, markup, vendor, and other details
- Can be inventoried and tracked across all jobs
- Reusable—defined once, used on multiple projects
- Examples: "Cabinet Model A-100", "3/4 MDF 4x8 Sheet"
Material (in Materials Module):
- Job or contract-specific instance of what you need to buy
- Can be linked to a Product (standardized) OR manually entered (non-standard)
- Functions as your "grocery shopping list" for the project
- Tracks procurement status, stock pulls, and fulfillment for that specific job
- Example: "10 units of Cabinet Model A-100 needed for Room 203, Phase 2"
Tip: In construction, you often need to buy one-time items that don't belong in your product catalog. TRUE allows you to manually enter materials without creating a formal Product, avoiding catalog clutter.
The method you choose determines whether the material can be inventoried and tracked long-term.
Select Product (Standardized):
- Pulls from your product Catalog
- Material is linked to a defined product with SKU, cost, pricing
- Can track inventory (stock on hand, reserved, fulfilled)
- Shows procurement status automatically
- If you order 30 units, system tracks "1 product with quantity 30"
- Best for: Items you buy regularly and want to track across multiple jobs
Manual Entry (Non-Standard):
- Manually typed item not linked to Catalog
- Cannot track inventory or stock levels
- Procurement status shows "Nonstandard"
- If you order 30 units, system creates "30 separate items with quantity 1 each"
- Not saved to your product Catalog
- Best for: One-time purchases, specialty items unique to this project
Note: Manual entry is a unique feature designed for construction where projects often require specialty items you'll never buy again. This prevents your product catalog from being cluttered with thousands of one-off items.
Material Organization
Materials can be organized using several built-in and customizable fields to track location and sequencing.
Organizational Fields:
- Phase: Project sequencing (Phase 1, 2, 3, etc.) for scheduling material delivery and installation
- Opening / Room / Area: Location identifier within the project. Default name is "Door ID" but can be customized to match your terminology
- Contract Item: Links material to specific contract line items for scope tracking
- Cost Code: Accounting category for job costing and budget tracking
- Custom Fields (5): Fully renameable fields to track additional data like building number, floor level, or zone
- Use Advanced Filter and Sort functions to group and view materials by these categories
Tip: Organizing materials by phase helps you sequence orders so materials arrive just-in-time, reducing on-site storage needs.
The date fields are advanced, optional fields for fine-tuning material scheduling. Most users don't need them.
| Date Field | Purpose |
|---|---|
| Purchase Date | When you plan to order or actually ordered the material |
| Receive Date | Expected or actual delivery date |
| Production Date | Manufacturing schedule for custom-fabricated materials |
| Staging Date | When material should be staged for installation |
| Ready Date | When material will be ready for use on the project |
| Shipping Date | When material was shipped from vendor or warehouse |
Note: These dates are optional advanced fields. Most users rely on Phase and basic procurement status. Use these fields only if your workflow requires detailed scheduling coordination.
Procurement & Purchasing
The Procurement column displays real-time status of catalog items based on inventory levels, purchase orders, and fulfillment. This helps track which materials are ready, ordered, or still needed.
| Status | Meaning |
|---|---|
| Quantity Zero | Line item has zero or empty quantity |
| N/A | Item is Labor type, not a material requiring procurement |
| Done | Used/depleted quantity meets or exceeds the required quantity |
| Fulfilled | Reserved/fulfilled quantity meets or exceeds required quantity |
| Partial | Some quantity fulfilled but more is still needed |
| Received | All items on purchase orders have been fully received |
| Backordered | PO sent but fulfilled quantity is less than ordered; displays remaining quantity needed |
| Ordered | Purchase order created and sent to vendor; displays PO ID |
| Purchasing | Purchase order created but not yet sent; displays PO ID |
| Shipping | Item is on a delivery manifest and in transit |
| Requested | Requisition has been submitted for this item |
| Nonstandard | Manually entered item not linked to a catalog product |
| (#) in Stock | Shows available on-hand quantity (e.g., "5 in Stock") |
| Out of Stock | No inventory available and no active procurement |
Tip: Click on the procurement status to view detailed information including purchase orders, stock levels, and fulfillment progress for catalog items.
Purchase orders can be generated directly from selected materials, automatically inheriting contract information and vendor details.
- Navigate to the Contract and view the Materials list
- Select the materials you want to order (batch select or individual)
- Click Actions button
- Select New PO
- System creates purchase order with selected materials automatically linked to the contract
- PO inherits contract-specific rules such as taxation, cost codes, and project details
Note: TRUE can consolidate materials from the same vendor onto a single purchase order line, reducing duplicate entries and streamlining ordering.
Stock Pull reserves items currently in inventory for a specific contract without physically depleting the stock yet.
How Stock Pull Works:
- Marks inventory as "reserved" for this project
- Prevents that inventory from being allocated to other jobs
- Stock isn't depleted until materials are actually used or installed
- Helps project managers know what's committed to their project
Steps to Perform Stock Pull:
- Navigate to Materials for the contract
- Select materials that are showing "In Stock" procurement status
- Click Actions button
- Select Stock Pull
- Materials will now show reserved quantity and remain allocated to this project
Tip: Stock Pull only works for standardized catalog products. Manually entered (non-standard) materials cannot have inventory tracked.
Product Catalog Integration
Creating products in your Catalog allows you to standardize items for inventory tracking and consistent pricing across all jobs.
- Navigate to Settings → Catalog (or Products & Services)
- Click + icon to add new product
- Enter product name (e.g., "4x8x3/4 MDF Sheet")
- Select unit of measurement (each, sq ft, linear ft, etc.)
- Enter cost and price (or markup percentage)
- Optionally add: Vendor, SKU, Internal ID, Brand, Model
- Configure pricing tiers if needed (contractor, premium, etc.)
- Click Save to add product to Catalog
Note: Products must be defined in the Catalog before you can track inventory. Manual materials (non-standard) created directly in Materials module are not saved to the Catalog.
Assemblies allow you to create products made up of multiple component parts, automatically pulling all components when you select the assembly.
Assembly Example:
- Assembly Product: "Custom Cabinet"
- Component 1: 3/4" Plywood (25 sq ft per cabinet)
- Component 2: Cabinet Hardware Kit (1 per cabinet)
- Component 3: Wood Stain (0.5 gallon per cabinet)
- When you add "10 Custom Cabinets" to your material list, system automatically calculates: 250 sq ft plywood, 10 hardware kits, 5 gallons stain
How to Create Assembly:
- Navigate to Catalog and create the main assembly product (e.g., "Cabinet")
- In the product record, locate Components section
- Add each component product with quantity per assembly unit
- Specify unit of measure for each component
- Save the assembly product definition
Tip: Assemblies are powerful for fabrication shops where you build custom products from standard components. Quantities auto-adjust when you change assembly quantity in materials.
Inventory & Barcode Management
TRUE can generate product and location labels with barcodes or QR codes for scanning with mobile devices or tablets.
- Navigate to Catalog and open the product record
- Locate Product Label section
- Choose label type: SKU Barcode or QR Code
- Click to generate the label
- Print on label printer
- Affix label to product boxes, bins, or storage locations
- Navigate to Settings → Locations
- Create or edit a location (e.g., "A-45 Doors")
- Choose label size (small or large)
- Generate location label with QR code
- Print and affix to bin, shelf, or storage area
- Scanning location QR code displays all items stored in that location with options to complete, move, or adjust
TRUE can also print labels that include:
- Project name the material is for
- Product name and description
- Quantity
- Useful for labeling boxes during receiving to identify which job they belong to
Tip: QR codes work best for internal inventory management as they can store more data. SKU barcodes are useful if you need to match vendor barcode systems.
Facilities and locations create a hierarchy for tracking where inventory is stored across multiple warehouses, shops, and job sites.
Facility Setup (Warehouses, Shops, Branches):
- Navigate to Settings → Locations
- Click Add Facility
- Enter facility name (e.g., "Main Shop", "Warehouse 2", "Branch Office")
- Enter address and geolocation coordinates
- Facility can be used for time clock integration to detect when workers are at shop vs job site
Location / Bin Setup (Within Facilities):
- Within a facility, create bins or storage locations
- Name locations using your system (e.g., "A-45", "Aisle 3 Shelf 2", "Door Hardware Bin")
- Generate QR code labels for each location
- Scan locations to view/manage inventory stored there
Location Hierarchy Example:
- Facility: Main Shop
- Location: A-45 (Doors)
- Products Stored: Entry Doors, Interior Doors
- Location: B-12 (Hardware)
- Products Stored: Hinges, Locksets, Handles
Integrations & Imports
TRUE supports importing material lists from various sources to minimize manual data entry.
Import Methods:
- Prepare spreadsheet with columns: Product Name, Quantity, Unit, Vendor, Cost Code, Phase, etc.
- Navigate to Materials for the contract
- Click Gear icon → Integrations
- Select spreadsheet import option
- Map spreadsheet columns to TRUE fields
- Review and confirm import
Supported Integrations:
- Glazier Studio - Glass and glazing contractors
- Stack - General construction takeoff
- Door Hardware Systems - Door and hardware specialists
- Fence/Gate Software - Fence contractors
- Other trade-specific systems available through canned integrations
Contact TRUE Support to configure integrations for your specific takeoff software.
- Navigate to Materials for the contract
- Click + icon
- Select Bid
- Choose items from the associated Bid record
- Materials are created with quantities and details from bid
Note: Most commercial contractors don't create detailed material lists during the bid phase. Material lists are typically created post-award during pre-construction using takeoff software or refined estimates.
Configuration & Administration
Access to the Materials module is controlled by user permissions. If you cannot see or access this module:
- Contact your system administrator
- Request the Module Access (Materials) permission (ID #1520)
- Once granted, you'll find the module in Workflows → Materials
Note: Administrators can manage permissions in Settings → Users / Access → select user → Access tab.
Deleting material records requires a specific security permission. This permission is typically restricted because deleting materials can affect job costing and procurement history.
- Contact your system administrator
- Request the Delete Materials permission (ID #773)
- This permission is found in the Materials section of user access settings
Important Considerations:
- Materials with associated POs or reserves should not be deleted
- Deletion affects budget vs actual cost tracking
- Consider using status changes instead of deletion when possible
Tip: Before deleting a material record, check if it has been linked to purchase orders, reserves, or inventory movements. Deleting materials with procurement history can cause data inconsistencies.
Cost codes control how material costs are categorized for job costing. Default cost codes can be set at multiple levels for consistent categorization.
Cost Code Assignment Hierarchy:
- Material-level override (highest priority) - Specific cost code on the material record
- Catalog item default - Cost code from the catalog item
- Contract item mapping - Based on linked schedule of values item
- Company default (lowest priority) - Default from Company Preferences
Configuration Steps:
- Navigate to Gear icon → Company Preferences
- Go to Job Costing section
- Configure default cost codes for materials
- Save changes
Note: Setting cost codes at the catalog item level is recommended for consistency. This ensures all materials created from that catalog item inherit the correct cost code automatically.