An illustrative enquiry arrives at a small commercial landscaping company: “Can you give me a price to redo our office courtyard next month?” The message shows real intent but leaves the business without a site, dimensions, access details or a clear next step. Sending an instant price would be reckless. Leaving the message in one employee’s WhatsApp inbox creates a different problem.
A useful agent asks only the questions that help staff decide what happens next. It records the customer’s own answers, finds or creates the right CRM records and assigns someone who can scope the work. That design is a practical form of custom AI agent development, with most of the effort going into identity, routing and safe write-back.
A WhatsApp sales enquiry agent succeeds when every inbound conversation becomes a complete, traceable and human-owned next step. It can organise the opportunity and follow an approved quote later. Commercial authority stays with the people and systems the business has authorised.
This workflow uses a custom integration through the WhatsApp Business Platform and its API. Installing the WhatsApp Business App alone does not create CRM associations, routing rules or write permissions. For the wider channel picture, see the WhatsApp AI agents overview.
Define a Complete Handoff Before Asking Questions
“Qualified lead” means different things in every service business. A landscaping company may need the site location and broad project type before assigning an estimator. An IT provider may route by service line and current technology. The CRM cannot supply this definition, and the language model should never invent it.
Start with the decision the next employee must make. Can staff scope the request from the information supplied? Should they schedule a discovery call, ask for documents or decline work outside the service area? The agent’s questions should gather only what changes that decision.
A complete handoff usually needs:
- the service the customer says they want
- location and requested timing
- customer-stated constraints or required documents
- the agreed next action
- a CRM contact and opportunity match, or an explicit review flag
- a named owner or monitored exception queue
Keep customer statements separate from agent interpretation. “Needs completion next month” is a customer requirement. “High-value opportunity” is an internal classification that needs a documented rule. Unsupported guesses about budget, company size or buying authority should never become CRM facts.
The target is a staff member opening one record and understanding the request, the source conversation and the promised next action. If they have to search WhatsApp, ask the same questions again and reconstruct who owns it, the automation merely moved the clerical work.
Follow One Enquiry From Ambiguity to an Agreed Next Step
Return to the courtyard enquiry. The agent first clarifies whether the customer wants design, installation or both. It asks for the property location because the company has a defined service area. It then requests the intended timing and whether the site is available for a survey.
These questions stay within intake. The agent avoids calculating a price from a vague description or implying that next-month delivery is available. Once the customer agrees to a site survey, the conversational task is complete: capture the requirement, confirm the proposed next step and route it to the correct team.
A practical sequence is:
- Preserve the inbound message, timestamp and conversation reference.
- Extract only customer-stated facts and flag missing qualification fields.
- Ask the smallest useful clarification.
- Search existing CRM records using the business identity rule.
- Create or associate the contact, communication and opportunity.
- Apply configured routing and create a deadline or monitored exception.
- Confirm what was received and what will happen next.
Confirmation wording matters. “A project manager will review this and reply by Thursday” is valid only if the routing system accepted the assignment and the business has authorised that deadline. If assignment fails, the agent should acknowledge receipt and send the case to an exception queue without naming an owner it could not set.
The AI agents in sales guide examines where human judgement matters across the full sales cycle. This workflow owns a smaller slice: inbound service intake, CRM handoff and bounded follow-up on an approved quote.
Search the CRM Before Creating a Contact
A WhatsApp number is useful search input, but it is not a universal identity key. Numbers can be shared by a household or business, recycled, entered with inconsistent country codes or linked to several existing records. Automatic creation from every new format produces duplicates; automatic merging can attach a private conversation to the wrong person.
Normalise the number, search candidate records and apply a written match policy. An exact combination of business-defined identifiers may allow an automatic match. Ambiguous candidates go to staff with the relevant evidence. The system should preserve its correlation ID so a reviewer can trace the conversation regardless of the final contact decision.
HubSpot provides one concrete example. Its Object APIs documentation supports record search, creation, associations and upserts across contacts, deals and communications. These capabilities make the integration possible. They do not define which two records represent the same person for a particular business.
HubSpot automatically assigns contact record IDs and treats email as an additional unique identifier. Its APIs also allow a business to define custom properties with unique values. The documentation does not make phone a default unique identifier.
Search discovers candidates. It cannot make a subsequent creation safe against concurrent requests or retries. For automatic creation, enforce a stable business identifier with a custom unique property and use a supported upsert, or handle a uniqueness conflict by retrieving the record that was created first. Keep ambiguous identity matches with staff.
Separately, maintain a durable idempotency ledger for each inbound message or intended business action. Before writing, check whether the action already completed and reuse its stored CRM IDs. Coordinate workers against that ledger and recover uncertain writes before retrying. A conversation reference helps trace the work; it does not itself stop duplicate writes.
Create a Traceable Opportunity and Assign Ownership
Once identity is resolved, the workflow records the inbound communication and associates it with the contact and opportunity. Preserve the customer’s wording, source channel, timestamp and conversation reference. The staff summary can be concise, but it should distinguish direct statements from derived labels.
HubSpot’s Deals API guide specifies dealname and dealstage; include pipeline for an account with multiple pipelines or when the workflow should avoid relying on the default. Stage and pipeline values use the account’s internal IDs. An owner assignment similarly uses its owner ID. The business still defines routing rules and what each stage means.
That gives the build several concrete acceptance tests:
- invalid or missing pipeline configuration sends the case to a monitored exception
- ambiguous identity resolution prevents a silent contact association
- a successful write stores the CRM record IDs with the WhatsApp conversation
- routing failure prevents the agent from promising a named owner or deadline
Create the opportunity at the stage that matches the business definition. A new inbound message is not automatically a qualified deal. If qualification needs staff review, the record should say so. Inflating pipeline stage at creation makes later conversion reporting unreliable.
Where the agent also writes tasks or calendar events, decide which system owns the next-step date and how partial failure is repaired. The CRM and ERP integration guide covers the wider write-back and recovery problem.
Keep Price, Scope and Commitments With an Authorised Owner
The agent can restate what the customer asked for and what the business has already approved. It should never turn missing information into a binding scope or estimate. A model-generated number can sound confident while ignoring site access, material choice or contractual conditions.
For the landscaping enquiry, the agent may say that the estimator will review the photos after the customer supplies them. In an illustrative test case, it cannot promise the job will cost CHF 8,000 or start on a given date unless an authorised system has supplied those exact terms for this opportunity. Test values should be clearly marked and excluded from customer-facing production records.
Quote generation is a separate workflow. This article assumes an authorised employee or system has already produced and approved the quote. The sales enquiry agent may attach that approved document, record its status and schedule a permitted follow-up. It does not rewrite scope, negotiate price or accept the customer’s response as a contract without the business’s defined approval process.
Escalation rules should cover requests for discounts, unusual contractual terms, delivery commitments and conflicting customer instructions. Pass the live conversation and opportunity reference to the owner. A bare notification with no context creates another inbox for staff to triage.
This boundary also helps the customer. They receive a clear acknowledgement and know who will decide. They are spared a fast promise that the delivery team later has to retract.
Treat Quote Follow-Up as a Separate Permissioned Action
The WhatsApp Business Messaging Policy permits free-form replies for 24 hours after the user’s latest message. A delayed first business response does not restart or extend that window. Outside it, a business-initiated Platform message requires an approved template used for its designated purpose.
When an approved quote enters follow-up, schedule a decision rather than an unconditional message. Immediately before submitting the message to the WhatsApp API, check:
- the quote still has an open status
- the contact has the required WhatsApp permission and no later opt-out
- no reply, complaint or staff-owned conversation has superseded the job
- the current 24-hour window and approved template allow the intended message
- the opportunity remains assigned under the business routing rules
A reply pauses the automated sequence and returns the conversation to the live handler. It does not authorise an unlimited promotional campaign. Closed-won, closed-lost, withdrawn and replaced quotes should cancel unsent local follow-up jobs through explicit status mappings. Once the provider accepts a message, the workflow cannot assume it can recall it. A later customer reply or status change may arrive too late to stop that message.
Meta’s Business Platform pricing page says charges vary by recipient market and message category. It lists service messages and responsive utility messages as free of Meta charges, while other implementation costs remain. A sales follow-up supplier should model the actual approved templates and recipient markets instead of promising a universal rate or free delivery.
Permission and template rules come from the Platform. The business remains responsible for its applicable legal basis, notices and local marketing requirements. Opt-outs must propagate to every queue that can initiate contact.
Measure Handoff Quality and Recoverable Staff Time
Speed is worth measuring, but a quick incomplete record can create more work. Track the share of inbound enquiries that reach an accountable owner with the required fields, alongside assignment time, missing-data exceptions, ambiguous identity reviews and staff corrections.
In an illustrative week, a business receives 25 inbound WhatsApp enquiries. Suppose 16 contain enough information for a staff-owned next step and each complete handoff saves 7 staff minutes. The recoverable capacity is 16 × 7 = 112 minutes, or 1 hour 52 minutes. If 4 of those 16 lead to a scheduled consultation, the observed consultation rate is 4 divided by 16 = 25% for that cohort. These illustrative results predict neither revenue, win rate nor the value of later follow-up.
Review outcome quality with reply and opt-out signals, duplicate-match reviews and staff handling time. Open rates and vendor conversion multipliers cannot substitute for a completed consultation, accepted quote or other business-defined sales outcome.
For planning, Orange ITS uses an illustrative range of CHF 5,000 to 18,000 for a narrow proof of concept and CHF 18,000 to 60,000 for one production agent. A pilot can validate question flow, CRM search and a sandboxed opportunity write. Production work adds permission controls, associations, routing, exception queues, monitoring and test coverage for partial failures.
The strongest fit is a service business with repeatable intake questions, a maintained CRM and clear ownership rules. Teams with low enquiry volume or unresolved pipeline definitions should first standardise their handoff. That conclusion fits the wider pattern described in AI agents for small business: choose a bounded workflow with visible operating evidence.
The Finished Output Is an Opportunity a Person Can Act On
Judge the workflow from the receiving employee’s screen. The right contact and opportunity should carry the original enquiry, clarified facts, source conversation, current status, agreed next step and accountable owner. Missing or ambiguous data should appear as an exception instead of a fabricated answer.
Then test the later states. A quote is approved, the customer replies, permission changes, an employee takes ownership and the opportunity closes. Each event should update or cancel any unsent automated action. When the CRM and WhatsApp thread tell the same story, staff can act without reconstructing the conversation or correcting a promise the agent had no authority to make.
Frequently asked questions
What does a WhatsApp sales enquiry agent do?
It turns an inbound service enquiry into a traceable, staff-owned next step. The agent captures the service, location, timing and relevant constraints, searches the CRM before creating records, attaches the conversation to the correct opportunity and applies configured routing. It confirms receipt and agreed actions while leaving scope, price, delivery commitments and final acceptance with an authorised person or system.
Can a WhatsApp phone number identify one CRM contact?
No universal rule makes a WhatsApp number one unique person. Numbers can be shared, recycled or stored in different formats. Normalise the number for search, then apply the business identity policy using additional evidence where available. Present ambiguous matches to staff rather than merging records silently, and retain a conversation correlation ID so the decision can be audited.
Can the agent prepare and approve a customer quote?
The workflow in this article does not draft or approve quotes. It can collect stated requirements, record them accurately, confirm that an authorised employee owns the next step and later follow up on an existing approved quote. Binding scope, negotiated price, delivery dates, contractual terms and final acceptance remain with the person or system that the business has authorised.
When can the business follow up on WhatsApp?
The business may send free-form replies during the 24-hour window after the user’s latest message. A delayed first reply does not restart or extend that period. Later business-initiated follow-up requires the relevant opt-in and an approved template used for its designated purpose. Recheck quote status, replies, opt-outs, complaints and staff ownership immediately before submitting the message to the WhatsApp API.
How much does a WhatsApp sales enquiry agent cost?
For planning, Orange ITS uses an illustrative range of CHF 5,000 to 18,000 for a narrow pilot and CHF 18,000 to 60,000 for one production agent. CRM identity rules, record associations, routing, exception handling, WhatsApp setup, testing and monitoring determine the actual scope. Meta message charges vary by recipient market and category, and provider plus model costs may continue after launch.