Developer Announcements

hseligson
HubSpot Employee
HubSpot Employee

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

Note: This changelog supersedes a prior version published on July 22, 2024. Due to customer feedback and confusion regarding the scope of changes, we have updated and clarified the details in this new changelog. Please review the updated information below.

 

What's changing?

We’re updating how merges are handled across CRM object types, starting with contacts and companies, to ensure consistency with how merges are processed for other objects.

Key updates: 

  • New Record ID Generation: When contacts, companies, or other CRM objects are merged, a new record with a new ID will be created for the resulting merged record. The original record IDs will still point to the new merged record, so fetching records with the original IDs will return the new one.
  • Property Value Updates for Contacts and Companies: For merged records, property values will now prioritize the values from the primary record. Property values from both records will still be merged, but the final values will reflect those from the primary record. 

Note: Contact and company properties that already have exceptions to existing behavior, as detailed in our help documentation for merging records, will keep their special behavior.

  • Association Prioritization: Associations from the primary record will be prioritized in the resulting merged record for all object types, including contacts and companies. Multiple associations with "primary" labels will prioritize those from the primary record, while excess associations will be dropped.

 

Why is this changing?

This change aims to standardize the merge behavior across all CRM objects, including contacts and companies, making it easier to manage merges and add new merge options in the future.

 

When is this changing?

The new merge functionality will take effect on January 14th, 2025, for all CRM objects. Merges completed before this date will not be affected.

Note: This change was originally scheduled for October 21, 2024, but has been extended to January 14th, 2025.

Questions or comments? Join the forum below for a peer-to-peer discussion.

17 Replies 17
hseligson
HubSpot Employee
HubSpot Employee

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

Hello HubSpot Developer Community - 

 

Thank you for taking the time to share your thoughts and concerns. We appreciate the community's feedback, which is crucial in helping us improve our platform and address the needs of our users.
The recent updates to the merge functionality were driven by our goal to enable an "undo merge" feature, something we are actively working on this year. While the enhancement necessitated the generation of new records, it's a crucial step toward creating a more flexible experience.
We understand this change may have caused some inconvenience, and there are concerns about the record IDs. It's important to clarify that Contacts and Companies behaved differently before this update than other CRM objects. By standardizing the process, we've aligned Contacts and Companies with how merges function across the platform, which traditionally generates a new ID with each merge.
We recognize that the transition could be challenging, but we assure you that our intent is to make the CRM as effective and adaptable as possible for all users. Thank you for your patience and understanding as we work to enhance your experience with HubSpot.

Thank you -
HubSpot Developer Advocacy & Objects Data Backend Team

0 Upvotes
TXu5
Participant

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

Looking for way to Opt out of this update. We use Company & Contact Record ID as a unique indentifier, this update is seriously messing things up with integrations set up we have.

TassomaiNeil
Participant

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

How on earth was this passed as a good idea? Can we opt out?
Why couln't you at least KEEP one of the record id's? If you wanted to standardize, why didn't you align the deal merge (which already created a new id) with the company merge process?

I made company 80 merges on Friday without realising that i've just created 80 new ID's!

Our hubspot companies have each a unique identifyer company id. This is so useful with any company that uses a large database sales sheet. Now, we are going to come across so many changes/errors due to the number of people we have using the CRM at any one time!

Dissappointed is an understatement.

TXu5
Participant

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

100% agree, we just found out about this today and it's seriously messing things on the integration side! HubSpot Dev team please figure out a way we can opt out of this!

JMellbrand2
Participant

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

Completely agree! i don't get this change at all. is merging duplicates now impossible? the whole point of keeping the original record id is gone? we can't merge at all? what was the thought process here, hubspot? please let us opt out!

PWatt6
Participant

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

I would assume many customers use that Company Record ID as a unique identifier for the record for integrations with data warehouses and other systems. How would you recommend handling this so that duplicate records are not created?  

Ami4
Participant

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

Correct me if I am wrong. But I think that means that synced records ( i.e. Native Salesforce Integration ) will be out of sync after the merge. Because the record would no longer be found by the integration? 

hseligson
HubSpot Employee
HubSpot Employee

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

@Ami4 - I apologize for the late response! The new merge functionality for CRM objects ensures that merged records, including winner and loser records, are updated and fetched correctly across the legacy API and the v3/v4 APIs, so synced records should stay in sync after a merge. However, customers specifically using the legacy Contacts API should review and possibly update their merge logic, as assumptions of compatibility without changes might be incorrect. Generally, using the v3/v4 APIs should mitigate these concerns. Regarding the Salesforce sync functions, I will follow up with the team that manages the integration to get more insight and follow up via this thread. 

 

Thank you for your understanding!

0 Upvotes
hseligson
HubSpot Employee
HubSpot Employee

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

I spoke with the team responsible for the Salesforce integration to address concerns regarding merging and received the following feedback:

  • For syncing contacts and deals: when objects are merged, the newly created merged object will continue syncing with the Salesforce object that was previously linked to the primary HubSpot object.
  • For companies: merging is blocked if our integration is installed on a portal.
  • For tickets, activity objects, and custom objects: there is currently no additional mechanism in place for handling merges. As a result, the newly created merged HubSpot object will likely create a new object in Salesforce as if it was created from scratch.

We are planning to discuss ideas soon for making the merging process more user-friendly for syncs built on the v2 sync engine (including tickets, activities, and custom objects). Therefore, the current behavior may change in the future.


I hope this information helps!

0 Upvotes
VMackay
Participant

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

Hi, I've been supporting an integration for the past two years and this has recently came to my attention.  So to fully understand how this may affect integrations, there will be 2 identifiers in 'mergedObjectIds' from the webhook and the 'objectId' will now be the identifier for the newly created record.  ( Just claryifying from what I've read ). 

Is there any way to test this before this change before it goes live in January?  

0 Upvotes
BGoodwin9
Member

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

What sort of webhooks are sent for a merge contact action? Will this change with the update to create a new record with a new ID for the resulting merged contact? 

hseligson
HubSpot Employee
HubSpot Employee

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

@BGoodwin9 - Great question! After merging two contacts (or companies), a new record will be created, and it will be assigned a completely new record ID that didn’t exist prior to the merge. The original record IDs of the two contacts or companies being merged will still remain valid. When you query using the old record IDs, they will return the newly merged record.

Also, here is more information regarding workflows and merged contacts.

0 Upvotes
JakeAGill
Participant

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

Hi I currently use hs_merged_object_ids property for the company and contact object.

Will the new object created contain both merged ids?

0 Upvotes
hseligson
HubSpot Employee
HubSpot Employee

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

@JakeAGill - Hi there! Yes, the new object created during the merge should still include the original IDs in the hs_merged_object_ids property. This property is specifically designed to track the IDs of objects merged into the resulting record.
This change does not alter the behavior of the hs_merged_object_ids property, so your existing use of this property should remain consistent. It simply introduces a new ID for the merged object while preserving the historical IDs in hs_merged_object_ids for reference and tracking.

JBergens
Participant

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

Will the old records have some field that points to the new ID?
Or at lease a field that shows that it no longer exists (is merged)?

morganmcgee
Contributor

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

Can someone please help me understand which details have been updated/clarified? How does this differ from the previous announcement (other than the launch date)?

hseligson
HubSpot Employee
HubSpot Employee

Updated Merge Functionality for CRM Objects (including Contacts and Companies)

Hi @morganmcgee - Thank you for your feedback. We apologize for any confusion. We want to clarify that the recent update applies to all object types, not just contacts and companies. Some people were concerned that the new merge functionality was limited to contacts and companies, so we wanted to address this feedback and clarify the scope.

0 Upvotes