EPU Commercial Acquisition and Procurement Service Extension
1. Purpose
This document extends the EPU Canonical Object and Service Model with implementation contracts required for three first-class EPU capabilities:
- Supplier Product Data Onboarding;
- Anticipatory Sustainability Acquisition;
- Procurement Sustainability Intelligence.
It does not change the core rule that EPU is a thin product identity. Commercial events, requirements, supplier contributions, prices, internal carbon policies and procurement calculations remain separate governed objects/services connected through EPU context.
2. Module responsibility boundary
| Responsibility | Primary authority |
|---|---|
| Product identity, graph context, requirement/product orchestration | SIS / EPU |
| Source-system and procurement-event ingestion | Input Hub / ACF connectors |
| Regulatory/standards requirement lineage | Pergamum Pulse |
| Supplier product-data source ingestion | Input Hub + EPU resolution |
| PCF, normalization, financial-impact and scenario calculations | Computation Hub / MICE |
| Evidence quality and assurance | TrustGate / verifier services |
| Decision/report presentation | Reports & Insights / consuming UX |
No ERP connector should contain hard-coded ESG requirement logic, and EPU must not duplicate MICE calculations or Pergamum regulatory authority.
3. Additional canonical object contracts
3.1 SupplierProductDataConnection
SupplierProductDataConnection
├── connection_id
├── supplier_eco_id
├── source_system_type
├── source_system_ref
├── connection_mode
├── authority_profile_ref
├── synchronization_policy_ref
├── access_policy_ref
├── status
├── last_successful_sync
└── provenance_ref
Represents the governed relationship to supplier product infrastructure, not credentials or connector secrets.
3.2 ProductInformationProfile
ProductInformationProfile
├── profile_id
├── profile_type
├── schema_version
├── required_fields[]
├── optional_fields[]
├── evidence_expectations[]
├── authority_expectations[]
├── validity_rules[]
└── policy_ref
Profiles support reusable machine-readable requests such as chemical declaration, PCF, recycled content or DPP-readiness information.
3.3 RequirementSet
RequirementSet
├── requirement_set_id
├── epu_id
├── scope_refs[]
├── trigger_event_ref
├── requirement_items[]
├── source_requirement_refs[]
├── applicability_context
├── effective_period
├── priority
├── confidence
└── provenance_ref
3.4 RequirementSatisfaction
RequirementSatisfaction
├── satisfaction_id
├── requirement_item_ref
├── epu_id
├── scope_ref
├── state
├── satisfying_data_refs[]
├── evidence_refs[]
├── trust_state
├── evaluated_at
├── valid_until?
└── provenance_ref
States should include NOT_APPLICABLE, SATISFIED, SATISFIED_ESTIMATED, SATISFIED_SECONDARY_DATA, MISSING, REQUESTED, SUBMITTED, VALIDATING, INSUFFICIENT, EXPIRED, VERIFIED and WAIVED.
3.5 DataAuthorityDecision
DataAuthorityDecision
├── decision_id
├── requirement_item_ref
├── scope_ref
├── candidate_authorities[]
├── selected_authority_ref
├── authority_role
├── confidence
├── policy_version
├── rationale
└── provenance_ref
3.6 AcquisitionPlan
AcquisitionPlan
├── acquisition_plan_id
├── requirement_set_id
├── unresolved_requirement_refs[]
├── trigger_event_ref
├── commercial_context_ref?
├── selected_action
├── target_authority_refs[]
├── requested_information_profiles[]
├── priority
├── due_context
├── policy_version
└── provenance_ref
3.7 ComparabilityAssessment
ComparabilityAssessment
├── assessment_id
├── candidate_result_refs[]
├── product_scope_refs[]
├── functional_unit_profile
├── boundary_profile
├── method_profile
├── normalization_actions[]