Most FHIR work stalls in the same place. You have a real payload that reproduces the bug, and you cannot put it in a ticket, a test fixture, or a screen share. So you hand-edit a copy, miss a field, and end up debugging your redaction instead of the thing you were chasing.
The factory is the way out of that loop: wash, check, compare — three tools that hand off to each other, all running on synthetic data you can actually share.
Bring your own payload, or don't
You do not need a real payload to try this. The Washer ships with sample payloads you can load, Compare has a built-in example with a deliberate resource gap and two field drifts, and the Workbench has a Scenario Library of synthetic PAS bundles — on every channel, stable production included. File upload is switched off on stable production, so paste your payload in rather than uploading it.
If you do bring your own: it must already be synthetic or properly de-identified. The Washer produces test data — it is not a HIPAA de-identification method, and it does not make PHI safe to paste.
What you end up with
A synthetic payload that keeps the shape of the real one, a conformance report from the validator build this site runs, and a field-level diff you can walk a partner through. The Washer replaces the patient and member identifying fields it recognizes with synthetic stand-ins — it is not HIPAA de-identification, and whether a result is safe to share stays your judgement, not this page's promise.
Provider and facility identity, including names, NPIs and addresses, passes through unchanged, and clinical notes are cleared rather than replaced. That is a permanent design decision, not a gap: provider and site data is public reference data, and the provider-to-site relationships have to survive intact or the payload stops exercising what it was collected for. It also means washed output can still carry real provider and facility identity — check before you share.