Skip to content

Rechnungsgenerierung

Jan Erbert edited this page May 21, 2025 · 2 revisions

🧾 Rechnungsgenerierung

Das Hauptskript main.py übernimmt die komplette Generierung, Prüfung und Versendung der Rechnung inklusive PDF-Erstellung und Archivierung.


▶️ Ausführen

Standard:

python main.py

Alternativ mit Startskript (vereinfacht):

  • Windows:
    start-rechnung.bat

  • Linux / macOS:
    ./start-rechnung.sh


🔁 Ablauf

  1. Lade Kundendaten aus data/daten.json
  2. Prüfe, ob eine Rechnung fällig ist (Zyklus oder einmalig)
  3. Ermittle Abrechnungszeitraum
  4. Berechne Betrag:
    • bei Monatsleistung → Betrag × Monate
    • bei Stundenleistung → Summiere aus stunden_YYYY_MM.json
    • bei Pauschale → Betrag direkt übernehmen
  5. Zusätzliche Leistungen werden ggf. multipliziert
  6. Berechne MwSt. (außer bei Kleinunternehmern)
  7. Erzeuge HTML mit Jinja2-Template
  8. Generiere PDF mit wkhtmltopdf
  9. Versende Mail inkl. PDF-Anhang
  10. Archiviere Rechnung, falls Pfad gesetzt
  11. Verlaufseintrag schreiben in verlauf-YYYY.json

📌 Hinweise

  • Alle PDF-Rechnungen werden lokal im Arbeitsspeicher erstellt und bei Bedarf archiviert.
  • Die MwSt. wird nur berechnet, wenn du kein Kleinunternehmer nach § 19 UStG bist.
  • Für stundenbasierte Rechnungen müssen Monatsdateien wie stunden_2025_05.json im stunden/-Verzeichnis existieren.
  • Wenn keine Stunden eingetragen wurden, wird keine Rechnung erstellt, aber ein Verlaufseintrag mit 0 Stunden geschrieben.

Weiter zu: 📧 Mailversand & BCC

Clone this wiki locally