# Euro-Betrag aus der Zahlung prüfen (https://developer.bimetrics.de/reference/matches/preview-match-euro-amount)

`GET https://app.bimetrics.de/api/match/{id}/euro-amount-preview`

operationId: `previewMatchEuroAmount` · Berechtigung (Scope): `read` · Bereich: Zuordnungen

Sagt, ob sich für den Beleg einer Zuordnung, der in einer Fremdwährung ist und dessen Euro-Betrag fehlt (`documentCurrency` ohne `euroAmountSource`), der Euro-Betrag aus der Zahlung übernehmen lässt, und liefert, was der Nutzer vorher bestätigt: Belegwährung, Betrag vom Beleg, Euro-Betrag der Zahlungen und jede Position vorher und nachher. Nötig sind genau ein Beleg und mindestens ein gebuchter Euro-Umsatz, kein Skonto an der Zuordnung und keine erfassten Zahlungen am Beleg. Passt die Zuordnung nicht, antwortet die API mit `eligible: false`, `refusal` nennt den Code und `refusalReason` den Grund. Verändert nichts.

Benötigt einen Schlüssel mit der Berechtigung `read`.

### Authentifizierung

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

### Parameter

| Name | Ort | Pflicht | Typ | Beschreibung |
| --- | --- | --- | --- | --- |
| `id` | path | ja | string (uuid) | ID des Objekts in dieser Firma (UUID). |

### Beispiel

```sh
curl --fail-with-body "https://app.bimetrics.de/api/match/{id}/euro-amount-preview" \
  -H "Authorization: Bearer $BIMETRICS_API_KEY"
```

### Antworten

| Status | Beschreibung | Inhalt |
| --- | --- | --- |
| 200 | Erfolg. | `application/json`: EuroAmountPreview |
| 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 |
| 404 | Nicht gefunden (`NotFound`). | `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 (`EuroAmountPreview`)

| Feld | Typ | Beschreibung |
| --- | --- | --- |
| `documentCurrency` | string | Währung des Belegs als Code nach ISO 4217. |
| `documentId` | string (uuid) | Der Beleg, dessen Beträge sich ändern. |
| `eligible` | boolean | True, wenn `takeOverMatchEuroAmount` den Euro-Betrag jetzt übernehmen kann. |
| `euroTotalAmount` | integer | Bruttobetrag danach in EUR-Cent: die Summe der zugeordneten Zahlungen. |
| `expectedVersions` | object | Für `takeOverMatchEuroAmount`, unverändert. |
| `exportedBookings` | boolean | True, wenn beteiligte Buchungen schon an DATEV exportiert sind. Über die API steht `eligible` dann auf false. In der App bucht bimetrics Storno und Neubuchung im Monat des Belegs; DATEV bekommt sie erst, wenn dieser Monat noch einmal exportiert wird. |
| `finalizedBookings` | boolean | True, wenn festgeschriebene Buchungen bleiben und Storno und Neubuchung im Monat des Belegs entstehen. Eine schon abgegebene Umsatzsteuer-Voranmeldung kann dann eine Berichtigung brauchen. |
| `originalTotalAmount` | integer | Bruttobetrag vom Beleg in Hundertsteln der Belegwährung; bleibt am Beleg. |
| `positions` | Array<EuroAmountPosition> | Jede Position vorher und nachher, anteilig umgerechnet; die Summe stimmt auf den Cent. |
| `refusal` | string | Bei `eligible: false`: der Fehlercode, mit dem der Aufruf abgelehnt würde. |
| `refusalReason` | string: `notForeignCurrency`, `notSingleDocument`, `noBankPayment`, `paymentNotEuro`, `paymentNotBooked`, `cashDiscount`, `manualPayment`, `notConvertible` | Bei `EuroAmountNotEligible`: `notForeignCurrency` Beleg in Euro oder Euro-Betrag schon da, `notSingleDocument` mehrere Belege in der Zuordnung, `noBankPayment` kein Umsatz, `paymentNotEuro` ein Umsatz nicht in Euro, `paymentNotBooked` ein Umsatz noch nicht gebucht, `cashDiscount` Skonto an der Zuordnung, `manualPayment` erfasste Zahlungen am Beleg, `notConvertible` die Zahlungen laufen in die andere Richtung oder eine Position fiele auf 0 Euro. |

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