Die Mengen eines Betriebstages stehen auf einem Zettel an der Waage, die Übergaben in E-Mails, und das Betriebstagebuch entsteht am Abend vor der Prüfung aus beidem. Das funktioniert, solange niemand fragt, woher eine Zahl kommt — und es funktioniert genau einmal nicht.
Der Vertrag verlangt deshalb Tagesabschluss und Wochenabzeichnung durch eine angemeldete Person in der Journalrolle; tapinoma zeichnet nicht im eigenen Namen ab. Die Ereignisse tragen hash und previousHash: Eine Lücke wird dadurch nicht unmöglich, aber sie wird sichtbar — und genau das ist der Zweck.
| Fläche | Rollen |
|---|---|
| Compliance | Autoverwerter |
Was dieser Fall voraussetzt
- Massen, die gemessen und nicht geschätzt sind. Die Masse wird mit der Einheit
kgodertangegeben. - Ein Materialcode je Bewegung. Ohne ihn ist eine Menge eine Zahl ohne Gegenstand.
- Die Genehmigung des Empfängers. Eine Übergabe verweist auf einen Abzug der Genehmigung; ohne sie ist der Empfänger nicht belegt.
- Eine zeichnungsberechtigte Person für die Woche. Die Abzeichnung ist personenzurechenbar und kein Stapellauf.
Der Ablauf
Die Tabelle nennt je Stufe den zuständigen Aufruf und das, was danach vorliegt. Die Begründung, warum die Stufe nicht übersprungen werden kann, steht darunter.
| Stufe | Aufruf | Was danach vorliegt |
|---|---|---|
| Bewegung erfassen | POST /compliance/material-movements | materialCode, mass und unit je Bewegung, mit Messzeitpunkt |
| Übergabe belegen | POST /compliance/downstream-transfers | permitSnapshotId des Empfängers und mindestens eine Massenangabe |
| Tag abschliessen | POST /compliance/journal-periods/{date}/close-daily | Abschluss mit Attest, zugerechnet einer Person in der Journalrolle |
| Woche abzeichnen | POST /compliance/journal-periods/{week}/sign-off-weekly | dailyClosureIds und ein Attest; die Abzeichnung ist personenzurechenbar |
| Prüfakte ziehen | GET /compliance/audit-exports/{case_or_period} | Ereignisse mit hash und previousHash — eine Kette, die eine Lücke zeigt |
Warum jede Stufe nötig ist
- Die Bewegung erfassen.
POST /compliance/material-movementsnimmtfacilityId,movementType,materialCode,massundunitsowie Quell- und Zielort und den MesszeitpunktmeasuredAt. Erfasst wird beim Wiegen, nicht beim Berichten — das ist der einzige Unterschied, der über die Belastbarkeit entscheidet. - Die Übergabe belegen.
POST /compliance/downstream-transfersverweist auf die übergebenenassetRefs, auf Empfängerorganisation und Empfängeranlage, auf deren Genehmigungsabzug inpermitSnapshotIdund auf den Transport und verlangt mindestens eine Angabe inmasses. Der Genehmigungsabzug ist der Punkt: Er hält fest, auf welcher Berechtigung des Empfängers die Übergabe beruhte. - Den Tag abschließen.
POST /compliance/journal-periods/{date}/close-dailynimmtfacilityId,timeZone,closedAtund eineattestationId. Der Abschluss wird der angemeldeten Person und ihrer Journalrolle zugerechnet; sie bestätigt ihre Anmeldung dafür erneut, und tapinoma zeichnet nicht im eigenen Namen ab. - Die Woche abzeichnen.
POST /compliance/journal-periods/{week}/sign-off-weeklyverweist auf die Tagesabschlüsse der Woche und trägt ein Attest. Die Abzeichnung liegt bei einer Person. - Die Prüfakte ziehen.
GET /compliance/audit-exports/{case_or_period}gibt die Ereignisse mit ihren Hashwerten aus — für einen Fall oder für einen Zeitraum. Das ist die Stelle, an der eine Lücke auffällt, und zwar Ihnen und nicht erst dem Prüfer.
curl -X POST \
-H 'Cookie: __Host-tapinomahub_session=<SITZUNG>' \
-H 'X-CSRF-Token: <CSRF_TOKEN>' \
-H 'X-Compliance-Organisation-Id: <ORGANISATION>' \
-H 'Idempotency-Key: tagesabschluss-2026-09-12' \
-H 'Content-Type: application/json' \
-d '{"facilityId":"<facilityId>","timeZone":"Europe/Berlin","closedAt":"2026-09-12T18:00:00Z","attestationId":"<attestationId>"}' \
'https://api.tapinomahub.com/compliance/journal-periods/2026-09-12/close-daily'Was am Ende vorliegt
Am Ende steht ein Zeitraum, der einer Prüfung standhält, weil er nicht nachträglich erzählt wird: Mengen beim Wiegen erfasst, Übergaben gegen die Genehmigung des Empfängers belegt, Tage geschlossen und Wochen von einer Person gezeichnet.
Wo das in der Dokumentation steht
Die verbindlichen Feldlisten, Fehlercodes und Beispielantworten stehen im OpenAPI-Vertrag dieser Fläche unter docs.tapinomahub.com (tapinoma-compliance). Alle Anwendungsfälle nach Fläche und Rolle geordnet: Übersicht der Anwendungsfälle.
Quellen und Rechtsgrundlagen
Häufige Fragen
Wer schliesst den Tag ab?
Eine angemeldete Person in der Journalrolle, die ihre Anmeldung dafür erneut bestätigt. Der Abschluss wird ihr zugerechnet; tapinoma zeichnet nicht im eigenen Namen ab.
Kann ich eine Woche abzeichnen, bevor alle Tage geschlossen sind?
Der Vertrag legt das nicht ausdrücklich fest. Die Abzeichnung verweist in dailyClosureIds auf mindestens einen Tagesabschluss. Der Vertrag führt zudem den Fehlercode journal_daily_closures_invalid, beschreibt dessen Bedingungen aber nicht.
Wie finde ich eine Lücke?
Über die Prüfakte. Sie gibt die Ereignisse mit Hash und Vorgänger-Hash aus; eine unterbrochene Kette ist daran erkennbar.
