ARKONE
Twenty upright marks on a dark ground, one for each stage of the engine, with mark 7 lit in amber and the stage name beneath.

How do you actually pick the channel they answer on, so that every reply lands in one inbox?

September 15, 2026 · 6 min read

S
Sobin George Thomas

An owner who messages you opens a 24-hour window in which every reply is free. Outside it the same reply is a priced template.

The reply lands on your phone. Fifty messages went out by email. The answers come back on WhatsApp, on your own phone, and stay there. For a six-person brokerage that is a phone per person and a CRM that says nobody replied.


By hand today

Two free products already run the messaging rail properly. DeskcommCRM is a self-hosted WhatsApp CRM, 2,457 stars, MIT, pushed on 14 September 2026. wacrm (github.com) is 2,322 stars, MIT, pushed the same day. Do not build a WhatsApp CRM. Clone one; it costs nothing a month.

Then run the grep. In both repos landlord matches zero files, viewing zero, valuation zero, mortgage zero. Neither knows what a property is or who owns it. The rail is solved and free. The join between the rail and the owner is this chapter.

The market picked the channel before you did: Bayut sorts its leads as “Email, SMS, Phone, WhatsApp and Chat”. So the email you sent gets answered on a number. The reply sits on one phone, the CRM shows an email sent and nothing after it, and the call that follows is written nowhere.

You will not read here what share of enquiries arrives on WhatsApp: both portals report your own split to you, and nobody publishes the total.


What it costs you each week

24 hours

The window that opens when an owner messages you. Inside it every reply is free. Outside it the same reply is a pre-approved template, priced per message delivered.

Source: Meta, the WhatsApp Cloud API pricing and send-messages developer pages, read 14 September 2026

No hours figure exists for this stage; what Meta publishes is a clock.

“When a WhatsApp user messages you or calls you, a 24-hour timer called a customer service window starts.”

Meta

“When the window closes, you can only send pre-approved template messages.” Meta, same page

“You are only charged when a template message is delivered”

Meta

So a reply on a phone nobody watches passes hour twenty-four, and the follow-up becomes a template you pay for. Meta prices those on rate cards this chapter has not read, so it prints no figure.


The build

Open Claude Code. Ask for one inbox. Email replies arrive through Gmail, WhatsApp replies through a Cloud API webhook. Both land on one CRM record per owner. The personal-session lane is named once and never used. The terms you accepted forbid it.

Open Claude Code in the engine folder. Connect Gmail through taylorwilsdon/google_workspace_mcp, the server that read your sheet, with fifteen minutes for its Google OAuth setup. Connect the CRM through its own server, HubSpot’s at mcp.hubspot.com; Pipedrive and Zoho publish their own.

WhatsApp is two lanes, and Meta publishes no MCP server for either. The first logs into your own phone by QR code through a reverse-engineered client; lharries/whatsapp-mcp, 6,269 stars, has had no push since July 2025. The Business Terms you accepted say a company must not “develop or use any applications that interact with our Business Services without our prior written consent”.

The second lane is Meta’s Cloud API: a business number and a WhatsApp Business Account, with templates approved before they are sent. The build is a send endpoint and a webhook receiver, the shape of marco2901/whatsapp-mcp-server; copy the shape rather than depend on a repo with zero stars. Twilio is the same lane with Twilio in front. Then say what you want:

Read people.csv and the CRM. For every owner we messaged last chapter,
record the channel and the date on their record. Connect Gmail: when a
reply arrives from an address on the list, log it as an email activity
on that owner's record, linking the thread. Stand up a webhook receiver
on the WhatsApp Cloud API for our business number: when an owner writes,
store the message, log it as a note on the same record, and stamp the
time the 24-hour window opened. Never touch a personal WhatsApp session.
A reply from a number the CRM does not hold goes on a list for me; never
guess the owner. Report three counts: replies filed, replies with no
record, and windows open now with no answer from us.

What comes back is a script, a webhook that stays up, and three counts. Each owner’s record carries both threads as dated activities. The third count is the morning one.

Two honest limits, which Claude Code will tell you about. An owner who has your personal number keeps writing to it until you move them. And the first message to an owner who has never written to you is a template with prior opt-in, which is the next chapter.


What it feeds

The reply, in one inbox. The next stage messages fifty owners on WhatsApp from the same business number and reads replies off the same record. The number to read: replies answered inside the window, over replies received.

The next chapter sends fifty owners a WhatsApp message in a morning, from the business number, the webhook and the record this chapter builds; a reply that lands nowhere is a priced message spent for nothing.

The number that proves this stage worked is replies answered inside the 24-hour window, over replies received.


What stays with a person

The conversation itself. The tool files the reply. The answer to an owner selling the building they built is written by a person. Automation inside the window is permitted. The escalation path to a person is the condition.

Meta’s rule, in one sentence:

“You may use automation when responding during the 24-hour window, but must also have available prompt, clear, and direct escalation paths.”

WhatsApp Business Messaging Policy

The policy asks for no bot announcement; it asks for the door to a human. The machine here files the reply and stamps the clock. Whoever reads the record decides whether to answer with a template or a call; a property sale is the largest emotional transaction most people make.

Which number becomes the business number is also a person’s ruling, made once.


The tools you already pay for

One business number.

CRM gains an activity per reply, whichever channel carried it.

Gmail is read by the same server as the sheet from chapter three.

Number is the business number Meta requires, real or virtual.


One record per owner, every reply on it, whichever channel it came on. Then the fifty can go out.

Ask: Of the replies you received last week, how many can you find in the CRM today, and how many live on a phone?

This is stage 7 of twenty, after writing fifty messages that sound like you and before messaging fifty owners on WhatsApp in a morning. The whole engine in order is the book, Building a real estate sales engine with Claude Code and Codex, end to end.

対話を始めませんか?

ArkOneが構築するガバナンスとプログラムアーキテクチャが、どのように測定可能なAIリターンを実現するかをご覧ください。

ディスカバリーコールを予約