In Salesforce NPSP, every new Contact can automatically create a new Household/Account.  If your constituency includes multiple individuals from the same family, this automated behavior can lead to duplicate Households/Accounts in Salesforce after bulk import processes and data syncs.  Omatic Cloud can help mitigate this issue by allowing you to search for existing Related Record Matches during your processing.

Note: We are continuing to expand the Related Record Matching functionality to include other use-cases, such as Employer/Employee associations and finding an existing Household when your data only includes one Contact.  To be notified when these are available, follow the Omatic Cloud Updates forum. 


To enable Related Record Matching in your formula, the following elements are required:

  • Data set includes sufficient identifying information for each of the individual Contacts in the Household
    • Primary Contact: Id number or email or name
    • Secondary Contact: Id number or email or name
  • Formula type is set to use "Any Object" in an NPSP Salesforce Org
    • This allows you to add the additional Contact object and the Relationship object that will connect the two records


When mapping your data fields in the formula, you will need to use the Object Picker to add the NPSP Relationships Object first. Check all of the available relationship fields, and click "Load Related Contact Fields." This will change the related contact object to "Contact", and you can select which fields you'd like to map to for the contact. 

You will see another object called NPSP Relationships1, which is for mapping the Reciprocal Relationship instead.  Depending on your source data, you may need to use this object, but it is usually unnecessary.

You should now see your Contacts displayed as Primary Contact and Secondary Contact in the mapping area.  Before moving on to other screens in the formula, you should map the fields in these objects and set your matching rules on the Relationship.  (Tip: it's also a good idea to save your progress when you've completed the mapping, before moving on to other formula decisions.)

If you're unsure about which fields should be mapped, practice manually creating a related record in Salesforce directly and take note of which fields contain data.

Just like in real life, Salesforce allows you to create multiple relationships between Contacts.  For example, a husband and wife who own a small restaurant may have both "Spouse" and "Business Partner" relationships.  To prevent unwanted, duplicate relationships between Contacts, you can set your own rules for whether to update an existing relationship object with new information or to add a new relationship entirely.  Since you may already have better information in Salesforce, you also have the option to match to the existing relationship and leave it as-is (do not update):


Even though we've labeled the Contacts as "Primary" and "Secondary" during field mapping, each deserves the full efforts of identifying existing Matches in Salesforce.  Additionally, your incoming data may contain different identifying details for each Contact.  For example, there may not be an email address field for the Secondary Contact.  For these reasons, you can set unique Matching rules for each Contact:


Unlike the Matching rules, you will only create a single set of Triage rules to apply to both Contacts in each Related Record set.  The Triage rules will apply to each Contact individually, but where they are routed for review will depend on the combined readiness of both:

  • If the incoming row only contains a single Contact (no Secondary Contact data), the record will be routed to the appropriate review bucket, just like any other single-record formula behaves.
  • If the incoming row contains two Contacts, and both meet your rules for "Ready," the Related Record set will be routed to the Ready bucket.  You can tell which Ready records have an accompanying Secondary Record by looking for the second set of summary fields and the note about a secondary Contact.  In this example, all New records are treated as Ready, so 0% matches are queued up to send to Salesforce:

  • If the incoming row contains two Contacts, and either record "Needs Attention," the pair will be routed to the Related Records bucket for review.

Reviewing Related Record Sets

The Related Records bucket will be similar to your other Needs Attention buckets, but there are some additional features to allow you to make matching decisions on either (or both) records.  You will start in a summary grid that gives you an overview of all of the data.  From here, you can sort or search before clicking "Review" to enter a focused view of the Related Records.  

The focused view will present you with matching and data difference decisions for each Contact, as needed.  

Primary Record:

Secondary Record:

You will need to complete all decisions related to a particular Record Set before moving on to the next pair.  The focused view will allow you to continue making decisions on subsequent Record Sets until you decide to to take a break or have completed the list.

To take a break, you can click Cancel or Close.