---
name: vita-client-campaigns-emails
description: "Correos y campañas: Escribe un correo con tu logo y tus colores, y envía o programa una campaña masiva. Rama pública para escribir correos con la marca del centro y enviarlos a una persona o a un segmento. Explica que el correo sale tal cual se escribe, entrega la plantilla HTML con logo, color y botón, las variables de personalización y la secuencia pública objetivo → borrador → envío o programación, con los tres interruptores que apagan una campaña."
---

# Correos y campañas

Usa esta rama para escribir un correo con la marca del centro, enviarlo a una persona o mandar una campaña masiva a un grupo de gente. Un correo masivo llega a personas reales y no se puede retirar: redactar, revisar el público y enviar son decisiones separadas.

[Volver a la guía raíz](https://skills.vita.lat/s/vita-client-assistant)

## Lo primero: el correo sale tal cual lo escribes

Cuando escribes desde aquí **no hay plantilla automática**. Vita entrega el HTML exactamente como se lo entregas: si mandas texto suelto, llega texto suelto, sin logo, sin colores y sin botón. Esa es la única razón por la que un correo «llega feo».

El compositor del panel sí agrega un encabezado con logo y un pie con los datos del centro. Desde aquí ese envoltorio lo pones tú. Nunca envíes un correo sin haberlo armado con la marca.

## Leer la marca antes de escribir

Lee la marca real del centro y úsala; no inventes un logo, un color ni una dirección.

1. `get_institution_page_content_by_institution_id` entrega `logoUrl`, `primaryColor` y el correo de contacto de la portada.
2. Si falta el logo, pídelo y súbelo con `admin_upload_image`. Un logo que vive en Drive, en el computador de la persona o en un chat **no sirve**: el correo necesita una URL pública y `admin_upload_image` devuelve una.
3. Si no hay logo, usa el nombre del centro en texto grande. No uses el logo de Vita.

## Plantilla base

Parte siempre de un documento HTML completo como este, reemplazando marca, color, textos y enlaces. Manténlo simple: el correo se ve en Gmail, Outlook y el teléfono, no en un navegador moderno.

```html
<!DOCTYPE html>
<html lang="es">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"></head>
<body style="margin:0;padding:0;background:#f5f5f5;font-family:Helvetica,Arial,sans-serif;">
  <table role="presentation" width="100%" cellpadding="0" cellspacing="0" style="background:#f5f5f5;">
    <tr><td align="center" style="padding:24px 12px;">
      <table role="presentation" width="600" cellpadding="0" cellspacing="0" style="max-width:600px;width:100%;background:#ffffff;border-radius:12px;overflow:hidden;">
        <tr><td align="center" style="padding:28px 20px;background:#ffffff;">
          <img src="LOGO_URL" alt="NOMBRE DEL CENTRO" width="160" style="width:160px;max-width:60%;height:auto;display:block;">
        </td></tr>
        <tr><td style="padding:0 28px 8px;">
          <h1 style="margin:0;font-size:22px;line-height:1.3;color:#1a1a1a;">TÍTULO</h1>
        </td></tr>
        <tr><td style="padding:8px 28px 0;font-size:16px;line-height:1.6;color:#444444;">
          <p style="margin:0 0 14px;">Hola {{nombre}},</p>
          <p style="margin:0 0 14px;">TEXTO.</p>
        </td></tr>
        <tr><td align="center" style="padding:24px 28px 8px;">
          <a href="ENLACE" style="display:inline-block;background:COLOR_MARCA;color:#ffffff;text-decoration:none;font-weight:bold;font-size:16px;padding:14px 28px;border-radius:999px;">TEXTO DEL BOTÓN</a>
        </td></tr>
        <tr><td align="center" style="padding:24px 28px 28px;border-top:1px solid #eeeeee;font-size:13px;line-height:1.6;color:#888888;">
          <p style="margin:0 0 4px;"><strong style="color:#555555;">NOMBRE DEL CENTRO</strong></p>
          <p style="margin:0;">CORREO DE CONTACTO · SITIO WEB</p>
        </td></tr>
      </table>
    </td></tr>
  </table>
</body>
</html>
```

Reglas que no puedes saltarte:

- **Todo el estilo va en línea**, dentro de `style="..."`. Las hojas de estilo y las clases se pierden en Gmail.
- **Ancho máximo 600 px** y estructura con `<table>`. `flex`, `grid`, `position` y variables CSS no funcionan en correo.
- **Cada imagen necesita una URL pública** y su `alt`. Muchos clientes de correo bloquean imágenes al abrir: el correo tiene que entenderse sin ellas, así que nunca pongas el mensaje principal dentro de una imagen.
- **Un solo botón principal** con el enlace real (agenda, plan, app). Escribe también el enlace en texto si el botón es la única salida.
- Nada de fuentes externas, video, formularios ni JavaScript.

## Personalizar con el nombre

En el asunto y en el cuerpo puedes usar tres variables; se reemplazan por persona al entregar:

| Variable | Qué pone |
| --- | --- |
| `{{nombre}}` | Primer nombre. Queda vacío si no lo tenemos. |
| `{{nombreCompleto}}` | Nombre y apellidos de la ficha. |
| `{{codigoAcceso}}` | Su código de 6 dígitos de acceso al local. |

No inventes otras variables: cualquier otra cosa entre llaves llega literal al correo. Escribe el saludo para que funcione aunque el nombre esté vacío.

## Enviar una campaña masiva

1. **Define el público en palabras** y tradúcelo a filtros de segmento. Pregunta a quién hay que dejar fuera, no solo a quién incluir.
2. **Muestra a quiénes llegaría** con `admin_preview_campaign_audience`. Di el total y algunos nombres reales. Si el número no calza con lo que la persona espera, corrige el segmento antes de seguir.
3. **Guarda el borrador** con `admin_draft_email_campaign` (nombre interno, asunto y el HTML completo). Guardar no envía nada.
4. **Muestra el correo terminado** —asunto y cuerpo tal como saldrá, con el nombre de ejemplo ya reemplazado— y el total de destinatarios en el mismo mensaje.
5. **Pregunta `¿La envío ahora o la programo?`** y espera un sí explícito para ese público y ese contenido.
6. Envía con `admin_send_email_campaign` y `confirm: true`, o programa con `admin_schedule_email_campaign` usando la **hora local del centro** (`YYYY-MM-DDTHH:mm:ss`). Una campaña programada se puede cancelar con `admin_cancel_email_campaign`; una enviada no.
7. Vuelve a leerla con `admin_get_email_campaign` y di el estado real y cuántas personas quedaron.

Corregir el texto o el segmento de un borrador se hace con `admin_update_email_campaign`. Nunca reutilices la confirmación de un envío anterior para uno nuevo.

## Enviar un correo a una sola persona

Para avisar algo puntual —una clase cancelada, un plan que se acaba, un dato de una alumna— usa `admin_send_message` con el correo de la persona, `patientId` para que quede en su ficha, y **el mismo HTML con marca**. Esa herramienta tampoco agrega plantilla.

Antes de enviar, muestra destinatario, asunto y cuerpo completo y pide confirmación. No mandes pruebas a personas del centro sin aprobación del destinatario exacto.

## Quién aparece como remitente

Las campañas salen como **`Nombre del centro <contacto@vita.lat>`**: el nombre visible es el del centro, la dirección es fija. No prometas otra dirección. Enviar desde el dominio propio del centro es una configuración aparte que hace el equipo Vita; si lo piden, deriva en lugar de improvisar.

## Cuando una campaña no sale

Hay tres interruptores distintos y se confunden con facilidad. Si una campaña no salió, revísalos en este orden antes de decir que «está roto»:

1. **Pausa global de campañas** en toda la plataforma. No deja rastro en la campaña y es la causa más frecuente. La levanta el equipo Vita.
2. **Interruptor de correo del centro**. Deja la campaña en `failed` con un motivo de límites.
3. **Cupo mensual y máximo de destinatarios** del centro. También deja `failed` con motivo.

Si el estado quedó `failed`, lee el motivo y explícalo en palabras simples. Si quedó `sent`, di el número de destinatarios que efectivamente se resolvió, no el estimado del borrador.

## Qué significa la evidencia

- **Guardada**: la campaña existe como borrador. No salió nada.
- **Programada**: saldrá sola a la hora indicada y todavía se puede cancelar.
- **Enviada**: Vita entregó los correos al proveedor.
- **Abierta o con clic**: solo si lo leíste en las métricas de la campaña.

No conviertas una prueba en otra. No digas que a alguien «le llegó» el correo si solo viste que la campaña quedó enviada.

Termina con el estado comprobado y una sola acción siguiente.
