Skip to content

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:

  1. Naħa tas-server, DPPs diġà ffrankatiGET /v1/dpp/:id/eu-compliance
  2. Live preview fil-formola tal-ħolqienPOST /v1/dpp/validate
  3. Simulatur live fid-dettallPOST /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: truesummary.errors === 0
  • espr_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à (errorwarninginfo) u mbagħad skont il-kodiċi

Livelli ta’ Severità

SeveritàTifsiraEżempju
errorJimblokka l-konformità mal-UE; għandu jiġi rranġat qabel ir-rilaxxTEXTILE_AGEC_REQUIRED jekk FR ikun fis-suq u l-katina tal-oriġini ma tkunx kompluta
warningRakkomandazzjoni; il-klijent jista’ jissejvja, iżda għandu jieħu azzjoniTEXTILE_GREENWASHING barra minn FR
infoSinjal ta’ status mingħajr bżonn ta’ azzjoniTEXTILE_ESPR_READY — il-kampi kollha tal-opt-in tal-ESPR huma kompluti

Katalgu tar-Regoli (Tessuti + Batteriji)

Tessuti (Q3.3.4)

KodiċiSeveritàTrigger
TEXTILE_AGEC_REQUIREDerror (FR) · warning (inkella)Katina AGEC (Insiġ/Żebgħa/Konfezzjoni) mhux kompluta, FR fis-suq
TEXTILE_MICROPLASTICS_CONSISTENCYerrorSintetiku ≥ 50% iżda contains_microplastics !== true
TEXTILE_SVHC_THRESHOLDwarningDħul SVHC mingħajr numru CAS jew konċentrazzjoni
TEXTILE_GREENWASHINGerror (FR) · warning (inkella)Terminu mil-lista ta’ projbizzjoni f’ product_name/material
TEXTILE_ESPR_READYinfoIl-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:

Terminal window
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’ Zod
  • data.jsonld_preview — preview tal-JSON-LD
  • data.eu_compliance — riżultat tal-Validatur tal-UE (null jekk 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:

  1. Preview: “X’jiġri jekk inżid FR mal-assortiment?” → Agħżel iċ-chip “FR” → “Preview EU impact” → TEXTILE_AGEC_REQUIRED isir viżibbli
  2. Fix: Imla l-katina tal-oriġini (barra mis-simulatur fil-fluss tal-ħolqien jew tal-bulk)
  3. Save: “Save changes” jissejvja l-istatus/lista tas-swieq direttament permezz ta’ PUT /v1/dpp/:id

Aċċess dirett għall-API:

Terminal window
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:

Terminal window
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 1
fi
jq -e '.data.summary.errors == 0' /tmp/out.json > /dev/null

Server 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

KwistjoniKawżaSoluzzjoni
TEXTILE_MICROPLASTICS_CONSISTENCYKontenut ta’ poliester ≥ 50%, iżda l-flag huwa falseIssettja contains_microplastics: true
TEXTILE_AGEC_REQUIRED b’ hints.market: "FR"FR fis-suq, il-katina mhux komplutaIssettja country_weaving_knitting, country_dyeing_printing, country_assembly
TEXTILE_GREENWASHING bħala errorTerminu pprojbit + FR fis-suqNeħħi t-terminu minn product_name jew aġġusta s-suq
TEXTILE_SVHC_THRESHOLDSustanza SVHC mingħajr CASDaħħal in-numru CAS mil-lista REACH

Il-Passi li Jmiss