8.8 KiB
Automatización Bot Prisa Yachts
Fecha: 2 julio 2026
Responsable: Álvaro
n8n: https://n8n.crewinghunters.com
¿Qué es esto?
Sistema de automatización de captación de clientes para Prisa Yachts LLC, empresa de servicios náuticos en Florida. El proyecto tiene dos pilares:
- Bot de WhatsApp — atiende consultas 24/7, clasifica el servicio solicitado y notifica al especialista correcto
- Directorio marino de Florida — base de datos de marinas, astilleros, almacenamiento y tiendas de suministros, con emails y websites, para campañas de captación
Empresa: Prisa Yachts LLC
📞 (786) 396-3315
📧 info@prisayachts.com
🌐 prisayachts.com
📸 @prisayachts
Slogan: "Safe Command ♦ Luxury Maintenance and Care"
Servicios y responsables
| # | Servicio | Especialista | |
|---|---|---|---|
| 1 | Engines & Mechanical | Álvaro | +1 (954) 655-4084 |
| 2 | Electrical & Electronics / NMEA | Álvaro | +1 (954) 655-4084 |
| 3 | Teak Deck Recovery | Federico | +1 (754) 209-3375 |
| 4 | Captaining & Crewing | Federico | +1 (754) 209-3375 |
| 5 | Yacht Care & Detailing | Federico | +1 (754) 209-3375 |
| 6 | Crew Placement & Staffing | Federico | +1 (754) 209-3375 |
| 7 | Other / Otro | Ambos | — |
Pilar 1 — Bot de WhatsApp
Arquitectura
Cliente WhatsApp
│
▼
Meta Webhook ──► n8n Webhook (POST /prisa-whatsapp)
│
▼
State Machine (Code node)
│
┌───────────┴───────────┐
▼ ▼
Is Verify? Is Send to Client?
(GET challenge) │
│ ▼
Respond 200 Enviar mensaje al cliente
│
Notify Specialist?
┌────────┴────────┐
▼ ▼
Is Both? Is Alvaro?
┌──┴──┐ ┌──┴──┐
▼ ▼ ▼ ▼
Álvaro Federico Álvaro Federico
Flujo del bot (state machine)
PASO 1 — "new" / reset words (hola, hello, hi, menu, start)
→ Enviar MENÚ PRINCIPAL (opciones 1-7)
→ Estado: waiting_category
PASO 2 — "waiting_category"
→ Cliente responde 1-7
→ Enviar formulario del servicio específico
→ Estado: collecting_info
PASO 3 — "collecting_info"
→ Cliente envía sus datos
→ Enviar CONFIRMACIÓN al cliente
→ Notificar especialista con resumen del caso
→ Estado: complete
PASO 4 — "complete"
→ Siguiente mensaje reinicia el flujo desde el menú
Estado actual del bot
| Ítem | Estado |
|---|---|
| Workflow creado en n8n | ✅ Desplegado |
| Credential WhatsApp_Prisa | ✅ Creada (placeholder) |
| Workflow activo | ✅ Activo |
| Webhook URL | https://n8n.crewinghunters.com/webhook/prisa-whatsapp |
| Token de Meta | ⏳ Pendiente aprobación Meta |
| Phone Number ID | ⏳ Pendiente aprobación Meta |
Pasos pendientes — Bot WhatsApp
- Meta aprueba la cuenta de WhatsApp Business
- Actualizar credencial
WhatsApp_Prisaen n8n:- Cambiar
PLACEHOLDER_PENDING_META_APPROVAL→Bearer <ACCESS_TOKEN>
- Cambiar
- En los 3 nodos HTTP del workflow, cambiar URL:
- Reemplazar
PLACEHOLDER_PHONE_NUMBER_ID→<YOUR_PHONE_NUMBER_ID>
- Reemplazar
- Configurar webhook en Meta Developer Portal:
- URL:
https://n8n.crewinghunters.com/webhook/prisa-whatsapp - Verify Token: (cualquier string, ej.
prisayachts2025) - Suscribir a:
messages
- URL:
- Prueba final: enviar "hola" al número del negocio desde WhatsApp
Pilar 2 — Directorio Marino de Florida
Objetivo
Construir la base de datos más completa posible de negocios náuticos en Florida para usar en campañas de captación (email + WhatsApp). Cada registro incluye:
Nombre | Dirección | Teléfono | Email | Ciudad | Condado | Website
Categorías del directorio
| Hoja | Descripción |
|---|---|
MARINAS |
Puertos deportivos y marinas |
ASTILLEROS |
Boatyards y talleres náuticos |
ALMACENAMIENTO |
Boat storage / dry stack |
SUMINISTROS |
Tiendas de suministros marinos |
Cobertura geográfica actual
El archivo principal es Directorio_Marino_FL_Acumulativo_4.xlsx.
| Sesión | Zona | Condados principales |
|---|---|---|
| 1-3 | Florida Sur | Miami-Dade, Broward, Palm Beach |
| 4 | Florida Centro | Martin, St. Lucie, Okeechobee, Sarasota, Charlotte, Lee, Collier, Monroe (Keys) |
| 5 | Florida Oeste-Centro | Pinellas, Hillsborough, Manatee, Pasco, Hernando |
| 6 (add_north_florida.js) | Florida Norte | Volusia, Flagler, Indian River, Brevard, Citrus, Levy, Dixie, Taylor, Wakulla, Franklin, Gulf, Bay, Walton, Okaloosa, Santa Rosa, Escambia, Duval, St. Johns, Nassau |
Registros Florida Norte (Sesión 6):
- Marinas: 128
- Astilleros: 24
- Almacenamiento: 16
- Suministros: 37
- Total sesión 6: 205 registros
Scraper de emails (scrape_marine_emails.js)
Automatiza la búsqueda de emails y websites para los registros que no los tienen:
Para cada negocio en el Excel:
1. Buscar en DuckDuckGo: "nombre" ciudad Florida marina contact email
2. Filtrar dominios basura (Yelp, Google, Facebook, etc.)
3. Scrapear homepage → página /contact → página /about
4. Extraer emails con regex, puntuar por relevancia
5. Guardar resultado en el Excel (checkpoint cada 25 filas)
Última ejecución del scraper:
- Procesó hoja MARINAS (174 filas)
- Guardado de emergencia a
_output.xlsx(archivo bloqueado por Excel) - Muchos registros de Miami/Broward sin email (negocios grandes, emails corporativos difíciles de scrapear)
Pasos pendientes — Directorio
- Verificar completitud del Excel actual (contar registros por zona y categoria)
- Correr scraper en
MARINAS_NORTE,ASTILLEROS_NORTE,ALMACENAMIENTO_NORTE,SUMINISTROS_NORTE - Completar emails faltantes de Florida Sur manualmente (prioridad: marinas grandes)
- Decidir si expandir a otros estados (Georgia, Carolina del Sur, Texas...)
- Consolidar todos los acumulativos en un único archivo maestro limpio
Pilar 3 — Campañas de Captación (próximo paso)
Una vez el directorio esté completo con emails, lanzar campañas automáticas:
Email marketing
- Plataforma a definir: Mailchimp / Brevo / n8n con SMTP
- Segmentación por tipo de negocio y zona geográfica
- Template con brochure de Prisa Yachts (ya existe
Prisa_Yachts_Brochure.pdf) - Medir aperturas y clicks
WhatsApp marketing (futuro)
- Usar la API aprobada de Meta para enviar mensajes masivos (templates aprobados)
- Segmentar por servicio relevante para cada tipo de marina
- Flujo: contacto frío → si responde, entra al bot automáticamente
Archivos del proyecto
| Archivo | Descripción |
|---|---|
create_whatsapp_workflow.js |
Despliega el bot en n8n (ejecutar una vez) |
scrape_marine_emails.js |
Scraper de emails del directorio |
add_north_florida.js |
Agrega datos de Florida Norte al Excel |
convert_to_pdf.js |
Genera Prisa_Yachts_Brochure.pdf desde HTML |
Directorio_Marino_FL_Acumulativo_4.xlsx |
Base de datos principal |
Directorio_Marino_FL_Acumulativo_4_output.xlsx |
Copia de emergencia del scraper |
Directorio_Marino_FL_Acumulativo_5.xlsx |
Datos adicionales (pendiente integrar) |
Prisa_Yachts_Brochure.html |
Brochure en HTML |
Prisa_Yachts_Brochure.pdf |
Brochure generado |
scrape_log.txt |
Log de la última ejecución del scraper |
Dependencias técnicas
{
"axios": "^1.18.1", // HTTP requests
"cheerio": "^1.2.0", // HTML parsing / scraping
"puppeteer": "^25.1.0", // HTML → PDF
"xlsx": "^0.18.5" // Lectura/escritura Excel
}
n8n: Self-hosted en https://n8n.crewinghunters.com
API Key n8n: En create_whatsapp_workflow.js (hardcoded — mover a variable de entorno)
Resumen de prioridades
🔴 Bloqueado (esperando tercero)
- Aprobación de Meta para WhatsApp Business API
🟡 En progreso
- Completar directorio marino (scraper + revisión manual)
- Integrar
Directorio_Marino_FL_Acumulativo_5.xlsxal archivo principal
🟢 Listo para ejecutar cuando Meta apruebe
- Actualizar credenciales en n8n y probar bot en producción
- Lanzar primera campaña de email a marinas de Florida Sur
🔵 Próximos pasos estratégicos
- Diseñar templates de WhatsApp aprobados por Meta
- Construir workflow n8n para envío masivo de emails
- Expandir directorio a otras costas (Gulf Coast, Carolinas)