Zum Inhalt

Rechnungsbeträge berechnen

Der Service Task „Rechnungsbeträge berechnen" ergänzt Rechnungsdaten automatisch um alle relevanten Beträge. Aus den Einzelpositionen (Menge, Einzelpreis netto, Umsatzsteuersatz) werden Positionssummen, Umsatzsteuer und Gesamtbeträge berechnet. So können Rechnungen vollständig automatisiert erstellt werden, ohne dass Beträge manuell kalkuliert werden müssen.


Funktionsweise

Der Task durchläuft alle Rechnungspositionen und berechnet:

  • Pro Position: Nettosumme, Bruttosumme, Umsatzsteuer
  • Aggregiert: Gesamtnetto, Gesamtbrutto, Umsatzsteuer nach Steuersatz (0 %, 7 %, 19 %)

Die berechneten Werte werden direkt in das Rechnungsobjekt geschrieben und stehen für nachfolgende Schritte (z. B. PDF-Erstellung oder E-Rechnung) zur Verfügung.


Input-Parameter

Als Eingabe wird das Rechnungsobjekt mit den Positionen übergeben:

{
  "app_invoice_items_custom": [
    {
      "app_item_description": "Beratung",
      "app_amount": 10,
      "app_item_price_net": 150.00,
      "app_vat_percentage": 19,
      "app_unit": "Stunden"
    },
    {
      "app_item_description": "Material",
      "app_amount": 5,
      "app_item_price_net": 25.00,
      "app_vat_percentage": 7,
      "app_unit": "Stück"
    }
  ]
}

Erläuterung:

  • app_invoice_items_custom: Liste der Rechnungspositionen.
  • app_amount: Menge der jeweiligen Position.
  • app_item_price_net: Einzelpreis netto.
  • app_vat_percentage: Umsatzsteuersatz (0, 7 oder 19).
  • app_unit: Mengeneinheit (z. B. „Stunden", „Stück", „Pauschal").

Output

Das Rechnungsobjekt wird um berechnete Felder erweitert:

Pro Position:

Feld Beschreibung
app_invoice_item_no Laufende Positionsnummer (1, 2, 3, …)
app_items_total_sum_net Nettosumme der Position (Menge × Einzelpreis)
app_items_total_sum_gross Bruttosumme der Position
app_item_price_gross Einzelpreis brutto

Aggregierte Felder:

Feld Beschreibung
app_net_total Gesamtsumme netto
app_gross_total Gesamtsumme brutto
app_vat_total Gesamte Umsatzsteuer
app_vat_nineteen Umsatzsteuer 19 % (Betrag)
app_vat_seven Umsatzsteuer 7 % (Betrag)
app_vat_zero Umsatzsteuer 0 % (Betrag)
app_has_vat_nineteen true, wenn Positionen mit 19 % vorhanden
app_has_vat_seven true, wenn Positionen mit 7 % vorhanden
app_has_vat_zero true, wenn Positionen mit 0 % vorhanden

Beispiel

Eine Rechnung enthält zwei Positionen: 10 Stunden Beratung à 150,00 € netto (19 %) und 5 Stück Material à 25,00 € netto (7 %). Der Service berechnet automatisch: Netto gesamt 1.625,00 €, USt. 19 %: 285,00 €, USt. 7 %: 8,75 €, Brutto gesamt 1.918,75 €.


JSONata-Beispiel

{
  "app_invoice_items_custom": $.app_invoice_items_custom
}

Alle weiteren Rechnungsfelder (Rechnungsnummer, Datum, Empfänger usw.) können zusätzlich übergeben werden — sie werden unverändert durchgereicht.


Hinweise

  • Unterstützt die Umsatzsteuersätze 0 %, 7 % und 19 %. Andere Steuersätze führen zu einer Fehlermeldung.
  • Alle Beträge werden kaufmännisch auf zwei Dezimalstellen gerundet.
  • Neben frei definierten Positionen (app_invoice_items_custom) werden auch Artikelpositionen (app_invoice_items_articles) unterstützt — beide Typen können in einer Rechnung kombiniert werden.
  • Die Positionsnummern werden fortlaufend vergeben: zuerst die freien Positionen, dann die Artikelpositionen.

Tipp

Dieser Service wird typischerweise als erster Schritt in einer Rechnungs-Pipeline eingesetzt — gefolgt von PDF aus Handlebars-Template erstellen und optional E-Rechnung erstellen (ZUGFeRD). Alternativ kann die gesamte Kette mit dem Service Komplette E-Rechnung erstellen in einem einzigen Schritt ausgeführt werden.