# Clientify

## ¿Qué es Clientify?

Clientify es un CRM hispanohablante orientado a equipos de ventas. La integración con Anunzi permite que tus agentes —de voz y de WhatsApp— trabajen directamente sobre tu cuenta de Clientify: crean y actualizan contactos, dejan notas, etiquetan, abren oportunidades en tu pipeline, crean tareas y agendan citas, de forma automática.

La integración tiene **dos partes complementarias** que puedes usar juntas o por separado:

1. **Sincronización automática (saliente):** cada lead que captan tus agentes aparece en Clientify sin que el agente tenga que hacer nada.
2. **Funciones de agente (bundle Clientify):** el agente —de voz o de WhatsApp— consulta y escribe en Clientify en tiempo real, durante la conversación.

***

## Parte 1 — Sincronización automática

Anunzi sincroniza contactos y oportunidades en Clientify según el canal que disparó el evento. No requiere configuración extra más allá de conectar la integración y elegir los eventos.

### Lead creado

Cuando se crea un lead en cualquier herramienta de Anunzi (formularios web, llamadas, campañas, importaciones…):

1. Anunzi crea o actualiza el **contacto** en Clientify con nombre, email, teléfono y los campos adicionales que hayas mapeado.
2. Si el lead trae un resumen o transcripción, se agrega como **nota** en el contacto.
3. Si configuraste un pipeline y etapa por defecto, crea una **oportunidad** (deal) en ese pipeline.

### Lead actualizado

Cuando se actualizan los datos o el estado de un lead en Anunzi, se refleja en su contacto de Clientify.

### Nuevo contacto por WhatsApp

La primera vez que un número nuevo escribe a un agente de WhatsApp, se crea el contacto en Clientify.

### Lead cualificado por WhatsApp

Cuando el agente de WhatsApp completa la calificación de un contacto: contacto + nota + oportunidad (si configuraste pipeline/etapa por defecto).

***

## Parte 2 — Funciones de agente (bundle Clientify)

Además de la sincronización automática, puedes activar funciones de Clientify en un agente —de voz o de WhatsApp— para que consulte y escriba en tu CRM **durante la conversación**. Se activan desde la ficha del agente → **Funciones del agente** → pestaña **CRM** → grupo **Clientify**.

A diferencia de otros bundles (Cal.com, Google Calendar), las funciones de Clientify se activan **una por una** (o varias juntas, seleccionándolas): puedes elegir solo las que necesitas, por ejemplo usar Clientify para el CRM y otra herramienta para la agenda.

| Función                      | Qué hace                                                                 |
| ----------------------------- | ------------------------------------------------------------------------ |
| `clientify_buscar_contacto`   | Busca el contacto en Clientify por teléfono o email                      |
| `clientify_guardar_contacto`  | Crea o actualiza el contacto (nombre, teléfono, email, etiquetas) sin duplicar |
| `clientify_agregar_nota`      | Guarda una nota en el contacto                                           |
| `clientify_agregar_tag`       | Agrega una o más etiquetas al contacto                                   |
| `clientify_crear_oportunidad` | Abre una oportunidad (deal) en el pipeline y etapa por defecto           |
| `clientify_mover_etapa`       | Mueve la oportunidad del contacto a otra etapa, **por nombre** de la etapa |
| `clientify_crear_tarea`       | Crea una tarea o seguimiento asociado al contacto                        |
| `clientify_agendar_cita`      | Agenda una cita para el contacto (se registra como una tarea)            |

> 💡 **`clientify_mover_etapa` funciona por nombre, no por ID.** Le decís al agente a qué etapa mover la oportunidad (ej. "Ganado", "Negociación") y él la busca entre las etapas reales del pipeline. Si no encuentra una coincidencia, te ofrece las etapas disponibles en vez de pedirte un identificador.
>
> 💡 **Clientify no tiene un módulo de "citas" separado.** `clientify_agendar_cita` crea una tarea marcada como cita (con fecha, hora y lugar), y por eso no puede consultar horarios libres como sí hacen Google Calendar o Go High Level — solo agenda directamente. Si necesitas verificar disponibilidad antes de proponer un horario, combina Clientify con Google Calendar o Cal.com para la parte de agenda.

**Requisito:** la integración de Clientify debe estar conectada en **Integraciones** (Parte 1) para que las funciones del agente funcionen. El agente usa las mismas credenciales y el pipeline/etapa configurados ahí.

***

## Cómo activarla

### 1. Obtén tu API key de Clientify

Accede a tu cuenta de Clientify → **Configuración** → **API** → copia tu token de acceso.

### 2. Conéctala en Anunzi

1. En el panel, ve a **Integraciones** → **Clientify** → **Conectar**.
2. Pega tu API key.
3. Elige la versión de API:
   * **V1** (recomendada) — es la que usan las funciones de agente y la que tiene más funcionalidades disponibles.
   * **V2** — solo para el mapeo de campos personalizados con autocompletado; el resto de la integración usa V1 igual.
4. Haz clic en **Guardar y verificar conexión** para comprobar que la API key es válida.
5. _(Opcional)_ Elige el **pipeline** y la **etapa por defecto** donde se crearán las oportunidades. Sin esto, los contactos se sincronizan igual, pero no se crean oportunidades automáticas. Las opciones se arman a partir de tus oportunidades existentes en Clientify (Clientify no tiene un listado de pipelines separado).
6. En la sección **Eventos**, activa los que quieras sincronizar: Lead creado, Lead actualizado, Nuevo contacto por WhatsApp, Lead cualificado por WhatsApp.
7. Guarda la configuración.

***

## Datos que se sincronizan (Parte 1)

| Campo de Anunzi                     | Campo en Clientify        |
| ------------------------------------ | -------------------------- |
| Nombre (primer parte)                | `first_name`                |
| Apellido (segunda parte del nombre)  | `last_name`                 |
| Email                                | `email`                     |
| Teléfono                             | `phone`                     |
| Nombre de empresa ¹                  | `company`                   |
| Mensaje / consulta ¹                 | `description`               |
| Fuente                               | `contact_source: Anunzi`    |
| Campos adicionales                   | Tags o `custom_fields`      |

> El nombre se divide automáticamente: "María García" → first\_name: María, last\_name: García.
>
> ¹ Detección automática: si el formulario tiene un campo cuyo nombre o placeholder incluye palabras como *empresa*, *company*, *organización*, *mensaje*, *message* o *consulta*, su valor se envía directamente al campo estándar de Clientify — sin necesidad de configurar ningún mapeo.

### Campos adicionales del formulario

Si tus formularios tienen campos más allá de nombre, email y teléfono, Anunzi los procesa en este orden:

**Campos auto-detectados → Campos estándar de Clientify:** Anunzi reconoce automáticamente los campos de **empresa** y **mensaje** aunque no estén mapeados (ver arriba). No necesitas configurar nada extra para que esto funcione.

**Sin mapeo → Etiqueta:** el valor del campo se envía como **etiqueta (tag)** en Clientify. Por ejemplo, si el campo `cargo` tiene el valor "Directora", Clientify recibirá la etiqueta `Directora`.

**Con mapeo → Campo personalizado:** si en Clientify tienes campos personalizados definidos (como "Cargo", "Tipo de consulta"), puedes vincularlos con los campos de tus formularios desde la sección **Campos personalizados** dentro de la configuración de la integración.

**Cómo configurar el mapeo:**

1. Ve a **Integraciones** → **Clientify** → sección **Campos personalizados**.
2. Verás la lista de campos detectados en los formularios recientes de tu cuenta.
3. Frente a cada campo, escribe el nombre exacto del campo personalizado en Clientify (por ejemplo: `Empresa`, `Cargo`).
4. Los campos que dejes en blanco seguirán enviándose como etiquetas.
5. Guarda la configuración.

> **V2 únicamente:** si usas la API V2, puedes hacer clic en **Sugerir campos de Clientify V2** para que Anunzi consulte automáticamente la lista de campos personalizados de tu cuenta y los proponga como autocompletado.

***

## ¿Qué se puede hacer en Clientify y qué no?

Clientify no expone por API todos los módulos que tiene su interfaz. Esto es lo que la integración puede y no puede hacer:

| Módulo                | Disponible | Notas                                                                 |
| ---------------------- | :--------: | ---------------------------------------------------------------------- |
| Contactos               | ✅         | Crear, actualizar, buscar, etiquetar                                   |
| Notas                   | ✅         | Se guardan en el contacto                                              |
| Oportunidades (deals)   | ✅         | Crear, mover de etapa                                                  |
| Tareas / agenda         | ✅         | La agenda se maneja como tareas — no hay consulta de horarios libres   |
| Registro de llamadas    | ✅         | Vía la sincronización nativa                                           |
| **Tickets de soporte**  | ❌         | Clientify no tiene un módulo de tickets accesible por API              |
| **Conversaciones**      | ❌         | El historial de chat/email de Clientify no está disponible por API     |

***

## Versiones de la API

| Versión | URL base                     | Cuándo usarla                                                        |
| ------- | ----------------------------- | ---------------------------------------------------------------------- |
| V1      | `api.clientify.net/v1/`       | La que usa todo el motor de la integración (sync + funciones de agente). |
| V2      | `api-plus.clientify.com/v2/`  | Solo para consultar campos personalizados automáticamente al mapear.   |

Si no sabes cuál usar, elige **V1**.

***

## Prueba de conexión

Antes de activar la integración, puedes verificar que la API key es válida con el botón **Guardar y verificar conexión**. Si la clave es correcta, Anunzi mostrará cuántos contactos tiene tu cuenta en Clientify. Si hay un error, se muestra el detalle devuelto por Clientify.

***

## Desconectar la integración

Desde **Integraciones** → **Clientify** → botón **Desconectar**. Los contactos ya enviados a Clientify no se eliminan. Solo se dejan de sincronizar los nuevos leads y dejan de funcionar las funciones del agente.

***

## Preguntas frecuentes

**¿Necesito activar las dos partes?**\
No. Puedes usar solo la sincronización automática (Parte 1), o sumarle funciones de agente (Parte 2) en los agentes que quieras. Las funciones de agente requieren que la integración esté conectada.

**¿Qué pasa si el contacto ya existe en Clientify?**\
Anunzi lo busca por teléfono o email antes de crear uno nuevo y actualiza sus datos en vez de duplicarlo.

**¿Por qué la oportunidad no se crea?**\
Las oportunidades solo se crean si configuraste un **pipeline** y una **etapa por defecto** en la pantalla de la integración. Sin eso, el contacto y la nota se sincronizan igual, pero sin oportunidad.

**¿Puedo usar Clientify para el CRM y otra herramienta para la agenda?**\
Sí. Como las funciones se activan una por una, podés activar solo las funciones de contacto/oportunidad de Clientify y usar Google Calendar o Cal.com para las citas (con consulta de disponibilidad real).

**¿Se sincronizan leads existentes o solo los nuevos?**\
Solo los leads nuevos, creados a partir del momento en que activas la integración.

**¿Sirve para agentes de voz y de WhatsApp?**\
Sí, tanto la sincronización automática como las funciones de agente están disponibles para ambos canales.

**¿Qué pasa si falla el envío a Clientify?**\
El lead se guarda igualmente en Anunzi. El error queda registrado en los logs internos del sistema.
