Overview & Scope
Decided ▾ServiceHive (working name) is a WhatsApp-based marketplace that connects customers in Maun, Botswana with vetted tradespeople — electricians, plumbers, and HVAC technicians.
The MVP validates one question: Will customers book technicians through WhatsApp and complete jobs? MVP Success means 5–10 successful jobs flowing through the platform.
Stack:
- WhatsApp Business App (free)
- (An optional upgrade to ManyChat (~$15/mo) is available if interactive button menus are needed - requires Meta Business Verification (see Section 9))
- Airtable (free tier)
Service Categories
Decided ▾Three trades only. Expanding to additional categories happens only after the MVP proves the model.
| Trade | Services Covered |
|---|---|
| Electrician | Installations, faults, stoves, solar, Starlink, satellite dish, gates, electrical fences |
| Plumbing | Installations, water leaks, geysers, pipe bursts, blockages, sanitary ware replacement, water reticulation |
| HVAC | Installation, fault repair |
Coverage Area
Decided ▾Maun, Botswana only.
Customer WhatsApp Flow
Decided ▾When a customer messages the business WhatsApp number, the following flow unfolds:
Technician Dispatch Flow
Decided ▾Status updates use natural language — technicians message the dispatcher in their own words ("I'm heading there now", "Job is done").
Job completion requires dual confirmation — both the customer and the technician must confirm the job is done before the Airtable record is marked "Completed."
Technician Requirements & Onboarding
Decided ▾All six requirements are non-negotiable for technician onboarding:
| Requirement | Verification |
|---|---|
| Trade qualification | Verified certificate or demonstrable competence |
| Smartphone | Required for WhatsApp communication |
| 3+ years experience | Verified |
| Police clearance | Certificate required |
| Affidavit | Content undefined — see Section 17 |
| Reference check | Required |
The technician replies "I AGREE" to confirm. The chat record serves as the working agreement.
Airtable Database Schema
Proposed ▾Three tables in Airtable's free tier. Service subcategories are intentionally excluded to reduce complexity.
Customers
| Field | Type | Notes |
|---|---|---|
Customer ID | Auto-number | Primary key |
Name | Text | May differ from WhatsApp display name |
Phone | Phone | WhatsApp number (unique ID) |
Location | Text | Free text — address or Maun area |
Notes | Long text |
Technicians
| Field | Type | Notes |
|---|---|---|
Technician ID | Auto-number | Primary key |
Name | Text | For WhatsApp dispatch |
Phone | Phone | For WhatsApp dispatch |
Skills | Multi-select | Electrician / Plumbing / HVAC |
Areas Covered | Text | Free text — Maun neighborhoods |
Current Availability | Single-select | Available / Busy / Off Duty / Unreachable |
Dispatch Priority | Number | Higher = called first |
Qualification · Smartphone · 3+ Yrs · Police · Affidavit · Reference | Checkbox ×6 | Verification flags |
Rating | Number (1–5) | |
Status | Single-select | Active / Inactive / Suspended |
Jobs
| Field | Type | Notes |
|---|---|---|
Job ID | Auto-number | |
Customer · Assigned Tech | Link → tables | Links job to relevant customer and technician in Customer and Technician tables |
Service Category | Single-select | Electrician / Plumbing / HVAC |
Description · Location | Long text · Text | |
Status | Single-select | Pending → Dispatched → Accepted → En Route → Working → Completed → Cancelled → Disputed |
Dispatch Attempts | Link → Technicians (multi) | Which technicians did we try contact |
Dispatch Notes | Long text | Ordered log: "1. Thabo — no answer. 2. Mpho — declined. 3. Obakeng accepted" |
Fee · Payment Status | Currency · Single-select | Unpaid / Paid / Disputed |
Date Created | Date/Time | |
Date Completed | Date/Time |
Customer Acquisition
Decided ▾Phase 1: Personal network. The fastest path to the first 5–10 test jobs is directly messaging contacts who might need tradespeople or know someone who does. Zero cost, zero overhead, same-day potential.
WhatsApp Infrastructure Decision
Needs Decision ▾Two paths, with a clear trade-off between speed and polish:
| Business App (free) | API via ManyChat | |
|---|---|---|
| Cost | Free | ~$15/mo + per-convo fees |
| Setup time | Same day | 1–5+ days (Meta verification) |
| Blockers | None | Requires business registration docs |
| Interactive menus | No — numbered text replies | Yes — tappable buttons & lists |
| Automated flows | Greeting & away only | Full visual flow builder |
| Multiple agents | 1 phone + 10 linked | Unlimited shared inbox |
The API's "test mode" (5 pre-approved recipients, temporary Meta-owned number) cannot be used in production — it is sandboxed.
Success Metrics
Decided ▾The MVP succeeds if:
- Customers request services through the WhatsApp number
- Technicians accept and complete jobs
- The WhatsApp workflow functions end-to-end (request → dispatch → completion → dual confirmation)
- Customers are willing to pay for the service
Open Questions
These decisions are unresolved. Your input shapes the final plan. All responses auto-save to your browser.
Monetization Model — Supply-side vs Demand-side
Needs Input ▾Who pays the platform, and where does the money flow? Two fundamentally different models:
| Supply-side (tech pays you) | Demand-side (customer pays you) | |
|---|---|---|
| Money flow | Customer pays tech directly. Tech owes you a per-job commission. | Customer pays platform (e.g. Orange Money). Platform pays tech minus cut. |
| MVP build effort | Nothing — track jobs, bill techs weekly. | Payment request flow in WhatsApp or manual follow-up. |
| Customer experience | Pays tech like normal. Platform invisible in money flow. | Pays a brand they may not trust yet. Adds friction. |
| Leakage risk | Higher — tech & customer can cut you out. | Lower — you own the payment relationship. |
| Cash flow | You bill after jobs. Techs may delay. | You collect at completion. Faster. |
Commission Amount
Needs Input ▾If the monetization model involves the platform taking a cut, the amount needs to be defined. The original plan proposed BWP 10 call-out + BWP 5/hr — but for a 1-hour job, that's unsustainable even at 20 jobs/month.
B2B Subcontract Model
Needs Input ▾The original plan distinguishes two customer types: Businesses (lodges, shops) and Residential. For businesses, it describes a "subcontract" model — quoting jobs, branding them, managing the account — where the technician acts as your sub.
This is fundamentally different from the residential model (simple dispatch + commission). It implies the platform is the prime contractor: issuing branded invoices, setting standards, and potentially carrying liability.
- Who sets the price — you quote the client and pay the tech, or the tech quotes and you add markup?
- What does "stamps" and "account" mean operationally — branded invoices? A monthly account?
- Is the B2B model for MVP week 1, or a later phase after residential validation?
- Walk through: a lodge needs an electrician. What happens start to finish?
Dispatcher Hours
Needs Input ▾In the MVP, the founder is the dispatcher. Every job flows through you: receiving the customer's WhatsApp message, contacting technicians sequentially, and relaying confirmations. The bottleneck isn't technician availability — it's yours.
When a customer messages at 8pm on a Saturday, do they get a reply? This determines the WhatsApp greeting/away message and the promise made to customers.
Commission Collection Mechanics
Needs Input ▾If monetization is supply-side (technicians pay you), the platform never holds the customer's money. The technician completes a job, gets paid by the customer directly, and now owes you a cut. How do you actually collect it?
Below are four approaches. Each is described as a concrete scenario so you can see exactly how the money moves.
Option A — Weekly invoicing
Throughout the week, you log every completed job in Airtable with the commission owed. Every Saturday, you WhatsApp each technician a summary: "This week you completed 4 jobs. Total commission due: BWP 120. Please send via Orange Money to 72 XXX XXXX." The technician sends the payment. You mark it received in Airtable.
Option B — Prepaid wallet
Before a technician can take their first job, they deposit a float with you — say BWP 200 via Orange Money. Every time they complete a job, you deduct the commission from their wallet balance. When their balance runs low, they top it up before taking more jobs. You track the wallet balance in Airtable.
Option C — First-job trust test
A new technician's first job through the platform is commission-free (or half-commission). They keep the full payment from the customer. On their second job, normal commission kicks in. If they pay their commission on the second job without issue, they stay on the roster. If they dodge payment, they're dropped — you've only lost one job's commission.
Option D — Switch to demand-side collection
Instead of the customer paying the technician directly, the customer pays you (via Orange Money payment request after the job is done). You then pay the technician their share minus your commission. The collection problem disappears because you hold the money from the start.
Dispute Handling Scripts
Needs Input ▾The platform's stance is mediation, not liability — you facilitate resolution but are not the liable party. This aligns with a matchmaker monetization model: your margin doesn't justify carrying insurance-level risk.
However, you still need to know what to say when things go wrong. Three scenarios that will happen:
Affidavit — What Is It?
Needs Input ▾Technician onboarding requires an "affidavit" as one of six non-negotiable documents. But the original plan never defines what this affidavit covers. Possibilities:
- Sworn statement of good character / no criminal record
- Confirmation of identity and residence
- Commitment to abide by platform rules (commission payment, conduct, reporting)
- Declaration of qualifications and experience
Minimum Customer Data for Dispatch
Needs Input ▾The original plan mentions collecting: location, photo/video, description, name, phone, address, GPS, preferred time, and emergency status. That's a lot of fields over WhatsApp — especially with numbered text replies.
The proposed minimum is: service category, location, description, and phone (WhatsApp provides phone automatically). Everything else can come in follow-up.