Xero to HubSpot Sync: Contact Data Integrity Failure

Hi HubSpot team,

I’d like to highlight what I believe is a significant issue with the current behaviour of the Xero integration with HubSpot, particularly when Xero is configured to update records in HubSpot.

When configuring the Xero app and mapping Xero properties to HubSpot properties, the natural expectation is that the mapping simply defines where the information should be written.

However, the current behaviour appears to be more complex and potentially harmful to data integrity.

If Xero detects a primary contact associated with a company/account in HubSpot, it can overwrite the email address of the existing primary contact in HubSpot, even when the contact is a completely different person or has a different email address.

In my view, this is a major concern because the integration should not modify or overwrite an existing contact’s identifying information simply because Xero has identified another person as the primary contact.

What I would expect instead

If Xero sends an email address that does not already exist on the corresponding HubSpot contact, the integration should:

  • Check whether that email address already exists in HubSpot.
  • If it does not exist, create a new contact or establish the appropriate association.
  • If the email already exists, update or associate the existing contact accordingly.
  • Never overwrite an existing contact’s email address with another person’s email unless there is a clear and intentional matching rule.

Email address is a critical identifier in CRM data. Overwriting it can effectively change the identity of the contact and compromise data integrity.

This behaviour has already affected 32 contacts in our portal.

We raised this with HubSpot Support, and the suggested resolution was essentially that we, as customers, can manually correct the affected records by exporting property history and disabling the mapping.

I don’t believe this is an adequate resolution for an integration that is supposed to maintain data between two systems. The customer should not be responsible for manually repairing potentially corrupted CRM data caused by the integration’s matching/update logic.

Could HubSpot please review this behaviour and consider redesigning the contact matching/update logic to prioritise data integrity?

It would also be helpful if HubSpot could test this scenario in a portal where the Xero app is installed and configured to update records from Xero to HubSpot, as I believe this behaviour may be more widespread than it initially appears.

At minimum, there should be a safeguard preventing the integration from overwriting an existing HubSpot contact’s email address when the email belongs to a different person.

This is a serious data integrity concern and, in my opinion, deserves more than a workaround for correcting the affected records after the fact.

Click here to see the app