Zoho CRM – Gotchas
Zoho makes it easy to get the complete picture of your sales cycle and stay on top of your business opportunities. Never lose another lead again.
12 gotchas across 7 resources
These are connector-specific behaviors and limitations to be aware of when integrating.
Activities2 gotchas
activitiesAllZoho CRM's info.count in list responses is a per-page count only, not a cross-page total. meta.total_count will not appear.
Zoho CRM activities are backed entirely by the Events module (/v2.1/Events), so every activity is returned with type: meeting regardless of how it was created. Other activity types (note, call, task, email) are not represented. To read notes, use the dedicated /crm/notes resource (mapped to Zoho's /v5/Notes).
activitiesAddZoho CRM maps all activities to the Events module (POST /v2.1/Events) regardless of the type value. An activity created with type: note, call, task, or email is still stored as a Zoho Event (a calendar entry), and reads of /crm/activities return only Events. To log a note against a record, use the dedicated /crm/notes resource (mapped to Zoho's /v5/Notes) instead.
Companies3 gotchas
companiesAllZoho CRM's info.count in list responses is a per-page count only, not a cross-page total. meta.total_count will not appear.
companiesAddparent_id sets the account's Parent Account at creation. An empty string is treated
as omitted, and the account is created without a parent.
If parent_id names an account that does not exist, Zoho rejects the entire create
and no company is created.
companiesUpdateparent_id sets, changes or removes the account's Parent Account. Send an account id
to set or change the parent, null to remove it, and omit the field to leave the
current parent untouched. An empty string is treated as omitted, not as a request to
remove the parent.
An update that sends only parent_id: null returns an error, because no fields reach
Zoho. Send parent_id: null together with another field to remove the parent.
If parent_id names an account that does not exist, Zoho rejects the entire update.
Zoho does not guard the hierarchy: it accepts an account as its own parent, and two accounts as each other's parent. Check the target before setting a parent if loops matter to you.
Contacts2 gotchas
contactsAllWhen using the phone_number filter for contacts in Zoho CRM, the filter does not work with numbers containing dashes (e.g., 989-989-989) or their URL-encoded equivalents (e.g., 989%2D989%2D989). It only works with continuous digits (e.g., 9898989898).
contactsAllZoho CRM's info.count in list responses is a per-page count only, not a cross-page total. meta.total_count will not appear.
Leads2 gotchas
leadsAllWhen using the phone_number filter for leads in Zoho CRM, the filter does not work with numbers containing dashes or plus (e.g., +989-989-989) or their URL-encoded equivalents (e.g., %2B989%2D989%2D989). It only works with continuous digits (e.g., 9898989898).
leadsAllZoho CRM's info.count in list responses is a per-page count only, not a cross-page total. meta.total_count will not appear.
Notes1 gotcha
notesAllZoho CRM's info.count in list responses is a per-page count only, not a cross-page total. meta.total_count will not appear.
Opportunities1 gotcha
opportunitiesAllZoho CRM's info.count in list responses is a per-page count only, not a cross-page total. meta.total_count will not appear.
Users1 gotcha
usersAllZoho CRM's info.count in list responses is a per-page count only, not a cross-page total. meta.total_count will not appear.