Opportunities in a Contact-centric Salesforce database
Last Updated on Thursday, 11 May 2006 10:20 Written by Steve Thursday, 11 May 2006 10:18
Salesforce uses an object called Opportunity to represent the chance for money to come into your organization. Hence the name. People ask me to rename Opportunity to something more nonprofit specific, but I don’t like to. I can’t think of a good name for something that can represent these many things a nonprofit choose to record in Salesforce:
- Donations
- Membership Dues
- Grants
- Ticket purchases
- Retail item purchases
- Volunteering
So I like to leave it as Opportunity. All these things can be seen as an opportunity for revenue–in the case of volunteering it’s an in-kind gift of time.
Opportunities have a real issue in Salesforce, though. They are not connected to a Contact but only to an Account. That means that if you create a Gift, it has to be tied to an Account, but doesn’t have to be connected to an individual. That’s a drag when 80% of the Contacts in my database are members of an “Individual” Account, which only exists as a generic holder for unaffiliated Contacts. It’s also a drag when most of the Opportunites in the database are payments directly from individuals, on behalf of themselves, and not on behalf of a company.
Some Salesforce users have gotten around this by creating an Account for each Contact. So each person has a fake company that they are associated with. Then Opportunities can be tied to that Account and that Account has a 1-to-1 relationship with the Contact. This solves the problem, but is a bit hard to explain to users that they have to enter a Contact for each person and then an Account as well.
Salesforce has some other functionality we can use, however, to deal with this issue in a fully Contact-centric way. Individual Contacts can be related to an Opportunity by creating an Opportunity Contact Role for them. I can associate a donor with a gift via a Contact Role called “Individual Donor”. I can then look at all the Opportunities and all the people connected to them with a Role of “Individual Donor” to give hard credits, or tax receipts. I can add other Contacts to Opportunities as well. Some that I use are:
- Individual Donor – Household Member (this is a soft credit for everyone who is a member of the donor’s household)
- Organizational Donor (this is to designate when the Opportunity is in the name of a business, like a business sponsoring an event)
- In Honor Of (this allows you to report on Opportunites that are made in tribute to someone)
- Grant Manger (designates the primary contact for a grant Opportunity)
- Board Solicitor (identifies board members who are assigned to work a prospect donoation)
Salesforce isn’t built to support organizations that work directly with individuals, but as I’ve come to expect, it proves itself flexible enough to get the job done. By using contact roles on Opportunities you can tie them directly to individuals, and successfully use Salesforce in a Contact-centric fashion.
Learn MoreDatascope: creating sf.com queries on the desktop
Last Updated on Thursday, 11 May 2006 07:00 Written by Steve Thursday, 11 May 2006 07:00
Upside Outcomes, a nonprofit-friendly development shop in the UK, released their Datascope today on Appexchange. It’s a desktop application that gives you an interface for creating queries against your Salesforce.com data. I got a demo from Gareth early in the week and it looks pretty cool. Simpler than getting all your tables downloaded into Access. You can set up complex queries and the app does all the calls to Salesforce.com to execute them, presenting the results in a data grid. Pretty nice.
It allows you to make queries that are impossible to make in Salesforce. The main drawback that it and other query builders have is that the results of the query aren’t in Salesforce.com, which is where I’d love them to be. But until Salesforce makes these kinds of queries possible, tools like Datascope are our best option.
It might be pretty straightforward for them to take your query results and give you an “Add to Campaign” button if the set is of Contacts and/or Leads. Just a thought for the 2.0 release, Gareth!
Learn MoreSalesforce.com Wish List
Last Updated on Thursday, 4 May 2006 02:18 Written by Steve Thursday, 4 May 2006 02:16
Salesforce.com blogging luminary Scott Hemmeter has a Wish List category over at his Perspectives on Salesforce blog. I heartily second just about all the things on his wish list. I wanted to add a couple of my own.
- Give the API to all Salesforce.com customers. Don’t reserve it for people who pay for Enterprise and Unlimited. Some of the smartest people in the world work at small companies that won’t purchase the Enterprise level. Let’s try to leverage their great ideas by getting them cooking on the API.
- Let us add custom fields to standard junction objects like CampaignMember and Partner. If I can add some fields to the CampaignMember object, all of the sudden Campaigns could be the heart of an online event registration system. Think about it. Parter could sure use a Start Date and End Date, no?
- Allow us to build more complex reports than we can now. I’d like directional joins, and the ability to combine different reports to get a resulting report set (or Campaign.) Let us save these complex report collections so we don’t have to build them each time.
- I want to second Scott’s call for a robust B2C functionality, and extending the Sharing and permission model down to the Contact level. We do a lot of work directly with Individuals, so this would be incredible.