Dokumentation

Wie Coatables ein Analysenzertifikat verifiziert

Zuletzt aktualisiert: 15. Juni 2026

Lade ein CoA-PDF hoch (digital oder gescannt). Ein Vision-Modell liest es; eine deterministische Schicht berechnet die sicherheitskritischen Werte neu und gleicht sie mit dem aufgedruckten Labor-Urteil ab. Du erhältst geprüftes JSON und Excel.

Die drei Schritte

  1. Extrahieren — Claude Vision liest digitale PDFs und Scans nativ: Analyt, Ergebnis, Einheit, Spezifikationsgrenzwert, Methode, LOD/LOQ und das aufgedruckte Labor-Urteil.
  2. Verifizieren — Grenzwert-Notation und Einheiten werden normalisiert, dann wird Bestanden/Nicht-bestanden aus den ausgelesenen Zahlen neu berechnet — nicht von einem Modell geraten.
  3. Abgleichen — das berechnete Urteil wird mit dem aufgedruckten des Labors verglichen. Jede Abweichung, jedes fehlende Feld oder jeder Wert mit niedriger Konfidenz wird geflaggt.

Was unterstützt wird

Drittlabor-Berichte für Nahrungsergänzungsmittel — Schwermetalle, Mikrobiologie, Kontaminanten — über eine begrenzte Menge gängiger Labor-Formate. Es ist bewusst kein allgemeiner „Beliebiges-Dokument“-Extraktor; ein nicht erkanntes Layout wird zur Prüfung geflaggt statt still geraten (und wird nicht berechnet).

Grenzwert-Notation, die es liest

NotationBedeutung
≤ / < / ≥ / >obere / untere Grenzen
NMT / NLT / max / minnicht-mehr-als / nicht-weniger-als
X–YBereich
Absent in 25 gmikrobielle Abwesenheit
ND / <LOQnicht nachgewiesen / unter Bestimmungsgrenze

Einheiten werden kanonisiert und klassenweise verglichen: mg/kg ↔ ppm, µg/kg ↔ ppb, mg/g ↔ % und CFU/g-Klassen. Ein Ergebnis, dessen Einheitenklasse nicht zum Analyten passt, wird geflaggt.

Ausgabe

JSON — das vollständige strukturierte Ergebnis: Dokument-Header und je Analyt das rohe + ausgelesene Ergebnis, die normalisierte Einheit, der strukturierte Grenzwert (min/max/Typ), Methode, LOD/LOQ, das Labor-Urteil, das berechnete Urteil, ob sie übereinstimmen, Konfidenz und Flags.

XLSX — ein Header-Blatt (Dokument-Metadaten) plus ein Analyten-Blatt, eine Zeile pro Analyt mit denselben Spalten.

Verifizierungs-Flags

FlagBedeutung
verdict_mismatchunser neu berechnetes Bestanden/Nicht-bestanden weicht vom aufgedruckten Labor-Urteil ab
missing_limitein Ergebnis ohne Spezifikationsgrenzwert zum Abgleich
unparseable_limiteine Grenzwert-Zeichenkette, die wir nicht normalisieren konnten
ambiguous_uniteine Einheit, die wir nicht kanonisieren konnten (bei qualitativen Ergebnissen übersprungen)
unit_class_mismatchdie Einheitenklasse passt nicht zum Analyten
low_confidenceein Wert mit niedriger Konfidenz (häufig bei Scans) — prüfen
no_analytesauf Dokumentebene: nichts als unterstütztes CoA erkannt

API

Das Tool ist ein dünner Client über einem einzigen Endpoint.

FeldWert
POST/api/extract
bodymultipart/form-data, Feld file = das PDF (≤ 20 MB)
?format=xlsxliefert das XLSX statt JSON
AuthorizationBearer <credit key> (wenn Abrechnung aktiv ist)
X-Credits-RemainingResponse-Header mit deinem Guthaben nach dem Aufruf
402 / 400 / 500kein/ungültiger Schlüssel oder kein Guthaben / keine Datei / Extraktionsfehler

Probiere es an einem Beispielzertifikat →