Build cheap-first. Let revenue fund the climb. Order features so each phase pays for the next — spend money only after the previous phase proves revenue.
Build cheap-first, regulated-last. Every phase must be cash-flow positive before you fund the next. Never build the expensive, regulated parts on hope.
1. Cost to build & run — static < server-light < server-heavy < money-movement
2. Revenue unlocked — does it create a reason to pay today?
3. Regulatory risk — does it touch money, personal data, or legal liability?
The sequence below is ordered so you climb the cost curve only after revenue justifies it.
What you're testing: will people use the free calculator? Do they ask "what do I do next?" Do they say "can you just do the paperwork for me?"
The manual hack: when someone asks for help, do it by hand over WhatsApp and charge RM99–149. No software. You are the backend. This validates willingness-to-pay before writing a line of backend code.
≥10 Resolution Packs sold manually. People pay for the paperwork. Proceed.
Why this is first: highest margin, lowest regulatory risk, monetises the traffic Phase 0 already proved. One-time payments to your own account are clean — no e-money issues.
Tech: a Cloudflare Worker that fills PDF templates. Billplz/FPX Checkout for the RM149.
Consistent pack sales + users asking "can you explain this result to me?" Proceed to AI integration.
Deliberately small and scoped. Does not add user-facing features — makes the existing calculator meaningfully better by explaining results in plain BM.
Three narrow features only:
Data boundary — enforced in Cloudflare Worker before every AI call:
What does NOT change at this phase: Faraid calculation remains deterministic code. Warisan Score calculation remains deterministic code. No document parsing — no IC or property data goes near AI.
AI explanation feature shows measurable lift in Resolve pack conversion. Proceed.
Why this is second: the retention engine and data moat. Cheap to run — tracking is just database reads/writes. Every month of data deepens lock-in.
Critical scope discipline: users log payments manually, generate tenancy agreements, see disbursement splits. No money movement, no automated notifications yet.
Subscribers retain past month 2. Users ask "can it remind my tenant automatically?" Proceed.
Margin protection: email reminders only on free tier (near-free). WhatsApp reminders only on Family tier — the costly channel becomes the paid upsell.
MRR comfortably exceeds infra + messaging cost. Legal structure for money-movement confirmed with fintech lawyer. Proceed.
Why this is last: most regulated. Routing tenant money may trigger Bank Negara e-money rules. Structure so funds flow directly tenant→landlord — Warisan never holds the money. Confirm this exact structure with a lawyer before writing code.
Payment volume flowing, reconciliation working, no regulatory flags. Proceed.
Triggered by one of three events: monthly Anthropic bill exceeds RM180, a signed institutional contract requiring Malaysian data residency, or a FIKRALab cohort milestone.
Self-hosted Qwen3 8B replaces Anthropic for Category B. Anthropic kept as hot fallback. Category C (document parsing) begins — Malaysian data centre only, data never leaves Malaysian soil.
Not driven by a product decision — driven by an institutional contract requirement. Do not invest in Malaysian data centre infrastructure until a contract requires it. The contract funds the infrastructure.
| Phase | What | Monthly Cost | Revenue | AI | Reg Risk |
|---|---|---|---|---|---|
| 0 | Validate | ~RM 20 | Manual RM149 | None | None |
| 1 | Document packs | ~RM 100–250 | RM149 one-time | None | Low |
| 1.5 | AI explanation layer | ~RM 0–50 | Conversion lift | Groq → Anthropic | Low |
| 2 | Rental tracking | ~RM 150–350 | RM19/mo | Category B continues | PDPA |
| 3 | Notifications | ~RM 300–900 | Upsell driver | None new | Medium |
| 4 | Payment collection | Gateway % | Txn fee | None | HIGH |
| 5 | Sovereign AI + API | ~RM 180–350 | API licences | Qwen3 8B self-hosted | Medium |
| 6 | Full sovereign stack | RM 1,500–3,000 | Institutional | All categories | High |