diff --git a/src/integrations/zoho/mapper.js b/src/integrations/zoho/mapper.js index 9e0bf0d..f070885 100644 --- a/src/integrations/zoho/mapper.js +++ b/src/integrations/zoho/mapper.js @@ -696,14 +696,25 @@ class ZohoMapper { break; case 'tasks': - // Tasks response has tasklists array and page_info - records = zohoResponse.tasks || []; - pageInfo = { - count: zohoResponse.page_info?.per_page || records.length, - moreRecords: zohoResponse.page_info?.has_next_page || false, - page: zohoResponse.page_info?.page || 1, - pageCount: zohoResponse.page_info?.page_count || 1 - }; + // Handle both CRM and Books tasks - check response structure + if (zohoResponse.data && zohoResponse.info) { + // Books response structure + records = zohoResponse.data || []; + pageInfo = { + count: zohoResponse.info?.count || records.length, + moreRecords: zohoResponse.info?.more_records || false, + page: zohoResponse.info?.page || 1 + }; + } else { + // CRM response structure + records = zohoResponse.tasks || []; + pageInfo = { + count: zohoResponse.page_info?.per_page || records.length, + moreRecords: zohoResponse.page_info?.has_next_page || false, + page: zohoResponse.page_info?.page || 1, + pageCount: zohoResponse.page_info?.page_count || 1 + }; + } break; case 'phases':