HOWTO: Zoho CRM account tags for segmentation in Zoho MarketingHub

SLC_und_Zoho_Header

Situation

Our customer is using Zoho CRM for their B2B customer processes. B2B communication (inbound and outbound) is executed via campaigns and journeys within Zoho MarketingHub. In CRM accounts are tagged to reflect their business and technical interests. These tags are used for segmentation and personalization in MarketingHub.

When an account is tagged (e.g. for interest in "product A") then all contacts of this account should be able to be targeted in marketing concerning the interest.

Challenge

As of now it is not possible to synchronize account tags from CRM to contacts in MarketingHub. It is possible to do so with contact tags but not with account tags. We received information from Zoho that this feature might be implemented in the future but currently it is not yet planned into the product roadmap.

Solution

#1: Create new contact field

Navigate to the module and field configuration and add a a new text field in the contact object:

slc_contact_tags_001

Make sure the permissions are set correctly:

slc_contact_tags_002

#2: Create workflow

Create a workflow for the account object which triggers every time an account is created or updated:

slc_contact_tags_003

Create a custom function which is executed by the workflow:

getaccdet = zoho.crm.getRecordById("Accounts",accid);
tags = getaccdet.get("Tag");
tags_conc = "";
for each  tag in tags
{
	tags_conc = concat(concat(tags_conc,tag.get("name")),"; ");
}
tags_conc = tags_conc.subString(0,tags_conc.length() - 2);
getcontacts = zoho.crm.getRelatedRecords("Contacts","Accounts",accid);
for each  contact in getcontacts
{
	contid = contact.get("id");
	mp = Map();
	mp.put("Account_Tags",tags_conc);
	ret = zoho.crm.updateRecord("Contacts",contid,mp);
}
getcontacts = zoho.crm.getRelatedRecords("Contacts","Accounts",accid);
for each  contact in getcontacts
{
	info contact.get("Account_Tags");
}

The function reads the account tags, concatenates it and puts it into the custom field of all contacts connected to the account.

#3: Sync new field

Add the newly created field to your sync job in MarketingHub:

slc_contact_tags_004

Now when your sync job runs the account tags are synced to your MarketingHub contacts and the information can be used for segmentation and personalization.

Next Steps

Although this approach has proven to be simple and functional there is always room for improvement:

  • The tags are replicated to the contact into a text field although contacts bring own tagging mechanisms. To make use of this the script can be modified to use the contact tags for replication. In this case it should be taken into consideration that a contact might already be tagged and tags might have to be added instead of being overwritten.
  • The solution is a one-way-street. Per our customer requirement we only needed to tag records in CRM and sync it to MarketingHub. Another interesting feature would be changing tags in MarketingHub (e.g. behavior based) and syncing it back to Zoho CRM.
image-termin

Vereinbaren Sie einen Termin
zur unverbindlichen
telefonischen Erstberatung