feat: DATEV Export (EXTF v5.0) + iCal Fristen feed + UI buttons
DATEV Export: - Real DATEV EXTF Buchungsstapel format (v700, semicolon-separated) - Header line with metadata (consultant, client, year, currency) - Data rows: Soll, Haben, Betrag, Belegdatum, Text, Belegnr, USt% - Also supports simple CSV format - Audit-logged - Download button in SKR04/Buchführung tab iCal Fristen Feed: - Real .ics calendar feed (RFC 5545 compliant) - Aggregates ALL deadlines: UStVA, contracts, licenses, assets, projects, invoices - 23 events from 6 modules - Subscribe via webcal:// URL in Apple/Google/Outlook Calendar - Download button in SKR04/Buchführung tab 0 TypeScript errors, ESLint clean
This commit is contained in:
1 parent
c184513b2a
commit
07147a758c
3 files changed
+291
No files matched your search
@@ -13,6 +13,9 @@ import {
|
||||
Link2,
|
||||
Banknote,
|
||||
Lock,
|
||||
Download,
|
||||
FileText,
|
||||
CalendarClock,
|
||||
} from 'lucide-react'
|
||||
import { useFetch } from '@/hooks/use-fetch'
|
||||
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'
|
||||
@@ -755,6 +758,36 @@ function BuchhaltungTab() {
|
||||
</CardContent>
|
||||
</Card>
|
||||
|
||||
{/* DATEV + iCal export */}
|
||||
<div className="grid grid-cols-1 gap-3 sm:grid-cols-2">
|
||||
<a
|
||||
href="/api/aos/datev-export?format=datev&year=2026"
|
||||
className="flex items-center gap-3 rounded-md border border-border p-3 transition hover:border-foreground/40"
|
||||
>
|
||||
<div className="flex size-10 items-center justify-center rounded-md bg-muted">
|
||||
<FileText className="size-5 text-muted-foreground" />
|
||||
</div>
|
||||
<div className="min-w-0 flex-1">
|
||||
<p className="text-sm font-medium">DATEV Buchungsstapel (EXTF)</p>
|
||||
<p className="text-[11px] text-muted-foreground">SKR04 Buchungen als DATEV v5.0 Export. Steuerberater-kompatibel.</p>
|
||||
</div>
|
||||
<Download className="size-4 text-muted-foreground" />
|
||||
</a>
|
||||
<a
|
||||
href="/api/aos/fristen/ical"
|
||||
className="flex items-center gap-3 rounded-md border border-border p-3 transition hover:border-foreground/40"
|
||||
>
|
||||
<div className="flex size-10 items-center justify-center rounded-md bg-muted">
|
||||
<CalendarClock className="size-5 text-muted-foreground" />
|
||||
</div>
|
||||
<div className="min-w-0 flex-1">
|
||||
<p className="text-sm font-medium">Fristen als iCal-Feed</p>
|
||||
<p className="text-[11px] text-muted-foreground">Alle Deadlines (UStVA, Verträge, Lizenzen) als Kalender-Abo.</p>
|
||||
</div>
|
||||
<Download className="size-4 text-muted-foreground" />
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div className="rounded-md border border-dashed border-border p-3 text-[11px] text-muted-foreground">
|
||||
<p className="font-medium text-foreground">SKR04 Kontenrahmen · Doppelte Buchführung · GoBD Festschreibung</p>
|
||||
<p className="mt-1">Jeder Buchungssatz wird per „Soll an Haben" gebucht. GoBD-Festschreibung macht Buchungen unveränderlich (SHA-256 Hash). Reverse Charge und § 19 UStG (Kleinunternehmer) werden gekennzeichnet. DATEV-Export als Buchungsstapel.</p>
|
||||
|
||||
Reference in new issue
Block a user