Skip to content

Accounting AI — Autonomous Bookkeeping Platform

AI-first accounting platform where six specialised Claude-powered agents autonomously handle invoice ingestion, GL categorisation, bank reconciliation, VAT/corporate tax compliance, and financial reporting — accessible via Telegram, WhatsApp, and a web dashboard.

  • FastAPI
  • Python
  • Claude API
  • PostgreSQL
  • Celery
  • React
  • Telegram Bot

Overview

Accounting AI is a “Service as Software” platform that replaces manual bookkeeping with a multi-agent AI system. Users send invoice photos via Telegram or WhatsApp — or upload through the web — and six specialised AI agents take over: extracting data, categorising to the right GL accounts, reconciling against bank feeds, calculating tax obligations, and routing exceptions to a human approval queue. The goal: accountants review only what AI flags, not every transaction.

The Challenge

Small and mid-sized businesses in the UAE and Ethiopia deal with strict tax compliance requirements (UAE VAT at 5%, Corporate Tax up to 9%, mandatory quarterly filings) but lack the staff or budget for a full accounting team. The platform needed to automate 80%+ of routine bookkeeping while maintaining a complete, auditable trail — and remain extensible to multiple countries without rewriting tax logic.

What We Built

Six AI Agents (Claude API + Celery)

Document Intake Agent Accepts photos and PDFs via Telegram, WhatsApp, or web upload. Uses Claude Vision to extract structured invoice data — vendor, amounts, dates, line items. Confidence-scores every extraction (< 0.85 → manual review queue). Auto-rejects out-of-range dates.

Categorisation Agent Maps extracted line items to General Ledger accounts using a 3-tier decision pipeline: vendor cache from learned history → keyword pattern matching → Claude API fallback. Learns from user corrections and boosts confidence automatically on repeat vendors. Auto-categorises at 0.9+ confidence.

Reconciliation Agent Matches uploaded bank statements to posted journal entries. Handles multi-currency with daily exchange rate lookups. Flags unmatched, duplicate, and partial items (fees, interest) for review.

Tax Compliance Agent Reads country-specific YAML regulation packs at runtime — no hardcoded tax rates. Calculates UAE VAT (5%), Corporate Tax (0–9% brackets), and excise on controlled goods. Generates tax return worksheets and maintains an immutable audit trail with reasoning and confidence per calculation.

Reporting Agent Produces General Ledger, Trial Balance, P&L, Balance Sheet, and Cash Flow forecasts on demand. Supports month/quarter/year filters and tax liability previews.

Approval Agent Routes exceptions (< 0.8 confidence) to a human approver via inline buttons in Telegram/WhatsApp or the web dashboard. Captures comments and corrections, maintaining version history on every approved transaction.

Bot Interfaces (Telegram + WhatsApp)

  • Commands: /summary, /recent, /balance, /vat, /overdue
  • Document upload → immediate OCR extraction and categorisation
  • Inline approve/reject/edit buttons for flagged items
  • Language toggle: English / Arabic
  • Group channel support for team status updates

Web Dashboard (React + TypeScript + Tailwind)

  • 17 feature modules: accounts, invoices, banking, transactions, tax, reports, approvals, audit log, and more
  • Full Chart of Accounts management and bank feed setup
  • VAT/Corporate Tax compliance dashboard with filing deadlines
  • Audit log viewer tracing every AI decision with reasoning
  • Full Arabic + English i18n throughout

Backend API (FastAPI)

  • Async-first architecture: FastAPI + AsyncIO + asyncpg for high concurrency
  • Celery DAG workflows for multi-step agent chains (intake → categorisation → reconciliation → approval)
  • pgvector on PostgreSQL for vendor embedding and pattern matching
  • Regulation loader: YAML packs per country — add a new country’s tax rules without touching application code
  • Every query scoped by tenant_id; multi-tenancy enforced at the ORM layer
  • Amounts stored as integers (fils/cents) — no floating-point errors in financial logic

Tech Stack

LayerTechnology
Backend APIFastAPI, Python 3.12, AsyncIO
AI / AgentsAnthropic Claude API (Vision + text)
DatabasePostgreSQL 16, pgvector, Alembic
ORMSQLAlchemy 2.0 (async)
Queue / WorkersCelery, Redis 7
File StorageMinIO (S3-compatible)
Bot Frameworkspython-telegram-bot v21, WhatsApp Cloud API
Web FrontendReact 18, TypeScript, Tailwind CSS, TanStack Query
InfrastructureDocker Compose, Traefik, Let’s Encrypt

Outcome

A fully autonomous accounting back-office for UAE-regulated businesses — accessible from WhatsApp or Telegram without opening a laptop. The regulation YAML architecture means adding full tax compliance for a new country (filing calendar, rates, chart of accounts) requires only a new configuration folder, not new code.

Want something similar?

We build AI-powered products, web applications, and automation systems. Let's discuss your project — no commitment required.

Search