Skip to main content

Overview

The n8n integration allows you to use WhatsApp in your n8n workflows through community nodes. This enables powerful automation scenarios combining WhatsApp with hundreds of other services.
n8n is a workflow automation tool that lets you connect apps and services together. Learn more at n8n.io.

Installation

Install via n8n Community Nodes

1

Open n8n Settings

Navigate to Settings in your n8n instance
2

Go to Community Nodes

Click on Community Nodes in the sidebar
3

Install Package

Enter @aldinokemal2104/n8n-nodes-gowa in the package name field and click Install
4

Wait for Installation

The installation may take a few moments. Once complete, the WhatsApp nodes will be available in your node palette

Package Information

Prerequisites

WhatsApp REST API Running

You need a running instance of the Go WhatsApp Web Multidevice REST API server to use the n8n nodes.
1

Start WhatsApp API

./whatsapp rest --port=3000
2

Login to WhatsApp

Access http://localhost:3000 and scan the QR code to login
3

Note API URL

You’ll need the API URL (e.g., http://localhost:3000) for configuring n8n nodes

Configuration in n8n

Creating a Credential

  1. In your n8n workflow, add a WhatsApp node
  2. Click on Create New Credential
  3. Configure the credential with:
    • API URL: Your WhatsApp REST API URL (e.g., http://localhost:3000)
    • Authentication (if enabled):
      • Username and password from APP_BASIC_AUTH
    • Device ID (if using multi-device setup):
      • The device ID you want to use for this workflow

Credential Example

{
  "apiUrl": "http://localhost:3000",
  "username": "admin",
  "password": "secret",
  "deviceId": "my-device-id"
}

Available Nodes

The n8n package provides nodes that mirror the REST API capabilities:

Message Nodes

Send Text Message

Send text messages to contacts or groups

Send Image

Send images with optional captions

Send Video

Send video files with captions

Send Document

Send document files

Send Audio

Send audio messages

Send Sticker

Send stickers (auto-converts to WebP)

Send Contact

Share contact cards

Send Location

Share location coordinates

Query Nodes

Get Chat Messages

Fetch messages from a specific chat

List Chats

Get all chats with pagination

List Contacts

Retrieve all contacts

Get User Info

Get information about a user

Group Nodes

Create Group

Create new WhatsApp groups

Manage Participants

Add, remove, promote, or demote members

Get Group Info

Fetch group details

Set Group Settings

Update group name, topic, or settings

Workflow Examples

Example 1: Send Welcome Message

Create a workflow that sends a welcome message when a new contact is added:
1

Trigger Node

Use a Webhook node to receive new contact notifications
2

WhatsApp Node

Add a WhatsApp - Send Text Message nodeConfigure:
  • Phone: {{$json.phone}}
  • Message: Welcome! Thanks for connecting with us.

Example 2: Customer Support Automation

Automate customer support responses:
1

Webhook Trigger

Configure WhatsApp webhook to send message events to n8n
2

Filter Messages

Use an IF node to check message content
3

Send Response

Add WhatsApp - Send Text Message node with appropriate response
4

Create Ticket (Optional)

If needed, create a ticket in your support system

Example 3: Daily Report Distribution

Send daily reports to a WhatsApp group:
1

Schedule Trigger

Use Cron node to trigger daily at specific time
2

Generate Report

Use HTTP Request or Database nodes to fetch data
3

Format Message

Use Set node to format the report text
4

Send to Group

Use WhatsApp - Send Text Message nodeConfigure:

Example 4: Media Backup

Automatically backup received media files:
1

Webhook Trigger

Receive message events from WhatsApp
2

Filter Media Messages

Use IF node to check if message contains media
3

Download Media

Use WhatsApp - Download Media node
4

Upload to Cloud

Use Google Drive, Dropbox, or S3 node to store the file

Common Use Cases

  • Trigger: New order in your e-commerce platform
  • Action: Send order confirmation via WhatsApp
  • Includes: Order details, tracking link, estimated delivery
  • Trigger: Scheduled time (24 hours before appointment)
  • Action: Send reminder message
  • Includes: Appointment details, location, cancellation link
  • Trigger: System monitoring alerts
  • Action: Send alert to operations group
  • Includes: Alert severity, affected service, action required
  • Trigger: New blog post or content published
  • Action: Send notification to subscribers
  • Includes: Title, summary, link to content
  • Trigger: Customer interaction completed
  • Action: Send survey link
  • Follow-up: Thank you message after completion

Best Practices

Error Handling

Always add error handling nodes to your workflows to manage failed WhatsApp API calls gracefully

Rate Limiting

Implement delays between messages to avoid hitting WhatsApp rate limits

Device Status Check

Check device connection status before sending messages in critical workflows

Use Variables

Store frequently used values (API URL, group IDs) as workflow variables

Test Mode

Use test phone numbers or groups when developing workflows

Logging

Log message sending attempts for debugging and audit purposes

Advanced Configuration

Multi-Device Setup

When using multiple WhatsApp devices:
{
  "credentials": {
    "deviceId": "support-device"
  }
}
Or use workflow variables:
// In Function node
const deviceId = $env.WHATSAPP_DEVICE_ID || 'default-device';
return { deviceId };

Webhook Integration

Configure WhatsApp to send events to n8n:
  1. Start n8n workflow with Webhook trigger
  2. Copy webhook URL from n8n
  3. Configure WhatsApp API:
    WHATSAPP_WEBHOOK=https://your-n8n.com/webhook/whatsapp
    

Dynamic Message Templates

Use n8n expressions for dynamic content:
// Template message
Hello {{$json.customer.name}},

Your order #{{$json.order.id}} has been confirmed.

Total: ${{$json.order.total}}
Expected delivery: {{$json.order.delivery_date}}

Thank you for your purchase!

Troubleshooting

Problem: Cannot connect to WhatsApp APISolutions:
  • Verify API URL is correct and accessible from n8n
  • Check if WhatsApp API server is running
  • Verify firewall rules allow connection
  • Test API endpoint with curl first
Problem: 401 Unauthorized errorsSolutions:
  • Check username and password match APP_BASIC_AUTH
  • Verify credentials are saved in n8n
  • Test credentials with direct API call
Problem: Workflow runs but messages don’t sendSolutions:
  • Check device is logged in: GET /app/status
  • Verify phone number format (include country code)
  • Check n8n execution logs for API response
  • Verify device ID if using multi-device setup
Problem: Cannot send images or filesSolutions:
  • Verify file URL is publicly accessible
  • Check file size limits
  • Ensure file format is supported
  • Test with local file first

Resources

npm Package

View the official npm package page

n8n Documentation

Learn more about n8n workflows

WhatsApp API Reference

Complete REST API documentation

Community Nodes

Learn about n8n community nodes

Support

For issues specific to the n8n integration:
  1. Check the npm package for updates
  2. Review n8n execution logs for detailed error messages
  3. Verify your WhatsApp REST API is working correctly
  4. Test API endpoints directly before using in n8n
For WhatsApp API issues, refer to the main documentation and API reference.

Build docs developers (and LLMs) love