Learning from Failure: My Journey Implementing ERPNext
Introduction:
As an ERPNext implementer, I’ve experienced the highs and lows of rolling out systems for businesses across various industries. While many projects have gone on to be successes, some didn’t turn out the way I hoped. However, these “failed” projects taught me invaluable lessons. In this blog, I’ll share one such experience from 2015 when I worked with a musical instrument manufacturing company in Kuwait.
The Project: ERPNext for a Musical Instrument Company
In 2015, I had the opportunity to implement ERPNext version 6 for a company in Kuwait that owned five retail outlets. They were looking to streamline their POS, Purchase, Accounts, and Stock Management systems. On paper, everything seemed straightforward, but as with many software projects, reality turned out to be much more complicated.
The Challenge: Split Payment Option
At the time, ERPNext did not support split payment options in POS or sales invoices. However, the client needed this functionality to match the real-world transactions in their outlets. I took on the task of modifying the system to allow split payments. After hours of custom coding, we got split payments working, but the ledger was inaccurate, leading to serious financial discrepancies.
Friction with the Client
As the project dragged on with inaccurate data in the system, tension began to build with the client. Despite my efforts to make things work, the solution was not optimal. I realized I had taken on too much and should have sought help from the Frappe team earlier. But, the client believed I was the “Superman” who could fix it all on my own, and I fell into that trap.
Cheap Hosting: A Costly Mistake
One major concern for the client was cloud security and cost. Looking for a budget-friendly option, I chose VPSCHEAP, a cloud server provider offering low-cost hosting. Everything seemed fine until December 2015, when disaster struck. The servers crashed, and to our horror, there were no backups. The entire system was lost, and the client was understandably furious. With no other option, we had to discontinue the project and refund the money.
Key Learnings from the Project
1. Cheap is Not Always Better:
Choosing a low-cost hosting provider cost us dearly. In retrospect, I should have invested in a more reliable service with robust backup and security options like Frappe Cloud or AWS. You get what you pay for, and compromising on critical infrastructure is a recipe for disaster.
2. Ask for Help:
I wasted precious time trying to solve the split payment issue on my own. Had I reached out to the Frappe team earlier, I could have avoided the mistakes that led to inaccurate data. Clients may expect you to be a one-person army, but it’s important to ask for help when needed.
3. Backup, Backup, Backup:
This project made me realize the importance of backups. Without proper backups, the entire project was at the mercy of the cloud server’s stability. Today, having a solid backup plan is non-negotiable for any implementation I undertake.
Conclusion:
This project was one of my early failures in ERPNext implementation, but it set the foundation for many of the best practices I follow today. Learning from failure is just as important as celebrating success, and this experience taught me the value of reliable infrastructure, seeking help, and always having a contingency plan in place.
Whats your Learning Story?