PPWR applies in 77d 14h 08m 19s — 12 August 2026What to do →
DOCUMENTATION

User manual

Everything you need to set up, operate, and scale TraceID for your brand.

Overview

TraceID is a Digital Product Passport platform. Each garment gets a unique QR code and RFID tag. Scanning either opens a public passport page with materials, certifications, and sustainability data.

WhoDoes whatWhere
Brand / supplierCreates products, fills passport data, publishes passportsadmin.traceid.co
Label productionCreates batches, exports QR + EPC CSV, prints labelsadmin.traceid.co + label printer
ConsumerScans QR or RFID on garment, views passportdpp.traceid.co/p/{id}

Passport flow

From raw product data to a live, publicly scannable Digital Product Passport.

  1. Create a model — Go to Products → New model. Enter model SKU, category, division, and brand.
  2. Add variants — Inside the model, add each colour × size combination. Each variant gets its own passport.
  3. Fill passport data — Open a variant → Edit passport. Fill composition, origin, certifications, care, carbon footprint.
  4. Run compliance check — AI validates against EU ESPR Article 7 and returns a DPP score with errors and fix suggestions.
  5. Publish — Once composition and origin are filled, click Publish. The passport becomes publicly accessible.
// AI mapper input/output example Input: "95% Cotton, 5% Elastane" Output: [ { material: "Cotton", percentage: 95, isRecycled: false }, { material: "Elastane", percentage: 5, isRecycled: false } ] + suggestedCertifications: ["Better Cotton (BCI)"] + carbonEstimateKg: { min: 7.2, max: 11.4 }

Batches & QR codes

A batch is one label production run. It generates serialised physical item records, QR URLs, and EPC tags for a specific variant.

  1. Go to Batches → New batch
  2. Select the variant
  3. Enter quantity
  4. Set the EPC company prefix and item reference
  5. Click Generate

Go to Export → select the completed batch → Generate CSV. The file contains:

QR_CODE_URL,EPC,ITEM_ID,SERIAL,VARIANT_SKU https://dpp.traceid.co/p/itm_a1b2,3034ABCD000100000001,itm_a1b2,00000001,TRJ-NAV-M

RFID & EPC

Every item gets both a QR code and an RFID EPC tag. Both resolve to the same passport — this is the golden rule.

Company prefix + Item reference + Serial (8 digits) Example: Prefix: 3034ABCD Item ref: 0001 Serial: 00000042 EPC: 3034ABCD000100000042

Consumer scan experience

  1. Customer scans QR label with phone camera — no app required
  2. Browser opens dpp.traceid.co/p/{itemId}
  3. resolvePassport function checks passport status
  4. If published, returns full passport payload
  5. Customer sees: materials, certifications, care, sustainability, supply chain
  6. Scan is logged in scan_events for analytics

User roles

RolePermissionsScope
Platform adminFull access: create brands, set pricing, view all dataAll brands
Brand adminManage own brand users, data, and settingsOwn brand
Brand managerCreate/edit products, manage categories, publish passportsOwn brand
SupplierEdit passport data, import CSVOwn brand
FactoryCreate batches, export label filesOwn brand
Store staffScan validation onlyOwn brand
AuditorRead-only passports and audit logsOwn brand

Data schema

All brand data is stored in Firestore subcollections under brands/{brandId}/... for complete multi-tenant isolation.

CollectionDocument IDPurpose
brands/{id}/productsmdl_xxxxxxxxOne per model/style
brands/{id}/variantsvar_xxxxxxxxOne per colour × size
brands/{id}/passportsSame as variantIdDPP data — 1:1 with variant
brands/{id}/batchesbat_xxxxxxxxxxLabel production runs
brands/{id}/itemsitm_xxxxxxxxSerialised physical units
brands/{id}/scan_eventsautoQR/RFID scan analytics
item_indexitm_xxxxxxxxCross-brand QR resolution index
epc_indexEPC stringCross-brand RFID resolution index

Cloud functions reference

FunctionTriggerPurpose
resolvePassportHTTPS GETQR/RFID scan → public passport JSON
createBatchCallableGenerate items + indexes in chunks of 499
recomputeDppScoreFirestore triggerAuto-recalculate DPP score on passport write
checkCertificationExpiryCron 08:00 UTCFlag certifications expiring within 60 days
exportLabelFileCallableCSV of QR+EPC pairs for label printer
aiMapCompositionCallableRaw text → structured composition fields
aiCheckComplianceCallableFull EU ESPR Article 7 compliance report
createUserCallableAdmin-only: create user with role + brand
updateUserRoleCallableAdmin-only: change role or brand
deactivateUserCallableAdmin-only: disable account

DPP score breakdown

The DPP score (0–100) is auto-calculated on every passport save. It measures completeness against EU ESPR Article 7.

CategoryMax pointsHow to earn
Identity10Variant SKU (5) + model SKU (5)
Composition20At least one material (10) + percentages sum to 100% (10)
Origin10Country of origin (5) + manufacturing facility (5)
Supply chain15At least one step (10) + all steps verified (5)
Certifications15At least one cert (10) + at least one valid cert (5)
Carbon20Carbon value (12) + methodology (4) + verification (4)
Care & end of life10Care instructions (3) + recyclable (4) + repairability (3)

Regulation overview

The EU Ecodesign for Sustainable Products Regulation (ESPR) was adopted in 2024 and requires Digital Product Passports for all product categories sold in the EU. Textiles are one of the first categories to be regulated.

Key requirements under Article 7 include:

  • Material composition with percentages
  • Country of manufacture
  • Repairability and recyclability information
  • Carbon footprint data (from 2027–2030 depending on scope)
  • Unique product identifier accessible via QR or RFID
  • Certifications with issuer and validity dates

Non-compliance after the mandatory date will result in products being blocked from EU market access. TraceID public passport pages at dpp.traceid.co/p/{id} fulfil this requirement.