← All Event Families

foundation.protocols.eudr.*

EU Deforestation Regulation (EU 2023/1115) compliance events. Plot geolocation, satellite deforestation verification, chain-of-custody tracking, and Due Diligence Statement workflow.

11
Events
9
Timeline
2
State

Contents

EUDR Context

The EU Deforestation Regulation requires commodity exports to prove deforestation-free sourcing. Seven regulated commodities: cattle, cocoa, coffee, oil palm, rubber, soya, wood. Operators must submit a Due Diligence Statement (DDS) to the EU TRACES NT system before import.

Cutoff date: 31 December 2020. All products must be verified as sourced from land that was not subject to deforestation after this date.

Chain-of-Custody Flow

A directed acyclic graph (DAG) from farm plot to EU border.

Plot (verified, deforestation-free) eudr.harvest_record Farmer eudr.chain_of_custody Local Trader eudr.chain_of_custody Processor eudr.processing_event eudr.chain_of_custody Exporter Export EU Operator eudr.dds_draft eudr.dds_submitted EU TRACES NT

Events

State Event

foundation.protocols.eudr.actor_registration

Supply chain actor identity and role. State key is the actor’s Matrix user ID. Defines the actor’s position in the supply chain and their geographic jurisdiction.

FieldTypeDescription
actor_idstringMatrix user ID of the supply chain actor
rolestringRole in supply chain
Values: farmer, local_trader, processor, exporter, eu_operator, ai_service
organizationstringOrganisation name
countrystringISO 3166-1 alpha-2 country code
commoditiesstring[]Regulated commodities handled
registration_numberstringOfficial registration/licence number (optional)
{
  "type": "foundation.protocols.eudr.actor_registration",
  "state_key": "@frm-gh-0042:coop.averdine.net",
  "content": {
    "actor_id": "@frm-gh-0042:coop.averdine.net",
    "role": "farmer",
    "organization": "Kumasi Organic Cocoa Cooperative",
    "country": "GH",
    "commodities": ["cocoa"],
    "registration_number": "GH-COC-2024-0042"
  }
}
Timeline Event

foundation.protocols.eudr.plot_geolocation

Farm plot coordinates in GeoJSON format (WGS84). Single GPS point for plots <4 hectares, polygon boundaries for plots ≥4 hectares, per EUDR Article 9(1)(d).

FieldTypeDescription
plot_idstringUnique plot identifier
farmer_idstringMatrix user ID of the plot owner
geojsonobjectGeoJSON Feature (Point or Polygon, WGS84)
area_hectaresnumberPlot area in hectares
commoditystringPrimary commodity grown
recorded_atstringISO 8601 timestamp of GPS recording
{
  "type": "foundation.protocols.eudr.plot_geolocation",
  "content": {
    "plot_id": "PLT-GH-0042-A",
    "farmer_id": "@frm-gh-0042:coop.averdine.net",
    "geojson": {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [-1.6221, 6.6885]
      },
      "properties": { "crs": "EPSG:4326" }
    },
    "area_hectares": 2.3,
    "commodity": "cocoa",
    "recorded_at": "2026-01-15T09:30:00Z"
  }
}
Timeline Event

foundation.protocols.eudr.deforestation_check

Satellite-verified deforestation status against the 31 December 2020 cutoff date. Sources: Sentinel-2, Landsat, Hansen Global Forest Change, JRC Forest Maps.

FieldTypeDescription
plot_idstringPlot being verified
resultstringVerification result
Values: deforestation_free, deforestation_detected, inconclusive, insufficient_data
confidencenumberConfidence score 0.0–1.0
satellite_sourcestringPrimary satellite data source used
analysis_datestringISO 8601 date of analysis
reference_imagesobject[]Satellite image references with MXC URIs (optional)
cutoff_datestringRegulatory cutoff date (default: 2020-12-31)
verified_bystringMatrix user ID or ai_service
{
  "type": "foundation.protocols.eudr.deforestation_check",
  "content": {
    "plot_id": "PLT-GH-0042-A",
    "result": "deforestation_free",
    "confidence": 0.94,
    "satellite_source": "Sentinel-2",
    "analysis_date": "2026-02-10",
    "cutoff_date": "2020-12-31",
    "verified_by": "ai_service",
    "reference_images": [
      {
        "date": "2020-06-15",
        "source": "Sentinel-2",
        "mxc_uri": "mxc://averdine.net/sat-img-pre-2020"
      },
      {
        "date": "2026-02-01",
        "source": "Sentinel-2",
        "mxc_uri": "mxc://averdine.net/sat-img-current"
      }
    ]
  }
}
Timeline Event

foundation.protocols.eudr.harvest_record

Harvest event linked to a verified plot. Records the quantity, date, and commodity harvested. Must reference a plot with a passing deforestation_check.

FieldTypeDescription
harvest_idstringUnique harvest identifier
plot_idstringVerified plot this harvest comes from
farmer_idstringFarmer Matrix user ID
commoditystringCommodity harvested
quantity_kgnumberHarvest weight in kilograms
harvest_datestringISO 8601 date of harvest
deforestation_check_refstringEvent ID of the linked deforestation check
{
  "type": "foundation.protocols.eudr.harvest_record",
  "content": {
    "harvest_id": "HRV-GH-0042-2026-Q1",
    "plot_id": "PLT-GH-0042-A",
    "farmer_id": "@frm-gh-0042:coop.averdine.net",
    "commodity": "cocoa",
    "quantity_kg": 320,
    "harvest_date": "2026-03-01",
    "deforestation_check_ref": "$deforestation_check_event_id"
  }
}
Timeline Event

foundation.protocols.eudr.chain_of_custody

Transfer between supply chain actors. Each transfer creates a new edge in the chain-of-custody DAG, linking the commodity from origin plot to final EU operator.

FieldTypeDescription
transfer_idstringUnique transfer identifier
from_actorstringMatrix user ID of sender
to_actorstringMatrix user ID of receiver
commoditystringCommodity being transferred
quantity_kgnumberQuantity in kilograms
source_refsstring[]Event IDs of source harvests or upstream transfers
transfer_datestringISO 8601 date
transport_methodstringHow the commodity was transported (optional)
{
  "type": "foundation.protocols.eudr.chain_of_custody",
  "content": {
    "transfer_id": "COC-GH-2026-0099",
    "from_actor": "@frm-gh-0042:coop.averdine.net",
    "to_actor": "@trd-gh-0099:trade.averdine.net",
    "commodity": "cocoa",
    "quantity_kg": 320,
    "source_refs": ["$harvest_record_event_id"],
    "transfer_date": "2026-03-05",
    "transport_method": "road"
  }
}
Timeline Event

foundation.protocols.eudr.processing_event

Processing step in the supply chain: drying, hulling, roasting, milling, etc. Records input and output quantities for mass balance tracking.

FieldTypeDescription
processing_idstringUnique processing step identifier
processor_idstringProcessor Matrix user ID
process_typestringType of processing performed
Values: drying, hulling, roasting, milling, refining, packaging, ...
input_refsstring[]Event IDs of input chain_of_custody transfers
input_quantity_kgnumberInput weight in kilograms
output_quantity_kgnumberOutput weight in kilograms
processing_datestringISO 8601 date
{
  "type": "foundation.protocols.eudr.processing_event",
  "content": {
    "processing_id": "PRC-GH-2026-0050",
    "processor_id": "@prc-gh-0099:proc.averdine.net",
    "process_type": "drying",
    "input_refs": ["$chain_of_custody_event_id"],
    "input_quantity_kg": 320,
    "output_quantity_kg": 256,
    "processing_date": "2026-03-10"
  }
}
Timeline Event

foundation.protocols.eudr.risk_assessment

AI or manual risk assessment for a shipment or supply chain actor. Combines country benchmark, actor history, satellite data, and compliance document status.

FieldTypeDescription
assessment_idstringUnique assessment identifier
target_typestringWhat is being assessed
Values: shipment, actor, plot, supply_chain
target_refstringEvent ID or actor ID being assessed
risk_levelstringOverall risk level
Values: low, standard, high
risk_factorsobject[]Individual risk factor assessments
assessed_bystringMatrix user ID or ai_service
assessment_datestringISO 8601 date
{
  "type": "foundation.protocols.eudr.risk_assessment",
  "content": {
    "assessment_id": "RSK-GH-2026-0042",
    "target_type": "shipment",
    "target_ref": "$chain_of_custody_event_id",
    "risk_level": "low",
    "risk_factors": [
      { "factor": "country_benchmark", "level": "standard", "source": "EU Commission" },
      { "factor": "deforestation_check", "level": "low", "confidence": 0.94 },
      { "factor": "actor_history", "level": "low", "note": "3 years clean record" }
    ],
    "assessed_by": "ai_service",
    "assessment_date": "2026-03-12"
  }
}
Timeline Event

foundation.protocols.eudr.dds_draft

Draft Due Diligence Statement assembled from room data. Contains all required EUDR fields for the EU operator to review before submission to TRACES NT.

FieldTypeDescription
dds_idstringUnique DDS identifier
operator_idstringEU operator Matrix user ID
commoditystringRegulated commodity
country_of_originstringISO 3166-1 country code
plot_refsstring[]Event IDs of linked plot_geolocation events
deforestation_refsstring[]Event IDs of linked deforestation_check events
chain_of_custody_refsstring[]Event IDs of the full chain
risk_assessment_refstringEvent ID of the risk assessment
total_quantity_kgnumberTotal import quantity
statusstringDraft status
Values: draft, under_review, approved, rejected
{
  "type": "foundation.protocols.eudr.dds_draft",
  "content": {
    "dds_id": "DDS-DE-2026-0001",
    "operator_id": "@op-de-aver-001:eu.averdine.net",
    "commodity": "cocoa",
    "country_of_origin": "GH",
    "plot_refs": ["$plot_geolocation_event_id"],
    "deforestation_refs": ["$deforestation_check_event_id"],
    "chain_of_custody_refs": [
      "$coc_farmer_to_trader",
      "$coc_trader_to_processor",
      "$coc_processor_to_exporter",
      "$coc_exporter_to_operator"
    ],
    "risk_assessment_ref": "$risk_assessment_event_id",
    "total_quantity_kg": 256,
    "status": "under_review"
  }
}
Timeline Event

foundation.protocols.eudr.dds_submitted

Confirmation of DDS submission to the EU TRACES NT system. Includes the TRACES reference number for regulatory audit trail.

FieldTypeDescription
dds_idstringLinks to the dds_draft event
traces_referencestringTRACES NT submission reference number
submitted_bystringEU operator Matrix user ID
submitted_atstringISO 8601 timestamp of submission
statusstringSubmission status
Values: submitted, accepted, rejected, under_review
{
  "type": "foundation.protocols.eudr.dds_submitted",
  "content": {
    "dds_id": "DDS-DE-2026-0001",
    "traces_reference": "TRACES-NT-2026-DE-COCOA-00421",
    "submitted_by": "@op-de-aver-001:eu.averdine.net",
    "submitted_at": "2026-03-15T14:30:00Z",
    "status": "submitted"
  }
}
State Event

foundation.protocols.eudr.country_benchmark

Country risk benchmarking data from the EU Commission. State key is the ISO country code. Used by risk_assessment events to factor in country-level risk.

FieldTypeDescription
countrystringISO 3166-1 alpha-2 country code
risk_categorystringEU Commission risk category
Values: low, standard, high
assessment_datestringDate of EU Commission assessment
sourcestringSource reference
notesstringAdditional context (optional)
{
  "type": "foundation.protocols.eudr.country_benchmark",
  "state_key": "GH",
  "content": {
    "country": "GH",
    "risk_category": "standard",
    "assessment_date": "2025-12-30",
    "source": "EU Commission EUDR Country Benchmarking, Dec 2025",
    "notes": "Ghana classified as standard risk for cocoa and wood"
  }
}

Supply Chain Actor Roles

EUDR rooms use Matrix power levels to enforce supply chain hierarchy.

ActorPower LevelMXID Pattern
Farmer40@frm-gh-0042:coop.averdine.net
Local Trader50@trd-gh-0099:trade.averdine.net
Processor60@prc-gh-0099:proc.averdine.net
Exporter70@exp-gh-0200:export.averdine.net
EU Operator80@op-de-aver-001:eu.averdine.net
AI EUDR Service75(bot)

AI Governance Integration

AI-driven EUDR operations (deforestation checks, risk assessments) are wrapped in the general ai.* governance flow:

AI EUDR Service proposes deforestation check ai.intention (risk_level: "high") Compliance officer reviews ai.decision (approved) Service executes satellite analysis ai.effect (outcome: "deforestation_free", confidence: 0.94) eudr.deforestation_check (linked to effect)

DDS Workflow

7-stage pipeline from data submission to regulatory confirmation:

1. Data Submission (plot, harvest, chain-of-custody events) 2. Geolocation & Deforestation Verification (satellite analysis) 3. Validation (legal compliance, risk assessment) 4. DDS Generation eudr.dds_draft 5. Operator Review (EU operator approves or requests changes) 6. TRACES NT Submission eudr.dds_submitted 7. Confirmation (TRACES reference number recorded)