Reconciliation
A scheduled full compare that finds and repairs records which webhooks or incremental syncs left out of step.
See it
What it is
Reconciliation is a periodic full comparison between a source of truth and the system meant to mirror it. Incremental syncs and webhooks handle the fast path; reconciliation finds what they missed, such as a lost event, a poisoned queue message, a mapping bug, or a manual database edit. It then repairs the mismatch or puts it in a review queue. The word comes from accounting, where you tick your own ledger line by line against the bank statement.
Reach for it whenever correctness matters more than trusting delivery forever: payments, entitlements, inventory, CRM syncs, and analytics exports. Compare stable IDs and canonical fields in bounded pages. Hashes can cheaply identify likely mismatches, but fetch and compare the actual values before changing anything.
A repair job can amplify a bad rule across every record. Run it in report-only mode first, cap the number of automatic changes per run, and keep an audit log. Also choose one authority for each field. If both systems blindly repair each other, they can flip the same value back and forth forever.
Ask AI for it
Build a nightly reconciliation job between Salesforce Accounts and the PostgreSQL account mirror. Page through every Salesforce record by Source_Account_ID__c, canonicalize the owned fields, compute a SHA-256 hash, and compare it with the local row. Classify missing, extra, and different records; default to report-only mode; and repair only fields for which Salesforce is authoritative. Cap automatic repairs at 100 per run, send larger drift to a review queue, persist before and after values in an audit table, and emit counts for scanned, matched, drifted, fixed, and failed records.