The pattern underneath all of this
Every entry point into Dataverse is a separate duplicate-prevention problem.
Native duplicate detection was built for the UI: a user fills in a form and hits save. That's the scenario it handles reliably. The Web API, bulk imports, integration syncs, and automated flows are architecturally separate entry points, and under the current model each one needs its own fix.
A single-system migration with no integrations might get by on the header flag or a post-load cleanup job. CE implementations rarely look like that: most involve a legacy CRM, at least one integration running at go-live, and custom entities nobody's written a plugin for. Every entry point that gets missed becomes a cost, one that lands at go-live or three weeks after, when the client calls.
What a Dataverse-level prevention layer looks like
Plauti installs directly from Microsoft Marketplace and runs entirely inside your Dataverse environment: no external access, no middleware, no data leaving the environment.
It checks for duplicates at every entry point, form saves, bulk imports, Web API calls, and integration syncs, without requiring each one to be configured separately. It works across every standard and custom Dataverse table, not just Account, Contact, and Lead, and there's no 5,000-record ceiling on bulk jobs.
For partners, that means the duplicate-prevention workstream gets scoped and handled once instead of re-solved with a different workaround on every project.