Investor Reporting Platform
A proposal for Westgate Capital (fictional client — this is a sample)
- Prepared for
- Sarah Chen, COO
- Prepared by
- Chris Mendenhall
- Date
- April 27, 2026
- Valid through
- May 11, 2026
1. Engagement summary
Mendenhall & Co will build Westgate Capital’s internal investor reporting platform — a single tool replacing the current Excel + DocuSign + shared Drive workflow. Scope includes the full quarterly reporting lifecycle, AI-assisted commentary drafting against actuals, and a tenant-isolated investor portal for distribution. Fixed price: $42,000. Timeline: 6 weeks. Start date: May 19, 2026.
2. What I learned during Discovery
The current workflow
- Each quarter, your team pulls data from QuickBooks + Carta + a manual fund accountant spreadsheet
- Quantitative tables get assembled in Excel, then commentary is written in Word, then both are merged into a PDF
- Reports get distributed via individual email + DocuSign for acknowledgement, with no central record of who’s read what
The pain
- Each quarterly cycle takes ~6 person-weeks of senior staff time
- Two LP complaints last year about late or inconsistent reporting
- Manual data assembly creates errors that require post-publication corrections
- You have no visibility into which LPs have actually opened quarterly reports
The constraints I’m building around
- SOC 2 Type II audit is in progress; need audit-friendly logs
- Existing Carta API integration must stay; QuickBooks data ingestion needed
- Distribution must support DocuSign-style acknowledgement
- Branded portal must match existing Westgate visual identity
3. What I’m proposing to build
Core experience.Your team logs in to an internal admin app, pulls a fresh quarter’s data with one click, reviews AI-drafted commentary against the numbers, edits where needed, and publishes. LPs receive an email with a link to a branded investor portal where they can view the report, download a PDF, and acknowledge receipt — tracked centrally.
Key features
- Data ingestion: automated pulls from Carta and QuickBooks, with a manual override for fund-accountant adjustments
- AI-assisted commentary:Claude drafts narrative sections from the quarter’s actuals; your team reviews and edits before publishing
- Quarterly report builder: structured templates with quantitative tables, AI commentary, and free-form sections
- Investor portal: tenant-isolated access where each LP only sees their own funds; branded with Westgate visual identity
- Acknowledgement tracking: DocuSign-style read receipts with audit log
- Audit-friendly logging: every read, edit, and publication is logged for SOC 2 compliance
Out of scope (v1)
- Mobile native app (responsive web only)
- Real-time data streaming (quarterly batch model only)
- K-1 generation or tax document distribution
- White-labeling for external advisors
- Direct LP portfolio modification (read-only on the portal side)
Note on the scope-out list: if any of these become priorities later, they can be added as scoped follow-on engagements after v1 ships.
4. Timeline
| Week | Milestone | Demo |
|---|---|---|
| 1 | Auth + roles + data model + UI shell | Login flow, schema |
| 2 | Carta + QuickBooks ingestion | Working data pull from a real quarter |
| 3 | Report builder + AI commentary drafting | Draft a real Q1 report end-to-end |
| 4 | Investor portal with tenant isolation | LP-side view + access controls |
| 5 | Acknowledgement + audit logging + polish | Full feature walkthrough |
| 6 | Deploy to production, credentials handoff | Live launch with test LP |
Demos: every Friday at 10am PT, 30 minutes, on Zoom. Recording sent afterward.
Start date: May 19, 2026. Estimated launch: June 30, 2026.
5. Pricing
Total fixed price: $42,000
| Item | Amount |
|---|---|
| Discovery Sprint (already paid) | $1,500 |
| Discovery credit toward build | −$1,500 |
| Build (weeks 1 – 6) | $42,000 |
| Total due | $42,000 |
Payment schedule
Three milestones tied to demos, not calendar dates:
- 40% on contract signing($16,800) — kick-off and first sprint
- 30% at week 3 demo($12,600) — Carta ingestion + AI drafting working end-to-end
- 30% at production launch($12,600) — credentials transferred, repo handed over
Invoices via Stripe. Net 7 payment terms. Work pauses if any invoice is unpaid 14+ days past due.
6. Technical approach
Stack
- Frontend: Next.js 16 (App Router), React 19, TypeScript strict, Tailwind v4, shadcn/ui
- Backend: Node.js with Next.js server actions
- Database: Postgres (Neon for production, Docker locally) with Drizzle ORM
- Auth: NextAuth 5 with TOTP MFA on admin accounts
- Hosting: Vercel + Cloudflare R2 for PDF storage
- AI: Claude Sonnet 4.6 via the Anthropic SDK
- Email: Resend for transactional notifications
Security baseline
- Per-request CSP nonce + HSTS + strict Permissions-Policy
- Parameterized DB queries (no SQL injection surface)
- Rate-limiting on auth + form endpoints
- Soft-delete + append-only audit log on every mutation
- TOTP MFA on admin accounts
- Tenant isolation enforced at the query layer (LPs can only ever read their own data)
- SOC 2-friendly logging from day one
7. What you get at the end
- Source code on Westgate Capital’s GitHub organization
- Production deployment on your Vercel and your Neon database
- Admin credentials for every account I created on your behalf
README.mdwith run / deploy / restore instructions- Loom walkthrough of the codebase (~20 min) for any future developer
- 30 days of post-launch support — bug fixes, dependency updates, small tweaks at no charge
You own everything. If we part ways, the app keeps running and any developer can pick it up.
8. What I need from you
- 30 minutes per week for the Friday demo
- Async questions answered within 2 business days
- Carta API key + QuickBooks read-only credentials by May 22
- Sample anonymized quarterly report from Q4 2025 by May 19
- Brand assets (logo, fonts, colors) by May 26
- Signed proposal returned within 14 days to lock in the start date
9. Why me
I’ve designed and built two production-grade B2B apps in this exact shape as concept work — TenantLens (a CRE platform with tenant-isolated investor reporting), and a prospecting copilot for B2B insurance brokerages. Both are live, clickable, and on my portfolio for review. I’m a solo practice, which means you’ll work directly with the person writing the code — no agency handoffs, no junior-dev surprise. Real demos every week, fixed price, you own the IP.
10. How to accept
To accept this proposal, reply to my email with “Approved”and the preferred kick-off date. I’ll send the Stripe invoice for the 40% deposit and a signed copy of this document for your records. Work begins the day the deposit clears.
If there are changes you’d like before signing, reply with notes — one revision is included in this proposal.