Indice: Automazione WhatsApp con Open-WA
Come automatizzare WhatsApp con n8n e Open-WA: guida + workflow gratis
Le automazioni WhatsApp con n8n possono essere la svolta. WhatsApp e ormai uno dei canali piu diretti per parlare con clienti, lead, fornitori e team interni. Per molte aziende è il punto in cui arrivano richieste di preventivo, conferme d'ordine, domande post-vendita, appuntamenti, documenti e richieste di assistenza. Il problema nasce quando si vuole passare dalla gestione manuale alla gestione automatizzata:
- ricevere messaggi WhatsApp dentro un workflow;
- creare risposte automatiche;
- inviare notifiche da un gestionale, un CRM o WooCommerce;
- collegare WhatsApp a un agente AI;
- salvare conversazioni, lead o richieste in un database;
- creare reminder programmati.
La strada ufficiale per farlo e la WhatsApp Business Platform di Meta. E potente, stabile e pensata per ambienti professionali. Pero, per chi deve fare prototipi, test tecnici o contenuti didattici, puo risultare macchinosa: bisogna configurare app, numeri, Business Manager, webhook, permessi e in molti casi template messaggio.
Per questo tutorial abbiamo testato un approccio diverso: usare Open-WA come gateway WhatsApp locale e n8n come piattaforma di automazione. L'obiettivo non e sostituire le API ufficiali Meta in ogni scenario. L'obiettivo e capire il meccanismo, creare prototipi funzionanti e offrire una base pratica a sviluppatori e automation builder.
Automazione WhatsApp con Open-WA
Open-WA e un gateway open source per esporre funzionalita WhatsApp tramite API HTTP. In pratica permette di collegare una sessione WhatsApp tramite QR code, in modo simile a WhatsApp Web, e poi usare endpoint REST e webhook per inviare o ricevere eventi. Sul sito ufficiale Open-WA vengono mostrati:
- dashboard locale;
- API REST;
- Swagger/API docs;
- supporto multi-sessione;
- webhook UI;
- invio messaggi tramite API;
- autenticazione con API key.
Nel nostro test Open-WA e stato avviato in locale e collegato a un numero WhatsApp tramite QR code. Una volta creata la sessione, il sistema ha iniziato a ricevere messaggi e a inoltrarli verso un webhook n8n.
Cos'e n8n e perche usarlo con WhatsApp per una automazione?
n8n e una piattaforma di automazione visuale. Permette di creare workflow collegando nodi: webhook, HTTP request, database, CRM, Google Sheets, OpenAI, email, API esterne e molto altro. Per integrare WhatsApp con Open-WA, n8n e particolarmente comodo perche:
- puo ricevere webhook HTTP;
- puo chiamare API REST con il nodo HTTP Request;
- puo validare dati con nodi Code;
- puo integrare modelli AI o agenti;
- puo salvare log ed esecuzioni;
- puo essere self-hosted su un server.
La documentazione n8n conferma che il Webhook node puo avviare workflow quando riceve richieste HTTP e che l'HTTP Request node puo chiamare API REST esterne. Questo rende n8n perfetto per orchestrare il flusso WhatsApp -> Open-WA -> n8n -> Open-WA.
Architettura del test di Automazione WhatsApp
Nel nostro caso abbiamo usato questa architettura:
text
Per la demo e stato sufficiente verificare che:
- Open-WA fosse collegato a WhatsApp;
- un messaggio inviato da un altro telefono arrivasse a Open-WA;
- Open-WA inoltrasse l'evento message.received al webhook n8n;
- n8n ricevesse correttamente l'esecuzione.
Questo dimostra il punto fondamentale: WhatsApp puo diventare un trigger per un workflow n8n tramite Open-WA.
Download gratuito: 3 workflow n8n pronti
Abbiamo preparato tre workflow n8n esportabili in JSON e pronti da importare:
- Auto Reply intelligente
- Riceve un messaggio WhatsApp in ingresso, prepara una risposta dinamica e la invia tramite Open-WA.
- Notifica da evento esterno
- Riceve un webhook POST, ad esempio da WooCommerce, valida i dati e invia una notifica WhatsApp personalizzata.
- Reminder programmato
- Usa uno Schedule Trigger, genera una lista mock di utenti e invia reminder automatici, filtrando i contatti senza opt-in.
Scarica il pacchetto ZIP: Scarica openwa-n8n-workflows.zip
Nel pacchetto trovi:
- 01-auto-reply-intelligente-openwa.json;
- 02-notifica-evento-esterno-openwa.json;
- 03-reminder-programmato-openwa.json;
- README.md.
Requisiti
Per seguire il tutorial servono:
- Node.js installato sul computer;
- npm;
- Open-WA avviato in locale;
- un numero WhatsApp da collegare tramite QR code;
- n8n attivo, in locale o su server;
- un webhook n8n pubblico se n8n e in produzione;
- opzionale: Cloudflare Tunnel o ngrok se n8n deve richiamare Open-WA locale.
Nel nostro test n8n era self-hosted su server, mentre Open-WA girava in locale.
Installare Open-WA in locale
Per installare Open-WA senza Docker:
Durante il nostro test, su Mac Apple Silicon è stato importante usare una versione di Node compatibile con ARM64. Se Open-WA resta bloccato nella generazione del QR code e nel terminale appare un avviso su Node x64/Rosetta, conviene verificare l'architettura:
Su Mac Apple Silicon il risultato ideale e:
Se invece Node risulta x64, Puppeteer/Chrome puo avere problemi durante l'avvio di WhatsApp Web.
Avviare dashboard e API docs
Quando Open-WA parte correttamente, nel terminale vengono mostrati gli indirizzi locali:
La dashboard permette di gestire sessioni, webhook, API key e test messaggi.
Creare una sessione WhatsApp
Apri:
http://localhost:2886
Poi vai su:
Sessions
Crea una nuova sessione, ad esempio:
my-bot
Avvia la sessione. Open-WA generera un QR code.
Dal telefono:
WhatsApp -> Dispositivi collegati -> Collega dispositivo
Scansiona il QR code. Quando la sessione passa a:
Connected
Open-WA è collegato al numero WhatsApp.
Configurare il webhook verso n8n
Nel nostro test il workflow n8n aveva questo webhook:
text
https://nostrosito/webhook/openwa/auto-reply
In Open-WA vai su:
Webhooks
Crea un webhook:
Da questo momento, quando il numero collegato a Open-WA riceve un messaggio WhatsApp, Open-WA invia un evento HTTP al webhook n8n.
Risposta automatica WhatsApp con OpenAI e n8n
Il template base di auto reply usa una logica semplice, pensata soprattutto per far capire il meccanismo: Open-WA riceve il messaggio WhatsApp, lo inoltra al webhook n8n, n8n interpreta il testo e prepara una risposta. Questa prima versione è utile perché mostra chiaramente il flusso tecnico, ma il passaggio più interessante è trasformare quella risposta dinamica in una vera risposta intelligente generata da un modello AI.
Per farlo, nel workflow n8n puoi sostituire il nodo Prepara risposta dinamica con un nodo OpenAI, oppure inserire un nodo AI Agent prima dell’invio del messaggio tramite Open-WA. In questo modo n8n non si limita più a cercare parole chiave come “preventivo”, “prezzo” o “orari”, ma può interpretare il messaggio dell’utente, capire il contesto e generare una risposta più naturale.
La parte più importante è il prompt. Un assistente WhatsApp non dovrebbe rispondere in modo generico, ma seguire regole precise: tono di voce, informazioni aziendali, limiti, servizi offerti e casi in cui passare la conversazione a un operatore umano. Per esempio, puoi configurare un prompt di sistema di questo tipo:
Sei l'assistente WhatsApp della mi aattività. Rispondi in italiano, in modo breve, utile e professionale. Non inventare prezzi. Se l'utente chiede un preventivo, chiedi sito web, obiettivo, budget indicativo e contatto email. Se la richiesta è commerciale, proponi una consulenza. Se mancano dati, fai una domanda alla volta. Contesto: mia azienda con servizi. Orari: lunedì-venerdì 09:00-18:00. Non gestire urgenze legali, sanitarie o finanziarie.
Con questa modifica il workflow diventa molto più potente: WhatsApp resta il canale di conversazione, Open-WA gestisce il collegamento con il numero, n8n orchestra il flusso e OpenAI genera la risposta. Il percorso diventa quindi: messaggio WhatsApp in ingresso, evento ricevuto da Open-WA, webhook n8n, elaborazione con AI Agent o nodo OpenAI, chiamata HTTP verso Open-WA e risposta inviata nuovamente su WhatsApp.
Collegare n8n su server a Open-WA in locale
Un punto importante riguarda l’ambiente di esecuzione. Se n8n gira su un server, per esempio su https://n8n.tuosito.com, mentre Open-WA gira sul tuo computer locale su http://localhost:2785, il workflow n8n non può chiamare direttamente localhost:2785. Dal punto di vista del server, infatti, localhost indica il server stesso, non il computer su cui hai avviato Open-WA. Per un test completo con risposta automatica puoi esporre temporaneamente Open-WA locale tramite un tunnel, ad esempio con Cloudflare Tunnel:
Il comando genera un URL pubblico temporaneo, simile a:
A quel punto, nel workflow n8n, la configurazione di Open-WA dovrà puntare al tunnel e non più a localhost:
Se invece vuoi solo dimostrare che WhatsApp può attivare un workflow n8n, non è necessario completare anche la risposta automatica. È già sufficiente mostrare che l’evento message.received generato da Open-WA arriva correttamente nel webhook n8n e crea una nuova esecuzione.
Testare il webhook WhatsApp in n8n
Per verificare il collegamento, il test più pulito è inviare un messaggio da un secondo numero WhatsApp al numero collegato a Open-WA. Open-WA deve essere in stato Connected, il workflow n8n deve essere attivo e il webhook configurato in Open-WA deve usare l’evento message.received.
Quando il messaggio arriva, n8n crea una nuova esecuzione nella sezione Executions. Se il payload è presente, significa che il ponte WhatsApp -> Open-WA -> n8n funziona. Nel nostro test è proprio questo il risultato importante: un messaggio reale inviato da WhatsApp viene ricevuto da Open-WA e trasformato in un evento utilizzabile dentro n8n.
Da qui in poi la logica è completamente personalizzabile. Puoi decidere se rispondere automaticamente, salvare il contatto in un CRM, inviare una notifica interna, qualificare il lead con OpenAI o aprire un ticket.
Idee di automazione WhatsApp con n8n (messaggi, e-commerce, calendario)
Una volta che il messaggio WhatsApp entra in n8n, puoi costruire automazioni molto diverse. Il caso più immediato è l’auto reply per richieste di preventivo: quando un utente scrive “Ciao, vorrei un preventivo”, n8n può classificare l’intento, chiedere i dati mancanti, salvare il lead in un CRM e generare una risposta con AI.
Un altro scenario utile è la notifica ordine WooCommerce. Quando arriva un nuovo ordine, WooCommerce può inviare un webhook a n8n; il workflow valida telefono e dati dell’ordine, prepara un messaggio personalizzato e lo invia via WhatsApp tramite Open-WA. Un esempio semplice potrebbe essere: “Ciao Mario, abbiamo ricevuto il tuo ordine #1234. Stato: in lavorazione. Grazie!”
Il terzo caso è quello dei reminder programmati. Con uno Schedule Trigger puoi inviare promemoria per appuntamenti, scadenze, documenti mancanti, follow-up commerciali o attività interne. Nel template abbiamo usato una lista mock di utenti, ma nella pratica la stessa logica può essere collegata a Google Sheets, Airtable, un database, un CRM o una API interna.
Il caso più avanzato è l’assistente AI WhatsApp. Collegando OpenAI o un AI Agent n8n, puoi creare un assistente capace di rispondere alle domande frequenti, qualificare lead, proporre servizi, raccogliere dati e passare la conversazione a un operatore umano quando necessario.
Automazione WhatsApp senza spam: limiti e uso corretto
Questa soluzione va usata con attenzione. Il fatto che sia tecnicamente possibile automatizzare WhatsApp non significa che sia corretto usarlo per spam, cold outreach massivo, scraping di contatti o messaggi non richiesti. Le automazioni WhatsApp dovrebbero essere usate solo in contesti con consenso, per comunicazioni transazionali attese, test tecnici, prototipi, workflow interni o casi didattici.
Per ambienti di produzione, soprattutto con volumi importanti, campagne marketing o comunicazioni ufficiali, è importante valutare la WhatsApp Business Platform ufficiale e un setup conforme alle policy Meta. Open-WA è molto utile per capire il meccanismo e costruire prototipi, ma non deve diventare una scorciatoia per ignorare regole, consenso e limiti del canale.
Sicurezza per webhook WhatsApp, Open-WA e n8n
Quando colleghi WhatsApp a n8n, stai facendo transitare dati potenzialmente sensibili: numeri di telefono, messaggi, richieste commerciali e informazioni personali. Per questo è importante proteggere API key Open-WA, webhook n8n, tunnel temporanei, variabili ambiente e log delle esecuzioni.
In un video o in un articolo pubblico evita di mostrare API key, numeri reali o payload sensibili. In produzione, aggiungi autenticazione al webhook n8n, limita gli eventi ricevuti, registra opt-in e opt-out, conserva solo i dati necessari e usa variabili ambiente o credenziali n8n per non lasciare token direttamente nei workflow.
Problemi comuni con Open-WA e n8n
Se il QR code di Open-WA non appare, su Mac Apple Silicon conviene controllare l’architettura di Node con:
Se il risultato è x64, potresti stare usando Node sotto Rosetta. In quel caso è meglio installare o usare una versione ARM64 di Node, perché Puppeteer e Chrome possono avere problemi nella generazione della sessione WhatsApp.
Se Open-WA è connesso ma il webhook non arriva in n8n, controlla che il workflow sia attivo, che l’URL usato sia quello production e non quello di test, che l’evento sia message.received, che la sessione sia corretta e che il server n8n sia raggiungibile in HTTPS.
Se n8n riceve il webhook ma non riesce a rispondere, il problema più comune è la raggiungibilità di Open-WA. Quando Open-WA gira in locale e n8n gira su server, n8n non può chiamare localhost. In quel caso devi usare un URL pubblico temporaneo, per esempio tramite Cloudflare Tunnel:
Poi nel workflow imposti come base URL qualcosa del tipo:
Se invece il Message Tester restituisce errore 400, verifica che il numero sia in formato internazionale, senza spazi, senza prefissi locali errati, che la sessione sia Connected, che il destinatario sia diverso dal numero collegato e che nei log di Open-WA non ci siano errori più specifici.
Cosa puoi costruire dopo il primo test
Una volta verificato che un messaggio WhatsApp può attivare un workflow n8n, hai già la base per costruire automazioni molto più evolute. Open-WA collega il numero tramite QR code ed espone eventi e API, n8n orchestra il processo, mentre OpenAI o un AI Agent possono rendere la risposta davvero intelligente.
Da qui puoi sviluppare auto reply, notifiche ordine, reminder, assistenti AI, integrazioni CRM, raccolta lead, classificazione richieste e passaggio a operatore umano. Il test del webhook è solo il primo passo, ma è quello che dimostra che l’architettura funziona davvero.
Scarica i workflow pronti: Scarica openwa-n8n-workflows.zip
Fonti e riferimenti
- Open-WA official website: https://www.open-wa.org/
- Open-WA GitHub: https://github.com/rmyndharis/OpenWA
- n8n Webhook node documentation: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/
- n8n HTTP Request node documentation: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/
- Meta WhatsApp Business Platform documentation: https://developers.facebook.com/docs/whatsapp/
Domande frequenti
Posso usare Open-WA al posto delle API ufficiali WhatsApp Business?
Open-WA può essere utile per test, prototipi, demo e automazioni controllate, ma non va considerato automaticamente un sostituto delle API ufficiali WhatsApp Business. Per progetti in produzione, volumi elevati, campagne marketing o comunicazioni aziendali critiche, è consigliabile valutare la WhatsApp Business Platform ufficiale e rispettare le policy Meta.
Open-WA funziona con il mio numero WhatsApp personale?
Sì, Open-WA collega un numero WhatsApp tramite QR code, in modo simile a WhatsApp Web. Dopo aver creato una sessione, devi aprire WhatsApp sul telefono, andare su “Dispositivi collegati” e scansionare il QR generato da Open-WA. Per test e demo è meglio usare un numero dedicato, non il numero personale principale.
n8n deve essere installato sullo stesso computer di Open-WA?
No, ma dipende da cosa vuoi fare. Se n8n e Open-WA sono sulla stessa macchina, n8n può chiamare Open-WA usando localhost. Se invece n8n è su un server e Open-WA gira in locale, il server n8n non può raggiungere direttamente il tuo localhost: in quel caso serve un tunnel pubblico temporaneo, come Cloudflare Tunnel o ngrok, oppure Open-WA deve essere installato su un server raggiungibile.
Posso creare un chatbot WhatsApp con OpenAI e n8n?
Sì. Una volta che Open-WA invia i messaggi ricevuti a un webhook n8n, puoi aggiungere un nodo OpenAI o un AI Agent per generare risposte intelligenti. È importante configurare bene il prompt, aggiungere contesto aziendale e definire limiti chiari, ad esempio quando non rispondere automaticamente o quando passare la conversazione a un operatore umano.
Che differenza c’è tra il QR code WhatsApp e la API key Open-WA?
Il QR code serve a collegare il numero WhatsApp a Open-WA. È l’autenticazione della sessione WhatsApp. La API key, invece, serve a proteggere le API HTTP di Open-WA, cioè le chiamate che n8n o altri sistemi fanno verso Open-WA. Sono due cose diverse: il QR collega il numero, la API key protegge l’accesso tecnico al gateway.
Posso usare questi workflow per inviare messaggi automatici a tanti contatti?
Tecnicamente puoi costruire workflow di invio, ma devi fare molta attenzione. Non usare automazioni WhatsApp per spam, cold outreach massivo, scraping di contatti o messaggi senza consenso. I workflow dovrebbero essere usati solo per comunicazioni attese, transazionali, interne o con opt-in esplicito. Per invii marketing o volumi importanti, valuta le API ufficiali e un setup conforme alle policy.
Cosa posso automatizzare con WhatsApp, n8n e Open-WA?
Puoi creare auto reply, notifiche ordine, reminder, raccolta lead, qualificazione richieste, integrazioni CRM, salvataggio messaggi su database, notifiche interne e assistenti AI. La cosa importante è partire dal webhook message.received: quando n8n riceve il messaggio, puoi decidere qualsiasi logica successiva dentro il workflow.