WhatsApp + ChatWoot - HTTPS Guide
July 7, 2025 in Apps, ChatWoot by devlikeapro5 minutes
Overview
Complete guide to install and set up production-ready WAHA and Chatwoot instances on your own infrastructure!
ChatWoot Articles
There’s a series of articles about WhatsApp and ChatWoot integrations:
- WhatsApp + ChatWoot - Installation Guide
- WhatsApp + ChatWoot - Configuration Guide
- WhatsApp + ChatWoot - HTTPS Guide
You can follow them one by one or skip some parts if you don’t need them.
Go to 🧩 ChatWoot App to see features available for WhatsApp ChatWoot integration using WAHA.
After completing the configuration guide, you’ll have:
- WAHA on
https://waha.{yourdomain}
- ChatWoot on
https://chatwoot.{yourdomain}
Disclaimer
This project is not affiliated, associated, authorized, endorsed by, or in any way officially connected with WhatsApp, ChatWoot, or any of their respective subsidiaries or affiliates. The official websites can be found at https://whatsapp.com and https://chatwoot.com.
For businesses seeking to integrate with WhatsApp for critical applications, we strongly recommend using officially supported methods.
Requirements
At this point you should have:
- WAHA on http://localhost:3000
- ChatWoot on http://localhost:3009
- WhatsApp connected to ChatWoot Inbox using WAHA 🧩 ChatWoot App!
If you don’t have it - kindly follow the previous guides in the series above ☝️.
Using a VPS or VM via SSH?
You need to forward ports so you can access remote server ports from your laptop.
Connect to the server using the command:
ssh -L 3000:localhost:3000 -L 3009:localhost:3009 {user}@{server}
Now you’re ready to publish your ChatWoot and WAHA instances on the internet!
Configure DNS
If you have VPS with a Public IP address, you need to configure DNS - add A records to point those domains:
waha.<yourdomain.com>
=>YOUR_VPS_IP_ADDRESS
chatwoot.<yourdomain.com>
=>YOUR_VPS_IP_ADDRESS
Configure HTTPS for ChatWoot
Step 1: Install Nginx
sudo apt-get install nginx
Step 2: Add Nginx Config
cd /etc/nginx/sites-enabled
nano chatwoot.<yourdomain.com>.conf
server {
server_name chatwoot.<yourdomain.com>;
# Point upstream to Chatwoot App Server
set $upstream 127.0.0.1:3009;
# Nginx strips out underscore in headers by default
# Chatwoot relies on underscore in headers for API
# Make sure that the config is set to on.
underscores_in_headers on;
location /.well-known {
alias /var/www/ssl-proof/chatwoot/.well-known;
}
location / {
proxy_pass_header Authorization;
proxy_pass http://$upstream;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Ssl on; # Optional
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_buffering off;
client_max_body_size 0;
proxy_read_timeout 36000s;
proxy_redirect off;
}
listen 80;
}
Step 3: Verify and Reload Nginx Config
nginx -t
systemctl reload nginx
Step 4: Run Let’s Encrypt to configure SSL certificate
apt install certbot
apt-get install python3-certbot-nginx
mkdir -p /var/www/ssl-proof/chatwoot/.well-known
certbot --webroot -w /var/www/ssl-proof/chatwoot/ -d chatwoot.<yourdomain.com> -i nginx
Step 5: Update env variables
Update FRONTEND_URL
in .chatwoot.env
nano .chatwoot.env
FRONTEND_URL=https://chatwoot.<yourdomain.com>
Apply the changes:
docker compose up -d
Step 6: Access your installation
- Open
https://chatwoot.<yourdomain.com>
- Make sure it’s working
Step 7: Update ChatWoot URL in WAHA
- Open WAHA http://localhost:3000
- Open Apps and Edit App
- Update ChatWoot URL from
http://chatwoot:3009
tohttps://chatwoot.<yourdomain.com>
- Hit Save
- Open ChatWoot
https://chatwoot.<yourdomain.com>
- Send
status
message to WhatsApp Integration (WAHA) conversation to test WAHA <=> ChatWoot connection
Configure HTTPS for WAHA
It’s optional step - follow it if you need access to 📊 Dashboard from the internet.
Otherwise - use ssh port forwarding to manage WAHA, it’s usually enough.
Using a VPS or VM via SSH?
You need to forward ports so you can access remote server ports from your laptop.
Connect to the server using the command:
ssh -L 3000:localhost:3000 -L 3009:localhost:3009 {user}@{server}
Step 1: Install Nginx
sudo apt-get install nginx
Step 2: Add Nginx config
cd /etc/nginx/sites-enabled
nano waha.<yourdomain.com>.conf
server {
server_name waha.<yourdomain.com>;
# Point upstream to WAHA Server
set $upstream 127.0.0.1:3000;
location /.well-known {
alias /var/www/ssl-proof/waha/.well-known;
}
location / {
proxy_pass_header Authorization;
proxy_pass http://$upstream;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Ssl on; # Optional
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_buffering off;
client_max_body_size 0;
proxy_read_timeout 36000s;
proxy_redirect off;
}
listen 80;
}
Step 3: Verify and reload Nginx config
nginx -t
systemctl reload nginx
Step 4: Run Let’s Encrypt to configure SSL certificate
apt install certbot
apt-get install python3-certbot-nginx
mkdir -p /var/www/ssl-proof/waha/.well-known
certbot --webroot -w /var/www/ssl-proof/waha/ -d waha.<yourdomain.com> -i nginx
Step 5: Update env variables
Update WAHA_BASE_URL
in .waha.env
nano .waha.env
WAHA_BASE_URL=https://waha.<yourdomain.com>
Apply the changes:
docker compose up -d
Step 6: Access your installation
- Open
https://waha.<yourdomain.com>
- Make sure it’s working
Step 7: Update Webhook URL in ChatWoot
- Open ChatWoot
https://chatwoot.<yourdomain.com>
- Go to Settings → Inboxes → {Inbox}
- Update Webhook URL from
http://waha:3000/{WEBHOOKURL}
tohttps://waha.<yourdomain.com>/{WEBHOOKURL}
- Click Save
- Send
status
message to WhatsApp Integration (WAHA) conversation to test WAHA <=> ChatWoot connection
What is next?
🧩 ChatWoot App to see features available for WhatsApp ChatWoot integration using WAHA.
ChatWoot Articles
There’s a series of articles about WhatsApp and ChatWoot integrations:
- WhatsApp + ChatWoot - Installation Guide
- WhatsApp + ChatWoot - Configuration Guide
- WhatsApp + ChatWoot - HTTPS Guide
You can follow them one by one or skip some parts if you don’t need them.
Go to 🧩 ChatWoot App to see features available for WhatsApp ChatWoot integration using WAHA.