Digital Product Passport (DPP)
Introduction to Digital Product Passport and how EPCIS enables product traceability for DPP compliance.
The Digital Product Passport (DPP) is the EU's mechanism for attaching a structured, scannable record to every regulated product — what it's made of, who made it, where it has been, how to repair or recycle it. OpenEPCIS implements the DPP as a thin layer on top of GS1 standards: GS1 Digital Link as the identifier, EPCIS 2.0 events as the lifecycle history, and the GS1 Web Vocabulary as the descriptive layer.
Status: OpenEPCIS DPP-Ready is at v0.9.5 (pre-release). The ontologies and JSON-LD contexts are feature-complete and suitable for pilot implementations and validation against the regulations. A production 1.0 release is planned once the EU implementing acts settle.
Quick Links
The bigger picture
- The Digital Twin Vision — how UNTP, DIDs, Verifiable Credentials and EPCIS fit together for unified product identity
Implementation guides
- DPP Resolution Flow — how a QR scan leads to DPP data retrieval
- Resolver Setup Guide — running your own GS1 Digital Link resolver
- Multi-Component Example — an e-bike with linked component DPPs (the CIRPASS-2 pattern)
Per-regulation modules
- ESPR Framework — shared patterns for ESPR 2024/1781
- Battery DPP — EU Battery Regulation 2023/1542
- EUDR — EU Deforestation Regulation 2023/1115
- Textile DPP — EU Sustainable Textiles Strategy
- Electronics DPP — repairability, WEEE, energy efficiency
- Interoperability — how the OpenEPCIS DPP relates to UNTP, CIRPASS-2 and GS1
- openepcis-dpp-ready on GitHub — source ontologies, contexts and examples
Vocabulary browsers
- Core DPP vocabulary — shared ESPR patterns
- Battery · EUDR · Textile · Electronics
External resources
- GS1 DPP activity: https://gs1.eu/activities/digital-product-passport/
- OpenEPCIS Digital Data Management demo: https://ddm.dev.epcis.cloud/products
What is a Digital Product Passport?
A DPP is a digital record that travels with a product across its lifecycle. It typically holds:
- Origin — where and when the product was made
- Materials — what it is made of and where those materials came from
- Environmental impact — carbon footprint, recycled content, sustainability indicators
- Repair and maintenance — how to fix or service the product
- End-of-life — how to dispose of, refurbish or recycle the product
The record is reached by scanning a data carrier on the product — typically a GS1 Digital Link QR code, but NFC and RFID tags work the same way. The scan returns a URL; content negotiation at that URL returns the right kind of data for the asking client (a human-readable page, a JSON-LD record, or a stream of EPCIS events).
Why a DPP?
The EU's Ecodesign for Sustainable Products Regulation (ESPR) 2024/1781 makes the DPP a requirement, sector by sector, starting with batteries in 2027. Three intents drive it:
- Sustainability — extend product life, support reuse and high-quality recycling, reduce waste.
- Transparency — let consumers, repairers and authorities verify claims about origin, composition and compliance.
- Accountability — give regulators a uniform way to check compliance across borders and along the supply chain.
How a DPP works
flowchart LR
M["Product<br/>manufacturing"] --> C["Data carrier<br/>(QR/NFC/RFID)<br/>on the product"]
C --> P["Digital<br/>Product<br/>Passport"]
P --> I["<b>Accessible information</b><br/>• origin and materials<br/>• manufacturing date and location<br/>• environmental certifications<br/>• repair and recycling guides<br/>• supply chain history (via EPCIS)"]
End to end:
- Manufacture — the product is assigned a GS1 identifier (e.g. a GTIN + serial → SGTIN).
- Masterdata — a description of the product is POSTed to the resolver (see below).
- Events — as the product moves through the supply chain, EPCIS events record each step.
- Carrier — a GS1 Digital Link QR (or NFC tag) is attached to the product.
- Access — a scan resolves to the right record; the resolver decides what to return.
DPP and EPCIS: how they connect
EPCIS provides the lifecycle history. Every time something happens to the product, an EPCIS event is captured: it was manufactured, packed into a pallet, shipped, received, sold, returned, refurbished, recycled. The events form a verifiable timeline that feeds the DPP.
Mapping DPP requirements to EPCIS dimensions
| DPP requirement | EPCIS dimension | Captured |
|---|---|---|
| Product identity | What | GS1 identifiers (GTIN, SGTIN, GLN) |
| Timeline | When | eventTime of each lifecycle step |
| Location history | Where | bizLocation, readPoint |
| Business context | Why | bizStep, disposition |
| Conditions | How | sensorElementList (temperature, humidity, etc.) |
Standards-based by design
Both DPP and EPCIS are built on GS1 standards: the same identifiers, the same Digital Link URIs, the same vocabulary. That means cross-border interoperability, reuse of resolver infrastructure that already exists, and a low cost to adopt for any organisation already using GS1.
Example: masterdata on the resolver, lean EPCIS events that reference it
The OpenEPCIS discipline is to keep masterdata on the resolver and EPCIS events lean. Two things happen separately:
1. Register the product's masterdata once, on the resolver.
POST /products/09521141012345 HTTP/1.1
Host: id.dev.epcis.cloud
Content-Type: application/ld+json
Authorization: Bearer ...
{
"@context": "https://ref.openepcis.io/extensions/eu/battery/battery-context.jsonld",
"id": "https://id.dev.epcis.cloud/01/09521141012345",
"type": "Product",
"productName": "Battery Pack 5 kWh",
"gtin": "09521141012345",
"countryOfOrigin": "DE",
"batteryChemistry": {
"type": "BatteryChemistry",
"shortName": "LFP"
},
"recycledContent": {
"type": "RecycledContent",
"lithiumRecycledShare": 0.08,
"cobaltRecycledShare": 0.15
}
}
That record is now reachable by content negotiation at https://id.dev.epcis.cloud/01/09521141012345. A scan of the product's Digital Link QR returns it as JSON-LD or HTML depending on the Accept header.
2. Emit EPCIS events that reference the identifier — no masterdata embedded.
{
"@context": "https://ref.gs1.org/standards/epcis/epcis-context.jsonld",
"type": "ObjectEvent",
"eventTime": "2025-01-08T09:30:00Z",
"eventTimeZoneOffset": "+01:00",
"eventID": "urn:uuid:b5c7d8e9-f012-3456-789a-bcdef0123456",
"epcList": [
"https://id.dev.epcis.cloud/01/09521141012345/21/1000001"
],
"action": "ADD",
"bizStep": "commissioning",
"disposition": "active",
"readPoint": { "id": "https://id.dev.epcis.cloud/414/9520123456788" },
"bizLocation": { "id": "https://id.dev.epcis.cloud/414/9520123456788" }
}
The event says what happened, when, where and why. To learn what the product is, a consumer follows the identifier to the resolver. Keeping the two concerns apart means the masterdata stays valid across every event in the product's life, and an event document never duplicates (or contradicts) the product record.
Standards alignment
OpenEPCIS DPP-Ready is designed to interoperate cleanly with the surrounding ecosystem:
| Standard | How OpenEPCIS aligns |
|---|---|
| GS1 Web Vocabulary | Native foundation; OpenEPCIS extensions imported via owl:imports |
| UN Transparency Protocol (UNTP) | Property alignment via owl:equivalentProperty for shared concepts |
| CIRPASS-2 | Requirements coverage for the DPP data points CIRPASS-2 specifies |
| ESPR 2024/1781 | Full coverage of the articles relevant to product information |
| BatteryPass | Bridge context for ingesting BatteryPass documents into the GS1 model |
Value convention: ratio and fraction properties use the 0–1 decimal scale (UNTP-compatible). recycledContent: 0.45 means 45% recycled content. See Interoperability for the full property mapping.
Industries in scope
The EU is rolling out DPP requirements in waves, starting with the sectors that benefit most from traceability:
Batteries — from February 2027
All batteries placed on the EU market need a DPP under Regulation 2023/1542. The passport must include chemistry and materials, carbon footprint, recycled content, performance, durability, and collection/recycling instructions. See Battery DPP.
Textiles — phased from 2027–2030
Apparel and footwear: fibre composition, country of origin, care and repair instructions, recycling guidance. See Textile DPP.
Electronics
Repairability score, spare-parts availability, hazardous-substance disclosure, energy efficiency, end-of-life routing. The Electronics DPP module follows the French Repairability Index method and aligns with WEEE.
Construction materials, furniture, chemicals, and beyond
ESPR allows the DPP scope to extend across product categories. Sectoral implementing acts are sequenced over the next several years.
Benefits
For consumers — verified product information, easier access to repair guides, fuller history when buying second-hand.
For businesses — a single set of standards to satisfy multiple EU regulations, supply-chain visibility as a side effect of compliance, a credible foundation for sustainability claims.
For the environment — extended product life, cleaner recycling streams, better feedback to designers about end-of-life behaviour.
How OpenEPCIS supports DPP
OpenEPCIS provides the building blocks; you wire them together to fit your supply chain.
- GS1 Conformant Resolver — host the masterdata and linksets for every regulated product.
- EPCIS 2.0 REST API — capture and query lifecycle events.
- Format Converter — round-trip EPCIS documents between XML and JSON-LD.
- Event Hash Generator — idempotent event identity across re-sends.
- Test Data Generator — synthesise realistic events for development and conformance testing.
- DPP-Ready ontologies — battery, textile, electronics, EUDR and ESPR core JSON-LD contexts.
Getting started
A typical pilot path:
- Read the regulation that applies to your product category (linked from each module page).
- Decide on the GS1 identifiers you'll use — GTIN for the product, SGTIN for serialised items, GLN for locations.
- Stand up a resolver and POST your product, organisation and place masterdata to it.
- Capture EPCIS events at the points in the supply chain that matter for the DPP.
- Validate the events against the EPCIS 2.0 schema and the relevant DPP-Ready context.
- Print or affix a Digital Link QR; verify end-to-end that a scan returns the expected DPP record.
Contact
Questions, feedback, pilots: info@openepcis.io.