Insycle Blog

Case Study: PandaDoc Contracts and Companies Stay Linked When Deduping

Written by Ryan Bozeman | Mar 29, 2023 8:08:06 PM

This post is part of a series that explores problems our customers have fixed using Insycle. Each post outlines the challenge and shows the solution step by step.

The Problem: An Active HubSpot CRM-PandaDoc Sync Would Break When Duplicate Company Records Were Merged

An Insycle customer in the marketing technology industry had a problem with duplicate companies in HubSpot. These duplicates made it difficult for the customer, whom we will call Calvin Company, to run effective account-based marketing (ABM) campaigns.  The company’s sales team was also affected, as the critical context reps needed to do their jobs was split up among multiple duplicate records.

Naturally, Calvin Company wanted to have a single reliable record for each company that its marketing and sales teams could use to improve their campaigns. But HubSpot’s standard deduplication features were too basic to catch all of the duplicates in the system. The company needed to identify duplicates in more advanced ways.

The situation was further complicated by the company’s HubSpot integration with PandaDoc, a software solution that allows you to create, manage, and electronically sign business documents. Calvin Company was primarily using PandaDoc to track contracts with customers. These contracts were uploaded and signed in PandaDoc, then associated with relevant companies and deals in HubSpot CRM, where they were visible on the company and deal record pages.

Duplicates caused a problem because each contract was directly associated with a company record in HubSpot. If that record had duplicates, and the duplicates were then merged into an unsynced master record, the association between the contracts in PandaDoc and the company records in HubSpot would break.

To make this matter more complicated, the association was not a standard HubSpot association, such as that between a contact and their company. The actual association between the PandaDoc documents and HubSpot companies occurred entirely on the PandaDoc side.

A PandaDoc document associated with the relevant company in HubSpot

This nuance in the association presented new problems.

Any effort to re-associate the contracts had to happen inside of PandaDoc. And PandaDoc didn’t have any options for re-associating records in bulk. There was no way to import a CSV and automatically associate contacts. HubSpot’s automation couldn’t address the issues either, since the contracts were linked in PandaDoc.

Calvin Company also found that, once the sync was broken, contracts could be re-associated to deals, but not to companies. This was a quirk of the PandaDoc-HubSpot integration.

Since there was no way to re-associate contracts that were desynced from their company in HubSpot, Calvin Company had to find a way to ensure that the sync never broke in the first place. To do this, it had to ensure that when companies were merged, the resulting “master record” was the record with which the PandaDoc contract had been synced.

How Duplicates and Missing PandaDoc Contract Associations Were Hurting Calvin Company

Duplicate companies caused many issues in Calvin Company’s HubSpot CRM.

First, context about a company was split up between the duplicate records. This impacted all processes that used that company data.

Marketing teams were running campaigns half-cocked, working with partial personalization options. The duplicate problem was so bad that they sometimes avoided using personalization altogether. Duplicates made it nearly impossible to execute ABM strategies effectively because ABM demands a full understanding of company and employee hierarchies.

Calvin Company’s sales teams spent extra time searching for duplicate records to gain additional context. Duplicate records were often assigned to separate owners, so reps found that they were stepping on each other’s toes. Like the marketing teams, sales teams found it difficult to identify all relevant parties during negotiations due to the duplicates problem. Ultimately, they were less effective in their jobs, which impacted their income since they worked on commission. Further, duplicate company records affected their ability to report on and assign scores to active accounts accurately.

Even customer support and customer success teams suffered from duplicates. They were forced to search for context among the duplicate records whenever they answered a question. When they could not find that context, customers had a worse experience.

And of course, when they did merge the duplicates, the PandaDoc contracts disconnected from the relevant company records in Hubspot if those records weren’t the master. But this was a link that they couldn't afford to lose, as they needed to be able to quickly identify which contracts were associated with which company and their respective deals. 

After discovering this issue, the team realized the enormity of the problem. Deduplication was critical because duplicates were causing too many problems across the organization. But the business also absolutely needed to ensure that contracts were associated with the relevant company in HubSpot. Too many of its processes were built around locating contracts by navigating to the company record.

Calvin Company needed to merge the companies while ensuring the contract links remained intact. Alternatively, the team needed to re-upload all of the contracts and associate them with companies by hand. But there were hundreds of contracts, so the first option was more attractive. This process was not possible in HubSpot alone, so the company searched for a solution to help.

Related articles

How to Fix Bad HubSpot Associations Automatically (Without Spreadsheets)

Considerations for Using HubSpot’s Automatic Contact to Companies Association

Case Study: Organized School District Hierarchies to Improve Account-Based Marketing

How Insycle Helped Deduplicate Companies Without Breaking the PandaDoc Sync

Calvin Company’s team signed up for Insycle and dove into resolving their duplicate companies and associated contract problems.

Let’s look at the steps they took.

Step #1: Create a CSV Documenting the PandaDoc Contract Associations

First, they needed to figure out what HubSpot records the PandaDoc contracts were synced to. The team reviewed their contracts, noting the linked company ID for each contract, and collected this information in a CSV document.

CSV of contract-to-company associations between PandaDoc and HubSpot

Once they had recorded the ID of the synced records to ensure that these records remained after the merge as the master record, they moved on. 

Step #2: Create a Preview of Duplicate Companies Using Insycle

Now, the company had to generate a CSV of the duplicates in its system. With Insycle, you can identify duplicates and run the operation in Preview Mode to generate a CSV of the identified duplicates before merging anything in HubSpot.

Using the Merge Duplicates module in HubSpot, the team created a template for identifying duplicates in the system. They used the company name and company domain fields as matching fields. 

HubSpot companies deduplication template in Insycle

Both of these fields would need to match for a record to be identified as a duplicate. Calvin Company also set a few rules for evaluating the data in those fields.

For the company name field, the team used similar match to ensure that companies would be identified as potential duplicates when they had similar but not exactly identical names in HubSpot. They also instructed Insycle to ignore any symbols or common terms, like “Co,” “Inc,” “or LLC.”

Setting duplicate matching settings

Calvin Company’s template ignored the top-level domain in the company domain name field. This allowed the team to identify records with different domain extensions, such as Microsoft.com and Microsoft.co.uk, as duplicate records. The template was also structured to examine the domains contained in the additional domains and website URL fields.

Ignoring top-level domains and comparing matching fields against multiple fields with Insycle

Then, they ran the operation as a preview.

Previewing the identified duplicate companies

This generated a CSV that showed all the identified duplicates based on the rules that they set. This CSV includes the duplicate group ID column, where they can identify the different duplicate groups.

 Duplicate groups identified by Insycle

Step #3: Tag The Synced Records As Master Records

Now, Calvin Company had to designate each synced HubSpot record (from the CSV they created in Step 1) as the master record so that all other duplicates would merge into that record, keeping the sync intact.

Then they re-arranged their columns, putting the duplicate group ID and record ID next to each other for easier analysis.

Placing the duplicate group ID and record ID next to each other for easier analysis

Next, Calvin Company added a “deduplication master” column to their CSV. Then, they compared their PandaDoc-associated company IDs for their contracts to the company record IDs in their duplicate preview CSV. Once they identified the record in each group that synced with a contract in PandaDoc, they marked that record by entering “TRUE” into the deduplication master field.

Tagging the synced records as master records in the CSV

Then, they added a custom deduplication master field to company records in HubSpot.

Creating a custom field to tag the master record in HubSpot

Finally, Calvin Company’s team used Insycle’s Magical Import module to import their CSV with the master records tagged. This way, the appropriate records would have their deduplication master custom fields tagged as TRUE (they also could have used “YES”).

Uploading the CSV to update the existing company records in HubSpot using Insycle

With the PandaDoc-synced master records tagged, Calvin Company could merge its duplicate companies without worry.

Step #4: Merge Duplicate Companies

Once Calvin Company's team had tagged the master records, they returned to the Merge Duplicates module and loaded the template they used to create the preview CSV.

Template for merging duplicate HubSpot companies in Insycle

In Step 4 of the module, they instructed Insycle to choose the master record as identified in the deduplication master field.

Using the tagged custom field to choose the master record in Insycle

With this rule in place, Calvin Company could effectively deduplicate companies without worry and ensure that their PandaDoc contracts remained linked to the company records.

The Result: Reliable Company Records With Linked PandaDoc Contracts

With this process, Calvin Company was able to reliably merge duplicate companies in its HubSpot CRM database while keeping PandaDoc contract associations in place.

Without Insycle, Calvin Company was up a creek without a paddle. Duplicate company records impacted every team that utilized company data to do their jobs, including marketing, sales, support, success teams, and even the c-suite. But they couldn’t deduplicate without losing the linked PandaDoc contracts. And losing those associations would have created its own massive headaches that would have stymied operations.

With Insycle, Calvin Company was able to enjoy the best of both worlds—reliable company records with attached contracts. With these in place, the company’s teams will be more effective and spend less time diving through duplicate records to ensure they have the necessary context.