docs / features / overview.md
Features Overview
entrytwo is AI-native double-entry accounting with a Git-style data model. The AI posts real journal entries when confident. Full immutable history, branches, blame, and closed periods.
Most work can be done either through the UI panels or by talking to the AI in the chat. The AI respects the same rules and current view (branch + point-in-time) as the UI.
Core Accounting
Journal Entries
- Create single or batch journal entries.
- Full double-entry: debits must equal credits after FX conversion.
- Support for tax, contacts, attachments, FX rates + sources.
- AI can create entries autonomously from uploaded statements/receipts when confident (or propose them).
- Manual creation via New Journal Entry modal (pre-filled from AI suggestions or staged receipts).
- Every entry is an immutable commit with full audit metadata.
Ledger
- View any account over any date range, on any branch, at any point in time.
- Opening balance calculated correctly for the chosen view.
- Search, pagination, sorting.
- Mark lines as cleared/reconciled.
- Direct links from chat and other panels.
Accounts (Chart of Accounts)
- Standard account types: Asset, Liability, Equity, Revenue, Expense.
- Filter dashboard and reports by account.
- Blame and history per account available in Git controls.
Reports & Analysis
- Profit & Loss (P&L) with branch / as-of support.
- Reports panel with flexible date ranges and comparison.
- Summary bar for quick overview.
- All reports respect the current Git view (you see the numbers "as of" the branch and point you are viewing).
Git Model for Accounting
This is the foundation. See docs/concepts/git-model.md for the full philosophy.
Key capabilities:
- Branches: Work on
main(official books) or create parallel branches for experiments, AI work, or corrections. - Point-in-time views (
asOf): Pin the entire app to a specific commit or date. - Restore: Move a branch head to any previous state. Always creates a new
ROLLBACKcommit - history is never lost. - Tags: Mark important states (month-end close, auditor snapshot, tax filing version).
- Recent states: Browse recent commits and tags in an accountant-friendly picker.
- Merge: Preview net changes, then accept work from one branch into another.
- Diff & Blame: See exactly what changed and who (or what AI) touched each line.
- Audit log: Complete immutable event history.
The current view (branch + as-of) is always visible in the persistent Books View Indicator and is respected by chat, ledger, reports, journal, etc.
You can do almost everything from either the dedicated History view (?view=history) or via chat commands.
AI and Chat
The chat (left side) is a first-class interface.
- Natural language instructions ("reconcile 1100 for June", "process this statement").
- Upload PDFs, images, CSVs - they become staged receipts that survive multiple turns until attached to an entry.
- AI can act autonomously on safe actions at high confidence (journal entries, reconciliation, contacts, drafts, etc.).
- Lower confidence, destructive, or locked-chat actions become proposals you must confirm.
- Full provenance: autonomous actions are recorded as
AI_AUTONOMOUS_ENTRYwith model, confidence, reasoning, and sources. - Chat lock toggle for "proposals only" mode.
- AI always works on the current branch + as-of you are viewing.
See:
docs/ai/ai-autonomy.md(rules and decision table)docs/ai/using-the-ai.md(practical prompting and workflows)
Invoicing
- Create and manage invoices.
- Drafts, line items, tax, contacts.
- PDF generation and download.
- Email delivery (when SMTP or email provider is configured).
- Recurring invoices supported.
- Invoices are also visible and filterable in the journal/ledger.
Expense Claims
- Collect receipts into claims.
- Submit → review (approve / request changes / reject) → post to ledger.
- Multi-line claims with per-line receipts, currencies, tax.
- Workflow status and full activity log.
- Useful for employees or owners tracking reimbursable expenses.
Contacts
- Customers and vendors.
- Used for invoices, journal lines, claims, and reconciliation notes.
- Can be created manually or via chat (
CREATE_CONTACT).
Receipts & Attachments
- Upload PDFs, images, CSVs via chat, TopBar, Receipts panel, or claim editor.
- Linked to journal entries or claims.
- "Staged receipts" pattern: attach first, discuss, then create entry (AI or manual) that consumes the attachment.
- Attachments are stored and served securely.
Templates & Recurring
- Journal templates for repeated patterns.
- Recurring journal entries (generate manually or via background jobs).
- Recurring invoices.
History, Audit & Compliance
- Full event log (every commit, branch, merge, tag, rollback, AI action).
- Blame per account/line.
- Diff between any two points.
- Tags for formal snapshots.
- Nothing is silently mutated - even corrections create new commits.
This design aims to satisfy strict audit and tax requirements while remaining usable for day-to-day work.
How Git + AI Are Integrated Everywhere
- Dashboard, ledger, reports, P&L, journal - all accept
?branch=...&asOf=.... - Chat passes the current view on every turn.
- AI autonomous entries land on the viewed branch.
- Restore / merge / tag operations update the URL view.
- The Books View Indicator makes it impossible to forget "which reality am I looking at?"
See docs/concepts/git-model.md.
Administration & Operations
Covered in more detail in admin documentation:
- User management (ADMIN, ACCOUNTANT, VIEWER roles)
- Invitations
- Accounting periods (open / close)
- Bank feeds and processor integration (Stripe, etc.)
- Tax configuration
- Backup & restore (full portable system backups)
- Self-hosted updates (signed images, updater sidecar)
- Licensing / trial (30-day trial, perpetual license after activation)
See the admin section once it is written, plus the deeper technical docs in entrytwo_v1/docs/.
What Makes entrytwo Different
- The Git model is not a bolt-on - it is the core data model.
- AI is expected to do real work (high-confidence autonomous commits), not just suggest.
- History is sacred and always recoverable.
- "You own your data" is real: self-hosted, portable backups, never disabled after licensing.
- Updates are optional and controlled (perpetual license + optional maintenance).
The documentation is deliberately written so that both humans and AI assistants can understand these principles and the current implementation.
Where to Go Next
Start by installing, creating the first admin, uploading one real statement, and letting the AI process it. Then read the Git Model document - everything else will make more sense.