Ivverifika l-Konformità mal-UE
Ivverifika l-Konformità mal-UE
qr3.app jinkludi Validatur tal-UE integrat għal Digital Product Passports. Huwa jivverifika d-DPPs tiegħek kontra r-regolamenti rilevanti tal-UE (ESPR, Loi AGEC) u jipprovdi kwistjonijiet strutturati b’severità, field path, suġġerimenti u badge fakultattiva ESPR-ready.
Hemm tliet punti ta’ dħul:
- Naħa tas-server, DPPs diġà ffrankati —
GET /v1/dpp/:id/eu-compliance - Live preview fil-formola tal-ħolqien —
POST /v1/dpp/validate - Simulatur live fid-dettall —
POST /v1/dpp/:id/validate-update
It-tlieta li huma jipprovdu l-istess forma ta’ EuComplianceResult — għalhekk għandek bżonn timplimenta l-evalwazzjoni darba biss.
Struttura tar-Riżultat
{ "compliant": false, "espr_ready": true, "issues": [ { "code": "TEXTILE_AGEC_REQUIRED", "severity": "error", "field": "textile_data.country_weaving_knitting", "message": "AGEC chain country is required for products sold on the French market", "hints": { "market": "FR" } }, { "code": "TEXTILE_GREENWASHING", "severity": "warning", "field": "product_name", "message": "\"natural\" is a prohibited term under AGEC", "hints": { "term": "natural", "locale": "en", "category": "generic" } } ], "summary": { "errors": 1, "warnings": 1, "info": 0 }}compliant: true⇔summary.errors === 0espr_ready: true⇔ il-kampi kollha tal-opt-in tal-ESPR huma ssettjati (ara DPP tat-Tessuti)issues[]huwa magħżul b’mod stabbli skont is-severità (error→warning→info) u mbagħad skont il-kodiċi
Livelli ta’ Severità
| Severità | Tifsira | Eżempju |
|---|---|---|
error | Jimblokka l-konformità mal-UE; għandu jiġi rranġat qabel ir-rilaxx | TEXTILE_AGEC_REQUIRED jekk FR ikun fis-suq u l-katina tal-oriġini ma tkunx kompluta |
warning | Rakkomandazzjoni; il-klijent jista’ jissejvja, iżda għandu jieħu azzjoni | TEXTILE_GREENWASHING barra minn FR |
info | Sinjal ta’ status mingħajr bżonn ta’ azzjoni | TEXTILE_ESPR_READY — il-kampi kollha tal-opt-in tal-ESPR huma kompluti |
Katalgu tar-Regoli (Tessuti + Batteriji)
Tessuti (Q3.3.4)
| Kodiċi | Severità | Trigger |
|---|---|---|
TEXTILE_AGEC_REQUIRED | error (FR) · warning (inkella) | Katina AGEC (Insiġ/Żebgħa/Konfezzjoni) mhux kompluta, FR fis-suq |
TEXTILE_MICROPLASTICS_CONSISTENCY | error | Sintetiku ≥ 50% iżda contains_microplastics !== true |
TEXTILE_SVHC_THRESHOLD | warning | Dħul SVHC mingħajr numru CAS jew konċentrazzjoni |
TEXTILE_GREENWASHING | error (FR) · warning (inkella) | Terminu mil-lista ta’ projbizzjoni f’ product_name/material |
TEXTILE_ESPR_READY | info | Il-kampi kollha tal-ESPR B7–B15 huma kompluti |
Batteriji (Fażi 4a)
Il-validatur jivverifika l-valuri limitu mir-Regolament tal-UE dwar il-Batteriji 2023/1542 (limiti tal-kontenut riċiklat, klassijiet tal-carbon footprint, garanzija minima, eċċ.). Dettalji fid-Dokumentazzjoni tad-DPP tal-Batteriji.
Live Preview fil-Formola tal-Ħolqien
Malli toħloq DPP fid-dashboard (/dashboard/dpp/new), l-istess validatur jaħdem b’mod stateless ma’ kull validate roundtrip — mingħajr ma jkun hemm bżonn li l-pass jiġi ffrankat. Is-sezzjoni eu_compliance tidher direttament taħt il-pannell tal-validazzjoni eżistenti u tenfasizza l-iżbalji u t-twissijiet qabel is-submit.
Aċċess dirett għall-API:
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 '{ "category": "textile", "gtin": "04012345678901", "product_name": "Natural Cotton T-Shirt", "manufacturer": "EcoWear GmbH", "origin_country": "PT", "market_countries": ["FR"], "textile_data": { "fiber_composition": [{ "material": "cotton", "percentage": 100, "recycled_pct": 0 }] } }'Ir-rispons fih:
data.valid— validità sintattika (Zod)data.errors[]— żbalji klassiċi ta’ Zoddata.jsonld_preview— preview tal-JSON-LDdata.eu_compliance— riżultat tal-Validatur tal-UE (nulljekk il-validazzjoni ta’ Zod tfalli)
Jekk eu_compliance.summary.errors > 0, id-dashboard juri banner ta’ Save-Guard immedjatament fuq il-buttuna tas-submit — is-save ma jiġix imblukkat, iżda tara l-konsegwenzi qabel ma tikklikkja.
Simulatur Live fid-Dettall
Fuq /dashboard/dpp/:dppId, taħt is-sezzjoni tal-konformità, hemm karta tas-simulatur. Din tippermettilek tbiddel iż-żewġ kampi l-aktar rilevanti għall-konformità (status u market_countries) u tara l-impatt immedjatament — mingħajr ma tmiss id-dejta eżistenti. Fluss tipiku:
- Preview: “X’jiġri jekk inżid FR mal-assortiment?” → Agħżel iċ-chip “FR” → “Preview EU impact” →
TEXTILE_AGEC_REQUIREDisir viżibbli - Fix: Imla l-katina tal-oriġini (barra mis-simulatur fil-fluss tal-ħolqien jew tal-bulk)
- Save: “Save changes” jissejvja l-istatus/lista tas-swieq direttament permezz ta’
PUT /v1/dpp/:id
Aċċess dirett għall-API:
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" }'Ir-rispons jestendi r-riżultat standard b’oġġett preview:
{ "data": { "compliant": false, "espr_ready": false, "issues": [/* … */], "summary": { "errors": 1, "warnings": 0, "info": 0 }, "preview": { "status": "live", "landing_locale": "de", "market_countries": ["DE", "FR"], "changed_fields": ["status", "market_countries"] } }}changed_fields[] jelenka biss il-kampi li effettivament jinbidlu — b’dan il-mod tista’, pereżempju, tenfasizza biss iċ-chips mibdula f’UI.
Body vojt huwa permess u jipprovdi l-valutazzjoni attwali tal-konformità (verifika mill-ġdid tal-istat attwali).
Awtomatizzazzjoni
CI Pipeline
Verifika tipika tas-CI:
STATUS=$(curl -s -o /tmp/out.json -w "%{http_code}" \ https://qr3.app/v1/dpp/$DPP_ID/eu-compliance \ -H "Authorization: Bearer $API_KEY" \ -H "X-Workspace-Id: $WS_ID")
if [ "$STATUS" != "200" ]; then exit 1fi
jq -e '.data.summary.errors == 0' /tmp/out.json > /dev/nullServer MCP
Is-server @qr3/mcp-server ipprovdut joffri, fost oħrajn, għodda validate_dpp — aġenti tal-IA jistgħu jużawha qabel is-sejħa tal-ħolqien (create call) biex jivverifikaw jekk id-dejta pprovduta tikkonformax mar-regoli tal-AGEC.
Żbalji Komuni
| Kwistjoni | Kawża | Soluzzjoni |
|---|---|---|
TEXTILE_MICROPLASTICS_CONSISTENCY | Kontenut ta’ poliester ≥ 50%, iżda l-flag huwa false | Issettja contains_microplastics: true |
TEXTILE_AGEC_REQUIRED b’ hints.market: "FR" | FR fis-suq, il-katina mhux kompluta | Issettja country_weaving_knitting, country_dyeing_printing, country_assembly |
TEXTILE_GREENWASHING bħala error | Terminu pprojbit + FR fis-suq | Neħħi t-terminu minn product_name jew aġġusta s-suq |
TEXTILE_SVHC_THRESHOLD | Sustanza SVHC mingħajr CAS | Daħħal in-numru CAS mil-lista REACH |
Il-Passi li Jmiss
- DPP tat-Tessuti — skema, katina tal-oriġini, kaxxa ta’ twissija dwar il-mikroplastiċi
- DPP tal-Batteriji — kampi obbligatorji tal-pass tal-batterija
- Referenza tal-API — l-endpoints kollha tal-konformità mal-UE fid-dettall