Chatwoot omnichannel customer support
Your customers write to you everywhere: the website chat, email, Instagram, WhatsApp. Splitting them across several tools means lost messages and paying top price per agent. SaaS tools like Zendesk or Intercom solve the centralization, but your customer conversations — often your most sensitive data — transit through American servers. Bunker hosts Chatwoot, the open source omnichannel customer support platform.
Access: your dedicated instance, deployed from the Bunker console.
Why Chatwoot?
Chatwoot brings all your conversation channels together in a single shared inbox. Your agents reply to live chat, email, Facebook Messenger, Instagram and WhatsApp from one interface — with canned responses, macros, assignment rules and an unlimited number of agents.
All conversations are stored on Bunker servers. You keep full control.
Edition and license
Bunker operates the Chatwoot Community edition, released under the MIT license (open source software). The code is auditable, your data exportable, and the instance re-internalizable on your own infrastructure whenever you decide. Bunker is not affiliated with Chatwoot Inc.; "Chatwoot" is a trademark of its publisher, referenced here to designate the operated software.
Comparison with alternatives
| Criterion | Bunker | Zendesk | Intercom | Freshdesk | Self-hosting |
|---|---|---|---|---|---|
| Open source | Yes (MIT) | No | No | No | Yes |
| Sovereign hosting | Yes (Europe) | No (USA) | No (USA) | No (USA) | Up to you |
| Billing | Flat, unlimited agents | Per seat | Per seat | Per seat | Server + time |
| Omnichannel (chat, email, social, WhatsApp) | Yes | Yes | Yes | Yes | Yes |
| Full API | Yes | Yes | Yes | Yes | Yes |
| High availability | Guaranteed | Yes | Yes | Yes | Up to you |
| Auto backups | Yes | Yes | Yes | Yes | To configure |
| Security updates | Applied | Automatic | Automatic | Automatic | To monitor |
| Ops cost | Zero | Zero | Zero | Zero | Time + server |
In practice
The source code is auditable by anyone. MIT license: no black box, no vendor lock-in.
Your conversations belong to you. Unlike per-seat SaaS, the plan comes with unlimited agents: the cost does not depend on the size of your support team.
Your customer exchanges stay in Europe, under European law. No CLOUD Act, no access by foreign authorities.
Portability
Customer support touches sensitive data: conversation history, contact details, complaints. With Chatwoot:
- Full export of your conversations and contacts
- Documented REST API and real-time webhooks
- MIT license guaranteeing the project's longevity
- Active community maintaining the software
If Bunker disappears tomorrow, you export your data and reinstall Chatwoot on your own server. Try that with Zendesk.
Bunker vs self-hosting
You could install Chatwoot on your own server. But:
| Aspect | Self-hosting | Bunker |
|---|---|---|
| High availability | Up to you | Guaranteed |
| Backups | To configure | Automatic |
| Security updates | To monitor | Applied |
| SSL certificates | To renew | Managed |
| 24/7 monitoring | To set up | Included |
| HA database | PostgreSQL to manage | CNPG PostgreSQL (replicated) |
| Queue / real-time | Redis to operate | Managed Redis Sentinel |
Unavailable support means customers left without answers and a reputation taking damage. At Bunker, availability and backups are guaranteed. The database is managed by CNPG (CloudNativePG) with replication, and the real-time queue by Redis in Sentinel mode.
Quick start
1. Deploy from the console
- Go to console.getbunker.net
- Create your Bunker account or sign in
- Activate the Chatwoot service from the console
- Access your instance via the provided URL; admin credentials are in the service details
2. Create an inbox
- In Chatwoot, open Settings → Inboxes → Add Inbox
- Choose the channel: Website (live chat widget), Email, WhatsApp, Facebook, Instagram, API
- Follow the channel configuration wizard
- Assign the agents or teams that will handle this inbox
3. Add the chat widget to your site
For the Website channel, copy the provided script and paste it just before </body>:
<script>
(function(d,t) {
var BASE_URL="https://YOUR-INSTANCE.getbunker.net";
var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=BASE_URL+"/packs/js/sdk.js"; g.defer=true; g.async=true;
s.parentNode.insertBefore(g,s);
g.onload=function(){
window.chatwootSDK.run({ websiteToken: "YOUR_TOKEN", baseUrl: BASE_URL });
};
})(document,"script");
</script>
4. Invite your agents
- Open Settings → Agents → Add Agent
- Enter the name and email — the agent receives an email invitation
- Assign a role: administrator (full access) or agent (conversations)
- Repeat for your whole team — the number of agents is unlimited
Supported channels
| Channel | Description |
|---|---|
| Website | Embeddable live chat widget, customizable to your brand colors |
| Support address linked to a shared inbox (forwarding or IMAP) | |
| WhatsApp Business number via the Cloud API | |
| Facebook Messenger | Facebook page connected via OAuth |
| Direct messages from your professional Instagram account | |
| API / SDK | Custom channel to embed chat in a mobile app or product |
Automation and productivity
Chatwoot speeds up conversation handling:
- Canned responses: pre-written messages inserted with one keystroke
- Macros: chains of actions (reply, label, assign, resolve) in one click
- Automation rules: auto-assign by keyword, language, channel or schedule
- Labels and teams: route conversations to the right team (billing, technical…)
- Private notes: collaborate between agents without the customer seeing them
API and webhooks
Chatwoot exposes a full REST API and real-time webhooks to integrate support into your tools:
# Create a conversation via the API
curl -X POST https://YOUR-INSTANCE.getbunker.net/api/v1/accounts/1/conversations \
-H "api_access_token: YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"source_id": "customer-123",
"inbox_id": 1,
"contact_id": 42
}'
| Webhook event | Description |
|---|---|
conversation_created | A new conversation was opened |
message_created | A message was sent or received |
conversation_status_changed | The status changed (open, resolved…) |
contact_created | A new contact was created |
Best practices
- Create canned responses for recurring questions (lead times, pricing, return procedure)
- Set up per-team assignment rules so no conversation is left without an owner
- Enable webhooks to sync support with your CRM or tracking tool
- Use labels to measure contact reasons and prioritize your product work
- Set a clear retention policy for conversations and attachments
References
- Chatwoot documentation to go further
- Externalized backups for complete protection