+ Start a Discussion
SynchroSynchro 

Contacts and Leads

I'm adding contacts and/or leads successfully via SOAP/PHP. I'm not quite clear on which I should choose - If I don't have any owner id, should I create it as a lead or a contact with no owner? I'm just not quite clear abut the distinction between a lead and an unowned contact and which I should use when.
I noticed some oddities - you cannot create a lead without a company name (even though it's not marked as mandatory in the WSDL), but a contact doesn't have a company field at all.
dhruvadhruva
You'll probably want to create a Lead.

Generally, a Contact is created because you converted a Lead because it sort of 'graduated' to an Opportunity. To answer the second question, at that time (conversion), the company name will be used to create an Account that the Contact 'belongs' to.
SynchroSynchro
So it's not possible to create a lead that doesn't belong to a company(e.g. for a private individual)?

Is there any harm in creating a contact that has no account or ownerid set? For instance, will it effectively be invisible because it won't show on anyone's owned contact list? Does anything special happen to contacts with no owner?

I'm also concerned that it's possible to create duplicate entries - there doesn't seem to be any kind of uniqueness constraint on contacts - I can create multiple entries with identical names and email address for example. Is such checking down to external APIs, i.e. should I check if a contact with these properties exists before trying to create it (and incur a second SOAP transaction hit in the process)?
dhruvadhruva
I'm pretty sure AccountId is one of the required fields for Contact creation, so I don't think you can create Account-less Contact. It sounds to me that you are considering Contacts only because you saw they don't have a company name and *that's* your primary goal: i.e. creating Leads that don't have company. Simple solution: create an imaginary company called "No Company Name" or "Private Individual" or something, and put all these Leads with that company name.
DevAngelDevAngel
The only "required" field for a Contact is last name.  You can certainly create Contacts that are not related to an account.  Likewise with Leads, the only required fields are last name and company.  Company by the way is just a company name string field that does not establish a relationship with any other object.
morleymorley
I wondered if I could add to this (as something of a newbie). I've hit the same issue with contacts who are just individual people.

If I associate them all to a dummy account, how will that affect my reporting? Most of my contacts have opportunities associated with them and I want to track the monetary value of those opportunities in reports. But if all those contacts are grouped to one dummy account, won't I just get a summed up opportunity value total for that one account, rather than the individual numbers per contact?

Hope that's clear - thanks for any help.



Morley.
DevAngelDevAngel
Hi morley,

Can't you just create a "phantom" account for each of those contacts? One that is just there to parent the record?
SynchroSynchro
That does seem a bit illogical - surely leads should be a lowest common denominator, so having constraints on them that are higher than those required for each thing that they may be converted into seems unnecessary. Surely any such constraint should be applied at conversion rather than creation time? You should be able to create a lead without a company name, but if you then try to convert that lead into an account (and not before), you should be forced to populate the company name field.
Maintaining artificial accounts for the sake of supporting individuals seems silly and creates a link between contacts where none exists. We have customers that are likely to have hundreds of thousands of individuals (and so I'm sure does every company using CRM for B2C). Can you consider this a feature request?
DevAngelDevAngel
We are working on making salesforce.com more compatible with B2C and it involves alot more than just the lead issue. We really do want to support B2C and what we are communicating here are workarounds for the current incarnation. A workaround is always a compromise solution.
morleymorley
Hi Dave ... thanks for the reply. Yes, I could just create a phantom Account for each of these Contacts, but that means adding and maintaining each person twice, which is cumbersome. Do you know of any other solution? This seems like it must be a reasonably common issue.


Thanks,

Morley.