Most Malaysian SMEs already have the two halves. There is a WhatsApp number the enquiries come to, and there is a CRM somebody bought last year. What is missing is the wiring between them — and the wiring is where the decisions live.
The failure is quiet. Nothing errors. Chats keep arriving, staff keep replying, and the CRM slowly fills with contacts that have no source, no owner and no conversation attached. Six months later nobody can say which enquiries came from the Friday ad and which came from a referral.
This page covers the build itself: connector versus webhook, what the CRM should create on the first inbound message, how to route it, what Meta actually charges per message since the July 2025 pricing change, and what starts to break as volume grows. It sits under our digital marketing services. If you still need the platform basics first, how the WhatsApp Business API works in Malaysia is the prerequisite, and choosing a CRM for a Malaysian SME is the other one.
The video below walks through a live connector setup end to end.
HubSpot WhatsApp Integration: Connect, Message, and Automate with WhatsApp
Source video: Sidekick Strategies on YouTube
1. Why WhatsApp Enquiries Never Reach the CRM
Quick Answer: The gap is almost never the CRM. It is that WhatsApp sits on a phone, or in a shared web inbox, with no rule that turns an inbound message into a record. Nothing is broken, so nobody fixes it — the enquiries simply live in a place your pipeline cannot see.
Three shapes of this problem turn up again and again across Malaysian SME accounts, and none of them look like a fault:
- The personal-phone enquiry. The number belongs to one salesperson. When they are on leave, the enquiry is on leave too, and the CRM never hears about it.
- The shared inbox with no owner. Four staff can see every chat, so each assumes someone else replied. Fast to set up, and the reason leads slip through the cracks.
- The copy-paste habit. Someone keys the good ones into the CRM at the end of the week. Ten per cent get in, chosen by memory rather than by rule.

A WhatsApp CRM integration removes that human step. Tidier records are a side effect. What actually changes is that every enquiry arrives with an owner and a timestamp, which is a different object entirely from a chat sitting in an app — and the argument for running marketing and follow-up as one system rather than two.
Key takeaway: You are not fixing a broken CRM. You are removing the manual step between a message arriving and a record existing.
Not sure how many enquiries your CRM is actually missing?
We count them before we quote anything — a week of chats against a week of CRM records.
See how we measure untracked WhatsApp leads →2. Connector or Webhook: How to Wire WhatsApp to Your CRM
Quick Answer: A connector is a ready-made bridge sold by your CRM or a messaging provider — fast, priced monthly, limited to the fields it ships with. A webhook is your own endpoint receiving Meta's payload — slower to build, cheaper to run, and the only route when your field mapping is unusual.
Most Malaysian SMEs should start with a connector and build a webhook only when the connector genuinely blocks them. The reason is the endpoint. Meta's Cloud API webhook setup guide requires a public HTTPS address with a valid certificate, rejects self-signed ones, and allows only one endpoint per Meta App. That is a server somebody has to own on a Sunday night.
| Wiring method | Enquiries that become a CRM record | Share |
|---|---|---|
| Custom webhook to CRM API | 97% | |
| Native CRM connector | 94% | |
| Third-party inbox with CRM sync | 81% | |
| Automation tool (Zapier-style) on a poll | 63% | |
| Manual entry by staff | 24% |
Source: ZenWeb client tracking across Malaysian SME accounts, 2024–2026. Licence.

The interesting gap is not webhook versus connector — three points separate them. It is the drop to the polling tools, which check for new messages on a schedule and lose anything that arrives while a run is already in flight. Manual entry is not a method at all.
Key takeaway: Take the connector unless a specific field or routing rule makes it impossible. A webhook buys you three percentage points and a server to maintain.
3. What the CRM Should Create on the First Message
Quick Answer: One inbound message should produce a contact keyed on the phone number, a deal or enquiry linked to it, the chat thread attached to both, and a source tag. Skip the source tag and you have records nobody can attribute; skip the phone-number key and you get duplicates within a fortnight.
Decide the object model before the build, not during it. Almost every stalled integration we inherit stalled here — someone wired the messages across without agreeing what a message means in the CRM's own data model.
How to map an inbound WhatsApp message to CRM records
- Match on the E.164 phone number. Store every number in full international form (+60…) and match on that alone. Local-format storage is the single biggest source of duplicate contacts.
- Create the contact if no match exists. Name comes from the WhatsApp profile, which is often a nickname or a shop name — treat it as provisional and let staff correct it.
- Open one enquiry per conversation, not per message. A returning customer three months later is a new enquiry; five messages in ten minutes are one.
- Attach the thread to both objects. The conversation must be readable from the contact and from the deal, or staff go back to the app to read it.
- Write the source tag at creation. Click-to-WhatsApp ad, website button, QR code on a flyer — captured at creation or lost forever, which is what makes lead source tracking work at all.

With those five in place you can score enquiries on arrival. Lead scoring is only possible once the record exists at the moment of the message rather than at the end of the week.
Key takeaway: Store numbers in full +60 international format and write the source tag at creation. Those two decisions prevent most of the mess that shows up in month three.
4. Routing Rules That Decide Who Answers
Quick Answer: Assign every conversation to one named person the moment it is created. Round-robin beats a shared queue, and returning customers should go back to whoever handled them last. An unassigned chat is answered late or twice, and both cost you the enquiry.
Routing is where the integration earns back its cost, because WhatsApp enquiries decay faster than form leads. People message three businesses in a row and buy from the first useful reply — the practical case for replying within five minutes.
| Routing rule | Median first reply | Answered in 5 min | Left unassigned |
|---|---|---|---|
| Round-robin to available staff | 3 min | 68% | 2% |
| Back to the last owner, else round-robin | 4 min | 61% | 2% |
| Auto-reply, then queue for a human | 17 min | 34% | 9% |
| Shared queue, first to claim it | 26 min | 29% | 14% |
| No rule — whoever sees it | 51 min | 18% | 23% |

Source: ZenWeb client tracking across Malaysian SME accounts, 2024–2026. Licence.
Note what the auto-reply row does. It answers instantly and then stalls, because "we have received your message" resets nobody's patience. Use it to buy honest time, not to fake a reply — the distinction that separates useful lead response automation from a bot that annoys people.
Key takeaway: Round-robin to a named person at creation. Shared queues quadruple your median reply time and leave one chat in seven with nobody responsible.
Chats arriving faster than your team can claim them?
We set the routing rules and the escalation ladder alongside the integration, not after it.
See how we build a follow-up process →5. What Each Message Costs Once You Are on the API
Quick Answer: Meta moved from conversation-based pricing to per-message pricing on 1 July 2025. Inbound messages are free, replies inside the open 24-hour service window are free, and you pay for marketing templates always and for utility or authentication templates only when the window is closed.
This change matters for an integration because the CRM now controls most of your bill. Whether a message is charged depends on which template category it uses and whether a service window is open — both of which your CRM automation decides. Meta's WhatsApp Business Platform pricing documentation sets it out in full.

| Message type | Window open | Window closed | Typical share of volume |
|---|---|---|---|
| Customer's inbound message | Free | Free | 38% |
| Your normal reply (non-template) | Free | Cannot be sent | 44% |
| Utility template (order, booking, invoice) | Free | Charged | 11% |
| Authentication template (OTP) | Charged | Charged | 3% |
| Marketing template (promo, broadcast) | Charged | Charged | 4% |
Charging rules per Meta's WhatsApp Business Platform pricing documentation; volume shares from ZenWeb client tracking across Malaysian SME accounts, 2024–2026. Licence.
Read the bottom two rows against the volume column. Marketing templates are a twenty-fifth of the messages and most of the invoice. Meta also opens a 72-hour free window when someone reaches you through a click-to-WhatsApp ad and you reply within a day — worth building the automation around. Wider budgeting sits in WhatsApp marketing costs in Malaysia.
Key takeaway: Your CRM decides the bill, because it decides the template category and the timing. Keep utility templates inside the open window and the running cost of an integration stays small.
6. The Ringgit Billing Change Malaysian SMEs Should Plan For
Quick Answer: Meta added Malaysian ringgit as a billing currency for WhatsApp Business Accounts from 1 April 2026. The catch is that an existing account's currency cannot be changed — the only way to bill in ringgit is to create a new WhatsApp Business Account and select MYR when you do.
This is the one deadline in the whole build that you cannot fix later, and almost nobody plans for it. Meta's pricing calendar confirms both halves: MYR became available on 1 April 2026, and the currency of an existing account is fixed for its lifetime.
Three practical consequences for a Malaysian SME setting this up now:
- Decide the currency before you provision, not after. A US-dollar account means a foreign-exchange line on every card statement and a bill that moves with the ringgit even when your message volume does not.
- Switching later means a new account. A new WhatsApp Business Account brings a fresh messaging tier and a fresh template library — a real cost, not just paperwork.
- Tell your finance person early. Ringgit billing removes the currency guesswork from a budget line that finance teams already dislike forecasting.

If you are still on a personal number or the free Business app, this is a good moment to move rather than a reason to wait. Growing accounts hit the messaging limit tiers soon enough anyway.
Key takeaway: Pick MYR at the moment you create the WhatsApp Business Account. It is the one setting in this build that a later decision cannot undo.
7. What Breaks as Enquiry Volume Grows
Quick Answer: A WhatsApp CRM integration rarely fails outright. It degrades. Duplicate contacts creep up, some conversations arrive without an owner, and sync lag stretches from seconds to minutes — all visible in the CRM months before anyone calls it a problem.
The table below tracks the same set of accounts through their first year live, because the degradation follows the calendar as much as the volume — staff turnover, new templates and campaign spikes all land after go-live.
| Months live | Duplicates per 1,000 chats | Arrived with no owner | Median sync delay |
|---|---|---|---|
| Month 1 | 6 | 2% | 4 sec |
| Month 3 | 14 | 4% | 6 sec |
| Month 6 | 27 | 7% | 21 sec |
| Month 9 | 31 | 9% | 34 sec |
| Month 12, no review | 38 | 12% | 41 sec |
| Month 12, quarterly review | 9 | 3% | 7 sec |

Source: ZenWeb client tracking across Malaysian SME accounts, 2024–2026. Licence.
The last two rows are the same integration with and without a quarterly hour of maintenance. Duplicates almost always trace back to phone-number formatting; unassigned chats trace back to staff who left and were never removed from the round-robin. Both are the same class of problem as a GA4 and CRM figure mismatch — small, silent, compounding.
Key takeaway: Put one hour a quarter in the calendar to check duplicates, unassigned chats and sync delay. Without it, a healthy integration becomes a misleading one inside a year.
8. PDPA, Consent and Chat Records in the CRM
Quick Answer: Once chats are copied into a CRM, the conversation becomes stored personal data under Malaysia's PDPA rather than a message on someone's phone. That changes three things: who may open it, how long you keep it, and whether replying to an enquiry counts as consent to market to that person later.
Answering an enquiry is not consent to broadcast. Treat those as two separate permissions in the CRM, because the marketing template is the one Meta charges for and the one a customer resents receiving.
- Keep a marketing opt-in field on the contact. Set by an explicit yes, never by the fact that they messaged you.
- Restrict who can read old threads. Chat history contains addresses, order values and health or financial details staff never needed to see.
- Write down a retention period. Twenty-four months of chat history is a defensible default for most SMEs; forever is not.
- Handle deletion requests across both systems. Removing a CRM contact does not clear the thread in your messaging platform.

Our PDPA compliance checklist for Malaysian marketers covers the wider obligations, and the same permission logic decides what you may send when you announce a price increase to existing customers.
Key takeaway: Store the marketing opt-in as its own field. An enquiry gives you permission to reply, not permission to broadcast.
9. A Four-Week Build That Does Not Stall
Quick Answer: Four weeks is realistic for a connector build: one week on access and verification, one on field mapping and routing, one on templates and testing, one running live on a single number before the rest of the team moves across.
Most integrations stall in week one, and always on the same thing — business verification. Meta needs a verified business, a number nobody is using on the consumer app, and an administrator who can approve from the Business Manager. Start that paperwork before you buy anything.
- Week 1 — access. Business verification, the WhatsApp Business Account created with the currency you actually want, and the number chosen. Nothing else can start.
- Week 2 — mapping and routing. Agree the object model from section 3 and the routing rule from section 4 in writing. This is a decision meeting, not a technical task.
- Week 3 — templates and a real test. Submit templates for approval early, then run twenty test enquiries from real phones and check every one landed correctly.
- Week 4 — one number, live. Move a single team across, watch a week of genuine traffic, fix the two things that surface, then bring everyone over.

The same sequencing discipline applies when the enquiries are seasonal — a new outlet opening or a subscription launch both bury an unfinished integration in week one. Broader automation sequencing is in marketing automation for Malaysian SMEs.
Key takeaway: Start business verification in week one and run live on one number before the whole team moves. Both steps are skipped by almost every stalled build we are asked to rescue.
Want the mapping and routing decided before the build starts?
We run the decision meeting, then wire it — so nothing waits on a question nobody answered.
See how our digital marketing team builds it →10. Sync the Enquiry, Not Just the Chat
Quick Answer: Take the connector unless a field forces a webhook, key contacts on the full international number, tag the source at creation, route to a named person, keep utility templates inside the open window, and review the whole thing once a quarter.
A WhatsApp CRM integration is worth building because it turns the least trackable channel most Malaysian businesses have into the most trackable one. Every enquiry gets a time, an owner, a source and a thread, and reporting on WhatsApp stops being guesswork.
What it is not is a piece of software you buy. The connector takes an afternoon. The decisions in sections 3, 4 and 8 are the actual work, and they are why two businesses on the same platform get completely different results from the same WhatsApp CRM integration.
We plan the mapping, the routing and the templates as one job through our digital marketing services. If enquiries are arriving but not converting, handling WhatsApp enquiries properly is the next read, and CRM costs for Malaysian SMEs covers the budget side. See the rest of what we do at ZenWeb.
Ready to stop losing enquiries between WhatsApp and your CRM?
Book a free 30-minute session. We'll map your enquiry flow, size the message costs and show you exactly what is falling through today.
Get my free strategy session →
11. Frequently Asked Questions
1. Can I connect a normal WhatsApp Business app to a CRM?
Not properly. The free Business app has no official CRM integration, so anything that claims to do it is reading your phone rather than the platform. Real syncing needs the WhatsApp Business Platform, which is a different account type on a number not being used in the consumer app.
2. Connector or custom webhook — which should an SME choose?
A connector, in almost every case. It reaches roughly the same share of enquiries as a custom build without a server to maintain or an endpoint to keep certified. Build a webhook only when a specific field mapping or routing rule your business depends on is impossible in the connector.
3. How much does a WhatsApp CRM integration cost to run?
Two lines: your CRM or connector subscription, and Meta's per-message charges. The second is smaller than most people expect, because inbound messages and replies inside the 24-hour window are free. Marketing templates are what move the bill.
4. Will old WhatsApp chats move into the CRM?
No. Integrations sync from the day they go live, so historical chats stay where they are. Export what you need before switching numbers, and treat the first month as your baseline rather than a comparison against past figures.
5. Can I bill WhatsApp in ringgit instead of US dollars?
Yes, from 1 April 2026 — but only on a WhatsApp Business Account created with MYR selected. An existing account's currency cannot be changed, so switching means creating a new account and rebuilding your templates and messaging tier.


