How ankit-cybertron/ledger-ai works
Ledger AI is a financial reconciliation and settlement workspace with a separate forward-cash forecaster. Finance users upload statements and review reconciliation results in the dashboard; the backend processes records through reconciliation and exposes outcomes, exceptions, forecasts, and audit exports. The README describes four matching passes, algebraic batch-fee resolution, and an optional LLM fallback; sampled code confirms pipeline orchestration, confidence scoring, chat delegation, and forecasting behavior. Several API and reconciliation implementation sections were not sampled, so uncertain internal wiring is omitted.
Main entry points: reconcile.py Reconciliation · pipeline_runner.py Pipeline Runner · routes.py API Routes · chat_routes.py Chat API
Components 21
User Workspace
- Dashboard UI
frontend/static/js/dashboard.js - Flask App
frontend/app.py - API Routes
frontend/api/routes.py - Statement Store
frontend/statement_store.py
Reconciliation Engine
- File Ingestion
ingestion - Canonical Transactions
schema/canonical_transaction.py - Pipeline Runner
reconciler/pipeline_runner.py - Reconciliation
reconciler/reconcile.py - Exact Matching
matcher/exact_matcher.py - Tolerance Matching
matcher/tolerance_matcher.py - Similarity Scoring
matcher/similarity_engine.py - Confidence Scoring
matcher/scoring_engine.py - Ambiguous Matcher
llm/ambiguous_matcher.py
Audit Operations
- Exception Ledger
exceptions/exception_ledger.py - Audit Reports
reports
Finance Insights
- Cash Forecast
forecasting/engine.py
Settlement Assistant
- Chat API
frontend/api/chat_routes.py - Chat Sessions
frontend/api/chat_store.py - Settlement Q&A
agents/settlement_qa_agent.py
Other components
- Finance User
- Groq LLM
Connections 21
- Finance User → Dashboard UI: uses
- Dashboard UI → API Routes: requests
- Flask App → API Routes: registers
- API Routes → Statement Store: manages statements
- API Routes → Pipeline Runner: starts pipeline
- Pipeline Runner → Reconciliation: runs reconciliation
- Reconciliation → Exact Matching: matches identifiers
- Reconciliation → Tolerance Matching: checks tolerances
- Reconciliation → Similarity Scoring: finds candidates
- Similarity Scoring → Confidence Scoring: scores evidence
- Reconciliation → Ambiguous Matcher: resolves ambiguity
- Ambiguous Matcher → Groq LLM: queries model
- Pipeline Runner → Exception Ledger: builds exceptions
- Pipeline Runner → Audit Reports: generates reports
- Finance User → Chat API: asks questions
- Flask App → Chat API: registers
- Chat API → Chat Sessions: stores messages
- Chat API → Settlement Q&A: delegates questions
- Settlement Q&A → Groq LLM: queries model
- Dashboard UI → Cash Forecast: views forecast
- File Ingestion → Canonical Transactions: normalizes records