Inspiration
My father, a CFO, inspired this project.
I have seen how much time finance teams spend reconciling spreadsheets, investigating unexplained transactions, chasing evidence, and preparing for close.
We wanted to build a system that gives finance teams more time for planning and decision-making while keeping human oversight and auditability at the center.
What it does
BotToWork is an AI-assisted financial reconciliation platform. It ingests financial data, normalizes records, matches transactions through deterministic and graph-based reconciliation logic, identifies exceptions, and routes unresolved cases to a bounded AI investigation workflow.
The AI produces structured root-cause hypotheses, proposed resolutions, confidence, unanswered questions, token usage, and latency data. It cannot directly modify accounting records. Finance users review evidence, approve/reject/escalate decisions, and retain an auditable trail.
How we built it
We built the frontend with Next.js and deployed it on Vercel. The backend is FastAPI on Render, connected to Neon PostgreSQL for persisted reconciliation runs, exceptions, reviews, investigations, audit events, and traces.
The matching layer combines Decimal-safe deterministic rules with graph-based allocation logic for one-to-many, many-to-one, split, timing, and fee-related cases. For unresolved cases, the backend calls GLM through TensorMux using an OpenAI-compatible API. We validate AI output with strict Pydantic schemas and store telemetry for every successful investigation.
Challenges we ran into
The hardest part was connecting multiple deployed services safely: Vercel, Render, Neon, TensorMux, and GLM. We encountered PostgreSQL JSON compatibility issues, Render port/start-command configuration problems, model-route naming differences, and a TensorMux grammar limitation involving Decimal validation regexes.
We solved these by improving PostgreSQL compatibility, configuring FastAPI correctly for Render, querying TensorMux’s model catalog, using the gateway’s exact available model ID, and adapting the generation schema while retaining strict application-side validation.
Accomplishments that we're proud of
We deployed a working end-to-end finance workflow:
- Vercel frontend connected to Render FastAPI
- Render connected to Neon PostgreSQL
- Persisted reconciliation runs and exception queues
- Human review and approval decisions
- Audit-event storage
- Live TensorMux and GLM structured investigations
- Model token, retry, and latency traces
- A seeded 40-case reconciliation demo pack
Most importantly, the AI is bounded: it receives compact evidence, returns structured output, and cannot directly write accounting state.
What we learned
We learned that AI in finance must be designed around controls, not just model capability. Deterministic matching should handle clear cases, while AI should help only with unresolved ambiguity. Structured outputs, evidence scoping, audit logs, retries, human review, and fail-safe defaults are essential for trustworthy financial automation.
We also learned that deployment details matter as much as the application logic: environment variables, database formats, CORS, model routes, gateway compatibility, and observability can determine whether an AI workflow is actually usable.
What's next for BotToWork
ext, BotToWork will grow from reconciliation into a complete AI-powered CFO workspace. Planned capabilities include:
- Financial forecasting using historical actuals, cash movements, invoices, receivables, payables, and scenario assumptions
- Budget creation, department-level planning, variance analysis, and rolling forecasts
- Cash-flow forecasting with 13-week liquidity views
- AI-generated monthly-close summaries and board-ready reporting
- Intelligent expense, revenue, margin, and working-capital analysis
- Natural-language CFO questions such as “Why did cash fall this month?” and “What happens if revenue is 10% below plan?”
- Budget-versus-actuals alerts with traceable evidence
- Connected Plaid, Stripe, ERP, accounting, payroll, and billing data sources
- AI agents for reconciliation, variance analysis, collections, accruals, revenue recognition, planning, and reporting
- Configurable financial policies, approval workflows, accounting controls, and audit-ready execution boundaries
- Expanded observability through Neatlogs, including model cost, latency, tool use, evidence quality, and agent performance The long-term goal is not to replace CFO judgment. It is to give CFOs and finance teams a controlled, explainable, always-auditable operating system for close, planning, forecasting, and decision-making.