Strumenti

n8n Tutorial: creare workflow senza codice

Jonas Höttler24. gennaio 20268 min
In breve

Un workflow n8n è composto da nodi: un trigger lo avvia (Webhook, pianificazione, evento in un’app), i nodi azione eseguono operazioni, i nodi logica ramificano. Per cominciare è sufficiente la versione cloud; chi vuole mantenere i dati in sede avvia n8n come container Docker e imposta WEBHOOK_URL e Basic Auth, altrimenti i webhook in ingresso non raggiungeranno l’istanza. Si va lontano anche senza codice: i valori vengono presi dal nodo precedente tramite espressioni tra doppie parentesi graffe, le ramificazioni tramite IF, grandi quantità di dati tramite Split In Batches, gli errori tramite Retry e un Error-Trigger. JavaScript è necessario solo per trasformazioni per le quali non esiste un nodo pronto.

Blocchi di metallo fresati di forma diversa affiancati in uno schizzo, solo uno si adatta
Inhaltsverzeichnis

n8n non è uno strumento per sviluppatori, anche se la documentazione può farlo sembrare. È uno strumento per la persona che in azienda scrive già le formule di Excel: il controller, l’assistente della direzione, il caporeparto con la tabella di analisi. Chi sa costruire una formula CERCA.VERT può anche costruire un workflow n8n. Il terzo esempio più avanti, il reporting settimanale, è proprio un caso del genere e fa risparmiare, a seconda dell’entità, diverse ore alla settimana.

Questo tutorial è scritto proprio per quella persona. Niente teatro di setup Docker, niente TypeScript Custom Nodes. Ma: come impostare n8n, avere il primo workflow utile in 45 minuti dal vivo, e a che punto è davvero il caso di chiamare uno sviluppatore.

Che cos’è n8n?

n8n è una piattaforma di automazione dei workflow che permette di collegare app e automatizzare processi — senza dover programmare. L’aspetto speciale:

  • Open Source: Il codice è consultabile e personalizzabile
  • Self-Hosting possibile: Controllo completo sui Suoi dati
  • Fair Code License: Gratuito per la maggior parte degli usi
  • Editor visivo: Creazione dei workflow con drag & drop
  • 400+ integrazioni: Da Google a GitHub, da Slack a Shopify

n8n vs. Zapier vs. Make

Featuren8nZapierMake
PreisKostenlos (Self-Host) / ab 20€ (Cloud)Ab 20$/MonatAb 9€/Monat
Self-HostingJaNeinNein
Open SourceJaNeinNein
Integrationen400+6.000+1.500+
Komplexe LogikSehr gutBegrenztGut
LernkurveMittelNiedrigMittel
DSGVOOptimal (Self-Host)ProblematischGut

n8n è ideale per:

  • Aziende con requisiti di protezione dei dati
  • Team con competenze tecniche
  • Workflow complessi con diramazioni
  • Automazione attenta al budget

Installare e configurare n8n

Opzione 1: n8n Cloud (Ingresso più semplice)

  1. Vada su n8n.io
  2. Faccia clic su «Start Free»
  3. Registri un account
  4. Fatto - può iniziare subito

Prezzo: 14 giorni gratuiti, poi a partire da 20€/mese

Opzione 2: Self-Hosting con Docker (Consigliato)

Prerequisiti: Docker installato

docker run -it --rm \
  --name n8n \
  -p 5678:5678 \
  -v n8n_data:/home/node/.n8n \
  docker.n8n.io/n8nio/n8n

Poi apra http://localhost:5678 nel browser.

Per la produzione con Docker Compose:

version: '3.8'
services:
  n8n:
    image: docker.n8n.io/n8nio/n8n
    restart: always
    ports:
      - "5678:5678"
    environment:
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=admin
      - N8N_BASIC_AUTH_PASSWORD=sicheres_passwort
      - WEBHOOK_URL=https://n8n.ihre-domain.de/
    volumes:
      - n8n_data:/home/node/.n8n

volumes:
  n8n_data:

Opzione 3: Installazione via npm

npm install n8n -g
n8n start

Capire l’interfaccia di n8n

L’editor dei workflow

Dopo il login vedrà l’editor dei workflow vuoto. Gli elementi principali:

  • Canvas: L’area di lavoro dove posizionare le Nodes
  • Node-Panel (destra): Tutte le integrazioni disponibili
  • Bottone Esegui (in alto): Avviare manualmente il workflow
  • Salva (in alto): Salvare il workflow
  • Attiva (in alto): Attivare il workflow per l’esecuzione automatica

Che cosa sono le Nodes?

Le Nodes sono i blocchi dei Suoi workflow. Ogni Node ha una funzione specifica:

  • Trigger-Nodes: Avviano il workflow (es. Webhook, pianificazione, ingresso e-mail)
  • Action-Nodes: Eseguono azioni (es. invio e-mail, salvataggio dati)
  • Logic-Nodes: Controllano il flusso (es. If/Else, Switch, Merge)

Il Suo primo workflow: E-mail per nuova pagina Notion

Obiettivo: Quando in Notion viene creata una nuova pagina, Lei riceve una e-mail.

Passo 1: Aggiungere il trigger

  1. Faccia clic sul + nel Canvas
  2. Cerchi «Notion»
  3. Selezioni «Notion Trigger»
  4. Configuri la connessione:
    • Faccia clic su «Create New Credential»
    • Segua le istruzioni per l’impostazione dell’API Notion
  5. Selezioni:
    • Event: Page Added to Database
    • Database: Il database desiderato

Passo 2: Aggiungere la Node e-mail

  1. Faccia clic sul + a destra della Notion-Node
  2. Cerchi «Send Email»
  3. Configuri:
    • From Email: ihre@email.de
    • To Email: ihre@email.de
    • Subject: Neue Notion-Seite: {{ $json.properties.Name.title[0].plain_text }}
    • Text: Es wurde eine neue Seite erstellt.

Passo 3: Attivare il workflow

  1. Faccia clic su Speichern
  2. Faccia clic su Attiva (Toggle in alto a destra)
  3. Il workflow ora funziona automaticamente!

Esempio di workflow 2: Notifica lead

Scenario: Nuovo form sul sito → Messaggio Slack + inserimento CRM

Le Nodes

  1. Webhook (Trigger): Riceve i dati del form
  2. HubSpot: Crea il contatto
  3. Slack: Invia messaggio nel canale del team

Passo per passo

1. Configurare il Webhook:

  • Node: «Webhook»
  • HTTP Method: POST
  • Path: lead-form
  • Copi la URL del Webhook

2. Creare contatto HubSpot:

  • Node: «HubSpot»
  • Operation: Create/Update Contact
  • Email: {{ $json.body.email }}
  • First Name: {{ $json.body.firstname }}
  • Last Name: {{ $json.body.lastname }}

3. Inviare messaggio Slack:

  • Node: «Slack»
  • Channel: #sales
  • Text:
Neuer Lead!
Name: {{ $json.body.firstname }} {{ $json.body.lastname }}
E-Mail: {{ $json.body.email }}

4. Inserire la Webhook-URL nel form: Aggiunga la URL del Webhook come Action-URL nel Suo modulo di contatto.

Esempio di workflow 3: Reporting automatico

Scenario: Ogni lunedì alle 9 → Prelevare dati da Google Sheets → Inviare via e-mail

Le Nodes

  1. Schedule Trigger: Lunedì 9:00
  2. Google Sheets: Leggere i dati
  3. Function: Formattare i dati
  4. Send Email: Inviare il report

Configurazione

1. Schedule Trigger:

  • Trigger Times: Add Cron Time
  • Mode: Every Week
  • Day of Week: Monday
  • Hour: 9
  • Minute: 0

2. Google Sheets:

  • Operation: Read Rows
  • Spreadsheet: La Sua tabella
  • Range: A:E (o le Sue colonne)

3. Function (JavaScript):

// Daten als Tabelle formatieren
const rows = items.map(item => item.json);
let table = "| Name | Umsatz | Status |\n|---|---|---|\n";

rows.forEach(row => {
  table += `| ${row.Name} | ${row.Umsatz}€ | ${row.Status} |\n`;
});

return [{ json: { report: table } }];

4. Send Email:

  • Subject: Wöchentlicher Report - {{ $now.format('DD.MM.YYYY') }}
  • HTML: {{ $json.report }}

Concetti importanti di n8n

Expressions (Espressioni)

Le espressioni permettono valori dinamici. Sintassi: {{ }}

Esempi:

  • {{ $json.email }} - Valore dalla node precedente
  • {{ $now }} - Data/ora corrente
  • {{ $json.name.toUpperCase() }} - Usare funzioni JavaScript
  • {{ $node["Google Sheets"].json.data }} - Dati da una node specifica

Diramazioni con IF

La IF-Node permette logica condizionale:

  1. Aggiunga una IF-Node
  2. Condizione: per esempio {{ $json.status }} equals "urgent"
  3. True-Path: Un’azione
  4. False-Path: Un’altra azione

Cicli con Split In Batches

Per grandi quantità di dati:

  1. Aggiunga la Node «Split In Batches»
  2. Imposti la Batch Size (es. 10)
  3. Il loop continua finché tutto è processato

Gestione degli errori

Error Trigger: Avvia un workflow quando un altro fallisce

Retry on Fail: Attivare per singole Nodes

  • Aprire le impostazioni della Node
  • "On Error" → "Continue" oppure "Retry"

Tecniche avanzate

Webhook per eventi esterni

I Webhook sono URL che servizi esterni possono chiamare.

Creare un Webhook:

  1. Webhook-Node come trigger
  2. Scegliere HTTP Method (GET, POST, etc.)
  3. Definire il Path (es. /customer-update)
  4. Copiare la URL e inserirla nel servizio esterno

Testare il Webhook:

  • Nel browser: chiamare GET-Webhooks direttamente
  • Con Postman: testare POST-Webhooks
  • In n8n: usare «Listen for test event»

HTTP Request per API senza integrazione

Per servizi senza integrazione nativa in n8n:

  1. Aggiunga la Node «HTTP Request»
  2. Configuri:
    • Method: GET, POST, PUT, DELETE
    • URL: Endpoint API
    • Authentication: API Key, OAuth, etc.
    • Body: Dati JSON

Esempio: chiamare un’API sconosciuta

{
  "method": "POST",
  "url": "https://api.example.com/data",
  "headers": {
    "Authorization": "Bearer YOUR_API_KEY"
  },
  "body": {
    "name": "{{ $json.name }}",
    "email": "{{ $json.email }}"
  }
}

Code-Node per logica complessa

Quando le node visive non bastano, usi JavaScript:

// Alle Items verarbeiten
const results = [];

for (const item of items) {
  const data = item.json;

  // Berechnungen
  const total = data.price * data.quantity;
  const tax = total * 0.19;

  results.push({
    json: {
      ...data,
      total,
      tax,
      gross: total + tax
    }
  });
}

return results;

Best Practices per n8n

1. Tenere i workflow modulari

  • Un workflow = un compito
  • Suddividere processi complessi in più workflow
  • Collegare workflow tramite Webhook

2. Inserire gestione degli errori

  • Error Trigger per workflow critici
  • Notifiche in caso di errori (Slack, e-mail)
  • Logica di retry per API instabili

3. Gestire in modo sicuro le credenziali

  • Mai mettere API Key direttamente nel workflow
  • Usare le Credentials di n8n
  • In caso di self-hosting: variabili d’ambiente

4. Testare prima di attivare

  • Usare «Execute Workflow» per i test
  • Lavorare con dati di prova
  • Controllare gli output di ogni Node

5. Documentare

  • Nomi dei workflow descrittivi
  • Usare Sticky Notes per spiegazioni
  • Commentare le espressioni complesse

Problemi comuni e soluzioni

Problema: Webhook non raggiunge n8n

Cause:

  • n8n non è pubblicamente raggiungibile
  • Firewall blocca
  • Manca HTTPS

Soluzioni:

  • Usare un servizio di tunneling (ngrok) per i test
  • Configurare un reverse proxy (nginx, Traefik)
  • Impostare la variabile d’ambiente WEBHOOK_URL

Problema: Limite API raggiunto

Soluzione:

  • Usare Split In Batches
  • Inserire una Wait-Node tra le richieste
  • Gestire rate limiting nella HTTP Request Node

Problema: I dati hanno formato sbagliato

Soluzione:

  • Usare Set-Node per ristrutturare
  • Function-Node per trasformazioni complesse
  • Date & Time-Node per formati di data

n8n per i team

Collaborare (n8n Cloud)

  • Più utenti per workspace
  • Condivisione dei workflow
  • Execution History visibile a tutti

Self-Hosted per team

  • PostgreSQL invece di SQLite per stabilità
  • Queue Mode per carichi elevati
  • Più worker per scalare

Conclusione

n8n è uno strumento potente per l’automazione dei workflow — particolarmente utile se la protezione dei dati è importante o se serve massima flessibilità. La curva di apprendimento è un po’ più ripida rispetto a Zapier, ma le possibilità sono decisamente maggiori.

I Suoi prossimi passi:

  1. Installare n8n Cloud o localmente
  2. Costruire il primo workflow semplice (es. RSS → E-mail)
  3. Creare progressivamente flussi più complessi
  4. In caso di self-hosting: predisporre l’ambiente di produzione

Risorse aggiuntive:

Vuole introdurre n8n nella Sua azienda? Noi aiutiamo con setup, sviluppo dei workflow e hosting — così Lei può concentrarsi sui Suoi processi.

Consiglio pratico: Il nostro gratuito Automatisierungs-Check mostra in pochi minuti se un processo è adatto all’automazione, con stima ROI e raccomandazione degli strumenti.

Se vuole sapere quanto costa il Suo processo: lo misuri.

Inizi con la diagnosi gratuita o scarichi FlowVisual. Se poi vuole parlare con qualcuno, siamo raggiungibili.