Centurio System- & Moduldokumentation
🏛️ Plattform-Architektur 🔑 Login
Alle Module / accounting_controlling / Controlling, BWA, BAB & Deckungsbeiträge
🎯

Controlling, BWA, BAB & Deckungsbeiträge

controlling accounting_controlling 🛡️ RLS Protected

Betriebsabrechnungsbogen (BAB), Betriebswirtschaftliche Auswertung (BWA), Deckungsbeitragsrechnung und BI-Explorer.

Fachliche Bestimmung: Kaufmännische Unternehmenssteuerung in Echtzeit. Aggregiert Erlöse und Kostenstellen, berechnet die BWA nach Standardgliederung, verteilt Gemeinkosten im BAB auf Kostenstellen und Kostenträger und ermittelt Deckungsbeiträge je Auftrag, Projekt und Produktsparte.

⚡ Workflows & Lebenszyklen

Eingangsrechnung → Abrechnung cascade:business.supplier_invoice.p2p

Kaskade (review_gated).

1. booking
Buchungssatz erstellen
accounting
Aktionen: accounting.entry
2. project
Projektkosten verbuchen
projects
Aktionen: link_project
3. task
Frist / Skonto überwachen
tasks
Aktionen: create_task

Buchungssatz erstellen cascade_target:business.accounting.booking

Kaskade (review_gated).

1. cascade
Buchungssatz erstellen

Benutzerbefehl: accounting agent plan:command_accounting_agent

Geprüfter Durable-Plan (durable_plan), Start: manual_command.

1. accounting_agent
accounting_agent
{"key": "execute_command", "label": "Befehl prüfen, ausführen oder zur Freigabe vorlegen", "adapter": "agent.execute", "agent": "accounting_agent", "condition_fact": null}
Aktionen: accounting_agent

Buchungskandidat status:accounting_entry

Beobachtbare Zustandsmaschine (observable_only). Übergänge hier nicht erzwungen — siehe Service-Validierung.

1. detected
detected
Status «detected» der Zustandsmaschine Buchungskandidat.
2. enriched
enriched
Status «enriched» der Zustandsmaschine Buchungskandidat.
3. needs_review
needs_review
Status «needs_review» der Zustandsmaschine Buchungskandidat.
4. approved
approved
Status «approved» der Zustandsmaschine Buchungskandidat.
5. exported
exported
Status «exported» der Zustandsmaschine Buchungskandidat.
6. rejected
rejected
Status «rejected» der Zustandsmaschine Buchungskandidat.

Buchungssatz status:journal_entry

Beobachtbare Zustandsmaschine (observable_only). Übergänge hier nicht erzwungen — siehe Service-Validierung.

1. draft
draft
Status «draft» der Zustandsmaschine Buchungssatz.
2. posted
posted
Status «posted» der Zustandsmaschine Buchungssatz.
3. cancelled
cancelled
Status «cancelled» der Zustandsmaschine Buchungssatz.

⚙️ Fachprozesse & Capabilities (System-Fachlogik)

Registrierte Fachoperationen und System-Capabilities dieses Moduls zur Steuerung von Workflows, Kaskaden und KI-Agenten.

Gesamt: 33 manual_entry: 1 engine: 21 reviewed: 1 review_gated: 2 operator_surface: 2 engine_step: 3 durable_plan: 1 observable_only: 2
Capability & Schlüssel Fachliche Bezeichnung Ausführung / Coverage Risikostufe & Freigabe Effekte & Kaskaden
Agent-Einstieg accounting_agent agent_entry:accounting_agent
Agent-Einstieg accounting_agent
Quelle: code:module_agent_map
manual_entry
✓ Auto
Keine Seiteneffekte deklariert
Accounting: approve capability:accounting.accounting.approve
Op: accounting.accounting.approve
Objekt: accounting
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.approve
Accounting: approve many capability:accounting.accounting.approve_many
Op: accounting.accounting.approve_many
Objekt: accounting
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.approve_many
Accounting: create candidate capability:accounting.accounting.create_candidate
Op: accounting.accounting.create_candidate
Objekt: accounting
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.create_candidate
Accounting: mark exported capability:accounting.accounting.mark_exported
Op: accounting.accounting.mark_exported
Objekt: accounting
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.mark_exported
Accounting: reject capability:accounting.accounting.reject
Op: accounting.accounting.reject
Objekt: accounting
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.reject
Accounting Category: create capability:accounting.accounting_category.create
Op: accounting.accounting_category.create
Objekt: accounting_category
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting_category.create
Auto-Match capability:accounting.bank.auto_match
Op: accounting.bank.auto_match
Objekt: payment
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.bank.auto_match
Kontoauszug capability:accounting.bank.import_statement
Op: accounting.bank.import_statement
Objekt: bank_statement
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.bank.import_statement
Buchungssatz erstellen capability:accounting.entry
Op: accounting.entry
Objekt: accounting_entry
Quelle: code:capability_registry
reviewed
🔒 Freigabe nötig Risiko: business_record
  • cascade:business.accounting.booking
Buchungsvorschlag freigeben capability:accounting.entry.approve
Op: accounting.entry.approve
Objekt: accounting_entry
Quelle: code:capability_registry
⚙️ Engine
🔒 Freigabe nötig Risiko: business_record
  • accounting_entry.approved
Buchungsvorschläge sammelfreigeben capability:accounting.entry.approve_many
Op: accounting.entry.approve_many
Objekt: accounting_entry
Quelle: code:capability_registry
⚙️ Engine
🔒 Freigabe nötig Risiko: business_record
  • accounting_entry.approved_many
FX Neubewertung capability:accounting.fx.revalue
Op: accounting.fx.revalue
Objekt: accounting_entry
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.fx.revalue
Periode schließen capability:accounting.period.close
Op: accounting.period.close
Objekt: accounting_period
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.period.close
Periode öffnen capability:accounting.period.reopen
Op: accounting.period.reopen
Objekt: accounting_period
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.period.reopen
USt vorbereiten capability:accounting.vat.return_prepare
Op: accounting.vat.return_prepare
Objekt: vat_return
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.vat.return_prepare
Buchung freigeben capability:approve_accounting_entry
Op: approve_accounting_entry
Objekt: accounting_entry
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.approved
Buchungsvorschlag erzeugen capability:create_accounting_candidate
Op: create_accounting_candidate
Objekt: accounting_entry
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.candidate_created
Buchhaltungsexport generieren capability:export_accounting
Op: export_accounting
Objekt: accounting_export_batch
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.exported
Zahlung zuordnen capability:match_payment
Op: match_payment
Objekt: payment
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • payment.matched
Operatives Asset mit Finanzanlage verknüpfen capability:mdm.fixed_asset.link
Op: mdm.fixed_asset.link
Objekt: fixed_asset_link
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
Keine Seiteneffekte deklariert
Buchungsvorschlag ablehnen capability:reject_accounting_entry
Op: reject_accounting_entry
Objekt: accounting_entry
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • accounting.rejected
Zahlungszuordnung aufheben capability:unmatch_payment
Op: unmatch_payment
Objekt: payment
Quelle: code:capability_registry
⚙️ Engine
✓ Auto Risiko: business_record
  • payment.unmatched
Eingangsrechnung → Abrechnung cascade:business.supplier_invoice.p2p
Eingangsrechnung → Abrechnung
Quelle: code:cascade_process
review_gated
✓ Auto
Keine Seiteneffekte deklariert
Buchungssatz erstellen cascade_target:business.accounting.booking
Op: accounting.entry
Buchungssatz erstellen
Quelle: code:cascade_target
review_gated
🔒 Freigabe nötig
Keine Seiteneffekte deklariert
cost_center: edit form form_surface_anchor:cost_center.edit
Objekt: cost_center
Quelle: code:erp_form_surface
operator_surface
✓ Auto
Keine Seiteneffekte deklariert
cost_type: edit form form_surface_anchor:cost_type.edit
Objekt: cost_type
Quelle: code:erp_form_surface
operator_surface
✓ Auto
Keine Seiteneffekte deklariert
approve accounting entry gateway:approve_accounting_entry
Op: approve_accounting_entry
approve accounting entry
Quelle: code:engine_facade
⚙️ Engine
✓ Auto
Keine Seiteneffekte deklariert
create accounting candidate gateway:create_accounting_candidate
Op: create_accounting_candidate
create accounting candidate
Quelle: code:engine_facade
⚙️ Engine
✓ Auto
Keine Seiteneffekte deklariert
reject accounting entry gateway:reject_accounting_entry
Op: reject_accounting_entry
reject accounting entry
Quelle: code:engine_facade
⚙️ Engine
✓ Auto
Keine Seiteneffekte deklariert
Benutzerbefehl: accounting agent plan:command_accounting_agent
Benutzerbefehl: accounting agent
Quelle: code:reviewed_execution_plan
durable_plan
✓ Auto
Keine Seiteneffekte deklariert
Buchungskandidat status:accounting_entry
Objekt: accounting_entry
Quelle: code:status_machine
observable_only
✓ Auto
Keine Seiteneffekte deklariert
Buchungssatz status:journal_entry
Objekt: journal_entry
Quelle: code:status_machine
observable_only
✓ Auto
Keine Seiteneffekte deklariert

🧠 Fachprozess-Erzählung & Dual Knowledge Architektur

Synthese aus der ideologischen Blaupause (Meta-Fachlogik / Soll), der faktischen System-Implementierung (System-Fachlogik / Ist) und No-Code Customizing für KI-Consultants.

Dual Knowledge Layer
📖

Der durchgängige Businessprozess im Detail (End-to-End Fließtext-Erzählung)

Der durchgängige Rechnungs- und Buchhaltungsprozess in der betrieblichen Praxis

Die Finanzbuchhaltung ist das bilanzielle und steuerliche Rückgrat jedes Unternehmens. Centurio ERP verbindet hochautomatisierte Abrechnungsworkflows mit strikter Einhaltung deutscher und europäischer Rechnungslegungs- und Steuervorschriften.

1. Rechnungserstellung & Belegursprung (Billing Trigger)

Ausgangsrechnungen (AR) entstehen aus verschiedenen betrieblichen Leistungsquellen:

  • Auslieferung von Waren (sales): Sobald der Warenausgang für einen Verkaufsauftrag gebucht ist, stößt das System die Faktura an (cap:invoices.invoice.create_from_order).
  • Abgeschlossene Werkstatt- und Außendienstaufträge (workorders, fieldservice): Nach digitaler Kundensignatur auf dem Abnahmeprotokoll werden verbaute Ersatzteile und geleistete Arbeitsstunden zur Rechnung fakturiert.
  • Wiederkehrende Verträge & Mieten (contracts, rental): Die automatische Abrechnungs-Engine scannt am Monats- oder Quartalsersten alle aktiven Dauerverträge und erzeugt die zyklischen Rechnungen.
  • Gutschriften & Korrekturen (returns): Bei Reklamationen oder Rücksendungen wird eine Rechnungskorrektur mit negativer Verbindlichkeit generiert.

2. Gesetzliche Pflichtangaben & E-Rechnungsstandard (ZUGFeRD / XRechnung)

Seit der E-Rechnungspflicht im B2B-Geschäft generiert Centurio ERP jede Rechnung zweifach:

  • Menschlesbares PDF: Gestaltet nach Corporate Design mit allen handels- und steuerrechtlichen Pflichtangaben nach § 14 UStG (Rechnungsdatum, lückenlose Rechnungsnummer, Steuernummer/USt-IdNr., Anschriften, Lieferzeitpunkt, Steuersätze und -beträge).
  • Strukturierte XML-Daten nach EU-Norm EN 16931:
    • ZUGFeRD 2.2 / Factur-X (Profil EN 16931 / Comfort): Die XML-Datei ist als unsichtbarer Anhang direkt in die PDF-Datei eingebettet (Hybridrechnung).
    • Reine XRechnung (CII/UBL): Für Behördenkunden (B2G) mit Angabe der verbindlichen Leitweg-ID.

3. Festschreibung nach GoBD (Immutability & Final Lock)

Vor dem Versand an den Kunden wird die Rechnung über den systemgeprüften Gateway gw:invoice_finalization@v1 festgeschrieben (cap:invoices.invoice.finalize):

  • Schreibschutz: Nach diesem Schritt ist die Rechnung rechtlich existent und kann unter keinen Umständen mehr gelöscht oder geändert werden.
  • Transaktionale Buchung: Der Rechnungsbetrag wird unmittelbar auf das Erlöskonto (z.B. 8400 Erlöse 19% USt nach SKR03) und das Steuerkonto (1776 Umsatzsteuer) verbucht.
  • Anlage des Offenen Postens (OP): Im Debitorenkonto des Kunden entsteht ein offener Posten mit Fälligkeitsdatum und Skontofrist.

4. Versand & Bereitstellung (Multi-Channel Dispatch)

  • Die festgeschriebene Rechnung wird per E-Mail mit digitalem ZUGFeRD-Anhang an die hinterlegte Rechnungsadresse versandt (cap:invoices.invoice.send).
  • Im B2B-Kundenportal (portal) wird die Rechnung sofort in der Rechnungsübersicht des Kunden zum Download bereitgestellt.

5. Zahlungsabgleich & Elektronischer Kontoauszug (Bank Reconciliation)

Zahlungseingänge werden hochgradig automatisiert verarbeitet:

  • Kontoauszugsabruf (CAMT.053 / MT940 / EBICS): Über das Bankenmodul (banking) ruft das System täglich die elektronischen Kontoauszüge aller Geschäftsbanken ab.
  • Automatisches Matching: Die Reconciliation-Engine gleicht Verwendungszwecke, Rechnungsnummern, Beträge und IBANs gegen die offenen Debitorenposten ab (cap:payments.payment.auto_reconcile).
  • Skontoprüfung: Zahlt der Kunde innerhalb der Skontofrist unter Abzug von Skonto (z.B. 2%), bucht das System die Skontodifferenz automatisch auf das Skontoaufwandskonto (8736 nach SKR03).
  • Zahlungsausgleich: Der offene Posten wird geschlossen; der Rechnungsstatus wechselt auf Bezahlt (paid).

6. Mehrstufiges Mahnwesen (Dunning Run)

Bleiben Zahlungen nach Fälligkeit aus, greift das automatisierte Mahnwesen:

  • Das System ermittelt täglich alle überfälligen Rechnungen unter Berücksichtigung von Kulanzfristen.
  • Mahnlauf: Über cap:invoices.dunning.run werden Mahnstufen durchlaufen:
    • Zahlungserinnerung: Höfliche Erinnerung ohne Gebühren.
    • 1. Mahnung: Nach 10 Tagen mit Mahngebühr.
    • 2. Mahnung: Nach weiteren 10 Tagen mit Verzugszinsen nach BGB § 288 (9 Prozentpunkte über Basiszinssatz im B2B).
    • 3. Mahnung / Inkasso: Übergabe an Rechtsabteilung oder Inkassodienstleister; Kreditsperre für den Kunden im Vertriebsmodul.

7. Hauptbuch, Kontenrahmen & DATEV-Export

  • Doppelte Buchführung: Alle buchhalterischen Vorgänge (Rechnungen, Zahlungseingänge, Bankspesen, Abschreibungen) werden im Hauptbuchjournal geführt.
  • Kontenrahmen: Unterstützung standardisierter Kontenrahmen (SKR03 und SKR04 der DATEV).
  • Steuerberaterexport: Zum Monats- oder Quartalsabschluss generiert das Exportmodul (exports) den DATEV-ASCII-Buchungsstapel inklusive Belegbild-Verknüpfung (cap:exports.datev.generate_batch), der direkt in DATEV Kanzlei-Rechnungswesen eingelesen werden kann.
🏛️

Meta-Fachlogik: Ideologische Blaupause, Soll-Weltbild & Normen

Meta-Fachlogik: Die ideologische Blaupause & das normative Weltbild

Die Meta-Fachlogik der Buchhaltung stützt sich auf die Grundsätze ordnungsmäßiger Buchführung (GoB/GoBD), das Handelsgesetzbuch (HGB), das Umsatzsteuergesetz (UStG) und europäische E-Rechnungsrichtlinien.

1. Grundsätze ordnungsmäßiger Buchführung (GoB / GoBD)

  • Das Belegprinzip: Keine Buchung ohne Beleg. Jede Journalbuchung muss zwingend auf einen rechtssicheren, nachvollziehbaren Beleg zurückzuführen sein.
  • Grundsatz der Unveränderbarkeit (§ 146 Abs. 4 HGB / GoBD Rz. 58):
    • Eine Buchung oder ein Beleg darf nicht in einer Weise verändert werden, dass der ursprüngliche Inhalt nicht mehr feststellbar ist.
    • Das Soll-Modell verbietet das Überschreiben, Löschen oder Zurücksetzen finalisierter Rechnungen. Jede Korrektur muss über einen eigenständigen Gegenbeleg (Stornorechnung / Rechnungskorrektur) mit eindeutigem Referenzbezug erfolgen.
  • Zeitgerechtheit & Lückenlosigkeit: Unbare Geschäftsvorfälle sind zeitnah (spätestens innerhalb von 10 Tagen) zu erfassen. Rechnungsnummern müssen lückenlos fortlaufend sein.

2. Umsatzsteuerrecht & E-Rechnungs-Standards

  • Umsatzsteuergesetz (§ 14, § 14a UStG):
    • Zwingende Pflichtbestandteile: Vollständiger Name und Anschrift von Leistendem und Leistungsempfänger, Steuernummer oder USt-IdNr., Ausstellungsdatum, fortlaufende Nummer, Menge und handelsübliche Bezeichnung der Gegenstände, Zeitpunkt der Lieferung/Leistung, nach Steuersätzen aufgeschlüsseltes Entgelt sowie gesondert ausgewiesene Steuerbeträge.
  • Richtlinie 2014/55/EU & Wachstumschancengesetz:
    • Verpflichtung zur strukturierten elektronischen Rechnung im B2B-Geschäftsverkehr (EN 16931). Das Soll-Modell betrachtet reine PDF-Rechnungen ohne strukturierte XML-Syntax als veraltet bzw. im B2B ab 2025/2026 als unzulässig.

3. Invarianten des Soll-Modells

  1. Keine Rechnung ohne eindeutige, lückenlose Belegnummer aus einem geschützten Nummernkreis.
  2. Eine festgeschriebene Rechnung darf niemals physikalisch aus der Datenbank gelöscht werden.
  3. Soll und Haben müssen bei jeder Journalbuchung exakt ausgeglichen sein (Summe Soll = Summe Haben).
  4. Offene Posten dürfen nur durch nachgewiesene Zahlungseingänge, genehmigte Gutschriften oder ausgebuchte Mahndifferenzen geschlossen werden.
⚙️

Systemische Fachlogik: Faktische Umsetzung in Centurio ERP & Capabilities

Systemische Fachlogik: Die faktische Umsetzung in Centurio ERP

Die System-Fachlogik dokumentiert die Realisierung in den Modulen invoices, accounting, finance und exports.

1. Datenmodelle & Semantische Schicht (ORM)

  • Invoice: Rechnungskopf (Felder: id, tenant_id, invoice_number, invoice_type [outward, credit_note, correction, cancellation], status, customer_id, invoice_date, due_date, total_net_amount, total_tax_amount, total_gross_amount, currency, zugferd_xml, is_locked).
  • InvoiceLine: Rechnungspositionen (Felder: invoice_id, product_id, quantity, unit_price, tax_rate, revenue_account_code, cost_center_id).
  • GeneralLedgerEntry: Buchungsjournalzeile (Felder: id, entry_number, booking_date, account_code, contra_account_code, debit_amount, credit_amount, reference_doc_id, is_settled).
  • OpenItem: Offener Posten (Felder: invoice_id, customer_id, due_date, open_amount, paid_amount, dunning_level).
  • BankStatementTransaction: Bankkontoauszugsbewegung (Felder: account_iban, valuta_date, amount, remittance_info, matched_invoice_id).

2. Das Capability-Register

  • cap:invoices.invoice.create: Anlegen eines Rechnungsentwurfs.
  • cap:invoices.invoice.finalize: GoBD-Festschreibung und Sperrung der Rechnung.
  • cap:invoices.invoice.generate_zugferd: Erzeugung der EN 16931 konformen ZUGFeRD-XML-Syntax.
  • cap:invoices.invoice.send: Versand der Hybridrechnung per E-Mail/Portal.
  • cap:invoices.invoice.cancel: Erzeugung einer korrespondierenden Stornorechnung.
  • cap:payments.payment.auto_reconcile: Automatischer Kontoauszugsabgleich gegen offene Posten.
  • cap:invoices.dunning.run: Ausführung des regelbasierten Mahnlaufs.
  • cap:exports.datev.generate_batch: Erstellung des DATEV-kompatiblen ASCII-Buchungsstapels.

3. Der Gateway gw:invoice_finalization@v1

Sichert die fiskalische Rechtsverbindlichkeit ab:

  1. Plausibilitätsprüfung: Prüft USt-IdNr., Steuersätze, Pflichtfelder nach § 14 UStG und rechnerische Summenintegrität.
  2. Festschreibung: Setzt Invoice.is_locked = true und Invoice.status = 'finalized'.
  3. Journalbuchung: Erzeugt atomar die Soll- und Haben-Zeilen in GeneralLedgerEntry.
  4. OP-Anlage: Bucht den offenen Posten in OpenItem.
  5. Outbox-Signal: Feuert INVOICE_FINALIZED_EVENT.

4. Statusmodelle

  • Rechnungs-Status: draft (Entwurf) ➔ finalized (Festgeschrieben/Offen) ➔ partially_paid (Teilbezahlt) ➔ paid (Ausgeglichen) oder cancelled (Storniert).
  • Mahnstufen: none (0) ➔ reminder (Erinnerung) ➔ level_1 ➔ level_2 ➔ level_3 (Inkasso).
🤖

KI-Consultant Leitfaden: Customizing- & No-Code-Konzept (Soll-Ist-Synthese)

AI Solution Architect Blueprint

KI-Consultant Blueprint: Customizing & No-Code Architektur

Anleitung für Solution Architects zur Einrichtung der Finanz- und Fakturierungsworkflows.

1. Kundenanforderungsanalyse

  • Welcher Kontenrahmen wird genutzt (SKR03 oder SKR04)?
  • Welche Skontoregeln und Zahlungsziele gelten standardmäßig (z.B. 14 Tage 2% Skonto, 30 Tage netto)?
  • Sollen Behördenkunden (B2G) mit zwingender Leitweg-ID und reiner XRechnung bedient werden?

2. No-Code Zusatzfelder (Custom Fields)

Im No-Code Studio (/semantic/customizing):

  • Auf Invoice:
    • leitweg_id (Text): Zwingend für XRechnung an Bundes- und Landesbehörden.
    • cost_unit_code (Text): Kostenträgerzuordnung für die Kostenstellenrechnung.
    • buyer_reference (Text): Einkaufsreferenz des Kunden (Bestellnummer).
  • Auf OpenItem:
    • dispute_reason (Auswahlliste: Preisklaerung, Mangelruege, Falschlieferung): Sperrt den Mahnlauf bei berechtigten Kundenreklamationen.

3. No-Code Workflow Canvas DAGs

Blueprint A: Automatischer Rechnungsversand nach Warenausgang (Auto-Invoice DAG)
  • Trigger-Node: Event ORDER_DISPATCHED aus dem Lagermodul.
  • Condition-Node: order.customer.invoice_generation_policy == 'immediate'.
  • Action-Node 1: Rufe cap:invoices.invoice.create_from_order auf.
  • Action-Node 2: Rufe Gateway gw:invoice_finalization@v1 auf.
  • Action-Node 3: Versende ZUGFeRD-PDF per E-Mail an Rechnungs-Empfänger.
Blueprint B: Automatisches Mahnwesen mit Dispute-Sperre (Dunning DAG)
  • Trigger-Node: Scheduled Cron (0 6 * * 1) – Wöchentlicher Mahnlauf.
  • Condition-Node: open_item.days_overdue > 14 AND open_item.dispute_reason == null.
  • Action-Node: Eskaliere Mahnstufe (level_1), berechne 5,00 € Mahngebühr und generiere Mahnschreiben mit QR-Zahlcode (GiroCode).

📚 Operative Prozessbegriffe & Transaktionsschnittstellen

Zentrale Fachbegriffe im Prozesszusammenhang (Operatives Modell)
ZUGFeRD & XRechnung
Europäische E-Rechnungsstandards (EN 16931) zur strukturierten, maschinenlesbaren Rechnungsübermittlung.
GoBD-Festschreibung
Revisionssichere Unveränderbarkeit von Buchungsbelegen nach deren Abschluss.
Offene Posten (OP)
Verzeichnis noch nicht ausgeglichener Forderungen (Debitoren) oder Verbindlichkeiten (Kreditoren).
Bankabstimmung (Reconciliation)
Automatisierter Abgleich von Kontoauszugsbewegungen gegen offene Rechnungen.
SKR03 / SKR04
Standardkontenrahmen der DATEV für die Gliederung von Finanzbuchhaltungskonten.
Mahnlauf
Periodischer systematischer Prozess zur Beitreibung überfälliger Kundenforderungen.
3-Wege-Abgleich
Prüfung von Bestellung, Wareneingang und Eingangsrechnung vor Zahlungsfreigabe.
📥 Eingänge & Trigger (Inputs)
  • Lieferscheinquittierung aus dem Warenausgang des Lagers
  • Abgeschlossene Arbeitsaufträge mit digitaler Kundensignatur
  • Abrechnungszyklen aus Miet- und Serviceverträgen
  • Elektronische Bankkontoauszüge (CAMT.053 / MT940)
📤 Ausgänge & Arbeitsergebnisse (Outputs)
  • GoBD-konforme ZUGFeRD-2.2- und XRechnungs-Dokumente
  • Doppelte Buchungsjournal-Einträge im Hauptbuch (General Ledger)
  • Automatisierte Zahlungsausgleiche und Skontobuchungen
  • DATEV-kompatible Exportstapel für Steuerberater und Wirtschaftsprüfer
  • Mahnungsdokumente und Verzugszinsaufstellungen
⚡ Kaskaden & Folgeprozesse (Cascades)
  • invoice_finalized -> open_item_created: Sofortige Anlage der offenen Forderung
  • payment_matched -> close_open_item: Schließen der Forderung und Auslösen des Rechnungsstatus bezahlt
  • invoice_overdue -> trigger_dunning_pipeline: Einsteuern in den Mahnlauf
  • batch_exported -> lock_accounting_period: Periodenabschluss mit Schreibschutz
🛡️ Nebenprozesse & Resilienz
  • Rechnungskorrektur und Storno bei berechtigter Reklamation
  • Manuelle Klärung von Restbeträgen und Rundungsdifferenzen beim Bankabgleich
  • Zahlungssperren bei strittigen Eingangsrechnungen (Dispute Management)
  • Währungskursdifferenzbuchung bei Forderungen in Fremdwährungen
💡 No-Code Checkliste & Praxistipps
  • Kontenrahmen (SKR03 oder SKR04) passend zur Steuerberaterkanzlei wählen
  • Standard-Zahlungsziele, Skontosätze und Mahngebühren parametrieren
  • DATEV-Beraternummer und Mandantennummer in den Exporteinstellungen pflegen
  • No-Code Zusatzfelder für Leitweg-ID (Behördenrechnung) auf Invoice anlegen

🗄️ Datenmodelle & Felder

AccountingCategories accounting_categories RLS Aktiv
15 Felder / Spalten

Tabelle accounting_categories

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
code VARCHAR(64) Ja * - Feld code
name VARCHAR(255) Ja * - Feld name
category_type VARCHAR(48) Ja * - Feld category_type
parent_id UUID Nein FK ➔ accounting_categories.id Feld parent_id
default_tax_behavior VARCHAR(48) Nein - Feld default_tax_behavior
account_code VARCHAR(32) Nein - Feld account_code
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata
AccountingCategoryMappings accounting_category_mappings RLS Aktiv
9 Felder / Spalten

Tabelle accounting_category_mappings

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
source_label VARCHAR(255) Ja * - Feld source_label
source_kind VARCHAR(32) Ja * - Feld source_kind
category_id UUID Ja * FK ➔ accounting_categories.id Feld category_id
confidence NUMERIC(4, 3) Nein - Feld confidence
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
metadata JSONB Ja * - Feld metadata
AccountingEntries accounting_entries RLS Aktiv
36 Felder / Spalten

Tabelle accounting_entries

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
entry_type VARCHAR(48) Ja * - Feld entry_type
document_id UUID Nein FK ➔ documents.id Feld document_id
expense_id UUID Nein FK ➔ expenses.id Feld expense_id
invoice_id UUID Nein FK ➔ invoices.id Feld invoice_id
payment_id UUID Nein FK ➔ payments.id Feld payment_id
customer_id UUID Nein FK ➔ customers.id Feld customer_id
supplier_id UUID Nein FK ➔ suppliers.id Feld supplier_id
project_id UUID Nein FK ➔ projects.id Feld project_id
work_order_id UUID Nein FK ➔ work_orders.id Feld work_order_id
booking_date DATE Ja * - Feld booking_date
document_date DATE Nein - Feld document_date
currency VARCHAR(3) Ja * - Feld currency
net_amount NUMERIC(14, 2) Ja * - Feld net_amount
tax_amount NUMERIC(14, 2) Ja * - Feld tax_amount
gross_amount NUMERIC(14, 2) Ja * - Feld gross_amount
tax_rate NUMERIC(6, 4) Nein - Feld tax_rate
tax_code VARCHAR(32) Nein - Feld tax_code
category_id UUID Nein FK ➔ accounting_categories.id Feld category_id
account_code VARCHAR(32) Nein - Feld account_code
counter_account_code VARCHAR(32) Nein - Feld counter_account_code
cost_center VARCHAR(64) Nein - Feld cost_center
cost_object VARCHAR(64) Nein - Feld cost_object
description TEXT Ja * - Feld description
status VARCHAR(48) Ja * - Feld status
confidence NUMERIC(4, 3) Nein - Feld confidence
export_batch_id UUID Nein FK ➔ export_batches.id Feld export_batch_id
idempotency_key VARCHAR(128) Nein - Feld idempotency_key
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata
ControllingAccountGroups controlling_account_groups RLS Aktiv
16 Felder / Spalten

Tabelle controlling_account_groups

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
code VARCHAR(32) Ja * - Feld code
name VARCHAR(128) Ja * - Feld name
kind VARCHAR(16) Ja * - Feld kind
nature VARCHAR(8) Ja * - Feld nature
is_direct BOOLEAN Ja * - Feld is_direct
sort_order INTEGER Ja * - Feld sort_order
active BOOLEAN Ja * - Feld active
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata
ControllingAccountRanges controlling_account_ranges RLS Aktiv
8 Felder / Spalten

Tabelle controlling_account_ranges

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
group_id UUID Ja * FK ➔ controlling_account_groups.id Feld group_id
account_from INTEGER Ja * - Feld account_from
account_to INTEGER Ja * - Feld account_to
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
metadata JSONB Ja * - Feld metadata
ControllingAllocationRules controlling_allocation_rules RLS Aktiv
13 Felder / Spalten

Tabelle controlling_allocation_rules

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
sender_id UUID Ja * FK ➔ cost_centers.id Feld sender_id
receiver_id UUID Ja * FK ➔ cost_centers.id Feld receiver_id
weight NUMERIC(14, 4) Ja * - Feld weight
note VARCHAR(255) Nein - Feld note
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata
ControllingImputedCosts controlling_imputed_costs RLS Aktiv
20 Felder / Spalten

Tabelle controlling_imputed_costs

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
name VARCHAR(128) Ja * - Feld name
kind VARCHAR(16) Ja * - Feld kind
method VARCHAR(16) Ja * - Feld method
amount NUMERIC(14, 2) Nein - Feld amount
percent NUMERIC(8, 4) Nein - Feld percent
capital_source VARCHAR(16) Nein - Feld capital_source
capital_amount NUMERIC(14, 2) Nein - Feld capital_amount
cost_center_id UUID Nein FK ➔ cost_centers.id Feld cost_center_id
valid_from DATE Ja * - Feld valid_from
valid_until DATE Nein - Feld valid_until
active BOOLEAN Ja * - Feld active
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata
ControllingInternalOrders controlling_internal_orders RLS Aktiv
17 Felder / Spalten

Tabelle controlling_internal_orders

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
code VARCHAR(32) Ja * - Feld code
name VARCHAR(128) Ja * - Feld name
description TEXT Nein - Feld description
status VARCHAR(8) Ja * - Feld status
budget NUMERIC(14, 2) Nein - Feld budget
cost_center_id UUID Nein FK ➔ cost_centers.id Feld cost_center_id
valid_from DATE Nein - Feld valid_from
valid_until DATE Nein - Feld valid_until
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata
ControllingKpiSnapshots controlling_kpi_snapshots RLS Aktiv
12 Felder / Spalten

Tabelle controlling_kpi_snapshots

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
kpi_key VARCHAR(48) Ja * - Feld kpi_key
snapshot_date DATE Ja * - Feld snapshot_date
value NUMERIC(18, 4) Ja * - Feld value
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata
ControllingKpiTargets controlling_kpi_targets RLS Aktiv
12 Felder / Spalten

Tabelle controlling_kpi_targets

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
kpi_key VARCHAR(48) Ja * - Feld kpi_key
target NUMERIC(18, 4) Nein - Feld target
warn NUMERIC(18, 4) Nein - Feld warn
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata
ControllingPlanLines controlling_plan_lines RLS Aktiv
14 Felder / Spalten

Tabelle controlling_plan_lines

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
version VARCHAR(64) Ja * - Feld version
period DATE Ja * - Feld period
group_id UUID Ja * FK ➔ controlling_account_groups.id Feld group_id
cost_center_id UUID Nein FK ➔ cost_centers.id Feld cost_center_id
amount NUMERIC(14, 2) Ja * - Feld amount
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata
ControllingReportSnapshots controlling_report_snapshots RLS Aktiv
14 Felder / Spalten

Tabelle controlling_report_snapshots

Feldname Datentyp Pflicht Schlüssel Fachliche Bedeutung
report_key VARCHAR(32) Ja * - Feld report_key
title VARCHAR(255) Ja * - Feld title
params JSONB Ja * - Feld params
payload JSONB Ja * - Feld payload
note TEXT Nein - Feld note
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata

🔌 Einstiegspunkte (UI & APIs)

Art Methode Endpunkt / Pfad Titel & Zweck Berechtigung
⚡ REST API DELETE /api/v1/accounting/currencies/{currency_id}
delete_currency
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API DELETE /api/v1/accounting/payment-terms/{term_id}
delete_payment_term
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API DELETE /api/v1/accounting/tax-codes/{tax_id}
delete_tax_code
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API GET /accounting
accounting_page
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/categories
list_categories
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/cost-centers
list_cost_centers
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/cost-types
list_cost_types
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/currencies
list_currencies
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/entries
list_entries
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/entries/{entry_id}
get_entry
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/journal-entries
list_journal_entries
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/journal-entries/{entry_id}
get_journal_entry
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/journals
list_journals
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/payment-terms
list_payment_terms
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/tax-advisor/check
get_tax_advisor_check
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/tax-advisor/configuration
get_tax_advisor_configuration
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/tax-advisor/questionnaire
get_tax_advisor_questionnaire
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/tax-codes
list_tax_codes
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/accounting/tax-rates
list_tax_rates
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/alerts
kpi_alerts
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/bab
bab
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/bi/catalog
bi_catalog
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/bi/export.csv
bi_export
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/bi/query
bi_query
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/bwa
bwa
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/cost-centers
cost_centers
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/exchange-rates
exchange_rates
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/groups
groups
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/imputed-costs
imputed_costs
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/internal-orders
internal_orders
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/internal-orders/{order_id}/lines
order_lines
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/kpis
kpis
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/kpis/{key}/history
kpi_history
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/margin
margin
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/plan
plan
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/snapshots
snapshots
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/controlling/snapshots/{snapshot_id}
snapshot
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/costing/entries
list_entries
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/costing/entries/{entry_id}
get_entry
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /api/v1/costing/projects/{project_id}/metrics
project_metrics
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /controlling
controlling_home
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API GET /controlling/{page}
controlling_page
Semantic binding: inventory_only; mutation=False
accounting
⚡ REST API PATCH /api/v1/accounting/currencies/{currency_id}
update_currency
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PATCH /api/v1/accounting/payment-terms/{term_id}
update_payment_term
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PATCH /api/v1/accounting/tax-codes/{tax_id}
update_tax_code
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/categories
create_category
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/cost-centers
create_cost_center
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/cost-types
create_cost_type
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/currencies
create_currency
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/currencies/seed
seed_currencies
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/entries
create_entry
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/entries/{entry_id}/approve
approve_entry
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/entries/{entry_id}/reject
reject_entry
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/journal-entries/inventory-adjustment
post_inventory_adjustment
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/journal-entries/post-expenses
post_approved_expenses
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/journal-entries/repost/invoice/{invoice_id}
repost_invoice_journal_entry
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/journal-entries/{entry_id}/reverse
reverse_journal_entry
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/payment-terms
create_payment_term
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/payment-terms/seed
seed_payment_terms
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/tax-advisor/ai-assist
tax_advisor_ai_assist
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/tax-advisor/apply
tax_advisor_apply_configuration
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/tax-advisor/proposal
tax_advisor_proposal
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/tax-codes
create_tax_code
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/accounting/tax-codes/seed
seed_tax_codes
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/controlling/backfill-dimensions
backfill_dimensions
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/controlling/exchange-rates/fetch-ecb
fetch_ecb_rates
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/controlling/imputed-costs
create_imputed
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/controlling/internal-orders
create_order
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/controlling/kpis/snapshot
kpi_snapshot
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/controlling/snapshots
freeze
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API POST /api/v1/costing/entries
create_entry
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PUT /api/v1/controlling/cost-centers/{center_id}
update_center
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PUT /api/v1/controlling/cost-centers/{center_id}/rules
set_rules
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PUT /api/v1/controlling/exchange-rates
save_rate
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PUT /api/v1/controlling/groups/{group_id}/ranges
set_ranges
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PUT /api/v1/controlling/imputed-costs/{cost_id}
update_imputed
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PUT /api/v1/controlling/internal-orders/{order_id}
update_order
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PUT /api/v1/controlling/internal-orders/{order_id}/status
order_status
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PUT /api/v1/controlling/kpis/{key}/target
set_target
Semantic binding: operator_surface; mutation=True
accounting
⚡ REST API PUT /api/v1/controlling/plan
save_plan
Semantic binding: operator_surface; mutation=True
accounting
🖥️ WEB-UI GET /admin/steuerberater
Steuerberater-Portal
DATEV-Exporte und GoBD-Buchungsstapel
accounting:manage
⚡ REST API GET /api/v1/accounting/export/datev
DATEV Export API
Erzeugt DATEV-konforme CSV-Buchungsstapel
accounting:read
🖥️ WEB-UI GET /controlling/bwa
BWA-Auswertung
Monatliche Betriebswirtschaftliche Auswertung
accounting:read
🖥️ WEB-UI GET /controlling/bab
Betriebsabrechnungsbogen
Gemeinkostenverteilung auf Kostenstellen
accounting:read
🖥️ WEB-UI GET /controlling/margin
Deckungsbeitragsrechnung
Marge nach Aufträgen und Kunden
accounting:read

🛡️ Regulatorik & Compliance

Dieses Modul unterliegt folgenden gesetzlichen, regulatorischen und Revisionsstandards:

  • Controlling-Standards nach IGC
  • HGB Kostenrechnungsgrundsätze
Verknüpfte Module:
➔ accounting ➔ finance ➔ projects