Documentation
Odal Node creates, signs and serves EU Digital Product Passports on your own infrastructure, with your own keys. Anyone can verify a passport it publishes without going through Odal. The regulatory library is Apache-2.0; the node is BSL-1.1 and free to self-host for your own compliance obligations. The project is pre-production.
Get started
Section titled “Get started”- Introduction: what Odal Node is, its licences and its status.
- Quick Start: run a node and publish a signed passport over the REST API.
- What the core does: use the Rust library on its own.
- Licensing: what is free, and where the line is.
Use the node
Section titled “Use the node”- Importing product data: spreadsheets in, draft passports out.
- A passport’s lifecycle: publish, correct, replace, suspend, retire, end of life.
- Handing over responsibility: moving a passport to another operator.
- Proof files and verification: the evidence dossier and how anyone checks it.
- Access credentials: letting repairers and recyclers see restricted data.
- Your operator identity: operator details, identifiers and facilities.
- Integrations and statistics: webhooks, scan counts and machine-readable views.
- Electronic seals: sealing, seal status and trusted lists.
- The unsold-goods disclosure: the yearly report, which is not a passport.
Run the node
Section titled “Run the node”Reference
Section titled “Reference”Concepts
Section titled “Concepts”- Core Concepts: the design in three rules.
- How the node works, What Odal can and cannot see, Permanence and retention and Operating securely.
The law
Section titled “The law”- ESPR overview: what the regulation requires, and how the software maps to it.
- Product groups: batteries, textiles, toys, detergents, construction products, vehicles, and phones and tablets.
- Acts and standards: every act and standard the code relies on.
API reference
Section titled “API reference”- API reference: every route a node serves, with request and response schemas, rendered from the OpenAPI 3.1 document (also available as
openapi.yaml). Its “Test request” button calls a node straight from your browser, so that node’sCORS_ALLOWED_ORIGINSmust include this site’s origin.
Information on this site is not legal advice. Legal noticePrivacy policy