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

HTTPCodeBedeutung
400ungueltige_anfrageungültige Anfrage / unbekannter Schlüssel / defektes Base64
401token_fehlt / token_ungueltig …Authorization-Header oder Token
402kontingent_erschoepftRechnungs-Kontingent des Plans
403finalisieren_nicht_erlaubtToken ohne darf_finalisieren
409satz_unbestaetigtfinalisieren: true ohne bestätigte Rahmengebühren
413zu_viele_dateien / datei_zu_gross> 20 Dateien oder > 50 MB
415dateityp_nicht_unterstuetztnicht unterstütztes Format (erlaubt: PDF, PNG/JPEG/GIF/TIFF, .docx)
422eingabe_fehltFortsetzung mit vorgangId nötig
429zu_viele_anfragenRate-Limit überschritten
503dienst_nicht_verfuegbarvorübergehend nicht verfügbar

GET /api/v1/openapi.json