# Postgres — panel del reformista (Superficie D) y persistencia del funnel B2C. # Local con Docker: docker run --name reformix-pg -e POSTGRES_PASSWORD=reformix -e POSTGRES_DB=reformix -p 5432:5432 -d postgres:17 DATABASE_URL="postgresql://postgres:reformix@localhost:5432/reformix" # Retell.ai — agente de voz saliente del funnel B2C. OPCIONALES: sin ellas la llamada no se # dispara y el pipeline sigue en modo simulado. El agente se crea a mano en el panel de Retell. RETELL_API_KEY="" RETELL_AGENT_ID="" RETELL_FROM_NUMBER="" # número de origen en E.164, p. ej. +34910000000 # EP de ingesta del lead (/api/leads/:id/ingesta). Clave compartida que valida al llamante # externo (Authorization: Bearer ...). Sin ella, el EP responde 401. FUNNEL_API_KEY="" # Email (SMTP) para enviar el presupuesto y el enlace al formulario. OPCIONALES: sin SMTP_HOST + # EMAIL_FROM el envío degrada a no-op (la entrega queda marcada como simulada). Mailhog local: # SMTP_HOST=localhost SMTP_PORT=1025 (sin user/pass). SMTP_HOST="" SMTP_PORT="587" SMTP_USER="" SMTP_PASS="" EMAIL_FROM="" # remitente, p. ej. "Reformas Ejemplo " # Webhooks salientes hacia el flujo externo (n8n/generador). OPCIONALES: sin URL la señal no se # manda. PERFIL = perfil completo (generar renders/agente); WHATSAPP = entrega del PDF; # WHATSAPP_START = arrancar la conversación de WhatsApp con el lead. PERFIL_WEBHOOK_URL="" WHATSAPP_WEBHOOK_URL="" WHATSAPP_START_WEBHOOK_URL="" # Base pública de la app, para construir enlaces absolutos (enlace al formulario en el email). APP_URL="http://localhost:3000"