Double-entry bookkeeping, VAT tracking, Profit & Loss, Balance Sheet โ all in a local SQLite ledger targeting HMRC Making Tax Digital.
Every transaction balanced to the penny โ debits always equal credits
Standard UK account codes out of the box โ assets, liabilities, equity, income and expenses mapped to HMRC categories. Extend with custom accounts as needed.
All data stored in ~/.chameleon/accounting/<company>/ledger.db. Runs completely offline. Multiple company support โ switch between entities with a command flag.
Year-end correctly set to 5 April (UK fiscal year 6 Apr โ 5 Apr). P&L and VAT reports automatically span the correct period without manual date adjustment.
Run --forensic to detect unbalanced entries, duplicate references, VAT mismatches and other irregularities. Results printed as structured JSON for AI review.
All reports output structured JSON to stdout so the Chameleon AI can parse, summarise and advise on your financial position in natural language.
The accounting WebSocket bridge (acct_ws_bridge.py) exposes ledger queries to the mobile companion and external dashboards over your Tailscale network.
Standard rate 20%
Reduced rate 5%
Zero-rated
Exempt
Out of scope
Income vs expenses for the period. Sales, cost of goods, gross profit, operating expenses, net profit โ all broken down by account code. Run with --report pl.
Assets, liabilities and equity at a point in time. Confirms double-entry integrity โ assets must equal liabilities plus equity. Run with --report bs.
Box-by-box VAT figures matching the HMRC MTD VAT return format: Box 1 (output tax), Box 4 (input tax), Box 6 (net sales), Box 7 (net purchases). Run with --report vat.
HMRC Notice 700-compliant invoices โ printed, saved as PDF or pushed to your phone in one click
Every invoice includes all fields required by HMRC Notice 700: unique sequential invoice number, supplier name and address, VAT registration number, invoice date, date of supply (time of supply), client name and address, client VAT number where applicable, itemised line descriptions with quantities and unit prices, VAT rate per line, net and VAT subtotals, and total amount due. Nothing is missing, nothing is guessed.
Open File โ Invoices โ Company Setup to enter your registered company name, address, Companies House number, VAT number, email, phone and bank details. Settings are saved per client database in company.json alongside the ledger and auto-loaded whenever invoices are generated for that client.
The first time you invoice a client their name, address and VAT number are saved to a contacts table inside the ledger. On subsequent invoices, typing the client name autocompletes their details โ no re-entry needed. Contacts are editable at any time.
From the Invoice Manager (File โ Invoicesโฆ) select any invoice and choose: Print (opens the OS print dialog โ any printer or PDF driver), Save PDF (directly to disk via Qt's built-in PDF export), or Send to Phone (pushes the invoice HTML to the Companion app where it opens the Android print dialog โ print wirelessly to any AirPrint or nearby printer).
Separate "Date of supply" (time of supply) field โ distinct from invoice date. Required by HMRC for VAT purposes. Defaults to today but is independently editable per invoice.
The Companion app can print any invoice wirelessly. Tap the print icon on any invoice row โ the app fetches the HTML from the IDE, converts it to PDF on-device via the printing package, and opens the Android system print dialog.
All 12 required fields for a full UK VAT invoice are present and populated. Reduced-rate and zero-rated lines are clearly labelled. The invoice number sequence is strictly monotone-increasing with no gaps.
| Command | Description |
|---|---|
python3 chameleon_accounting.py --report pl | Profit & Loss for current tax year |
python3 chameleon_accounting.py --report bs | Balance Sheet as of today |
python3 chameleon_accounting.py --report vat | VAT return summary (MTD boxes) |
python3 chameleon_accounting.py --forensic | Anomaly & integrity scan |
python3 chameleon_accounting.py --help | Full command reference |
Purpose-built for freelancers and small businesses operating under UK tax rules.
Get in touch โ Back to overview