BACK TO DIRECTORY

Digital Product Passport for WooCommerce

by AOS Digital

0.0
(0 ratings)

Digital Product Passport for WooCommerce adds the product data the EU Ecodesign for Sustainable Products Regulation (ESPR / EU 2024/1781) asks for, and publishes it three ways: as a passport people can open on the product page, as a QR code that links to it, and as JSON-LD a machine can read through the REST API.

Starting in 2025, the ESPR regulation requires many product categories sold in the EU to carry a Digital Product Passport covering sustainability, material composition, repairability, and end-of-life information. This plugin helps you meet those requirements today.

Key Features

  • Full ESPR / EU 2024/1781 Compliance — all mandatory data fields included
  • QR Code Generation — one code per product, generated inside the plugin as SVG. No external service, no API key, nothing leaves the site
  • GS1 Digital Link — QR codes follow the /01/{gtin}/21/{serial} standard
  • JSON-LD Structured Data — schema.org + W3ID DPP ontology (https://w3id.org/dpp/)
  • REST API — GET /wp-json/dppass/v1/passport/{id} with HTTP caching headers
  • WP-CLI: wp dppass passport and wp dppass settings read and change passports and settings with the checks of the admin screens
  • Tab or Button Display — show the passport in a product tab or via a modal button
  • Completeness Score — live progress bar showing how complete each passport is
  • WooCommerce HPOS Ready — compatible with High Performance Order Storage
  • Cart & Checkout Blocks — full Block Editor compatibility declared
  • Fully Translatable — all strings use the digital-product-passport-for-woocommerce text domain

Passport Data Fields

Identity & Traceability
– GTIN / EAN-13 barcode
– Serial number & batch number
– Brand name & manufacturer name
– Manufacturer address
– Production country & production date

Sustainability & Environmental Impact
– Carbon footprint (kg CO₂eq) + measurement methodology
– Energy efficiency class (A+++ to G)
– Material composition (name, % weight, % recycled content)
– Recyclability percentage
– Recycling instructions / end-of-life info

Repairability & Durability
– Repairability index (0–10)
– Spare parts availability & availability period
– Durability / expected lifespan (years)
– Warranty duration (months)
– Repairability documentation available (yes/no)

Compliance
– Substances of concern (REACH / RoHS)
– Applicable regulation reference
– Compliance document URL

Free add-on

Nothing in this plugin is locked or limited. Everything described above works, for every
product, with no key and no account.

A separate add-on, also free, adds work that only larger catalogues need. It is a second
plugin you download from us; this one does not change when you install it, it simply
finds it:

  • Analytics Dashboard — track passport views per product with Chart.js charts
  • PDF Passport Export — print-optimized HTML passport with your branding
  • Bulk Passport Editor — edit all products in a spreadsheet-like grid
  • CSV & JSON Import/Export — migrate data or sync with external systems
  • Email Notifications — notify admins on passport updates + weekly digest reports
  • ACF Integration — sync Advanced Custom Fields with passport data
  • WPML & Polylang Support — multilingual passport data
  • Branded PDFs — custom logo, company name, and accent color in exports

Developer Hooks

Actions

  • dppass_passport_updated( $product_id, $product ): after the passport fields are written, on the product screen and by wp dppass passport set, before WooCommerce saves the product: read the new values from $product, not from the database
  • dppass_passport_viewed( $product_id ): when a passport is shown on the product page (used by Pro analytics)
  • dppass_passport_content_end( $product_id ): at the end of the passport output (used by the Pro PDF button)

The plugin has no filters. Up to 1.6.3 this section listed hooks with the old dpp_ prefix that the plugin does not fire.

REST API

  • GET /wp-json/dppass/v1/passport/{id} — passport by product ID
  • GET /wp-json/dppass/v1/passport/gtin/{gtin} — passport by GTIN
  • GET /wp-json/dppass/v1/passports?search={term}&per_page={n} — search passports (max 100)

WP-CLI

  • wp dppass passport get <product-id> [<field>]: the passport of a product as JSON
  • wp dppass passport set <product-id> <field> <value>: change one field with the checks of the product screen: switches take true or false, selections one of their options, numbers their limits, materials and certifications a JSON list. Saving clears the QR code and the cached REST passport and fires dppass_passport_updated, as the product screen does.
  • wp dppass passport schema: every field with its type, options and limits
  • wp dppass settings get|set|schema: the plugin settings, through the checks of the settings screen

Example: wp dppass passport set 42 materials '[{"name":"Cotton","percentage":60,"recycled":20}]'

Support

Screenshots

Digital Passport tab in WooCommerce product editor — with completeness bar

Digital Passport tab in WooCommerce product editor — with completeness bar

Frontend modal showing full passport with QR code

Frontend modal showing full passport with QR code

Material composition grid with recycled content column

Material composition grid with recycled content column

Settings page — display mode, REST API, and the sidebar pointing to the free add-on

Settings page — display mode, REST API, and the sidebar pointing to the free add-on

REST API JSON-LD response in browser

REST API JSON-LD response in browser

Mobile bottom-sheet view of the passport modal

Mobile bottom-sheet view of the passport modal

Plugin Details

Active Installs
0
Total Downloads
287
Version
1.7.0
Requires WP
6.4
Requires PHP
8.0
Tested Up To
7.1.4
Added
2026-09-10
Last Updated
2026-10-08 5:53pm GMT

Ratings

5
0
4
0
3
0
2
0
1
0