Hi guys
I have having been testing out the CRM module in ERPNext as part of a client implementation project. It seems the process flow is very confusing (buggy at times) and it is not clearly documented. I have worked with various CRM products (Zoho, Salesforce, NetSuite, HubSpot, etc.) in the past 12+ years and from my experience I can say that ERPNextâs CRM module definitely has a lot of scope of improvement.
In this post, Iâll try to elaborate the issues faced and possible solutions.
Current Scenario
ERPNextâs CRM module has 6 primary objects as given below;
- Lead
- Opportunity
- Prospect
- Customer
- Contact
- Quotation
Current Process Flow
-
A new lead is created
-
When a new lead is created, the system will automatically create a new contact (this is the biggest issue)
-
From this lead, the user can take 4 actions:
- Create Customer
- Create Opportunity
- Create Prospect
- Create Quotation
- Thereâs also an additional action called âAdd to Prospectâ
The sales user who is in charge of processing the leads and âconvertingâ them is now confused in terms of what action to take. I understand that a defined process can be enforced but if the company has a team of 20+ sales executives, it will be difficult to enforce and maintain such a process.
Problem with Lead Conversion
-
The biggest problem with the above process is that contacts are created at the time of lead creation.
-
Contact creation is typically a part of the âlead conversionâ process wherein you âconvertâ the lead into an âaccount (customer)â and the associated âcontactsâ
-
Not all leads will be valid (almost 60-80% will be junk leads collected from various sources like data mining, website forms, conferences, etc.) and so it makes no sense to create contacts in the system which are invalid.
-
A lead need not necessarily have fully verified data but when you âconvertâ the lead, the âaccountâ and âcontactsâ ought to be verified as you only convert the lead post interaction with the lead.
-
Also, there is no clear indication of whether the âopportunityâ is to be linked to a lead or a prospect and what exactly is the intended use case of separating out the âAdd to Prospectâ functionality?
Existing CRM Systems
In most popular CRM systems, the process of lead conversion is extremely simple and standardized 3 step process.
Create a Lead â Convert the lead into Create an Account (company) & Contact (person) â Create Opportunities / Quotations
Lead Conversion Process in Salesforce
Ref: Use Leads to Track Potential Customers Unit | Salesforce Trailhead
Lead Conversion Process in Zoho
Ref: https://www.zoho.com/crm/help/img/lead-conversion.png
Most of the other popular CRM systems out there follow this exact, tried and tested process of lead conversion.
The advantage of this process is that it has a clear hierarchy, move ahead in a linear fashion and avoids any cyclical redundancy between the objects (leads, contacts, prospects, opportunities, customers, quotations, etc.)
Proposed Solutions
- Disable the auto-creation of âcontactâ when a new âleadâ is created.
- Role of âProspectâ object should be clearly defined. I think creation of prospect should be optional.
- Lead actions should be restricted. Eg: You cannot directly create an opportunity for a lead without first âconvertingâ the lead into either a prospect or (account + contact)
- The lead form should have a clearly defined âConvert Leadâ button which will open a pop-up box from where the lead can be converted into a customer/contact/opportunity (refer the Salesforce pop-up box image above)
Let me know what do you guys think.
@ankush @kennethsequeira @sharma_nakul @rmehta @peterg
Thanks,
Shashank
PS: I looked in the forums and the âautomatic contact creationâ has already been reported here but it seems it has not been worked upon
Thereâs also a GitHub issue for the buggy Prospects functionality