mivita/dev/steuerberater/steuerberater-abgleich-status.md

58 lines
2.4 KiB
Markdown

# Steuerberater-Abgleich DATEV (Stand nach Korrekturen)
## Kontext
- Basisdateien:
- `dev/steuerberater/steuerberater.csv` (Rueckmeldung Steuerberater)
- `storage/app/datev/2025/08/EXTF_Buchungsstapel_2025_08_20260312100928.csv` (Systemexport August)
- Zusaetzlich geprueft:
- DB-Daten aus `user_invoices`, `shopping_orders`, `datev_export_lines`
- Sonderfaelle Homeparty und Sammelrechnungen/API
## Was wurde technisch gefixt
1. Sammelrechnungen/API:
- Problem: In vielen Faellen wurde nur der Steueranteil exportiert.
- Ursache: `net_split` fehlte auf `ShoppingOrder` (historisch), DATEV-Bildung hatte dadurch keinen Nettoanteil.
- Fix: `net_split` wird bei Sammelrechnungen gespeichert; DATEV nutzt historisch `shopping_collect_order.net_split` als Fallback.
2. Homeparty:
- Problem: Exportbetrag wich deutlich vom Rechnungstotal ab.
- Ursache: Homeparty-Splits wurden aus `vk_*` gelesen, Rechnungssicht basiert aber auf `ek_*`.
- Fix: DATEV nutzt fuer diese Arrays `ek_tax` und `ek_net`.
## Ergebnis nach Korrektur (Smoke-Test)
- Beispielbelege jetzt korrekt zum Rechnungstotal:
- `202536737` -> `634,88`
- `202536738` -> `806,14`
- `202537289` -> `228,86`
- `202537883` -> `426,63`
- `202537907` -> `609,87`
## Einordnung der offenen Punkte
1. Logik 8125 vs. 8400:
- Kein pauschaler Exportfehler.
- Ohne verifizierte USt-ID bleibt `8400` plausibel.
- Mit verifizierter USt-ID/Reverse-Charge folgt Export der Rechnung und bucht auf `8125`.
2. Storno-Hinweise:
- Fuer August fachlich kein DATEV-Storno ableitbar.
- Grund: Zu diesem Zeitpunkt waren im System noch keine echten Stornorechnungen aktiv; teils nur Liefer-/Bestellstorno oder Rechnungsvermerk.
3. Fehlende Rechnungen:
- Viele Rueckmeldebelege liegen in der DB in `09/2025` und fehlen deshalb korrekt im August-Export.
- Drei Rechnungsnummern wurden unter der angegebenen `full_number` nicht gefunden:
- `202506145`
- `202506147`
- `202538333`
4. USt-ID Folgeticket (offen):
- Aktuell: Validierung beim Eintragen.
- Soll: Bei jeder Bestellung neu pruefen; wenn ungueltig, Hinweis + USt-Berechnung.
5. Doppelzahlungen/Payone (offen):
- DATEV-Export allein reicht nicht als Nachweis.
- Erforderlich: Abgleich `payment_transactions` (`txid`, `reference`) plus PAYONE Portal/API.
## CSV fuer Steuerberater
- Strukturierte Fassung liegt in:
- `dev/steuerberater/steuerberater-abgleich-status.csv`