Problem (Inspiration)

Teens and young adults are thrown into the real world with zero financial literacy. Most finance apps are built for adults who already know what they're doing — they're clunky, overwhelming, and definitely not something a 16-year-old would voluntarily open. We talked to hundreds of high school and college students, and the same thing kept coming up: "I want to be better with money, but everything out there feels like it was made for my parents."

There's a massive gap. Schools don't teach personal finance. Parents struggle to have money conversations. And the few apps that target younger users are either too basic (just a spending tracker) or too complex (full-on investment platforms). Nobody was building something that felt native to how Gen Z actually interacts with technology — mobile-first, social, gamified, and genuinely helpful.

On top of that, parents had no clean way to oversee their teen's finances without being invasive. There was no tool that let a family manage money together while still giving teens autonomy over their own accounts.

We built Koda Finance to fix all of this.


Solution

Koda Finance is a personal finance app built specifically for teens, young adults, and families. It combines real bank account integration, AI-powered financial coaching, gamification, and parental oversight into one platform that actually feels good to use.

Here's what makes it different:

Real banking, not manual entry. Users connect their actual bank accounts through Teller's API. Transactions sync automatically, balances update in real-time, and everything is categorized intelligently. No spreadsheets, no manual imports.

An AI financial assistant named Koda. Powered by OpenAI's GPT-4, Koda is a conversational financial coach that lives inside the app. It can answer questions about spending habits, help set up budgets, suggest savings goals, explain financial concepts in plain language, and even let users log transactions through natural conversation ("I spent $12 on lunch today") when they don’t have an account linked with Teller.

Gamification that actually works. We built an XP system, trophies, levels, and achievement badges. Users earn points for logging transactions, hitting budget targets, contributing to savings goals, and engaging with their finances regularly. It turns financial responsibility into something that feels rewarding rather than tedious.

Parental oversight without the creepiness. Parents can link their accounts and add their teens as "children" in the app. They get a dashboard showing their kids' spending patterns, savings progress, and financial health — without having access to every individual transaction detail. It's designed to start conversations, not surveillance.

Multi-role architecture. The app handles teens, adults, parents, and admins as distinct user types, each with their own dashboard experience, navigation, and feature set. A parent's experience looks fundamentally different from their teen's — because it should.

Family financial intelligence. Weekly recaps sent to users (and optionally parents) summarizing spending trends, savings progress, and actionable insights. Daily "Money Moment" notifications keep users engaged without being annoying.


How we built it

Koda Finance is a full-stack web application built with modern technologies across the entire stack. It is also available as a desktop application, and we are working towards finalizing a mobile version.

Frontend — React + Capacitor + Electron

Backend — Firebase (Firestore, Auth, Cloud Functions) Firebase is our entire backend. Firestore serves as the real-time database, handling user profiles, transactions, budgets, goals, investments, notifications, and analytics data. Firebase Auth manages authentication with email/password and Google OAuth.

Banking Integration — Teller API We integrated Teller for real bank account connections. Users go through Teller's OAuth flow, connect their bank accounts, and all account data (balances, transactions) syncs automatically.

AI Assistant — OpenAI GPT-4 The Koda assistant is powered by OpenAI's API. We built a comprehensive prompt system with role-aware context — the AI knows the user's role (teen/adult/parent), their financial data, and adjusts its advice accordingly. The assistant has tool-calling capabilities: it can create transactions, set up goals, log investments, and provide spending breakdowns directly through conversation.

Payments — Stripe Stripe handles subscription management (Pro tier)

Mobile — Capacitor + PWA The app is a Progressive Web App with full offline support, install prompts, and mobile-first design. We also wrapped it with Capacitor for native iOS and Android builds.

Deployment — Vercel + Firebase The Next.js app deploys to Vercel. Firebase Cloud Functions deploy separately. Firestore rules and indexes are managed through the Firebase CLI.


Challenges we ran into

Teller API integration was rough. Getting bank account connections to work reliably across hundreds of different banks was one of the hardest parts of this project. Every bank returns data slightly differently — transaction categories are inconsistent, some banks have latency issues, and the OAuth flow needs to handle edge cases like expired tokens and re-authentication. We had to build a whole retry and normalization layer to make the data usable.

Building an AI assistant that doesn't hallucinate financial advice. We spent a lot of time on the prompt engineering and system design for Koda. The AI needs to be helpful without making up numbers or giving bad financial advice. We added guardrails around what the assistant can and can't do, and made sure it always grounds its responses in the user's actual data rather than making general assumptions.

Multi-role auth and routing. Supporting teens, adults, parents, and admins in the same app with completely different dashboard experiences required careful architecture. The routing logic alone — checking auth state, onboarding completion, role type, and redirecting accordingly — created a bunch of edge cases.

Mobile performance with real-time data. Firestore's real-time listeners are powerful but

The gamification system had to feel rewarding, not cheesy. Getting the XP curve, trophy thresholds, and level progression right took a lot of iteration. We went through multiple designs before landing on something that felt satisfying. The animations for earning trophies needed to feel earned without being over-the-top.


Accomplishments that we're proud of

We hit some real milestones during development and early marketing. Our Instagram page reached 1,000 followers and our TikTok also crossed 1,000 followers, which was huge for validating that the concept resonated with our target audience. We acquired 200 initial users through early marketing efforts — mostly through social media content and word of mouth in high school and college communities.

On the product side, we're proud of:

  • Building a fully functional bank account integration that syncs real transaction data in real-time
  • Creating an AI financial assistant that can actually create transactions, goals, and budgets through conversation
  • Implementing a complete gamification system with XP, levels, and trophies that users genuinely engage with

The fact that we went from zero to a working product with real users, real banking connections, and real engagement in the time we did is something the whole team is genuinely proud of.


What we learned

Talk to your users early and constantly. We started building based on assumptions and had to rework multiple features after getting real feedback from teens and parents. The parental oversight feature, for example, went through three complete redesigns before we landed on something that both parents and teens felt comfortable with.

AI integration is an art, not just an engineering task. Getting GPT-4 to behave consistently as a financial assistant required way more prompt engineering and context management than we expected. We learned that the quality of the AI experience is almost entirely determined by how well you structure the prompts and manage conversation context.

Gamification is harder to get right than it looks. It's not just "add XP and trophies." If the progression feels grindy or unrewarding, users disengage. We learned to iterate on the reward mechanics based on actual user behavior data, not just what felt fun to us as builders.


What's next for Koda Finance

We have a clear roadmap for the next phase of Koda Finance:

Investment tracking and education. We have the skeleton of an investments page, but we want to build out full portfolio tracking, stock market education modules, and simulated investing for teens who aren't old enough for real brokerage accounts yet.

School and community partnerships. We want to partner with high schools and youth organizations to bring Koda into financial literacy curricula. The admin dashboard and analytics infrastructure we built can support this — schools would get aggregate insights without accessing individual student data.

More sophisticated AI capabilities. We're expanding Koda's ability to proactively surface insights — "You spent 40% more on food this month compared to last month, here are some suggestions" — rather than just reacting to user questions. We're also exploring voice-first interactions for the mobile assistant.

International expansion. Right now we're US-focused because of Teller's banking coverage. We're exploring partnerships with banking APIs in other markets to bring Koda internationally.

We're also continuing to grow our community — hitting 1K followers on both Instagram and TikTok was just the start. Our goal is to become the default financial app that every teen downloads when they get their first bank account.

Built With

Share this project:

Updates