Prerequisite: FRONTEND_URL (self-hosted Chatwoot)
If you run a self-hosted Chatwoot, its FRONTEND_URL environment variable must be set before connecting:
- Use the exact public URL (same scheme/host as the browser), no trailing slash, reachable from the internet — never
localhostor an internal IP. - Restart both the web and sidekiq containers afterwards (Rails derives
default_url_options[:host]from it at boot).
Missing host to link to! in the logs, the message shows as sent in Pilot Status, and the media arrives on WhatsApp.
Set up the integration
The integration is configured per number on the Chatwoot page of the Pilot Status dashboard.Gather three credentials from Chatwoot
- Instance URL — your Chatwoot base URL (e.g.
https://chatwoot.your-domain.comorhttps://app.chatwoot.com). - Account ID — the number in your Chatwoot URL after
/app/accounts/. - User Access Token — from your Chatwoot profile settings.
Connect in Pilot Status
Open the Chatwoot page in the dashboard, select the WhatsApp number, and paste the three values. Pilot Status automatically creates an API inbox and the webhook in your Chatwoot account — you never paste a webhook URL manually.
Pause or disconnect
On the same Chatwoot page you can pause the sync per number (a toggle — nothing is deleted; flip it back to resume) or disconnect the integration entirely.Voice calls
Chatwoot v4.15+ ships voice-call support. Independently of Chatwoot, the Pilot Status /chat panel includes a built-in softphone for Meta Cloud API numbers, so you can answer and place WhatsApp Business calls straight from the dashboard.Related
- Live Chat dashboard
- Data Retention & PII Modes — the Chatwoot relay keeps working even in
RELAY_ONLYmode.