DEV Community

Muhammad Tayyab
Muhammad Tayyab

Posted on Originally published at devpik.com

Why there are almost no open source WhatsApp CRMs

Search for a self-hosted WhatsApp CRM and you find almost nothing. Plenty of email CRMs, plenty of open source helpdesks, close to zero for the channel a huge share of the world actually sells on.

That is not an accident, and the reason explains every design decision in DeskcommCRM, the most complete attempt I have seen.

The structural problem

WhatsApp has no open protocol. There are exactly two ways to send a message programmatically, and both are uncomfortable for an open source project.

1. The official Meta Cloud API. Legitimate, stable, what Meta wants you to use. It also requires business verification, charges per conversation, and restricts you to pre-approved templates outside a 24-hour service window.

2. Unofficial libraries driving a real WhatsApp Web session. No verification, no per-conversation fee, full freedom. Also against WhatsApp's terms, and the account can be banned.

Now think like a maintainer. Option one means every user needs a verified Meta business account and a billing relationship before your software does anything, which kills casual adoption. Option two means shipping something that can get your users banned.

Most projects look at that fork and go build an email CRM. That is why the category is empty.

What makes this one different

MIT licensed, TypeScript on Next.js 16, self-hosted, database on your own infrastructure. Pitched as the open alternative to Kommo, Octadesk and Intercom.

Plenty of CRMs bolted an AI panel on in the last two years. The distinction here is that the agent has hands. It can operate the CRM, not just draft replies.

Per-tenant RAG. Each organisation gets its own knowledge base, embedded with pgvector in Postgres. The agent answers from your documents, your pricing, your policies, rather than a general model's guesses about your business.

Skills it runs on its own. Mid-conversation it can execute a defined action instead of asking a human to go do it. That is the line between a chatbot that suggests and an agent that acts, and it is the part to evaluate carefully before letting it near real customers.

What you are signing up to operate

A Next.js app, Postgres with pgvector, a WhatsApp connection that must stay authenticated, and an LLM provider with per-token billing.

The WhatsApp session is the piece that will page you. Sessions drop, and a dropped session means your sales channel is silently down. The costs not in the README are the tokens and your own time keeping that connection alive. Neither is huge, both are non-zero, and per-seat SaaS pricing starts looking reasonable after the second page.

Worth it if you sell over WhatsApp at real volume and someone on the team can own a Postgres app. Not worth it if WhatsApp is a side channel.


Full breakdown with the stack, install path, the real costs and the comparison against Chatwoot and Kommo: DeskcommCRM: an open source WhatsApp CRM with AI agents built in.

Migrating contacts in? Exports almost always arrive as spreadsheets, so CSV to JSON and JSON to CSV cover most of the reshaping before import.

Top comments (0)