E-Rechnung mit easyJOB: so wird aus der easyJOB-Rechnung eine XRechnung oder ZUGFeRD
Für Agenturen und Beratungen, die mit easyJOB abrechnen. Die Seite beantwortet, was easyJOB laut Because Software selbst kann, in welchen Fällen ein zweiter Weg sinnvoll ist und wie eine Schlussrechnung mit Akonto-Abzügen fehlerfrei durch die Prüfung kommt.
Kurz gesagt: easyJOB kann E-Rechnungen, allerdings über ein Zusatzmodul. Laut Hersteller (Mai 2026) erzeugt es XRechnung (reine XML-Datei, das Pflichtformat für Behörden), ZUGFeRD (ein normales PDF mit denselben Rechnungsdaten als eingebettetem XML) bis 2.4 und PEPPOL-UBL. Stimmt bei einer Schlussrechnung der Abzug der Akonto-Zahlungen nicht auf den Cent, weist der Rechnungseingang des Kunden die Datei zurück, und die Zahlung verzögert sich um Wochen. Genau das prüfen Sie hier in zwei Minuten, bevor es passiert. Ist das Modul lizenziert, nutzen Sie es. Fehlt es, reichert Weg A das gewohnte easyJOB-PDF in wenigen Tagen zu einem ZUGFeRD-PDF an. Für den Empfang und als unabhängige Prüfung vor dem Versand an Behörden dient der kostenlose Viewer.
Was easyJOB heute kann
easyJOB stammt von der Because Software GmbH aus Germering bei München und versteht sich als ERP für Agenturen und Projektgeschäft. Der Hersteller nennt mehr als 850 Installationen. Betrieben wird easyJOB laut einem Beitrag vom Mai 2024 als On-Premises-Lösung, entweder auf eigenen Servern oder gemietet in einem externen Rechenzentrum.
Für die Abrechnung beschreibt Because Software Teilabrechnungen, Abschlags- und Akonto-Rechnungen, Sammelfaktura über mehrere Jobs und einen Rechnungssplit auf beliebig viele Empfänger. Die Übergabe an die Finanzbuchhaltung läuft über eine optionale FIBU-Schnittstelle.
Zur E-Rechnung gibt es zwei Zusatzmodule. „Elektronische Rechnungsübergabe im ZUGFeRD-Format / XRechnung“ erzeugt ausgehende Rechnungen; die Standardversion lässt sich laut Modulseite an ZUGFeRD-Vorgaben einzelner Kunden anpassen. „Digitaler ER-Workflow inkl. E-Rechnung“ verarbeitet eingehende XRechnungen (CII und UBL) und ZUGFeRD-Dateien, erzeugt daraus ein lesbares PDF und übernimmt Kopfdaten. Das Modul ist nicht neu: Schon im April 2021 wurde die Unterstützung von ZUGFeRD 2.1 samt XRechnung gemeldet. Eine Besonderheit beschreibt der Hersteller selbst: Die XRechnung aus easyJOB ist eine XML-Datei, in die das Rechnungs-PDF eingebettet ist.
Der passende Weg für easyJOB
Mit lizenziertem Modul brauchen Sie für den Ausgang keinen zweiten Dienst. Die folgenden Schritte gelten für Installationen ohne Modul oder als Übergangslösung (Weg A):
- PDF aus easyJOB: Die Rechnung wird wie bisher mit Ihrem Layout gedruckt, inklusive Leistungsnachweis. Das PDF bleibt die sichtbare Rechnung.
- Daten bereitstellen: Kopfdaten, Positionen und Summen kommen aus einem Export, einem Report oder einer Datenbanksicht. Welche Quelle in Ihrer Installation verfügbar ist, klären Sie mit Ihrem Betreuer; die REST-API (Schnittstelle, über die Programme Daten austauschen) kommt nur infrage, wenn sie Rechnungsdaten liefert.
- Mapping: easyJOB-Einheiten auf
HUR,DAYundLSübersetzen, Leistungszeitraum und Kundenreferenzen zuordnen. - Erzeugen: Ein Aufruf von
/v1/invoices/generatemit beiden Teilen liefert das archivtaugliche Hybrid-PDF samt Prüfbericht; Summenfehler kommen sofort als HTTP 422 zurück, bevor etwas an den Kunden geht. - Ablage: ZUGFeRD-PDF an den Kunden, bei Behörden die XML hochladen oder senden; beide Dateien zurück in die Dokumentenablage.
Realistischer Aufwand: wenige Tage, wenn der Datenexport bereits existiert. Weil in diesem Weg die Daten und das sichtbare PDF aus zwei Quellen stammen, sind Sie selbst dafür verantwortlich, dass beide übereinstimmen.
Fragen Sie Ihren easyJOB-Betreuer wörtlich: „Ist bei uns das Zusatzmodul Elektronische Rechnungsübergabe lizenziert, auf welchem easyJOB-Release laufen wir, und aus welchem Export oder Report bekommen wir Rechnungskopf, Positionen und Summen, notfalls über die RESTful API?“
Beispiel: easyJOB-Schlussrechnung als ZUGFeRD in einem Aufruf
Eine Digitalagentur schließt einen Website-Relaunch ab. Zwei Akonto-Rechnungen über je 3.000,00 € netto (3.570,00 € brutto) sind bezahlt. Die Schlussrechnung weist alle Leistungen aus und zieht 7.140,00 € ab.
Vorher: easyJOB druckt die Schlussrechnung für den Website-Relaunch als PDF, die zwei bezahlten Akonto-Rechnungen stehen darauf nur als Text. Nachher: dasselbe PDF mit eingebetteter XRechnung, in der die Anzahlungen als bereits gezahlter Betrag abgezogen sind und der Zahlbetrag auf den Cent stimmt.
Der folgende Kasten ist für Ihre IT oder Ihr Systemhaus gedacht. Als Inhaber reicht es zu wissen: So sieht ein Beispiel aus, das die Prüfung besteht.
Technisches Beispiel anzeigen (JSON, für Ihre IT)
# PDF aus easyJOB plus Rechnungsdaten an die API: curl -X POST https://api.einfache-rechnungen.de/v1/invoices/generate \ -H "X-API-Key: erk_ihr_key" \ -H "Content-Type: application/json" \ -d @schlussrechnung.json
{
"invoice": {
"invoice_number": "RE-2026-1184",
"issue_date": "2026-09-22",
"invoice_type_code": "380",
"billing_period_start": "2026-06-01",
"billing_period_end": "2026-09-15",
"due_date": "2026-10-06",
"currency": "EUR",
"buyer_reference": "KST 4711",
"purchase_order_reference": "PO-88213",
"note": "Schlussrechnung Website-Relaunch. Abzüglich Akonto-Rechnungen AK-2026-031 und AK-2026-044 über je 3.000,00 EUR netto.",
"seller": {
"name": "Beispiel Digitalagentur GmbH",
"address": { "street": "Werkstraße 12", "postal_code": "80331", "city": "München", "country_code": "DE" },
"vat_id": "DE123456789",
"electronic_address": "buchhaltung@digitalagentur.example",
"electronic_address_scheme": "EM",
"contact": { "name": "A. Beispiel", "phone": "+49 89 1234567", "email": "buchhaltung@digitalagentur.example" }
},
"buyer": {
"name": "Beispiel Maschinenbau AG",
"address": { "street": "Industriering 3", "postal_code": "86150", "city": "Augsburg", "country_code": "DE" },
"vat_id": "DE987654321",
"electronic_address": "rechnungseingang@maschinenbau.example",
"electronic_address_scheme": "EM"
},
"payment_means": { "code": "58", "iban": "DE89370400440532013000" },
"lines": [
{ "line_id": "1", "name": "Konzeption und Screendesign", "quantity": "6", "unit_code": "DAY",
"unit_price_net": "880.00", "line_net_amount": "5280.00", "tax_category": "S", "tax_rate": "19" },
{ "line_id": "2", "name": "Frontend-Entwicklung", "quantity": "42", "unit_code": "HUR",
"unit_price_net": "105.00", "line_net_amount": "4410.00", "tax_category": "S", "tax_rate": "19" },
{ "line_id": "3", "name": "Fotoproduktion (Fotograf, weiterberechnet)", "quantity": "1", "unit_code": "LS",
"unit_price_net": "1450.00", "line_net_amount": "1450.00", "tax_category": "S", "tax_rate": "19" }
],
"tax_breakdown": [
{ "category": "S", "rate": "19", "taxable_amount": "11140.00", "tax_amount": "2116.60" }
],
"totals": { "line_net_amount": "11140.00", "net_amount": "11140.00", "tax_amount": "2116.60",
"gross_amount": "13256.60", "prepaid_amount": "7140.00", "payable_amount": "6116.60" }
},
"invoice_pdf_base64": "JVBERi0xLjcK…",
"options": { "profile": "XRECHNUNG", "syntax": "CII", "allow_unverified_visual": true }
}
Die Rechnung prüft sich selbst: 13.256,60 € brutto minus 7.140,00 € ergibt 6.116,60 €
Zahlbetrag. Die Antwort enthält visual_source: "client_supplied" und den
Validierungsbericht.
Wichtig: In diesem Weg prüft die API nicht, ob das sichtbare PDF mit der eingebetteten XML übereinstimmt. Beide müssen aus demselben Rechnungsdatensatz stammen; dafür sorgt Ihr Skript oder die Anbindung.
Feldzuordnung
Kürzel wie BR-DE-26, BT-10 oder BG-3 stammen aus der Norm EN 16931. Sie müssen sie nicht kennen; wichtig ist der erklärende Satz daneben.
| Angabe auf Ihrer easyJOB-Rechnung | EN 16931 | API-Feld | Hinweis |
|---|---|---|---|
| Rechnungsnummer | BT-1 | invoice.invoice_number | Akonto und Schluss mit eigenen Nummern |
| Rechnungsdatum | BT-2 | invoice.issue_date | Format JJJJ-MM-TT |
| Projektlaufzeit | BT-73/74 | billing_period_start/_end | statt Lieferdatum |
| Bestellnummer des Kunden | BT-13 | purchase_order_reference | nur ein Wert |
| Kostenstelle oder Leitweg-ID | BT-10 | buyer_reference | im Profil XRECHNUNG Pflicht |
| Leistungsposition | BG-25 | lines[] | Menge × Preis = Positionsbetrag |
| Akonto-Abzug | BT-113 | totals.prepaid_amount | Summe brutto |
| Bankverbindung | BT-84 | payment_means.iban | muss gültig sein (BR-DE-19) |
Stolpersteine in Agenturen mit easyJOB
- Sammelfaktura über mehrere Jobs: easyJOB fasst mehrere Jobs zu einer Rechnung
zusammen, die E-Rechnung kennt aber nur eine Bestellreferenz im Kopf. Mehrere Nummern hintereinander in
purchase_order_referencekann die Software des Kunden nicht zuordnen, die Rechnung geht in die manuelle Klärung. Lösung: die Bestellnummer des Kunden in den Kopf, Jobnummern in die Positionsbeschreibung. - Rechnungssplit auf mehrere Empfänger: Jede Teilrechnung ist eine eigene E-Rechnung mit eigenem Käufer, eigener Referenz und eigener Summe. Wer die Käuferdaten der Ursprungsrechnung kopiert, schickt einem Empfänger die Referenz des anderen. Lösung: je Empfänger einen vollständigen Datensatz erzeugen.
- Akonto-Rechnung mit falschem Typcode: Wird ein Abschlag als normale
Rechnung 380 verschickt, erkennt der Kunde ihn nicht als Anzahlung und kann die spätere Schlussrechnung nicht sauber
verrechnen. Lösung:
Abschläge mit
invoice_type_code326 ausgeben, erst die Schlussrechnung mit 380. - Abweichung zwischen PDF und XML: Rundet das easyJOB-Layout anders als der Datenexport, zeigt das PDF einen anderen Betrag als die XML. Die API prüft die XML, nicht das PDF. Lösung: Beträge aus derselben Quelle lesen, aus der auch der Druck kommt, und Stichproben im Viewer gegen das PDF halten.
- Skonto nur im Layouttext: Steht „2 % Skonto bei Zahlung binnen 10 Tagen“
nur im gedruckten PDF, fehlt die Angabe in der XML, und die Software des Kunden kennt sie nicht.
EN 16931 hat kein eigenes Skontofeld; XRechnung erwartet dafür einen Zahlungsbedingungstext nach
dem Muster
#SKONTO#TAGE=10#PROZENT=2.00#. In der API geben Sie Skonto strukturiert an:payment_terms.cash_discountsmitdaysundpercent; das Muster schreibt die API dann selbst in die Zahlungsbedingungen (BT-20).
Häufige Fragen
Kann easyJOB selbst E-Rechnungen erzeugen?
Wozu brauche ich dann einfache-rechnungen.de?
Wie bilde ich eine Schlussrechnung mit mehreren Akonto-Rechnungen ab?
totals.prepaid_amount. Im Profil XRECHNUNG lässt sich in preceding_invoices nur ein Vorbeleg angeben; die Nummern aller Akonto-Rechnungen nennen Sie deshalb zusätzlich in note.Kann ich die Rechnungsdaten über die easyJOB-REST-API lesen?
Was passiert nach einem easyJOB-Update?
Wer haftet, wenn die E-Rechnung inhaltlich falsch ist?
easyJOB ist ein Produkt der Because Software GmbH. einfache-rechnungen.de ist ein unabhängiges Angebot und steht in keiner Verbindung zum Hersteller.
Kosten: Die Prüfung und Erzeugung kostet 0 € für 10 Rechnungen im Monat, danach ab 7,99 € netto. Eine Anbindung durch Coreventa ist ein Festpreisprojekt; den Rahmen klären wir im kostenlosen Erstgespräch. Ihre Rechnungs- und Kundendaten bleiben dabei auf deutschen Servern (Hetzner).
easyJOB-Rechnungen als E-Rechnung ausgeben
Kostenlos testen: 10 Rechnungen im Monat, keine Kreditkarte. Wenn Ihr easyJOB ohne E-Rechnungsmodul läuft, richten wir die Anbindung über das gewohnte Druck-PDF ein.
Kostenlos registrieren Anbindung besprechenQuellen (abgerufen am 25.09.2026): Because Software, Startseite; E-Rechnungen für Agenturen, ZUGFeRD/XRechnung (18.05.2026); Zusatzmodule für easyJOB; Buchhaltungsvorbereitung; Agentursoftware in der Cloud? (27.05.2024); easyJOB Release 6.1 (12.12.2024); Agentursoftware Guide, ZUGFeRD-Zusatzmodul (14.04.2021).