Inventory Batches and Batch Attributes
Complete the full lesson to earn 25 points
Work through each section, then tap “Mark as Complete” on the last one.
✦ Skip the page breaks and see fewer ads — read each lesson on a single page with Pro
Module: Configure Products
Section: Advanced Product Information Features
Lesson Title: Inventory Batches and Batch Attributes
In the complex world of supply chain management, knowing that you have 500 units of a product in your warehouse is rarely enough information. If you are a pharmaceutical company, you need to know which units were produced on Tuesday versus Wednesday, which ones expire next month, and which specific raw materials went into each bottle. If you are a food manufacturer, you need to know which pallets of flour came from a specific mill in case a contamination issue is reported. This level of granular control is achieved through inventory batches and batch attributes.
Inventory batches allow you to group items that share similar characteristics, usually because they were produced or received at the same time. Batch attributes take this a step further by allowing you to record specific characteristics of those batches—such as the concentration of a chemical, the moisture content of a grain, or the color grade of a fabric. Together, these features provide the foundation for traceability, quality control, and regulatory compliance. In this lesson, we will explore how to configure these features, how they interact with your broader inventory system, and how to use them to maintain a high standard of operational excellence.
Understanding the Role of Inventory Batches
An inventory batch represents a distinct subset of a product's total inventory. When you enable batch tracking for a product, every transaction—whether it is a purchase receipt, a production output, or a sales shipment—must be associated with a batch number. This creates a "paper trail" that follows the physical goods as they move through your facility and out to your customers.
The primary reason for using batches is traceability. If a customer reports a defect, you can look up the batch number on their order. From there, you can trace the batch back to the production run, see which employees were on the shift, which machines were used, and which specific batches of raw materials were consumed. This "one up, one down" visibility is not just a best practice; in many industries like aerospace, medical devices, and food production, it is a legal requirement.
Beyond traceability, batches help manage the physical aging of stock. By assigning expiration dates to batches, systems can automatically prioritize the oldest stock for picking, a strategy known as First-Expiry-First-Out (FEFO). This reduces waste and ensures that customers always receive products with an acceptable remaining shelf life.
Callout: Batch Numbers vs. Serial Numbers
It is important to distinguish between batch numbers and serial numbers, as they serve different purposes. A batch number identifies a group of items that are considered identical (e.g., 1,000 gallons of paint mixed in one tank). A serial number identifies a single, unique unit (e.g., the specific VIN on a car or the IMEI on a smartphone). While you can use both for a single product, batches are used for volume-based tracking, while serials are used for individual unit accountability.
Configuring Batch Tracking
To start using batches, you must first define how the system should handle them. This usually begins with the configuration of a Tracking Dimension Group. This group determines whether the batch number is a required field for inventory transactions and whether it should be tracked at the "financial" level (meaning the system tracks the cost of each batch separately) or just the "physical" level.
Batch Number Groups
Most modern ERP systems allow you to automate the creation of batch numbers using Batch Number Groups. Instead of warehouse workers manually typing in a number every time they receive goods, the system can generate one based on a predefined format.
Common formats for batch numbers include:
- Date-based: YYYYMMDD-001 (Useful for seeing at a glance when a batch was created).
- Order-based: PO12345-01 (Links the batch directly to the purchase order it arrived on).
- Sequential: A simple incrementing number (B-1001, B-1002).
Note: When designing your batch numbering scheme, keep it as simple as possible. Avoid trying to pack too much "meaning" into the number itself, as this often leads to overly long strings that are difficult for warehouse staff to read or scan. Use batch attributes to store the "meaningful" data instead.
Batch Disposition Codes
A batch isn't just "in stock" or "out of stock." It often has a status. Batch disposition codes allow you to control what can happen to a batch. For example, you might have a disposition code called "Quarantine" that prevents a batch from being sold or picked for production until a quality test is passed. Another code might be "Expired," which prevents any movement of the goods until they are disposed of or re-tested.
The Power of Batch Attributes
While a batch number tells you which group an item belongs to, batch attributes tell you what that group is like. Batch attributes are characteristics that can vary from one production run to another. For example, if you produce orange juice, one batch might have a sugar content (Brix level) of 11.2, while the next batch has 11.5. Both are acceptable, but knowing the exact value is critical for consistency.
Types of Attributes
Attributes are generally categorized by the type of data they hold:
- String: Used for text-based information like "Origin Country" or "Supplier Grade."
- Integer/Fraction: Used for numeric values like "Potency," "Weight," or "Purity."
- Date: Used for specific milestones, such as "Testing Date" or "Best Before Date."
- List: A predefined set of options (e.g., Color: Red, Blue, Green) to ensure data consistency.
Attribute Inheritance
One of the most advanced features of batch management is attribute inheritance. This occurs when a finished product "inherits" the attribute values of its raw materials. Imagine you are manufacturing a high-strength alloy. The strength of the final product depends heavily on the carbon content of the raw iron used. With inheritance, the system can automatically pull the carbon percentage from the raw material batch and record it against the finished alloy batch. This eliminates manual data entry and reduces the risk of errors.
Callout: Active Ingredients and Potency
In the chemical and pharmaceutical industries, batch attributes are used to manage "Active Ingredients." If a raw material batch is slightly less potent than standard, the system can use the attribute value to calculate that you need to add more of that material to the recipe to achieve the desired effect. This is known as "compensating" or "potency-based" manufacturing.
Practical Example: Managing a Food Production Line
Let's look at a practical scenario involving a company called "FreshBake," which produces organic flour.
- Receiving: FreshBake receives a shipment of organic wheat. The warehouse worker assigns it Batch #WHEAT-001.
- Attribute Recording: During the intake inspection, the moisture content is measured at 12.5%. This value is recorded in the "Moisture" batch attribute for WHEAT-001.
- Production: The wheat is sent to the mill to be ground into flour. The system creates a new batch for the flour, FLOUR-500.
- Inheritance: Because the flour is made entirely from WHEAT-001, the system is configured to pass the "Organic Certification Number" attribute from the wheat batch directly to the flour batch.
- Quality Check: The final flour is tested for protein content. The result (11.8%) is recorded as a batch attribute on FLOUR-500.
If a bakery later complains that the flour isn't rising correctly, FreshBake can look up FLOUR-500, see the protein content, and trace it back to the specific wheat batch and its moisture levels. This level of detail allows the company to identify whether the issue was with the raw material or the milling process.
Technical Implementation: Data Structure
For those looking at how this is structured in a database or a system configuration, it's helpful to understand the relationship between these entities. Below is a conceptual representation of how batch data is often stored.
/*
Conceptual SQL Structure for Batch Management
This shows how Batches link to Products and Attributes
*/
-- The main Batch record
CREATE TABLE InventoryBatch (
BatchID VARCHAR(50) PRIMARY KEY,
ProductID INT NOT NULL,
ManufacturingDate DATE,
ExpiryDate DATE,
DispositionCode VARCHAR(20) -- e.g., 'Available', 'Quarantine'
);
-- Definition of what attributes exist
CREATE TABLE AttributeDefinition (
AttributeID INT PRIMARY KEY,
AttributeName VARCHAR(100),
DataType VARCHAR(20), -- 'Decimal', 'String', 'Date'
MinimumValue DECIMAL(18,4),
MaximumValue DECIMAL(18,4)
);
-- The actual values assigned to a specific batch
CREATE TABLE BatchAttributeValues (
BatchID VARCHAR(50),
AttributeID INT,
AttributeValue VARCHAR(255),
FOREIGN KEY (BatchID) REFERENCES InventoryBatch(BatchID),
FOREIGN KEY (AttributeID) REFERENCES AttributeDefinition(AttributeID)
);
In this structure, the InventoryBatch table holds the high-level data, while the BatchAttributeValues table allows for an infinite number of characteristics to be added without changing the database schema. This flexibility is what allows one system to work for both a steel mill and a yogurt factory.
Step-by-Step: Setting Up a Batch-Controlled Product
Setting up batch tracking requires a specific sequence of actions to ensure the system behaves correctly during transactions.
Step 1: Define the Tracking Dimension Group
Navigate to your system's inventory dimensions and create a new group.
- Ensure the Batch number dimension is set to "Active."
- Decide if you want "Primary stocking" enabled. If enabled, the system will track the physical location (Aisle/Shelf) for every batch.
- Select "Blank receipt allowed" as No. You never want to receive items without a batch number if you are under regulatory scrutiny.
Step 2: Create Batch Attributes
Go to the Product Information Management section and define your attributes.
- Name the attribute (e.g., "PurityPercentage").
- Assign a type (e.g., Fraction).
- Set a range. If the purity should never be below 80%, set the minimum to 80. The system will alert the user if they try to enter a value outside this range.
Step 3: Assign Attributes to the Product
You don't want every product to have every attribute. A "Color" attribute makes sense for fabric but not for salt.
- Open the specific Product record.
- Navigate to "Product Attributes" or "Batch Attributes."
- Add the relevant attributes to the product. You can also specify if these attributes are "mandatory," meaning a batch cannot be finalized until the value is entered.
Step 4: Configure the Item Model Group
The Item Model Group controls the inventory logic.
- Select the FEFO date-controlled checkbox. This tells the system to look at the batch expiration dates when suggesting which items to pick for a sales order.
- Set the Pick criteria. You can choose to pick based on the "Expiration date" or the "Best before date."
Tip: Always perform a "dry run" in a test environment after setting these up. Try to receive a batch, record an attribute, and then sell it. Verify that the system prompts you for the batch number at every step and correctly applies the FEFO logic.
Comparison of Batch Management Strategies
Different companies have different needs for how strictly they track batches. The following table compares three common approaches.
| Feature | Basic Tracking | Compliance-Driven | Quality-Integrated |
|---|---|---|---|
| Batch Creation | Manual at receipt | Automatic at production | Automatic with pre-allocation |
| Attributes | None or minimal | Mandatory for regulatory | Used for formula adjustments |
| Traceability | Backward only (Sales to PO) | Full Forward and Backward | Real-time sensor integration |
| Disposition | Simple (Open/Closed) | Controlled via QA login | Automated based on test results |
| Primary Goal | Organization | Legal Compliance | Process Optimization |
Best Practices for Batch Management
Implementing batch tracking is a significant change for warehouse and production staff. To ensure success, consider these industry-standard best practices.
1. Use Barcoding for Everything
Manually typing 15-character batch numbers is a recipe for disaster. Data entry errors will break your traceability chain. Every batch should have a barcode label printed the moment it is created. Warehouse workers should use handheld scanners to "scan into" a batch when moving or picking items.
2. Implement Batch Disposition Codes
Don't rely on people to "remember" that a certain pallet is waiting for lab results. Use disposition codes to hard-block the inventory in the system. If the system physically prevents a user from adding a "Quarantined" batch to a sales order, you have built a fail-safe against human error.
3. Set Realistic Shelf Life and Buffer Periods
When configuring expiration dates, include a "buffer" period. For example, if a product is shelf-stable for 12 months, you might want to stop shipping it to retailers after 9 months so they have time to sell it. Most ERP systems allow you to set a "sellable days" threshold that prevents the system from picking batches that are too close to their expiration.
4. Regularly Audit Your Traceability
Don't wait for a real recall to see if your system works. Perform "mock recalls" twice a year. Pick a random batch of raw material and see how long it takes your team to identify every finished product that contains it and every customer who received those products. High-performing organizations can complete this in under two hours.
Warning: Avoid "Batch Proliferation." This happens when you create new batch numbers for every tiny movement or change. If the items are truly the same and were produced under the same conditions, keep them in the same batch. Too many batches create "inventory fragments" that make the warehouse difficult to manage and slow down system performance.
Common Pitfalls and How to Avoid Them
Even with the best software, batch management can go wrong. Here are the most common mistakes and how to steer clear of them.
Over-Complicating Attribute Requirements
It is tempting to record every possible piece of data about a batch. However, every attribute you make "mandatory" is another data point a human has to enter. If your staff is overwhelmed, they will start entering "junk data" (like "123" or "TBD") just to bypass the screen.
- Solution: Only track attributes that you actually use for decision-making or that are required by law. If you don't use the data, don't collect it.
Ignoring the "WIP" (Work in Progress) Gap
Sometimes companies track batches for raw materials and finished goods but forget to track them during the intermediate stages of production. If a batch of dough sits in a vat for three days, it needs to maintain its batch identity.
- Solution: Ensure your "Work in Progress" (WIP) locations are included in your tracking dimensions. The batch identity should never be "lost" during the production process.
Failing to Manage Vendor Batches
Many companies create their own internal batch number but lose the vendor's original batch number. If the vendor issues a recall, they will reference their number, not yours.
- Solution: Most systems have a specific field for "Vendor Batch Number." Always capture this during the receiving process. It serves as the bridge between your system and your supplier's system.
Neglecting Batch Merging Logic
What happens when you have 10 gallons left of Batch A and 10 gallons left of Batch B, and you pour them into the same container? This is a "batch merge." Many systems struggle with this because the new mixture is technically a new batch with a hybrid of the original attributes.
- Solution: Define clear Standard Operating Procedures (SOPs) for merging. Usually, the resulting batch must take on the worst characteristics of the parents (e.g., the earliest expiration date and the lowest purity level) to ensure safety.
Advanced Topic: Batch Attributes in Customer-Specific Requirements
In some B2B industries, different customers have different requirements for the same product. This is where batch attributes become a competitive advantage.
Imagine you sell industrial lubricants. Customer A requires a viscosity between 40 and 45. Customer B is less picky and accepts anything between 40 and 60. When you produce a batch, you record the viscosity as an attribute. When an order comes in for Customer A, the system can automatically filter your inventory to only show batches where the "Viscosity" attribute is between 40 and 45.
This process, often called "Attribute-Based Picking" or "Inventory Reservation Logic," allows you to serve high-specification customers from your standard production runs without needing to create unique part numbers for every variation. It maximizes your inventory utility and ensures customer satisfaction.
Summary and Key Takeaways
Inventory batches and attributes are the "DNA" of your products. They provide the necessary detail to move beyond simple quantity tracking into the realm of quality assurance and strategic supply chain management. By mastering these tools, you can reduce waste, ensure safety, and provide a higher level of service to your customers.
Key Takeaways:
- Traceability is Non-Negotiable: Batches provide the essential link between raw materials, production processes, and the end customer. This is the foundation of any recall or quality investigation.
- Attributes Define Quality: Use batch attributes to record variable characteristics (like potency, moisture, or color) that distinguish one production run from another.
- Automate for Accuracy: Use batch number groups and barcode scanning to eliminate manual entry errors. A batch tracking system is only as good as the data entered into it.
- Leverage FEFO for Efficiency: Use expiration date tracking and First-Expiry-First-Out logic to automatically manage shelf life and reduce inventory write-offs.
- Control Status with Disposition Codes: Use system-enforced disposition codes to prevent the sale or use of batches that are expired or awaiting quality clearance.
- Inheritance Saves Time: Configure attribute inheritance to automatically pass critical data from raw materials to finished goods, reducing the administrative burden on your production team.
- Balance Detail with Usability: Only track the attributes that add value. Over-complicating the system leads to user fatigue and poor data quality.
By implementing these features thoughtfully, you transform your inventory from a list of numbers into a rich, searchable database that supports every aspect of your business—from the warehouse floor to the executive boardroom.
Enjoying the courses?
Everything stays free. Pro shows fewer ads, doubles your daily points limit so you progress twice as fast, and lets you read each lesson on one page.
- ✓ Fewer advertisements
- ✓ 2× daily points limit
- ✓ Distraction-free lessons