Best way to rollout ERPNext for a small manufacturing business?

I work for a manufacturer. Our company has no ERP in place and no stock levels of inventory. So far all our projects are being kept track of using spreadsheets. We are finding that this model is not sustainable. ERPNext is a great solution but I am not sure what the best way to implement it would be. We currently want to be able to track all production and production orders in ERP which requires accurate stock but because we have a large facility and BOM’s with ~20 components down to the last screw it is really difficult to get actual stock levels of all existing things for a small company like ours with just ~10 people in the office who all have a lot of work already and ~10 assembly workers. What are some suggestions to help implement ERPnext into our production process? Should we ignore perhaps smaller components in the BOM’s like screws? Thanks.

1 Like

This really depends on how closely you want to track your production costs. ERPNext will not be happy about building something (in a Production Order) if it components do not exist in the BOM.

ERPNext really wants to have accurate counts of all components.

However, this should NOT make you shy of using it for your ERP system. I have a client that is in a similar situation (except purely by accident). They thought they had an accurate count of all of their components used to make their products. So, they plugged in all the numbers, built the BOM’s and started issuing Production Orders. Many times they would issue a Production Order when the system indicated there was plenty of raw materials to use. When the manufacturing person tried to pull the materials for production, they didn’t really exist.

Now, the above scenario sound like a nightmare, but this client turned it into a positive thing. They simply canceled the production order and gave the information to the person responsible for purchasing. The purchasing person would order the missing components. When they were received on the dock and into the system, the inventory numbers for that item were now accurate and the rest of the ERPNext system allows you to closely monitor that newly updated item.

Did that have some growing pains? Yes, but they client ultimately decided that if they didn’t take this approach to integrating the ERPNext system, they would be forever using spreadsheets. It all comes down to the attitude of the business owner.

In similar fashion, if a production order was generated and it had Items with a red or orange dot next to them, it would prompt the manufacturing person to go check the actual stock level. If they found the items in stock to make their product, then they just counted what was in inventory and gave that number to the person in charge of inventory (which in this case also happened to be the purchaser). Again, this process allowed them to adopt ERPNext even though their recorded inventory levels were not accurate.

Every time a component reached either an actual shortage (nothing on the shelf), or an implied shortage (ERP system thinks there is nothing on the shelf), it added to the accuracy of the system because someone would have to come up with a correct count at that moment in time.

If they had continued to use their inaccurate spreadsheets, they would probably be having the stock levels headache even more frequently.

Not a comfortable process to go through, but at least you only go through it once per item instead of constantly. Eventually, everything in the ERPNext system is accurate and you no longer have to use the OCIO method of inventory control.

(O.C.I.O = “Oh Crap, I’m Out”)

Hope this helps… It is just a change of attitude to get you over the starting line :grin:



A note about things like the little screws and washers, etc.

In most cases, there should be a counting scale on hand to weigh the incoming items. When you order screws and washers, they do not always come as a UOM of .each. and may be by the pound or kilo. A counting scale lets you count a small number (like maybe 10 screws) into the scale and them press a button to save the weight. Right after that you dump the whole box of screws into the scale and it calculates how many are there based on the weight of the small original sample.

Very useful tool for mechanical manufacturing businesses.

Hope that helps…



Wow, thanks for the great replies! Yes, I suppose it will just be a massive project for our company to record stock of everything. So I suppose we cannot really utilize the system until inventory is filled out then…

Hypothetically, if I want my cost calculations to include utility usage like electricity and gas, how would we go about doing those?

1 Like

Hmm… Gas and Electricity are not easy to monitor in the first place. Usually the electric company only has one meter on the whole building, so trying to monitor befoer and after readings would vary greatly. If everyone in the building was using their PC and all the lights were on, the numbers would be very different than if the building was empty except for the manufacturing.

As long as the Gas line was only hooked up to the manufacturing process, you might be able to monitor before and after readings and then add those into the BOM as x number of gas units to make this production order.

Water is a little easier. One of my clients mixes chemicals to make products. One of the raw materials is water they get from the tap (city utility). In this case they made Water a item in the system and count the number of gallons they use for each batch. At the end of the month they can see how many gallons of water went into the manufacturing of their products and use that number to calculate how much of the entire water bill for the building is actually due to manufacturing. It then becomes easy to calculate the cost of that water usage.

Doesn’t seem like I was much help on this one, but maybe it will spark an idea for you to get your numbers. :thinking:



Well, you do need some sort of starting numbers even if they are only estimates. Essentially the numbers my client used were more than 50% incorrect, and yet using the count-as-you-go technique, they were eventually able to get all of their numbers accurate. So it may NOT have to be a total shutdown and counting exercise. Maybe you just walk through and do a visual estimate of your items first so you can have something to plug into the system.

Here is a little tip… I have been setting up inventory control system for a long time and I have NEVER had a client with accurate numbers of their inventory at the beginning. It was just the POSITIVE attitude of the client I described several posts back that had the MOST success with an ERP system startup.

Their attitude served to teach this old dog :wink: a few things about how to manage a successful startup. I use their example everywhere I go now. You would be surprised at just how far a simple change of mindset can carry you through a difficult situation.

Hope this helps…

**UPDATE… I forgot to mention, Once the client had their manufacturing people used to counting (or estimating) the raw materials every time they were accessed, they continued to do this even after all of the inventory numbers were accurate. They still do it, and you would be surprised how often this add practice catches mistakes from the Receiving Dept, or other departments that can influence the inventory counts. That one change in habit has made them more productive in the long run… And it all started as a way to get up and running with ERPNext.



The underlying message is, ERP systems should not be a replacement for critical thought, verification, credible process or positive attitude!! :slight_smile: Nice post! Thanks


Well said. Too bad I am not able to get all of that into a single sentence like you did. :grin:



Let’s take a step back first. The goal of tracking all these figures like utility or those innumerable screws is to figure out the expenditure that goes into manufacturing, upkeep or whatever you are purchasing anything for.

Given that, instead of breaking it down per process, maybe we can bill the purchases as necessary expense for all the processes? That is to say, instead of counting screws or units of electricity used in a single BOM, the cost of purchase is added to the BOM. i.e. (cost of all BOMs in x time) + (electricity bills for x time) = (manufacturing costs).

So, rather than granular breakdown, an expenditure report that takes auxiliary expenses into account?

PS I’m no accountant, so I don’t really know the usefulness of such calculations. OTOH, if anyone can help me understand chart of accounts, please do get in touch.

Complex complicated question and approach. Before you begin, please write down on a piece of paper the top 5 problems you are having currently and the order in which you want to address those problems. You can only address one problem per quarter, which basically means that the journey will take you 1+ year to address your top 5 points.

These points will also help you make trade offs and most importantly will set your stakeholders expectations about what they are getting this quarter. And even more important: What they WILL NOT get this quarter.

And every time things get too complicated and people start asking for everything, as they are wont to do, you can go back to this blueprint and understand for yourself and articulate for others what you are trying to accomplish.

Here are the three main phases you should be prepared to go through before you get a good handle on your inventory:

Phase 1: No Accounting Entries for Stock Transactions (which means Cost of Goods Sold = Opening Stock + Purchases - Closing Stock. This will prevent your stakeholders from hyper-ventilating every time they look at your P&L. Turn on Negative Stock.

Phase 2: Turn on Accounting Entries: But allow negative stock. The process of getting Inventory under control will consist of two independent, yet interdependent activities: 1. Getting your stock level correct, 2. Getting your transactions (inbound & outbound) correct. It’s a much harder journey if you don’t want to turn on negative stock. Sometimes your users wouldn’t be able to make outbound transactions because ERPNext balances are not reflecting the quantities that they can see they have in stock. The stock balances shown on ERPNext are some random number (because of negative stock), so material planning still remains an art. But once you get the transactions right, you will know how much you bought and how much you used, so it becomes a bit more of a science.

Phase 3: Accounting Entries for Stock Transactions and disable Negative Stock. Once you get your transactions correct, do a comprehensive stock taking/checking, load up the numbers and boom, you are in a brilliant area, inventory wise.

However, you should plan on establishing different instances of ERPNext for each phase and migrate people over to the new instance, while ensuring that you migrate the correct balances, offsetting all the errors users would have made during their learning process.

Next you have to worry about manufacturing entries. Initially you can pass manufacturing entries based on the planned Bill of Material. But if there is variability in your manufacturing process, you have to find a way to capture the actual consumption of raw material and components. A job route card is a good way to track consumption at the shop floor level.

No silver bullet. No Magic Wand! Be prepared to sweat it out. Even if you are implementing in Antarctica. :slight_smile:

This is not to throw ERPNext under the bus. The underlying issues are common to all ERPs. But your users will take to ERPNext better than they take to any other ERP, Guaranteed!!

Good luck and let us know how the community can help in your journey. And how you progress!




Interesting idea you have there, but I am not sure it works well unless the manufacturing facility is always going to make the same set of things forever. When no new products are being developed, then your idea fits well.

That is not the reality of small to medium manufacturers (ERPNext prime target customer). The smaller and usually younger businesses do not invent a product, setup manufacturing, bring it to market, and then make it the same way for long periods of time.

There are 3 basic business models for these types of businesses.

  • First the “Developer” business model.

These businesses are setup specifically to develop new products and then sell them to another larger business that can take the product to far greater levels. Like the guy that develops the first electric pencil sharpener. He had the idea, and figured out the first manufacturing process to get them made. His problem was he could not afford to take it to the broad market it would need to be a really big success. So he sells the rights to the item and all manufacturing process to a company that can make it big. The original inventor gets enough money from the sale to invent his next idea.

These businesses represented almost half of small manufacturers less than 10 years old for the 21st century and late 20th century. These businesses are not interested in lumping all of their activities into broad and general accounting columns. They want to know down to the fraction of a penny how much it costs to make a single item of their product because every investor that they take their ideas to wants to know where they may be able to profit. If the inventor cannot show exact costs for a single product line and a single product cost-to-manufacture, then they cannot even get an audience to offer the sale.

Some of these businesses even have a board of investors that want timely updates about how costs are being controlled in order to better position the eventual sale of a complete idea.

  • Second business are the Market Niche Players.

This group makes up the second largest group of small to medium sized manufacturers. They get into a particular business because they have a special insight about a few subjects that they are able to turn into profitable products to fill a need. Sometimes they even know how to make their customer see a “need” they didn’t know about. These businesses need to be able to move quickly when new raw materials or new technologies emerge. They are the ones to take advantage of those events and keep improving their niche products.

The ability to grow in this kind of business is very dependent on accurate and up-to-the-minute cost data. Not cost data for their entire operation, but cost data to specific items they manufacture. Without that data, they cannot remain nimble enough to stay on top of their market. exact cost-to-manufacture an item is important to this group (and the perfect ERPNext candidate).

These businesses are often small corporations that have to answer stock holders that usually also board members. You can count on the fact they want to know if a particular product in making them money or dragging down their profits. As new raw materials or technologies continue to allow these businesses to innovate, their stock holders will be moving just as fast to see if these new development cycles are profitable.

  • Third largest group of small to medium sized manufacturers are those that start their business out of a passion for the particular product.

Think MicroBreweries and similar entities. These kinds businesses were not started to become national names but to server their local areas. These types businesses may in fact be okay with your idea of overall manufacturing costs versus to the penny per item costs. At some point they will probably need the per-item costs, but probably not as often or as quickly as the other groups discusses here.

I just believe it is ‘old thinking’ to assume that a business does not need to know what it cost them to make a particular product.

These are my experiences, and may be very different from your own. So, all of this is just another opinion if you will, but one that I can back up with experience.

So it is a sort of “best practice” to approach the ERP business with a completely open mind. You will always be surprised at how innovative your clients can be with the data they generate from their business system.


This is something to think about :thinking:

I would really like to hear more about how you might implement something like this. I had always wanted to advance a client through the learning process in this way but kept stumbling over several pitfalls.

  • The chances of historical data being lost or inaccurate due to the migration process.

  • The rapidly changing EPRNext system core. My experience is clients very much dislike this because it means a different kind of learning curve each migration happens.

  • The sheer workload of constantly setting up and implementing a fresh ERPNext system for each of the migrations. The clients are NOT the only ones that have to re-learn the system at each migration level. So not only do the implementation teams have to figure out how to setup all of the new accounting adjustments to make your idea work, they also have to figure out what new steps might have to be done in the latest versions.

Regardless of the pitfalls, I still REALLY LIKE this approach. I would also like to hear more about how you might have overcome some of the things I fear about it.

Overall you whole “growth and learning” plan is quite well put together and I think this concept of migrating ERPNext to help clean up the previous learning errors would be a huge leap forward as a startup concept. I still have tons of questions though:

  • Is it possible to “clean up” the accounting data with each migration cycle and still have historical relevance? Or does the historical aspect get lost?

  • Do you foresee enough improvement in the Manufacturing module to make this kind of migration process worth while? Right now the Manufacturing module is missing some very important functions when it comes to accounting for mistakes and bad raw materials. It is so rigid that it creates 3x the data entry work just to keep it moving forward.

  • Do you believe the Accounting module is flexible enough to support this kind of process? Or is the major reason behind your migration approach to make up for some perceived inflexibility of the current version?

Regardless of how it stacks up, I would really like to learn more about this and your vision for implementing such a process. I really like the higher level ideal of the eventual result.

Can you elaborate any on some of the details? More specifically this migrating idea?

If you can layout a way to make that work, it would mean you may have found a much better path to success than any previous plans.

I bet you have the interest of a lot of people like me right now that make their business to help other businesses adopt ERPNext.


Is that something like a kanban board? Or is it more of a manual process on a clipboard?


I want to setup multi-instance migration process myself, but the problem is accounts. IMHO, that’s the biggest and steepest stumbling block. The SMEs that ERPNext targets more often than not only have simple ledgers or Excel sheets to record daily transactions, chart of accounts is a completely foreign territory to them and folks like myself who’s from technical background, without any knowledge of accounting terminology.

I’ve implemented ERPN for a computer parts retailer and contractor, and we decided that our opening balance since the day we’ll start using ERPN will be 0 so that our accounts will be in the negatives with the profits from sales to even those out. All the purchase invoice we entered, the purchase account was set to be the Main Safe. Now the general ledger shows 100 in main safe which is then transferred to the supplier.

Then there are things like accounts for asset management, depreciation, write off, cash change accounts, etc’s functions are not quite obvious. Okay, depreciation accounts is understandable, but what is write off, where does it come in, how do I use it? Change accounts as well, what merits are there to have it accounted separate from cash?

Okay, I went way off topic with the rant, sorry about that. Coming back to multi-instances, when switching from one instance to another, the things like sales and purchase invoice numbers should be kept constant, how do we go about doing those?

Can’t such granular tracking possibly done using the project module?

1 Like

Probably, but I have yet to need it. I think the project module it more suited for businesses like home builders, custom car shops, and other one-off type functions. Possibly for a business that needs to add new assembly lines to their manufacturing floor, etc.

I wouldn’t be to quick to judge this case. I run into a lot of small businesses using either Quickbooks or Excel spreadsheets. Once you get above a million dollars in sales, almost all of them that I meet are using some sort of accounting package for financial accounting and they think they only need a way to track inventory.

Okay, here is where even a little financial homework can go a long way. The “Write-off” account is where you track expenses that were incurred by mistake, or by other causes outside your control. This would be events like customers tat owe you money that you can never collect, or if you manufacture a batch of product that is defective in some way and cannot be sold.

As for the “Change” account, it is not something I have ever contemplated. I always set the change account equal to the cash account and that way the cash register drawer balance is easier to figure out at the end of the day. However, I understand it is most helpful in countries where the currency is in very large denominations and exact change is not always possible. When the smallest denominations of currency are retired from circulation because they represent such tiny fractions of a cent, then Change account helps keep exactly on track for the end of the year totals. When used in conjunction with “Rounding” it can make taxes easier in those countries.

The only thing I do with “Change” is keep track of it per transaction. That way if a cash register drawer is not correct, it is possible to look back through the day’s transactions for a register and see where the error (or fraud) might have happened.

That my friend is the sore spot in migrating ERPNext instances. It is why I asked @JayRam if he could elaborate more on his idea of using the migrating of ERPNext through different training/learning cycles for a client. If he has a plan to make that go smoothly, then I want to hear about it because it would be a great way to get the bad data fixed along the way.

Hope that helps…


I have a client that manufactures cages for laboratory animals, what we did with the screws (Misc Stuff) was to weigh it.
We knew that X lbs/oz represented approximately Y screws. We capture shop floor labor as well. So as we took in X lbs we updated all of the qtyonhand. Wasn’t absolutely perfect count, however screws are lost and damaged anyhow. Food for thought.

Is it really so bad? I did a demo of erpnext and thought it was a lot better than what we had currently… I mean, we also don’t encounter bad raw materials very often though

1 Like