Skip to content

Ask Aria

Enter to send
Back to all writeups

Building a WhatsApp CRM for small-business operations

2026-06-30 / 6 min / whatsapp / crm / automation / saas / small-business

A productised CRM for turning WhatsApp conversations into owned sales and support work: one customer record, a shared inbox, pipeline stages, follow-up automation, and clean handoffs to the systems that complete the job.


The product

This is first-party product work, not a client project with a borrowed logo and inflated conversion claim.

I have been building WhatsApp CRM solutions for businesses that already sell and support customers in chat but lose the operational thread behind those conversations.

The product brief is simple: turn each WhatsApp conversation into customer work that can be assigned, tracked, completed, and measured.

The shared inbox is the centre of that workflow. It gives the team one operational view of every conversation while preserving clear ownership and customer history.

The visible chat screen is the easy part. The useful product sits behind it.

The operating problem

WhatsApp works well for the customer because it is immediate and familiar. It becomes harder for the business as the team and message volume grow.

The same recurring failures appear:

  • Customer history is split across staff phones
  • Two people reply to the same inquiry, or nobody does
  • Leads have labels but no owner or next action
  • Quotes and payment requests are sent without structured follow-up
  • Support questions interrupt sales conversations in one queue
  • Managers can count messages but cannot see pipeline or resolution state

The CRM had to preserve the speed of chat while adding the discipline of an operating system.

The customer record

Every inbound conversation resolves to one customer record. That record holds the channel identity, contact details, conversation history, tags, current pipeline stage, assigned teammate, open tasks, and relevant business references such as an order, booking, or account number.

The phone number is a useful starting identity, but not the whole model. Numbers change, staff correct names, companies have several contacts, and one person can have several orders or cases. The data model separates the contact from the conversation and the business object the conversation is about.

That decision prevents the chat transcript from becoming the database.

Shared inbox and ownership

The shared inbox is built around ownership rather than visibility alone.

New conversations can enter an unassigned queue, follow a routing rule, or return to the teammate already responsible for that customer. Staff can assign, transfer, add an internal note, set a status, and create the next action without leaving the conversation.

Managers can see work that needs intervention:

  • New inquiries without an owner
  • Conversations waiting too long for a first response
  • Follow-ups due today
  • Customers waiting on the business
  • Conversations waiting on the customer
  • Escalations that need a named decision-maker

This makes queue health visible without reading every chat.

Pipeline and follow-up

Different businesses need different stages, so the pipeline is configurable rather than hard-coded around generic software sales.

A retailer may move from inquiry to quote, payment, fulfilment, and delivery. A professional firm may move from inquiry to qualification, booking, document collection, proposal, and engagement. A distributor may need account verification, order capture, stock confirmation, payment, and dispatch.

Automation rules respond to those stage changes. They can create a task, schedule a reminder, prepare an approved message, notify a teammate, or call an integration. The rule engine handles deterministic work without pretending every workflow needs AI.

Messaging reliability behind the UI

Messaging systems fail in less visible ways than a broken send button.

Events can arrive more than once. Status updates can arrive after the UI has moved on. A provider can accept a request before delivery later fails. Staff can reply while an automation is already queued. A customer can send several messages before the first one finishes processing.

The system treats inbound events as durable records, deduplicates them, and processes side effects through queued jobs. Outbound messages have explicit states instead of a single "sent" flag. Automation checks the latest conversation state before acting, and failures remain visible for retry or staff intervention.

That machinery is not impressive in a demo. It is the difference between a CRM and a chat wrapper.

Integration boundaries

The CRM does not try to become accounting, fulfilment, booking, payments, and support software at once.

It keeps clean links to those systems. A conversation can produce a structured lead, order, appointment, support case, or payment request. An update from the external system can move the CRM stage and prepare the next customer message.

For Kenyan businesses, this boundary matters around M-Pesa. The message asking for payment is not proof of payment. The payment system remains the source of truth, while the CRM reflects the confirmed status and keeps the customer conversation moving.

AI is an integration, not the foundation

The core CRM works without AI. Contact capture, assignment, pipeline stages, tasks, reminders, templates, and reporting are deterministic product features.

AI can be added for specific jobs:

  • Classify an inquiry that does not match a menu
  • Extract structured details from a customer's message
  • Summarise a long thread for the next staff member
  • Draft a response from approved business information
  • Suggest the next action without taking it automatically

Keeping that boundary explicit makes the product easier to trust and cheaper to operate. It also means a model outage does not stop staff from serving customers.

What this work demonstrates

This work is the reusable product foundation: multi-user inbox, customer records, pipeline configuration, workflow rules, provider event handling, and integration points. It can be configured for a business with a standard sales or support process, then extended when the operation needs custom ordering, booking, payment, or internal approvals.

It is not presented here with invented revenue or response-time numbers. Those belong to a named deployment and a measured baseline. The engineering evidence is the system itself and the product decisions that keep it useful after the first demo.

The companion note, what a useful WhatsApp CRM should automate, explains how to decide whether an SME needs a configured off-the-shelf tool or a custom solution.

If your business already runs through WhatsApp and needs a reliable customer workflow behind the chats, send a brief describing the current process, the team handling it, and where follow-up breaks.


Read next