Chatwoot Integration
Chatwoot is an open-source customer engagement platform that brings all your customer conversations into one place. You can integrate Chatwoot with Evolution API to manage WhatsApp conversations through Chatwoot’s unified inbox.What is Chatwoot?
Chatwoot provides:- Unified inbox for all customer conversations
- Team collaboration and assignment
- Canned responses and shortcuts
- Conversation labels and filters
- Customer profiles and context
- Integration with multiple channels
- Reporting and analytics
Enable Chatwoot Integration
Add these environment variables to your.env file:
Environment Variables Explained
Enable or disable Chatwoot integration globally
When true, sending a message in Chatwoot marks the customer’s last message as read on WhatsApp. Default: true
When false, deleting a message for everyone on WhatsApp will not delete it in Chatwoot. Default: true
When true, creates a contact in Chatwoot to provide QR codes and instance update messages. Default: true
PostgreSQL connection URI to import messages directly to Chatwoot database (optional)
When true, imports media messages as placeholders. Default: true
Create Chatwoot Integration
Get Chatwoot credentials
From your Chatwoot dashboard:
- Navigate to Settings → Integrations → API
- Create an API access token
- Note your Account ID from the URL
Request Parameters
Enable or disable this integration
Your Chatwoot account ID
Chatwoot API access token
Your Chatwoot installation URL (e.g., “https://chatwoot.yourdomain.com”)
Name for the inbox in Chatwoot. Defaults to instance name if not provided
Add agent signature to messages sent from Chatwoot
Delimiter for agent signature. Required if signMsg is true
WhatsApp number associated with this inbox
Automatically reopen resolved conversations when customer responds
Set new conversations to pending status instead of open
Merge contacts with Brazil country code variations (+55)
Import existing WhatsApp contacts to Chatwoot
Import message history to Chatwoot
Number of days of message history to import. Maximum: 365
Automatically create inbox in Chatwoot if it doesn’t exist
Organization name for branding
URL to organization logo
List of JIDs to exclude from Chatwoot sync
Response
Find Chatwoot Configuration
Retrieve the current Chatwoot configuration for your instance:Configure Chatwoot Webhook
After creating the integration, configure the webhook in Chatwoot:Message Synchronization
WhatsApp to Chatwoot
All incoming WhatsApp messages are automatically:- Created as conversations in Chatwoot
- Assigned to the inbox
- Include sender information and context
- Support media attachments
Chatwoot to WhatsApp
Messages sent from Chatwoot:- Are delivered through WhatsApp
- Can include agent signatures (if
signMsg: true) - Support media attachments
- Mark WhatsApp messages as read (if
CHATWOOT_MESSAGE_READ=true)
Contact Management
Auto Contact Creation
WhenautoCreate: true, Evolution API automatically:
- Creates contacts in Chatwoot for new WhatsApp conversations
- Updates existing contact information
- Links conversations to the correct contact
Brazil Contact Merging
WhenmergeBrazilContacts: true, the system:
- Handles variations of Brazilian phone numbers
- Merges contacts with different formatting
- Prevents duplicate contacts for the same person
Import Existing Contacts
WhenimportContacts: true:
- Existing WhatsApp contacts are imported to Chatwoot
- Contact names and avatars are synchronized
- Updates are reflected in Chatwoot
Message Import
You can import historical WhatsApp messages to Chatwoot:Message import requires
CHATWOOT_IMPORT_DATABASE_CONNECTION_URI to be configured in your environment.Conversation Management
Conversation Status
Reopen Conversations: WhenreopenConversation: true
- Resolved conversations automatically reopen when customer responds
- Ensures no customer messages are missed
conversationPending: true
- New conversations start in “pending” status
- Requires manual assignment or automation to move to “open”
- Useful for triage workflows
Delete Behavior
Control how message deletions are handled:Bot Contact
WhenCHATWOOT_BOT_CONTACT=true, Evolution API creates a special bot contact that:
- Receives QR codes during instance connection
- Gets notifications about instance status changes
- Provides system updates and alerts
Agent Signatures
Add agent names to messages sent from Chatwoot:Use Cases
Customer Support Inbox
Customer Support Inbox
Centralize WhatsApp support:
- Manage all WhatsApp conversations in Chatwoot
- Assign conversations to team members
- Use canned responses for common questions
- Track conversation metrics and SLAs
Multi-Channel Support
Multi-Channel Support
Unified customer experience:
- Combine WhatsApp with email, live chat, and social media
- View complete customer history across channels
- Provide consistent support experience
- Route conversations based on channel and priority
Team Collaboration
Team Collaboration
Improve team efficiency:
- Private notes between team members
- Conversation assignments and transfers
- Real-time collaboration on customer issues
- Knowledge base integration
Contact Center Operations
Contact Center Operations
Scale customer support:
- Queue management and distribution
- Performance monitoring and reporting
- Automation and chatbot integration
- Business hours and auto-assignment rules
Best Practices
Always test the integration with a small number of conversations before enabling contact and message import.
- Use meaningful inbox names: Set
nameInboxto help agents identify the WhatsApp channel - Enable signatures carefully: Only use
signMsg: trueif your use case requires it - Monitor import progress: Start with small
daysLimitImportMessagesvalues - Set up automation: Use Chatwoot’s automation features for conversation routing
- Train your team: Ensure agents understand WhatsApp-specific features and limitations
Troubleshooting
Messages not appearing in Chatwoot
Messages not appearing in Chatwoot
- Verify
CHATWOOT_ENABLED=truein environment - Check that integration is enabled:
enabled: true - Confirm webhook URL is configured in Chatwoot inbox settings
- Verify Chatwoot URL and API token are correct
- Check Chatwoot logs for webhook delivery errors
Duplicate contacts being created
Duplicate contacts being created
- Enable
mergeBrazilContacts: truefor Brazilian numbers - Check that phone numbers are formatted consistently
- Verify contact matching logic in Chatwoot
Messages not sending from Chatwoot
Messages not sending from Chatwoot
- Verify webhook URL is correctly configured
- Check that the instance is connected to WhatsApp
- Ensure API key has proper permissions
- Review Evolution API logs for webhook processing errors
Import not working
Import not working
- Verify
CHATWOOT_IMPORT_DATABASE_CONNECTION_URIis configured - Check database connectivity and credentials
- Ensure Chatwoot database is accessible from Evolution API
- Start with a smaller
daysLimitImportMessagesvalue