Integraciones
Integración con n8n
Envía mensajes de WhatsApp desde tus flujos de trabajo de n8n. Por ejemplo, escribe a un nuevo lead desde un webhook, confirma un pedido de tu tienda o envía una alerta cuando falla una comprobación.
Hay dos formas de conectarlo:
- El nodo de la comunidad de Wbiztool (
n8n-nodes-wbiztool): nodos listos para usar con campos para cada opción. - El nodo HTTP Request integrado: funciona en cualquier instancia de n8n y te da acceso a todos los endpoints de la API. Consulta Usar el nodo HTTP Request.
Antes de empezar#
- Una cuenta de Wbiztool con un número de WhatsApp conectado en la configuración de WhatsApp.
- Tu Client ID y tu API key de Configuración → Claves API.
- El WhatsApp Client ID del número desde el que se envía, que aparece en la configuración de WhatsApp.
Instalar el nodo de la comunidad#
Abre los nodos de la comunidad
En n8n, ve a Settings → Community Nodes (configuración → nodos de la comunidad) y haz clic en Install (instalar).
Ingresa el nombre del paquete
Ingresa
n8n-nodes-wbiztool, confirma e instálalo. Reinicia n8n si los nodos no aparecen.
En una instancia autoalojada también puedes instalarlo con npm en la carpeta de nodos personalizados de n8n:
npm install n8n-nodes-wbiztool
Crear la credencial#
Agrega una nueva credencial de tipo WbizTool API:
| Campo | Valor |
|---|---|
| Client ID | Tu API Client ID. |
| API Key | Tu API key. |
| WhatsApp Client ID | El número predeterminado desde el que se envía. La mayoría de los nodos te permiten cambiarlo. |
| Base URL | Deja el valor predeterminado https://wbiztool.com/api/v1 (sin barra final). |
Al guardar, n8n prueba la credencial con Comprobar credenciales.
Nodos#
El paquete agrega estos nodos. Cada uno llama a un endpoint de la API de Wbiztool y devuelve la respuesta de la API.
| Nodo | Qué hace | API |
|---|---|---|
| WbizTool Send Message | Envía un texto, una imagen o un archivo a un número de teléfono o a un grupo. | Enviar mensaje, Enviar a un grupo |
| WbizTool Send Group Message | Envía un mensaje a un grupo de WhatsApp por su nombre. | Enviar a un grupo |
| WbizTool Send Multi Message | Envía el mismo mensaje a una lista de números separados por comas. | Enviar a varios números |
| WbizTool Schedule Message | Programa un mensaje para una fecha y hora. Consulta la advertencia de abajo. | Programar mensaje |
| WbizTool Cancel Message | Cancela un mensaje programado por su ID de mensaje. | Cancelar mensaje |
| WbizTool Message Status | Obtiene el estado de un mensaje por su ID de mensaje. Solo un mensaje Sent (enviado) devuelve un elemento. Un mensaje en cola, fallido, cancelado o caducado detiene el nodo con un error como Created o Failed; activa Continue On Fail para ramificar según el resultado. | Estado del mensaje |
| WbizTool Check Credentials | Comprueba que tu Client ID y tu API key funcionan. | Comprobar credenciales |
| WbizTool List WhatsApp Clients | Lista los números de WhatsApp de tu espacio de trabajo. | Listar números conectados |
| WbizTool Create WhatsApp Client | Agrega un número de WhatsApp a tu espacio de trabajo, con una URL de webhook opcional. | Conectar un número de WhatsApp |
| WbizTool WhatsApp Client Status | Comprueba si un número de WhatsApp está conectado. | Estado de la conexión |
WbizTool Send Message#
| Campo | Notas |
|---|---|
| Target Type (tipo de destino) | Phone Number (número de teléfono) o Group (grupo). |
| Phone Number | Se muestra con Phone Number. Asígnalo desde nodos anteriores, por ejemplo {{ $json.phone }}. |
| Country Code (código de país) | El valor predeterminado es 91. Cámbialo por el código de país de tus destinatarios. Se añade delante del número de teléfono, a menos que el número ya empiece por él. |
| Group Name (nombre del grupo) | Se muestra con Group. El nombre exacto de un grupo en el que está tu número de WhatsApp. |
| Message Type (tipo de mensaje) | Text, Image with Text o File with Text (texto, imagen con texto o archivo con texto). |
| Message Text (texto del mensaje) | El mensaje, hasta 3.000 caracteres. |
| Image URL / File URL / File Name | Se muestran para los mensajes con imagen y con archivo (URL de la imagen, URL del archivo y nombre del archivo). Las URL deben ser públicas. |
| WhatsApp Client ID (Optional) | Déjalo vacío para usar el número de la credencial. |
| Additional Options (opciones adicionales) | Expire After (Seconds) (expirar después de, en segundos) y Webhook URL. |
El nodo devuelve messageId (el msg_id de la API). Guárdalo si quieres consultar el estado o cancelar el mensaje más adelante.
Ejemplo de flujo de trabajo#
- El nodo Webhook recibe un nuevo lead con
phoneyname. - WbizTool Send Message: pon Phone Number en
{{ $json.phone }}y Message Text enHi {{ $json.name }}, thanks for signing up!. - Nodo IF: comprueba que
{{ $json.messageId }}no esté vacío para continuar con el siguiente paso, como actualizar tu CRM.
Un WbizTool Send Message correcto devuelve un elemento como este:
{
"success": true,
"messageId": 9817263,
"status": 1,
"message": "Created",
"response": { "status": 1, "message": "Created", "msg_id": 9817263 }
}
El elemento también incluye un objeto input con los valores que envió el nodo. Si la API devuelve un error, el nodo se detiene y muestra el message de la API. Activa Continue On Fail para obtener en su lugar un elemento con success: false y el texto de error.
Para WbizTool WhatsApp Client Status, usa el método de comprobación General Status. El método Status by ID devuelve un error para todos los números debido a un fallo en ese endpoint de la API. Con General Status, un número que no está conectado también detiene el nodo con un error Disconnected, así que activa la opción Continue On Fail del nodo si quieres ramificar según el resultado.
Usar el nodo HTTP Request#
Agrega un nodo HTTP Request y configúralo así:
| Ajuste | Valor |
|---|---|
| Method | POST |
| URL | https://wbiztool.com/api/v1/send_msg/ |
| Authentication | None |
| Send Body | On |
| Body Content Type | JSON |
| Specify Body | Using JSON |
Después pega un cuerpo como este y asigna los valores de los nodos anteriores con expresiones:
{
"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 llamada correcta devuelve {"status": 1, "message": "Created", "msg_id": 9817263}. Todos los campos y mensajes de error están en Enviar mensaje.
Para llamar a otros endpoints, cambia la URL y el cuerpo. Por ejemplo, para programar un mensaje usa https://wbiztool.com/api/v1/schedule_msg/ y agrega date como DD/MM/YYYY, time como HH:MM y timezone. Consulta Programar mensaje.
Para enviar el mismo mensaje a varios números o grupos en una sola llamada, usa https://wbiztool.com/api/v1/send_msg/multi/ y pon los destinatarios en phone como una sola cadena separada por comas. Consulta Enviar a varios números.
{
"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!"
}
Pon solo dígitos en cada número. Todo lo que no sea un número entero, como 98765 43210, se envía como nombre de grupo.
Las expresiones de n8n funcionan dentro de cualquier campo de texto. Por ejemplo, un saludo que depende de la hora del día o un texto que depende del total del pedido:
{
"msg": "Good {{ $now.hour < 12 ? 'morning' : 'evening' }} {{ $json.name }}, your order total is {{ $json.total }}.{{ $json.total > 1000 ? ' Delivery is free.' : '' }}"
}
$now usa la zona horaria del flujo de trabajo (Workflow settings → Timezone), así que configúrala para decidir cuándo termina la «mañana» (morning).
Recibir un aviso cuando se envía un mensaje#
Crea un flujo de trabajo con webhook
Agrega un nodo Webhook con el método HTTP
POSTy copia su URL de producción.Pasa la URL al enviar
Pon esa URL en la opción Webhook URL del nodo, o en el campo
webhookdel cuerpo de tu solicitud HTTP.Lee el resultado
Wbiztool llama a la URL cuando el mensaje se envía o falla. El cuerpo está codificado como formulario y solo contiene
msg_idystatus, que esSENToFAILED.
Consulta Webhook para ver los reintentos y los tiempos de espera.
Solución de problemas#
| Problema | Qué revisar |
|---|---|
| Falla la prueba de la credencial | Revisa el Client ID y la API key en Configuración → Claves API, que la Base URL no tenga barra final y que el WhatsApp Client ID de la credencial sea un número de este espacio de trabajo. |
Auth Error: invalid api key | La clave se eliminó o pertenece a otro espacio de trabajo. |
Invalid whatsapp client | El WhatsApp Client ID no corresponde a un número de este espacio de trabajo. |
Invalid phone number | El valor de teléfono contiene letras o símbolos distintos de espacios, puntos, guiones, paréntesis y +, o tiene menos de 6 o más de 17 dígitos. Asigna un número solo con dígitos, como 919876543210. |
Either phone or group_name parameter is required | El valor de teléfono asignado está vacío en este elemento. |
Invalid Contact Number "…" | El número tiene más de 15 dígitos una vez añadido el código de país. Comprueba que el código de país no se añada a un número que ya lo tiene. |
Not enough credits | Tu plan no tiene mensajes disponibles. |
| El nodo termina correctamente pero el mensaje no se envía | El mensaje espera en la cola hasta que tu número de WhatsApp esté conectado. Compruébalo en Estado del mensaje con el nodo HTTP Request, o en tu historial de mensajes. El nodo WbizTool Message Status informa de un mensaje en cola como un error llamado Created. |
