Module: Startup Passport (startup_passport / —)
Status: 🟡 Partially implemented (projection + deck generator; wallet-billed) · Last validated: 2026-09-06 · Priority: P2
A paid tool that generates startup financial projections + pitch decks. Validated against classs/KvStartupProjections.php, KvStartupProjectionsXlsx.php + schema.
A. Purpose
Founders produce investor-ready projections (XLSX) and decks. Monetized: ~₹350 per 10-edit block via wallet billing (see memory startup-projection-tool). Level B always-on module.
E. Feature registry (prefix SPP-)
| ID | Feature | Code / table | Status |
|---|---|---|---|
| SPP-001 | Startup passport profile | startup_passport | 🟢 |
| SPP-002 | Privacy controls | startup_passport_privacy | 🟢 |
| SPP-003 | Financial projections | KvStartupProjections, KvStartupProjectionsXlsx | 🟡 |
| SPP-004 | Pitch deck generation | deck generator | 🟡 |
G. Data model (2026-09-06)
| Table | Rows | Role |
|---|---|---|
startup_passport | 2 | founder profile records |
startup_passport_privacy | 1 | privacy settings |
kv_startup_projections | 0 | projection records (paid/unpaid, edits_used) — this IS a real table, |
| correcting the prior text below which said outputs were only "generated artifacts" with no store |
Correction (2026-09-06): the previous line here read "Projection/deck outputs are generated artifacts" without naming a table. They are, but the projection request/paid state itself is a row inkv_startup_projections(columns includepaid,status,billing_uid,edits_used), written/updated byKvStartupProjections::chargeForProjection()(:394-423). It is 0 rows now (unexercised), consistent with this page's 🟡 status.
H. Financial impact
Wallet-billed: ₹350 covers a projection + EDITS_INCLUDED=10 edits (KvStartupProjections::PRICE_INR :31, EDITS_INCLUDED :32). Billing hook confirmed: chargeForProjection(int $userId, string $projectionUid) (:394) — central path only, kv_billing_quotes → KVBillingEngine::createBillingFromQuote() → payBillingWithWallet() wallet-first (:66-79), with a GET_LOCK-guarded double-charge check (:405-414). Two further paid tiers exist in the same class: ₹99 for one extra edit beyond the 10-cap, and ₹1999 for unlimited edits + version management + PPTX export (:425-450) — neither was previously documented here.
Dependencies / change-impact
Depends on wallet (billing), Investor/VC (the deck feeds investor matching), AI/Bramha. Change-impact: billing hook changes affect paid generation — re-test the per-edit wallet debit.