WaRobot · Raudhah Tech · White Unicorn Ventures

Strategic Sales & Marketing Plan

Ninety days, August to October 2026. Grounded in the RaudhahPay/operator-ai codebase at c6d13d1, repo activity through 26 July from github-activity.json, the product brief, ADRs 0001 to 0008, and the shipped marketing routes. Targets are the committed ones in blueprint.warobot.json.

Prepared 27 Jul 2026 Source: codebase, not assumptions Confidential · internal Sales motion: AI only Targets: blueprint.warobot.json
24
ARIA CONCIERGE TOOLS, MEASURED
13
AGENT TOOLS IN THE LOOP
5
REFERRAL TIERS PAYING REAL RM
160
PAYING WORKSPACES BY M3, COMMITTED
Part 01

What the code says you are actually selling

WaRobot is not a chatbot and not an inbox. It is a front-office operating system for a Malaysian SME that runs inside one WhatsApp thread. One webhook receives every message, verifies the signature, rate-limits it, then routes two ways: a customer reaches the business's AI sales agent, an owner reaches Aria the concierge.

The customer path

Customer messages the shop, Twilio webhook verifies and routes, the Claude agent replies with tools, then acts: quote, payment link, media, or handoff.

  • Answers from the business's own knowledge and catalog
  • Sends product photos and video when it helps the sale
  • Quotes real prices, captures the lead with stage and score
  • Generates a DuitNow QR or card link inside the thread
  • Escalates to a human and flips the chat off autopilot

The owner path

The owner texts SETUP to the same number and reaches Aria, who registers the business and then becomes the control panel. No dashboard required, ever.

  • Register, configure the agent, go live in about five minutes
  • Send a photo of a price list, Claude vision saves it to knowledge
  • Subscribe, top up credits, set the account keyword
  • Pause the AI, reply to a customer, create an offer, broadcast
  • Pull the referral link and redeem wallet credits

Capability inventory

Click any row to see the evidence in code. Filter by what you can sell today versus what is built but dark.

The three constraints that shape everything

One shared platform number

ADR-0004 puts every tenant on 601175957679, separated by a routing keyword. This is what makes five-minute onboarding possible, and it is also the ceiling. A customer with no keyword and no prior conversation gets a disambiguation message listing other businesses' keywords. Fine at 20 tenants, untenable at 200. Dedicated numbers already exist in Tier 1 routing, so graduation is a product decision, not a rebuild.

Broadcast is capped at 50 recipients per send

Plus a per-workspace daily limit. Do not sell WaRobot as a blast tool. This cap is a positioning gift, because it forces the story away from the ground where Wablas and the blast vendors win.

WaRobot holds the money

Payments land in one shared RaudhahPay merchant account and are paid out manually by an admin under ADR-0005. That is a facilitator posture with real obligations. It is also the strongest lock-in you have, because a business whose earnings settle through you does not casually switch. Treat payout reliability as a marketing asset and staff it before scaling acquisition.

Part 02

Positioning

The GTM narrative sells a salesperson. The code has outgrown that. A salesperson does not run your CRM, settle your money, or host your storefront.

Canonical entity sentence, do not improve it

WaRobot is a WhatsApp AI sales agent for Malaysian SMEs that answers instantly, closes the sale, and collects DuitNow in-chat.

Already live verbatim in llms.txt, the schema, and every marketing page. Consistency is what answer engines reward, so paste this exact string into every directory listing without editing a word.

The ladder

The old way

A chatbot

Answers questions. Menu 1-2-3. Never asks for the sale, never takes the money. The thing owners are already sick of.

The hook

A salesperson

Opens, closes, upsells, collects DuitNow in the chat. Owners feel this word instantly, which is why it stays the hook.

What the code shows

Your front office, in WhatsApp

CRM, orders, storefront, receipts, settlement, referrals. The owner never opens a dashboard because Aria is the dashboard.

Lead with the hook, escalate in the second breath. If the pitch starts sounding like a feature list, drop back to one line and let the buyer ask what is underneath.

The enemy, restated per competitor

You already ship five comparison pages. The enemy differs on each, and the sales motion should mirror that. Click to switch.

ICP, ranked by what the product does best

Click a card for the feature mapping and the reason for the rank.

Resellers and agencies are a channel, not a segment. The five-tier engine is built for them and currently has no landing page.

Part 03

Fix these before spending a ringgit on acquisition

Three defects will waste any traffic you buy. Each one is small, and each is verifiable today. Click to expand.

The five-minute test, do it now

Take a phone that has never messaged 601175957679. Send the exact hero prefill: "Hi, kek birthday ada ready stock tak? Nak esok". If what comes back is a list of other businesses' keywords instead of a cake conversation, your best call to action is leaking tenant names to strangers and killing every demo. That single test decides whether week one is a fix or a launch.

Part 04

Marketing plan

Everything funnels to one WhatsApp thread, and that thread is the demo. This is the whole strategy: the product sells itself by doing its job on the prospect.

The one asset that replaces a sales team

The demo workspace is the campaign

Build one WaRobot-owned tenant matching the hero animation exactly. A prospect taps the call to action, sends the cake question, and gets the same thread they just watched, live, in their own WhatsApp, at whatever hour they are browsing. The bot quotes, upsells the RM15 topper, sends a real DuitNow QR for a token amount, then bridges: everything I just did, I do for your customers, 24 hours. Then it hands to Aria with SETUP.

Ship it in week one. Nothing else in this plan works until it exists.

Seven channels, one destination

Every channel ends at the same thread with its own prefill code, so attribution comes free without a pixel. Ordered by how much of the M3 target each can realistically carry. Click a channel for the detail.

Off-site GEO checklist

The on-site work is already shipped. What remains is manual submission. Paste the canonical entity sentence verbatim into every description field. Tick as you go.

0%
Directory submissions
Tier 1 by day 14, Tier 2 by day 30.

The GEO scoreboard ritual

Run the same nine prompts across ChatGPT, Claude, Perplexity and Gemini on the first of each month. Thirty-six prompt-assistant pairs. Baseline in August, judge it in October, never in September.

BucketPrompts run verbatim, every month
DiscoveryBest WhatsApp AI chatbot for a small business in Malaysia · How can a Malaysian SME automate WhatsApp sales and collect DuitNow · AI sales agent for WhatsApp that speaks Bahasa Melayu · Alternatives to Wati for a small business in Malaysia
Entity accuracyWhat is WaRobot · How much does WaRobot cost and what does it do · Does WaRobot collect DuitNow inside WhatsApp
ComparisonWaRobot vs Wati for a Malaysian SME · WaRobot vs SleekFlow for WhatsApp sales

Record mention, position, description accuracy, and whether a link was cited. The trend matters more than any single run.

Part 05

The sales machine, run by the product

No human in the sales loop. The codebase makes that credible, because Aria is already a better onboarding rep than most humans, and it costs nothing per conversation.

Stage by stage, and the mechanism that already exists

StageOwned byMechanism shipped today
AttractMarketing surfacesFive comparison pages, four industry pages, the guide, the case study, short video
Qualify and demoDemo workspace agentThe prospect experiences the sale being made on them, which is the entire pitch
Handle objectionsSame agent, knowledge-loadedLoad the five objections from Sales Playbook v1 into the demo workspace's knowledge documents. It is a knowledge base, not a prompt hack
ConvertAriaSETUP to register_business to configure_agent to go_live
MonetizeAriasubscribe and topup_credits return a payment link, confirm-gated with reply-YES
OnboardAria Phase BA photo of a price list becomes knowledge through Claude vision. Zero friction, no developer
ExpandCRM and creditsQuota pressure drives plan upgrades. Track every workspace crossing 80 percent of quota
RetainRetention campaignsretention-cron.server.ts with inactive-day windows, plus CRM task reminders on the cron
Win backAdmin CRM churn boardChurn signals already exist. Wire one message to them and the loop closes
ReferAriaget_referral_link, triggered at the first settled sale

The only human in this chain is you, weekly, reading ten sampled transcripts and approving playbook edits. That is quality control, not selling.

The conversation spec

  1. Open by source. "Nampak awak datang dari TikTok." Then one line of positioning, not five.
  2. Qualify in three questions max: business type, monthly WhatsApp volume, biggest pain.
  3. Flip the demo. "Anggap saya staf awak dan awak customer. Order sesuatu." The bot sells and shows the QR moment.
  4. Bridge, then one stat only: RM72,003 in 8 days. Never recite the whole list.
  5. Offer, and ask for the order directly, the same way you tell customers the product does.
  6. Collect in-chat, hand to Aria, ask for the referral after the first value moment.
  7. If silent: follow-up day two, one final touch, then stop. Log the objection verbatim.

Guardrails, non-negotiable

  • Sell nothing flag-gated: no proactive notifications, no NoCap wallet, no Google login
  • No omnichannel and no Shopify sync. WhatsApp-first is the position, not a limitation
  • No dedicated-number reliability promise until the graduation path ships
  • State AI identity on request, and stop after the second follow-up with no exceptions
  • Escalation to a human stays under 5 percent. Above that, the knowledge base has a hole

Founding offer

Lock RM49 forever, even after price rises. It costs nothing today and converts the price-anxious majority. Set a real end-of-month deadline, state it once, do not repeat it.

Part 06

Numbers you can move

The committed numbers are the ones in blueprint.warobot.json, not a fresh estimate. That decision was made on 27 July and it tightens the economics considerably. Drag the sliders to see what the target actually demands.

What committing to 160 by M3 actually costs

The blueprint sets ARPU at RM74 and direct cost at RM18, so contribution is RM56 per customer per month. It also states CAC payback of about 1.3 months. Those two numbers together put the CAC ceiling at RM73, not the RM150 used in the earlier draft. Separately, the implied operating expense backed out of the profit line is RM3,800 in M1, RM4,800 in M2 and RM8,300 in M3. That is not an advertising budget. The blueprint assumes acquisition is almost entirely organic, referral and channel, and the arithmetic only closes if it is.

About 1,070 a month is what 160 by M3 needs at 5 percent chat-to-paid
Completed the demo instead of dropping mid-thread
Of those who finished the demo, who subscribes
Blueprint sets RM74, implying a roughly even Starter and Growth split
Meta click-to-WhatsApp. Keep at zero in month one
Blueprint CAC ceiling is RM73, so RM10 per chat needs 14 percent conversion
Drives the 12-month MRR curve on the right
14
NEW PAYING WORKSPACES / MONTH
RM936
NEW MRR ADDED / MONTH
RM0
PAID CAC PER CUSTOMER
0.0
MONTHS TO PAY BACK CAC
Chats started
300
Reached the QR
120
Registered via Aria
43
Paying
14
MRR over 12 months, at this rate and churn
Month 12: RM0

The committed targets

Straight from blueprint.warobot.json. Months 1 to 3 are the 90-day window this plan covers, and M3 is the number the whole plan is now written against.

MonthPaying workspacesNew that monthMRR at RM74Net profitCumulative cash
M13030RM2,220-RM2,120-RM2,120
M28050RM5,920-RM320-RM2,440
M316080RM11,840RM660-RM1,780
M4300140RM22,200RM1,600-RM180
M5480180RM35,520RM3,180RM3,000
M6680200RM50,320RM5,880RM8,880

Cash-positive from M5. CAC payback stated as 1.3 months. M12 lands at 2,960 workspaces and RM219,040 MRR, roughly RM2.6M ARR run-rate.

What 160 by M3 demands of the funnel

Working backwards from the target. The earlier draft planned 1,500 demo threads across 90 days, which lands near 60 customers. The blueprint needs more than double that, or a much better conversion rate.

Chat to paid rateDemo threads needed over 90 daysPer monthVerdict
3 percent5,3331,778Not reachable organically in the window
5 percent, the planning assumption3,2001,067Reachable only with the channel carrying it
8 percent2,000667Comfortable, and the demo thread has to earn it
12 percent1,333444Pilot-like conversion on cold traffic, unproven

Why the channel has to carry this, not advertising

Backing operating expense out of the blueprint profit line gives RM3,800 in M1, RM4,800 in M2 and RM8,300 in M3. Total tooling, salaries and spend. There is no room for a meaningful ad budget, and the CAC ceiling of RM73 confirms it.

Cost per started chatat 5 percentat 8 percentat 12 percentat 15 percent
RM5RM100RM62RM42RM33
RM8RM160RM100RM67RM53
RM10RM200RM125RM83RM67

Green is inside the RM73 ceiling. Only two of twelve combinations clear it at a realistic cost per chat, and both require conversion the demo thread has never demonstrated on cold traffic. Paid advertising is a measurement experiment in this plan, not the engine.

The arithmetic that makes 160 tractable

The Reseller Network shipped on 24 July, with cross-workspace selling and a three-way money split. If resellers supply half of the 160, that is 80 workspaces. At five workspaces per reseller it means recruiting 16 resellers in 90 days. Recruiting 16 partners is a far smaller problem than doubling advertising traffic on an RM4,800 monthly budget, and it is the only version of this plan where the blueprint numbers and the blueprint opex agree with each other.

The second revenue line nobody is watching

ADR-0005 takes a platform fee on every settled sales order and credits the net to sales_balance_myr. Track that separately from subscription MRR. If tenant GMV grows faster than subscriptions, the platform fee is the real business and the pricing model should follow the money.

Weekly review, thirty minutes

Acquisition

  • Chats started, split by prefill code
  • Demo completion rate
  • Chat to paid rate

Efficiency

  • Paid CAC against the RM150 ceiling
  • Blended CAC, target under RM80
  • Referral share of new customers

Quality

  • Human escalation rate, ceiling 5 percent
  • Ten sampled transcripts, read in full
  • Raw objection log, verbatim
Part 07

Ninety-day execution plan

Tick items as you ship them. Progress is tracked live in this page for the session, so screenshot it if you want a record.

0%
Overall progress
0 of 0 done
Part 08

Risks, stated plainly

A plan that hides its own weak points is a pitch, not a plan. These are the five that can break this one.

The single decision that matters most this week

Send the hero prefill from a fresh phone. If a stranger gets the demo, launch. If a stranger gets a list of your tenants' keywords, you have found the reason your funnel has never converted, and week one becomes a two-day fix instead of a campaign. Everything downstream, the videos, the directories, the ads, is worth nothing until that thread works.

Part 09

Keeping this document true

Everything above was read from the codebase on one day. Code moves, and a plan that quietly goes stale is worse than no plan, because it reads as authoritative while being wrong. This is the loop that keeps it honest.

Proof that the loop is needed, measured today

Running the extractor against your local clone, which is itself 22 commits behind origin, already contradicts the product brief in three places. Aria has 24 concierge tools, not 22, because get_settlement_balance and request_payout were added. The customer agent has 13 tools, not 6, and three of the new ones are set_order_status, submit_booking_form and get_appointment_slots. There are 7 feature flags, not the 3 dark items the brief lists, including PAYOUTS_ENABLED and SALES_PAYMENT_LINKS_ENABLED. The booking tools alone move the services ICP up the ranking. That drift accumulated in weeks.

The loop, five steps

The significance rubric

This is the rule that decides whether a code change touches the sales and marketing deliverables, or is just noise. Classify every line in the delta, then update only what the rule assigns. Filter by class.

Signal that movedClassWhat must change, and how fast

The commands

Run from anywhere. The script finds the repo and the GTM folder itself.

// weekly, or before any planning session
./gtm-refresh.sh
// snapshot without pulling
./gtm-refresh.sh --no-pull
// reset the comparison point
./gtm-refresh.sh --baseline
// issue progress, separate concern
./gtm-progress-sync.sh

Then say: baca jobscope-delta.md, apa yang perlu berubah. The delta names the signals, the rubric decides the consequence.

What the extractor watches

  • Agent tool names in ai-reply.server.ts, which is what the product can actually do in a sale
  • Concierge tool names in concierge.server.ts, which is the owner-facing surface
  • Every *_ENABLED flag, which separates what ships from what is dark
  • Public routes, vs-pages and use-case slugs, which is the marketing surface
  • ADRs, plans and specs, where direction changes are argued before they land
  • The plans seed, llms.txt price line and entity sentence, which must never disagree
  • Migration count and the newest migration, a cheap proxy for schema movement

Signals, not diffs. A thousand-line refactor that changes no signal is correctly ignored. One new tool name is not.

The one rule that keeps this from becoming theatre

Never update a claim in this plan from a commit message. Update it from the signal. A commit that says "feat: voice notes" proves nothing shipped to a customer, and the guardrail list exists precisely because demoable truth is the moat. If the tool name is not in the extractor output and the flag is not on, it does not enter the pitch.