Product Lifecycle Management (PLM) using ERPNext

By John Clarke October 2, 2017 ERP No comments yet

Product Lifecycle Management using ERPNext

Note: This tutorial is based on Dale Scott's webERP tutorial series, and has been adapted from the original with his permission under the terms of the Creative Commons License.

Product lifecycle management (PLM) emphasizes best practice product development disciplines, and encompasses initial concept, design, manufacturing and sales, through ongoing production and engineering support, to final product end of life. PLM integrates people, data, processes and business systems to ensure a transparent product roadmap practice.

ERPNext support for PLM includes:

  • Integrated data model: Projects, people, hours, expenses, materials, purchase orders, production builds - all key data conveniently managed in one controlled system.
  • Change management: Processes that provide a visible, trusted, chain of truth.
  • Scalability: Scales with number of users, items and complexity of item trees.

Our aim is to illustrate ERPNext fundamentals and functions that support PLM using Swift Construction Company’s Aircraft Wireless example product, following their Product Management process


The goals of this tutorial are to:

  • Create a Bill Of Material (BOM) product assembly composed of item materials.
  • Identify item supplier information for purchasing.
  • Identify item manufacturer information for purchasing through distribution (manufacturer part number vs supplier part number).
  • Define appropriate work centers.
  • Capture expected manufacturing labour.
  • Identify an appropriate change management or ECO process. COMING SOON 


Here are some terms and their context that we will refer to:

  • Revision Level. Each item has a unique revision level, indicating changes made to the item or its supporting documentation since it was initially defined. The revision level is changed following a well-defined sequence. 
  • Release. A release is the creation or update of a logical set of items and supporting documentation. This may be to publish information for review, to support processes such as purchasing or manufacturing, or to recognize a milestone in the development project.
  • ECO (Engineering Change Order). A well-defined process for making changes to a part or assembly, usually custom. 


Create Item Groups

Swift Construction Company (SCC) is a fictional engineering service and product firm that grew from a one-person practice into distinct mechanical and electronics development teams.  From a business organization view, a product may identify as the responsibility of one or more departmental disciplines such as “mechanical”, “electronics & firmware" and so on.

Based on SCC’s organizational structure, physical items are grouped or categorized as either ELEC or MECH for raw materials and parts, or RADIOS for finished goods (currently the SCC’s only product line).

ERPNext uses an Item Group to classify and arrange Items in an Item Group Tree. To this hierarchy we will add RADIOS to Products, and ELEC and MECH to Raw Materials.

Setup module > Item Group Tree (or search 'Item Group Tree')

To add 'RADIO' as a classification to Products in the Item Group Tree (see above): Select Products, click 'Edit', set the 'Is Group' checkbox then click Save.  Again select Products, click 'Add Child' and enter 'RADIOS' in Item Group Name, and finally click 'Create New' button. RADIO should appear as a child of Products.

Now use the same steps above to add 'ELEC' and 'MECH' to Raw Materials in the Item Group Tree (see above).

Create Units of Measure

A Unit of Measure (UOM) specifies how a given Item is to be purchased, inventoried or  consumed. ERPNext supports different UOM units that depend on the business context, for example to purchase in US gallon jugs but to inventory and consume in millilitres. 

ERPNext has a list of standard UOM units to select from, or a user-specified UOM unit can be created.  A UOM is specified when a new Item is created.

Setup (or Stock) module > Unit of Measure (UOM) (or search 'UOM List')

Create Suppliers

A new supplier is most often created 'ad hoc'.  Here we will add our suppliers all at once (suppliers can also be imported from a CSV file). 

Buying module > Supplier (or search 'Supplier List')

To create a Supplier:  First click New, enter the Supplier Name and select the Supplier Type, then click Save. (Supplier details can be added as required.)

Create Items

Items are created from this study example SCC Aircraft Wireless development project.  We will only show details for creating Item part number 20000001, a 'custom inductor'. The rest of the items and bills of materials will be similar.  Item 20000001 is a sub-assembly composed of three parts: 90000001, 90000002 and 90000003, listed here:

20000001,"IND,830UH,AIRCRAFT WIRELESS"|-- 90000001,"WIRE,MAGNET,38AWG,POLY"|-- 90000002,"MAG,FERRITE ROD,1/4IN X 4IN,MATL=61"\-- 90000003,"TAPE,ELECTRICAL,3/4"",BLUE,VINYL"

Each of the three sub-assembly parts we create as individual items, starting with 90000001-00.

90000001-00 Magnet Wire

This part illustrates a somewhat special case:  This material we inventory and consume as a centimeter Unit of Measure (UOM).  However since it's purchased by the spool (the supplier's datasheet lists 19,300 feet of wire on a spool), the supplier Unit Of Measure is a whole number Unit or Nos.  

Such UOM 'pairing' cases as above - where an item has two associated UOMs in our materials inventory workflow - is discussed more in the Bill of Materials BOM section below.

(The consumption Unit of Measure is generally the most relevant for any transaction other than purchasing or inventory control. When purchasing, the Unit of Measure will generally be determined by the supplier, and ERPNext supports a separate purchase unit when creating a purchase order. This means say in an inventory audit, we will need to convert from the counted number of full spools, add fractions of a spool for any partial spools, and convert to centimeters. However, the conversion factor can be found in the item master purchasing data, and the math is not too laborious.)

Manufacturing (or Stock) module > Item

To create 90000001-00, enter its Item Code, Item Name, Item Group and Unit of Measure.

Enter Item Cost

Manufacturing (or Stock) module > Item, then click Item Price link to access form

In the Item form (shown above), click the link Item Price to access the New Item Price dialog box:  Select 'Standard Buying' from the Price List dropdown, enter 154.83 in the Rate field, then click Save.

Enter Standard Cost

The standard cost for cm UOM is C$0.00026308 per cm (C$154.83/spool x [ 1 / [ 19300ft x 30.48cm/ft ] ] ).

In the BOM, select an Item row from the list then click the arrow symbol icon to the far right of that row.

Editing Row # X

In BOM No box, select from dropdown 


Qty = enter a whole number


See "Rate Of Materials Based On" in Costing Section 

Amount (CAD)

90000002-00 Ferrite Rod

Items > Create New Item

Enter Purchasing Information

Items > Item Maintenance > Maintain Purchasing Data

Enter Standard Cost

Items > Item Maintenance > Maintain Standard Cost

90000003-00 Tape

What is a Bill of Materials (BOM)?

In manufacturing industry terms, a Bill of Materials (or 'BOM') specifies what materials (either bought or made) and operations are required to transform them into a finished product or part (or an assembly or sub-assembly etc). 

In ERPNext terms a BOM comprises one parent 'root' Item with one or more child 'leaf' Items. Each leaf can refer to either an Item or to another BOM.  (In other words, an ERPNext BOM represents a composite tree hierarchy structure.)

20000001-00 Inductor
In our example case, Item 20000001-00 will be manufactured from three Items that constitute a BOM assembly. To implement this BOM involves three steps:  
    1. Create Item 20000001-00 - This Item is the parent 'root' in our BOM
    2. Create the BOM, identifed as BOM-20000001-00, for the parent Item created above
    3. Add the four child Item materials that constitute the BOM assembly: 90000001-00, 90000002-00, 90000003-00 and 90000014-00.

    Note that our BOM has four items, not three as expected.  The two Items with the same description but distinct Item codes, 90000001-00 and 90000014-00, are required for the wire material UOM 'inventory transformation' case: Earlier we noted the wire is purchased in 19,700 foot spools but consumed in centimetres; this UOM pair is required for the UOM transformation that specifies the Stock Entry 'Repack' case.

Enter Standard Cost

Set the standard cost to be the total calculated 'operations' cost that includes for example labor and any fixed overhead costs.

Items > Item Maintenance > Maintain Standard Cost

Enter Standard Price

Items which may be sold require pricing. It is expected field technicians may wish to purchase 20000001-00 for maintenance repair.

Items > Item Maintenance > Maintain Pricing

Submit the Draft BOM (for use in production)

Once the BOM with all its Item part specifications - identifiers, names, costs, quantities and values etc - have been confirmed correct(!), click Submit to 'freeze' that BOM into a document version 'snapshot'.  A BOM must be in the Submit state to be used in manufacturing production.  (A document in the Submit state cannot be inadvertently edited or changed. To change a BOM for example to fix an error, first one must Cancel the BOM, edit whatever value needs to be changed, then Save and rerun Submit.  This creates a new BOM 'snapshot' version to replace the previous version, that henceforth can be applied in manufacturing. The screenshot below illustrates a example BOM in Draft state prior to its Submit state:

Sidenote:  To restore the current view of an ERPNext document to its last Save state, just run Reload. (To select that menu item dropdown, click on the login user name that appears in the ERPNext title bar.)  Reload discards all user edit changes to the state of the last Save document operation.

Create a Product Order - the Production Planning Tool 

Now use the Production Planning Tool to create a Production Order to initiate manufacturing of the Inductor item 20000001-00.  Simply add Item 20000001-00, specify the Planned Qty and click Create Production Orders (see the screenshot below)

Now Submit the Production Order to notify staff to start production; notice that the Submit operation also creates a Timesheet that lists the operations involved in the manufacturing process.


Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Managing Change

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 


Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.


No comments yet

No comments yet. Start a new discussion.

Add Comment