You are here:
Map Custom Fields Using Help Text (Legacy)
NPSP legacy Help Text mapping allows you to reference additional fields on a small number of Salesforce objects through Help Text on the NPSP Data Import fields.
Let's walk through an example of this process. Save the World would like to have a custom field for the Contact's preferred name, and include that information in their spreadsheet and import process. As the Salesforce Administrator, you'll need to complete the steps outlined in this article in order to add the custom field to the process.
- Create or Find the Field You Want to Map with Help Text
Pay close attention to the API name of the field you want to map to. - Create Field on the NPSP Data Import Object and Map with Help Text
Now we create a corresponding custom field on the NPSP Data Import object for our primary Contact's Preferred Name. The field must exist in both places because we need to map one to the other. - Update Your CSV with the New Field
Add your new field to your data import template CSV to ensure automatic mapping with Data Import Wizard.
Create or Find the Field You Want to Map with Help Text
Pay close attention to the API name of the field you want to map to.
Create a New Custom Field
For our example, let's create a custom text field to capture the Contact's preferred name.
- Click
, then click Setup. - Click the Object Manager tab.
- In the list of objects, click Contact.
- Click Fields & Relationships..
- Click New.
- Select Text.
- Click Next.
- Complete this information:
- Field Label: Preferred Name
- Length: 255
- Field Name: Preferred_Name
- Fill in Description and Help Text if needed; they're not required here.
- Click Next.
- Click Next again to accept default security.
- Click Save.
The custom field now exists within Salesforce and you see it in the Contact Fields & Relationships list. Take note of the text in the API Name column. Copy the text from the API Name column to your clipboard or a separate note as you'll need it shortly. In this case, it's Preferred_Name__c.

For more detail on creating custom fields, see Salesforce Help & Training.
Find the API Name of an Existing Field
If you want to map to an existing field instead of a new custom field, you just need to find the API Name and copy it to your clipboard.
- Click
, then click Setup. - Click the Object Manager tab.
- In the list of objects, click Contact.
- Click Fields & Relationships.
- Find the field you want to map.
-
Copy the API Name to your clipboard.
For example, if you want to import the Work Email field, you would copy
npe01__WorkEmail__c to your clipboard.

Note that fields from the Nonprofit Success Pack packages begin with namespace
prefixes such as npe01__ or npsp__ while custom fields you create do not have a
prefix. The complete API name includes both the namespace prefix (if one exists) and the
trailing __c (double underscore 'c').
Create Field on the NPSP Data Import Object and Map with Help Text
Now we create a corresponding custom field on the NPSP Data Import object for our primary Contact's Preferred Name. The field must exist in both places because we need to map one to the other.
- Click
, then click Setup. - Click the Object Manager tab.
- In the list of objects, click NPSP Data Import.
- Click Fields & Relationships.
- Click New.
- Select Text. Note You can only map to editable fields. You can't map to formula fields and you shouldn't map to rollup fields because the information will be overwritten. You must select the same field type as the custom field you're mapping to, except when the field you're matching is a relationship field (lookup or master/detail) or checkbox field. For example, if the field on the Contact record was a Date field, you'd select Date here. Read more about mapping Relationship Fields or Checkbox Fields in the sections below.
- Complete this information:
- Field Label: Contact1 Preferred Name
It doesn't matter what you name this field (unless it's a Unique ID field) but pick a label that makes it clear which record this maps to. We're picking something really obvious here—words that map exactly to the custom field we created in the previous section.
Note If the field is a marked as a Unique ID field, then the naming does matter. If the field isn't named correctly, it won't show up in the Data Import Configuration Options. For more information and an example, see Important Information about Unique ID Fields below. - Length: 255
- Field Name: Contact1_Preferred_Name
-
Help Text: Contact1.Preferred_Name__c
This help text is critical and it's what will allow for the mapping to the Contact object. The Help Text field specifies the object instance and field name that you want to copy the data to, using the format ObjectGroup.Fieldname. (That last part is the API Name you copied to your clipboard, after creating the custom field in the previous section.) Read Troubleshoot Invalid NPSP Data Import Help Text Mappings (Legacy) for additional help formatting the Help Text.
ObjectGroup must be one of the following:
- Contact1
- Contact2
- Account1
- Account2
- Household
- Opportunity (the donation fields)
- Address (for the home address fields)
- Payment
- Field Label: Contact1 Preferred Name
-
Click Next.
-
Click Next again to accept default security.
-
Click Save.
Relationship Fields
Relationship fields—lookup or master/detail—must be mapped as Salesforce IDs. This includes the standard Owner field, which is related to the User object.
For a relationship field, create the corresponding NPSP Data Import field as either a Lookup Relationship field or a Text field of 18 characters to accommodate the 15 or 18 digit Salesforce ID (not the Name) of the related record.
Checkbox Fields
Checkbox fields get a little tricky when you're trying to process them in a data import tool. In order to allow you more flexibility around checkbox fields in NPSP Data Import, the corresponding field should be a picklist.
This picklist translates what you want to see in the checkbox field (the checkbox as checked or unchecked) to their Boolean equivalents (True for checked and False for unchecked). Through NPSP Data Import, you're able to uncheck a previously checked checkbox field or even leave a checkbox field completely unchanged by leaving that cell empty.
We'll walk through this for the Private checkbox on the Opportunity object, but remember, you can do this with any custom or standard checkbox field. To map the Private checkbox field to the NPSP Data Import object:
- Click
, then click Setup. - Click the Object Manager tab.
- In the list of objects, click NPSP Data Import.
- Click Fields & Relationships.
- Click New.
- Select Picklist.
- Complete this information:
-
Field Label: Donation is Private
You can choose a different name here, but pick a label that makes the mapping clear.
- Select Enter values, with each value separated by a new line and enter the following values:
- True
- False
- Field Name: Donation_is_Private
-
Help Text: Opportunity.IsPrivate
This must match the object and field name, using the format ObjectGroup.Fieldname. The information you enter into this field links the field in NPSP Data Import to the appropriate field on your chosen object. Read Troubleshoot Invalid NPSP Data Import Help Text Mappings (Legacy) for additional help formatting the Help Text.
-
Field Label: Donation is Private
- Click Next.
- Click Next again to accept default security.
- Click Save.
Important Information about Unique ID Fields
Naming is important when you're creating corresponding Unique ID fields. In order to see any values in the Contact Custom Unique ID or Account Custom Unique ID fields in the Data Importer Configuration options, the field you want to map must be marked as Unique and External ID.
Additionally, for Unique ID fields, you must create two corresponding fields, one for Contact1 and one for Contact2 (or Account1 and Account2) and they must be named properly. The corresponding fields should NOT be marked as Unique and External ID.
For example, say you created a custom Unique ID field on Contacts called Reference ID with an API name of Reference_ID__c that you want to use for matching Contacts during data import. You'll need to create two corresponding NPSP Data Import fields using the exact format listed below:

- Field 1
-
Field Label: Contact1 <Fieldname> (Example: Contact1 Reference ID)
Field Name: Contact1_<Fieldname> (Example: Contact1_Reference_ID)
API Name: Contact1_<FieldName>__c (Example: Contact1_Reference_ID__c)
Help Text: Contact1.<FieldName>__c (Example: Contact1.Reference_ID__c)
- Field 2
-
Field Label: Contact2 <Fieldname> (Example: Contact2 Reference ID)
Field Name: Contact2_<Fieldname> (Example: Contact2_Reference_ID)
API Name: Contact2_<FieldName>__c (Example: Contact2_Reference_ID__c)
Help Text: Contact2.<FieldName>__c (Example: Contact2.Reference_ID__c)
Here is an image showing the custom Contact field Reference ID and the corresponding NPSP Data Import field Contact1 Reference ID with correct naming. The image also shows that the Contact field Reference ID is marked as an External ID field.

Again, only when your custom Contact or Account field is a Unique ID field AND both the fields needed on the NPSP Data Import object have been mapped and named correctly will you see the custom Contact or Account field in the drop down menu. Additionally, keep in mind that Last Name is required when trying to match Contacts using an External ID, as the Last Name is used when the External ID field isn't found. Account Name is required when trying to match Accounts using an External ID, as the Account Name is used when the External ID field isn't found.
Update Your CSV with the New Field
Add your new field to your data import template CSV to ensure automatic mapping with Data Import Wizard.
If you haven't already, download the NPSP Date Import Templates. Your import spreadsheet needs to include a new column for the field you created on the NPSP Data Import object, not the original custom field.
If you're using the Data Import Wizard, the column should use the Field Label. If you're using the Data Loader or other API tool, the column should use the API Name. So in our example, you would add a column with the Header text as:
- Contact1 Preferred Name (if using Data Import Wizard)
- Contact1_Preferred_Name__c (if using Data Loader)
You've successfully prepared Salesforce for your new field! Now head to Using NPSP Data Import Templates to start preparing your data for import.

