Nach der Batterie-Lane liefert qr3.app jetzt eine zweite vollständige DPP-Kategorie aus: Textilien nach der französischen Loi AGEC (Décret 2022-748) mit vorbereiteten Feldern für den erwarteten, noch nicht erlassenen ESPR-Delegated-Act. Gleichzeitig haben wir einen Live-EU-Validator eingebaut, der im Dashboard mitläuft — bevor Du einen Pass speicherst und bevor Du ihn auf einen neuen Markt setzt.
TL;DR: Du bekommst heute drei Dinge, die es auf klassischen QR-Plattformen so nicht gibt:
- Ein vollständiges Textil-DPP-Schema inklusive AGEC-Pflichtchain und ESPR-Opt-in.
- Einen Live-Preview im Create-Formular, der AGEC-Verstöße und Greenwashing sofort zeigt.
- Einen Compliance-Simulator auf der Detailseite, der beantwortet: „Was passiert, wenn ich morgen Frankreich zu meinen Märkten hinzufüge?"
Warum das Textil-DPP heute relevant ist
Der ESPR-Textil-Delegated-Act ist noch nicht erlassen — der Arbeitsplan der Kommission sieht seine Annahme vorläufig für 2027 vor, seine Anforderungen gelten in der Regel frühestens 18 Monate nach Inkrafttreten. Du kannst aber nicht bis dahin warten, denn ein Teil des Regelwerks ist bereits heute rechtsverbindlich:
- Loi AGEC (Frankreich, seit 01.01.2023): Pflicht zu Herkunftskette, Mikroplastik-Warnhinweis, REACH-SVHC-Transparenz, Verbot vager Umwelt-Claims.
- Seit 2025 gilt AGEC für Hersteller, Importeure und andere Inverkehrbringer von Textilien in Frankreich mit mehr als 10 Mio. € Jahresumsatz mit den erfassten Produkten und mindestens 10.000 Einheiten pro Jahr (ab 2023: 50 Mio. € und 25.000 Einheiten; ab 2024: 20 Mio. € und 10.000 Einheiten).
- Greenwashing-Abmahnungen in FR haben 2024 ein Rekordniveau erreicht — „natural", „biodegradable" oder „écologique" ohne Beleg sind teurer als ein Docs-Sprint.
Wer heute Textilien in die EU (oder auch nur nach Frankreich) verkauft, sollte seinen DPP-Stack jetzt aufsetzen, statt in Panik zu migrieren, sobald der ESPR-Rechtsakt gilt.
Das Textil-Schema im Überblick
Wir bauen direkt auf dem AGEC-Pflichtkatalog auf:
{
"category": "textile",
"gtin": "04012345678901",
"product_name": "Organic Cotton T-Shirt",
"manufacturer": "EcoWear GmbH",
"origin_country": "PT",
"market_countries": ["DE", "AT", "FR"],
"textile_data": {
"fiber_composition": [
{ "material": "cotton", "percentage": 95, "origin_country": "TR", "recycled_pct": 0 },
{ "material": "elastane", "percentage": 5, "origin_country": "IT", "recycled_pct": 0 }
],
"country_weaving_knitting": "PT",
"country_dyeing_printing": "PT",
"country_assembly": "PT",
"contains_microplastics": false
}
}
Die Pflichtfelder decken die vier AGEC-Regeln ab, über die die französischen Behörden am häufigsten abmahnen:
| Interne Prüf-ID | Feld | Was der Validator tut |
|---|---|---|
| A1 | fiber_composition[].recycled_pct |
Summe aller Fasern muss 100 % ergeben |
| A2–A4 | country_weaving_knitting / dyeing_printing / assembly |
Drei Länder Pflicht, sobald FR im Markt ist |
| A5 | contains_microplastics |
true erzwungen, sobald synthetische Fasern mehr als 50 % ergeben |
| A6 | svhc_substances[] |
CAS-Nummer + Konzentration Pflicht ab 0,1 % |
Dazu kommen optionale ESPR-Felder (Durability, PEF-CO₂, Reparatur-URL, Ersatzteil-Fristen, Recyclability-Klasse). Sobald alle gesetzt sind, rendert das Dashboard den Badge ESPR-ready — perfekt für Hersteller, die heute Zeit investieren, um ohne Migration startklar zu sein, sobald der ESPR-Rechtsakt gilt.
Der Live-Preview: Fehler sehen, bevor Du speicherst
Bisher war der typische Workflow: Formular ausfüllen → speichern → auf die Detailseite springen → Compliance-Fehler lesen → zurück ins Formular. Das ist schmerzhaft, wenn Du einen Batch von Pässen anlegst.
Seit diesem Release läuft der EU-Validator stateless im Create-Formular mit:
- Der Endpoint
POST /v1/dpp/validateliefert jetzt zusätzlich zur Zod-Validierung ein Feldeu_compliancemitcompliant,espr_ready,issues[]und einem Summary nach Severity. - Das Dashboard rendert diese Issues direkt unter dem Validation-Panel, gruppiert nach Fehler/Warnung/Info.
- Über den Submit-Buttons erscheint ein Save-Guard-Banner („Noch 2 Fehler und 1 Warnung — trotzdem speichern?"), sobald Issues offen sind. Speichern wird nicht blockiert, aber Du siehst schwarz auf weiß, was Du in Kauf nimmst.
Für Dich als Entwickler bedeutet das: Du kannst den Validator auch außerhalb des Dashboards einbauen — z. B. in Deinen eigenen Import-Flow, im CI-Check oder in einem Cursor-Agent-Hook.
curl -X POST https://qr3.app/v1/dpp/validate \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d @textile-payload.json | jq '.data.eu_compliance.summary'
Der Compliance-Simulator: „Was passiert, wenn ich Frankreich aufnehme?"
Das Feature, auf das ich persönlich am meisten gewartet habe, ist der Compliance-Simulator auf der Detailseite eines bestehenden DPP. Typischer Anwendungsfall:
Du hast 500 Textil-Pässe für den deutschen Markt im System. Dein Vertrieb kommt mit den Worten „Wir expandieren nächsten Monat nach Frankreich" um die Ecke. Frage: Welche Deiner Pässe werfen unter AGEC plötzlich Fehler?
Im Dashboard öffnest Du den Pass und siehst unter der EU-Compliance-Section eine neue Karte: Compliance-Simulator.
- Klick auf den Chip FR (neben Presets DE/AT/FR/IT/ES/NL) oder Custom-Input für andere ISO-Codes.
- Optional: Status von
draftaufliveumschalten. - Button Preview EU impact.
Die Oberfläche zeigt sofort, ohne den Pass zu speichern:
- Neue Error-Karten (z. B.
TEXTILE_AGEC_REQUIREDmit Feldpfadtextile_data.country_weaving_knitting). - Eine Greenwashing-Warnung, die von
warningzuerroreskaliert, weil FR im Markt ist. - Ein
preview.changed_fields-Tag, der genau markiert, welche Felder sich geändert hätten.
Wenn Du zufrieden bist, schiebt Save changes das Delta über PUT /v1/dpp/:id in die DB. Wenn nicht — Reset, und nichts ist passiert.
Unter der Haube ist das ein einzelner neuer Endpoint:
curl -X POST https://qr3.app/v1/dpp/$DPP_ID/validate-update \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{ "market_countries": ["DE", "FR"], "status": "live" }'
Der Worker merged das Patch in-memory mit dem existierenden DPP und lässt den EU-Validator drüberlaufen — kein Schreibzugriff. Leerer Body ist erlaubt und liefert den Ist-Zustand zurück.
Warum das mehr ist als ein „nice to have"
Drei Gründe, warum der Simulator kein Gimmick ist:
- Pre-Sales-Check für Markterweiterungen. Sales kann in 60 Sekunden beantworten, welche Produkte FR-ready sind und wie teuer ein Rollout wird.
- Entkoppelung von Data-Ops und Compliance-Ops. Compliance muss nicht mehr jedem Data-Fehler hinterherlaufen — stattdessen einmal den Simulator ausführen, sauber filtern, Tickets aufmachen.
- KI-Agent-tauglich. Der Endpoint hat exakt dieselbe Shape wie
POST /v1/dpp/validate. Ein Cursor- oder Claude-Agent kann ihn direkt aus einer Aufgabe wie „Prüfe, welche Pässe Frankreich-ready sind" ansteuern — ohne Mini-Skript dazwischen.
Developer-Erfahrung bleibt API-first
Wir haben darauf geachtet, dass alles, was im Dashboard sichtbar ist, auch über die API erreichbar ist:
POST /v1/dpp/validate— Stateless Validator für Create-Flows.POST /v1/dpp/:id/validate-update— Stateless Validator für Partial-Updates (Simulator).GET /v1/dpp/:id/eu-compliance— Persistenter Check für bestehende Pässe (gut für CI-Pipelines).POST /v1/dpp/import— CSV/XLSX-Bulk-Import inklusive neuer Textil-Templates (GET /v1/dpp/import/templates/textile?format=xlsx).GET /01/{GTIN}/21/{SERIAL}— Consumer-Ansicht mit AGEC-Mikroplastik-Warnbox, Herkunftskette, SVHC, Durability.
Alle drei Validator-Endpoints liefern dieselbe EuComplianceResult-Shape. Du musst Issue-Gruppierung und Severity-Rendering also exakt einmal bauen.
Non-Breaking-Zusage
Alle Änderungen aus diesem Release sind additiv:
- Clients, die
POST /v1/dpp/validatebereits nutzen, ignorieren das neueeu_compliance-Feld ohne Änderung. - Die Batterie-Flows sind unverändert.
market_countriesist optional und defaultet auf[].
Details findest Du im Changelog und unserer API-Versionierungs-Policy.
Jetzt starten
- Textil-DPP-Doku — Schema, Mikroplastik-Regel, ESPR-Opt-in
- EU-Compliance-Doku — Regel-Katalog, Live-Preview, Simulator
- Kostenlos starten — Free-Plan, Dashboard + API
- Changelog abonnieren — SDK-Releases, neue Endpoints, DPP-Updates
Wenn Du Textil-Pässe in hoher Stückzahl hast oder AGEC-Frankreich-Risiken auditieren willst, melde dich bei uns — wir sind auf Pilotkunden zwischen 500 und 50.000 SKUs eingestellt.