Drei Säulen für eine mittelgroße Kanzlei mit 150–500 Mandaten
Wir planen eine AI-native Steuerkanzlei, die drei Systeme optimal verbindet: DATEV für regulierte Aufgaben, Orcha für die Automatisierung hochvolumiger, repetitiver Prozesse und Claude als intelligente Schicht für Beratung, Analyse und Ausnahmebehandlung. Ziel: 60–70% der täglichen Kanzleiarbeit automatisieren.
Kanzleiprofil: Mehrere Steuerberater, Steuerfachangestellte und Buchhalter. Delegationsworkflows, teambasierte Mandatszuweisung, Freigabeketten für komplexe Vorgänge.
Komplexe, regulierte Aufgaben: Steuererklärungen, Lohnabrechnung, Jahresabschluss, ELSTER-Übermittlung. Rechtlich verbindliche Bücher im Kanzlei-Rechnungswesen.
Automatisierung: Belegerfassung, Kontierung, Abstimmung, Inbox-Monitoring, Aufgaben-Engine, Fristenmanagement, Mandantenportal. Langfristig: eigene Lohnabrechnung.
Intelligenz-Layer: Ad-hoc-Beratung, BWA-Analyse, Briefentwurf, Bescheid-Prüfung, Szenariomodellierung. Zugriff auf alle Mandantendaten via MCP.
Vier Ebenen: Nutzer, Kanzlei-App, Orcha-Orchestrierung, DATEV & Claude
flowchart TB
subgraph Users["Kanzlei Staff"]
STB["Steuerberater"]
SFA["Steuerfachangestellte"]
BH["Buchhalter"]
end
subgraph KanzleiApp["Kanzlei App"]
MATRIX["Matrix View\nMandant x Topic"]
INBOX["AI Inbox\nPending Reviews"]
CHAT["Claude Chat"]
end
subgraph Orcha["Orcha — Data + Orchestration"]
API["REST API + MCP Server"]
SCHED["Scheduler"]
DB[(PostgreSQL)]
PIPE["Ingestion Pipeline"]
TRIAGE["Email Triage"]
end
subgraph Claude["Claude — Intelligence Layer"]
CLAUDE_API["Anthropic API"]
CLAUDE_MCP["Claude Desktop/Web"]
end
subgraph DATEV["DATEV"]
DUO["Unternehmen Online"]
REWE["Kanzlei-Rechnungswesen"]
LODAS["LODAS / L&G"]
ELSTER_D["ELSTER"]
end
STB & SFA & BH --> KanzleiApp
STB --> CLAUDE_MCP
KanzleiApp --> API
CLAUDE_MCP -->|"MCP read/write"| API
SCHED -->|"generate briefing"| CLAUDE_API
SCHED --> DB
CLAUDE_API --> DB
PIPE --> DB
TRIAGE --> PIPE
TRIAGE --> CLAUDE_API
API -->|"booking proposals"| DUO
DUO --> REWE
REWE -->|"journal entries, BWA"| API
LODAS --> ELSTER_D
REWE --> ELSTER_D
Direction A: Orcha ruft Claude | Direction B: Claude ruft Orcha
flowchart LR
subgraph Direction1["Direction A: Orcha calls Claude"]
O1[Orcha Scheduler] -->|"POST /messages\n(Anthropic API)"| C1[Claude API]
C1 -->|"structured response"| O1
O1 -->|"store result"| DB1[(Orcha DB)]
end
subgraph Direction2["Direction B: Claude calls Orcha"]
H[Human in Claude] -->|"natural language"| C2[Claude]
C2 -->|"MCP tool call\norcha-tasks-create"| O2[Orcha MCP Server]
O2 -->|"pending_review queue"| DB2[(Orcha DB)]
end
| A: Orcha → Claude API | B: Claude → Orcha MCP | |
|---|---|---|
| Trigger | Scheduled Job oder Pipeline-Event | Menschliche Konversation |
| Initiator | Orcha Backend | Claude (im Auftrag des Menschen) |
| Use Cases | Morning Briefing, Draft Replies, Bescheid-Analyse, BWA-Kommentar | „Zeig mir Müllers offene Posten“, „Erstelle Aufgabe für Webers UStVA“ |
| Schreibverhalten | Direkter Write (Orcha vertraut sich selbst) | Pending Review (Warteschlange für menschliche Bestätigung) |
| Auth | API Key (Server-to-Server) | OAuth + MCP Scopes |
Zwei-Achsen-Matrix: Jede Zelle ist ein (Mandant, Thema)-Paar
flowchart TB
subgraph Nav["Navigation"]
ALL["Dashboard\n(alle Mandanten, alle Topics)"]
ALL -->|"click Mandant"| MAND["Mandant View\nz.B. Mueller GmbH"]
ALL -->|"click Topic"| TOPIC["Topic View\nz.B. Lohn"]
MAND -->|"click Topic"| CELL["Cell View\nMueller x Lohn"]
TOPIC -->|"click Mandant"| CELL
end
| Mandant | FiBu | Lohn | JA | StErkl | Beratung | Compliance |
|---|---|---|---|---|---|---|
| Müller GmbH | 3 | ✓ | 1 | 2 | — | ✓ |
| Weber KG | ✓ | 1 | — | 1 | 1 | ✓ |
| Fischer e.K. | 5 | ✓ | — | — | — | — |
| Schulz GmbH | ✓ | ✓ | 1 | 1 | — | ✓ |
| Mandant | Status | Frist | Nächster Schritt | Aktion |
|---|---|---|---|---|
| Müller GmbH | Done | 01.04. | — | — |
| Weber KG | Daten eingegangen | 05.04. | Bewegungsdaten | DATEV → |
| Fischer e.K. | Done | 01.04. | — | — |
| Schulz GmbH | Done | 01.04. | — | — |
| Becker OHG | Fehlende Daten | 05.04. | Stundenaufstellung | Mahnen → |
Acht Bereiche — wer macht was mit welcher Software
| Aufgabe | Software | Anmerkung |
|---|---|---|
| Belegerfassung | Orcha | Email Triage, OCR (Doc AI), Claude Extraction |
| Kontierung | Orcha DATEV | Orcha AI weist SKR03/04-Konten zu, pusht Vorschläge an DATEV via Maesn |
| Buchung lfd. Geschäftsvorfälle | DATEV | Finale Buchung in DATEV KaReWe (rechtlich verbindlich) |
| Bankbuchungen | DATEV | Bank-Feeds via EBICS/PSD2, DATEV Automatisierungsservice Bank |
| Kassenbuchführung | DATEV | GoBD-konformes Kassenbuch, muss in DATEV bleiben |
| Debitoren-/Kreditoren | DATEV Orcha | DATEV Nebenbuch, Orcha für OPOS-Sichtbarkeit und Mahnautomatik |
| UStVA | DATEV | Generiert aus DATEV-Buchungen, Orcha Pre-Flight-Validierung möglich |
| Zusammenfassende Meldung | DATEV | Standard-DATEV-Workflow |
| Anlagenbuchhaltung | DATEV | AfA-Pläne, Anlagenregister |
| Abstimmung / Kontenklärung | Claude Orcha | Claude analysiert Differenzen, Orcha liefert Daten |
| BWA-Erstellung | DATEV | Generiert aus DATEV-Buchungen |
| BWA-Analyse & Kommentar | Claude | Narrative Analyse: Trends, Anomalien, Vorjahresvergleich |
| OPOS-Verwaltung | Orcha | Offene Posten, automatische Mahnerinnerungen, Altersanalyse |
| GoBD-Verfahrensdokumentation | Claude | Claude erstellt Entwurf basierend auf tatsächlichen Prozessen |
| Aufgabe | Software | Anmerkung |
|---|---|---|
| Lohnabrechnung | DATEV | LODAS / L&G — hochreguliert, SV/LSt-Berechnung |
| SV-Meldungen | DATEV | Automatisiert in DATEV |
| Lohnsteueranmeldung | DATEV | Via ELSTER |
| Personalstammdatenpflege | DATEV Orcha | Erfassung via Orcha (Verträge digitalisieren), DATEV als führendes System |
| Reisekostenabrechnung | Orcha | Belegerfassung, Verpflegungsmehraufwand, Kategorisierung |
| Bescheinigungswesen | DATEV | Standard-DATEV-Output |
| Payroll-Verteilung | DATEV | DATEV Arbeitnehmer online |
| Aufgabe | Software | Anmerkung |
|---|---|---|
| Abschlussbuchungen | DATEV | Rückstellungen, Abgrenzungen — menschliches Urteil erforderlich |
| Bilanz + GuV | DATEV | Generiert aus DATEV-Buchungen |
| Anhang (Notes) | Claude | Boilerplate nach HGB, menschliche Prüfung |
| E-Bilanz | DATEV | XBRL-Taxonomie, ELSTER-Übermittlung |
| EÜR | DATEV | Für kleinere Mandate |
| Inventur-Unterstützung | Orcha Claude | Datenerfassung + Bewertungsvorschläge |
| Gesellschafterbeschlüsse | Claude | Template-Generierung und Anpassung |
| Aufgabe | Software | Anmerkung |
|---|---|---|
| ESt / KSt / GewSt | DATEV | Komplex, menschliches Urteil, DATEV hat Formulare + ELSTER |
| USt Jahreserklärung | DATEV | Abgeleitet aus FiBu-Daten |
| Feststellungserklärung | DATEV | Gesellschafteranteile |
| Grundsteuererklärung | DATEV | Post-Reform Massenerklärungen |
| Datensammlung | Orcha Claude | Orcha sammelt und kategorisiert, Claude befüllt Datenpunkte vor |
| Steuerbescheide prüfen | Claude | Vergleich Erklärung vs. Bescheid, Abweichungen flaggen |
| Aufgabe | Software | Anmerkung |
|---|---|---|
| Rechtsformwahl | Claude | Analyse-Frameworks, Szenariovergleiche, Steuerbelastungssimulation |
| Gestaltungsberatung | Claude | BFH-Urteile, BMF-Schreiben recherchieren |
| Vertragsgestaltung | Claude | Steuerliche Implikationen prüfen, Risiken flaggen |
| Investitionsberatung | Claude | §7g IAB, Forschungszulage |
| Internationale Steuerberatung | Claude | DBA-Analyse, Verrechnungspreise |
| Steuerliche Due Diligence | Claude Orcha | Orcha liefert Finanzdaten, Claude analysiert |
| Aufgabe | Software | Anmerkung |
|---|---|---|
| ELSTER-Übermittlung | DATEV | Alle Filings via DATEV |
| Einspruch einlegen | Claude | Claude entwirft Einspruchsschreiben |
| Anträge (Stundung, Erlass) | Claude | Antragsschreiben generieren |
| Betriebsprüfung begleiten | Claude Orcha | Orcha liefert Unterlagen, Claude bereitet Antworten vor |
| Vollmachtsdatenbank | DATEV | Standard-DATEV-Workflow |
| Fristenüberwachung | Orcha | Automatisches Deadline-Tracking mit Erinnerungen |
| Aufgabe | Software | Anmerkung |
|---|---|---|
| Onboarding / Mandatsannahme | Orcha | Digitale Aufnahme, GwG-KYC-Checkliste, Dokumentensammlung |
| Vollmacht | DATEV | Standard-Formular, registriert in DATEV VDB |
| Laufende Kommunikation | Claude | Draft-Antworten, Steuerthemen verständlich erklären |
| Mandantenbesprechung | Claude | Briefing vorbereiten aus Orcha-Daten |
| Honorarabrechnung | Orcha | Zeiterfassung + StBVV-Rechner + Rechnungserstellung |
| DMS / Aktenführung | Orcha | Alle Dokumente bereits in Orcha, GoBD-konforme Archivierung |
| Aufgabe | Software | Anmerkung |
|---|---|---|
| GwG (Anti-Geldwäsche) | Orcha | Digitales KYC, Risikoklassifizierung, PEP-Screening |
| Transparenzregister | Claude | Claude bereitet Filing vor, Mensch reicht ein |
| Intrastat | DATEV | Falls zutreffend |
| Aufbewahrungspflichten | Orcha | Automatisiertes Retention Management (10 J. Buchhaltung, 6 J. Korrespondenz) |
| DSGVO | Claude | AVV-Templates, Datenschutzdokumentation |
Das „AI-Native“-Differenzierungsmerkmal — KI orchestriert die tägliche Arbeit
Orcha überwacht alle eingehenden Kanäle und klassifiziert, erstellt Aufgaben, entwirft Antworten und eskaliert automatisch.
flowchart LR
subgraph Inbound["Inbound Channels"]
E[Email Inbox]
D[DATEV DUO]
P[Client Portal]
end
E --> T[Orcha AI Triage]
D --> T
P --> T
T -->|Invoice| I[Ingestion Pipeline]
T -->|Steuerbescheid| B[Bescheid Check - Task]
T -->|Client Question| Q[Claude Draft Reply - Confirm]
T -->|Finanzamt Letter| F[Deadline Extract - Alert]
T -->|Unknown| U[Flag for Human Review]
I --> K[Kontierung - DATEV]
B --> R[Compare vs. Filed Return]
Q --> S[Employee Reviews and Sends]
Jeden Morgen (Scheduled Job) generiert Orcha + Claude eine personalisierte Prioritätenliste pro Mitarbeiter.
Claude hat vollen Kontext zu jedem Mandanten über Orchas MCP-Tools.
Neue Entitäten auf dem bestehenden Orcha-Schema
erDiagram
tenant ||--o{ legal_entity : has
legal_entity ||--o{ mandate_topic : has
mandate_topic ||--o{ task : contains
task ||--o{ ai_action : generates
mandate_topic {
uuid id PK
uuid legal_entity_id FK
text topic_key
text status
jsonb config
}
task {
uuid id PK
uuid mandate_topic_id FK
uuid assignee_id FK
text title
text status
text priority
text source
boolean ai_completable
timestamp due_date
}
ai_action {
uuid id PK
uuid task_id FK
uuid legal_entity_id FK
text action_type
text status
jsonb input
jsonb output
timestamp reviewed_at
}
employee_briefing {
uuid id PK
uuid identity_id FK
date briefing_date
jsonb content
text narrative
}
inbox_item {
uuid id PK
uuid legal_entity_id FK
text channel
text classification
text status
jsonb raw_data
}
datev_sync ||--o{ datev_journal_entry : pulls
datev_sync ||--o{ datev_bwa_row : pulls
datev_sync ||--o{ datev_opos_item : pulls
datev_sync ||--o{ datev_bank_txn : pulls
datev_sync {
uuid id PK
uuid legal_entity_id FK
text sync_type
timestamp last_sync_at
text status
}
datev_journal_entry {
uuid id PK
date booking_date
text account_number
decimal amount
text tax_key
text booking_text
}
datev_bwa_row {
uuid id PK
text period
text row_key
decimal amount
}
datev_opos_item {
uuid id PK
text account_type
date due_date
decimal open_amount
}
datev_bank_txn {
uuid id PK
date value_date
decimal amount
text purpose
text counterparty
}
Wer läuft wann — und wann wird Claude eingebunden
flowchart TB
subgraph OrchaJobs["Orcha Scheduler (cron)"]
direction TB
J1["06:00 DATEV REWE Sync\nPull journal entries, BWA, OPOS, bank"]
J2["07:00 Deadline Scanner\nCheck all mandates for approaching Fristen"]
J3["07:30 Morning Briefing\nQuery DB then call Claude API then store"]
J4["continuous Email Triage\nMonitor inbox then classify then route"]
J5["continuous Ingestion Pipeline\nOCR then extract then kontieren then DATEV export"]
J6["22:00 Closing Status Update\nRecalculate mandate_topic statuses"]
end
subgraph ClaudeCalls["Claude API Calls (from Orcha)"]
direction TB
C1["Briefing narrative generation"]
C2["Draft reply composition"]
C3["BWA analysis and commentary"]
C4["Bescheid comparison"]
C5["Rueckstellungen suggestions"]
C6["Inbox classification"]
end
J3 -->|"sends data, gets narrative"| C1
J4 -->|"client question detected"| C2
J1 -->|"new BWA data available"| C3
J4 -->|"Steuerbescheid detected"| C4
J6 -->|"JA closing incomplete"| C5
J4 -->|"unknown item"| C6
| Job | Runner | Schedule | Calls Claude? | Writes to |
|---|---|---|---|---|
| DATEV REWE Sync | Orcha | Täglich 06:00 | Nein | datev_sync, Buchungsdaten |
| Deadline Scanner | Orcha | Täglich 07:00 | Nein | task (erstellt dringende Aufgaben) |
| Morning Briefing | Orcha Claude | Täglich 07:30 | Ja (Narrativ) | employee_briefing |
| Email Triage | Orcha Claude | Continuous | Ja (Klassifikation + Drafts) | inbox_item, ai_action |
| Ingestion Pipeline | Orcha Claude | Continuous | Ja (Extraction) | document, ingestion |
| Closing Status | Orcha | Täglich 22:00 | Nein | mandate_topic |
| BWA Commentary | Orcha Claude | Nach REWE Sync | Ja (Analyse) | ai_action |
| Bescheid Check | Orcha Claude | Bei Inbox-Erkennung | Ja (Vergleich) | ai_action, task |
Bestehende und geplante MCP-Tools in drei Gruppen
| Gruppe | Scope | Tool | Beschreibung |
|---|---|---|---|
| Existing | docs:read | orcha-docs-get | Einzeldokument abrufen |
| Existing | docs:read | orcha-docs-list | Dokumente auflisten |
| Existing | docs:read | orcha-docs-search | Volltextsuche in Dokumenten |
| Existing | docs:read | orcha-docs-line-items | Positionen eines Dokuments |
| Existing | master-data:read | orcha-data-master-data | Sachkonten, Kostenstellen, Lieferanten |
| Existing | master-data:read | orcha-master-data-legal-entities | Mandanten-Stammdaten |
| Existing | fpna:read | orcha-fpna-data-map | FP&A-Datenkarte |
| Existing | fpna:read | orcha-fpna-excel | FP&A-Daten als Excel |
| New Read | tasks:read | orcha-tasks-list | Aufgaben nach Mandant/Topic/Assignee/Status |
| New Read | tasks:read | orcha-tasks-get | Einzelne Aufgabe mit Kontext |
| New Read | mandate:read | orcha-mandate-status | Matrix-Übersicht eines Mandanten |
| New Read | mandate:read | orcha-topic-status | Ein Topic über alle Mandanten |
| New Read | mandate:read | orcha-briefing-get | Heutiges Briefing eines Mitarbeiters |
| New Read | mandate:read | orcha-deadlines-upcoming | Fristen der nächsten N Tage |
| New Read | datev:read | orcha-datev-bwa | BWA-Daten für Mandant+Periode |
| New Read | datev:read | orcha-datev-opos | Offene Posten aus DATEV |
| New Read | inbox:read | orcha-inbox-list | Aktuelle Inbox-Items + Status |
| New Write | tasks:write | orcha-tasks-create | Aufgabe erstellen → pending review |
| New Write | tasks:write | orcha-tasks-update | Aufgabe aktualisieren → pending review |
| New Write | ai:write | orcha-ai-draft-reply | Antwortentwurf speichern → pending review |
| New Write | ai:write | orcha-ai-analysis-save | Analyse speichern → pending review |
Fünf Datenflüsse über die Maesn-API
flowchart LR
subgraph Orcha
MAESN[Maesn API Client]
SYNC[DATEV Sync Worker]
DB[(Orcha DB)]
end
subgraph DATEV
DUO[Unternehmen Online]
REWE[Kanzlei-Rechnungswesen]
BANK[Bank online]
end
MAESN -->|"1 Push booking proposals\n(Rechnungseingang)"| DUO
DUO -->|"Steuerberater books"| REWE
REWE -->|"2 Pull journal entries\n(Buchungsstapel)"| SYNC
REWE -->|"3 Pull BWA\n(Auswertungen)"| SYNC
REWE -->|"4 Pull OPOS\n(offene Posten)"| SYNC
BANK -->|"5 Pull bank transactions\n(Kontoauszuege)"| SYNC
SYNC --> DB
| # | Richtung | Daten | Frequenz | API |
|---|---|---|---|---|
| 1 | Orcha → DATEV | Booking Proposals (Sachkonto, KST, Betrag, USt) | Pro Ingestion | Maesn Rechnungsdatenservice |
| 2 | DATEV → Orcha | Journal Entries (tatsächlich gebucht) | Täglich 06:00 | Maesn Buchungsstapel API |
| 3 | DATEV → Orcha | BWA (monatlicher Managementbericht) | Täglich 06:00 | Maesn Auswertungen API |
| 4 | DATEV → Orcha | Offene Posten (unbezahlte Rechnungen) | Täglich 06:00 | Maesn OPOS API |
| 5 | DATEV → Orcha | Bank Transactions | Täglich 06:00 | Maesn Bankdaten API |
Geschätzte Automatisierungsraten nach Bereich
FiBu und Lohn sind hochvolumig und repetitiv — hier liegt das größte Automatisierungspotenzial. Beratung und Steuererklärungen erfordern menschliches Urteil und bleiben beratungsintensiv.
Fünf Phasen von Foundation bis DATEV-Unabhängigkeit