75 lines
2.7 KiB
Markdown
75 lines
2.7 KiB
Markdown
---
|
|
name: auszug-import
|
|
description: Workflow zur Betreuung von Kontoauszugs-Importen (Inbox scannen, Entwürfe prüfen, Vorschau zusammenfassen, bestätigen) sowie zum Beheben von Parser-Fehlern im Tool-Repo ~/bin/finance. Use when neue PDF-Kontoauszüge importiert werden sollen, ein Import in der Vorschau (draft) auf Bestätigung wartet, oder ein Import mit Fehlerstatus (error) fehlgeschlagen ist und der Parser angepasst werden muss.
|
|
---
|
|
|
|
# Auszug-Import betreuen
|
|
|
|
## 1. Status prüfen
|
|
|
|
```bash
|
|
KEY=$(grep '^FB_API_KEY=' $HOME/.local/share/finance_pod/.env | cut -d= -f2 | tr -d "'")
|
|
curl -s -H "Authorization: Bearer $KEY" http://127.0.0.1:8096/api/imports | jq
|
|
```
|
|
|
|
Falls neue PDFs in der Inbox liegen könnten (`~/.local/share/finance_pod/data/inbox/`),
|
|
zuerst neu einscannen:
|
|
|
|
```bash
|
|
curl -s -X POST -H "Authorization: Bearer $KEY" http://127.0.0.1:8096/api/imports/scan-inbox | jq
|
|
```
|
|
|
|
Auf Status `draft` (wartet auf Bestätigung) und `error` (Parser
|
|
fehlgeschlagen) filtern.
|
|
|
|
## 2. Drafts: Vorschau prüfen und bestätigen
|
|
|
|
```bash
|
|
curl -s -H "Authorization: Bearer $KEY" \
|
|
http://127.0.0.1:8096/api/imports/<id>/preview | jq
|
|
```
|
|
|
|
Dem Nutzer zusammenfassen: Zeitraum, Anzahl Buchungen, Saldo-Check
|
|
(`balance_ok`), Zahl der erkannten Duplikate. Erst nach ausdrücklicher
|
|
Bestätigung durch den Nutzer:
|
|
|
|
```bash
|
|
curl -s -X POST -H "Authorization: Bearer $KEY" \
|
|
http://127.0.0.1:8096/api/imports/<id>/confirm | jq
|
|
```
|
|
|
|
Nie blind übernehmen — auch bei `balance_ok: true` dem Nutzer die Eckdaten
|
|
vorlegen.
|
|
|
|
## 3. Parser-Fehler beheben
|
|
|
|
Bei Status `error` (`error_message` beachten) liegt die Original-PDF weiterhin
|
|
in der Inbox. Vorgehen im Tool-Repo `/home/wlfb/bin/finance`:
|
|
|
|
1. PDF-Text ansehen, um Regexe abzugleichen:
|
|
```bash
|
|
cd /home/wlfb/bin/finance && .venv/bin/python scripts/dump_pdf_text.py \
|
|
~/.local/share/finance_pod/data/inbox/<datei>.pdf
|
|
```
|
|
2. Regex-Konstanten im passenden Parser fixen — je nach Bank
|
|
`app/parsers/vr.py`, `app/parsers/hvb.py` oder `app/parsers/dkb.py`
|
|
(Bank-Erkennung in `app/parsers/detect.py`, gemeinsames Interface in
|
|
`app/parsers/base.py`).
|
|
3. Tests laufen lassen:
|
|
```bash
|
|
cd /home/wlfb/bin/finance && .venv/bin/python -m pytest -q
|
|
```
|
|
4. Image neu bauen und Pod neu aufsetzen, damit die Parser-Änderung im
|
|
laufenden Container wirksam wird:
|
|
```bash
|
|
cd /home/wlfb/bin && ./create_pod_finance.sh
|
|
```
|
|
5. Import erneut anstoßen (`scan-inbox` bzw. erneuter Upload) und Vorschau
|
|
wie unter Schritt 2 prüfen.
|
|
|
|
## Grundregeln (siehe auch CLAUDE.md)
|
|
|
|
- Importe immer über die Vorschau bestätigen lassen, nie blind übernehmen.
|
|
- Echte, bereits bestätigte Buchungen nicht anfassen — nur Entwürfe/Importe
|
|
in diesem Workflow bearbeiten.
|