Cargando...

Bienvenido de vuelta

Ingresa a tu cuenta

{{ aerr }}

Sin cuenta?

Crear cuenta

14 dias gratis, sin tarjeta

{{ aerr }}

Ya tienes cuenta?

Dashboard

Resumen de actividad

{{ s.icon }}
{{ s.badge }}
{{ (s.value||0).toLocaleString() }}
{{ s.label }}

Conversaciones recientes

Sin conversaciones aun
{{ cini(c) }}
{{ cname(c) }} {{ ago(c.last_message_at) }}

{{ c.last_message_preview || 'Sin mensajes' }}

Canales

Sin canales

{{ chi(ch.type) }}
{{ ch.name }}

Acciones rapidas

Métricas por agente

Sin datos de agentes para este período
{{ ag.agent_name ? ag.agent_name[0].toUpperCase() : '?' }}
{{ ag.agent_name || 'Sin nombre' }}
{{ ag.agent_email }}
{{ ag.conversations_handled }}
Convs
{{ ag.messages_sent }}
Msgs
{{ ag.resolved }}
Resueltas
⏱ Resp. promedio: {{ ag.avg_response_minutes }}min

Embudo de conversion

Estado actual de todos los leads

{{ stage.l }}
{{ dFunnel.stages[stage.v] }}
{{ dFunnel.stages[stage.v] || 0 }}
{{ dFunnel.total_active || 0 }}
Leads activos
{{ dFunnel.total_won || 0 }}
Ganados
{{ dFunnel.total_lost || 0 }}
Perdidos

Inbox

{{ convsFiltradas.length }}
Sin conversaciones
{{ cini(c) }}
{{ cname(c) }} {{ c.lead_status==='new'?'Nuevo':c.lead_status==='contacted'?'Contactado':c.lead_status==='qualified'?'Calificado':c.lead_status==='proposal'?'Propuesta':c.lead_status==='won'?'Ganado':'Perdido' }}
{{ ago(c.last_message_at) }}
🤖

{{ previewMsg(c) }}

{{ c.unread_count > 99 ? '99+' : c.unread_count }}
{{ tag.name }}
💬

Selecciona una conversacion

Respuestas rápidas

Usá / en el inbox para buscarlas

Sin respuestas rápidas. Creá la primera.

{{ qr.shortcut }}
{{ qr.title }}
{{ qr.content }}

{{ qrEditing ? 'Editar respuesta' : 'Nueva respuesta rápida' }}

Contactos

{{ ctot.toLocaleString() }} registros

Sin contactos

Contacto Estado
{{ cini(c) }}
{{ cname(c) }}
{{ c.phone || c.email || '—' }}· {{ c.document_id }}
{{ cname(ctDrawer) }}
{{ cini(ctDrawer) }}
{{ cname(ctDrawer) }}
{{ ctDrawer.phone || ctDrawer.email || '—' }}

Datos

Conversaciones ({{ ctDrawer.conversation_count || 0 }})

Sin conversaciones
{{ conv.last_message_preview || 'Sin mensajes' }}
{{ ago(conv.last_message_at) }}
{{ conv.status==='open'?'Abierta':'Resuelta' }}

Nuevo contacto

Canales

Conecta tus cuentas de mensajeria

📋
URL de Webhook para Meta (WhatsApp / Instagram / Facebook)
{{ webhookUrl }}
Token de verificacion: cf_webhook_verify_2024
📡

Sin canales conectados

Conecta WhatsApp, Instagram, Facebook o Email para empezar a recibir mensajes

{{ ch.name }}
{{ ch.type.replace(/_/g, ' ') }}
{{ ch.identifier }}
{{ ch.conversation_count || 0 }} conversaciones {{ ch.status === 'active' ? 'Activo' : ch.status === 'inactive' ? 'Inactivo' : 'Error' }}

{{ editCh ? 'Editar canal' : 'Conectar canal' }}

Agentes de IA

Bots inteligentes que responden conversaciones

🤖

Sin agentes de IA

Crea tu primer agente para automatizar respuestas inteligentes

{{ ag.name }}
{{ ag.provider }} · {{ ag.model }}
{{ ag.status }}

{{ ag.objective || ag.description || 'Sin descripcion' }}

Probar agente
{{ agTestResp }}

{{ editAg ? 'Editar agente' : 'Nuevo agente de IA' }}

Configuracion

Datos de tu empresa y equipo

{{ darkMode ? '🌙' : '☀️' }} {{ darkMode ? 'Modo oscuro' : 'Modo claro' }}

Datos de la empresa

Cambiar contraseña

Equipo

Sin miembros del equipo
{{ (m.name || '?')[0].toUpperCase() }}
{{ m.name }}
{{ m.email }}
{{ m.role }}

Plantillas de Email

Personalizá los emails que envía el sistema

{{ etIcon(tpl.slug) }}
{{ tpl.name }}
{{ tpl.subject }}
Personalizada ✏️ Editar

Plan actual

{{ stdata.plan_name || 'Free' }}
{{ stdata.max_contacts ? stdata.max_contacts.toLocaleString() : 'ilimitados' }} contactos · {{ stdata.max_messages_month ? stdata.max_messages_month.toLocaleString() : 'ilimitados' }} mensajes/mes · {{ stdata.max_channels }} canales

{{ etEditing.name }}

Variables: {{ v.name }}

Hacé click en una variable para insertarla en el cursor.

Invitar miembro

Pipeline CRM

Gestión de leads y seguimiento

{{ kbCards.length }} leads totales
{{ kbCards.filter(c=>c.stage_id==='stage_new'||c.stage_id===kbCols[0]?.id).length }} nuevos esta semana
{{ kbCards.filter(c=>c.followup_at && new Date(c.followup_at) <= new Date(Date.now()+86400000)).length }} seguimientos hoy
{{ kbCards.filter(c=>{ var col=kbCols.find(k=>k.id===c.stage_id); return col && kbDaysStuck(c)>=(col.alert_days||7); }).length }} con alerta
{{ col.name }}
{{ kbCards.filter(c=>c.stage_id===col.id).length }}
{{ kbEditCard.contact_name.charAt(0) }}{{ kbEditCard.contact_name.split(' ')[1]?.charAt(0)||'' }}
{{ kbEditCard.contact_name || (kbEditCard.id ? 'Detalle del lead' : 'Nuevo lead') }}
{{ kbEditCard.id ? 'Editar lead' : 'Agregar al pipeline' }}
Abrir WhatsApp
{{ kbFormatDate(h.created_at) }} {{ h.note }}

Configurar etapas

Agenda

{{ scWeekLabel }}
{{ day.dayName }}
{{ day.dayNum }}
{{ hour }}:00
{{ appt.first_name || 'Cliente' }} {{ appt.last_name || '' }}
{{ scFmtTime(appt.starts_at) }} · {{ appt.service_name || appt.professional_name }}
hasta

Sin citas en este período

{{ appt.first_name || 'Sin contacto' }} {{ appt.last_name || '' }} {{ appt.status==='confirmed'?'Confirmada':appt.status==='cancelled'?'Cancelada':appt.status==='completed'?'Completada':'Pendiente' }}
{{ scFmtDateTime(appt.starts_at) }} · {{ appt.service_name || '—' }} · {{ appt.professional_name }}

Sin profesionales configurados

{{ prof.name.charAt(0) }}
{{ prof.name }}
{{ prof.specialty || 'Sin especialidad' }}
{{ prof.slot_duration_min }}min por turno · {{ prof.cancel_window_hours }}h para cancelar
Agregar profesional
{{ svc.name }}
{{ svc.duration_min }} minutos{{ svc.price ? ' · '+scFormatPrice(svc.price, svc.currency) : '' }}

Confirmación de cita

Mensajes que se envían al cliente cuando confirma una cita desde el formulario web.

Variables: {{nombre}} {{fecha}} {{hora}} {{profesional}} {{servicio}} {{link}}
Variables: {{nombre}} {{fecha}} {{hora}} {{profesional}} {{servicio}} {{link}}

Recordatorio 24hs antes

Se envía automáticamente 24hs antes de la cita via cron job.

Recordatorio 1hs antes

Se envía automáticamente 1hs antes de la cita via cron job.

Configuración general

Parámetros globales que aplican a todos los profesionales.

horas antes

Mínimo de anticipación para agendar

horas antes

Límite para cancelar desde el link

Permitir cancelación online
El cliente puede cancelar desde el link de su cita
Notificar al admin por email
Recibir un email cuando se agenda una cita

Nombre que aparece en los emails enviados a tus clientes

{{ scEditAppt.id ? 'Detalle de cita' : 'Nueva cita' }}

WhatsApp
{{ (scSelectedContact.first_name || scSelectedContact.phone || '?')[0].toUpperCase() }}
{{ (scSelectedContact.first_name || '') + ' ' + (scSelectedContact.last_name || '') }}
{{ scSelectedContact.phone || scSelectedContact.email || '' }}{{ scSelectedContact.document_id ? ' · ' + scSelectedContact.document_id : '' }}
Buscando...
{{ (ct.first_name || '') + ' ' + (ct.last_name || '') }}
{{ ct.phone || ct.email || '' }}{{ ct.document_id ? ' · ' + ct.document_id : '' }}

Sin resultados para "{{ scContactSearch }}"

✓ {{ scFmtDateTime(scEditAppt.starts_at) }}

{{ scEditProf.id ? 'Editar profesional' : 'Nuevo profesional' }}

No hay servicios creados. Creá uno en la pestaña Servicios.
a

{{ scEditSvc.id ? 'Editar servicio' : 'Nuevo servicio' }}

Nuevo contacto

Facturacion

Planes y uso

Recomendado
{{ plan.name }}
Gratis ${{ plan.price_monthly }}/mes
{{ plan.max_contacts ? plan.max_contacts.toLocaleString() : 'ilimitados' }} contactos
{{ plan.max_messages_month ? plan.max_messages_month.toLocaleString() : 'ilimitados' }} mensajes/mes
{{ plan.max_channels }} canales
{{ plan.max_ai_agents }} agentes IA

Uso este mes

{{ (blUsage.messages_used || 0).toLocaleString() }}
Mensajes enviados
{{ (blUsage.total_contacts || 0).toLocaleString() }}
Contactos totales
{{ (blUsage.contacts_created || 0).toLocaleString() }}
Nuevos contactos
{{ (blUsage.ai_tokens || 0).toLocaleString() }}
Tokens IA

Automatizaciones

Los flujos activos se ejecutan en orden de prioridad — el primero que coincide gana

Conflictos detectados

{{ c }}

Solo el flujo de mayor prioridad se ejecutará cuando coincidan.

Sin automatizaciones

Creá tu primer flujo para automatizar respuestas y capturar leads

↑ Mayor prioridad
Arrastrá para reordenar
{{ flows.length - idx }}
{{ fl.name }} {{ fl.status === 'active' ? 'Activo' : fl.status === 'inactive' ? 'Inactivo' : 'Borrador' }} {{ flTriggerLabel(fl.trigger_type) }} {{ fl.active_executions }} en curso ⚠️ Conflicto
{{ fl.node_count || 0 }} nodos {{ (fl.run_count || 0).toLocaleString() }} ejecuciones {{ fl.runs_today }} hoy Última: {{ ago(fl.last_run_at_real) }} {{ fl.description }}
↓ Menor prioridad

Nuevo flujo

Campanas

Broadcasts masivos de WhatsApp

Total

{{ campaigns.length }}

Enviadas

{{ campaigns.filter(c=>c.status==='sent').length }}

Enviando

{{ campaigns.filter(c=>c.status==='sending').length }}

Programadas

{{ campaigns.filter(c=>c.status==='scheduled').length }}

📣

Sin campanas

Envia mensajes masivos a tus contactos segmentados

{{ cp.name }}
{{ cp.message_type === 'template' ? 'Template Meta' : 'Mensaje libre' }} - {{ cp.channel_name || 'Sin canal' }}
{{ cpSegmentLabel(cp) }}
{{ cpStatusLabel(cp.status) }}
{{ cp.sent_count || 0 }} enviados - {{ cp.failed_count || 0 }} fallidos {{ cp.total_contacts }} total
Programada: {{ fdt(cp.scheduled_at) }}

{{ editCp ? 'Editar campana' : 'Nueva campana' }}

{{ ((ct.first_name||'') + ' ' + (ct.last_name||'')).trim() || ct.phone }}
Vista previa

Calculando...

{{ cpSegPreview.count || 0 }} contactos

Solo podes usar templates aprobados por Meta (status APPROVED).
{{ cpSelTemplate.body || 'Sin preview' }}
Solo llegara a contactos con conversacion activa en las ultimas 24 horas.
{{ cpPreviewFreeMsg() }}
Nombre {{ cpf.name }}
Canal {{ (cpWaChannels.find(c=>c.id==cpf.channel_id)||{}).name || '-' }}
Tipo {{ cpf.message_type==='template' ? 'Template Meta' : 'Mensaje libre' }}
Segmento {{ cpSegmentLabel(cpf) }}
Contactos {{ cpf.segment_type==='manual' ? cpf.manual_contacts.length : (cpSegPreview.count || '-') }}
Envio {{ cpf.scheduled_at ? fdt(cpf.scheduled_at) : 'Borrador' }}

{{ cpDetail && cpDetail.name }}

{{ cpDetail.total_contacts||0 }}

Total

{{ cpDetail.sent_count||0 }}

Enviados

{{ cpDetail.delivered_count||0 }}

Entregados

{{ cpDetail.failed_count||0 }}

Fallidos

Contacto Telefono Estado
{{ ((row.first_name||'')+(row.last_name?' '+row.last_name:'')).trim() || '-' }} {{ row.phone }} {{ row.status==='sent'?'Enviado':row.status==='delivered'?'Entregado':row.status==='read'?'Leido':row.status==='failed'?'Fallido':'Pendiente' }}

{{ row.error_message }}

Error desconocido

{{ cpDetailPage }} / {{ cpDetailMeta.pages }}

Plantillas

Flujos preconstruidos listos para instalar

📋

Sin plantillas

Las plantillas del sistema se cargan ejecutando el script de seed

Cargar plantillas del sistema
{{ t.name }}
{{ t.install_count || 0 }} instalaciones
Sistema Tuya

{{ t.description || 'Sin descripcion' }}

Plantillas de WhatsApp

Creá plantillas para iniciar conversaciones fuera de la ventana de 24h

📱

Sin plantillas creadas

Las plantillas permiten iniciar conversaciones cuando venció la ventana de 24h.

Creá la plantilla acá y luego registrala en Meta Business Manager para su aprobación.

{{ tpl.name }} {{ tpl.status==='LOCAL' ? 'Borrador' : tpl.status }} {{ tpl.language }} · {{ tpl.category }}

{{ tpl.body_text }}

{{ waTplFormData.id ? 'Editar plantilla' : 'Nueva plantilla' }}

Los campos marcados con * son requeridos por Meta para la aprobación.

Solo minúsculas, números y guiones bajos. Sin espacios.

La URL de imagen se especifica al enviar la plantilla
La URL del documento se especifica al enviar la plantilla
{{ (waTplFormData.body_text||'').length }}/1024

Usá {{1}}, {{2}}... para variables. *texto* para negrita, _texto_ para cursiva.

Ejemplos para las variables (requerido por Meta)

{{i+1}}

Vista previa

Así verá el destinatario el mensaje

🖼️
📄 documento.pdf

{{ waTplFormData.header_text }}

{{ waTplFormSimText || (waTplFormData.body_text ? waTplFormData.body_text : 'El cuerpo del mensaje aparecerá aquí...') }}

{{ waTplFormData.footer_text }}

{{ waTplFormSimTime }}
🔗 📞 {{ btn.text || 'Botón ' + (i+1) }}

Próximos pasos

  1. 1. Guardá la plantilla acá
  2. 2. Creala en Meta Business Manager
  3. 3. Esperá aprobación (1-2 días)
  4. 4. Usala desde el Inbox
🔧

Proximo modulo

En desarrollo.

{{ t.tp==='ok' ? '✓' : t.tp==='err' ? '✗' : 'i' }} {{ t.msg }}

🏷️ Etiquetas

Cargando...
Sin etiquetas creadas
{{ tag.name }}

Nueva etiqueta

Transferir conversación

No hay agentes disponibles
{{ ag.name ? ag.name[0].toUpperCase() : '?' }}
{{ ag.name }}
{{ ag.email }}
Actual

📋 Plantillas de WhatsApp

Plantillas aprobadas en Meta

Cargando plantillas...
{{ waTplError }}
📭

No hay plantillas aprobadas

Creá y aprobá plantillas en Meta Business Suite

{{ tpl.name }}
{{ tpl.language }} · {{ tpl.category }}
Aprobada

{{ waTplBodyText(tpl) }}

PREVIEW
{{ waTplHeaderText(waTplSelected) }}

{{ waTplPreview }}

{{ waTplFooterText(waTplSelected) }}
Completá las variables:
ESC
Sin resultados