Tekstylny DPP jest już dostępny: sprawdź zgodność z przepisami UE w kilka sekund — zanim zapiszesz

qr3.app obsługuje teraz kompletne paszporty tekstylne zgodne z francuską ustawą Loi AGEC oraz ESPR. Nowość: walidator i symulator na żywo, który oznacza naruszenia AGEC, greenwashing i gotowość do ESPR bezpośrednio w formularzu — zanim zapiszesz.

autor: qr3.app Team

Tekstylny DPP jest już dostępny: sprawdź zgodność z przepisami UE w kilka sekund — zanim zapiszesz

Oprócz ścieżki dla baterii, qr3.app udostępnia teraz drugą kompletną kategorię DPP: tekstylia zgodne z francuską ustawą Loi AGEC (Décret 2022-748) oraz projektem aktu delegowanego ESPR. Jednocześnie wbudowaliśmy walidator UE działający na żywo wewnątrz panelu — zanim zapiszesz paszport i zanim wystawisz produkt na nowym rynku.

W skrócie, trzy rzeczy, których nie dostaniesz na typowych platformach QR:

  1. Kompletny schemat tekstylnego DPP obejmujący obowiązkowy łańcuch AGEC oraz opcjonalne pola ESPR.
  2. Podgląd na żywo wewnątrz formularza tworzenia, który natychmiast oznacza naruszenia AGEC i greenwashing.
  3. Symulator zgodności na stronie szczegółów, który odpowiada na pytanie: „co się stanie, jeśli jutro dodam Francję do moich rynków?".

Dlaczego tekstylny DPP ma znaczenie już dziś

Akt delegowany ESPR dla tekstyliów jest wciąż w fazie projektu — centralny rejestr DPP UE zostanie uruchomiony 2026-07-19. Nie możesz czekać do tego czasu, ponieważ część regulacji jest już prawnie wiążąca dzisiaj:

  • Loi AGEC (Francja, od 2023-01-01): obowiązkowy łańcuch pochodzenia, ostrzeżenie o mikroplastiku, transparentność REACH-SVHC, zakaz niejasnych deklaracji środowiskowych.
  • Od 2025 roku AGEC obejmuje sprzedawców tekstyliów z przychodem >10 mln € lub >10 000 jednostek. Mniejsi producenci dołączają w 2027 roku, a niemal wszyscy do 2028 roku.
  • Liczba wezwań do zaprzestania praktyk greenwashingu osiągnęła we Francji rekordowy poziom w 2024 roku — „natural", „biodegradable" czy „écologique" bez dowodów jest droższe niż sprint dokumentacyjny.

Jeśli wysyłasz tekstylia do UE (lub choćby tylko do Francji), uporządkowanie stosu DPP już teraz jest tańsze niż paniczna migracja w 2027 roku.

Schemat tekstylny w pigułce

Budujemy bezpośrednio na obowiązkowym katalogu pól AGEC:

{
  "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
  }
}

Pola obowiązkowe obejmują cztery zasady AGEC, których francuskie organy egzekwują najczęściej:

Artykuł AGEC Pole Co robi walidator
A1 fiber_composition[].recycled_pct Wszystkie udziały procentowe włókien muszą sumować się do 100%
A2–A4 country_weaving_knitting / dyeing_printing / assembly Trzy kraje wymagane zawsze, gdy FR jest na liście rynków
A5 contains_microplastics Wymuszone na true, gdy udział włókien syntetycznych ≥ 50%
A6 svhc_substances[] Numer CAS + stężenie wymagane od 0,1%

Dodatkowo obsługujemy opcjonalne pola ESPR (trwałość, ślad węglowy PEF CO₂, adres URL do napraw, termin dostępności części zamiennych, klasa recyklowalności). Gdy wszystkie z nich są wypełnione, panel wyświetla odznakę ESPR-ready — idealne dla producentów, którzy inwestują czas teraz, aby ruszyć w 2027 roku bez migracji.

Podgląd na żywo: zobacz błędy, zanim zapiszesz

Typowy przepływ wyglądał kiedyś tak: wypełnij formularz → zapisz → przejdź do strony szczegółów → przeczytaj błędy zgodności → wróć do formularza. To boli w momencie, gdy tworzysz całą partię.

Od tego wydania walidator UE działa bezstanowo wewnątrz formularza tworzenia:

  • POST /v1/dpp/validate zwraca teraz dodatkowe pole eu_compliance z compliant, espr_ready, issues[] oraz podsumowaniem pogrupowanym według wagi, obok walidacji Zod.
  • Panel renderuje problemy bezpośrednio pod panelem walidacji, pogrupowane według error / warning / info.
  • Banner zabezpieczający zapis pojawia się nad przyciskami wysyłania („2 błędy i 1 ostrzeżenie — zapisać mimo to?"), gdy tylko problemy pozostają. Zapis nie jest blokowany, ale czarno na białym widzisz, co akceptujesz.

Dla Ciebie jako dewelopera oznacza to: możesz uruchomić walidator wszędzie — wewnątrz własnego przepływu importu, w sprawdzeniu CI, w haku agenta Cursor.

curl -X POST https://qr3.app/v1/dpp/validate \
  -H "Authorization: Bearer $API_KEY" \
  -H "X-Workspace-Id: $WS_ID" \
  -H "Content-Type: application/json" \
  -d @textile-payload.json | jq '.data.eu_compliance.summary'

Symulator zgodności: „a co, jeśli dodam Francję?"

Funkcja, której osobiście chciałem najbardziej, to symulator zgodności na stronie szczegółów istniejącego DPP. Typowy scenariusz:

Masz w systemie 500 paszportów tekstylnych, wszystkie dla rynku niemieckiego. Wchodzi dział sprzedaży: „W przyszłym miesiącu wchodzimy do Francji". Pytanie: które z Twoich paszportów nagle łamią AGEC?

Otwórz paszport w panelu, a w sekcji zgodności UE pojawi się nowa karta: Symulator zgodności.

  • Kliknij chip FR (obok presetów DE/AT/FR/IT/ES/NL) lub wpisz własny kod ISO.
  • Opcjonalnie: przełącz status z draft na live.
  • Przycisk Preview EU impact.

Interfejs natychmiast pokazuje Ci, bez zapisywania paszportu:

  • Nowe karty błędów (np. TEXTILE_AGEC_REQUIRED na ścieżce pola textile_data.country_weaving_knitting).
  • Ostrzeżenie o greenwashingu, które eskaluje z warning do error, ponieważ FR jest na liście rynków.
  • Znacznik preview.changed_fields wskazujący dokładnie, które pola uległyby zmianie.

Gdy jesteś zadowolony, Save changes wypycha różnicę przez PUT /v1/dpp/:id. Jeśli nie — Reset, i nic się nie stało.

Pod maską stoi za tym jeden nowy punkt końcowy:

curl -X POST https://qr3.app/v1/dpp/$DPP_ID/validate-update \
  -H "Authorization: Bearer $API_KEY" \
  -H "X-Workspace-Id: $WS_ID" \
  -H "Content-Type: application/json" \
  -d '{ "market_countries": ["DE", "FR"], "status": "live" }'

Worker scala poprawkę w pamięci z istniejącym DPP i uruchamia walidator UE na wyniku — bez dostępu do zapisu. Pusty korpus żądania jest dozwolony i zwraca aktualny werdykt.

Dlaczego to coś więcej niż „miło mieć"

Trzy powody, dla których symulator nie jest gadżetem:

  1. Sprawdzenie przed sprzedażą przy ekspansji rynkowej. Dział sprzedaży może w 60 sekund odpowiedzieć, które produkty są gotowe na FR i jak kosztowne byłoby wdrożenie.
  2. Oddzielenie operacji na danych od operacji compliance. Compliance nie musi już gonić za każdym defektem danych — uruchom symulator raz, przefiltruj czysto, otwórz zgłoszenia.
  3. Przyjazny dla agentów AI. Punkt końcowy ma dokładnie taki sam kształt jak POST /v1/dpp/validate. Agent Cursor lub Claude może wywołać go bezpośrednio z zadania takiego jak „znajdź paszporty gotowe na FR" — bez pośredniego mini-skryptu.

Wciąż API-first

Wszystko, co widoczne w panelu, jest dostępne przez API:

  • POST /v1/dpp/validate — bezstanowy walidator dla przepływów tworzenia.
  • POST /v1/dpp/:id/validate-update — bezstanowy walidator dla częściowych aktualizacji (symulator).
  • GET /v1/dpp/:id/eu-compliance — trwałe sprawdzenie dla istniejących paszportów (świetne do CI).
  • POST /v1/dpp/import — masowy import CSV/XLSX z nowymi szablonami tekstylnymi (GET /v1/dpp/import/templates/textile?format=xlsx).
  • GET /01/{GTIN}/21/{SERIAL} — widok konsumenta z polem ostrzeżenia AGEC o mikroplastiku, łańcuchem pochodzenia, listą SVHC, sekcją trwałości.

Wszystkie trzy punkty końcowe walidatora zwracają ten sam kształt EuComplianceResult. Dzięki temu grupowanie problemów i renderowanie wagi budujesz dokładnie raz.

Gwarancja braku zmian łamiących kompatybilność

Wszystko w tym wydaniu jest addytywne:

  • Istniejący klienci POST /v1/dpp/validate mogą ignorować nowe pole eu_compliance bez żadnych zmian.
  • Przepływy dla baterii pozostają niezmienione.
  • market_countries jest opcjonalne i domyślnie przyjmuje wartość [].

Szczegóły znajdziesz w changelogu oraz w naszej polityce wersjonowania API.

Jak zacząć

Jeśli masz duży katalog paszportów tekstylnych lub potrzebujesz audytu ryzyka AGEC/Francji, porozmawiaj z nami — jesteśmy gotowi na klientów pilotażowych w przedziale od 500 do 50 000 SKU.