Construir y probar tu sistema
Implementa tu automatización paso a paso y pruébala en producción.
Introducción: De Diseño a Realidad
Tienes el diseño. Tienes las herramientas. Ahora es momento de construir.
La diferencia entre una automatización amateur y una profesional:
AMATEUR:
- "Funcionó una vez, ya está"
- Sin manejo de errores
- Se rompe con datos inesperados
- Nadie sabe cuando falla
PROFESIONAL:
- Testeado exhaustivamente
- Maneja casos edge
- Alerta cuando hay problemas
- Documentado y mantenible
Este capítulo te llevará de amateur a profesional.
Fase 1: Construcción
Paso 1: Preparar el Entorno
Antes de crear el primer Zap:
CHECKLIST DE PREPARACIÓN:
[ ] Todas las apps conectadas a Zapier
- HubSpot ✓
- Gmail ✓
- Slack ✓
- etc.
[ ] Permisos correctos en cada app
- Admin o permisos necesarios
- API keys si aplica
- OAuth completado
[ ] Datos de prueba listos
- Email de prueba (no producción)
- Contacto de prueba en CRM
- Canal de Slack de prueba
[ ] Ambiente de prueba separado
- No usar datos reales inicialmente
- Etiquetar como [TEST] todo
Paso 2: Crear el Zap Paso a Paso
Regla de oro: Un paso a la vez, probando cada uno.
Ejemplo: Automatización de Seguimiento de Leads
=== PASO 1: TRIGGER ===
App: HubSpot
Trigger: New Contact
Test: Crear contacto manualmente en HubSpot
Verificar:
[ ] Zapier detecta el nuevo contacto
[ ] Todos los campos necesarios están disponibles
- email ✓
- firstname ✓
- lastname ✓
- company ✓
Problemas comunes:
- "No encuentro nuevos contactos" → Verificar conexión
- "Faltan campos" → Verificar propiedades en HubSpot
=== PASO 2: ENRIQUECIMIENTO ===
App: Clearbit (o similar)
Action: Enrich Person
Input: {{email}} del paso anterior
Configuración:
- Email: {{1. Email}}
Test: Probar con email conocido (linkedin, empresa grande)
Verificar:
[ ] Retorna datos de la persona
[ ] Retorna datos de la empresa
[ ] Maneja emails sin datos gracefully
Problemas comunes:
- "No encuentra la persona" → Normal para emails personales
- "Error de API" → Verificar API key y límites
=== PASO 3: IA PARA PERSONALIZACIÓN ===
App: ChatGPT
Action: Conversation
Prompt:
"""
Escribe un email corto de bienvenida para:
- Nombre: {{firstname}}
- Empresa: {{company}}
- Industria: {{industry}}
- Tamaño: {{company_size}}
El email debe:
- Ser de 3-4 oraciones
- Mencionar algo relevante de su industria
- Invitar a una llamada de 15 minutos
- Tono profesional pero amigable
Solo devuelve el cuerpo del email, sin subject.
"""
Test: Probar con datos de ejemplo
Verificar:
[ ] Email generado es coherente
[ ] Personalización es correcta
[ ] Longitud apropiada
[ ] Tono correcto
=== PASO 4: ENVIAR EMAIL ===
App: Gmail
Action: Send Email
To: {{email}}
Subject: {{firstname}}, una idea para {{company}}
Body: {{chatgpt_response}}
From Name: [Tu nombre]
Test: Enviarte un email a ti mismo primero
Verificar:
[ ] Email llega correctamente
[ ] Formato se ve bien
[ ] Links funcionan (si hay)
[ ] No va a spam
=== PASO 5: CREAR TAREA ===
App: HubSpot
Action: Create Task
Associated Contact: {{contact_id}}
Title: Llamar a {{firstname}} - seguimiento
Due Date: {{zap_meta_human_now_plus_2_days}}
Notes: Email automático enviado. Revisar respuesta.
Test: Verificar que tarea aparece en HubSpot
Verificar:
[ ] Tarea creada correctamente
[ ] Asociada al contacto correcto
[ ] Fecha correcta
[ ] Aparece en tu task list
=== PASO 6: NOTIFICACIÓN ===
App: Slack
Action: Send Channel Message
Channel: #ventas-leads
Message:
"""
:rocket: *Nuevo lead procesado automáticamente*
*Nombre:* {{firstname}} {{lastname}}
*Empresa:* {{company}}
*Email enviado:* Sí
*Tarea creada:* Llamar en 2 días
<{{hubspot_contact_url}}|Ver en HubSpot>
"""
Test: Verificar mensaje en canal
Verificar:
[ ] Mensaje llega al canal correcto
[ ] Formato se ve bien
[ ] Link funciona
Paso 3: Conectar Todo el Flujo
Una vez que cada paso funciona individualmente:
1. Activar Zap en modo "Draft/Test"
2. Crear un contacto de prueba COMPLETO en HubSpot
3. Verificar que TODO el flujo se ejecuta:
[ ] Trigger detecta contacto
[ ] Clearbit enriquece
[ ] ChatGPT genera email
[ ] Gmail envía
[ ] HubSpot crea tarea
[ ] Slack notifica
4. Revisar Zap History para cada paso
5. Verificar outputs en cada sistema destino
Fase 2: Testing Exhaustivo
Tipos de Tests
1. Happy Path (Caso ideal)
- Datos completos y correctos
- Todo funciona como se espera
- El flujo termina exitosamente
2. Edge Cases (Casos límite)
- Datos incompletos
- Formatos inesperados
- Valores extremos
3. Error Cases (Casos de error)
- APIs que fallan
- Datos inválidos
- Timeouts
Test Matrix
| Escenario | Input | Expected | Actual | Pass? |
|-----------|-------|----------|--------|-------|
| Lead completo | Todos los campos | Flujo completo | | |
| Sin empresa | Email solo | Usar "No disponible" | | |
| Email inválido | "test" | Error controlado | | |
| Empresa no encontrada | Email personal | Skip enrichment | | |
| ChatGPT timeout | N/A | Retry o fallback | | |
| Gmail falla | N/A | Alerta a admin | | |
| Duplicado | Mismo email 2x | No duplicar | | |
Testing de Edge Cases
Caso: Lead sin nombre de empresa
Input:
- email: test@gmail.com
- firstname: Juan
- lastname: Pérez
- company: (vacío)
Esperado:
- Clearbit intenta enriquecer
- Si no encuentra, company = "No especificada"
- Email usa mensaje genérico
- Flujo continúa
Implementación:
Paso extra: Formatter
Action: Text > Default Value
Input: {{company}}
Default: "tu empresa"
Output: company_safe
Ahora en ChatGPT prompt:
"Empresa: {{company_safe}}"
Caso: Email corporativo vs personal
Lógica:
- Email corporativo (@empresa.com) → Prioridad alta
- Email personal (@gmail.com) → Prioridad normal
Implementación:
Paso: Filter by Zapier
Condition: {{email}} Does not contain "@gmail.com"
AND Does not contain "@hotmail.com"
AND Does not contain "@yahoo.com"
Path A (corporativo): Flujo completo + notificación urgente
Path B (personal): Flujo básico, sin alerta
Caso: Lead duplicado
Problema: Mismo lead entra 2 veces
Implementación:
Paso 1: Google Sheets - Lookup Row
Spreadsheet: Leads_Procesados
Column: Email
Value: {{email}}
Paso 2: Filter
Only continue if: {{lookup_result}} Does not exist
Paso 3: Google Sheets - Create Row
(Registrar que ya se procesó)
Paso 4+: Resto del flujo
Testing de Volumen
Antes de producción, prueba con volumen realista:
Escenario: 50 leads en 1 hora (pico esperado)
1. Crear script para generar 50 contactos de prueba
2. Ejecutar en 1 hora
3. Verificar:
[ ] Todos los Zaps se ejecutaron
[ ] No hubo throttling
[ ] Tiempos de respuesta aceptables
[ ] No se duplicaron acciones
[ ] Sistemas destino no se saturaron
Fase 3: Manejo de Errores
Tipos de Errores
1. ERRORES DE APP
- API down
- Rate limits
- Autenticación expirada
2. ERRORES DE DATOS
- Campos vacíos
- Formatos inválidos
- Valores fuera de rango
3. ERRORES DE LÓGICA
- Condiciones no manejadas
- Loops infinitos
- Dependencias circulares
Estrategias de Manejo
Estrategia 1: Validación Temprana
Antes de procesar, validar datos críticos:
Paso 1: Filter - Validar email
Condition: {{email}} (Text) Contains "@"
AND {{email}} (Text) Contains "."
Si no pasa: El Zap se detiene (no gasta tasks)
Estrategia 2: Valores por Defecto
Para campos opcionales, usar defaults:
Paso: Formatter - Default Value
Input: {{phone}}
Default: "No proporcionado"
Ahora {{phone_safe}} nunca está vacío
Estrategia 3: Paths para Diferentes Casos
Paths by Zapier:
Path A: Datos completos
Condition: {{email}} exists AND {{company}} exists
→ Flujo completo con personalización
Path B: Datos parciales
Condition: {{email}} exists AND {{company}} not exists
→ Flujo simplificado, email genérico
Path C: Datos inválidos
Condition: (default)
→ Log error, notificar admin, no enviar nada
Estrategia 4: Error Handling Nativo
En configuración de cada paso:
"If this step errors..."
→ Continue anyway (solo si no es crítico)
→ Stop and notify (si es crítico)
→ Retry (para errores transitorios)
Configurar alertas:
→ Email cuando hay error
→ Slack para errores críticos
Implementar Logging
Crear hoja de log para auditar:
Spreadsheet: Automation_Log
Worksheet: Zap_Executions
Columnas:
- Timestamp
- Zap_Name
- Trigger_ID (ej: email del lead)
- Status (Success/Error/Skipped)
- Steps_Completed
- Error_Message (si aplica)
- Duration_Seconds
Último paso de cada Zap:
App: Google Sheets
Action: Create Row
→ Registrar ejecución
Esto permite:
- Ver histórico de ejecuciones
- Detectar patrones de errores
- Calcular métricas de éxito
Alertas Inteligentes
No todo error merece una alerta:
ALERTA INMEDIATA (Slack DM + Email):
- Zap completamente fallido
- Error en paso crítico (ej: email no enviado)
- Tasa de error >10% en 1 hora
ALERTA DIARIA (Resumen):
- Errores no críticos
- Steps skipped por datos faltantes
- Rate limits alcanzados
SIN ALERTA (Solo log):
- Lead duplicado (esperado)
- Datos opcionales faltantes
- Filtros que excluyen leads
Fase 4: Preparar para Producción
Checklist Pre-Lanzamiento
=== CONFIGURACIÓN ===
[ ] Zap nombrado claramente
Ej: "[PROD] Lead Follow-up - New HubSpot Contact"
[ ] Descripción agregada
Qué hace, quién lo mantiene, fecha de creación
[ ] Folder organizado
Todos los Zaps de este proceso juntos
[ ] Conexiones verificadas
Todas las apps con cuentas de producción (no personales)
=== TESTING ===
[ ] Happy path testeado 5+ veces
[ ] Edge cases documentados y manejados
[ ] Error handling configurado
[ ] Volumen esperado probado
=== MONITOREO ===
[ ] Alertas de error configuradas
[ ] Log de ejecuciones activo
[ ] Dashboard de métricas (opcional)
=== DOCUMENTACIÓN ===
[ ] Flujo documentado (diagrama)
[ ] Owners y responsables definidos
[ ] Proceso de escalación claro
[ ] FAQ para issues comunes
=== BACKUP ===
[ ] Proceso manual documentado (por si falla)
[ ] Contacto de soporte de Zapier
[ ] Plan de rollback definido
Lanzamiento Gradual
No activar al 100% de golpe:
DÍA 1-2: Soft Launch
- Activar Zap
- Monitorear cada ejecución manualmente
- Verificar outputs en todos los sistemas
- Corregir issues inmediatamente
DÍA 3-5: Expansión
- Dejar de monitorear cada ejecución
- Revisar logs 2x al día
- Confiar en alertas automáticas
- Ajustar thresholds si es necesario
DÍA 6-7: Producción Completa
- Monitoreo semanal
- Solo atender alertas
- Documentar cualquier issue para mejorar
SEMANA 2+: Mantenimiento
- Revisión mensual del Zap
- Actualizar si cambian procesos
- Optimizar basado en métricas
Monitoreo Post-Lanzamiento
Métricas a trackear:
DIARIO:
- Zaps ejecutados (total)
- Tasa de éxito (% sin errores)
- Errores por tipo
SEMANAL:
- Tiempo promedio de ejecución
- Tendencias de volumen
- Top errores
MENSUAL:
- Costo de Zapier (tasks usadas)
- ROI (tiempo ahorrado vs costo)
- Mejoras a implementar
Dashboard simple en Google Sheets:
=== AUTOMATION DASHBOARD ===
Fecha: [Auto-update]
ÚLTIMAS 24 HORAS:
- Ejecuciones: =COUNTIFS(Log!A:A,">=TODAY()-1")
- Exitosas: =COUNTIFS(Log!A:A,">=TODAY()-1",Log!D:D,"Success")
- Errores: =COUNTIFS(Log!A:A,">=TODAY()-1",Log!D:D,"Error")
- Tasa éxito: =Exitosas/Ejecuciones*100 %
ESTA SEMANA:
[Misma lógica con rango de 7 días]
GRÁFICO:
[Línea de ejecuciones diarias]
[Barras de errores por tipo]
Troubleshooting Común
"El Zap no se dispara"
VERIFICAR:
1. Zap está ON (no paused)
2. Trigger configurado correctamente
3. Evento realmente ocurrió en la app fuente
4. Polling interval (15 min para algunos triggers)
5. Conexión de la app activa
SOLUCIÓN COMÚN:
- Desconectar y reconectar la app
- Re-seleccionar el trigger
- Verificar permisos de la cuenta
"Error en paso específico"
VERIFICAR:
1. Ir a Zap History > ver ejecución fallida
2. Expandir el paso con error
3. Leer mensaje de error completo
4. Verificar inputs que se enviaron
ERRORES COMUNES:
- "Field required" → Campo vacío, agregar default
- "Invalid format" → Usar Formatter para convertir
- "Rate limited" → Agregar Delay entre pasos
- "Not found" → ID incorrecto, verificar mapping
"Datos incorrectos en destino"
VERIFICAR:
1. Mapeo de campos correcto?
2. Formato esperado vs enviado?
3. Orden de steps correcto?
4. Hay transformaciones faltantes?
SOLUCIÓN:
- Agregar Formatter para transformar
- Verificar paso a paso en Zap History
- Probar con datos conocidos
"Duplicados"
CAUSA:
- Zap corre múltiples veces para mismo evento
- No hay deduplicación
SOLUCIÓN:
1. Agregar lookup antes de crear
2. Usar identificador único
3. Configurar "Dedup" en trigger si disponible
Resumen de la Lección
Has aprendido a:
- Construir paso a paso - Un step a la vez, probando cada uno
- Testear exhaustivamente - Happy path, edge cases, volumen
- Manejar errores - Validación, defaults, paths, alertas
- Preparar para producción - Checklist, lanzamiento gradual
- Monitorear y mantener - Logs, métricas, troubleshooting
Siguiente Paso
Tu automatización está construida y probada. En la última lección, aprenderás a:
- Documentar tu proyecto profesionalmente
- Calcular el ROI real
- Presentar a stakeholders
- Crear un plan de mantenimiento
- Y celebrar tu logro
Antes de continuar:
- Completa la construcción de tu Zap
- Ejecuta al menos 10 pruebas exitosas
- Documenta cualquier issue encontrado
- Ten el Zap listo para activar
Construir es fácil. Construir algo que no falle a las 3am un domingo es el verdadero arte. Ahora tienes las herramientas para hacerlo.
¿Completaste esta lección?
Marca esta lección como completada. Tu progreso se guardará en tu navegador.