Upinion · Web App 2.0 · Round 3 Hub

WhatsApp is the surface. Round 3 commits — and shows how it works.

Round 1 explored. Round 2 narrowed. Round 3 commits to WhatsApp and demonstrates the four conversation patterns Upinion needs as a real, clickable Flow prototype.

Below: the new interactive prototype is the headline. Then the research that brought us here, what's still open, and an audit trail of the round-1 and round-2 thinking.

Audience: Anvilda team-days critique session · Tracker: co-upinion#42 · Transcripts: 2026-05-13 · 2026-05-26 (morning + afternoon)

✓ Round 3 decision — locked

WhatsApp is the surface. PWA dropped.

Gerben (afternoon session, 2026-05-26): "PWA is great but if it's not used, that's the most important thing." The team agreed to commit.

Open the interactive prototype →

1The Round-3 prototype + the Round-2 audit trail

▶ Interactive WhatsApp Flows prototype
Round 3 — 4 conversation flows, each clickable end-to-end · 25 pages · realistic Flow simulation
upinion-whatsapp.pages.dev
⚖️ Fork in the road — DECIDED
The Round 2 decision page — WhatsApp wins. Kept live as audit trail.
upinion-fork.pages.dev

2Round 3 research — what we now know about WhatsApp

Findings that shaped the prototype
  • Flows are one-shot — ‘form stays open' is a myth. Workaround: keyword re-trigger (‘menu') + hub-menu within a single Flow (100 screens, forward/back).
  • Communities BROKEN — phone numbers visible to all members. Hard fail for anonymity.
  • Architecture: Channel (broadcast, free, unlimited followers) + WABA bot (Flows + chat) + ‘Message us' CTA bridge.
  • Stack pick: Turn.io (~$120/mo NGO discount, Flows-ready, fastest). Glific if self-hosting required.
  • Topup abuse: invitation tokens + 30-day Reloadly lockout. Accept 5–10% residual.
  • Trust at first contact (no blue tick for ‘Anwar'): warm referrals + zero-link first message + opt-in confirmation. Mirror WHO COVID pattern.
Next round agenda
  • Pick: Turn.io vs Glific commit.
  • Define the 4 production flows (use prototype as starting spec).
  • Plan the channel-bot architecture build (Channel for broadcast, WABA for interaction).
  • Source partner orgs willing to lend trust on first contact (UNHCR Algeria, IRC, local NGOs).
  • Pilot scope: # users · # topics · topup budget · success metrics.

3Earlier research — six findings that brought us here

Only 7%
Web is mostly dead as a front door

of Central Sahel migrants use websites for information. 47% don't use social media at all on the move. Algerian carriers zero-rate Facebook + WhatsApp — open web costs paid data. 43% smartphone ownership.

Source: MMC 4Mi June 2024 · DataReportal Digital 2026 Algeria
→ Demos 1 & 4 (web) are minority-path tests, not the spine.
60%
WhatsApp dominates Algeria

active users (26.5M). Messenger 33%, Telegram 36%. Meta banned general-purpose bots Jan 2026 — but surveys are explicitly allowed. Marketing templates $0.02–$0.05/msg in West Africa. Utility-in-window is FREE since April 2025.

Source: Sensor Tower Q3 2025 · TechCrunch Oct 2025 · Meta WABA pricing
→ WhatsApp is the highest-reach + zero-rated acquisition channel.
Free
Telegram = best bot tooling, worst reach

BotAPI, no approval, native survey + payment + proactive messaging. But only 36% Algeria reach, negligible in Mali/Niger, NOT zero-rated by Algerian carriers. ~1 week to MVP.

Source: Telegram Bot docs · Sensor Tower Q3 2025
→ Telegram is the longitudinal layer for users who opt in. Not a primary acquisition channel.
3 layers
Verification — the red line

SMS-OTP gates the topup + per-survey salted hash for dedup + mCaptcha-style proof-of-work for bot floods. NEVER naive phone hashing (FTC: reversible). No PII stored — only one-way fingerprints.

Source: FTC 2024 · GSMA Refugees & Identity · mCaptcha CACM
→ Same stack works across web, WhatsApp, Telegram (OTP arrives via SMS regardless of channel).
WhatsApp palette
Stream design specs (light mode)

#FFFFFF / #F0F2F5 / teal #128C7E / ink #111B21. Cairo variable font for Arabic+Latin. Two-layer scroll architecture (snap + overlay) to avoid mandatory-snap trap. 5-question session cap. Hide question count, show topup-progress fill only. Never autoplay audio/video.

Source: Meta design blog · Signpost IRC · Pollfish methodology
→ Marwan's 'reassuring social-media colors' instinct is data-supported.
8 components/screen
WhatsApp Flows = mobile-only, capped, no voice in-form

Flows supports text, dropdown, checkbox, radio, date/time, star rating, photo-picker. No voice input INSIDE a Flow (chat-layer only). No persistent hub. No delete-answer. Mobile-only — desktop users can't complete Flows. Approval 1–3 days.

Source: developers.facebook.com/docs/whatsapp/flows · wa.expert
→ Flows-heavy (Architecture A) wins UX. Chat-only (B) is faster MVP. Two-number (C) solves the hub-archive gap.

4Round-1 verdicts → Round-2 evolution

Demo 1 — Savane Info
✅ Closest to original thinking
→ Karambal (web spine, info/Q tabs, OTP gate, alert button)
Nor, Tarek, Augustine converged
Demo 2 — SOUT
🟡 Too sterile alone, borrow simplicity
→ pattern reused in One-Touch demos
Tarek
Demo 3 — Amawal
🟡 Right intuition, wrong target
→ Touareg-skin (security-motivated, not aesthetic)
Marwan
Demo 4 — Connexa PWA
❌ Wrong vibe (Western youth), one critical idea kept
→ Info ↔ Questions tabs split in Karambal
Rick liked the separation
Demo 5 — Omni-channel
❌ Drop the 'all channels at once' framing
→ pick ONE: Telegram (Tankari) or WhatsApp paired with Web
Gerben: 'we need to decide'

5Round-2 channel-diverse demos (kept live as reference)

Demo 1
Karambal
Web (PWA spine)
Best UX for the 7% who DO visit websites
upinion-demo-1.pages.dev
Demo 2
Tabarru
Facebook Messenger
Lowest-friction one-touch
upinion-demo-2.pages.dev
Demo 3
Saba
WhatsApp (chat-only)
Fastest MVP, no Flows review
upinion-demo-3.pages.dev
Demo 4
Yel
Web (TikTok-style)
Social-media-native scroll feed
upinion-demo-4.pages.dev
Demo 5
Tankari
Telegram bot
Free longitudinal layer + topic notifications
upinion-demo-5.pages.dev

6Entry paths — same demos, different doorways

Organic via Facebook ad
Mass-market acquisition. Highest reach. Lands on either WhatsApp click-to-chat OR web app.
Trusted Invite (Upinionator)
Personalised welcome video at entry. Skip intro/trust-building (already established). Separate entry-path component layered on whichever channel wins.
Telegram channel sponsorship
For Tankari users specifically. Cross-channel deep links from FB/WhatsApp also viable.

7Non-negotiable must-haves (15)

🔐
Verification: OTP + salted-hash + PoW
3-layer stack. SMS-OTP gates topup. Never naive phone hash.
🎤
Voice + text — equal first-class
In chat layer everywhere. (NOT inside WhatsApp Flows — that's a workaround)
🌐
Language picker first (6 langs)
Tamashek · Hausa · Bambara · Arabic · English · French. French LAST in picker order.
📡
Low bandwidth
Initial HTML+CSS+JS under 100KB. Lazy load. No autoplay on 2G.
☀️
Light mode mandatory
WhatsApp palette. No dark colors anywhere (Marwan). Especially the Stream demo.
🎭
Pseudonymous brand
Karambal · Tabarru · Saba · Yel · Tankari · Anwar. No Upinion / NL Embassy ever.
🔒
No PII stored
WA ID hash · per-survey salt · localStorage only. Private-mode exit warning.
🔔
Topic-based push notifications
User opts into topics. Notifications look like normal messages.
💸
Topup incentive (Reloadly)
Confirmed feasible in Algeria. Tied to ANSWERING, not signup.
📑
Info ↔ Questions separation
Tabs/columns/two-numbers — never mix them. (Rick's round-1 insight)
🚨
Report / alert button
Bi-directional. User pushes info up. (Tarek)
📐
Cairo variable font
Arabic + Latin in one file. Noto Sans fallback for Tifinagh.
Star rating + skip + delete-answer
Where channel allows. Flows lacks delete-answer — known gap.
📊
5-question session cap
Show topup progress as fill. NEVER 'Q3 of 40' (Pollfish: count = anxiety).
🎬
Personalised welcome video for referrals
When user arrives via Upinionator link. (Tanya / H Foundation precedent)

8Open questions — and Upii's recommendations

Web app vs WhatsApp vs Telegram — which is the spearhead?

Upii's recommendation
HYBRID: WhatsApp for acquisition (max reach + zero-rated) + Telegram bot for the longitudinal-engagement subset (free + best tooling) + Web app as deep-link destination for the 7% who DO visit URLs.
Open the Fork-in-the-road page →

Within WhatsApp: Flows-heavy or chat-only?

Upii's recommendation
Pilot with chat-only (Saba — Architecture B). Validate demand. Then upgrade to Flows-heavy (Anwar — Architecture A) once Meta business verification + microsite are in place. Two-number architecture (C) for the info/Q separation problem.
Open the WhatsApp Flows showcase →

Touareg vs migrant — same product, different skin?

Upii's recommendation
Deployment-time skin (different brand, domain, visual language) — not a separate codebase. Marwan's security argument: 'if one is caught, the others continue.' Threat-model rationale, not aesthetic preference.
(Implemented as variant deploy of whichever demo wins)

Brand-per-project: bespoke or skin?

Upii's recommendation
Same backbone, AI-generated brand veneer per project. Rick's maintainability concern is legitimate. End-to-end test suite verifies each project's brand doesn't break the flow.
(Architectural — not visible in any demo)

9Hard constraints (apply to every demo)