Visit Capitalista
FinTech · Fundraising

Capitalista

End-to-end fundraising platform with investor dashboards, Stripe payments, and global compliance flows.

Year
2024
Platform
Next.js · TypeScript · Stripe
Status
Live in production
https://capitalista.info/
Project preview

At a glance

Payment integration
Stripe
User base
Global
In production
Live
Investor dashboard
Real-time
The challenge

What Capitalista needed.

The Capitalista team needed a fundraising platform that could handle global investors, multi-currency Stripe payments, and a real-time investor dashboard all with the polish that financial users expect.

Goals

  • Accept global investment in multiple currencies without manual reconciliation
  • Give investors a real-time view of their portfolio
  • Satisfy region-specific compliance before any money moves
Our approach

How we built it.

We built a Next.js platform optimized for trust signals, performance, and a clean dashboard experience that scales with investor count.

  1. 01

    Mapping the Compliance Maze

    2 weeks

    Capitalista's biggest unknown wasn't engineering. It was figuring out what each region actually required before money could move. We sat with the team's compliance advisor for a full afternoon and walked out with a checklist that turned into the onboarding flow's branching logic.

    • Region-by-region compliance checklist
    • Currency + payment-method matrix per region
    • Data model for investors, positions, and documents
    • Roadmap with the compliance gates marked in red
  2. 02

    A Design That Sells Trust

    3 weeks

    Financial users decide whether they trust you in the first three seconds. We spent more time on the marketing hero, the typography, and the empty-state copy than any other visual decisions in the project. "It looks expensive" was a real, intentional design goal.

    • Marketing site, dashboard, and onboarding in one Figma file
    • A type system the client could not break
    • Empty / error / pending states for every dashboard view
    • Motion notes. Restrained, never bouncy
  3. 03

    Building the Foundation

    3 weeks

    Next.js with mostly server-rendered pages because investors arrive from Google searches and decide in seconds. We split the marketing site (static, edge-cached) from the dashboard (server-rendered, authenticated) so neither side compromised the other.

    • Marketing pages on the edge, dashboard behind auth
    • Session model that survives plan and currency changes
    • Base UI from the design system
    • Staging environment that mirrors production exactly
  4. 04

    Stripe, KYC, and the Live Dashboard

    4 weeks

    We wired Stripe in two layers. The checkout for new deposits and the webhook handler for everything that happens after. The dashboard pulls from the same ledger Stripe writes to, so an investor's view is never more than a few seconds out of date. The KYC flow saves on every field. Investors can close the tab and pick up where they left off.

    • Multi-currency Stripe checkout (14 countries at launch)
    • Webhook handler with reconciliation report
    • KYC flow with progress persistence
    • Real-time portfolio dashboard + activity feed
  5. 05

    Launch and the Funnel Work

    2 weeks

    We instrumented every step of the funnel before launch so the team could see, on day one, which step lost the most investors. The first two weeks of data led to copy changes on the deposit page that lifted conversion by a noticeable margin without us writing a line of code.

    • Production launch at capitalista.info
    • Funnel instrumented from landing to first deposit
    • Monitoring + alerting for payment failures
    • A short ops runbook for the founders
The outcome

What we delivered.

Capitalista let a small team take investor money from anywhere in the world without an accountant chasing wire transfers or a founder copy-pasting balances into spreadsheets at midnight.

Capitalista is live at capitalista.info, serving investors globally with a real-time dashboard and end-to-end Stripe payments.

  • Multi-currency Stripe payments

    Investor checkout supporting global currencies, with webhook-driven reconciliation and automated receipts.

  • Real-time investor dashboard

    Live portfolio view with positions, returns, and activity feed refreshed without page reloads.

  • Compliance-aware onboarding

    KYC-style flow that captures investor profile, residency, and accreditation before unlocking access.

  • High-performance Next.js architecture

    Server-rendered pages tuned for trust signals and fast first paint: the polish financial users expect.

  • Conversion-optimized marketing site

    Above-the-fold value prop, social proof, and sign-up flow built around measurable conversion metrics.

  • Live globally

    In production at capitalista.info, serving global investors.

Before and after

What changed.

Before

  • Investor onboarding ran on email, PDFs, and a Google Form that asked the wrong questions for half the countries it served
  • Founders manually emailed a screenshot of investor balances every Friday. Sometimes Sunday
  • Wire transfers came in with mystery references; reconciling them took half a day per week
  • KYC documents lived in someone's Drive folder, sorted by whoever uploaded last
  • The marketing site was a Webflow template, which read like a Webflow template
  • Anyone outside the EU effectively couldn't invest. Currency conversion was on them
  • The team had no idea where in the funnel investors dropped off

After

  • A guided KYC flow that asks region-specific questions and saves progress if the investor steps away mid-form
  • Investors open a dashboard and see their position, returns, and last activity. Refreshed without a reload
  • Stripe handles every deposit in the investor's own currency; reconciliation is automatic and the founders haven't touched a wire reference since
  • All compliance documents encrypted, versioned, and tied to the investor record with an audit log
  • A marketing site we wrote from scratch around the trust signals financial users actually respond to
  • Investors in 14 countries can fund their position without leaving the platform
  • Funnel events instrumented end-to-end. The team knows exactly which step is leaking and why
Technology

Built with.

The tools behind the build, and why each one was chosen.

Frontend

Next.js
Marketing pages on the edge, dashboard behind auth. One framework, two very different performance budgets.
TypeScript
Money math and webhook payloads are both type-checked. We have not had a single "wrong currency" bug in production.
Tailwind CSS
A type system the client cannot break by accident. Trust-first design needs consistency more than it needs flair.

Payments

Stripe (multi-currency)
Investors check out in their own currency. Reconciliation that used to take half a Friday now happens in a background webhook.
Webhook reconciliation
Stripe is the only thing that writes to the ledger. The dashboard reads from it. Disagreements are impossible by construction.

Dashboard

Real-time portfolio view
Server cache invalidates on the events that actually matter. Deposit, position change, payout. Investors never see stale data.
Activity feed
Backed by an append-only event log so the investor's view is just a projection. We can replay history if anything ever looks off.

Marketing & SEO

Edge-cached static pages
Investors arriving from Google get a sub-second TTFB anywhere in the world. Trust starts before the page even loads.

Code Nativex

Typically replies instantly

👋 Hi there! Ready to build something amazing together? Chat with us on WhatsApp.

Start Conversation