A toy sold into the US, the EU and the UK needs paperwork from three regimes that do not share a vocabulary. The failure mode is not missing certificates. It is having all of them and still being unable to answer "is SKU 4417 clear to ship to Germany next Tuesday".
Start from the SKU, not the standard
The instinct is to organise compliance by certificate. That produces a folder of PDFs sorted by issuing lab, which is the one dimension nobody queries by.
Organise by SKU instead, with the standard as a column:
| sku | regime | standard | test_report_id | valid_until | restricted_substances | age_grading |
|---|---|---|---|---|---|---|
| SQ-4417 | US | CPSIA + ASTM F963 | TR-88213 | 2027-03-01 | phthalates 8P | 3+ |
| SQ-4417 | EU | EN71-1/2/3 | TR-88214 | 2027-03-01 | 19 metals | 3+ |
| SQ-4417 | UK | UKCA (EN71 adopt) | TR-88214 | 2027-03-01 | 19 metals | 3+ |
One SKU, three rows. Now "can this ship" is a filtered lookup rather than an archaeology project.
The fields people leave out
valid_until. Test reports expire — usually one year for the lab, longer for the buyer's patience. A report with no expiry field silently becomes permanent.
restricted_substances as a count, not a claim. "Phthalates compliant" is not a value. "Phthalates 8P" tells you whether the report covers the six the US requires or the eight the EU asks for. The gap is where recalls live.
age_grading reconciliation. US age grading and EU age grading are decided on different bases and routinely disagree for the same plush. If the matrix carries one column, the disagreement gets papered over by whoever touches the file last.
Where the three regimes actually diverge
CPSIA is substance-led and applies to children's products broadly. EN71 is test-led across mechanical, flammability and migration. ASTM F963 overlaps EN71-1 heavily on mechanics but diverges on labelling and on the small-parts cylinder test for certain age bands.
In practice: a report that satisfies EN71 usually gets you most of the way to ASTM F963 on mechanics, and none of the way on CPSIA's tracking-label and certificate requirements.
Keep it queryable
We generate the matrix from a single CSV and render the buyer-facing PDF from it. The compliance folder becomes an output, not the source of truth. When a lab reissues a report, one row changes and both artefacts regenerate.
More on how imported toys are checked against these regimes, including the Amazon-specific overlay, is in our notes on CPSIA and Amazon toy compliance, and the broader standards map for importers is in toy safety standards and certifications.
The uncomfortable part
Half the disputes we see are not about whether a test passed. They are about whether the tested item is the shipped item. The matrix does not solve that; a sealed golden sample per SKU and a photo ID per revision does.
