PPWR Packaging
Give your compliance and operations teams one audited system of record for packaging specifications, bills of materials, and product assignments — reviewed, approved, and versioned inside your own Magento admin, instead of a shared spreadsheet nobody fully trusts.
Latest version: 0.3.0 — changelog
Technical preview (v0.3.0). This release covers packaging master data and catalog assignment — the data-capture half of an EU PPWR/EPR program. It does not include fulfilment manifest capture, dispatch recognition, a transactional outbox, an immutable EPR ledger, external-movements ingestion, source-period closure, reconciliation, report finalization, a country/Member-State adapter, or storefront labelling.
qoliber/ppwr-fulfillmentandqoliber/ppwr-eprship in this release as empty module shells, kept in the metapackage's require list for forward compatibility only — see Modules and the changelog. The regulatory code lists shipped with this release are provisional placeholder data, pending a regulatory review gate — see Configuration. This extension does not determine legal compliance with PPWR or any national EPR scheme; it helps you capture data a compliance team can use as one input among others.

Why it matters
- One audited home for packaging data. Every packaging spec and revision goes through a draft → in_review → approved → superseded workflow with a completeness gate — an approved revision is permanent history, not an editable row that can quietly change under you.
- Packaging entry built for speed. Quick Create records a packaging spec, its first revision, and its material components in a single form, rather than assembling three separate records by hand.
- Know which packaging applies to which product — including in the past. Catalog assignment is bitemporal: resolution across simple, configurable, bundle, grouped, virtual, and downloadable products is deterministic, and history survives even if the product itself is later deleted.
- Bulk data entry that tells you what failed, and why. The dedicated assignment CSV importer reports success and failure per row instead of aborting the whole batch on the first bad line.
- Article 22 supplier-side traceability evidence, tied to a real transaction. Recording a supply transaction is an explicit admin/API action with enforced retention — approving a revision never fabricates one.
What you get
| Feature | Benefit |
|---|---|
| Packaging specs & immutable revisions (draft → in_review → approved → superseded) | Every packaging change is reviewed and kept as permanent history — nothing silently overwrites an approved record |
| Quick Create | Record a new packaging item — spec, revision, and components — in one form |
| Packaging recipes / BOM editor | Model exactly which packaging items and quantities apply to a product or a shipment, with calculation-basis-driven math |
| Catalog assignment (bitemporal, system-versioned) | Know, for any product now or in the past, which packaging recipe applied |
| Assignment CSV import/export | Move packaging assignments in bulk, with a per-row error report and a completeness view of unassigned products |
| Article 22 supply-transaction recording | Keep supplier-side traceability evidence tied to a real transaction, with retention derived automatically |
| Regulatory code lists (versioned, audited activation) | Start from a material-category / packaging-level / recognition-rule taxonomy instead of a blank sheet — provisional, pending your own regulatory review |
| REST API | Automate packaging data management — specs, revisions, recipes, traceability, and assignments, all ACL-gated |
Why merchants pick this
- API-first. Every capability above a plain CRUD form — specs, revisions, recipes, recipe items, traceability, and assignments — is also a REST endpoint, ACL-gated the same way the admin UI is. See the API reference.
- No SaaS in the path. Packaging data, documents, and the audit trail all live in your own database (and your own storage, local or S3); nothing about recording or resolving packaging data calls a third-party service.

Supported versions: PHP 8.1–8.5. Requires magento/framework ^103.0,
magento/module-backend ^102.0, magento/module-store ^101.1,
magento/module-config ^101.2, magento/module-ui ^101.2 — Magento Open
Source, Adobe Commerce, or Mage-OS on a compatible release line.
Next steps
- Install PPWR Packaging
- Configure it
- Per-module reference — all 5 modules, including the two forward-compatibility shells
- Talk to us about licensing