# Audit CRM Sync

Identify records that differ between your primary CRM and a connected system, then report discrepancies for remediation.

## Inputs

- **Primary CRM** — your authoritative CRM system (e.g., Microcrm, HubSpot, Salesforce).
- **Connected system** — the external app to validate against (e.g., email platform, workflow engine).
- **Record type** — which entity to audit: contacts, accounts, deals, custom objects. Default: contacts.
- **Comparison fields** — comma-separated fields to diff (e.g., email, phone, status). Default: all mapped fields.
- **Report format** — output destination: inline summary, CSV export, or board task comment. Default: inline summary.

## Steps

1. Identify the API credentials and endpoints for both {Primary CRM} and {Connected system}.
2. Fetch all records of {Record type} from {Primary CRM}, noting creation date, last update, and {Comparison fields}.
3. Fetch the corresponding records from {Connected system}, using shared identifiers (e.g., email, external ID).
4. Compare each pair field-by-field; log mismatches (e.g., "email differs", "status out of sync").
5. Categorize discrepancies: missing in target, conflicting values, stale timestamps.
6. Generate a {Report format} output: summary count, top 10 mismatches, remediation guidance (update/delete/manual review).
7. If significant drift detected (>5% records), flag for deeper investigation or escalate via email alert.

## Constraints

- Audit only runs during low-traffic windows to avoid API rate limits (schedule for off-peak hours if possible).
- Do not auto-correct records; report and wait for manual approval before any updates.
- Large datasets (>50k records) may require batching; plan for multiple runs if needed.

Done when: You have a documented list of all mismatched records with clear categorization and a recommended action for each.