PageSourceSearch

https://openepcis.io/docs/digital-product-passport/

html openepcis.io collected 2026-10-06 20:13:24 UTC 215,994 bytes, 75 lines download raw bytes

1<!DOCTYPE html><html  dir="ltr" lang="en-US"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><title>Digital Product Passport (DPP) | OpenEPCIS Docs | OpenEPCIS - an open-core, GS1-conformant EPCIS implementation.</title>
1<script type="importmap">{"imports":{"#entry":"/_nuxt/zW0iHF-Y.js"}}</script>
1<style id="nuxt-ui-colors">@layer theme{:root,:host{--ui-color-primary-50:var(--color-openepcis-50,);--ui-color-primary-100:var(--color-openepcis-100,);--ui-color-primary-200:var(--color-openepcis-200,);--ui-color-primary-300:var(--color-openepcis-300,);--ui-color-primary-400:var(--color-openepcis-400,);--ui-color-primary-500:var(--color-openepcis-500,);--ui-color-primary-600:var(--color-openepcis-600,);--ui-color-primary-700:var(--color-openepcis-700,);--ui-color-primary-800:var(--color-openepcis-800,);--ui-color-primary-900:var(--color-openepcis-900,);--ui-color-primary-950:var(--color-openepcis-950,);--ui-color-secondary-50:var(--color-blue-50,oklch(97% .014 254.604));--ui-color-secondary-100:var(--color-blue-100,oklch(93.2% .032 255.585));--ui-color-secondary-200:var(--color-blue-200,oklch(88.2% .059 254.128));--ui-color-secondary-300:var(--color-blue-300,oklch(80.9% .105 251.813));--ui-color-secondary-400:var(--color-blue-400,oklch(70.7% .165 254.624));--ui-color-secondary-500:var(--color-blue-500,oklch(62.3% .214 259.815));--ui-color-secondary-600:var(--color-blue-600,oklch(54.6% .245 262.881));--ui-color-secondary-700:var(--color-blue-700,oklch(48.8% .243 264.376));--ui-color-secondary-800:var(--color-blue-800,oklch(42.4% .199 265.638));--ui-color-secondary-900:var(--color-blue-900,oklch(37.9% .146 265.522));--ui-color-secondary-950:var(--color-blue-950,oklch(28.2% .091 267.935));--ui-color-success-50:var(--color-green-50,oklch(98.2% .018 155.826));--ui-color-success-100:var(--color-green-100,oklch(96.2% .044 156.743));--ui-color-success-200:var(--color-green-200,oklch(92.5% .084 155.995));--ui-color-success-300:var(--color-green-300,oklch(87.1% .15 154.449));--ui-color-success-400:var(--color-green-400,oklch(79.2% .209 151.711));--ui-color-success-500:var(--color-green-500,oklch(72.3% .219 149.579));--ui-color-success-600:var(--color-green-600,oklch(62.7% .194 149.214));--ui-color-success-700:var(--color-green-700,oklch(52.7% .154 150.069));--ui-color-success-800:var(--color-green-800,oklch(44.8% .119 151.328));--ui-color-success-900:var(--color-green-900,oklch(39.3% .095 152.535));--ui-color-success-950:var(--color-green-950,oklch(26.6% .065 152.934));--ui-color-info-50:var(--color-blue-50,oklch(97% .014 254.604));--ui-color-info-100:var(--color-blue-100,oklch(93.2% .032 255.585));--ui-color-info-200:var(--color-blue-200,oklch(88.2% .059 254.128));--ui-color-info-300:var(--color-blue-300,oklch(80.9% .105 251.813));--ui-color-info-400:var(--color-blue-400,oklch(70.7% .165 254.624));--ui-color-info-500:var(--color-blue-500,oklch(62.3% .214 259.815));--ui-color-info-600:var(--color-blue-600,oklch(54.6% .245 262.881));--ui-color-info-700:var(--color-blue-700,oklch(48.8% .243 264.376));--ui-color-info-800:var(--color-blue-800,oklch(42.4% .199 265.638));--ui-color-info-900:var(--color-blue-900,oklch(37.9% .146 265.522));--ui-color-info-950:var(--color-blue-950,oklch(28.2% .091 267.935));--ui-color-warning-50:var(--color-yellow-50,oklch(98.7% .026 102.212));--ui-color-warning-100:var(--color-yellow-100,oklch(97.3% .071 103.193));--ui-color-warning-200:var(--color-yellow-200,oklch(94.5% .129 101.54));--ui-color-warning-300:var(--color-yellow-300,oklch(90.5% .182 98.111));--ui-color-warning-400:var(--color-yellow-400,oklch(85.2% .199 91.936));--ui-color-warning-500:var(--color-yellow-500,oklch(79.5% .184 86.047));--ui-color-warning-600:var(--color-yellow-600,oklch(68.1% .162 75.834));--ui-color-warning-700:var(--color-yellow-700,oklch(55.4% .135 66.442));--ui-color-warning-800:var(--color-yellow-800,oklch(47.6% .114 61.907));--ui-color-warning-900:var(--color-yellow-900,oklch(42.1% .095 57.708));--ui-color-warning-950:var(--color-yellow-950,oklch(28.6% .066 53.813));--ui-color-error-50:var(--color-red-50,oklch(97.1% .013 17.38));--ui-color-error-100:var(--color-red-100,oklch(93.6% .032 17.717));--ui-color-error-200:var(--color-red-200,oklch(88.5% .062 18.334));--ui-color-error-300:var(--color-red-300,oklch(80.8% .114 19.571));--ui-color-error-400:var(--color-red-400,oklch(70.4% .191 22.216));--ui-color-error-500:var(--color-red-500,oklch(63.7% .237 25.331));--ui-color-error-600:var(--color-red-600,oklch(57.7% .245 27.325));--ui-color-error-700:var(--color-red-700,oklch(50.5% .213 27.518));--ui-color-error-800:var(--color-red-800,oklch(44.4% .177 26.899));--ui-color-error-900:var(--color-red-900,oklch(39.6% .141 25.723));--ui-color-error-950:var(--color-red-950,oklch(25.8% .092 26.042));--ui-color-neutral-50:var(--color-slate-50,oklch(98.4% .003 247.858));--ui-color-neutral-100:var(--color-slate-100,oklch(96.8% .007 247.896));--ui-color-neutral-200:var(--color-slate-200,oklch(92.9% .013 255.508));--ui-color-neutral-300:var(--color-slate-300,oklch(86.9% .022 252.894));--ui-color-neutral-400:var(--color-slate-400,oklch(70.4% .04 256.788));--ui-color-neutral-500:var(--color-slate-500,oklch(55.4% .046 257.417));--ui-color-neutral-600:var(--color-slate-600,oklch(44.6% .043 257.281));--ui-color-neutral-700:var(--color-slate-700,oklch(37.2% .044 257.287));--ui-color-neutral-800:var(--color-slate-800,oklch(27.9% .041 260.031));--ui-color-neutral-900:var(--color-slate-900,oklch(20.8% .042 265.755));--ui-color-neutral-950:var(--color-slate-950,oklch(12.9% .042 264.695));--ui-color-openepcis-50:var(--color-openepcis-50,);--ui-color-openepcis-100:var(--color-openepcis-100,);--ui-color-openepcis-200:var(--color-openepcis-200,);--ui-color-openepcis-300:var(--color-openepcis-300,);--ui-color-openepcis-400:var(--color-openepcis-400,);--ui-color-openepcis-500:var(--color-openepcis-500,);--ui-color-openepcis-600:var(--color-openepcis-600,);--ui-color-openepcis-700:var(--color-openepcis-700,);--ui-color-openepcis-800:var(--color-openepcis-800,);--ui-color-openepcis-900:var(--color-openepcis-900,);--ui-color-openepcis-950:var(--color-openepcis-950,)}:root,:host,.light{--ui-primary:var(--ui-color-primary-500);--ui-secondary:var(--ui-color-secondary-500);--ui-success:var(--ui-color-success-500);--ui-info:var(--ui-color-info-500);--ui-warning:var(--ui-color-warning-500);--ui-error:var(--ui-color-error-500);--ui-openepcis:var(--ui-color-openepcis-500)}.dark{--ui-primary:var(--ui-color-primary-400);--ui-secondary:var(--ui-color-secondary-400);--ui-success:var(--ui-color-success-400);--ui-info:var(--ui-color-info-400);--ui-warning:var(--ui-color-warning-400);--ui-error:var(--ui-color-error-400);--ui-openepcis:var(--ui-color-openepcis-400)}}</style><style>.docs-mobile-nav-shell[data-v-bc4ec493]>div{height:auto;box-shadow:none;border-right:0;padding-block:0}</style><style>.docs-prev-next[data-v-4e7d76de]{border-top:1px solid var(--ui-border);grid-template-columns:1fr 1fr;gap:.75rem;margin-top:2.5rem;padding:1.5rem;display:grid}.docs-prev-next-link[data-v-4e7d76de]{flex-direction:column;gap:.25rem;min-width:0;display:flex}.docs-prev-next-dir[data-v-4e7d76de]{text-transform:uppercase;letter-spacing:.06em;color:var(--ui-text-muted);align-items:center;gap:.25rem;font-size:.75rem;display:flex}.docs-prev-next-title[data-v-4e7d76de]{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;display:-webkit-box;overflow:hidden}.docs-prev-next-link:hover .docs-prev-next-title[data-v-4e7d76de]{text-decoration:underline}</style><style>.splitpanes{width:100%;height:100%;display:flex}.splitpanes--vertical{flex-direction:row}.splitpanes--horizontal{flex-direction:column}.splitpanes--dragging .splitpanes__pane{-webkit-user-select:none;user-select:none;pointer-events:none}:has(.splitpanes--dragging){-webkit-user-select:none;user-select:none;pointer-events:none}.splitpanes__pane{width:100%;height:100%;overflow:hidden}.splitpanes--vertical .splitpanes__pane{will-change:width;transition:width .2s ease-out}.splitpanes--horizontal .splitpanes__pane{will-change:height;transition:height .2s ease-out}.splitpanes--dragging .splitpanes__pane{transition:none}.splitpanes__splitter{touch-action:none}.splitpanes--vertical>.splitpanes__splitter{cursor:col-resize;min-width:1px}.splitpanes--horizontal>.splitpanes__splitter{cursor:row-resize;min-height:1px}.default-theme.splitpanes .splitpanes__pane{background-color:#f2f2f2}.default-theme.splitpanes .splitpanes__splitter{box-sizing:border-box;background-color:#fff;flex-shrink:0;position:relative}.default-theme.splitpanes .splitpanes__splitter:after,.default-theme.splitpanes .splitpanes__splitter:before{content:"";background-color:#00000026;transition:background-color .3s;position:absolute;top:50%;left:50%}.default-theme.splitpanes .splitpanes__splitter:hover:after,.default-theme.splitpanes .splitpanes__splitter:hover:before{background-color:#00000040}.default-theme.splitpanes .splitpanes__splitter:first-child{curs
1or:auto}.default-theme.splitpanes .splitpanes .splitpanes__splitter{z-index:1}.default-theme .splitpanes--vertical>.splitpanes__splitter,.default-theme.splitpanes--vertical>.splitpanes__splitter{border-left:1px solid #eee;width:7px;margin-left:-1px}.default-theme .splitpanes--vertical>.splitpanes__splitter:after,.default-theme .splitpanes--vertical>.splitpanes__splitter:before,.default-theme.splitpanes--vertical>.splitpanes__splitter:after,.default-theme.splitpanes--vertical>.splitpanes__splitter:before{width:1px;height:30px;transform:translateY(-50%)}.default-theme .splitpanes--vertical>.splitpanes__splitter:before,.default-theme.splitpanes--vertical>.splitpanes__splitter:before{margin-left:-2px}.default-theme .splitpanes--vertical>.splitpanes__splitter:after,.default-theme.splitpanes--vertical>.splitpanes__splitter:after{margin-left:1px}.default-theme .splitpanes--horizontal>.splitpanes__splitter,.default-theme.splitpanes--horizontal>.splitpanes__splitter{border-top:1px solid #eee;height:7px;margin-top:-1px}.default-theme .splitpanes--horizontal>.splitpanes__splitter:after,.default-theme .splitpanes--horizontal>.splitpanes__splitter:before,.default-theme.splitpanes--horizontal>.splitpanes__splitter:after,.default-theme.splitpanes--horizontal>.splitpanes__splitter:before{width:30px;height:1px;transform:translate(-50%)}.default-theme .splitpanes--horizontal>.splitpanes__splitter:before,.default-theme.splitpanes--horizontal>.splitpanes__splitter:before{margin-top:-2px}.default-theme .splitpanes--horizontal>.splitpanes__splitter:after,.default-theme.splitpanes--horizontal>.splitpanes__splitter:after{margin-top:1px}</style><style>.docs-panes-shell{height:calc(100vh - 4rem)}@media (width>=1024px){body.docs-route-active{overflow:hidden}html:has(body.docs-route-active){overflow:hidden}}.docs-center-scroll{height:100%;overflow-y:auto}.docs-pane-fallback-side{width:18%;overflow-y:auto}.docs-center-scroll pre{color:#0f172b;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;margin:1rem 0;padding:1rem 1.25rem;font-size:.875rem;line-height:1.6;overflow-x:auto}.dark .docs-center-scroll pre{color:#e5e7eb;background-color:#0b1220;border:1px solid #1f2937}.docs-center-scroll:where(p,li,td,th)>code{background-color:#0f172b0d;border:1px solid #0f172b14;border-radius:.25rem;padding:.1em .35em;font-size:.875em}.dark .docs-center-scroll:where(p,li,td,th)>code{background-color:#ffffff0f;border:1px solid #ffffff14}.docs-splitpanes.splitpanes--vertical>.splitpanes__splitter{border-left:1px solid var(--color-gray-700,#374151);cursor:col-resize;background:0 0;width:6px;position:relative}.docs-splitpanes.splitpanes--vertical>.splitpanes__splitter:before{content:"";background:0 0;transition:background .15s;position:absolute;inset:0 1px}.docs-splitpanes.splitpanes--vertical>.splitpanes__splitter--dragging:before,.docs-splitpanes.splitpanes--vertical>.splitpanes__splitter:hover:before{background:var(--color-blue-500,#3b82f6);opacity:.4}</style><style>.diagram-figure[data-v-dfe71d6b]{flex-direction:column;align-items:center;gap:.5rem;margin:1.25rem auto;display:flex}.diagram-img[data-v-dfe71d6b]{width:100%;height:auto}.diagram-caption[data-v-dfe71d6b]{color:var(--color-gray-500,#6b7280);text-align:center;font-size:.75rem}</style><style>.dark .diagram-img--light,.diagram-img--dark{display:none}.dark .diagram-img--dark{display:block}</style><link rel="stylesheet" href="/_nuxt/entry.BUfgxozd.css" crossorigin><style>@layer base{:where(.i-custom\:open-epcis){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-1297 -178 75 75' width='75' height='75'%3E%3Cpath d='m -1259.8131,-173.06125 c -15.8054,1.69162 -28.3655,14.34637 -30.0441,30.27104 h 26.3702 c 0.7895,-1.60102 2.0851,-2.90526 3.6739,-3.70172 z m 7.2294,0 v 26.57216 c 1.5883,0.79581 2.8813,2.09832 3.6711,3.69888 h 26.3701 c -1.6787,-15.92561 -14.2349,-28.58062 -30.0412,-30.27104 z m -37.2735,37.55499 c 1.6774,15.92593 14.2379,28.57958 30.0441,30.27104 v -26.57216 c -1.5892,-0.79552 -2.8845,-2.0974 -3.6739,-3.69888 z m 40.9446,0 c -0.7896,1.6013 -2.0828,2.90331 -3.6711,3.69888 v 26.57216 c 15.8071,-1.69026 28.3637,-14.34417 30.0412,-30.27104 z' fill='black' /%3E%3C/svg%3E")}:where(.i-lucide\:arrow-left){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m12 19l-7-7l7-7m7 7H5'/%3E%3C/svg%3E")}:where(.i-lucide\:arrow-right){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 12h14m-7-7l7 7l-7 7'/%3E%3C/svg%3E")}
1:where(.i-lucide\:chevron-down){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 9l6 6l6-6'/%3E%3C/svg%3E")}:where(.i-lucide\:copy){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='14' height='14' x='8' y='8' rx='2' ry='2'/%3E%3Cpath d='M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2'/%3E%3C/g%3E%3C/svg%3E")}:where(.i-lucide\:menu){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 5h16M4 12h16M4 19h16'/%3E%3C/svg%3E")}:where(.i-lucide\:moon){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401'/%3E%3C/svg%3E")}:where(.i-lucide\:sun){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/g%3E%3C/svg%3E")}}</style><link rel="preload" as="fetch" crossorigin="anonymous" href="/docs/digital-product-passport/_payload.json?_b=650e2294-bf1c-423d-b8ce-581a2ceadc20"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/zW0iHF-Y.js"><link rel="preload" as="font" crossorigin href="/fonts/Verdana.ttf"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/43SDRlTf.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CJOrt7RF.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DzEf6c3d.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/8h4OWWiK.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/D-HMWAU_.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BujKp7DX.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BHLAgWmv.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/FBRWFZIN.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CrYIxIlV.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BdYw1Xaq.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DQrR-yuc.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/HclGiUj8.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CgiraYKn.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DDtKfZOr.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DQ983h8h.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DxuqPU12.js">
1<link rel="modulepreload" as="script" crossorigin href="/_nuxt/DN0i4l6O.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/Nm9D3669.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/Dd_uD5pT.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BKBzoff9.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CL6scTFQ.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BDNMzG2s.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CrmkmYrd.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/IiweBInR.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DWEoD8ZB.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/Dj0G993r.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DHihWhf5.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/B5CiBJIK.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DtDOYScg.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/80UagrpZ.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BQGXZ-XF2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/C6kwAApV2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DtjE3Ukq2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BfmniPAC2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/Deg89TG72.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BQMNgvMw2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/Bng2rRDf.js">
1<link rel="modulepreload" as="script" crossorigin href="/_nuxt/gaeZhMQW2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/2RTlmUpT2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BLC6mk3y2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/5NF0VqmD.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/D7PxYVLV2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DPJREeqN2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/KjrI7Y7m2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/fUugPfkd2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CFSuHYmb2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BgFpjhxP2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BsNIMFRX2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CLHIAQz32.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/Dgcny1932.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/Dsm7acSY.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/mrM3dsHh.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BXyWNuV3.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BTbc2EKu.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/B3Yu8tAs.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BTI6xwxH.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/ByBpLDHU.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DYn0p7vH.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/8Ldq5fFr.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DCYlk-bR.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CtlQyJ5g.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CeSQnHxX.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/B9zvRfAB.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DODZ7keF.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DOVquImQ.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/gbj7i9AI.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/Dc8hNYHL.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DUWYbtwt.js">
1<link rel="modulepreload" as="script" crossorigin href="/_nuxt/Oyro1cHP.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DHkZr6km.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/B_wV8NK3.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/tAef0wT82.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/B_60FId6.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/Bn4gTyaE.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/P9aYIdIt.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CRtfrTkS.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/CpjcsgHU.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BQpv55Br2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BJy2KwpS.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/yjV57GeB.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/40gk1AdB.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/B8hauT3n.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/COqyhTaj.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/BtLlUbOS.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/D-ezJmIh2.js">
1<link rel="modulepreload" as="script" crossorigin href="/_nuxt/B9ewMeEX.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DKUj2dRK2.js"><link rel="modulepreload" as="script" crossorigin href="/_nuxt/V9IKeVu32.js">
1<script type="module" src="/_nuxt/zW0iHF-Y.js" crossorigin></script>
1<link rel="prefetch" as="script" crossorigin href="/_nuxt/DFUCAxAp2.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/BcDfr2gr2.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/DMrn2l-o2.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/9bea6uSF2.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/ComRwyoX.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/CzSd8EqL2.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/7GFIrYgi2.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/DzQGYy8z2.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/DX69GDmU2.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/WWRhtdKf.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/DDR_LN_l.js"><link rel="prefetch" as="script" crossorigin href="/_nuxt/VYaHqVzm.js"><link rel="icon" type="image/x-icon" href="/icons/openepcis-ico.ico"><meta property="og:type" content="article"><meta name="robots" content="index, follow, max-image-preview:large, max-snippet:-1"><link rel="alternate" type="text/markdown" href="/docs/digital-product-passport.md"><link id="i18n-can" rel="canonical" href="https://openepcis.io/docs/digital-product-passport"><meta property="og:url" content="https://openepcis.io/docs/digital-product-passport"><meta id="i18n-og-alt-en" property="og:locale:alternate" content="en"><meta name="description" content="Introduction to Digital Product Passport and how EPCIS enables product traceability for DPP compliance."><meta name="author" content="benelog GmbH & Co. KG"><meta property="og:title" content="Digital Product Passport (DPP)"><meta property="og:description" content="Introduction to Digital Product Passport and how EPCIS enables product traceability for DPP compliance."><meta property="og:site_name" content="OpenEPCIS"><meta property="og:locale" content="en_US"><meta property="og:image" content="https://openepcis.io/img/og/og-background.png"><meta property="og:image:width" content="1418"><meta property="og:image:height" content="802"><meta property="og:image:alt" content="Digital Product Passport (DPP)"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="Digital Product Passport (DPP)"><meta name="twitter:description" content="Introduction to Digital Product Passport and how EPCIS enables product traceability for DPP compliance."><meta name="twitter:image" content="https://openepcis.io/img/og/og-background.png"><meta name="keywords" content="Digital Product Passport, DPP, EU Regulation, EPCIS, sustainability, traceability, circular economy, product lifecycle">
1<script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"system";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script>
1</head><body  class="docs-route-active"><div id="__nuxt" class="isolate"><!--[--><!--[--><!--[--><!--[--><!--[--><a href="#main-content" class="skip-link">Skip to content</a><header class="sticky top-0 z-50 w-full bg-openepcis-section/95 dark:bg-openepcis-section/95 backdrop-blur-lg transition-colors"><div class="flex items-center justify-between w-full h-16 px-4 md:px-8"><a href="/" class="flex items-center group" title="Home" aria-label="Go to homepage"><img src="/img/openepcis-logo.svg" alt class="h-15 w-15 block transition-transform group-hover:scale-105" draggable="false"><span class="text-openepcis font-extrabold text-xl">OpenEPCIS</span></a><div class="hidden lg:flex flex-1 justify-center"><!--[--><!----><!----><nav data-slot="root" aria-label="Main navigation" class="relative flex gap-1.5 [&amp;&gt;div]:min-w-0 items-center justify-between" data-orientation="horizontal" dir="ltr" data-reka-navigation-menu><!--[--><!--[--><!--]--><!--[--><!--[--><div style="position:relative;"><ul data-slot="list" class="isolate min-w-0 flex items-center" data-orientation="horizontal"><!--[--><!--[--><li data-menu-item data-slot="item" class="min-w-0 py-2"><!--[--><!--[--><a href="/" data-reka-collection-item data-slot="link" class="group relative w-full flex items-center gap-1.5 font-medium text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-primary/25 before:inset-x-px before:inset-y-0 text-muted hover:text-highlighted hover:before:bg-elevated/50 before:transition-colors data-[state=open]:text-highlighted data-[state=open]:before:bg-elevated/50 px-4 py-2 rounded-md transition data-active:bg-slate-200 dark:data-active:bg-slate-700 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-mdi:home shrink-0 group-hover:text-default transition-colors group-data-[state=open]:text-default size-5 mr-1 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkLabel" class="truncate text-openepcis"><!--[-->Home<!--]--><!----></span><!----><!--]--><!--]--></a><!----><!--]--><!----><!--]--></li><li data-menu-item data-slot="item" class="min-w-0 py-2"><!--[--><!--[--><a href="/docs" data-reka-collection-item data-active aria-current="page" data-slot="link" class="group relative w-full flex items-center gap-1.5 font-medium text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-primary/25 before:inset-x-px before:inset-y-0 text-primary before:bg-elevated px-4 py-2 rounded-md transition data-active:bg-slate-200 dark:data-active:bg-slate-700 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-mdi:drive-document shrink-0 group-data-[state=open]:text-primary size-5 mr-1 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkLabel" class="truncate text-openepcis"><!--[-->Documentation<!--]--><!----></span><!----><!--]--><!--]--></a><!----><!--]--><!----><!--]--></li><li data-menu-item data-slot="item" class="min-w-0 py-2"><!--[--><!--[--><a href="/blog" data-reka-collection-item data-slot="link" class="group relative w-full flex items-center gap-1.5 font-medium text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-primary/25 before:inset-x-px before:inset-y-0 text-muted hover:text-highlighted hover:before:bg-elevated/50 before:transition-colors data-[state=open]:text-highlighted data-[state=open]:before:bg-elevated/50 px-4 py-2 rounded-md transition data-active:bg-slate-200 dark:data-active:bg-slate-700 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-mdi:rss shrink-0 group-hover:text-default transition-colors group-data-[state=open]:text-default size-5 mr-1 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkLabel" class="truncate text-openepcis"><!--[-->Blog<!--]--><!----></span><!----><!--]--><!--]--></a><!----><!--]--><!----><!--]--></li><li data-menu-item data-slot="item" class="min-w-0 py-2"><!--[--><!--[--><a href="/faq" data-reka-collection-item data-slot="link" class="group relative w-full flex items-center gap-1.5 font-medium text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-primary/25 before:inset-x-px before:inset-y-0 text-muted hover:text-highlighted hover:before:bg-elevated/50 before:transition-colors data-[state=open]:text-highlighted data-[state=open]:before:bg-elevated/50 px-4 py-2 rounded-md transition data-active:bg-slate-200 dark:data-active:bg-slate-700 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-mdi:faq shrink-0 group-hover:text-default transition-colors group-data-[state=open]:text-default size-5 mr-1 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkLabel" class="truncate text-openepcis"><!--[-->FAQ<!--]--><!----></span><!----><!--]--><!--]--></a><!----><!--]--><!----><!--]--></li>
1<!--]--><!--]--></ul></div><!----><!--]--><!--]--><!--[--><!--]--><div data-slot="viewportWrapper" class="absolute top-full start-0 flex w-full justify-center"><!----><!----></div><!--]--></nav><!--]--></div><div class="flex items-center gap-1"><!--[--><!--[--><!----><button type="button" data-slot="base" aria-label="Search Term" modelvalue="false" class="font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-sm gap-1.5 ring ring-inset ring-accented text-default bg-elevated hover:bg-accented/75 active:bg-accented/75 disabled:bg-elevated aria-disabled:bg-elevated outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted p-1.5 rounded-xl btn-openepcis"><!--[--><!--[--><span class="iconify i-mdi:search shrink-0 size-5" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><span data-slot="label" class="truncate hidden">Search Term</span><!--]--><!--[--><div data-slot="trailing" class="hidden items-center gap-0.5 ms-auto lg:hidden"><!--[--><!--[--><kbd class="inline-flex items-center justify-center px-1 rounded-sm font-medium font-sans uppercase h-5 min-w-[20px] text-[11px] ring ring-inset ring-accented text-default bg-elevated"><!--[--> <!--]--></kbd><kbd class="inline-flex items-center justify-center px-1 rounded-sm font-medium font-sans uppercase h-5 min-w-[20px] text-[11px] ring ring-inset ring-accented text-default bg-elevated"><!--[-->k<!--]--></kbd><!--]--><!--]--></div><!--]--><!--]--></button><!--]--><span></span><!--]--><a href="mailto:[email protected]" rel="noopener noreferrer" target="_blank" data-slot="base" class="rounded-md font-medium disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors gap-2 text-inverted bg-primary hover:bg-primary/75 active:bg-primary/75 disabled:bg-primary aria-disabled:bg-primary outline-primary/25 focus-visible:outline-3 hidden md:inline-flex items-center btn-openepcis px-4 py-2 text-sm"><!--[--><!--[--><span class="iconify i-heroicons:envelope shrink-0 size-5" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><span data-slot="label" class="truncate">Contact Us</span><!--]--><!--[--><!----><!--]--><!--]--></a><button type="button" data-slot="base" aria-label="Switch to dark mode" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-sm gap-1.5 text-default hover:bg-elevated active:bg-elevated outline-inverted/25 focus-visible:outline-3 hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-1.5"><!--[--><!--[--><span class="iconify i-lucide:moon shrink-0 size-5 hidden dark:inline-block" aria-hidden="true" style=""></span><span class="iconify i-lucide:sun shrink-0 size-5 dark:hidden" aria-hidden="true" style=""></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--[--><button type="button" data-slot="base" aria-haspopup="dialog" aria-expanded="false" aria-controls="mobile-menu" data-state="closed" aria-label="Open Menu" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-sm gap-2 text-default hover:bg-elevated active:bg-elevated outline-inverted/25 focus-visible:outline-3 hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-2 lg:hidden"><!--[--><!--[--><span class="iconify i-lucide:menu shrink-0 size-5" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><!--v-if--><!--]--></div></div></header><main id="main-content" class="flex-1" tabindex="-1"><!--[--><div class="flex flex-col min-h-screen lg:hidden"><div class="flex items-center gap-2 w-full px-6 pt-4"><!--[--><button type="button" data-slot="base" aria-haspopup="dialog" aria-expanded="false" data-state="closed" aria-label="Contents" data-v-bc4ec493 class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors px-2.5 py-1.5 text-sm gap-1.5 text-default hover:bg-elevated active:bg-elevated outline-inverted/25 focus-visible:outline-3 hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent lg:hidden"><!--[--><!--[--><span class="iconify i-lucide:list shrink-0 size-5" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><span data-slot="label" class="truncate">Contents</span><!--]--><!--[--><!----><!--]--><!--]--></button><!--v-if--><!--]--><div class="min-w-0 flex-1"><nav aria-label="Breadcrumb" class="flex items-center text-sm text-openepcis-muted mb-4"><ol class="flex items-center flex-wrap gap-1"><!--[--><li class="flex items-center"><a href="/" class="hover:text-openepcis-primary transition-colors duration-200">Home</a><span class="iconify i-heroicons:chevron-right-20-solid w-4 h-4 mx-1 text-openepcis-muted" aria-hidden="true" style=""></span></li><li class="flex items-center"><a href="/docs" class="router-link-active hover:text-openepcis-primary transition-colors duration-200">Documentation</a><span class="iconify i-heroicons:chevron-right-20-solid w-4 h-4 mx-1 text-openepcis-muted" aria-hidden="true" style=""></span></li><li class="flex items-center"><span class="text-highlighted font-medium" aria-current="page">Digital Product Passport (DPP)</span><!----></li>
1<!--]--></ol></nav></div></div><div class="flex flex-col grow items-center justify-center min-h-screen w-full flex-1 overflow-y-auto"><article class="max-w-none mx-auto p-6 rounded-lg shadow-md hover:shadow-xl transition-shadow duration-300 ease-in-out w-full overflow-x-hidden"><div><h1 class="text-2xl sm:text-3xl text-highlighted font-bold mb-3 text-left">Digital Product Passport (DPP)</h1><p class="text-base text-openepcis-muted mb-4">Introduction to Digital Product Passport and how EPCIS enables product traceability for DPP compliance.</p><div class="flex flex-wrap items-center gap-x-1 gap-y-1 text-xs text-openepcis-muted mb-4"><!--[--><!--[--><a href="/tags/digital-product-passport" class="hover:text-openepcis-primary hover:underline transition-colors">digital-product-passport</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/dpp" class="hover:text-openepcis-primary hover:underline transition-colors">dpp</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/eu-regulation" class="hover:text-openepcis-primary hover:underline transition-colors">eu-regulation</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/epcis" class="hover:text-openepcis-primary hover:underline transition-colors">epcis</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/sustainability" class="hover:text-openepcis-primary hover:underline transition-colors">sustainability</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/traceability" class="hover:text-openepcis-primary hover:underline transition-colors">traceability</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/circular-economy" class="hover:text-openepcis-primary hover:underline transition-colors">circular-economy</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/gs1-web-vocabulary" class="hover:text-openepcis-primary hover:underline transition-colors">gs1-web-vocabulary</a><!----><!--]--><!--]--><span class="text-openepcis-muted/60 mx-1" aria-hidden="true">·</span><span class="inline-flex items-center gap-1"><span class="iconify i-heroicons:clock size-3.5" aria-hidden="true" style=""></span> 7 min read</span></div></div><div class="text-base leading-relaxed text-left"><div><p class="my-5 leading-7 text-pretty"><!--[-->The Digital Product Passport (DPP) is the EU&#39;s mechanism for attaching a structured, scannable record to every regulated product — what it&#39;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.<!--]--></p><div class="my-4 rounded-lg border-l-4 p-4 bg-sky-500/5 dark:bg-sky-400/8 border-sky-400 dark:border-sky-500"><div class="flex gap-3"><span class="iconify i-heroicons:information-circle size-5 shrink-0 mt-0.5 text-sky-500 dark:text-sky-400" aria-hidden="true" style=""></span><div class="prose prose-sm dark:prose-invert max-w-none flex-1 [&amp;&gt;p:first-child]:mt-0 [&amp;&gt;p:last-child]:mb-0"><!--[--><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->Status<!--]--></strong>: The platform underneath is production grade — the GS1 Conformant Resolver, the masterdata layer and EPCIS 2.0 are stable and in production use. The per-regulation extensions are at <strong><!--[-->v0.9.8<!--]--></strong>; their ontologies and JSON-LD contexts are feature-complete and stay versioned below 1.0 only until the EU delegated acts are final.<!--]--></p><!--]--></div></div></div><h2 id="quick-links" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Quick Links<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->The bigger picture<!--]--></strong><!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/vision" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->The Digital Twin Vision<!--]--></a> — how UNTP, DIDs, Verifiable Credentials and EPCIS fit together for unified product identity<!--]--></li>
1<!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->Implementation guides<!--]--></strong><!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/dpp-resolution-flow" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->DPP Resolution Flow<!--]--></a> — how a QR scan leads to DPP data retrieval<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/resolver-setup" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Resolver Setup Guide<!--]--></a> — running your own GS1 Digital Link resolver<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/multi-component-example" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Multi-Component Example<!--]--></a> — an e-bike with linked component DPPs (the CIRPASS-2 pattern)<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->Per-regulation modules<!--]--></strong><!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/espr-framework" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->ESPR Framework<!--]--></a> — shared patterns for ESPR 2024/1781<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/battery-dpp" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Battery DPP<!--]--></a> — EU Battery Regulation 2023/1542<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/eudr" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->EUDR<!--]--></a> — EU Deforestation Regulation 2023/1115<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/textile" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Textile DPP<!--]--></a> — EU Sustainable Textiles Strategy<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/electronics" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Electronics DPP<!--]--></a> — repairability, WEEE, energy efficiency<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/interoperability" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Interoperability<!--]--></a> — how the OpenEPCIS DPP relates to UNTP, CIRPASS-2 and GS1<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="https://github.com/openepcis/openepcis-dpp-ready" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->openepcis-dpp-ready on GitHub<!--]--></a> — source ontologies, contexts and examples<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->Vocabulary browsers<!--]--></strong><!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="https://ref.openepcis.org/extensions/common/core/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Core DPP vocabulary<!--]--></a> — shared ESPR patterns<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="https://ref.openepcis.org/extensions/eu/battery/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Battery<!--]--></a> · <a href="https://ref.openepcis.org/extensions/eu/eudr/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->EUDR<!--]--></a> · <a href="https://ref.openepcis.org/extensions/eu/textile/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Textile<!--]--></a> · <a href="https://ref.openepcis.org/extensions/eu/electronics/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Electronics<!--]--></a>
1<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->External resources<!--]--></strong><!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->GS1 DPP activity: <a href="https://gs1.eu/activities/digital-product-passport/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->https://gs1.eu/activities/digital-product-passport/<!--]--></a><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->OpenEPCIS Digital Data Management demo: <a href="https://demo.epcis.cloud" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->https://demo.epcis.cloud<!--]--></a> — seeded demo products, each with a scannable Digital Link<!--]--></li><!--]--></ul><h2 id="what-is-a-digital-product-passport" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->What is a Digital Product Passport?<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->A DPP is a digital record that travels with a product across its lifecycle. It typically holds:<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Origin<!--]--></strong> — where and when the product was made<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Materials<!--]--></strong> — what it is made of and where those materials came from<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Environmental impact<!--]--></strong> — carbon footprint, recycled content, sustainability indicators<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Repair and maintenance<!--]--></strong> — how to fix or service the product<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->End-of-life<!--]--></strong> — how to dispose of, refurbish or recycle the product<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[-->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).<!--]--></p><h2 id="why-a-dpp" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Why a DPP?<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->The EU&#39;s <strong><!--[-->Ecodesign for Sustainable Products Regulation (ESPR) 2024/1781<!--]--></strong> makes the DPP a requirement, sector by sector, starting with batteries in 2027. Three intents drive it:<!--]--></p><ol class="list-decimal ps-6 my-5 marker:text-muted"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Sustainability<!--]--></strong> — extend product life, support reuse and high-quality recycling, reduce waste.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Transparency<!--]--></strong> — let consumers, repairers and authorities verify claims about origin, composition and compliance.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Accountability<!--]--></strong> — give regulators a uniform way to check compliance across borders and along the supply chain.<!--]--></li>
1<!--]--></ol><h2 id="how-a-dpp-works" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->How a DPP works<!--]--></h2><figure class="diagram-figure" style="" data-v-dfe71d6b><img src="/diagrams/dpp-lifecycle-overview-light.svg" alt="From manufacturing to a data carrier to the Digital Product Passport" class="diagram-img diagram-img--light" decoding="async" data-v-dfe71d6b><img src="/diagrams/dpp-lifecycle-overview-dark.svg" alt="From manufacturing to a data carrier to the Digital Product Passport" class="diagram-img diagram-img--dark" loading="lazy" decoding="async" data-v-dfe71d6b><!----></figure><p class="my-5 leading-7 text-pretty"><!--[-->End to end:<!--]--></p><ol class="list-decimal ps-6 my-5 marker:text-muted"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Manufacture<!--]--></strong> — the product is assigned a GS1 identifier (e.g. a GTIN + serial → SGTIN).<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Masterdata<!--]--></strong> — a description of the product is POSTed to the resolver (see below).<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Events<!--]--></strong> — as the product moves through the supply chain, EPCIS events record each step.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Carrier<!--]--></strong> — a GS1 Digital Link QR (or NFC tag) is attached to the product.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Access<!--]--></strong> — a scan resolves to the right record; the resolver decides what to return.<!--]--></li><!--]--></ol><h2 id="dpp-and-epcis-how-they-connect" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->DPP and EPCIS: how they connect<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->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.<!--]--></p><h3 id="mapping-dpp-requirements-to-epcis-dimensions" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Mapping DPP requirements to EPCIS dimensions<!--]--></h3><div class="relative my-5 overflow-x-auto rounded-md outline-primary/25 focus-visible:outline-3"><table class="w-full border-separate border-spacing-0 rounded-md"><!--[--><thead class="bg-muted"><!--[--><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-start"><!--[-->DPP requirement<!--]--></th><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-start"><!--[-->EPCIS dimension<!--]--></th><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-start"><!--[-->Captured<!--]--></th><!--]--></tr><!--]--></thead><tbody><!--[--><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Product identity<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><strong><!--[-->What<!--]--></strong><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->GS1 identifiers (GTIN, SGTIN, GLN)<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Timeline<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><strong><!--[-->When<!--]--></strong><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->eventTime<!--]--></code> of each lifecycle step<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Location history<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><strong><!--[-->Where<!--]--></strong><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->bizLocation<!--]--></code>, <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->readPoint<!--]--></code><!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Business context<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><strong><!--[-->Why<!--]--></strong><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->bizStep<!--]--></code>, <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->disposition<!--]--></code><!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Conditions<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><strong><!--[-->How<!--]--></strong><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->sensorElementList<!--]--></code> (temperature, humidity, etc.)<!--]--></td><!--]--></tr><!--]--></tbody><!--]--></table></div><h3 id="standards-based-by-design" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Standards-based by design<!--]--></h3><p class="my-5 leading-7 text-pretty"><!--[-->
1Both 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.<!--]--></p><h2 id="example-masterdata-on-the-resolver-lean-epcis-events-that-reference-it" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Example: masterdata on the resolver, lean EPCIS events that reference it<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->The OpenEPCIS discipline is to keep <strong><!--[-->masterdata on the resolver<!--]--></strong> and <strong><!--[-->EPCIS events lean<!--]--></strong>. Two things happen separately:<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->1. Register the product&#39;s masterdata once, on the resolver.<!--]--></strong><!--]--></p><div class="relative my-5 group" style=""><!----><button type="button" data-slot="base" aria-label="Copy code to clipboard" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted p-1.5 absolute top-[11px] end-[11px] lg:opacity-0 lg:group-hover:opacity-100 lg:focus-visible:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap wrap-break-word overflow-x-auto outline-primary/25 focus-visible:outline-3 focus-visible:border-primary **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-http shiki shiki-themes github-light-high-contrast github-light-high-contrast github-dark-high-contrast monokai" style=""><!--[--><code><span class="line" line="1"><span>POST /products/09521141012345 HTTP/1.1
2</span></span><span class="line" line="2"><span>Host: id.example.com
3</span></span><span class="line" line="3"><span>Content-Type: application/ld+json
4</span></span><span class="line" line="4"><span>Authorization: Bearer ...
5</span></span><span class="line" line="5"><span emptylineplaceholder="true">
6</span></span><span class="line" line="6"><span>{
7</span></span><span class="line" line="7"><span>  &quot;@context&quot;: &quot;https://ref.openepcis.org/extensions/eu/battery/battery-context.jsonld&quot;,
8</span></span><span class="line" line="8"><span>  &quot;id&quot;: &quot;https://id.example.com/01/09521141012345&quot;,
9</span></span><span class="line" line="9"><span>  &quot;type&quot;: &quot;Product&quot;,
10</span></span><span class="line" line="10"><span>  &quot;productName&quot;: &quot;Battery Pack 5 kWh&quot;,
11</span></span><span class="line" line="11"><span>  &quot;gtin&quot;: &quot;09521141012345&quot;,
12</span></span><span class="line" line="12"><span>  &quot;countryOfOrigin&quot;: &quot;DE&quot;,
13</span></span><span class="line" line="13"><span>  &quot;batteryChemistry&quot;: {
14</span></span><span class="line" line="14"><span>    &quot;type&quot;: &quot;BatteryChemistry&quot;,
15</span></span><span class="line" line="15"><span>    &quot;shortName&quot;: &quot;LFP&quot;
16</span></span><span class="line" line="16"><span>  },
17</span></span><span class="line" line="17"><span>  &quot;recycledContent&quot;: {
18</span></span><span class="line" line="18"><span>    &quot;type&quot;: &quot;RecycledContent&quot;,
19</span></span><span class="line" line="19"><span>    &quot;lithiumRecycledShare&quot;: 0.08,
20</span></span><span class="line" line="20"><span>    &quot;cobaltRecycledShare&quot;: 0.15
21</span></span><span class="line" line="21"><span>  }
22</span></span><span class="line" line="22"><span>}
23</span></span></code><!--]--></pre></div><p class="my-5 leading-7 text-pretty"><!--[-->
23That record is now reachable by content negotiation at <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->https://id.example.com/01/09521141012345<!--]--></code>. A scan of the product&#39;s Digital Link QR returns it as JSON-LD or HTML depending on the <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->Accept<!--]--></code> header.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->2. Emit EPCIS events that reference the identifier — no masterdata embedded.<!--]--></strong><!--]--></p><div class="relative group [&amp;&gt;pre]:rounded-t-none [&amp;&gt;pre]:my-0 my-5" style=""><div class="flex items-center gap-1.5 border border-muted bg-default border-b-0 relative rounded-t-md px-4 py-3"><span class="iconify i-vscode-icons:file-type-json size-4 shrink-0" aria-hidden="true" style=""></span><span class="text-default text-sm/6">Battery commissioning event.json</span></div><button type="button" data-slot="base" aria-label="Copy code to clipboard" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted p-1.5 absolute top-[11px] end-[11px] lg:opacity-0 lg:group-hover:opacity-100 lg:focus-visible:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap wrap-break-word overflow-x-auto outline-primary/25 focus-visible:outline-3 focus-visible:border-primary **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-json shiki shiki-themes github-light-high-contrast github-light-high-contrast github-dark-high-contrast monokai" style=""><!--[--><code><span class="line" line="1"><span class="se58z">{
24</span></span><span class="line" line="2"><span class="sSp2P">  &quot;@context&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;https://ref.gs1.org/standards/epcis/epcis-context.jsonld&quot;</span><span class="se58z">,
25</span></span><span class="line" line="3"><span class="sSp2P">  &quot;type&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;ObjectEvent&quot;</span><span class="se58z">,
26</span></span><span class="line" line="4"><span class="sSp2P">  &quot;eventTime&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;2025-01-08T09:30:00Z&quot;</span><span class="se58z">,
27</span></span><span class="line" line="5"><span class="sSp2P">  &quot;eventTimeZoneOffset&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;+01:00&quot;</span><span class="se58z">,
28</span></span><span class="line" line="6"><span class="sSp2P">  &quot;eventID&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;urn:uuid:b5c7d8e9-f012-3456-789a-bcdef0123456&quot;</span><span class="se58z">,
29</span></span><span class="line" line="7"><span class="sSp2P">  &quot;epcList&quot;</span><span class="se58z">: [
30</span></span><span class="line" line="8"><span class="sTdxB">    &quot;https://id.example.com/01/09521141012345/21/1000001&quot;
31</span></span><span class="line" line="9"><span class="se58z">  ],
32</span></span><span class="line" line="10"><span class="sSp2P">  &quot;action&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;ADD&quot;</span><span class="se58z">,
33</span></span><span class="line" line="11"><span class="sSp2P">  &quot;bizStep&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;commissioning&quot;</span><span class="se58z">,
34</span></span><span class="line" line="12"><span class="sSp2P">  &quot;disposition&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;active&quot;</span><span class="se58z">,
35</span></span><span class="line" line="13"><span class="sSp2P">  &quot;readPoint&quot;</span><span class="se58z">:  { </span><span class="sSp2P">&quot;id&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;https://id.example.com/414/9520123456788&quot;</span><span class="se58z"> },
36</span></span><span class="line" line="14"><span class="sSp2P">  &quot;bizLocation&quot;</span><span class="se58z">: { </span><span class="sSp2P">&quot;id&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;https://id.example.com/414/9520123456788&quot;</span><span class="se58z"> }
37</span></span><span class="line" line="15"><span class="se58z">}
38</span></span></code><!--]--></pre></div><p class="my-5 leading-7 text-pretty"><!--[-->The event says <em><!--[-->what<!--]--></em> happened, <em><!--[-->when<!--]--></em>, <em><!--[-->where<!--]--></em> and <em><!--[-->why<!--]--></em>. To learn <em><!--[-->what the product is<!--]--></em>, a consumer follows the identifier to the resolver. Keeping the two concerns apart means the masterdata stays valid across every event in the product&#39;s life, and an event document never duplicates (or contradicts) the product record.<!--]--></p><h2 id="standards-alignment" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Standards alignment<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->OpenEPCIS DPP-Ready is designed to interoperate cleanly with the surrounding ecosystem:<!--]--></p><div class="relative my-5 overflow-x-auto rounded-md outline-primary/25 focus-visible:outline-3"><table class="w-full border-separate border-spacing-0 rounded-md"><!--[--><thead class="bg-muted"><!--[--><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-start"><!--[-->Standard<!--]--></th><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-start"><!--[-->How OpenEPCIS aligns<!--]--></th><!--]--></tr><!--]--></thead><tbody><!--[--><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->GS1 Web Vocabulary<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Native foundation; OpenEPCIS extensions imported via <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->owl:imports<!--]--></code><!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->UN Transparency Protocol (UNTP)<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Property alignment via <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->owl:equivalentProperty<!--]--></code> for shared concepts<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->CIRPASS-2<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Requirements coverage for the DPP data points CIRPASS-2 specifies<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->ESPR 2024/1781<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Full coverage of the articles relevant to product information<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->BatteryPass<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Bridge context for ingesting BatteryPass documents into the GS1 model<!--]--></td><!--]--></tr><!--]--></tbody><!--]--></table></div>
38<div class="my-4 rounded-lg border-l-4 p-4 bg-sky-500/5 dark:bg-sky-400/8 border-sky-400 dark:border-sky-500"><div class="flex gap-3"><span class="iconify i-heroicons:information-circle size-5 shrink-0 mt-0.5 text-sky-500 dark:text-sky-400" aria-hidden="true" style=""></span><div class="prose prose-sm dark:prose-invert max-w-none flex-1 [&amp;&gt;p:first-child]:mt-0 [&amp;&gt;p:last-child]:mb-0"><!--[--><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->Value convention<!--]--></strong>: ratio and fraction properties use the <strong><!--[-->0–1 decimal scale<!--]--></strong> (UNTP-compatible). <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->recycledContent: 0.45<!--]--></code> means 45% recycled content. See <a href="/docs/digital-product-passport/interoperability" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Interoperability<!--]--></a> for the full property mapping.<!--]--></p><!--]--></div></div></div><h2 id="industries-in-scope" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Industries in scope<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->The EU is rolling out DPP requirements in waves, starting with the sectors that benefit most from traceability:<!--]--></p><h3 id="batteries-from-february-2027" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Batteries — from February 2027<!--]--></h3><p class="my-5 leading-7 text-pretty"><!--[-->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 <a href="/docs/digital-product-passport/battery-dpp" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Battery DPP<!--]--></a>.<!--]--></p><h3 id="textiles-phased-from-20272030" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Textiles — phased from 2027–2030<!--]--></h3><p class="my-5 leading-7 text-pretty"><!--[-->Apparel and footwear: fibre composition, country of origin, care and repair instructions, recycling guidance. See <a href="/docs/digital-product-passport/textile" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Textile DPP<!--]--></a>.<!--]--></p><h3 id="electronics" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Electronics<!--]--></h3><p class="my-5 leading-7 text-pretty"><!--[-->Repairability score, spare-parts availability, hazardous-substance disclosure, energy efficie
38ncy, end-of-life routing. The <a href="/docs/digital-product-passport/electronics" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Electronics DPP<!--]--></a> module follows the French Repairability Index method and aligns with WEEE.<!--]--></p><h3 id="construction-materials-furniture-chemicals-and-beyond" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Construction materials, furniture, chemicals, and beyond<!--]--></h3><p class="my-5 leading-7 text-pretty"><!--[-->ESPR allows the DPP scope to extend across product categories. Sectoral implementing acts are sequenced over the next several years.<!--]--></p><h2 id="benefits" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Benefits<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->For consumers<!--]--></strong> — verified product information, easier access to repair guides, fuller history when buying second-hand.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->For businesses<!--]--></strong> — 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.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->For the environment<!--]--></strong> — extended product life, cleaner recycling streams, better feedback to designers about end-of-life behaviour.<!--]--></p><h2 id="how-openepcis-supports-dpp" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->How OpenEPCIS supports DPP<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->OpenEPCIS provides the building blocks; you wire them together to fit your supply chain.<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->GS1 Conformant Resolver<!--]--></strong> — host the masterdata and linksets for every regulated product.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->EPCIS 2.0 REST API<!--]--></strong> — capture and query lifecycle events.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Format Converter<!--]--></strong> — round-trip EPCIS documents between XML and JSON-LD.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Event Hash Generator<!--]--></strong> — idempotent event identity across re-sends.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Test Data Generator<!--]--></strong> — synthesise realistic events for development and conformance testing.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->DPP-Ready ontologies<!--]--></strong> — battery, textile, electronics, EUDR and ESPR core JSON-LD contexts.<!--]--></li>
38<!--]--></ul><h2 id="getting-started" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Getting started<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->A typical pilot path:<!--]--></p><ol class="list-decimal ps-6 my-5 marker:text-muted"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Read the regulation that applies to your product category (linked from each module page).<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Decide on the GS1 identifiers you&#39;ll use — GTIN for the product, SGTIN for serialised items, GLN for locations.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Stand up a resolver and POST your product, organisation and place masterdata to it.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Capture EPCIS events at the points in the supply chain that matter for the DPP.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Validate the events against the EPCIS 2.0 schema and the relevant DPP-Ready context.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Print or affix a Digital Link QR; verify end-to-end that a scan returns the expected DPP record.<!--]--></li><!--]--></ol><h2 id="contact" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Contact<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->Questions, feedback, pilots: <a href="mailto:[email protected]" rel="noopener noreferrer" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->[email protected]<!--]--></a>.<!--]--></p><style>html .light .shiki span{color:var(--shiki-light);background:var(--shiki-light-bg);font-style:var(--shiki-light-font-style);font-weight:var(--shiki-light-font-weight);text-decoration:var(--shiki-light-text-decoration)}html.light .shiki span{color:var(--shiki-light);background:var(--shiki-light-bg);font-style:var(--shiki-light-font-style);font-weight:var(--shiki-light-font-weight);text-decoration:var(--shiki-light-text-decoration)}html .default .shiki span{color:var(--shiki-default);background:var(--shiki-default-bg);font-style:var(--shiki-default-font-style);font-weight:var(--shiki-default-font-weight);text-decoration:var(--shiki-default-text-decoration)}html .shiki span{color:var(--shiki-default);background:var(--shiki-default-bg);font-style:var(--shiki-default-font-style);font-weight:var(--shiki-default-font-weight);text-decoration:var(--shiki-default-text-decoration)}html .dark .shiki span{color:var(--shiki-dark);background:var(--shiki-dark-bg);font-style:var(--shiki-dark-font-style);font-weight:var(--shiki-dark-font-weight);text-decoration:var(--shiki-dark-text-decoration)}html.dark .shiki span{color:var(--shiki-dark);background:var(--shiki-dark-bg);font-style:var(--shiki-dark-font-style);font-weight:var(--shiki-dark-font-weight);text-decoration:var(--shiki-dark-text-decoration)}html .sepia .shiki span{color:var(--shiki-sepia);background:var(--shiki-sepia-bg);font-style:var(--shiki-sepia-font-style);font-weight:var(--shiki-sepia-font-weight);text-decoration:var(--shiki-sepia-text-decoration)}html.sepia .shiki span{color:var(--shiki-sepia);background:var(--shiki-sepia-bg);font-style:var(--shiki-sepia-font-style);font-weight:var(--shiki-sepia-font-weight);text-decoration:var(--shiki-sepia-text-decoration)}html pre.shiki code .se58z,html code.shiki .se58z{--shiki-light:#0E1116;--shiki-default:#0E1116;--shiki-dark:#F0F3F6;--shiki-sepia:#F8F8F2}html pre.shiki code .sSp2P,html code.shiki .sSp2P{--shiki-light:#024C1A;--shiki-light-font-style:inherit;--shiki-default:#024C1A;--shiki-default-font-style:inherit;--shiki-dark:#72F088;--shiki-dark-font-style:inherit;--shiki-sepia:#66D9EF;--shiki-sepia-font-style:italic}html pre.shiki code .sTdxB,html code.shiki .sTdxB{--shiki-light:#032563;--shiki-default:#032563;--shiki-dark:#ADDCFF;--shiki-sepia:#CFCFC2}</style></div></div><footer class="mt-8 pt-4 border-t text-xs text-openepcis-muted text-right"> Last updated: <time datetime="2026-05-16T00:00:00.000Z">May 16, 2026</time></footer></article><!----></div><nav class="docs-prev-next" aria-label="Page navigation" data-v-4e7d76de><a href="/docs/dependency-management" class="docs-prev-next-link" data-v-4e7d76de><span class="docs-prev-next-dir" data-v-4e7d76de><span class="iconify i-lucide:arrow-left size-4" aria-hidden="true" style="" data-v-4e7d76de></span> Previous</span><span class="docs-prev-next-title" data-v-4e7d76de>Dependency Management</span></a><a href="/docs/digital-product-passport/espr-framework" class="docs-prev-next-link text-right" data-v-4e7d76de><span class="docs-prev-next-dir justify-end" data-v-4e7d76de>Next <span class="iconify i-lucide:arrow-right size-4" aria-hidden="true" style="" data-v-4e7d76de></span></span><span class="docs-prev-next-title" data-v-4e7d76de>ESPR Framework</span></a></nav></div><!--[--><div class="docs-panes-shell hidden lg:flex"><div class="docs-pane-fallback-side"><div class="w-full h-full p-1 border-r border-openepcis text-openepcis overflow-y-auto overflow-x-hidden py-8 shadow-xs"><!--[--><!----><nav data-slot="root" aria-label="Documentation Navigation" class="relative flex flex-col p-4"><ul class="isolate -mx-2.5 -mt-1.5"><!--[--><!--[--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-info hover:before:bg-elevated/50 before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:document-text size-5 group-data-[state=open]:text-info shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Documentation<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li>
38<!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/introduction" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:globe-alt size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Introduction<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/epcis" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-custom:open-epcis size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->EPCIS<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/format-converter" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:arrows-right-left size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Format Converter<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/version-converter" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons:arrows-up-down size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Version Converter<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li>
38<!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/identifier-converter" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons:link size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Identifier Converter<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/event-hash-generator" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:finger-print size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Event Hash Generator<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-state="closed" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5"><!--[--><!--[--><button type="button" aria-controls aria-expanded="false" data-state="closed" id="reka-accordion-trigger-v-0-9-7-0" data-reka-collection-item data-orientation="vertical" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent font-semibold"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:cog size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><span class="cursor-pointer hover:underline" aria-label="Test Data Generator">Test Data Generator</span><!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-9-7-0" data-state="closed" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;
38" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] data-[state=closed]:overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-9-7-1" hidden><!--v-if--></div><!--]--><!--]--></li><!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/test-resource-management" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:archive-box size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Test Resource Management<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/vocabulary-management" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:book-open size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Vocabulary Management<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/dependency-management" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:folder size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Dependency Management<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-state="open" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5"><!--[--><!--[--><button type="button" aria-controls aria-expanded="true" data-state="open" id="reka-accordion-trigger-v-0-9-7-2" data-reka-collection-item data-orientation="vertical" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent font-semibold"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:identification size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><span class="cursor-pointer hover:underline" aria-label="Digital Product Passport">Digital Product Passport</span><!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><!---->
38<span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-9-7-2" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] data-[state=closed]:overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-9-7-3"><!--[--><!--[--><!--[--><!----><ul data-slot="root" class="relative flex flex-col p-4 ms-5 border-s border-default"><!--[--><!--[--><!--[--><li data-slot="item" class="ps-1.5 -ms-px min-w-0 py-1"><a href="/docs/digital-product-passport/espr-framework" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted after:absolute after:-start-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:shield-check size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[--><!--[-->ESPR Framework<!--]--><!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-state="closed" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5 ps-1.5 -ms-px"><!--[--><!--[--><button type="button" aria-controls aria-expanded="false" data-state="closed" id="reka-accordion-trigger-v-0-9-7-4" data-reka-collection-item data-orientation="vertical" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent font-semibold"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-heroicons:battery-100 size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[--><span class="cursor-pointer hover:underline" aria-label="Battery DPP">Battery DPP</span><!--]--><!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-9-7-4" data-state="closed" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;
38" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] data-[state=closed]:overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-9-7-5" hidden><!--v-if--></div><!--]--><!--]--></li><!--]--><!--[--><li data-state="closed" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5 ps-1.5 -ms-px"><!--[--><!--[--><button type="button" aria-controls aria-expanded="false" data-state="closed" id="reka-accordion-trigger-v-0-9-7-6" data-reka-collection-item data-orientation="vertical" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent font-semibold"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:globe-europe-africa size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[--><span class="cursor-pointer hover:underline" aria-label="EUDR">EUDR</span><!--]--><!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-9-7-6" data-state="closed" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] data-[state=closed]:overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-9-7-7" hidden><!--v-if--></div><!--]--><!--]--></li><!--]--><!--[--><li data-state="closed" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5 ps-1.5 -ms-px"><!--[--><!--[--><button type="button" aria-controls aria-expanded="false" data-state="closed" id="reka-accordion-trigger-v-0-9-7-8" data-reka-collection-item data-orientation="vertical" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent font-semibold"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:sparkles size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[--><span class="cursor-pointer hover:underline" aria-label="Textile DPP">Textile DPP</span><!--]--><!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-9-7-8" data-state="closed" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;
38" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] data-[state=closed]:overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-9-7-9" hidden><!--v-if--></div><!--]--><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px min-w-0 py-1"><a href="/docs/digital-product-passport/interoperability" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted after:absolute after:-start-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:arrows-right-left size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[--><!--[-->Interoperability<!--]--><!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px min-w-0 py-1"><a href="/docs/digital-product-passport/dpp-resolution-flow" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted after:absolute after:-start-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:globe-alt size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[--><!--[-->DPP Resolution Flow<!--]--><!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px min-w-0 py-1"><a href="/docs/digital-product-passport/resolver-setup" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted after:absolute after:-start-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:server size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[--><!--[-->Resolver Setup<!--]--><!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px min-w-0 py-1"><a href="/docs/digital-product-passport/multi-component-example" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted after:absolute after:-start-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:puzzle-piece size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[--><!--[-->Multi-Component Example<!--]--><!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li>
38<!--]--><!--[--><li data-state="closed" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5 ps-1.5 -ms-px"><!--[--><!--[--><button type="button" aria-controls aria-expanded="false" data-state="closed" id="reka-accordion-trigger-v-0-9-7-10" data-reka-collection-item data-orientation="vertical" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent font-semibold"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:device-phone-mobile size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[--><span class="cursor-pointer hover:underline" aria-label="Electronics DPP">
38Electronics DPP</span><!--]--><!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-9-7-10" data-state="closed" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] data-[state=closed]:overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-9-7-11" hidden><!--v-if--></div><!--]--><!--]--></li><!--]--><!--[--><li data-slot="item" class="ps-1.5 -ms-px min-w-0 py-1"><a href="/docs/digital-product-passport/signed-passports" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted after:absolute after:-start-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full after:transition-colors hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:shield-check size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[--><!--[-->Signed Passports<!--]--><!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--]--><!--]--></ul><!--]--><!--]--><!--]--></div><!--]--><!--]--></li><!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/profile-checker" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:clipboard-document-check size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Profile Checker<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--[--><li data-state="closed" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5"><!--[--><!--[--><button type="button" aria-controls aria-expanded="false" data-state="closed" id="reka-accordion-trigger-v-0-9-7-12" data-reka-collection-item data-orientation="vertical" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent font-semibold"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:circle-stack size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><span class="cursor-pointer hover:underline" aria-label="Digital Data Management">Digital Data Management</span><!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><!---->
38<span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-9-7-12" data-state="closed" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] data-[state=closed]:overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-9-7-13" hidden><!--v-if--></div><!--]--><!--]--></li><!--]--><!--[--><li data-state="closed" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5"><!--[--><!--[--><button type="button" aria-controls aria-expanded="false" data-state="closed" id="reka-accordion-trigger-v-0-9-7-14" data-reka-collection-item data-orientation="vertical" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent font-semibold"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-lucide:layout-dashboard size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><span class="cursor-pointer hover:underline" aria-label="OpenEPCIS Overview">OpenEPCIS Overview</span><!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-9-7-14" data-state="closed" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] data-[state=closed]:overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-9-7-15" hidden><!--v-if--></div><!--]--><!--]--></li><!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/vision" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:globe-alt size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->Vision<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li>
38<!--]--><!--[--><li data-state="closed" data-orientation="vertical" data-slot="itemWithChildren" class="flex flex-col data-[state=open]:mb-1.5"><!--[--><!--[--><button type="button" aria-controls aria-expanded="false" data-state="closed" id="reka-accordion-trigger-v-0-9-7-16" data-reka-collection-item data-orientation="vertical" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent font-semibold"><!--[--><!--[--><!--[--><!--[--><span class="iconify i-heroicons-outline:arrow-path size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><span class="cursor-pointer hover:underline" aria-label="Connectors">Connectors</span><!--]--><!----></span><span data-slot="linkTrailing" class="ms-auto inline-flex gap-1.5 items-center"><!--[--><!----><span class="iconify i-lucide:chevron-down size-5 transform transition-transform duration-200 shrink-0 group-data-[state=open]:rotate-180" aria-hidden="true" style="" data-slot="linkTrailingIcon"></span><!--]--></span><!--]--><!--]--><!--]--></button><div role="region" aria-labelledby="reka-accordion-trigger-v-0-9-7-16" data-state="closed" data-orientation="vertical" style="--reka-accordion-content-width:var(--reka-collapsible-content-width);--reka-accordion-content-height:var(--reka-collapsible-content-height);--reka-collapsible-content-height:0px;--reka-collapsible-content-width:0px;" data-slot="content" class="data-[state=open]:animate-[accordion-down_200ms_ease-out] data-[state=closed]:animate-[accordion-up_200ms_ease-out] data-[state=closed]:overflow-hidden focus:outline-none" id="reka-collapsible-content-v-0-9-7-17" hidden><!--v-if--></div><!--]--><!--]--></li><!--]--><!--[--><li data-slot="item" class="min-w-0 py-1"><a href="/docs/api-reference" data-slot="link" class="group before:inset-y-px before:inset-x-0 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3 before:outline-info/25 text-muted hover:text-highlighted hover:before:bg-elevated/50 data-[state=open]:text-highlighted transition-colors before:transition-colors group relative w-full flex items-center gap-2 py-3 px-3 font-medium dark:hover:text-openepcis data-active:bg-slate-300 dark:data-active:bg-slate-800 not-data-active:hover:bg-transparent"><!--[--><!--[--><!--[--><span class="iconify i-lucide:plug size-5 group-hover:text-default group-data-[state=open]:text-default transition-colors shrink-0 text-openepcis-primary" aria-hidden="true" style="" data-slot="linkLeadingIcon"></span><!--]--><span data-slot="linkTitle" class="truncate"><!--[--><!--[-->API Reference<!--]--><!--]--><!----></span><!----><!--]--><!--]--></a></li><!--]--><!--]--><!--]--></ul></nav><!--]--></div></div><div class="docs-center-scroll flex-1"><div class="w-full px-6 pt-4"><nav aria-label="Breadcrumb" class="flex items-center text-sm text-openepcis-muted mb-4"><ol class="flex items-center flex-wrap gap-1"><!--[--><li class="flex items-center"><a href="/" class="hover:text-openepcis-primary transition-colors duration-200">Home</a><span class="iconify i-heroicons:chevron-right-20-solid w-4 h-4 mx-1 text-openepcis-muted" aria-hidden="true" style=""></span></li><li class="flex items-center"><a href="/docs" class="router-link-active hover:text-openepcis-primary transition-colors duration-200">Documentation</a><span class="iconify i-heroicons:chevron-right-20-solid w-4 h-4 mx-1 text-openepcis-muted" aria-hidden="true" style=""></span></li><li class="flex items-center"><span class="text-highlighted font-medium" aria-current="page">Digital Product Passport (DPP)</span><!----></li>
38<!--]--></ol></nav></div><div class="flex flex-col grow items-center justify-center min-h-screen w-full flex-1 overflow-y-auto"><article class="max-w-none mx-auto p-6 rounded-lg shadow-md hover:shadow-xl transition-shadow duration-300 ease-in-out w-full overflow-x-hidden"><div><h1 class="text-2xl sm:text-3xl text-highlighted font-bold mb-3 text-left">Digital Product Passport (DPP)</h1><p class="text-base text-openepcis-muted mb-4">Introduction to Digital Product Passport and how EPCIS enables product traceability for DPP compliance.</p><div class="flex flex-wrap items-center gap-x-1 gap-y-1 text-xs text-openepcis-muted mb-4"><!--[--><!--[--><a href="/tags/digital-product-passport" class="hover:text-openepcis-primary hover:underline transition-colors">digital-product-passport</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/dpp" class="hover:text-openepcis-primary hover:underline transition-colors">dpp</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/eu-regulation" class="hover:text-openepcis-primary hover:underline transition-colors">eu-regulation</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/epcis" class="hover:text-openepcis-primary hover:underline transition-colors">epcis</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/sustainability" class="hover:text-openepcis-primary hover:underline transition-colors">sustainability</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/traceability" class="hover:text-openepcis-primary hover:underline transition-colors">traceability</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/circular-economy" class="hover:text-openepcis-primary hover:underline transition-colors">circular-economy</a><span class="text-openepcis-muted/60" aria-hidden="true">·</span><!--]--><!--[--><a href="/tags/gs1-web-vocabulary" class="hover:text-openepcis-primary hover:underline transition-colors">gs1-web-vocabulary</a><!----><!--]--><!--]--><span class="text-openepcis-muted/60 mx-1" aria-hidden="true">·</span><span class="inline-flex items-center gap-1"><span class="iconify i-heroicons:clock size-3.5" aria-hidden="true" style=""></span> 7 min read</span></div></div><div class="text-base leading-relaxed text-left"><div><p class="my-5 leading-7 text-pretty"><!--[-->The Digital Product Passport (DPP) is the EU&#39;s mechanism for attaching a structured, scannable record to every regulated product — what it&#39;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.<!--]--></p><div class="my-4 rounded-lg border-l-4 p-4 bg-sky-500/5 dark:bg-sky-400/8 border-sky-400 dark:border-sky-500"><div class="flex gap-3"><span class="iconify i-heroicons:information-circle size-5 shrink-0 mt-0.5 text-sky-500 dark:text-sky-400" aria-hidden="true" style=""></span><div class="prose prose-sm dark:prose-invert max-w-none flex-1 [&amp;&gt;p:first-child]:mt-0 [&amp;&gt;p:last-child]:mb-0"><!--[--><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->Status<!--]--></strong>: The platform underneath is production grade — the GS1 Conformant Resolver, the masterdata layer and EPCIS 2.0 are stable and in production use. The per-regulation extensions are at <strong><!--[-->v0.9.8<!--]--></strong>; their ontologies and JSON-LD contexts are feature-complete and stay versioned below 1.0 only until the EU delegated acts are final.<!--]--></p><!--]--></div></div></div><h2 id="quick-links" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Quick Links<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->The bigger picture<!--]--></strong><!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/vision" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->The Digital Twin Vision<!--]--></a> — how UNTP, DIDs, Verifiable Credentials and EPCIS fit together for unified product identity<!--]--></li>
38<!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->Implementation guides<!--]--></strong><!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/dpp-resolution-flow" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->DPP Resolution Flow<!--]--></a> — how a QR scan leads to DPP data retrieval<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/resolver-setup" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Resolver Setup Guide<!--]--></a> — running your own GS1 Digital Link resolver<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/multi-component-example" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Multi-Component Example<!--]--></a> — an e-bike with linked component DPPs (the CIRPASS-2 pattern)<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->Per-regulation modules<!--]--></strong><!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/espr-framework" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->ESPR Framework<!--]--></a> — shared patterns for ESPR 2024/1781<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/battery-dpp" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Battery DPP<!--]--></a> — EU Battery Regulation 2023/1542<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/eudr" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->EUDR<!--]--></a> — EU Deforestation Regulation 2023/1115<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/textile" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Textile DPP<!--]--></a> — EU Sustainable Textiles Strategy<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/electronics" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Electronics DPP<!--]--></a> — repairability, WEEE, energy efficiency<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="/docs/digital-product-passport/interoperability" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Interoperability<!--]--></a> — how the OpenEPCIS DPP relates to UNTP, CIRPASS-2 and GS1<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="https://github.com/openepcis/openepcis-dpp-ready" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->openepcis-dpp-ready on GitHub<!--]--></a> — source ontologies, contexts and examples<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->Vocabulary browsers<!--]--></strong><!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="https://ref.openepcis.org/extensions/common/core/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Core DPP vocabulary<!--]--></a> — shared ESPR patterns<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><a href="https://ref.openepcis.org/extensions/eu/battery/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Battery<!--]--></a> · <a href="https://ref.openepcis.org/extensions/eu/eudr/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->EUDR<!--]--></a> · <a href="https://ref.openepcis.org/extensions/eu/textile/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Textile<!--]--></a> · <a href="https://ref.openepcis.org/extensions/eu/electronics/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Electronics<!--]--></a>
38<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->External resources<!--]--></strong><!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->GS1 DPP activity: <a href="https://gs1.eu/activities/digital-product-passport/" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->https://gs1.eu/activities/digital-product-passport/<!--]--></a><!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->OpenEPCIS Digital Data Management demo: <a href="https://demo.epcis.cloud" rel="nofollow" target="_blank" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->https://demo.epcis.cloud<!--]--></a> — seeded demo products, each with a scannable Digital Link<!--]--></li><!--]--></ul><h2 id="what-is-a-digital-product-passport" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->What is a Digital Product Passport?<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->A DPP is a digital record that travels with a product across its lifecycle. It typically holds:<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Origin<!--]--></strong> — where and when the product was made<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Materials<!--]--></strong> — what it is made of and where those materials came from<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Environmental impact<!--]--></strong> — carbon footprint, recycled content, sustainability indicators<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Repair and maintenance<!--]--></strong> — how to fix or service the product<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->End-of-life<!--]--></strong> — how to dispose of, refurbish or recycle the product<!--]--></li><!--]--></ul><p class="my-5 leading-7 text-pretty"><!--[-->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).<!--]--></p><h2 id="why-a-dpp" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Why a DPP?<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->The EU&#39;s <strong><!--[-->Ecodesign for Sustainable Products Regulation (ESPR) 2024/1781<!--]--></strong> makes the DPP a requirement, sector by sector, starting with batteries in 2027. Three intents drive it:<!--]--></p><ol class="list-decimal ps-6 my-5 marker:text-muted"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Sustainability<!--]--></strong> — extend product life, support reuse and high-quality recycling, reduce waste.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Transparency<!--]--></strong> — let consumers, repairers and authorities verify claims about origin, composition and compliance.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Accountability<!--]--></strong> — give regulators a uniform way to check compliance across borders and along the supply chain.<!--]--></li>
38<!--]--></ol><h2 id="how-a-dpp-works" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->How a DPP works<!--]--></h2><figure class="diagram-figure" style="" data-v-dfe71d6b><img src="/diagrams/dpp-lifecycle-overview-light.svg" alt="From manufacturing to a data carrier to the Digital Product Passport" class="diagram-img diagram-img--light" decoding="async" data-v-dfe71d6b><img src="/diagrams/dpp-lifecycle-overview-dark.svg" alt="From manufacturing to a data carrier to the Digital Product Passport" class="diagram-img diagram-img--dark" loading="lazy" decoding="async" data-v-dfe71d6b><!----></figure><p class="my-5 leading-7 text-pretty"><!--[-->End to end:<!--]--></p><ol class="list-decimal ps-6 my-5 marker:text-muted"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Manufacture<!--]--></strong> — the product is assigned a GS1 identifier (e.g. a GTIN + serial → SGTIN).<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Masterdata<!--]--></strong> — a description of the product is POSTed to the resolver (see below).<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Events<!--]--></strong> — as the product moves through the supply chain, EPCIS events record each step.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Carrier<!--]--></strong> — a GS1 Digital Link QR (or NFC tag) is attached to the product.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Access<!--]--></strong> — a scan resolves to the right record; the resolver decides what to return.<!--]--></li><!--]--></ol><h2 id="dpp-and-epcis-how-they-connect" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->DPP and EPCIS: how they connect<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->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.<!--]--></p><h3 id="mapping-dpp-requirements-to-epcis-dimensions" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Mapping DPP requirements to EPCIS dimensions<!--]--></h3><div class="relative my-5 overflow-x-auto rounded-md outline-primary/25 focus-visible:outline-3"><table class="w-full border-separate border-spacing-0 rounded-md"><!--[--><thead class="bg-muted"><!--[--><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-start"><!--[-->DPP requirement<!--]--></th><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-start"><!--[-->EPCIS dimension<!--]--></th><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-start"><!--[-->Captured<!--]--></th><!--]--></tr><!--]--></thead><tbody><!--[--><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Product identity<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><strong><!--[-->What<!--]--></strong><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->GS1 identifiers (GTIN, SGTIN, GLN)<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Timeline<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><strong><!--[-->When<!--]--></strong><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->eventTime<!--]--></code> of each lifecycle step<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Location history<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><strong><!--[-->Where<!--]--></strong><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->bizLocation<!--]--></code>, <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->readPoint<!--]--></code><!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Business context<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><strong><!--[-->Why<!--]--></strong><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->bizStep<!--]--></code>, <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->disposition<!--]--></code><!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Conditions<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><strong><!--[-->How<!--]--></strong><!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[--><code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->sensorElementList<!--]--></code> (temperature, humidity, etc.)<!--]--></td><!--]--></tr><!--]--></tbody><!--]--></table></div><h3 id="standards-based-by-design" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Standards-based by design<!--]--></h3><p class="my-5 leading-7 text-pretty"><!--[-->
38Both 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.<!--]--></p><h2 id="example-masterdata-on-the-resolver-lean-epcis-events-that-reference-it" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Example: masterdata on the resolver, lean EPCIS events that reference it<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->The OpenEPCIS discipline is to keep <strong><!--[-->masterdata on the resolver<!--]--></strong> and <strong><!--[-->EPCIS events lean<!--]--></strong>. Two things happen separately:<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->1. Register the product&#39;s masterdata once, on the resolver.<!--]--></strong><!--]--></p><div class="relative my-5 group" style=""><!----><button type="button" data-slot="base" aria-label="Copy code to clipboard" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted p-1.5 absolute top-[11px] end-[11px] lg:opacity-0 lg:group-hover:opacity-100 lg:focus-visible:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap wrap-break-word overflow-x-auto outline-primary/25 focus-visible:outline-3 focus-visible:border-primary **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-http shiki shiki-themes github-light-high-contrast github-light-high-contrast github-dark-high-contrast monokai" style=""><!--[--><code><span class="line" line="1"><span>POST /products/09521141012345 HTTP/1.1
39</span></span><span class="line" line="2"><span>Host: id.example.com
40</span></span><span class="line" line="3"><span>Content-Type: application/ld+json
41</span></span><span class="line" line="4"><span>Authorization: Bearer ...
42</span></span><span class="line" line="5"><span emptylineplaceholder="true">
43</span></span><span class="line" line="6"><span>{
44</span></span><span class="line" line="7"><span>  &quot;@context&quot;: &quot;https://ref.openepcis.org/extensions/eu/battery/battery-context.jsonld&quot;,
45</span></span><span class="line" line="8"><span>  &quot;id&quot;: &quot;https://id.example.com/01/09521141012345&quot;,
46</span></span><span class="line" line="9"><span>  &quot;type&quot;: &quot;Product&quot;,
47</span></span><span class="line" line="10"><span>  &quot;productName&quot;: &quot;Battery Pack 5 kWh&quot;,
48</span></span><span class="line" line="11"><span>  &quot;gtin&quot;: &quot;09521141012345&quot;,
49</span></span><span class="line" line="12"><span>  &quot;countryOfOrigin&quot;: &quot;DE&quot;,
50</span></span><span class="line" line="13"><span>  &quot;batteryChemistry&quot;: {
51</span></span><span class="line" line="14"><span>    &quot;type&quot;: &quot;BatteryChemistry&quot;,
52</span></span><span class="line" line="15"><span>    &quot;shortName&quot;: &quot;LFP&quot;
53</span></span><span class="line" line="16"><span>  },
54</span></span><span class="line" line="17"><span>  &quot;recycledContent&quot;: {
55</span></span><span class="line" line="18"><span>    &quot;type&quot;: &quot;RecycledContent&quot;,
56</span></span><span class="line" line="19"><span>    &quot;lithiumRecycledShare&quot;: 0.08,
57</span></span><span class="line" line="20"><span>    &quot;cobaltRecycledShare&quot;: 0.15
58</span></span><span class="line" line="21"><span>  }
59</span></span><span class="line" line="22"><span>}
60</span></span></code><!--]--></pre></div><p class="my-5 leading-7 text-pretty"><!--[-->
60That record is now reachable by content negotiation at <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->https://id.example.com/01/09521141012345<!--]--></code>. A scan of the product&#39;s Digital Link QR returns it as JSON-LD or HTML depending on the <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->Accept<!--]--></code> header.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->2. Emit EPCIS events that reference the identifier — no masterdata embedded.<!--]--></strong><!--]--></p><div class="relative group [&amp;&gt;pre]:rounded-t-none [&amp;&gt;pre]:my-0 my-5" style=""><div class="flex items-center gap-1.5 border border-muted bg-default border-b-0 relative rounded-t-md px-4 py-3"><span class="iconify i-vscode-icons:file-type-json size-4 shrink-0" aria-hidden="true" style=""></span><span class="text-default text-sm/6">Battery commissioning event.json</span></div><button type="button" data-slot="base" aria-label="Copy code to clipboard" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 text-xs gap-1.5 ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted p-1.5 absolute top-[11px] end-[11px] lg:opacity-0 lg:group-hover:opacity-100 lg:focus-visible:opacity-100 transition"><!--[--><!--[--><span class="iconify i-lucide:copy shrink-0 size-4" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></button><pre class="group font-mono text-sm/6 border border-muted bg-muted rounded-md px-4 py-3 whitespace-pre-wrap wrap-break-word overflow-x-auto outline-primary/25 focus-visible:outline-3 focus-visible:border-primary **:[.line]:block **:[.line.highlight]:-mx-4 **:[.line.highlight]:px-4 **:[.line.highlight]:bg-accented/50! language-json shiki shiki-themes github-light-high-contrast github-light-high-contrast github-dark-high-contrast monokai" style=""><!--[--><code><span class="line" line="1"><span class="se58z">{
61</span></span><span class="line" line="2"><span class="sSp2P">  &quot;@context&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;https://ref.gs1.org/standards/epcis/epcis-context.jsonld&quot;</span><span class="se58z">,
62</span></span><span class="line" line="3"><span class="sSp2P">  &quot;type&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;ObjectEvent&quot;</span><span class="se58z">,
63</span></span><span class="line" line="4"><span class="sSp2P">  &quot;eventTime&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;2025-01-08T09:30:00Z&quot;</span><span class="se58z">,
64</span></span><span class="line" line="5"><span class="sSp2P">  &quot;eventTimeZoneOffset&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;+01:00&quot;</span><span class="se58z">,
65</span></span><span class="line" line="6"><span class="sSp2P">  &quot;eventID&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;urn:uuid:b5c7d8e9-f012-3456-789a-bcdef0123456&quot;</span><span class="se58z">,
66</span></span><span class="line" line="7"><span class="sSp2P">  &quot;epcList&quot;</span><span class="se58z">: [
67</span></span><span class="line" line="8"><span class="sTdxB">    &quot;https://id.example.com/01/09521141012345/21/1000001&quot;
68</span></span><span class="line" line="9"><span class="se58z">  ],
69</span></span><span class="line" line="10"><span class="sSp2P">  &quot;action&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;ADD&quot;</span><span class="se58z">,
70</span></span><span class="line" line="11"><span class="sSp2P">  &quot;bizStep&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;commissioning&quot;</span><span class="se58z">,
71</span></span><span class="line" line="12"><span class="sSp2P">  &quot;disposition&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;active&quot;</span><span class="se58z">,
72</span></span><span class="line" line="13"><span class="sSp2P">  &quot;readPoint&quot;</span><span class="se58z">:  { </span><span class="sSp2P">&quot;id&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;https://id.example.com/414/9520123456788&quot;</span><span class="se58z"> },
73</span></span><span class="line" line="14"><span class="sSp2P">  &quot;bizLocation&quot;</span><span class="se58z">: { </span><span class="sSp2P">&quot;id&quot;</span><span class="se58z">: </span><span class="sTdxB">&quot;https://id.example.com/414/9520123456788&quot;</span><span class="se58z"> }
74</span></span><span class="line" line="15"><span class="se58z">}
75</span></span></code><!--]--></pre></div><p class="my-5 leading-7 text-pretty"><!--[-->The event says <em><!--[-->what<!--]--></em> happened, <em><!--[-->when<!--]--></em>, <em><!--[-->where<!--]--></em> and <em><!--[-->why<!--]--></em>. To learn <em><!--[-->what the product is<!--]--></em>, a consumer follows the identifier to the resolver. Keeping the two concerns apart means the masterdata stays valid across every event in the product&#39;s life, and an event document never duplicates (or contradicts) the product record.<!--]--></p><h2 id="standards-alignment" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Standards alignment<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->OpenEPCIS DPP-Ready is designed to interoperate cleanly with the surrounding ecosystem:<!--]--></p><div class="relative my-5 overflow-x-auto rounded-md outline-primary/25 focus-visible:outline-3"><table class="w-full border-separate border-spacing-0 rounded-md"><!--[--><thead class="bg-muted"><!--[--><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-start"><!--[-->Standard<!--]--></th><th class="py-3 px-4 font-semibold text-sm border-e border-b first:border-s border-t border-muted text-start"><!--[-->How OpenEPCIS aligns<!--]--></th><!--]--></tr><!--]--></thead><tbody><!--[--><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->GS1 Web Vocabulary<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Native foundation; OpenEPCIS extensions imported via <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->owl:imports<!--]--></code><!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->UN Transparency Protocol (UNTP)<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Property alignment via <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->owl:equivalentProperty<!--]--></code> for shared concepts<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->CIRPASS-2<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Requirements coverage for the DPP data points CIRPASS-2 specifies<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->ESPR 2024/1781<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Full coverage of the articles relevant to product information<!--]--></td><!--]--></tr><tr class="[&amp;:first-child&gt;th:first-child]:rounded-ss-md [&amp;:first-child&gt;th:last-child]:rounded-se-md [&amp;:last-child&gt;td:first-child]:rounded-es-md [&amp;:last-child&gt;td:last-child]:rounded-ee-md"><!--[--><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->BatteryPass<!--]--></td><td class="py-3 px-4 text-sm align-top border-e border-b first:border-s border-muted [&amp;_code]:text-xs/5 [&amp;_p]:my-0 [&amp;_p]:leading-6 [&amp;_ul]:my-0 [&amp;_ol]:my-0 [&amp;_ul]:ps-4.5 [&amp;_ol]:ps-4.5 [&amp;_li]:leading-6 [&amp;_li]:my-0.5 text-start"><!--[-->Bridge context for ingesting BatteryPass documents into the GS1 model<!--]--></td><!--]--></tr><!--]--></tbody><!--]--></table></div>
75<div class="my-4 rounded-lg border-l-4 p-4 bg-sky-500/5 dark:bg-sky-400/8 border-sky-400 dark:border-sky-500"><div class="flex gap-3"><span class="iconify i-heroicons:information-circle size-5 shrink-0 mt-0.5 text-sky-500 dark:text-sky-400" aria-hidden="true" style=""></span><div class="prose prose-sm dark:prose-invert max-w-none flex-1 [&amp;&gt;p:first-child]:mt-0 [&amp;&gt;p:last-child]:mb-0"><!--[--><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->Value convention<!--]--></strong>: ratio and fraction properties use the <strong><!--[-->0–1 decimal scale<!--]--></strong> (UNTP-compatible). <code class="px-1.5 py-0.5 text-sm font-mono font-medium rounded-md inline-block border border-muted text-highlighted bg-muted"><!--[-->recycledContent: 0.45<!--]--></code> means 45% recycled content. See <a href="/docs/digital-product-passport/interoperability" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Interoperability<!--]--></a> for the full property mapping.<!--]--></p><!--]--></div></div></div><h2 id="industries-in-scope" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Industries in scope<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->The EU is rolling out DPP requirements in waves, starting with the sectors that benefit most from traceability:<!--]--></p><h3 id="batteries-from-february-2027" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Batteries — from February 2027<!--]--></h3><p class="my-5 leading-7 text-pretty"><!--[-->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 <a href="/docs/digital-product-passport/battery-dpp" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Battery DPP<!--]--></a>.<!--]--></p><h3 id="textiles-phased-from-20272030" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Textiles — phased from 2027–2030<!--]--></h3><p class="my-5 leading-7 text-pretty"><!--[-->Apparel and footwear: fibre composition, country of origin, care and repair instructions, recycling guidance. See <a href="/docs/digital-product-passport/textile" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Textile DPP<!--]--></a>.<!--]--></p><h3 id="electronics" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Electronics<!--]--></h3><p class="my-5 leading-7 text-pretty"><!--[-->Repairability score, spare-parts availability, hazardous-substance disclosure, energy efficie
75ncy, end-of-life routing. The <a href="/docs/digital-product-passport/electronics" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->Electronics DPP<!--]--></a> module follows the French Repairability Index method and aligns with WEEE.<!--]--></p><h3 id="construction-materials-furniture-chemicals-and-beyond" class="relative text-xl text-highlighted font-bold mt-8 mb-3 scroll-mt-[calc(32px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(32px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-lg/6 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Construction materials, furniture, chemicals, and beyond<!--]--></h3><p class="my-5 leading-7 text-pretty"><!--[-->ESPR allows the DPP scope to extend across product categories. Sectoral implementing acts are sequenced over the next several years.<!--]--></p><h2 id="benefits" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Benefits<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->For consumers<!--]--></strong> — verified product information, easier access to repair guides, fuller history when buying second-hand.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->For businesses<!--]--></strong> — 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.<!--]--></p><p class="my-5 leading-7 text-pretty"><!--[--><strong><!--[-->For the environment<!--]--></strong> — extended product life, cleaner recycling streams, better feedback to designers about end-of-life behaviour.<!--]--></p><h2 id="how-openepcis-supports-dpp" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->How OpenEPCIS supports DPP<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->OpenEPCIS provides the building blocks; you wire them together to fit your supply chain.<!--]--></p><ul class="list-disc ps-6 my-5 marker:text-(--ui-border-accented)"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->GS1 Conformant Resolver<!--]--></strong> — host the masterdata and linksets for every regulated product.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->EPCIS 2.0 REST API<!--]--></strong> — capture and query lifecycle events.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Format Converter<!--]--></strong> — round-trip EPCIS documents between XML and JSON-LD.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Event Hash Generator<!--]--></strong> — idempotent event identity across re-sends.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->Test Data Generator<!--]--></strong> — synthesise realistic events for development and conformance testing.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[--><strong><!--[-->DPP-Ready ontologies<!--]--></strong> — battery, textile, electronics, EUDR and ESPR core JSON-LD contexts.<!--]--></li>
75<!--]--></ul><h2 id="getting-started" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Getting started<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->A typical pilot path:<!--]--></p><ol class="list-decimal ps-6 my-5 marker:text-muted"><!--[--><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Read the regulation that applies to your product category (linked from each module page).<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Decide on the GS1 identifiers you&#39;ll use — GTIN for the product, SGTIN for serialised items, GLN for locations.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Stand up a resolver and POST your product, organisation and place masterdata to it.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Capture EPCIS events at the points in the supply chain that matter for the DPP.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Validate the events against the EPCIS 2.0 schema and the relevant DPP-Ready context.<!--]--></li><li class="my-1.5 ps-1.5 leading-7 [&amp;&gt;ul]:my-0"><!--[-->Print or affix a Digital Link QR; verify end-to-end that a scan returns the expected DPP record.<!--]--></li><!--]--></ol><h2 id="contact" class="relative text-2xl text-highlighted font-bold mt-12 mb-6 scroll-mt-[calc(48px+45px+var(--ui-header-height))] lg:scroll-mt-[calc(48px+var(--ui-header-height))] [&amp;&gt;a]:rounded-sm [&amp;&gt;a]:outline-primary/25 [&amp;&gt;a]:focus-visible:outline-3 [&amp;&gt;a&gt;code]:border-dashed hover:[&amp;&gt;a&gt;code]:border-primary hover:[&amp;&gt;a&gt;code]:text-primary [&amp;&gt;a&gt;code]:text-xl/7 [&amp;&gt;a&gt;code]:font-bold [&amp;&gt;a&gt;code]:transition-colors"><!--[-->Contact<!--]--></h2><p class="my-5 leading-7 text-pretty"><!--[-->Questions, feedback, pilots: <a href="mailto:[email protected]" rel="noopener noreferrer" class="text-blue-700 dark:text-blue-400 underline hover:text-blue-800 dark:hover:text-blue-300"><!--[-->[email protected]<!--]--></a>.<!--]--></p><style>html .light .shiki span{color:var(--shiki-light);background:var(--shiki-light-bg);font-style:var(--shiki-light-font-style);font-weight:var(--shiki-light-font-weight);text-decoration:var(--shiki-light-text-decoration)}html.light .shiki span{color:var(--shiki-light);background:var(--shiki-light-bg);font-style:var(--shiki-light-font-style);font-weight:var(--shiki-light-font-weight);text-decoration:var(--shiki-light-text-decoration)}html .default .shiki span{color:var(--shiki-default);background:var(--shiki-default-bg);font-style:var(--shiki-default-font-style);font-weight:var(--shiki-default-font-weight);text-decoration:var(--shiki-default-text-decoration)}html .shiki span{color:var(--shiki-default);background:var(--shiki-default-bg);font-style:var(--shiki-default-font-style);font-weight:var(--shiki-default-font-weight);text-decoration:var(--shiki-default-text-decoration)}html .dark .shiki span{color:var(--shiki-dark);background:var(--shiki-dark-bg);font-style:var(--shiki-dark-font-style);font-weight:var(--shiki-dark-font-weight);text-decoration:var(--shiki-dark-text-decoration)}html.dark .shiki span{color:var(--shiki-dark);background:var(--shiki-dark-bg);font-style:var(--shiki-dark-font-style);font-weight:var(--shiki-dark-font-weight);text-decoration:var(--shiki-dark-text-decoration)}html .sepia .shiki span{color:var(--shiki-sepia);background:var(--shiki-sepia-bg);font-style:var(--shiki-sepia-font-style);font-weight:var(--shiki-sepia-font-weight);text-decoration:var(--shiki-sepia-text-decoration)}html.sepia .shiki span{color:var(--shiki-sepia);background:var(--shiki-sepia-bg);font-style:var(--shiki-sepia-font-style);font-weight:var(--shiki-sepia-font-weight);text-decoration:var(--shiki-sepia-text-decoration)}html pre.shiki code .se58z,html code.shiki .se58z{--shiki-light:#0E1116;--shiki-default:#0E1116;--shiki-dark:#F0F3F6;--shiki-sepia:#F8F8F2}html pre.shiki code .sSp2P,html code.shiki .sSp2P{--shiki-light:#024C1A;--shiki-light-font-style:inherit;--shiki-default:#024C1A;--shiki-default-font-style:inherit;--shiki-dark:#72F088;--shiki-dark-font-style:inherit;--shiki-sepia:#66D9EF;--shiki-sepia-font-style:italic}html pre.shiki code .sTdxB,html code.shiki .sTdxB{--shiki-light:#032563;--shiki-default:#032563;--shiki-dark:#ADDCFF;--shiki-sepia:#CFCFC2}</style></div></div><footer class="mt-8 pt-4 border-t text-xs text-openepcis-muted text-right"> Last updated: <time datetime="2026-05-16T00:00:00.000Z">May 16, 2026</time></footer></article><!----></div></div><div class="docs-pane-fallback-side"><nav class="w-full h-full p-4 lg:p-6 border-l border-openepcis text-openepcis overflow-y-auto px-6 py-8 shadow-xs" role="navigation" aria-label="Table of Contents"><h2 class="text-lg font-semibold mb-4"> Table of Contents </h2><ul class="space-y-0.5"><!--[--><li><div class="flex items-center gap-1"><a href="#quick-links" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Quick Links</a><!----></div><!----></li><li><div class="flex items-center gap-1"><a href="#what-is-a-digital-product-passport" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">What is a Digital Product Passport?</a><!----></div><!----></li><li><div class="flex items-center gap-1"><a href="#why-a-dpp" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Why a DPP?</a><!----></div><!----></li><li><div class="flex items-center gap-1"><a href="#how-a-dpp-works" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">How a DPP works</a><!----></div><!----></li><li><div class="flex items-center gap-1"><a href="#dpp-and-epcis-how-they-connect" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">DPP and EPCIS: how they connect</a><button type="button" class="shrink-0 rounded p-1.5 inline-flex items-center justify-center min-w-6 min-h-6 hover:bg-black/5 dark:hover:bg-white/10 transition-colors" aria-expanded="true" aria-label="Collapse DPP and EPCIS: how they connect"><svg class="rotate-90 h-3.5 w-3.5 transition-transform" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"><path fill-rule="evenodd" d="M7.21 14.77a.75.75 0 0 1 .02-1.06L11.168 10 7.23 6.29a.75.75 0 1 1 1.04-1.08l4.5 4.25a.75.75 0 0 1 0 1.08l-4.5 4.25a.75.75 0 0 1-1.06-.02Z" clip-rule="evenodd"></path></svg></button></div><ul class="ml-2 mt-0.5 space-y-0.5 border-l border-openepcis/30 pl-2" style=""><!--[--><li><a href="#mapping-dpp-requirements-to-epcis-dimensions" class="block rounded px-2 py-1 text-[0.8125rem] opacity-90 hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Mapping DPP requirements to EPCIS dimensions</a></li><li><a href="#standards-based-by-design" class="block rounded px-2 py-1 text-[0.8125rem] opacity-90 hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Standards-based by design</a></li>
75<!--]--></ul></li><li><div class="flex items-center gap-1"><a href="#example-masterdata-on-the-resolver-lean-epcis-events-that-reference-it" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Example: masterdata on the resolver, lean EPCIS events that reference it</a><!----></div><!----></li><li><div class="flex items-center gap-1"><a href="#standards-alignment" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Standards alignment</a><!----></div><!----></li><li><div class="flex items-center gap-1"><a href="#industries-in-scope" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Industries in scope</a><button type="button" class="shrink-0 rounded p-1.5 inline-flex items-center justify-center min-w-6 min-h-6 hover:bg-black/5 dark:hover:bg-white/10 transition-colors" aria-expanded="true" aria-label="Collapse Industries in scope"><svg class="rotate-90 h-3.5 w-3.5 transition-transform" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"><path fill-rule="evenodd" d="M7.21 14.77a.75.75 0 0 1 .02-1.06L11.168 10 7.23 6.29a.75.75 0 1 1 1.04-1.08l4.5 4.25a.75.75 0 0 1 0 1.08l-4.5 4.25a.75.75 0 0 1-1.06-.02Z" clip-rule="evenodd"></path></svg></button></div><ul class="ml-2 mt-0.5 space-y-0.5 border-l border-openepcis/30 pl-2" style=""><!--[--><li><a href="#batteries-from-february-2027" class="block rounded px-2 py-1 text-[0.8125rem] opacity-90 hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Batteries — from February 2027</a></li><li><a href="#textiles-phased-from-20272030" class="block rounded px-2 py-1 text-[0.8125rem] opacity-90 hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Textiles — phased from 2027–2030</a></li><li><a href="#electronics" class="block rounded px-2 py-1 text-[0.8125rem] opacity-90 hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Electronics</a></li><li><a href="#construction-materials-furniture-chemicals-and-beyond" class="block rounded px-2 py-1 text-[0.8125rem] opacity-90 hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Construction materials, furniture, chemicals, and beyond</a></li><!--]--></ul></li><li><div class="flex items-center gap-1"><a href="#benefits" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Benefits</a><!----></div><!----></li><li><div class="flex items-center gap-1"><a href="#how-openepcis-supports-dpp" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">How OpenEPCIS supports DPP</a><!----></div><!----></li><li><div class="flex items-center gap-1"><a href="#getting-started" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Getting started</a><!----></div><!----></li><li><div class="flex items-center gap-1"><a href="#contact" class="block flex-1 rounded px-2 py-1 text-sm hover:bg-black/5 dark:hover:bg-white/10 transition-colors">Contact</a><!----></div><!----></li><!--]--></ul></nav></div></div><!--]--><!--]--></main><div class="h-[3px] w-full bg-linear-to-r from-transparent via-openepcis/40 to-transparent opacity-[0.92] shadow-[0_1px_6px_var(--color-openepcis)]"></div><div class="relative w-full bg-openepcis-section transition-colors duration-300"><div class="max-w-[1600px] mx-auto px-6 md:px-12"><footer id="footer"><section class="isolate bg-openepcis-section text-openepcis px-4 py-4"><div class="w-full px-6 md:px-12 max-w-7xl mx-auto grid grid-cols-1 md:grid-cols-3 gap-10"><div class="flex flex-col items-center justify-center w-full"><div class="flex items-center justify-center gap-2 mb-2"><img src="/img/benelog-logo-light.svg" alt="" class="h-10 w-auto block dark:hidden" draggable="false"><img src="/img/benelog-logo-dark.svg" alt="" class="h-10 w-auto hidden dark:block" draggable="false"></div><div class="text-openepcis-muted text-sm space-y-2"><div class="flex items-start gap-2"><span class="iconify i-mdi:map-marker-outline w-5 h-5 text-openepcis-primary shrink-0 mt-1" aria-hidden="true" style=""></span><div><div>benelog GmbH &amp; Co. KG</div><div>Maarweg 133,</div><div>
7550825 Cologne, Germany.</div></div></div><div class="flex items-center gap-2"><span class="iconify i-mdi:email-outline w-5 h-5 text-openepcis-primary shrink-0" aria-hidden="true" style=""></span><a href="mailto:[email protected]" rel="noopener noreferrer" class="hover:text-openepcis-accent ml-1" aria-label="openepcisEmailContact">[email protected]</a></div><div class="flex items-center gap-2"><span class="iconify i-mdi:phone-outline w-5 h-5 text-openepcis-primary shrink-0" aria-hidden="true" style=""></span><div><a href="tel:+49 (221) 472540 001" rel="noopener noreferrer" class="hover:text-openepcis-accent ml-1" aria-label="openepcisPhoneContact">+49 (221) 472540 001</a></div></div></div></div><div class="flex flex-col items-center justify-center w-full"><div class="w-fit"><h2 class="text-base font-semibold mb-2 text-openepcis tracking-wide text-center">Quick Links</h2><nav class="grid grid-cols-1 sm:grid-cols-[auto_auto] gap-x-8 gap-y-1.5"><!--[--><a href="/docs" class="router-link-active group flex items-center gap-2 rounded-md px-2 py-1.5 text-sm text-openepcis-muted transition-colors duration-150 hover:bg-openepcis-primary/10 hover:text-openepcis-primary" aria-label="Docs"><span class="iconify i-mdi:drive-document w-4 h-4 shrink-0 text-openepcis-primary" aria-hidden="true" style=""></span><span>Docs</span></a><a href="/blog" class="group flex items-center gap-2 rounded-md px-2 py-1.5 text-sm text-openepcis-muted transition-colors duration-150 hover:bg-openepcis-primary/10 hover:text-openepcis-primary" aria-label="Blog"><span class="iconify i-mdi:rss w-4 h-4 shrink-0 text-openepcis-primary" aria-hidden="true" style=""></span><span>Blog</span></a><a href="/faq" class="group flex items-center gap-2 rounded-md px-2 py-1.5 text-sm text-openepcis-muted transition-colors duration-150 hover:bg-openepcis-primary/10 hover:text-openepcis-primary" aria-label="FAQ"><span class="iconify i-mdi:faq w-4 h-4 shrink-0 text-openepcis-primary" aria-hidden="true" style=""></span><span>FAQ</span></a><a href="https://epcis-sandbox.gs1.org/" rel="noopener noreferrer" target="_blank" class="group flex items-center gap-2 rounded-md px-2 py-1.5 text-sm text-openepcis-muted transition-colors duration-150 hover:bg-openepcis-primary/10 hover:text-openepcis-primary" aria-label="Sandbox"><span class="iconify i-mdi:flask-outline w-4 h-4 shrink-0 text-openepcis-primary" aria-hidden="true" style=""></span><span>Sandbox</span></a><a href="https://tools.openepcis.io/ui/" rel="noopener noreferrer" target="_blank" class="group flex items-center gap-2 rounded-md px-2 py-1.5 text-sm text-openepcis-muted transition-colors duration-150 hover:bg-openepcis-primary/10 hover:text-openepcis-primary" aria-label="Tools"><span class="iconify i-mdi:tools w-4 h-4 shrink-0 text-openepcis-primary" aria-hidden="true" style=""></span><span>Tools</span></a><a href="https://tools.openepcis.io/ui/event-data-generator/" rel="noopener noreferrer" target="_blank" class="group flex items-center gap-2 rounded-md px-2 py-1.5 text-sm text-openepcis-muted transition-colors duration-150 hover:bg-openepcis-primary/10 hover:text-openepcis-primary" aria-label="Event Generator"><span class="iconify i-mdi:cog-outline w-4 h-4 shrink-0 text-openepcis-primary" aria-hidden="true" style=""></span><span>Event Generator</span></a><a href="/privacy" class="group flex items-center gap-2 rounded-md px-2 py-1.5 text-sm text-openepcis-muted transition-colors duration-150 hover:bg-openepcis-primary/10 hover:text-openepcis-primary" aria-label="Privacy"><span class="iconify i-mdi:shield-alert w-4 h-4 shrink-0 text-openepcis-primary" aria-hidden="true" style=""></span><span>Privacy</span></a><a href="/imprint" class="group flex items-center gap-2 rounded-md px-2 py-1.5 text-sm text-openepcis-muted transition-colors duration-150 hover:bg-openepcis-primary/10 hover:text-openepcis-primary" aria-label="Imprint"><span class="iconify i-mdi:stamper w-4 h-4 shrink-0 text-openepcis-primary" aria-hidden="true" style=""></span><span>Imprint</span></a><!--]--></nav></div></div><div class="flex flex-col items-center justify-center w-full"><h2 class="text-base font-semibold mb-2 text-openepcis tracking-wide">Services</h2><ul class="flex flex-col gap-2"><!--[--><li class="text-openepcis-muted hover:text-openepcis-primary transition-colors duration-150 text-sm">OpenEPCIS</li><li class="text-openepcis-muted hover:text-openepcis-primary transition-colors duration-150 text-sm">Software Development</li><li class="text-openepcis-muted hover:text-openepcis-primary transition-colors duration-150 text-sm">Logistics Tech</li><li class="text-openepcis-muted hover:text-openepcis-primary transition-colors duration-150 text-sm">Data Analytics &amp; AI</li><li class="text-openepcis-muted hover:text-openepcis-primary transition-colors duration-150 text-sm">Cloud Solutions</li><li class="text-openepcis-muted hover:text-openepcis-primary transition-colors duration-150 text-sm">Consulting</li>
75<!--]--></ul></div></div></section><section class="bg-openepcis-section border-t border-openepcis py-4"><div class="max-w-[1600px] mx-auto px-6"><div class="flex flex-col items-center justify-center gap-2"><h2 class="text-lg md:text-xl font-bold text-openepcis tracking-wide text-center">Connect with us</h2><div class="flex gap-3 justify-center flex-wrap"><!--[--><a href="mailto:[email protected]" rel="noopener" target="_blank" data-slot="base" aria-label="Email" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-base gap-2 hover:bg-elevated active:bg-elevated outline-inverted/25 focus-visible:outline-3 hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-2 text-openepcis-primary"><!--[--><!--[--><span class="iconify i-mdi:email-outline shrink-0 size-6" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></a><a href="https://github.com/openepcis" rel="noopener" target="_blank" data-slot="base" aria-label="GitHub" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-base gap-2 hover:bg-elevated active:bg-elevated outline-inverted/25 focus-visible:outline-3 hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-2 text-openepcis-primary"><!--[--><!--[--><span class="iconify i-mdi:github shrink-0 size-6" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></a><a href="https://www.linkedin.com/company/benelog" rel="noopener" target="_blank" data-slot="base" aria-label="LinkedIn" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-base gap-2 hover:bg-elevated active:bg-elevated outline-inverted/25 focus-visible:outline-3 hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-2 text-openepcis-primary"><!--[--><!--[--><span class="iconify i-mdi:linkedin shrink-0 size-6" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></a><a href="https://benelog.com" rel="noopener" target="_blank" data-slot="base" aria-label="benelog GmbH &amp; Co. KG" class="rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75 transition-colors text-base gap-2 hover:bg-elevated active:bg-elevated outline-inverted/25 focus-visible:outline-3 hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent p-2 text-openepcis-primary"><!--[--><!--[--><span class="iconify i-mdi:globe shrink-0 size-6" aria-hidden="true" style="" data-slot="leadingIcon"></span><!--]--><!--[--><!----><!--]--><!--[--><!----><!--]--><!--]--></a><!--]--></div></div></div></section><div class="bg-openepcis-section bg-black/90 border-t border-openepcis py-1 text-center"><span class="text-xs text-openepcis-muted"> © 2026 <a href="https://benelog.com/" target="_blank" rel="noopener noreferrer" class="font-semibold text-gray-700 dark:text-gray-200 hover:underline"> benelog GmbH &amp; Co. KG </a> and <a href="/" class="font-semibold text-gray-700 dark:text-gray-200 hover:underline"> OpenEPCIS </a> | All Rights Reserved.</span></div></footer></div></div><!--]--><!--]--><!--[--><!--]--><!--v-if--><!--]--><!--[--><!--]--><!--]--><!--]--></div><div id="teleports"></div>
75<script>window.__NUXT__={};window.__NUXT__.config={public:{siteUrl:"https://openepcis.io",siteName:"openepcis",theme:"default",demoAppUrl:"https://demo.epcis.cloud",resolverUrl:"https://id.demo.epcis.cloud","nuxt-seo-utils-version":"8.3.1","seo-utils":{canonicalQueryWhitelist:["page","sort","filter","search","q","category","tag"],canonicalLowercase:true,tagPriority:"low",separator:"",titleSeparator:""},mdc:{components:{prose:true,map:{accordion:"ProseAccordion","accordion-item":"ProseAccordionItem",badge:"ProseBadge",callout:"ProseCallout",card:"ProseCard","card-group":"ProseCardGroup",caution:"ProseCaution","code-collapse":"ProseCodeCollapse","code-group":"ProseCodeGroup","code-icon":"ProseCodeIcon","code-preview":"ProseCodePreview","code-tree":"ProseCodeTree",collapsible:"ProseCollapsible",field:"ProseField","field-group":"ProseFieldGroup",icon:"ProseIcon",kbd:"ProseKbd",note:"ProseNote",prompt:"ProsePrompt",steps:"ProseSteps",tabs:"ProseTabs","tabs-item":"ProseTabsItem",tip:"ProseTip",warning:"ProseWarning"}},headings:{anchorLinks:false},highlight:{noApiRoute:true,theme:{light:"github-light-high-contrast",default:"github-light-high-contrast",dark:"github-dark-high-contrast",sepia:"monokai"},preload:["xml","html","json","bash"],highlighter:"shiki",shikiEngine:"oniguruma",langs:["js","jsx","json","ts","tsx","vue","css","html","bash","md","mdc","yaml","xml","html","json","bash"]}},i18n:{baseUrl:"https://openepcis.io",defaultLocale:"en",rootRedirect:"",redirectStatusCode:302,skipSettingLocaleOnNavigate:false,locales:[{code:"en",iso:"en-US",name:"English",language:""}],detectBrowserLanguage:{alwaysRedirect:false,cookieCrossOrigin:false,cookieDomain:"",cookieKey:"i18n_redirected",cookieSecure:false,fallbackLocale:"",redirectOn:"root",useCookie:true},experimental:{localeDetector:"",typedPages:true,typedOptionsAndMessages:false,alternateLinkCanonicalQueries:true,devCache:false,cacheLifetime:"",stripMessagesPayload:false,preload:false,strictSeo:false,nitroContextDetection:true,httpCacheDuration:10,compactRoutes:false,prerenderMessages:false},domainLocales:{en:{domain:""}}},content:{wsUrl:""},"nuxt-robots":{version:"6.1.1",isNuxtContentV2:false,debug:false,credits:true,groups:[{userAgent:["*"],allow:["/"],disallow:[],contentUsage:[],contentSignal:[],_indexable:true,_rules:[{pattern:"/",allow:true}],_normalized:true},{userAgent:["ChatGPT-User","OAI-SearchBot","GPTBot","Claude-User","Claude-SearchBot","ClaudeBot","anthropic-ai","Perplexity-User","PerplexityBot","Google-Extended","CCBot"],allow:["/"],disallow:[],contentUsage:[],contentSignal:[],_indexable:true,_rules:[{pattern:"/",allow:true}],_normalized:true},{userAgent:["*"],contentUsage:["train-ai=y"],contentSignal:["ai-train=yes","search=yes","ai-input=yes"],disallow:[],allow:[],_indexable:true,_rules:[],_normalized:true}],sitemap:["/sitemap.xml"],header:true,robotsEnabledValue:"index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1",robotsDisabledValue:"noindex, nofollow",cacheControl:"max-age=14400, must-revalidate",botDetection:true,pageMetaRobots:{}}},app:{baseURL:"/",buildId:"650e2294-bf1c-423d-b8ce-581a2ceadc20",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script>
75<script type="application/ld+json" data-nuxt-schema-org="true" data-hid="schema-org-graph"></script>
75<script type="application/json" data-nuxt-data="nuxt-app" data-ssr="true" id="__NUXT_DATA__" data-src="/docs/digital-product-passport/_payload.json?_b=650e2294-bf1c-423d-b8ce-581a2ceadc20">[{"state":1,"once":23,"_errors":24,"serverRendered":5,"path":26,"prerenderedAt":27},["Reactive",2],{"$scolor-mode":3,"$si18n:cached-locale-configs":7,"$si18n:resolved-locale":10,"$snuxt-seo-utils:routeRules":11,"$stoasts":12,"$ssite-config":13},{"preference":4,"value":4,"unknown":5,"forced":6},"system",true,false,{"en":8},{"fallbacks":9,"cacheable":5},[],"",{"head":-1,"seoMeta":-1},[],{"_priority":14,"currentLocale":19,"defaultLocale":19,"env":20,"name":21,"url":22},{"env":15,"url":16,"name":17,"defaultLocale":18,"currentLocale":18},-15,0,-3,-2,"en-US","production","OpenEPCIS - an open-core, GS1-conformant EPCIS implementation.","https://openepcis.io",["Set"],["ShallowReactive",25],{"search-sections-docsEN":-1,"navigation-docsEN":-1,"search-sections-blogEN":-1,"navigation-blogEN":-1,"docs-EN-/docs/digital-product-passport":-1,"docsNav-EN-/docs":-1,"docsSecNav-EN-/docs/digital-product-passport":-1},"/docs/digital-product-passport",1791212955594]</script>
75</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.