Integrazioni
Integrazione con n8n
Invia messaggi WhatsApp dai tuoi flussi di lavoro n8n. Ad esempio, scrivi a un nuovo lead a partire da un webhook, conferma un ordine del tuo negozio o invia un avviso quando un controllo non va a buon fine.
Ci sono due modi per collegarsi:
- Il community node di Wbiztool (
n8n-nodes-wbiztool): nodi pronti all'uso con campi per ogni opzione. - Il nodo HTTP Request integrato: funziona su qualsiasi istanza n8n e ti dà accesso a tutti gli endpoint dell'API. Consulta Usare il nodo HTTP Request.
Prima di iniziare#
- Un account Wbiztool con un numero WhatsApp collegato nelle Impostazioni WhatsApp.
- Il tuo Client ID e la tua chiave API da Impostazioni → Chiavi API.
- Il WhatsApp Client ID del numero da cui inviare, visibile nelle Impostazioni WhatsApp.
Installare il community node#
Apri i community node
In n8n, vai su Settings → Community Nodes (impostazioni → community node) e fai clic su Install (installa).
Inserisci il nome del pacchetto
Inserisci
n8n-nodes-wbiztool, conferma e installa. Riavvia n8n se i nodi non compaiono.
Su un'istanza self-hosted puoi anche installarlo con npm nella cartella dei nodi personalizzati di n8n:
npm install n8n-nodes-wbiztool
Creare la credenziale#
Aggiungi una nuova credenziale di tipo WbizTool API:
| Campo | Valore |
|---|---|
| Client ID | Il tuo API Client ID. |
| API Key | La tua chiave API. |
| WhatsApp Client ID | Il numero predefinito da cui inviare. La maggior parte dei nodi ti permette di sostituirlo. |
| Base URL | Mantieni il valore predefinito https://wbiztool.com/api/v1 (senza barra finale). |
Quando salvi, n8n verifica la credenziale con Verifica credenziali.
Nodi#
Il pacchetto aggiunge questi nodi. Ognuno chiama un endpoint dell'API di Wbiztool e restituisce come output la risposta dell'API.
| Nodo | Cosa fa | API |
|---|---|---|
| WbizTool Send Message | Invia un testo, un'immagine o un file a un numero di telefono o a un gruppo. | Invia messaggio, Invia a un gruppo |
| WbizTool Send Group Message | Invia un messaggio a un gruppo WhatsApp tramite il nome. | Invia a un gruppo |
| WbizTool Send Multi Message | Invia lo stesso messaggio a un elenco di numeri separati da virgole. | Invia a più numeri |
| WbizTool Schedule Message | Pianifica un messaggio per una data e un'ora. Leggi l'avviso più sotto. | Pianifica messaggio |
| WbizTool Cancel Message | Annulla un messaggio pianificato tramite il suo ID messaggio. | Annulla messaggio |
| WbizTool Message Status | Ottieni lo stato di un messaggio tramite il suo ID messaggio. Solo un messaggio Sent restituisce un elemento. Un messaggio in coda, non riuscito, annullato o scaduto ferma il nodo con un errore come Created o Failed; attiva Continue On Fail per gestirlo con una diramazione. | Stato del messaggio |
| WbizTool Check Credentials | Verifica che il tuo Client ID e la tua chiave API funzionino. | Verifica credenziali |
| WbizTool List WhatsApp Clients | Elenca i numeri WhatsApp del tuo spazio di lavoro. | Elenco dei numeri collegati |
| WbizTool Create WhatsApp Client | Aggiunge un numero WhatsApp al tuo spazio di lavoro, con un URL di webhook facoltativo. | Collegare un numero WhatsApp |
| WbizTool WhatsApp Client Status | Verifica se un numero WhatsApp è collegato. | Stato della connessione |
WbizTool Send Message#
| Campo | Note |
|---|---|
| Target Type | Phone Number (numero di telefono) oppure Group (gruppo). |
| Phone Number | Visibile con Phone Number. Mappalo dai nodi precedenti, ad esempio {{ $json.phone }}. |
| Country Code | Il valore predefinito è 91. Cambialo con il prefisso internazionale dei tuoi destinatari. Viene aggiunto davanti al numero di telefono, a meno che il numero non inizi già con quel prefisso. |
| Group Name | Visibile con Group. Il nome esatto di un gruppo di cui fa parte il tuo numero WhatsApp. |
| Message Type | Text (testo), Image with Text (immagine con testo) oppure File with Text (file con testo). |
| Message Text | Il messaggio, fino a 3.000 caratteri. |
| Image URL / File URL / File Name | Visibili per i messaggi con immagine e con file. Gli URL devono essere pubblici. |
| WhatsApp Client ID (Optional) | Lascialo vuoto per usare il numero della credenziale. |
| Additional Options | Expire After (Seconds) (scadenza dopo, in secondi) e Webhook URL. |
Il nodo restituisce messageId (il msg_id dell'API). Salvalo se vuoi controllare lo stato del messaggio o annullarlo in seguito.
Flusso di lavoro di esempio#
- Un nodo Webhook riceve un nuovo lead con
phoneename. - WbizTool Send Message: imposta Phone Number su
{{ $json.phone }}e Message Text suHi {{ $json.name }}, thanks for signing up!. - Nodo IF: verifica che
{{ $json.messageId }}non sia vuoto per proseguire con il passo successivo, ad esempio l'aggiornamento del tuo CRM.
Un WbizTool Send Message riuscito restituisce un elemento come questo:
{
"success": true,
"messageId": 9817263,
"status": 1,
"message": "Created",
"response": { "status": 1, "message": "Created", "msg_id": 9817263 }
}
L'elemento include anche un oggetto input con i valori inviati dal nodo. Se l'API restituisce un errore, il nodo si ferma e mostra il message dell'API. Attiva Continue On Fail per ottenere invece un elemento con success: false e il testo dell'error.
Per WbizTool WhatsApp Client Status, usa il metodo di verifica General Status. Il metodo Status by ID restituisce un errore per ogni numero a causa di un bug in quell'endpoint dell'API. Con General Status, anche un numero non collegato ferma il nodo con un errore Disconnected, quindi attiva l'impostazione Continue On Fail del nodo se vuoi gestire il risultato con una diramazione.
Usare il nodo HTTP Request#
Aggiungi un nodo HTTP Request e configuralo così:
| Impostazione | Valore |
|---|---|
| Method | POST |
| URL | https://wbiztool.com/api/v1/send_msg/ |
| Authentication | None |
| Send Body | On |
| Body Content Type | JSON |
| Specify Body | Using JSON |
Poi incolla un corpo come questo e mappa i valori dai nodi precedenti con le espressioni:
{
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"msg_type": 0,
"country_code": "91",
"phone": "{{ $json.phone }}",
"msg": "Hi {{ $json.name }}, thanks for signing up!"
}
Una chiamata riuscita restituisce {"status": 1, "message": "Created", "msg_id": 9817263}. Tutti i campi e i messaggi di errore sono descritti in Invia messaggio.
Per chiamare altri endpoint, cambia l'URL e il corpo. Ad esempio, per pianificare un messaggio usa https://wbiztool.com/api/v1/schedule_msg/ e aggiungi date nel formato DD/MM/YYYY, time nel formato HH:MM e timezone. Consulta Pianifica messaggio.
Per inviare lo stesso messaggio a più numeri o gruppi con una sola chiamata, usa https://wbiztool.com/api/v1/send_msg/multi/ e inserisci i destinatari in phone come un'unica stringa separata da virgole. Consulta Invia a più numeri.
{
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"msg_type": 1,
"country_code": "91",
"phone": "{{ $json.phones }}",
"img_url": "https://example.com/offers/diwali-sale.jpg",
"msg": "Our Diwali sale starts tomorrow!"
}
Inserisci solo cifre in ogni numero. Tutto ciò che non è un numero intero, come 98765 43210, viene inviato come nome di gruppo.
Le espressioni n8n funzionano in qualsiasi campo di testo. Ad esempio, un saluto che dipende dall'ora del giorno o un testo che dipende dal totale dell'ordine:
{
"msg": "Good {{ $now.hour < 12 ? 'morning' : 'evening' }} {{ $json.name }}, your order total is {{ $json.total }}.{{ $json.total > 1000 ? ' Delivery is free.' : '' }}"
}
$now usa il fuso orario del workflow (Workflow settings → Timezone, impostazioni del workflow → fuso orario), quindi impostalo per decidere quando finisce il "morning".
Ricevere una notifica quando un messaggio viene inviato#
Crea un flusso di lavoro con webhook
Aggiungi un nodo Webhook con metodo HTTP
POSTe copia il suo URL di produzione.Passa l'URL quando invii
Inserisci quell'URL nell'opzione Webhook URL del nodo, oppure nel campo
webhookdel corpo della tua richiesta HTTP.Leggi il risultato
Wbiztool chiama l'URL quando il messaggio viene inviato o non riesce. Il corpo è codificato come form e contiene solo
msg_idestatus, che valeSENToppureFAILED.
Consulta Webhook per i tentativi ripetuti e i timeout.
Risoluzione dei problemi#
| Problema | Cosa controllare |
|---|---|
| Il test della credenziale non riesce | Controlla il Client ID e la chiave API in Impostazioni → Chiavi API, che il Base URL non abbia la barra finale e che il WhatsApp Client ID della credenziale sia un numero di questo spazio di lavoro. |
Auth Error: invalid api key | La chiave è stata eliminata o appartiene a un altro spazio di lavoro. |
Invalid whatsapp client | Il WhatsApp Client ID non corrisponde a un numero di questo spazio di lavoro. |
Invalid phone number | Il valore del telefono contiene lettere o simboli diversi da spazi, punti, trattini, parentesi e +, oppure ha meno di 6 o più di 17 cifre. Mappa un numero composto solo da cifre, come 919876543210. |
Either phone or group_name parameter is required | Il valore del telefono mappato è vuoto per questo elemento. |
Invalid Contact Number "…" | Il numero supera le 15 cifre dopo l'aggiunta del prefisso internazionale. Controlla che il prefisso non venga aggiunto a un numero che lo contiene già. |
Not enough credits | Nel tuo piano non sono rimasti messaggi. |
| Il nodo riesce ma il messaggio non viene inviato | Il messaggio resta in coda finché il tuo numero WhatsApp non è collegato. Controllalo con Stato del messaggio tramite il nodo HTTP Request, oppure nella cronologia dei messaggi. Il nodo WbizTool Message Status segnala un messaggio in coda come un errore chiamato Created. |
