Skip to main content
The DPP module automatically generates Digital Product Passports that comply with EU regulations. Each passport provides a unique, publicly accessible URL containing comprehensive sustainability data for a product.

What is a DPP?

A Digital Product Passport is a structured dataset linked to a product via a unique identifier. It contains information about the product’s composition, origin, environmental impact, and end-of-life options. The EU is mandating DPPs for an increasing number of product categories.

Generating a DPP

mutation {
  generateDpp(input: {
    productId: "prod_abc123"
    locale: "en"
    includeQrCode: true
  }) {
    id
    productId
    publicUrl
    qrCodeUrl
    status
    createdAt
    expiresAt
    sections {
      name
      fields {
        key
        value
        unit
      }
    }
  }
}
Response:
{
  "data": {
    "generateDpp": {
      "id": "dpp_xyz789",
      "productId": "prod_abc123",
      "publicUrl": "https://dpp.heychocolate.com/dpp_xyz789",
      "qrCodeUrl": "https://dpp.heychocolate.com/qr/dpp_xyz789.svg",
      "status": "ACTIVE",
      "createdAt": "2025-09-01T12:00:00Z",
      "expiresAt": null,
      "sections": [
        {
          "name": "Environmental Impact",
          "fields": [
            { "key": "CO2 Equivalent", "value": "12.4", "unit": "kg CO2e" },
            { "key": "MKI Score", "value": "0.87", "unit": "EUR" },
            { "key": "Water Footprint", "value": "280", "unit": "liters" }
          ]
        },
        {
          "name": "Material Composition",
          "fields": [
            { "key": "Bio-based content", "value": "65", "unit": "%" },
            { "key": "Recycled content", "value": "20", "unit": "%" }
          ]
        },
        {
          "name": "Supply Chain",
          "fields": [
            { "key": "Origin", "value": "Netherlands", "unit": null },
            { "key": "Supply chain tiers", "value": "3", "unit": null },
            { "key": "Certifications", "value": "ISO14001, BREEAM", "unit": null }
          ]
        }
      ]
    }
  }
}

DPP sections

SectionContent
Product IdentityName, ID, manufacturer, category
Environmental ImpactCO2, MKI, water, energy scores
Material CompositionMaterials, recycled content, hazardous substances
Supply ChainOrigin, tiers, certifications
CircularityRecyclability, repair instructions, end-of-life
ComplianceRegulatory references, standards met

Querying existing DPPs

query {
  dpp(id: "dpp_xyz789") {
    id
    publicUrl
    status
    product { id name }
    sections { name fields { key value unit } }
    auditTrail {
      timestamp
      action
      actor
    }
  }
}

Batch generation

mutation {
  batchGenerateDpp(input: {
    productIds: ["prod_abc123", "prod_def456"]
    locale: "en"
    includeQrCode: true
  }) {
    results {
      productId
      dppId
      publicUrl
      status
    }
    failedProducts {
      productId
      reason
    }
  }
}

QR code integration

The QR code links directly to the public DPP page. Use it on:
  • Physical product packaging
  • Print labels (see Print Export)
  • Digital marketing materials
  • Point-of-sale displays

Audit trail

Every DPP action is logged in an immutable audit trail for compliance:
{
  "auditTrail": [
    { "timestamp": "2025-09-01T12:00:00Z", "action": "CREATED", "actor": "api_key_sk_live_abc" },
    { "timestamp": "2025-09-15T08:30:00Z", "action": "UPDATED", "actor": "api_key_sk_live_abc" },
    { "timestamp": "2025-09-15T08:30:00Z", "action": "QR_REGENERATED", "actor": "api_key_sk_live_abc" }
  ]
}