External ID - An Overview

We know that Zoho CRM allows you to integrate third-party apps and manipulate data through APIs. While you integrate a third-party application, you may want to store the third-party reference IDs in Zoho CRM's records. To meet this need of storing an external value inside Zoho CRM, we have introduced the External ID field.

What is an External ID field?

An External ID is a custom single line field in a module in Zoho CRM that can hold a record's unique ID in an external system.

When can you use an External field?

When you integrate an application with Zoho CRM, you can use the external field's value to create, update, or delete a record in Zoho CRM instead of Zoho CRM's record ID.
This is particularly useful when you deal with huge data where you can work with just one ID per record instead of two.

  • Integration and data sync - You can simply use the external ID to upsert records instead of the Zoho CRM's record ID, and maintain data sync.

  • Search - When you have an external field, you can search for a record through its external ID instead of the record ID.

Creating an External Field

  • Go to Setup > Customization > Modules and Fields > Choose a module.

  • Create a single line field and provide a name.

  • Click the more options icon and select Edit Properties

  • In the Single Line Properties pop up, specify the field label, and check the Set External Field box.

  • Choose the field's visibility and the type of the external field.

  • Click Done. Click Save and Close in the module builder.

Types of External Fields

User-based External field

User-based external fields allow values to be stored with respect to each user. So, each user can make use of their corresponding external values(say contact1 and contact2) to manipulate CRM records. When data sync happens between the external system and Zoho CRM, these users can update the corresponding record with their respective external values(contact1 and contact2). For example, consider that two users have saved the same contact with different IDs c1 and c2, respectively in their external systems. When data sync happens with Zoho CRM from these systems, there will be one contact in CRM. But, the users can use their external contact Ids c1 and c2 to update the record in CRM. Note that the external value for this type is unique to each user.

Org-based External field

In contrast to user-based external field, for org-based external fields, there is no association between the external ID stored and the user who configured it. Instead, all users can manipulate the CRM records with that same external ID. Consider that you have a native ERP system to manage finances for your org. The employees(users) will deal with the same clients(leads or contacts). When you integrate this external system with Zoho CRM, the lead/contact ID in the external system becomes the external field value in CRM. Now this integration can use this external ID for any data sync and other actions with Zoho CRM.

Mandatory Header in the API Requests

X-EXTERNAL: {module_API_name}.{external_field_API_name}

Possible Values for the Header

  • Simple Reference: {base_module_api_name}.{external_field_api_name}
    Example: Contacts.External_Contact_ID.

  • Associate an external field through a lookup field: {base_module_api_name}.{lookup_field_api_name}.{external_field_api_name}
    Example: Contacts.Account_Name.External_ID.

  • For a Product ID inside a line item: {inventory_module_api_name}.Product_Details.product.{product_external_field_api_name}
    Example: Quotes.Product_Details.product.External_Product_ID.

  • Polymorphic lookup: Events.What_Id->Accounts.External_Account_ID.

  • For a Price Book ID inside a line item: {inventory_module_api_name}.Product_Details.book.{price_book_external_field_api_name}
    Example: Quotes.Product_Details.book.External_ID.

  • For a lookup field in a Subform: {base_module_api_name}.{subform_api_name}.{subform_lookup_field_api_name}.{associated_module_external_field_api_name}
    Example: Contacts.Subform_1.Deal_lookup.External_ID.

Note
  • All the above cases are discussed in various sections of this topic.

  • The External ID feature is available only for the Enterprise and Ultimate editions of Zoho CRM.

  • You can create a single line field of the type "external" only through the UI.

  • You can add or update the value of an external field only via an API.

  • A module can have a maximum of 10 external fields for the Enterprise edition and 15 for the Ultimate edition.