Skip to content
Back to Blog

Agente AI di WhatsApp per il Servizio Clienti Modello di Flusso di Lavoro N8n Incluso

L'automazione di WhatsApp è diventata uno strumento fondamentale per le aziende che vogliono migliorare le interazioni con i clienti, semplificare la gestione degli appuntamenti e ridurre il lavoro manuale. Oggi analizziamo un workflow semplice ed efficace che utilizza n8n e WhatsApp Business e trasforma il modo in cui PMI e agenzie gestiscono le comunicazioni con i clienti.

Perché è essenziale automatizzare le interazioni su WhatsApp

Le aspettative dei clienti sono più alte che mai. Risposte immediate, interazioni personalizzate e una gestione fluida degli appuntamenti sono diventate la norma e non più l'eccezione. Fortunatamente, l'automazione offre una soluzione efficace:

  • Risposte istantanee assicurano che i tuoi clienti si sentano apprezzati.
  • Riduzione delle attività manuali libera tempo al tuo team.
  • Gestione efficiente dei dati consente migliori insight sui clienti.

Con il bot WhatsApp Business che usa n8n, puoi ottenere tutto questo senza intoppi.

👉 Inizia la prova gratuita di 7 giorni su Wassenger e sfrutta i nostri potenti flussi di automazione WhatsApp per trasformare il tuo servizio clienti oggi! ⚡

Come funziona l'automazione del bot WhatsApp

Questo workflow mette insieme Google Forms, WhatsApp e Google Sheets per semplificare l'interazione con i clienti e la gestione dei dati:

👉 Inizia la prova gratuita di 7 giorni su Wassenger e sfrutta i nostri potenti flussi di automazione WhatsApp per trasformare il tuo servizio clienti oggi! ⚡

Passo 1: Interazione del cliente tramite Google Forms

I clienti compilano un Google Form per richiedere informazioni, prenotare appuntamenti o inviare richieste. Alla presentazione del modulo ricevono automaticamente una notifica via WhatsApp.

Esempio: Immagina una clinica dentistica dove i pazienti prenotano i loro appuntamenti tramite un semplice Google Form. Una volta inviato il modulo, ricevono immediatamente un messaggio di conferma appuntamento direttamente su WhatsApp.

Passo 2: Cattura dei messaggi degli utenti

Quando un cliente invia un messaggio al tuo Wassemger Business bot, il suo messaggio e i dettagli di contatto vengono automaticamente inseriti in un Google Sheet. Questo centralizza i dati dei clienti, rendendoli accessibili e gestibili per tutto il tuo team.

Scenario: Se un cliente chiede di riprogrammare tramite WhatsApp, il suo messaggio viene registrato direttamente in Google Sheets, assicurando che nulla venga trascurato.

Passo 3: Gestione semplice delle risposte

Rispondere ai clienti è facile come aggiornare il tuo Google Sheet. Compila la colonna ReplyText, cambia lo stato inReady, e il bot penserà al resto. In pochi secondi, n8n rileverà questi messaggi e li invierà via WhatsApp.

Vantaggio reale: Supponiamo che un membro del tuo team voglia seguire rapidamente più richieste dei clienti. Aggiorna ogni risposta nel foglio, e in pochi istanti risposte personalizzate raggiungeranno ogni cliente tramite WhatsApp.

👉 Registrati su Wassenger con una prova gratuita di 7 giorni per impostare facilmente la tua casella di supporto clienti WhatsApp e automatizzare le tue interazioni oggi! 🚀

Personalizzare il workflow per le tue esigenze

La bellezza di questo workflow n8n è la sua flessibilità. Puoi:

  • Collegare strumenti aggiuntivi come sistemi CRM per dati clienti più ricchi.
  • Integrare calendari per la programmazione automatica degli appuntamenti.
  • Arricchire le notifiche con template dinamici per personalizzare l'esperienza cliente.

Copia e usa subito questo workflow!

{
  "name": "Customer Support WhatsApp Bot with Google Docs Knowledge Base and Gemini AI",
  "nodes": [
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "loose",
            "version": 1
          },
          "conditions": [
            {
              "id": "8a765e57-8e39-4547-a99a-0458df2b75f4",
              "operator": {
                "type": "object",
                "operation": "exists",
                "singleValue": true
              },
              "leftValue": "={{ $('Wassenger Trigger').item.json }}",
              "rightValue": ""
            }
          ],
          "combinator": "and"
        },
        "options": {
          "looseTypeValidation": true
        }
      },
      "id": "3237130a-f8dd-4e66-b2bb-f29cbe963427",
      "name": "Is message?",
      "type": "n8n-nodes-base.if",
      "position": [240, 600],
      "typeVersion": 2
    },
    {
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "minutes"
            }
          ]
        }
      },
      "id": "1d2ce3be-f107-4949-8753-16ea3a97b7b1",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [0, 1020],
      "typeVersion": 1.2
    },
    {
      "parameters": {
        "options": {}
      },
      "id": "4f5189fd-a36a-468a-ab7f-512262e192e6",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [440, 1020],
      "typeVersion": 3
    },
    {
      "parameters": {
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1T-B0yepcrCHxQpn7Sj6QjTa0VqwwVBQhO5ZcIUSxWJE",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1T-B0yepcrCHxQpn7Sj6QjTa0VqwwVBQhO5ZcIUSxWJE/edit?usp=drivesdk",
          "cachedResultName": "WhatsApp Appointments(Responses)"
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1621824221,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1T-B0yepcrCHxQpn7Sj6QjTa0VqwwVBQhO5ZcIUSxWJE/edit#gid=1621824221",
          "cachedResultName": "WA-messages"
        },
        "filtersUI": {
          "values": [
            {
              "lookupColumn": "Status",
              "lookupValue": "Ready"
            }
          ]
        },
        "options": {}
      },
      "id": "164042e8-4b56-4432-9b46-dfdf4c93116a",
      "name": "Get new answers",
      "type": "n8n-nodes-base.googleSheets",
      "position": [220, 1020],
      "typeVersion": 4.4,
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "ckNCFcoJBFt2fiDJ",
          "name": "Google Sheets account 8"
        }
      }
    },
    {
      "parameters": {
        "operation": "update",
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1T-B0yepcrCHxQpn7Sj6QjTa0VqwwVBQhO5ZcIUSxWJE",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1T-B0yepcrCHxQpn7Sj6QjTa0VqwwVBQhO5ZcIUSxWJE/edit?usp=drivesdk",
          "cachedResultName": "WhatsApp Appointments(Responses)"
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 1621824221,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1T-B0yepcrCHxQpn7Sj6QjTa0VqwwVBQhO5ZcIUSxWJE/edit#gid=1621824221",
          "cachedResultName": "WA-messages"
        },
        "columns": {
          "value": {
            "Status": "Replied",
            "row_number": "={{ $('Loop Over Items').item.json.row_number }}"
          },
          "schema": [
            {
              "id": "UserPhone",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "UserPhone",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "UserName",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "UserName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "UserMessage",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "UserMessage",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "ReplyText",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "ReplyText",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": ["row_number"]
        },
        "options": {}
      },
      "id": "d31cdbd1-1384-4608-9822-64b643508689",
      "name": "Update message status",
      "type": "n8n-nodes-base.googleSheets",
      "position": [840, 1020],
      "typeVersion": 4.4,
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "ckNCFcoJBFt2fiDJ",
          "name": "Google Sheets account 8"
        }
      }
    },
    {
      "parameters": {
        "amount": 1
      },
      "id": "c712f711-bc98-412f-940d-69af277c9126",
      "name": "Wait 1 sec",
      "type": "n8n-nodes-base.wait",
      "position": [1020, 1020],
      "webhookId": "df4df4f8-378c-4228-b1e2-326b9d956e7e",
      "typeVersion": 1.1
    },
    {
      "parameters": {
        "operation": "append",
        "documentId": {
          "__rl": true,
          "value": "1D5sI-FJNl6zH9P6DPkyD7-kifKX-TJnChdhsfLji50U",
          "mode": "list",
          "cachedResultName": "Chat logs",
          "cachedResultUrl": "google_drive_url"
        },
        "sheetName": {
          "__rl": true,
          "value": "gid=0",
          "mode": "list",
          "cachedResultName": "Sheet1",
          "cachedResultUrl": "google_drive_url"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "TIMESTAMP": "={{ $json.data.timestamp }}",
            "USER": "={{ $json.data.toNumber }}",
            "MESSAGE": "={{ $json.data.body }}"
          },
          "matchingColumns": [],
          "schema": [
            {
              "id": "TIMESTAMP",
              "displayName": "TIMESTAMP",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "USER",
              "displayName": "USER",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "MESSAGE",
              "displayName": "MESSAGE",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "RESPONSE",
              "displayName": "RESPONSE",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": true
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {}
      },
      "id": "76e576d5-2bad-4588-a044-4091db02b3f7",
      "name": "New message from the user",
      "type": "n8n-nodes-base.googleSheets",
      "position": [500, 600],
      "typeVersion": 4.4,
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "ckNCFcoJBFt2fiDJ",
          "name": "Google Sheets account 8"
        }
      }
    },
    {
      "parameters": {
        "pollTimes": {
          "item": [
            {
              "mode": "everyX",
              "value": 5,
              "unit": "minutes"
            }
          ]
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1T-B0yepcrCHxQpn7Sj6QjTa0VqwwVBQhO5ZcIUSxWJE",
          "cachedResultUrl": "google_drive_url",
          "cachedResultName": "WhatsApp Appointments(Responses)"
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 470797219,
          "cachedResultUrl": "",
          "cachedResultName": "Form Responses 1"
        },
        "event": "rowAdded",
        "options": {}
      },
      "id": "906a1913-5356-4cb1-936b-489afcb58153",
      "name": "Get new entries",
      "type": "n8n-nodes-base.googleSheetsTrigger",
      "position": [20, 160],
      "typeVersion": 1,
      "credentials": {
        "googleSheetsTriggerOAuth2Api": {
          "id": "3JS9kFioVK3IrITX",
          "name": "Google Sheets Trigger account 2"
        }
      }
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "b9bfdb33-0d9c-4320-b4bc-0bf0a469c8ca",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json[\"I consent to receive WhatsApp notifications regarding my appointments\"] }}",
              "rightValue": "Yes"
            }
          ]
        },
        "options": {}
      },
      "id": "88ac4ee1-d83e-46f6-9241-1ad92458c527",
      "name": "User consented for WA messages?",
      "type": "n8n-nodes-base.filter",
      "position": [240, 160],
      "typeVersion": 2
    },
    {
      "parameters": {
        "content": "## Send a WhatsApp(WA) template message\nOccurs after a user submits a new Google form.If the user opted-in for WA notifications during the form submission, a template message will be sent via WhatsApp.\n\n**IMPORTANT!**\n1.You will need to create a new [wassenger account](https://wassenger.com/register)\n2.Once connected to Wassenger your WhatsApp number will be ready to use:)",
        "height": 405,
        "width": 745
      },
      "id": "3f31fb13-7238-4fb3-a2ff-421b8b0f2408",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [-20, -80],
      "typeVersion": 1
    },
    {
      "parameters": {
        "content": "## Store incoming WhatsApp user messages in a Google Sheet\nTo receive user messages, you need to add a Wassenger Trigger node\n\nOnce the trigger receives a payload from your customer, we check if the incoming data contains a message and add a new row with user data and message text in [Google Sheet](https://docs.google.com/spreadsheets/d/1T-B0yepcrCHxQpn7Sj6QjTa0VqwwVBQhO5ZcIUSxWJE/edit?gid=1621824221#gid=1621824221).\n\nWassenger trigger also receives status notifications(i.e.message sent, message read etc.), so we ignore such notifications in this workflow.",
        "height": 458,
        "width": 752
      },
      "id": "b4827163-9ea5-4857-b367-ac8dd02148c8",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [-20, 340],
      "typeVersion": 1
    },
    {
      "parameters": {
        "content": "## Reply to the user via WhatsApp\nWhatsApp allows sending automatic messages **with custom text** via bots only within the 24h time frame after the last incoming user message.\n\nAfter the user sends a message to the WhatsApp bot, a row is added to the [Google Sheet](https://docs.google.com/spreadsheets/d/1T-B0yepcrCHxQpn7Sj6QjTa0VqwwVBQhO5ZcIUSxWJE/edit?gid=1621824221#gid=1621824221) with the Status 'New'\n\nType something in the `ReplyText` column and change the Status to 'Ready'.\nIn a few minutes, Flows timer will fetch all 'Ready' replies from the Google Sheet and send them one by one to the recipients",
        "height": 369.34131736526945,
        "width": 1197.9640718562885
      },
      "id": "129153f7-ee86-4200-b6c0-06798c431051",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [-20, 820],
      "typeVersion": 1
    },
    {
      "parameters": {
        "device": "device_id",
        "phone": "={{ $json['Your mobile number'] }}",
        "options": {}
      },
      "type": "n8n-nodes-wassenger.wassenger",
      "typeVersion": 1,
      "position": [460, 160],
      "id": "26d678c0-b581-449a-8540-c6209bf99ced",
      "name": "Wassenger",
      "credentials": {
        "wassengerApiKey": {
          "id": "your_api_key",
          "name": "Wassenger Key account 9"
        }
      }
    },
    {
      "parameters": {
        "device": "device_id",
        "events": ["message:in:new"],
        "sampleEvent": "inbound-text"
      },
      "type": "n8n-nodes-wassenger.wassengerTrigger",
      "typeVersion": 1,
      "position": [20, 600],
      "id": "71c82d9c-1ab6-4b83-9c5a-c0a714d42325",
      "name": "Wassenger Trigger",
      "webhookId": "38a35cf6-5aa7-434e-9bf3-bcd31717e1d4",
      "credentials": {
        "wassengerApiKey": {
          "id": "your_api_key",
          "name": "Wassenger Key account 9"
        }
      }
    },
    {
      "parameters": {
        "device": "device_id",
        "phone": "={{ $('Wassenger Trigger').item.json.data.fromNumber }}",
        "options": {}
      },
      "type": "n8n-nodes-wassenger.wassenger",
      "typeVersion": 1,
      "position": [660, 1020],
      "id": "1fcb9b18-4319-4bf3-b6b3-8be3a09ac969",
      "name": "Wassenger1",
      "credentials": {
        "wassengerApiKey": {
          "id": "your_api_key",
          "name": "Wassenger Key account"
        }
      }
    }
  ],
  "pinData": {},
  "connections": {
    "Wait 1 sec": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Is message?": {
      "main": [
        [
          {
            "node": "New message from the user",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get new answers": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get new entries": {
      "main": [
        [
          {
            "node": "User consented for WA messages?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Get new answers",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update message status": {
      "main": [
        [
          {
            "node": "Wait 1 sec",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "User consented for WA messages?": {
      "main": [
        [
          {
            "node": "Wassenger",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wassenger Trigger": {
      "main": [
        [
          {
            "node": "Is message?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [],
        [
          {
            "node": "Wassenger1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wassenger1": {
      "main": [
        [
          {
            "node": "Update message status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false,
  "settings": {
    "executionOrder": "v1"
  }
}

Esempio di personalizzazione: Un'agenzia di viaggi potrebbe integrare il proprio CRM per prelevare le preferenze dei clienti e inviare automaticamente suggerimenti di viaggio altamente personalizzati tramite WhatsApp.

Vantaggi chiave dell'automazione WhatsApp con Wassenger

  • Coinvolgimento immediato dei clienti: Mantieni alti livelli di soddisfazione con messaggi tempestivi e pertinenti.
  • Efficienza operativa: Riduci il lavoro manuale e semplifica le attività di comunicazione.
  • Soluzioni scalabili: Gestisci facilmente basi clienti in crescita e workflow complessi.

Scopri i Flows di Wassenger con la tecnologia di n8n

Iniziare con Wassenger e n8n

Pronto a elevare il tuo servizio clienti e automatizzare le tue comunicazioni?

👉 Iscriviti a Wassenger con una prova gratuita di 7 giorni e scopri quanto è facile integrare potenti automazioni WhatsApp nel tuo business.

Porta le tue interazioni con i clienti da buone a eccezionali, un messaggio WhatsApp automatizzato alla volta. 🎉

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger.

Browse more

Tutorials, guides and case studies on running WhatsApp at team scale.

Ready for the official WhatsApp Business API?See what Meta charges — and keep your current number.
WhatsApp API pricing