AiZ-RVG
Schnittstelle (§ 28a)
Öffentliche Programmierschnittstelle der Abrechnung.
Ein Fremdsystem — Kanzleisoftware, Dokumentenmanagement, Portal eines Rechtsdienstleisters — übergibt die Dokumente eines Falls und erhält die fertige Vergütungsberechnung zurück.
Legitimation
Persönliche API-Token im Format aizrvg_<praefix>_<geheimnis> werden im Portal unter „API-Token“ angelegt. Der Token wird im Authorization-Header als Bearer mitgesendet.
Der eine Endpunkt
POST /api/v1/abrechnung ist der einzige fachliche Endpunkt. Daneben stehen nur technische Hilfsrouten, die selbst nichts berechnen.
Technische Hilfsrouten
- GET /api/v1/abrechnung/:vorgangId — Status oder Ergebnis eines Vorgangs abholen (nur bei 202).
- GET /api/v1/token — prüft das eigene Token: Benutzer, Rechte, Kontingent.
- GET /api/v1/openapi.json — Schnittstellenbeschreibung, aus denselben Schemata erzeugt.
Vorabfreigabe nach § 14 RVG
Ohne Vorabfreigabe erzeugt die Schnittstelle einen Rechnungsentwurf mit dem Hinweis satz_nicht_bestaetigt; finalisieren: true wird mit 409 abgelehnt. Mit Vorabfreigabe wird der Vorschlag der KI übernommen, auf den hinterlegten Höchstsatz gedeckelt (bei Nr. 2300 höchstens die Schwellengebühr 1,3) und das PDF weist die Freigabe aus.
Grenzen
Aufrufe je Token 30 pro Stunde, je Benutzer 60 pro Stunde, gleichzeitig laufende Vorgänge 3, Dateien je Aufruf 20, je Datei 50 MB.
curl-Beispiel
curl -X POST https://app.example.com/api/v1/abrechnung \
-H "Authorization: Bearer aizrvg_abcdef123456_<geheimnis>" \
-H "Content-Type: application/json" \
-d '{
"auftragsdatum": "2026-03-10",
"externeReferenz": "EXT-2026-001",
"angaben": { "gegenstandswertCents": 2500000, "anzahlAuftraggeber": 2 },
"dateien": [{ "dateiname": "klageschrift.pdf", "inhaltBase64": "<base64>" }]
}'Beispiel-Antwort
{
"vorgangId": "6f0e…",
"status": "ABGESCHLOSSEN",
"kanal": "API",
"mandat": { "mandatsnummer": "M-2026-0042" },
"rechnung": {
"status": "FINALISIERT",
"nettoCents": 352395,
"ustCents": 66955,
"bruttoCents": 419350,
"pdfBase64": "<pdf>"
},
"hinweise": []
}Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
| 400 | ungueltige_anfrage | ungültige Anfrage / unbekannter Schlüssel / defektes Base64 |
| 401 | token_fehlt / token_ungueltig … | Authorization-Header oder Token |
| 402 | kontingent_erschoepft | Rechnungs-Kontingent des Plans |
| 403 | finalisieren_nicht_erlaubt | Token ohne darf_finalisieren |
| 409 | satz_unbestaetigt | finalisieren: true ohne bestätigte Rahmengebühren |
| 413 | zu_viele_dateien / datei_zu_gross | > 20 Dateien oder > 50 MB |
| 415 | dateityp_nicht_unterstuetzt | nicht unterstütztes Format (erlaubt: PDF, PNG/JPEG/GIF/TIFF, .docx) |
| 422 | eingabe_fehlt | Fortsetzung mit vorgangId nötig |
| 429 | zu_viele_anfragen | Rate-Limit überschritten |
| 503 | dienst_nicht_verfuegbar | vorübergehend nicht verfügbar |