If you are an university planning to use non profit starter pack or using the non profit starter pack, this blog would help you to make the right decisions and issues which you should consider when implementing it for your non profit. Since the account and contact model does not work for storing the individual student, Non profit starter pack is an ideal app to capture the student record.
1. Decision on the model
Non profit starter pack has 2 models namely the household model and the individual model when you set up salesforce for the first time. The Household model is the ideal model which should be used for universities. Here are the pros and cons of using this model.
- The household model helps universities to track families of their students like alumni , parents and kids under one household account and contact object.
- For continuing professional educational departments, household model track the companies and the contacts using the organization record type.
- If you want to relate students who are part of a family to a company, you will have to create a primary affiliation object and relate it.
This would be a model which i would not recommend for universities unless you have made a determination that you would never track companies in your salesforce org. In that scenario instead of a person account, the 1-1 account model would help to track students and it creates an account and contact with the same student name.
2. Beware of these problems.
Here are some common issues which you would run into when you use the NPSP for your salesforce org.
- When you do mass inserts or updates on students which is contacts, there is a possibility of running into governor limit issues. To prevent this, some of the triggers that are not needed should be turned off. This can be done using the trigger handler settings in the NPSP app.
- Most of the universities which use targetx and enrollment rx never use the standard opportunities object. So the opportunity functionality can be turned off using NPSP settings in the NPSP app. If you are not doing this, then you would have to deal with data populated as opportunities which would show up on your student detailed page and cause confusion.
- If you are using opportunities, plan to leverage the custom rollup functionality. So if the opportunities are used to capture courses, using the rollup feature you can easily find out the total course amount paid by the student for all the courses which they registered.
- NPSP adds a lot of custom fields. The name of the fields cannot be changed and might cause confusion with the custom/standard fields already existing.
- Npsp runs back end jobs which mass update accounts and contacts which causes governor limits errors during data load.
- NPSP also copies contact address to the account and this caused problem when we did the conversion.
- If you use the house hold model, you should rename the accounts to meet your own naming convention
- Relationship feature is a great feature to track contacts who work for multiple companies and keeping a family model . But make sure that this does not overlap with enrollment rx relationship feature.
- There are some triggers which might update the contacts and so plan to use a separate sandbox to test this and not mix this up with the current sandbox where you guys do the data migration.
3. Considerations for data migration.
If you are migrating data from your current crm like Banner etc, the NPSP model creates another framework on top of your current salesforce org. So here are things which you need to consider before you migrate your data.
- If you are loading data for the first time to salesforce, always insert accounts first and then the contacts. Npsp would create an account for every contact inserted and so plan to load your individual students who do not work for a company and students who work for a company on a separate load.
- Plan to use an external id like the banner PIDM id which would help to insert the right contact to the right account. This would help on multiple data loads to update existing records.
- If you have employment history captured in your legacy crm, plan to use the NPSP affiliation object to store the related records.
- If you want to use opportunities and want to use this to capture courses, always create a lookup field on the opportunity for the contact so that you can easily update the opportunity with the right contact. So for loading opportunities, you would load accounts, contacts and opportunities and update the contact id. Opportunity contact role is a good object to use but it becomes a pain later if you dont have the contact field on the opportunity. The problem is that if you want to find which contact had the opportunity, you have to query 3 objects namely account, contact and opportunity contact role to link the right contact to the opportunity. This would prove cumbersome when you want do some quick data fixes on the opportunity for the contacts.
Here are the key takeaways for you when you plan to implement npsp in your salesforce org.
- Leverage the household model to store B2C students and B2B students.
- Disable triggers which does not make sense for you when you use the NPSP.
- Use external id on the contact for data upserts.
- Plan to create a lookup field on the opportunity for the contact which would save more time later for data upserts.
I hope this blog has been useful to you to make the right approach on using NPSP. As always feel free to post your comments below or feel free to email me at firstname.lastname@example.org for any questions.