One of the earliest—and most underestimated—decisions during an ERPNext implementation is how to structure Item Codes.
Manufacturers frequently ask:
- “Should we create a new item for every supplier’s part number?”
- “What if Vendor A and Vendor B sell the same raw material under different codes?”
- “How do we handle alternates without breaking our BOMs?”
In spreadsheet-driven environments or legacy ERPs, it is common to see:
- Multiple item codes for the same physical material
- Item masters named after suppliers
- BOMs hard-linked to vendor-specific parts
This may feel manageable at low volume, but the impact becomes severe as operations scale.
Real-World Consequences of Getting This Wrong
If item coding is poorly designed, manufacturers experience:
- Bloated item masters with duplicate items
- Rigid BOMs that break when a supplier changes
- Procurement inefficiencies due to manual substitutions
- Rework during ERP maturity phases, often requiring data cleanup and migration
ERPNext does not “fix” bad master data decisions. It amplifies them.
This is why understanding generic vs supplier-specific item codes is not an accounting detail—it is a core supply chain design decision.
ERPNext’s Conceptual Model: How the System Thinks
ERPNext is intentionally designed around separation of concerns.
At a high level:
- Item represents what you stock, consume, manufacture, or sell
- Supplier represents who you buy from
- BOM represents how you manufacture
- Purchase transactions represent commercial terms
What ERPNext Assumes by Design
ERPNext assumes that:
- An Item is supplier-agnostic
- Suppliers may have their own internal codes for the same item
- Procurement decisions change more frequently than engineering decisions
- Manufacturing should not break because purchasing switches vendors
This is why ERPNext discourages creating supplier-specific items unless the material is truly different in form, fit, or function.
This conceptual separation allows ERPNext to scale cleanly across:
- Multi-supplier sourcing
- Cost negotiation cycles
- Shortages and substitutions
- Long-term product lifecycle changes
ERPNext Features Most Teams Don’t Fully Use (But Should)
1. Supplier Part Numbers
What it does:
Maps supplier-specific identifiers to a single internal item.
Use when:
- Same material sourced from multiple vendors
- Supplier codes differ significantly
- Vendor catalogs change frequently
Do NOT use when:
- The material specification differs (grade, tolerance, coating)
2. Alternative Items in BOMs
What it does:
Allows interchangeable components without duplicating BOMs.
Use when:
- Multiple equivalent components can be consumed
- Supply shortages are common
- Engineering approves substitutions
Do NOT use when:
- Substitutions affect performance, compliance, or certification
3. Batch / Lot Tracking
What it does:
Tracks traceability without fragmenting item masters.
Use when:
- Quality or compliance requires traceability
- Same item has multiple incoming batches
Do NOT replace item codes with batch logic
4. UOM Conversion
What it does:
Lets suppliers sell in one UOM while you stock in another.
Use when:
- Supplier sells in KG, you consume in meters or pieces
- Conversion is stable and predictable
Manufacturing Example: End-to-End Use Case
Scenario
A hardware manufacturer uses M8 Hex Bolts (Grade 8.8) in multiple products.
- Supplier A calls it HX8-8-M8
- Supplier B calls it BOLT-M8-G88
- Supplier C supplies during shortages only
Correct ERPNext Setup
Item Master:
- Item Code: BOLT-M8-G8.8
- Stock UOM: Nos
Supplier Details:
SupplierSupplier Part No
Supplier A.
HX8-8-M8
Supplier B.
BOLT-M8-G88
Supplier C
M8-HEX-ALT
BOM:
- Uses BOLT-M8-G8.8
- Optional: Alternative Items enabled
Outcome:
- BOM remains unchanged
- Purchasing switches suppliers seamlessly
- Inventory stays consolidated
- Cost comparison is accurate
This is exactly the operational resilience ERPNext is designed for.
Decision Framework: What Should You Do?
Use a Generic Item Code When:
- Functionally identical materials
- Engineering spec is the same
- Multiple sourcing is expected
Create a New Item Only When:
- Specification differs
- Compliance or certification differs
- Manufacturing behavior changes
Red Flags During Setup
- Item count growing unusually fast
- Same description with different codes
- BOM duplication due to vendor change
Common Mistakes to Avoid
- Treating Item Code as a supplier catalog field
- Letting procurement drive item creation
- Encoding supplier logic into BOMs
- “Fixing later” during go-live pressure
These mistakes usually stem from speed—but cost far more time later.
Closing Summary: The Practical Takeaway
ERPNext is not restrictive—it is opinionated for good reason.
By separating:
- Item identity
- Supplier identity
- Manufacturing logic
ERPNext enables manufacturers to scale procurement and production without rework.
If you get item codes right before transactions begin, everything downstream—inventory, costing, BOMs, analytics—works as intended.

