ERPNext provides a lot of flexibility to define items however I feel there are small things that can improve it further
Although ERPNext does not directly define SKU’s, it can be achieved using the templates and variants. However there are few concerns to which I will like to draw attention to:
1.1. There are attributes that may not be relevant at the beginning however they can become important later on. ERPNext should have dynamic SKU wherein there should be an ability to add new attributes. The new attributes should have default value which will be used to populate the older item codes.
1.2.To make ERPNext relevant to existing practice in the industry, they should rename the item code, at least for variants, to SKU. People when they come looking for ERP solution are sometimes only search for specific keywords. This will definitely make them interested.
1.3.We get use cases where some of the attributes which important for some users are not important to others. For example, a shirt may have colour as one attribute. Some users may want a specific colour, others may not care.A lot of times this creates problem wherein we may have stock of the item say in one colour and quotation/sales order that was issues for another. There can be an option to mark the attributes whether it is mandatory or not. If an attribute is not mandatory, and there are items available of other attribute values, the system can prompt if the user wants to switch the item.
1.4.The way the SKU’s are defined leads to too many separators. It will be easier to understand if we can group the attributes together and there is a separator after at the end of the group. Also for that to be useful, the values of the attributes have to be of fixed length
2. Serial Numbers/Batch Numbers
I feel that serial numbers and batch numbers should be on by default. The option should be between whether the use want to manage it themselves of let the system manage it. In the current scheme, the user only have the option to enable/disable it when they are defining item. However as soon as there is one transaction, we cannot change it. At times serial number or batch numbers for the items have to be enabled later on due to variety of reasons. The only way that it can be done is making a new item code. This leads to too many changes, like in BoM’s etc, and confusion among users. Moreover as more and more emphasis is being given to the traceability of the material, it is important that by default ERPNext should be able to handle it.