Keep Salesforce and your internal data warehouse in lockstep — without the brittle middleware.
This workflow runs on a 5-minute trigger, polling both Salesforce and your SQL warehouse for record changes. A diff resolver decides which side wins (Salesforce as source-of-truth by default), and any conflicts are dropped into a Slack channel for human review. Error nodes auto-retry transient failures up to 3 times with exponential backoff.
Records flow both ways with a configurable winner-policy per object type.
When two systems disagree, the row goes to Slack with a one-click resolve action.
Self-hosted or cloud — both work. Use the import button and paste the JSON, then map credentials.
npm install -g n8n n8n start
Create a connected app in Salesforce, enable refresh tokens, and paste client ID + secret into the n8n credential.
Update the SQL node host/db/user. The workflow ships with Postgres dialect — switch to MySQL by toggling the node type.