Rechnungen per API auf Absetzbarkeit prüfen
Die Steuerscan REST API analysiert Rechnungen und Belege per KI auf steuerliche Absetzbarkeit nach deutschem Steuerrecht — DSGVO-konform auf EU-Servern (Frankfurt), 1 Credit pro Analyse.
Was ist die Steuerscan API?
Die Steuerscan REST API analysiert Rechnungen und Belege per KI auf steuerliche Absetzbarkeit nach deutschem Steuerrecht — DSGVO-konform auf EU-Servern (Frankfurt), 1 Credit pro Analyse.
Ein einziger POST-Endpunkt. Datei als Form-Data, API-Key im Header — in jeder Sprache und jedem Tool integrierbar.
Verarbeitung ausschließlich auf EU-Servern (Frankfurt). Daten werden nach der Analyse sofort gelöscht und nie zum KI-Training verwendet.
1 Credit = 1 Analyse. Keine monatlichen Gebühren, keine Mindestabnahme. Credits verfallen nie. 5 Credits gratis bei Registrierung.
Schnellstart
API-Schlüssel erstellen
Registrieren Sie sich bei Steuerscan (5 Credits gratis) und erstellen Sie unter Dashboard → API-Schlüssel einen neuen Schlüssel. Kopieren Sie den Schlüssel — er wird nur einmal angezeigt.
Request senden
Senden Sie einen POST-Request mit Ihrer Rechnung als Form-Data:
curl -X POST https://api.steuerscan.de/api/v1/process \ -H "X-API-Key: sk_live_IHR_SCHLÜSSEL" \ -F "file=@rechnung.pdf" \ -F "job_description=Software Developer"
| Testbetrieb | Echtbetrieb | |
|---|---|---|
| Endpunkt | /api/v1/test/process | /api/v1/process |
| API-Schlüssel | sk_test_... | sk_live_... |
| Kosten | kostenlos | 1 Credit / Analyse |
Ergebnis auswerten
Die API liefert ein strukturiertes JSON-Objekt zurück:
{
"results": {
"mode": "final",
"result": {
"kategorie": "Arbeitsmittel",
"abzugsart": "Werbungskosten",
"absetzbar": true,
"absetzbar_fuer_bestimmte_berufe": false,
"verdict": "absetzbar",
"confidence": "high",
"missing_information": [],
"requires_user_confirmation": false,
"grund": "Der Laptop ist als Arbeitsmittel nach §9 EStG...",
"bedingungen": [],
"hinweise": ["Für Arbeitnehmer ohne Vorsteuerabzug gilt die GWG-Grenze inklusive Umsatzsteuer."],
"quellen": ["https://www.gesetze-im-internet.de/estg/__9.html"]
},
"preliminary_reason": null,
"context_tree": null
},
"credits_remaining": 42
}Welche Parameter nimmt die API entgegen?
X-API-KeyHEADERERFORDERLICHIhr API-Schlüssel. Beginnt mit sk_live_ (Echtbetrieb) oder sk_test_ (Testbetrieb, kostenlos).
fileBODYERFORDERLICHDie Rechnung oder der Beleg als Form-Data. Unterstützte Formate: PDF, JPG, JPEG, PNG, HEIC, HEIF. Maximale Dateigröße: 10 MB.
job_descriptionBODYOPTIONALBerufsbezeichnung des Nutzers (z.B. Software Developer). Verbessert die Analyse für berufsbedingte Ausgaben nach §9 EStG.
Was gibt die API zurück?
Sofortiges Ergebnis
Bei mode: "final" lesen Sie die Abzugsfelder aus results.result.
{
"results": {
"mode": "final",
"result": {
"kategorie": "Arbeitsmittel",
"abzugsart": "Werbungskosten",
"absetzbar": true,
"absetzbar_fuer_bestimmte_berufe": false,
"verdict": "absetzbar",
"confidence": "high",
"missing_information": [],
"requires_user_confirmation": false,
"grund": "Der Laptop ist als Arbeitsmittel nach §9 EStG...",
"bedingungen": [],
"hinweise": ["Für Arbeitnehmer ohne Vorsteuerabzug gilt die GWG-Grenze inklusive Umsatzsteuer."],
"quellen": ["https://www.gesetze-im-internet.de/estg/__9.html"]
},
"preliminary_reason": null,
"context_tree": null
},
"credits_remaining": 42
}Kontext erforderlich
Bei mode: "needs_context" starten Sie am root_node_id. Nach einer Auswahl suchen Sie in den Optionen das passende value und öffnen den Knoten aus next_node_id. Das wiederholen Sie, bis type: "result" erreicht ist. Dessen result enthält dieselben Abzugsfelder wie ein sofortiges Ergebnis.
{
"results": {
"mode": "needs_context",
"result": null,
"preliminary_reason": "Die Zahlungsart entscheidet über die Absetzbarkeit.",
"context_tree": {
"root_node_id": "payment",
"nodes": {
"payment": {
"type": "question",
"question_id": "payment_method",
"options": [
{"value": "cashless", "next_node_id": "cashless_result"},
{"value": "cash", "next_node_id": "cash_result"}
]
},
"cashless_result": {
"type": "result",
"result": {
"kategorie": "Haushaltsnahe Dienstleistungen",
"abzugsart": "Steuerermäßigung",
"absetzbar": true,
"absetzbar_fuer_bestimmte_berufe": false,
"verdict": "absetzbar",
"confidence": "high",
"missing_information": [],
"requires_user_confirmation": false,
"grund": "Die unbar bezahlte Leistung ist nach §35a EStG begünstigt.",
"bedingungen": [],
"hinweise": [],
"quellen": ["https://www.gesetze-im-internet.de/estg/__35a.html"]
}
},
"cash_result": {
"type": "result",
"result": {
"kategorie": null,
"abzugsart": null,
"absetzbar": false,
"absetzbar_fuer_bestimmte_berufe": false,
"verdict": "nicht_absetzbar",
"confidence": "high",
"missing_information": [],
"requires_user_confirmation": false,
"grund": "Bar gezahlte Leistungen sind nach §35a EStG nicht begünstigt.",
"bedingungen": [],
"hinweise": ["Für die Steuerermäßigung ist eine unbare Zahlung erforderlich."],
"quellen": ["https://www.gesetze-im-internet.de/estg/__35a.html"]
}
}
}
}
},
"credits_remaining": 42
}Die Auswahl wird ausschließlich lokal in Ihrer Anwendung ausgewertet. Senden Sie keine Folgeanfrage: Das kostet weder einen weiteren API-Request noch einen zusätzlichen Credit.
results.mode"final" | "needs_context"Zeigt, ob das Ergebnis sofort feststeht oder lokal noch eine Kontextauswahl nötig ist.
results.resultobject | nullVollständiges Abzugsergebnis bei mode „final“. Bei „needs_context“ ist dieses Feld null; vollständige Ergebnisse stehen dann in den Ergebnis-Knoten des context_tree.
results.preliminary_reasonstring | nullKurze Erklärung, warum noch Kontext benötigt wird. Nur bei mode „needs_context“ gesetzt.
results.context_treeobject | nullValidierter Entscheidungsbaum für mode „needs_context“. Starten Sie bei root_node_id und folgen Sie der gewählten Option über next_node_id bis zu einem Ergebnis-Knoten.
results.result.abzugsartstring | nullÜbergeordnete Einordnung, z.B. „Werbungskosten“ oder „Steuerermäßigung“.
results.result.kategoriestring | nullSteuerliche Kategorie der Ausgabe (z.B. „Arbeitsmittel", „Reisekosten“); null bei nicht absetzbaren Ausgaben.
results.result.absetzbarbooleantrue, wenn die Ausgabe steuerlich absetzbar ist.
results.result.absetzbar_fuer_bestimmte_berufebooleantrue, wenn die Absetzbarkeit nur für bestimmte Berufsgruppen gilt.
results.result.grundstringBegründung der Entscheidung mit Verweis auf die relevante Rechtsgrundlage.
results.result.bedingungenstring[]Liste von Bedingungen, die für die Absetzbarkeit erfüllt sein müssen.
results.result.hinweisestring[]Zusätzliche steuerliche Hinweise, z.B. zu GWG-Grenzen oder Sonderregelungen.
results.result.quellenstring[]Amtliche Quellen, die die Einschätzung stützen.
credits_remainingintegerVerbleibende Credits auf Ihrem Konto nach dieser Analyse.
Was bedeuten Fehler 401 und 403?
{"detail": "Invalid API key"}{"detail": "Insufficient credits"}Registrieren Sie sich, erhalten Sie 5 Credits gratis und erstellen Sie Ihren ersten API-Key in wenigen Sekunden.
Welche Sprachen und Tools werden unterstützt?
Häufige Fragen zur API
Die API akzeptiert PDF, JPG, JPEG, PNG, HEIC und HEIF. Die maximale Dateigröße beträgt 10 MB pro Datei.
Eine Analyse dauert typischerweise 2–4 Sekunden: OCR-Erkennung des Dokuments, KI-Analyse nach deutschem Steuerrecht (§9, §35a, §4 EStG) und Rückgabe des strukturierten JSON-Ergebnisses.
Ja. Die gesamte Verarbeitung läuft auf AWS-Servern in Frankfurt (eu-central-1). Hochgeladene Dokumente werden nach der Analyse sofort gelöscht und nie zum KI-Training verwendet.
1 Credit pro Analyse. Bei der Registrierung erhalten Sie 5 Credits gratis. Credits verfallen nie. Es gibt keine Grundgebühr oder Mindestabnahme.
Ja. Mit einem Test-API-Schlüssel (sk_test_...) rufen Sie den Endpunkt /api/v1/test/process kostenlos auf. Er liefert eine statische Testantwort ohne echte KI-Analyse und ohne Credits zu verbrauchen.
Steuerscan API im Web
Steuererklärung automatisiert mit Paperless-NGX, n8n & GenAI
Praxisbeispiel: Wie die Steuerscan API in einen Paperless-NGX Workflow integriert wird.
MediumSteuererklärung automatisiert mit Paperless-NGX, n8n & GenAI
Der Artikel auf Medium — Hintergründe zur Architektur und technischen Entscheidungen.
HashnodeSteuererklärung automatisiert mit Paperless-NGX, n8n & GenAI
Der Artikel auf Hashnode — mit Reichweite in der internationalen Developer-Community.
RapidAPISteuerscan auf RapidAPI
Die Steuerscan API direkt über den RapidAPI Marketplace testen und integrieren.