{"openapi":"3.1.0","info":{"title":"Gegenprüfung – Schnittstelle","version":"1.0.0","summary":"Kürzungen aus Prüfberichten zu Kfz-Schadengutachten automatisiert gegenprüfen lassen.","description":"Diese Schnittstelle richtet sich an Gutachter- und Werkstattsysteme.\n\nDer vorgesehene Weg besteht aus drei Aufrufen: Unterlagen einreichen, Status abfragen,\nGegenprüfbericht abholen. Wer einen Webhook hinterlegt, braucht den zweiten Aufruf nicht.\n\n**Was diese Schnittstelle nicht kann.** Eine anwaltliche Freigabe erteilen, ein Regelwerk\naktivieren oder ein Schreiben an eine Versicherung versenden. Das sind Rechtsdienstleistungen\nund bleiben der Partnerkanzlei vorbehalten. Ausgeliefert wird die technische\nGegenüberstellung, nicht die anwaltliche Stellungnahme.\n\n**Beträge** werden ausnahmslos als ganzzahlige Cent übertragen. Eine bezifferte Forderung\nmuss reproduzierbar sein; Gleitkommazahlen sind das über viele Positionen nicht.\n\n**Hinweis.** Dieses System verarbeitet ausschließlich synthetische Daten. Reichen Sie keine echten Schadenunterlagen ein.","contact":{"name":"gobecom GmbH – Support","email":"PLATZHALTER@example.invalid"},"license":{"name":"Proprietär – alle Rechte vorbehalten"}},"servers":[{"url":"https://localhost:3000","description":"Demonstrationssystem"}],"tags":[{"name":"Gegenprüfungen","description":"Vorgänge einreichen, Status abfragen, Berichte abholen"},{"name":"Unterlagen","description":"Dokumente nachreichen und einsehen"},{"name":"Webhooks","description":"Ereignisbenachrichtigungen statt wiederholter Abfragen"},{"name":"System","description":"Selbstauskunft der Schnittstelle"}],"security":[{"ApiSchluessel":[]}],"paths":{"/api/v1/gegenpruefungen":{"post":{"tags":["Gegenprüfungen"],"summary":"Gegenprüfung einreichen","description":"Legt einen Vorgang an, nimmt die Unterlagen entgegen und startet die Auswertung.\n\nDie Antwort erfolgt, sobald die Auswertung durchgelaufen ist – bei üblichen\nDokumentgrößen nach etwa einer Sekunde. Verlassen Sie sich nicht darauf: Werten Sie\n`weiter_abfragen` aus. Ist der Wert `true`, fragen Sie den Status erneut ab oder\nwarten Sie auf den Webhook.","operationId":"gegenpruefungEinreichen","security":[{"ApiSchluessel":["vorgaenge:schreiben"]}],"parameters":[{"$ref":"#/components/parameters/IdempotenzSchluessel"}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","required":["pruefbericht"],"properties":{"pruefbericht":{"type":"string","format":"binary","description":"Prüfbericht (für die Auswertung erforderlich). Mehrfach möglich über `pruefbericht[]`."},"gutachten":{"type":"string","format":"binary","description":"Schadengutachten (für die Auswertung erforderlich). Mehrfach möglich über `gutachten[]`."},"kalkulation":{"type":"string","format":"binary","description":"Reparaturkostenkalkulation. Mehrfach möglich über `kalkulation[]`."},"versicherungsschreiben":{"type":"string","format":"binary","description":"Schreiben der Versicherung. Mehrfach möglich über `versicherungsschreiben[]`."},"rechnung":{"type":"string","format":"binary","description":"Reparaturrechnung. Mehrfach möglich über `rechnung[]`."},"kostenvoranschlag":{"type":"string","format":"binary","description":"Kostenvoranschlag. Mehrfach möglich über `kostenvoranschlag[]`."},"vollmacht":{"type":"string","format":"binary","description":"Vollmacht. Mehrfach möglich über `vollmacht[]`."},"anlage":{"type":"string","format":"binary","description":"Sonstige Anlage. Mehrfach möglich über `anlage[]`."},"referenz":{"type":"string","description":"Ihre eigene Kennung, etwa die Auftragsnummer. Sie können den Vorgang später darüber abrufen: `GET /api/v1/gegenpruefungen/ref:IHRE-NUMMER`.","example":"AUFTRAG-2026-4711"},"schadennummer":{"type":"string","description":"Schadennummer der Versicherung."},"kennzeichen":{"type":"string","description":"Amtliches Kennzeichen des Fahrzeugs."},"nachname":{"type":"string","description":"Nachname der geschädigten Partei."},"vorname":{"type":"string","description":"Vorname der geschädigten Partei."},"schadendatum":{"type":"string","description":"Datum des Schadenereignisses, Format TT.MM.JJJJ."},"webhook_url":{"type":"string","format":"uri","description":"Adresse für Ereignisbenachrichtigungen zu diesem und allen weiteren Vorgängen. Muss mit https:// beginnen. Das Geheimnis wird einmalig in der Antwort ausgegeben."}}}}}},"responses":{"202":{"description":"Vorgang angenommen","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Vorgang"}}},"headers":{"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"Gegenpruefung-Anfrage-Id":{"$ref":"#/components/headers/AnfrageId"}}},"400":{"description":"Anfrage unvollständig oder fehlerhaft","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"API-Schlüssel ungültig","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"Berechtigung für diese Aktion fehlt","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"Datei überschreitet die zulässige Größe","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"422":{"description":"Datei nicht verwendbar","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"Zu viele Anfragen","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"get":{"tags":["Gegenprüfungen"],"summary":"Vorgänge auflisten","description":"Vorgänge Ihrer Organisation, neueste zuerst. Seitenweise über den Parameter `vor`.","operationId":"gegenpruefungenAuflisten","security":[{"ApiSchluessel":["vorgaenge:lesen"]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Anzahl der Einträge."},{"name":"vor","in":"query","schema":{"type":"string","format":"date-time"},"description":"Nur Vorgänge, die vor diesem Zeitpunkt angelegt wurden. Für die nächste Seite."}],"responses":{"200":{"description":"Liste der Vorgänge","content":{"application/json":{"schema":{"type":"object","properties":{"daten":{"type":"array","items":{"$ref":"#/components/schemas/Vorgang"}},"anzahl":{"type":"integer"},"weitere_verfuegbar":{"type":"boolean"},"naechste_seite":{"type":["string","null"],"format":"uri"}}}}}},"401":{"description":"API-Schlüssel ungültig","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/gegenpruefungen/{id}":{"get":{"tags":["Gegenprüfungen"],"summary":"Stand abfragen","description":"Statt der Kennung können Sie Ihre eigene Referenz verwenden: `ref:IHRE-NUMMER`. Werten Sie `weiter_abfragen` und `bericht_verfuegbar` aus; die Statuswerte selbst müssen Sie dafür nicht kennen.","operationId":"gegenpruefungAbfragen","security":[{"ApiSchluessel":["vorgaenge:lesen"]}],"parameters":[{"$ref":"#/components/parameters/Kennung"}],"responses":{"200":{"description":"Aktueller Stand","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Vorgang"}}}},"401":{"description":"API-Schlüssel ungültig","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Nicht gefunden","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/gegenpruefungen/{id}/dokumente":{"post":{"tags":["Unterlagen"],"summary":"Unterlagen nachreichen","description":"Nach der Annahme wird die Auswertung erneut angestoßen, sofern nun alle erforderlichen Unterlagen vorliegen.","operationId":"unterlagenNachreichen","security":[{"ApiSchluessel":["vorgaenge:schreiben"]}],"parameters":[{"$ref":"#/components/parameters/Kennung"},{"$ref":"#/components/parameters/IdempotenzSchluessel"}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"pruefbericht":{"type":"string","format":"binary","description":"Prüfbericht"},"gutachten":{"type":"string","format":"binary","description":"Schadengutachten"},"kalkulation":{"type":"string","format":"binary","description":"Reparaturkostenkalkulation"},"versicherungsschreiben":{"type":"string","format":"binary","description":"Schreiben der Versicherung"},"rechnung":{"type":"string","format":"binary","description":"Reparaturrechnung"},"kostenvoranschlag":{"type":"string","format":"binary","description":"Kostenvoranschlag"},"vollmacht":{"type":"string","format":"binary","description":"Vollmacht"},"anlage":{"type":"string","format":"binary","description":"Sonstige Anlage"}}}}}},"responses":{"200":{"description":"Unterlagen angenommen","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Vorgang"}}}},"400":{"description":"Anfrage unvollständig oder fehlerhaft","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Nicht gefunden","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"422":{"description":"Datei nicht verwendbar","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"get":{"tags":["Unterlagen"],"summary":"Unterlagen einsehen","operationId":"unterlagenAuflisten","security":[{"ApiSchluessel":["vorgaenge:lesen"]}],"parameters":[{"$ref":"#/components/parameters/Kennung"}],"responses":{"200":{"description":"Übersicht der Unterlagen"},"404":{"description":"Nicht gefunden","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/gegenpruefungen/{id}/bericht":{"get":{"tags":["Gegenprüfungen"],"summary":"Gegenprüfbericht abrufen (JSON)","description":"Die technische Gegenüberstellung. Jede Position enthält Seitenzahl und wörtliches Zitat aus Kalkulation und Prüfbericht.","operationId":"berichtAbrufen","security":[{"ApiSchluessel":["berichte:lesen"]}],"parameters":[{"$ref":"#/components/parameters/Kennung"}],"responses":{"200":{"description":"Gegenprüfbericht","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Bericht"}}}},"404":{"description":"Nicht gefunden","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"409":{"description":"Gegenprüfbericht liegt noch nicht vor","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/gegenpruefungen/{id}/bericht.pdf":{"get":{"tags":["Gegenprüfungen"],"summary":"Gegenprüfbericht abrufen (PDF)","description":"Derselbe Bericht als Dokument zum Ablegen oder Weiterreichen.","operationId":"berichtAbrufenPdf","security":[{"ApiSchluessel":["berichte:lesen"]}],"parameters":[{"$ref":"#/components/parameters/Kennung"}],"responses":{"200":{"description":"PDF-Dokument","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}},"404":{"description":"Nicht gefunden","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"409":{"description":"Gegenprüfbericht liegt noch nicht vor","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/webhooks":{"post":{"tags":["Webhooks"],"summary":"Benachrichtigungsadresse hinterlegen","operationId":"webhookAnlegen","security":[{"ApiSchluessel":["vorgaenge:schreiben"]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"Muss mit https:// beginnen."},"ereignisse":{"type":"array","items":{"type":"string","enum":["gegenpruefung.eingegangen","gegenpruefung.abgeschlossen","gegenpruefung.pruefung_erforderlich","gegenpruefung.unterlagen_unvollstaendig","gegenpruefung.abgelehnt"]},"description":"Leer oder weggelassen bedeutet: alle Ereignisse."}}}}}},"responses":{"201":{"description":"Adresse hinterlegt; das Geheimnis wird nur hier ausgegeben."},"400":{"description":"Anfrage unvollständig oder fehlerhaft","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"get":{"tags":["Webhooks"],"summary":"Adressen und letzte Zustellungen","operationId":"webhooksAuflisten","security":[{"ApiSchluessel":["vorgaenge:lesen"]}],"responses":{"200":{"description":"Übersicht"}}},"delete":{"tags":["Webhooks"],"summary":"Adresse abschalten","operationId":"webhookAbschalten","security":[{"ApiSchluessel":["vorgaenge:schreiben"]}],"parameters":[{"name":"id","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Abgeschaltet"},"404":{"description":"Nicht gefunden","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/status":{"get":{"tags":["System"],"summary":"Selbstauskunft","description":"Berechtigungen des Schlüssels, Grenzen, erwartete Feldnamen und alle Statuswerte. Nützlich für einen Verbindungstest nach der Einrichtung.","operationId":"systemStatus","security":[{"ApiSchluessel":["vorgaenge:lesen"]}],"responses":{"200":{"description":"Auskunft"},"401":{"description":"API-Schlüssel ungültig","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}}},"components":{"securitySchemes":{"ApiSchluessel":{"type":"http","scheme":"bearer","description":"Senden Sie Ihren Schlüssel als `Authorization: Bearer gp_test_…`.\n\nBerechtigungen:\n- `vorgaenge:lesen` – Vorgänge und Status lesen\n- `vorgaenge:schreiben` – Vorgänge anlegen und Unterlagen hochladen\n- `berichte:lesen` – Gegenprüfberichte abrufen"}},"parameters":{"Kennung":{"name":"id","in":"path","required":true,"schema":{"type":"string"},"description":"Kennung des Vorgangs oder `ref:` gefolgt von Ihrer eigenen Referenz.","example":"ref:AUFTRAG-2026-4711"},"IdempotenzSchluessel":{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string"},"description":"Frei gewählter Wert je Anfrage, etwa Ihre Auftragsnummer. Wird dieselbe Anfrage nach einem Verbindungsabbruch wiederholt, erhalten Sie dieselbe Antwort statt eines zweiten Vorgangs."}},"headers":{"RateLimitRemaining":{"description":"Verbleibende Anfragen im laufenden Zeitfenster.","schema":{"type":"integer"}},"AnfrageId":{"description":"Kennung dieser Anfrage. Bitte bei Rückfragen angeben.","schema":{"type":"string"}}},"schemas":{"Problem":{"type":"object","description":"Fehlerdarstellung nach RFC 9457. Die Kennung in `type` ist stabil, der Text in `title` nicht.","properties":{"type":{"type":"string","enum":["/api/v1/fehler/authentifizierung-fehlt","/api/v1/fehler/schluessel-ungueltig","/api/v1/fehler/schluessel-widerrufen","/api/v1/fehler/schluessel-abgelaufen","/api/v1/fehler/berechtigung-fehlt","/api/v1/fehler/nicht-gefunden","/api/v1/fehler/anfrage-ungueltig","/api/v1/fehler/datei-ungueltig","/api/v1/fehler/datei-zu-gross","/api/v1/fehler/schadsoftware-erkannt","/api/v1/fehler/unterlagen-unvollstaendig","/api/v1/fehler/bericht-noch-nicht-verfuegbar","/api/v1/fehler/idempotenz-konflikt","/api/v1/fehler/zu-viele-anfragen","/api/v1/fehler/nicht-zulaessig","/api/v1/fehler/serverfehler"]},"title":{"type":"string"},"status":{"type":"integer","enum":[401,403,404,400,422,413,409,429,500]},"detail":{"type":"string","description":"Beschreibt, was zu tun ist."}},"required":["type","title","status","detail"]},"ExternerStatus":{"type":"string","enum":["angelegt","unterlagen_unvollstaendig","in_bearbeitung","pruefung_erforderlich","bericht_verfuegbar","anwaltlich_freigegeben","abgeschlossen","abgelehnt"],"description":"`angelegt` – Der Vorgang ist angelegt. Die Auswertung hat noch nicht begonnen.\n\n`unterlagen_unvollstaendig` – Für eine belastbare Gegenüberstellung fehlen Unterlagen. Reichen Sie sie über POST /dokumente nach.\n\n`in_bearbeitung` – Die Unterlagen werden ausgewertet. Fragen Sie den Status erneut ab oder nutzen Sie einen Webhook.\n\n`pruefung_erforderlich` – Die Auswertung liegt vor, enthält aber Punkte, die ein Mensch prüfen muss. Der Bericht ist bereits abrufbar.\n\n`bericht_verfuegbar` – Der Gegenprüfbericht ist abrufbar.\n\n`anwaltlich_freigegeben` – Die Partnerkanzlei hat den Vorgang geprüft und freigegeben. Der Gegenprüfbericht ist abrufbar.\n\n`abgeschlossen` – Der Vorgang ist abgeschlossen.\n\n`abgelehnt` – Der Vorgang wird nicht weiterverfolgt."},"Dokumentart":{"type":"string","enum":["SCHADENGUTACHTEN","REPARATURKALKULATION","PRUEFBERICHT","VERSICHERUNGSSCHREIBEN","REPARATURRECHNUNG","KOSTENVORANSCHLAG","ABTRETUNGSERKLAERUNG","VOLLMACHT","MANDATSUNTERLAGEN","FAHRZEUGBILDER","SONSTIGE_ANLAGE"],"description":"`SCHADENGUTACHTEN` – Schadengutachten\n\n`REPARATURKALKULATION` – Reparaturkostenkalkulation\n\n`PRUEFBERICHT` – Prüfbericht\n\n`VERSICHERUNGSSCHREIBEN` – Schreiben der Versicherung\n\n`REPARATURRECHNUNG` – Reparaturrechnung\n\n`KOSTENVORANSCHLAG` – Kostenvoranschlag\n\n`ABTRETUNGSERKLAERUNG` – Abtretungserklärung\n\n`VOLLMACHT` – Vollmacht\n\n`MANDATSUNTERLAGEN` – Mandatsunterlagen\n\n`FAHRZEUGBILDER` – Fahrzeugbilder\n\n`SONSTIGE_ANLAGE` – Sonstige Anlage"},"Kuerzungskategorie":{"type":"string","enum":["STUNDENVERRECHNUNGSSAETZE","VERWEIS_REFERENZWERKSTATT","UPE_AUFSCHLAEGE","VERBRINGUNGSKOSTEN","ERSATZTEILPREISE","ALTERNATIVE_ERSATZTEILE","ARBEITSWERTE","LACKIERKOSTEN","LACKMATERIAL","BEILACKIERUNG","KAROSSERIEARBEITEN","DIAGNOSEARBEITEN","KALIBRIERUNG_ASSISTENZSYSTEME","ACHSVERMESSUNG","PROBEFAHRT","FAHRZEUGREINIGUNG","REPARATURMETHODEN","KLEINTEILE_VERBRAUCHSMATERIAL","WERTMINDERUNG","NUTZUNGSAUSFALL","SACHVERSTAENDIGENKOSTEN","SONSTIGE_KUERZUNG"]},"Vorgang":{"type":"object","properties":{"id":{"type":"string"},"aktenzeichen":{"type":"string","example":"GP-2026-000001"},"externe_referenz":{"type":["string","null"]},"status":{"$ref":"#/components/schemas/ExternerStatus"},"status_beschreibung":{"type":"string"},"weiter_abfragen":{"type":"boolean","description":"Ist der Wert `true`, ist die Auswertung noch nicht abgeschlossen."},"bericht_verfuegbar":{"type":"boolean"},"erstellt_am":{"type":"string","format":"date-time"},"aktualisiert_am":{"type":"string","format":"date-time"},"schadennummer":{"type":["string","null"]},"fehlende_unterlagen":{"type":"array","items":{"type":"object","properties":{"art":{"$ref":"#/components/schemas/Dokumentart"},"bezeichnung":{"type":"string"}}}},"zusammenfassung":{"type":["object","null"],"properties":{"anzahl_beanstandeter_positionen":{"type":"integer"},"summe_kuerzungen_cent":{"type":"integer","description":"Ganzzahlige Cent."},"summe_kuerzungen_formatiert":{"type":"string","example":"1.849,65 €"},"kalkuliert_cent":{"type":"integer"},"anerkannt_cent":{"type":"integer"},"rechnerisch_stimmig":{"type":"boolean","description":"Ob die Summe der Einzelpositionen der im Prüfbericht ausgewiesenen Gesamtsumme entspricht."},"geringste_extraktionskonfidenz":{"type":"number"},"geringste_zuordnungskonfidenz":{"type":"number"},"anzahl_hinweise":{"type":"integer"}}},"hinweise":{"type":"array","items":{"$ref":"#/components/schemas/Hinweis"}},"links":{"type":"object","properties":{"selbst":{"type":"string","format":"uri"},"bericht_json":{"type":"string","format":"uri"},"bericht_pdf":{"type":"string","format":"uri"},"dokumente":{"type":"string","format":"uri"}}}}},"Hinweis":{"type":"object","properties":{"code":{"type":"string"},"bezeichnung":{"type":"string"},"beschreibung":{"type":"string"}}},"Fundstelle":{"type":"object","description":"Belegstelle im Dokument. Ohne Fundstelle gibt es keine Position.","properties":{"dokument_id":{"type":["string","null"]},"seite":{"type":["integer","null"]},"zitat":{"type":["string","null"],"description":"Wörtlicher Auszug aus dem Dokument."}}},"Position":{"type":"object","properties":{"id":{"type":"string"},"positionsnummer":{"type":["string","null"]},"bezeichnung":{"type":"string"},"kategorie":{"$ref":"#/components/schemas/Kuerzungskategorie"},"kategorie_bezeichnung":{"type":"string"},"kalkuliert_cent":{"type":"integer"},"anerkannt_cent":{"type":"integer"},"differenz_cent":{"type":"integer","description":"kalkuliert_cent minus anerkannt_cent."},"begruendung_laut_pruefbericht":{"type":["string","null"]},"fundstelle_gutachten":{"$ref":"#/components/schemas/Fundstelle"},"fundstelle_pruefbericht":{"$ref":"#/components/schemas/Fundstelle"},"extraktionskonfidenz":{"type":"number","minimum":0,"maximum":1},"zuordnungskonfidenz":{"type":"number","minimum":0,"maximum":1},"regelwerk":{"type":["object","null"]},"anwaltlich_geaendert":{"type":"boolean"}}},"Bericht":{"type":"object","description":"Technische Gegenüberstellung. Keine rechtliche Bewertung, keine Rechtsberatung, keine anwaltliche Stellungnahme.","properties":{"schema_version":{"type":"string"},"art":{"type":"string","enum":["gegenpruefbericht"]},"id":{"type":"string"},"aktenzeichen":{"type":"string"},"erstellt_am":{"type":"string","format":"date-time"},"hinweis":{"type":"string"},"stammdaten":{"type":"object"},"summen":{"type":"object","properties":{"kalkuliert_cent":{"type":"integer"},"anerkannt_cent":{"type":"integer"},"differenz_cent":{"type":"integer"},"im_pruefbericht_ausgewiesen_cent":{"type":["integer","null"]},"rechnerisch_stimmig":{"type":"boolean"},"waehrung":{"type":"string","enum":["EUR"]}}},"positionen":{"type":"array","items":{"$ref":"#/components/schemas/Position"}},"kalkulationspositionen":{"type":"array","items":{"type":"object"}},"fehlende_unterlagen":{"type":"array","items":{"type":"object"}},"widersprueche":{"type":"array","items":{"type":"object"}},"hinweise":{"type":"array","items":{"$ref":"#/components/schemas/Hinweis"}},"auffaellige_dokumentstellen":{"type":"array","description":"Textstellen in den eingereichten Dokumenten, die wie Anweisungen an ein KI-System aussehen. Sie werden nicht befolgt; der Vorgang wird zur Prüfung markiert.","items":{"type":"object"}}}},"WebhookNutzlast":{"type":"object","description":"Wird an Ihre hinterlegte Adresse gesendet. Prüfen Sie die Kopfzeile\n`Gegenpruefung-Signatur` im Format `t=<unix>,v1=<hmac>`; der HMAC-SHA256 wird über\n`<t>.<körper>` mit Ihrem Geheimnis gebildet. Verwerfen Sie Zustellungen mit einem\nZeitstempel, der älter als fünf Minuten ist.","properties":{"ereignis":{"type":"string","enum":["gegenpruefung.eingegangen","gegenpruefung.abgeschlossen","gegenpruefung.pruefung_erforderlich","gegenpruefung.unterlagen_unvollstaendig","gegenpruefung.abgelehnt"],"description":"`gegenpruefung.eingegangen` – Der Vorgang wurde angenommen und die Auswertung hat begonnen.\n\n`gegenpruefung.abgeschlossen` – Die Auswertung ist abgeschlossen, der Gegenprüfbericht ist abrufbar.\n\n`gegenpruefung.pruefung_erforderlich` – Die Auswertung liegt vor, enthält aber Punkte, die ein Mensch prüfen muss. Der Bericht ist bereits abrufbar.\n\n`gegenpruefung.unterlagen_unvollstaendig` – Für eine belastbare Gegenüberstellung fehlen Unterlagen.\n\n`gegenpruefung.abgelehnt` – Der Vorgang wird nicht weiterverfolgt."},"gesendet_am":{"type":"string","format":"date-time"},"gegenpruefung":{"type":"object","properties":{"id":{"type":"string"},"aktenzeichen":{"type":"string"},"externe_referenz":{"type":["string","null"]},"status":{"$ref":"#/components/schemas/ExternerStatus"},"bericht_verfuegbar":{"type":"boolean"}}}}}}}}