# Frist, Text und Mahngebühr einer Mahnstufe ändern (https://developer.bimetrics.de/reference/receivables/update-reminder-level)

`PUT https://app.bimetrics.de/api/reminder/settings/{level}`

operationId: `updateReminderLevel` · Berechtigung (Scope): `invoices:draft` · Bereich: Forderungen und Mahnungen

Frist und Text gelten für neue Entwürfe. Die Mahngebühr gilt für alle noch nicht ausgestellten Mahnungen der Stufe; ausgestellte bleiben unverändert. Ohne Frist, Text und Gebühr gilt wieder der Standard, auch für die Gebühr. Unbekannte Platzhalter werden abgelehnt. Nur für den Inhaber.

Benötigt einen Schlüssel mit der Berechtigung `invoices:draft`.

> **Achtung:** Ändert Daten der Firma; wird atomar mit Idempotenzbeleg und Herkunft protokolliert.
>
> KI-Agenten fragen vor diesem Aufruf beim Nutzer nach.

### Authentifizierung

`Authorization: Bearer bm_…` (alternativ `X-API-KEY: bm_…`, nie beide zugleich).

### Parameter

| Name | Ort | Pflicht | Typ | Beschreibung |
| --- | --- | --- | --- | --- |
| `level` | path | ja | integer | Mahnstufe: 0 Zahlungserinnerung, 1 bis 3 Mahnung. |
| `Idempotency-Key` | header | ja | string | Stabiler Schlüssel für genau diese Änderung: 1–128 druckbare ASCII-Zeichen ohne Leerzeichen. Bei Wiederholungen denselben Schlüssel und unveränderten Inhalt senden; das Ergebnis wird nicht nochmals erzeugt. |

### Request-Body (`application/json`)

 

Schema `UpdateReminderLevel`.

| Feld | Typ | Beschreibung |
| --- | --- | --- |
| `deadlineDays` | integer | Zahlungsfrist in Tagen, 1 bis 365. |
| `feeEnabled` | boolean | Mahngebühr ein oder aus; ohne Angabe bleibt der gespeicherte Wert. |
| `feeMinor` | integer | Mahngebühr in Cent, 0 bis 5000; nur tatsächliche Kosten wie Porto. Ohne Angabe bleibt der gespeicherte Wert. |
| `text` | string | Text mit erlaubten Platzhaltern, höchstens 12.000 Zeichen. |

### Beispiel

```sh
curl --fail-with-body "https://app.bimetrics.de/api/reminder/settings/{level}" \
  -H "Authorization: Bearer $BIMETRICS_API_KEY" \
  -H "Idempotency-Key: rechnung-2026-001" \
  -H "Content-Type: application/json" \
  -d '{"kind":"and","children":[],"limit":50,"offset":0}'
```

### Antworten

| Status | Beschreibung | Inhalt |
| --- | --- | --- |
| 200 | Erfolg. | `application/json`: ReminderLevel |
| 400 | Ungültige Anfrage, z. B. ein Parameter mit ungültigem Wert wie eine ID, die keine UUID ist; korrigieren statt wiederholen. Mehr unter [Fehler](https://developer.bimetrics.de/errors). | `application/json`: Error |
| 401 | Kein gültiger Schlüssel: fehlt (`Unauthorized`), ist unbekannt, abgelaufen oder widerrufen oder wurde nicht in genau einem Header gesendet (`InvalidAPIKey`). Schlüssel prüfen, nicht wiederholen. Auch eine ID, die zu einer anderen Firma gehört, ergibt `401 Unauthorized`. | `application/json`: Error |
| 403 | Dem Schlüssel fehlt die Berechtigung für diese Route (`APIKeyPermissionDenied`), oder die Firma hat keinen API-Zugang (mehr), etwa nach Ende der Testphase oder des Abos (`APIUnavailable`). | `application/json`: Error |
| 409 | Versionskonflikt (`VersionConflict`), abweichender Inhalt für denselben Idempotency-Key (`IdempotencyConflict`), Dublette (`ContactDuplicate`) oder fachlich gesperrte Änderung. Aktuellen Zustand laden und prüfen; keinen anderen Schlüssel verwenden, um einen Konflikt zu umgehen. | `application/json`: Error |
| 413 | Die Anfrage ist zu groß (`APIRequestTooLarge`), siehe `x-bimetrics-limits`. | `application/json`: Error |
| 429 | Zu viele Anfragen; nach `Retry-After` Sekunden erneut senden. Mehr unter [Fehler](https://developer.bimetrics.de/errors). (Header: Retry-After) | `application/json`: Error |
| 500 | Serverfehler; die Anfrage später wiederholen. Mehr unter [Fehler](https://developer.bimetrics.de/errors). | `application/json`: Error |

#### Felder der Antwort 200 (`ReminderLevel`)

| Feld | Typ | Beschreibung |
| --- | --- | --- |
| `custom` | boolean | true, wenn die Firma eigene Werte gesetzt hat; sonst gilt der Standard. |
| `deadlineDays` | integer | Zahlungsfrist in Tagen nach dem Ausstellungsdatum. |
| `feeEnabled` | boolean | true, wenn Mahnungen dieser Stufe die Mahngebühr fordern; standardmäßig aus. |
| `feeMinor` | integer | Mahngebühr in Cent, 0 bis 5000. Vorschlag: 0 für die Zahlungserinnerung, 250 für eine Mahnung. Gefordert erst ab Verzug, also nicht mit der ersten Mahnung. |
| `level` | integer | Stufe: 0 Zahlungserinnerung, 1 bis 3 Mahnung. |
| `text` | string | Text mit Platzhaltern in geschweiften Klammern. |
| `title` | string | Titel auf dem PDF, zum Beispiel 2. Mahnung. |

Verschachtelte Schemas stehen vollständig in der OpenAPI-Beschreibung: https://app.bimetrics.de/api/openapi.json
