Add GoHighLevel CRM sync for tenant locations.

Warehouse leads/deals from GHL contacts and opportunities so Métricas and CRM can use the same scorecard as Clientify.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
4Ventures
2026-10-06 11:57:02 +02:00
parent fb8adab162
commit 487e2c7a2b
12 changed files with 603 additions and 17 deletions

View File

@@ -25,6 +25,7 @@ const PLACEHOLDERS: Record<string, string> = {
search_console: 'sc-domain:ejemplo.com',
tag_manager: 'GTM-…',
clientify: 'ID / workspace Clientify',
gohighlevel: 'Location ID (URL …/location/XXXX/)',
klaviyo: 'Account / list ID',
mailchimp: 'Audience ID',
google_drive: 'URL de carpeta Drive o folder id',

View File

@@ -97,6 +97,13 @@ export default function WindsorAiSection({
const ga4 = findIntegration('ga4');
const gsc = findIntegration('search_console');
const clientify = findIntegration('clientify');
const gohighlevel = findIntegration('gohighlevel');
const crmInteg =
gohighlevel?.status === 'connected'
? gohighlevel
: clientify?.status === 'connected'
? clientify
: gohighlevel || clientify;
const gscSite = String(
gsc?.external_account_id ||
@@ -404,9 +411,10 @@ export default function WindsorAiSection({
type: 'Tráfico & Clics Orgánicos',
},
{
name: 'Clientify CRM',
id: clientify?.label || clientify?.external_account_id || '—',
status: clientify?.status === 'connected' ? 'connected' : 'disconnected',
name:
crmInteg?.provider === 'gohighlevel' ? 'GoHighLevel CRM' : 'Clientify CRM',
id: crmInteg?.label || crmInteg?.external_account_id || '—',
status: crmInteg?.status === 'connected' ? 'connected' : 'disconnected',
type: 'Leads & Closed-Loop Won',
},
];