NPSP Data Import Stories
The NPSP Data Import Tool is a relatively new thing. I believe it was provided to give assistance to organizations who were switching to NPSP from legacy systems. Creating all the records in the proper order and with the proper linkage between contacts, households, org accounts, affiliations, donations, payments and so on can be daunting. And NPSP Data Import Tool makes that easy. It’s the tool of choice or migrating data into NPSP!
However, as I tried to help others use the tool, I realized that there is more to the story than simply importing data. Let me explain.
Quick Overview of NPSP Data Import Tool
Each line in your spreadsheet will be imported into a record called a NPSP Data Import record and will then be analyzed by the NPSP Data Import Tool and mapped onto one or more related records, some new and some matched from existing records. This is a complex but powerful idea.
The NPSP Data Import record is a flat representation of a bunch of information. But once it is processed, you can follow links to individual two contacts, one household, one organization, one affiliation, one campaign, one donation, and one payment. And you can tell if the processing succeeded, created new records, matched old records, or failed. If it failed, you can edit the flat data right inside Salesforce and try again.
Stores are at the heart of database operations
Here are some stories that I tell with my database modifications all the time:
- we receive a gift from an individual
- we receive a gift from a couple
- we receive a gift from an organization
- someone signs up for a newsletter
- someone fills out a lead generation form
- we learn someone is affiliated with an organization
- we learn someone has a relationship with someone else
- we learn someone else lives in a household
There are many others, and each requires a set of actions in our database. Finding records, updating details, making new records, making connections between records. It can take quite a bit of time and training.
Telling Stories with NPSP Data Import Tool
I realized as I read the documentation guides (2) that each line of the NPSP Data Import spreadsheet (or each NPSP Data Import record) is capable of telling a story. Here are the stories that I learned I could tell easily using one or more lines of the NPSP Data Import spreadsheet:
- Added Contact: Someone new with all their details. All the Contact1 fields will be added. A household will also be created and household address can be included.
- Added Contact Pair: Two new people with all their details. All the Contact1 and Contact 2 fields will be added. A single household will also be created and household address can be included.
- New Person in Household: You list two people in this story. The Contact1 is someone you already know. Contact2 will be added into the database and added to the household of Contact1. Very handy for when you learn new household members and for creating households with children. (e.g., New Contact Pair Husband and Wife, New Contact Pair Wife and Child1, New Contact Pair Wife with Child 2. These three stories combine to create a household with four contacts.)
- Updated Contact: Someone we learn more about. Assuming matching records agree (email, address, full name, or configured combination), Contact1 information will be added or updated.
- Updated Contact: Someone we learn more about through enrichment, investigation, or engagement. Assuming matching records agree (email, address, full name, or configured combination), Contact1 information will be added or updated.
- Updated Organization: An organization we learn more about through enrichment, investigation, or engagement. Assuming matching records agree, Organization information will be added or updated.
- Donation from Someone (or a couple): The Contact1 will be located and a donation will be created with payment for the corresponding Household Account of Contact1. If there is an open donation in date range of the same donation, it will be marked as closed won instead of creating a duplicate. You can also provided a campaign to be associated with the donation. Contact1 will be added to the campaign.
- Donation from an Organization: The Organization will be located and a donation will be created with payment for the Account. If there is an open donation in date range of the same donation, it will be marked as closed won instead of creating a duplicate. You can also provided a campaign to be associated with the donation.
- Added Affiliation: Contact1 will be located or created. And the Organization will be located or created. A new affiliation will be created between them.
- Joining a Campaign: Contact 1 will be located or created. The campaign will be located and must exist. A campaign membership will be created or updated to the provided status.
In addition, it is possible to extend support to other objects using Process Builder. Using this method, it would be easy to do the following with clicks and no code:
Create a Case: Contact1 will be located or created. And a new case will be created.
What Stories Do I Tell Using NPSP Data Import Tool
I customized my NPSP Data Import record to capture the story we are telling. I began using this technique in Feb 2017 and we have imported 200 stories a month since then. Here are the stories we have told so far… A huge advantage of this method is that you can report on your importing adventures!
So what are we up to?
- Join Us Form: Volunteering: This uses the story of adding a person to one or more campaigns and creating a case for follow up. Volunteering is the most popular but each applicable checkbox results in it’s own story so we can respond accordingly and do follow up marketing emails.
- Paypal Donation: This uses the story of receiving a donation from a contact. It almost always include email and name. The donation is always new but the contact may be new or matched.
- Facebook Donation: This also uses the story of receiving a donation. We usually only get name information. The donation is always new but the contact may be new or matched.
- Web Signup QNL: This uses the stories of joining a campaign. The contact may be new or matched.
- WF Check Donation: This is our check batch data entry. It uses the story of receiving a donation from an organization, a contact, or a pair of contacts depending on what is on the check. We just enter everything on the check without any knowledge of what may be in Salesforce. The contact may be new or matched. The donation is usually new but it could be an open donation being prospected.
- Manna Bad Download: This uses the story of joining a campaign. It’s a downloadable fulfilled by automation but we capture them name as possibly them joining our newsletter.
Not show in the “Other” category are several other types of received gifts (by credit card, by online donation portals) and other examples of downloadables and newsletters signups.
Legacy Data Import: The potential for stories is already good for data import from legacy systems. The admin and analyst will need to analyze the legacy data for what stories it tells and tease it into NPSP Data Import stories. For example, contacts must be grouped into pairs for importing household information. Donations can be pairs with donor information for importing donation stories. Contacts and campaign memberships can be paired to import campaign data.
Manual Data Entry within Salesforce: It would be super simple to create quick actions or flows to create stories from user input to create NPSP Data Import records right in Salesforce. These can then be imported manually or batch scheduled. The advantage is that very limited Salesforce knowledge would be required to do the data entry work. And a more experienced person can follow-up and do the import or import debug work. This is in fact the strategy that has been adopted by the new NPSP Batch Donation Entry Tool. It creates NPSP Data Import records in a keyboard friendly way (think tabbing and no mousing) and the data is imported afterward.
Batch Data Entry outside Salesforce: It is very easy to create a web form or a Google form which results in an online database. Each new entry in the database can trigger creation of a new NPSP Data Import record using automation tools like Zapier. I use this to provide my staff with forms for entering checks that are deposited. We have some spreadsheets which are cut/paste of information we download from vendors each period. These are easily tied into automation tools to create NPSP Data Import records, also. This is how we handle Facebook and Paypal Donations. Because duplicate checking of Donations is not part of NPSP Data Import tools, it is possible to do checking against Salesforce records prior to creating NPSP Data Import tools for some types of entries.
Data Maintenance: I have not yet implemented this, but we routinely have dozens of “add this information” to a contact all the time. I believe it would be much more efficient to have a form to do this rather than do it in the live Salesforce database. Changing everything but an email would be pretty easy using email match. Changes emails would require a different scheme. Adding affiliation is simple. Adding relationships would require a bit of work but could be done using Process Builder to process two paired contact stories.
Automatic Data Entry from Marketing Forms: It is possible to receive notification from most web forms for signups, digital downloads, and inquiries. These can be routed immediately to NPSP Data Import records by automation tools.
Automatic Data Entry from Payment Forms or Portals: Many payment processors or portals provide for electronic notification of donation. These can be routed to immediately to NPSP Data Import records by automation tools.
Advantages of Using Stories to Manage Your Database
Data Migration: Stores provides a way to breakdown complex data migration from legacy systems. The number and type of stories is easily quantified and measurable. Migration of each story is traceable to source data and new records.
Batch Data Entry and Data Maintenance: Stories provides a nice way to abstract complex ongoing data entry and data maintenance operations into some simple higher level operations. Quantities are reportable and new or updated records are traceable.
Integration: Stories provides a stable and well-documented interface for integration of external data into NPSP. The integration can proceed without knowing the details of NPSP beyond the NPSP Data Import Record itself. You get traceable, reportable and quantifiable results. It’s so quick that you can integrate multiple payment sources and multiple items rather than choosing just once. We have implemented integrations with Bots, Web forms, downloadables, multiple payment gateways, Twilio, and more using this straightforward method.