Освен направлението за батерии, qr3.app вече предлага и втора пълна DPP категория: текстил съгласно френския Loi AGEC (Décret 2022-748) и проекта на делегиран акт по ESPR. Същевременно вградихме жив валидатор за ЕС, който работи директно в таблото за управление — преди да запазите паспорт и преди да листнете продукт на нов пазар.
Накратко — три неща, които не получавате на типичните QR платформи:
- Пълна схема за текстилен DPP, включваща задължителната верига по AGEC и опционалния модул по ESPR.
- Жив преглед директно във формата за създаване, който мигновено сигнализира за нарушения на AGEC и грийнуошинг.
- Симулатор за съответствие на страницата с детайли, който отговаря на въпроса: „Какво се случва, ако утре добавя Франция към своите пазари?“
Защо текстилният DPP има значение още днес
Делегираният акт по ESPR за текстил все още е в проект — централният DPP регистър на ЕС влиза в действие на 2026-07-19. Не можете да чакате дотогава, защото част от регулацията вече е правно обвързваща днес:
- Loi AGEC (Франция, от 2023-01-01): задължителна верига на произход, предупреждение за микропластмаси, прозрачност по REACH-SVHC, забрана на неясни екологични твърдения.
- От 2025 г. AGEC се прилага за продавачи на текстил с приходи над 10 млн. евро или над 10 000 бройки. По-малките производители следват през 2027 г., а почти всички — до 2028 г.
- Предупредителните писма за грийнуошинг във Франция достигнаха рекорден обем през 2024 г. — „естествено“, „биоразградимо“ или „écologique“ без доказателства е по-скъпо от един спринт по документацията.
Ако пускате текстил на пазара в ЕС (или дори само във Франция), изграждането на вашия DPP стек сега е по-евтино от паническа миграция през 2027 г.
Текстилната схема накратко
Изграждаме директно върху каталога със задължителни полета на 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
}
}
Задължителните полета покриват четирите правила на AGEC, които френските власти налагат най-често:
| Член на AGEC | Поле | Какво прави валидаторът |
|---|---|---|
| A1 | fiber_composition[].recycled_pct |
Всички проценти на влакната трябва да дават общо 100% |
| A2–A4 | country_weaving_knitting / dyeing_printing / assembly |
Изискват се три държави, винаги когато FR е сред пазарите |
| A5 | contains_microplastics |
Принудително зададено на true, когато синтетичните влакна са ≥ 50% |
| A6 | svhc_substances[] |
Изискват се CAS номер + концентрация от 0,1% нагоре |
Освен това поддържаме опционални ESPR полета (издръжливост, PEF CO₂, URL за ремонт, краен срок за резервни части, клас на рециклируемост). Когато всички те са попълнени, таблото показва значка ESPR-ready — идеално за производители, които инвестират време сега, за да стартират през 2027 г. без миграция.
Жив преглед: вижте грешките, преди да запазите
Типичният поток беше: попълвате формата → запазвате → отивате на страницата с детайли → четете грешките по съответствието → връщате се обратно във формата. Това боли точно в момента, в който създавате партида.
От тази версия валидаторът на ЕС работи без състояние директно във формата за създаване:
POST /v1/dpp/validateвече връща допълнително полеeu_complianceсcompliant,espr_ready,issues[]и обобщение, групирано по сериозност, в допълнение към валидацията със Zod.- Таблото рендира проблемите директно под панела за валидация, групирани по error / warning / info.
- Банер за защита при запазване се появява над бутоните за изпращане („2 грешки и 1 предупреждение — да запазя ли въпреки това?“), когато остават нерешени проблеми. Запазването не се блокира, но виждате черно на бяло какво приемате.
За вас като разработчик това означава: можете да внедрите валидатора навсякъде — във вашия собствен импорт поток, в CI проверка, в hook на 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'
Симулаторът за съответствие: „Какво ще стане, ако добавя Франция?“
Функцията, която аз лично исках най-силно, е симулаторът за съответствие на страницата с детайли на съществуващ DPP. Типичен сценарий:
Имате 500 текстилни паспорта в системата, всички за германския пазар. Идва човек от продажбите: „Разширяваме се във Франция следващия месец.“ Въпрос: кои от вашите паспорти изведнъж нарушават AGEC?
Отворете паспорт в таблото и под секцията за съответствие с ЕС се появява нова карта: Симулатор за съответствие.
- Кликнете върху чипа FR (до предварителните настройки DE/AT/FR/IT/ES/NL) или въведете собствен ISO код.
- По избор: превключете статуса от
draftнаlive. - Бутон Преглед на влиянието за ЕС.
Интерфейсът мигновено ви показва, без да запазва паспорта:
- Нови карти с грешки (например
TEXTILE_AGEC_REQUIREDпо пътя на полетоtextile_data.country_weaving_knitting). - Предупреждение за грийнуошинг, което ескалира от
warningдоerror, защото FR е сред пазарите. - Таг
preview.changed_fields, който точно посочва кои полета биха се променили.
Когато сте доволни, Запазване на промените изпраща делтата чрез PUT /v1/dpp/:id. Ако не — Нулиране и нищо не се е случило.
Зад кулисите това е един нов крайен пункт:
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" }'
Работникът слива пач-а в паметта със съществуващия DPP и пуска валидатора на ЕС върху резултата — без достъп за запис. Празно тяло е допустимо и връща текущата присъда.
Защо това е повече от „приятно да го има“
Три причини, поради които симулаторът не е трик:
- Проверка преди продажба при разширяване на пазара. Продажбите могат за 60 секунди да отговорят кои продукти са готови за FR и колко скъп би бил един рулаут.
- Разделяне на операциите с данни от операциите по съответствие. Съответствието вече не гони всеки дефект в данните — пускате симулатора веднъж, филтрирате чисто, отваряте тикети.
- Удобство за AI агенти. Крайният пункт има точно същата форма като
POST /v1/dpp/validate. Агент на Cursor или Claude може да го извика директно от задача като „намери паспортите, готови за FR“ — без междинен мини скрипт.
Все така API-first
Всичко видимо в таблото е достъпно през API:
POST /v1/dpp/validate— валидатор без състояние за потоците на създаване.POST /v1/dpp/:id/validate-update— валидатор без състояние за частични актуализации (симулаторът).GET /v1/dpp/:id/eu-compliance— постоянна проверка за съществуващи паспорти (отлично за CI).POST /v1/dpp/import— групов импорт от CSV/XLSX с нови текстилни шаблони (GET /v1/dpp/import/templates/textile?format=xlsx).GET /01/{GTIN}/21/{SERIAL}— потребителски изглед с предупредителното каре за микропластмаси по AGEC, веригата на произход, списъка със SVHC, секцията за издръжливост.
И трите валидаторни крайни пункта връщат една и съща форма EuComplianceResult. Така изграждате групирането на проблеми и рендирането по сериозност точно веднъж.
Гаранция за съвместимост
Всичко в тази версия е допълващо:
- Съществуващите клиенти на
POST /v1/dpp/validateмогат да игнорират новото полеeu_complianceбез промени. - Потоците за батерии остават непроменени.
market_countriesе опционално и по подразбиране е[].
Подробности има в списъка с промени и нашата политика за версиониране на API.
Започнете сега
- Документация за текстилен DPP — схема, правило за микропластмаси, опционален модул по ESPR
- Документация за съответствие с ЕС — каталог с правила, жив преглед, симулатор
- Започнете безплатно — безплатен план, табло + API
- Последвайте ни в GitHub — issues, SDK издания, пътна карта
Ако имате голям каталог от текстилни паспорти или трябва да одитирате риска по AGEC/Франция, свържете се с нас — подготвени сме за пилотни клиенти между 500 и 50 000 SKU.