Contact Management and CRM

Most if you know more about ERP systems and coding than I ever will, but I know a lot about sales (40 years of executive sales leadership with a global firm, managing sales in my own business & an MBA) I think I see an important missing part of this system, or least if I’m wrong, hopefully you guys can point me in the right direction.

Before you get to a lead or into the sales funnel, you have prospects. If your item is high value, the cycle can be quite long with numerous points of contact before someone from your prospecting database.becomes a lead. (In sales, that is called prospecting) You buy or build the database and work from it, calls emails even the old fashioned in person cold call (made many inroads that led to multi dollar sales that way). Managing all that, scheduling todo’s, future phone calls meetings and making notes needs a contact management system (Act! was a good example before everything went subscription on the cloud, probably why many of us are here).

In a contact management program you record notes of conversations, calls, emails etc and schedule future activities. A click on a button when looking at the contact record (you could have companies with no contact info) accomplishes this and you then work from a calendar you’ve created.

In my opinion this is a crucial part of a CRM (perhaps the most important part for high value, high contact sales). You don’t want salespeople gathering and scheduling all this in their personal system (like hubspot) or notebook, it needs to centralized and needs to be integrated. Its mission critical info.

So… how does ERPNext handle this? I can’t find any way when looking at a company or contact to quickly schedule a future call?

Thoughts? ideas?
Thanks, Mike.

1 Like

Hi @WIE:

Check this

Hope this helps.

The argument over the terms “Leads,” “Prospects,” “Targets” etc. is basically endless. Every organization has its own idea of what each of those terms means. I’d disagree that a Prospect exists before a Lead does. I think that most people, at least as far as CRM records are concerned, would consider a Prospect to be a Lead that’s been qualified on some level, but that’s neither here nor there.

With respect to how ERPNext works as a CRM, there is an entire CRM module. The main Doctypes (record types in Frappe parlance) are: Leads, Prospects, Opportunities, and Customers.

Records are typically converted as they make their way through the sales process as follows:
Lead > Prospect (Possibly with an opportunity created at the same time) > Customer. Both a Lead and a Prospect can represent a physical person or a business, itself.

One thing that you will notice is different from how a lot of other CRMs function is that ERPNext doesn’t have an “Accounts” record (Doctype). For instance, in Salesforce, and many other CRMs, when a Lead is converted, an Account is created (typically the Account would be the business in a B2B situation), and the Lead is converted into a Contact. ERPNext doesn’t use “Accounts,” just “Prospects” for people/organizations you’re trying to close, and “Customers” for customers you have closed.

With regards to logging calls and appointments, that is built into the CRM module. Admittedly the default interface for logging a call (or text message, or in-person contact) is kind of annoying, but it’s pretty easy to build your own interface that works for you, or pay a developer to build you one.

The default method for this would be, for example, Lead record > Activities Tab > New Event > Enter new event details. The problem with this is that this will create the Communication record as still “Open” so it’s not great for logging calls that have already happened. You can easily click the “closed” checkbox once the call is over, but if you forget to do that, that call will appear to be as a call that you scheduled, but never got to.

As far as “working on a calendar you’ve created” I’m not sure what you mean. There is a calendar functionality in ERPNext, where you can view and schedule things like appointments and meetings.

Thanks for the thoughtful response. Slow to reply as I wanted to think about it a bit. It’s an amazing thing to create something like ERPNext that works for so many business environments; its just the nomenclature (and perhaps structure) is so different than what I’ve seen work in executive sales I’m struggling with how to make this work.
What might be constructive is to describe what we need a system to do for high value executive sales.

Before CRM we had contact management. It’s the contact management portion of CRM that salespeople care about, the rest of CRM is more of benefit to management. ACT! or Maximizer were two popular applications.

They provided

  • Database of Companies/contacts that would synchronize with your phone (blackberry once upon a time)
  • Ability to customize and search by any field, customizable interfaces etc
  • Integrated with outlook, would create a history of emails
  • You could
    o record notes
    o schedule a future call (became part of your calendar)
    o schedule a future meeting
    o schedule a task or todo
  • It also offered basic marketing functions such as create labels, mail merge, email blast

None of this is very complicated, but there was a lot of effort made making it very simple and efficient to use basically all on three well laid out screens you’s swap to via buttons, the contact record, calendar and one line list of records.

The company had a very crude version, but nobody used it. In a lot of executive sales, it’s the salesperson who has most of the power; we were going to use whatever worked best for us to make money. Which of course is a disaster for the company; everyone with their own database not integrated, owned or controlled by the company.

In this type of sales environment, sales people will not use the system unless the contact management aspect of it is fantastic. Without the salespeople using it, there will be no CRM. Stated another way, to work with high end executive sales, the contact management function has to be top notch. You can have a $50,000,000 business with a million $50 sales, or 50 one million dollar sales. It’s more the latter environment or large sales which these dynamics are found.

Ok, I can see that that is my specific requirement, and we may have to create the interface. However I think it’s a point that systems designers who have not worked in executive sales should know about.

The Database.

ERPNext’s nomenclature is a little confusing. I would have called the entries in the database “Companies” but that is reserved for the business the ERP is for (better to call that the “Enterprise Name”?). A company in the data base may or not be a customer, but they are all in same database.

So I look at the “Customer” doctype, but that doesn’t really work as not all in my prospect database are customers

The database could and would be populated with anything and everything, existing customers, names and numbers from business cards I picked up or a purchased list. That’s your prospect database. You would prospect, looking for leads by contacting people, from this database.

Existing customers are right along with people you’ve never spoken with before and no company ever moves out of the prospect database unless the are dropped/deleted if the sales person decides they have no potential. For very large purchases a customer might not buy again for years or they have multiple requirements on the go at a time. In either case, there is ongoing contact activity so they must be part of the contact management database

How the contact process works.

From your database, you’d pick a record and decide to call that person today. Then you could click on call history and makes a note (even if didn’t get them I’d still note, tied no message, or left message etc so I could mentally keep track of things, i.e. days later “didn’t I just call this guy?”)

After you make notes, you would schedule a future activity. Might be a call 3 days from now if you left a message or call six months from now if they said no current needs. The next action could also be meeting or todo (task) some time in the future.

I had about 1500 contacts but really focused on about 400. I tried for at least 6 contact points per year between phone, email, meetings and market recap I wrote and sent. All done by some simple but quite brilliant contact management software. THAT imo must underpin a CRM system for executive sales. Creating would almost seem like child’s play compared the depth and complexity of ERPNext.

This is what I mean by working your calendar. As you keep setting future activity every time you complete an activity, on any given day your calendar tells you what you need to do. If you are disciplined with this, working your calendar becomes how you manage your business (as an individual sales person) and you have great success with sales.

I bothered to write all this as I thought the combination of decades of executive sales experience and an interest in systems is maybe not too common so doing so might help make it better. Happy to discuss it further if there is any interest. Meanwhile, any ideas on how to make great contact management work within ERPNext
Mike

The problem of the CRMs terminology versus “our terminology” is a problem with pretty much every CRM. Having worked with several CRMs (Salesforce, SuiteCRM, Hubspot, Zoho, etc.) I can say that ERPNext’s CRM module is the most divergent. The way it handles Leads, Contacts, and Prospects is definitely different than the way most of the other CRMs do it. It’s certainly not a definitively bad thing, however.

With regards to customizing it, you’ll find that ERPNext is pretty much just as customizable as anything out there. I would argue more so because it’s just python and javascript - very easy to find developers. Salesforce, on the other hand for example, has its own proprietary language, and developers don’t come cheap.

Organizations are usually either stuck with the choice of using the CRM “out-of-the-box” or having to hire employees/pay contractors to customize and maintain their CRM.

The “Company” DocType is for your company(ies), as you alluded to. If you want a custom DocType to track the organizations you do/might do business with, you could certainly create one (of course, it can’t be called the name of an existing DocType like Company). I prefer to use the built-in DocTypes, however.

Leads → People/organizations I might do business with, that have not been vetted/qualified at all.
Prospects → Organization or groups of people, I might do business with
Customers → People/organizations I’ve sold something to

As you’ve noticed is that there’s no “Account” which most other CRMs use, rather ERPNext has “Prospects” and “Customers.”

With regards to your specific use case, I don’t see why you couldn’t make ERPNext workable for you. Ever feature you’ve described is either already included, or could be implemented without too much heavy lifting.

2 Likes

HNY, and sorry for the late response, was able to push all thought of this to the side over the holidays.

I am really trying to buy into ERPNext’s way of doing things as is, as I think overall its a pretty marvellous thing. There is a strong desire to work with ERPNext.

For a company involved in executive sales, I think the follow two points are irrefutable: 1) A CRM won’t work well or be used if its not underpinned by a great contact management system. You need the buy in of the sales people and what they want is strong contact management. 2) a great contact management system has to manage all your contacts - active customers, past customers, employees, influences, suppliers, professional advisors, prospects (including ones from a database you’re never called before), friends/network.

I’d bet all the CRM’s you listed do this, and do it well. All of the above types of companies and contacts need to be in one table to have a good contact management system, yes? no? Maybe through programming you could consolidate all the existing companies in a single contact management interface so they appeared to the user as one table, but that seems very complicated.

I accept that we have to customize to create the slick interface and we can access some resources to do so. However the real gist of it seems to be that as you point out there are multiple tables/doc types that have a company and contact.

Maybe the solution is to integrate with one of these CRM’s? However then you still have the problem of multiple tables in ERPNext, i.e. what doctype are you integrating with?

Any ideas on how to work around the above? Do the architects or designers of ERPNext typically pay attention to these threads, wonder what their views are?

thanks
Mike

Definitely, Mike. Your deep sales insight underlines an important need in CRM systems for effective prospect management, especially in high-value sales. ERPNext, primarily an ERP solution, may initially lack an immediate setup for tasks like scheduling calls directly from contact records.
However, its flexible design allows for customization, such as adding fields for interaction details and linking these to the calendar for scheduling. For a more specialized call management system, integrating third-party CRM tools with ERPNext could offer the functionality you need, ensuring centralized, integrated management of crucial sales activities without compromising on the detailed tracking and scheduling essential for successful prospecting.

You certainly could integrate ERPNext with another CRM system, and I’m sure there are many users that do this. Now, would that be better than using ERPNext’s CRM module? It depends on your organization’s and your users’ criteria, I suppose…

What exactly do you think is lacking from ERPNext’s CRM that doesn’t work for you? You said “However then you still have the problem of multiple tables in ERPNext, i.e. what doctype are you integrating with?” You do realize that this is the exact same way that pretty much every other CRM does it, right? For example, in Salesforce there is a Lead table, a Contact table, an Opportunity table, etc.

The thing to understand is that in the ERPNext CRM:
Lead = Somebody you might try to sell something to - typically a person, but could the business itself if you don’t know anybody in that business

Prospect = The record of the business entity (if a B2B scenario) for which you typically have at least one good contact person. For example if you’re trying to sell something to Good Idea Enterprises (the Prospect) you might need to keep track of Joe Doe the CEO, and Jane Roe the Purchasing Manager. Both of those people would be Leads that are linked to the Good Idea Enterprises Prospect.

Opportunity = The record of the deal for the product/service you are trying to sell. An Opportunity does NOT represent a person or business, it basically represents the sale you’re trying to make. For example if Good Idea Enterprises is the business (Prospect) I am trying to sell to, then “Good Idea Enterprises is interested in a new Helicopter” would be the Opportunity.

Customer = The record of the business entity (in a B2B scenario) that I am doing or have done business with. Typically converted from a Prospect once the deal is complete, but it doesn’t have to be. The Customer DocType is used by customer service/support, and sales departments.

Contact = A record of a person (though technically the Contact could business, too). You typically don’t “work” from a Contact. A Contact essentially has no context associated with it. It’s merely there to keep track of a person’s contact info, and a Contact might be an employee of yours, a Lead you’re trying to sell to, or a vendor you buy stuff from. The analogy I always use is to think of Contacts in ERPNext the same way you think of Contacts in your cellphone. You probably have your wife, your doctor, the plumber, and your customers all in there. There’s no context defined there, they’re merely people (or businesses) you need to have record of for when you need to reach out to them.

Why are there different DocTypes that each represent the same business entity/person? Because there are different contexts with which different departments in the organization interact with that entity. For example, your customer service department might not really care about the different things you are trying to sell your customers, because their job is to support the customer after they’ve already bought from you.

With regards to which DocType your sales team works from, it’s entirely up to you. You could theoretically even take steps to hide or “turn off” the Prospect Doctype and have your sales team work only with Leads.