Inspiration

Small business owners make important financial decisions every day — whether to hire another employee, purchase equipment, open a new location, or simply determine whether they can afford an unexpected expense. But most small businesses don't have access to a dedicated CFO who can analyze those decisions for them.

We wanted to explore whether the banking data businesses already generate could be transformed into something much more useful: a financial decision-making tool.

That's why we built MainStreet CFO — a virtual CFO designed to turn everyday banking activity into actionable insights for small business owners.

What it does

MainStreet CFO analyzes a business's financial activity and builds a real-time picture of its financial health.

Instead of simply showing transactions or account balances, it helps answer questions such as:

  • How much cash runway does my business have?
  • What financial risks should I be paying attention to?
  • Can I afford to hire another employee?
  • What happens if I make a large equipment purchase?
  • How would opening another location affect my finances?

The platform provides cash-flow analysis, financial signals, projections, scenario modeling, breaking-point calculations, and an Ask Your CFO interface that allows business owners to ask questions about their finances in plain English.

How we built it

We used Capital One's Nessie API as the banking data layer for MainStreet CFO.

Nessie provides the underlying accounts, deposits, purchases, bills, and transaction activity that represent the financial life of a business. Our backend processes this raw banking activity and transforms it into higher-level financial metrics and business insights.

The frontend was built with React and TypeScript, while the backend uses Python and FastAPI. We built financial analysis logic on top of the Nessie data to calculate metrics such as cash flow, runway, recurring expenses, and financial projections.

Rather than treating Nessie as simply a source of transactions to display, we use its data as the foundation for the financial model that powers the entire application.

Challenges we ran into

One of our biggest challenges was turning raw banking data into information that would actually help a business owner make a decision.

A transaction history alone does not tell someone whether hiring an employee is safe or whether their current spending is sustainable. We had to determine how to aggregate transactions, identify meaningful financial patterns, model future cash flow, and communicate those results without overwhelming the user.

We also had to build realistic test data through Nessie so that the application's financial analysis represented the behavior of an actual small business rather than a collection of arbitrary transactions.

Finally, integrating and deploying the frontend, backend, and external APIs within the hackathon time constraint required us to prioritize reliability and a clear end-to-end experience.

What we learned

The biggest lesson was that financial data becomes significantly more valuable when it is placed in the context of a decision.

We also learned a lot about designing systems around financial APIs, modeling cash flow from transaction-level data, and translating quantitative analysis into information that non-financial users can quickly understand.

What's next

We want MainStreet CFO to evolve from a financial dashboard into a proactive financial partner for small businesses.

Future versions could detect upcoming cash-flow problems automatically, provide more advanced forecasting, compare multiple business scenarios, and incorporate additional financial data sources.

Ultimately, the goal is simple: give small business owners access to the kind of financial intelligence that traditionally required having a CFO.

Built With

Share this project:

Updates

Submission history