Guía

Usa los custom values del CRM en tus prompts

Última actualización: 11 de septiembre de 2026

Los custom values de tu CRM — esas constantes por subcuenta como el nombre del negocio, la dirección o los detalles de la oferta — están disponibles dentro de cualquier prompt de agente como variables {{cv_*}}. Escribes el prompt una sola vez; cada llamada rellena los valores del cliente para el que realmente está llamando.

Esto es lo que permite que una única plantilla de agente sirva a muchos clientes: un agente del «nicho de fisioterapia» puede abrir con {{cv_business_name}} y citar {{cv_offer_details}} sin necesidad de un prompt distinto por cliente.

Cómo se resuelven los valores en la llamada

Todas las llamadas — salientes y entrantes — resuelven los tokens {{cv_*}} a partir de la subcuenta de esa llamada: la del cliente al que pertenece el lead. Las llamadas del cliente A obtienen los valores del cliente A; las del cliente B, los del cliente B.

La subcuenta de referencia que eliges en el editor no interviene en esto. Es solo una ayuda en tiempo de diseño: rellena la paleta de variables para que veas cuáles existen y puedas insertarlas con un clic. Cambiar la referencia nunca cambia lo que dice una llamada real.

Dos apuntes prácticos:

  • Los valores se leen de tu CRM y se cachean brevemente, así que un cambio en un custom value del CRM puede tardar hasta una hora en llegar a las llamadas en vivo.
  • La consulta es fail-open: si tu CRM no está disponible en el momento del envío, la llamada sale igualmente y las variables sin resolver se muestran vacías.

Insertar variables desde el editor

  1. Abre el agente (Agentes → agente → pestaña Prompt). El mismo panel está disponible en el formulario de Nuevo agente, así que puedes construir el prompt en torno a las variables desde el primer día.
  2. En el panel Variables GHL, elige una Subcuenta de referencia: — el selector tiene búsqueda. Las subcuentas creadas desde el mismo snapshot comparten las mismas variables, así que cualquier cliente de ese snapshot sirve como referencia.
  3. Una vez cargadas las variables, la paleta muestra un buscador y el recuento de lo disponible. Un snapshot trae fácilmente decenas de variables, así que no se lista nada hasta que escribes: busca por nombre o por clave (por ejemplo budget o cv_business) y las variables coincidentes aparecen como chips, en dos grupos:
    • Custom values — los custom values de la subcuenta, resueltos automáticamente en cada llamada.
    • Campos de contacto — tokens por lead, rellenados por el workflow que dispara la llamada.
  4. Haz clic en un chip para insertar la variable en la posición del cursor dentro del prompt. Si la búsqueda supera los 30 resultados por grupo, afínala para ver el resto.

Nomenclatura: cv_ más la clave normalizada

Cada token es {{cv_<key>}}, donde <key> es la clave del campo del CRM normalizada: en minúsculas, con cualquier secuencia de caracteres que no sea letra o dígito colapsada en un único guion bajo, y sin el prefijo custom_values..

Clave del CRMToken del prompt
custom_values.business_name{{cv_business_name}}
custom_values.Offer-Price{{cv_offer_price}}
contact.budget (campo de contacto){{cv_contact_budget}}

Nunca necesitas construirlos a mano — la paleta inserta el token exacto.

Los valores enviados por el trigger tienen prioridad

El webhook del workflow que dispara una llamada puede enviar su propio mapa customValues (consulta Conecta el workflow de tu CRM a un agente). Esos valores también se exponen como variables cv_* y, cuando hay colisión de nombres, gana el valor del trigger sobre el custom value de la subcuenta. Así es también como los campos de contacto (custom fields de GHL) por lead llegan al prompt con el webhook genérico: el workflow los mapea dentro de customValues (p. ej. "contact_budget": "{{contact.budget}}").

Con la acción del marketplace «Iniciar ciclo de llamadas» no hay nada que mapear: los custom fields del contacto se obtienen automáticamente y se exponen con los mismos tokens de la paleta (p. ej. {{cv_contact_budget}}), y luego se guardan en el contacto como cualquier otro valor del trigger.

Los valores del trigger permanecen en el contacto

Los customValues que envía un trigger se guardan en el lead, no se usan solo para esa llamada. Se resuelven como las mismas variables cv_* en cada contacto posterior:

  • las rellamadas automáticas (cadencia de reintentos o devolución de llamada programada) viajan con el conjunto completo que envió el trigger;
  • las llamadas entrantes de vuelta — cuando el lead devuelve la llamada, el agente que responde tiene el mismo contexto cv_* por contacto con el que marcó;
  • un trigger posterior para el mismo contacto actualiza las claves que envía y conserva las demás (una actualización parcial nunca borra los valores anteriores).

Así, cada campo del contacto que pongas en el prompt del agente como token cv_* sigue disponible para ese contacto durante todo el ciclo de llamadas, en ambas direcciones.

Una plantilla por nicho

La configuración típica: un agente por nicho, conectado a un workflow del snapshot. Todos los clientes creados desde ese snapshot comparten las mismas claves de custom values pero rellenan sus propios valores — así que dar de alta un cliente nuevo consiste en importar la subcuenta y rellenar sus custom values en el CRM. Sin editar prompts, sin crear agentes.

Siguiente