Support teams live in Salesforce. IT and engineering live in ServiceNow. Without a working ServiceNow Salesforce integration, every case that needs an internal fix gets copy-pasted by hand between the two — and someone always forgets to update the other side. This guide covers the three real ways to connect the platforms, the actual setup steps for the most common one, and where each method tends to break in practice.
1Why Integrate ServiceNow with Salesforce?
Salesforce holds the customer record — cases, accounts, contracts, entitlements. ServiceNow holds the operational record — incidents, problems, change requests, IT asset data. The moment a customer-facing case needs backend engineering or IT involvement, that case has to exist in both systems, or someone is manually retyping it. That’s the entire reason ServiceNow integration with Salesforce shows up on so many IT roadmaps: it’s rarely about a nice-to-have, it’s about closing a gap that’s already costing agents time every day.
- Faster case escalation: A Salesforce case that needs an internal fix creates a matching ServiceNow incident automatically, instead of an agent pasting details into a second tool.
- Fewer status-update tickets: When ServiceNow updates a linked record, the Salesforce case reflects it without someone manually closing the loop.
- Cleaner reporting: Leadership can see case-to-resolution time across both systems without reconciling two exports by hand.
- Less duplicate data entry: Account and contact data created in Salesforce doesn’t have to be rebuilt from scratch in ServiceNow’s CMDB or user tables.
What it won’t do is fix a workflow that’s broken for reasons that have nothing to do with data sync — a ServiceNow Salesforce integration moves data between two systems faster; it doesn’t decide what should happen to that data. That part is still your team’s call.
2What This Integration Actually Does
Before picking a method, it helps to be precise about what’s actually happening under the hood, because most vendor pages blur this. There is no single official “ServiceNow ↔ Salesforce” button. What exists is a small set of connection layers, each with a different owner and a different failure mode:
How the three connection layers differ
| Layer | What It Does | Who Maintains It |
|---|---|---|
| ServiceNow Salesforce Integration Spoke | A pre-built app inside ServiceNow’s IntegrationHub that connects to Salesforce’s REST API using triggers and actions, mostly one-directional into ServiceNow | ServiceNow (official, listed in the ServiceNow Store) |
| Direct REST API integration | Custom scripts or scheduled jobs that call Salesforce’s and ServiceNow’s own REST APIs directly, built and owned in-house | Your own developers or a systems integrator |
| Third-party iPaaS / sync tool | A middle-layer platform (e.g. Unito, Workato, Jitterbit, Boomi) that maintains its own connectors to both systems and handles field mapping and two-way sync | The third-party vendor |
3Prerequisites Before You Start
- Admin access on both sides. You’ll need ServiceNow admin privileges to install the Integration Hub Spoke, and Salesforce Setup access to create a Connected App.
- ServiceNow IntegrationHub license. The Salesforce Spoke runs on IntegrationHub, which isn’t included in every ServiceNow plan — check your instance’s active plugins first.
- A supported Salesforce edition/module. Sales Cloud, Service Cloud, and most standard Salesforce modules are supported; confirm your specific edition against ServiceNow’s compatibility notes before you start.
- A decision on sync direction. Decide up front whether you need one-way (Salesforce → ServiceNow), or true two-way sync — this determines which of the three methods above you should actually be setting up.
- A field-mapping plan. List which Salesforce fields (Case, Account, Contact) map to which ServiceNow fields (Incident, Account, User) before you touch configuration — retrofitting field mapping after go-live is where most rework happens.
4Step-by-Step: How to Integrate ServiceNow with Salesforce
This walks through the most common path — the official Salesforce Integration Spoke inside ServiceNow’s IntegrationHub. It’s the lowest-code route and the one most teams reach for first.
- Create a Connected App in Salesforce. In Salesforce, go to Setup → App Manager → New Connected App. Give it a name, enable OAuth settings, and set a callback URL (ServiceNow will provide this during connection setup).
- Generate and save your API credentials. Once the Connected App is created, Salesforce issues a Consumer Key and Consumer Secret. Save both securely — you’ll enter them into ServiceNow in the next step, and they won’t be shown again in full.
- Install the Salesforce Integration Spoke in ServiceNow. Go to System Definition → Plugins, search for “Salesforce Integration Spoke,” and install the application.
- Create the connection and credential alias. In ServiceNow’s filter navigator, search “Salesforce Integration Spoke – Connection & Credential Aliases,” open the record, and enter the Consumer Key and Consumer Secret from Salesforce along with your Salesforce instance URL.
- Authenticate and validate the connection. Save the record and run the built-in validation check. A failed validation here is almost always a mismatched callback URL or an expired Consumer Secret — recheck both before assuming it’s a deeper issue.
- Build your sync rules. Define which Salesforce objects (Cases, Accounts, Contacts) should trigger actions in ServiceNow, and under what conditions — using SOQL filters on the Salesforce side and ServiceNow’s condition builder on the incident side.
- Publish and run a test sync. Create a test Case in Salesforce that matches your trigger conditions and confirm a corresponding record appears correctly in ServiceNow before rolling this out to live data.
- Monitor the Activity Dashboard. The Spoke includes a dashboard showing sync activity and errors in real time — check it daily for the first couple of weeks rather than assuming silence means everything is working.
If what you actually need is two-way sync with conflict resolution — not just Salesforce pushing into ServiceNow — the Spoke alone won’t get you there. That’s the point where most teams either write custom middleware on top of it or switch to a dedicated iPaaS platform built for bidirectional sync from day one.
5Integration Methods Compared
Which method fits which situation
| Method | Setup Effort | Sync Direction | Best For |
|---|---|---|---|
| Salesforce Integration Spoke | Low-code, config-based, a few hours to a couple of days | Primarily one-way (Salesforce → ServiceNow) | Teams that mainly need Salesforce cases to spawn ServiceNow incidents automatically |
| Direct REST API integration | High — requires development resources and ongoing maintenance | Whatever you build — fully customizable | Organizations with dedicated integration teams and highly specific, stable requirements |
| Third-party iPaaS (Unito, Workato, Jitterbit, etc.) | Moderate — vendor-managed connectors, visual rule builder | True two-way sync with field-level conflict rules | Teams that need real bidirectional sync without building and maintaining it in-house |
6What You Can Do Once Connected
Common workflows once ServiceNow and Salesforce are talking to each other
| Use Case | What Happens | Typical Trigger |
|---|---|---|
| Case-to-incident escalation | A Salesforce Case matching set conditions automatically creates a linked ServiceNow Incident | Case field value (e.g. priority, category) meets a defined rule |
| Status sync back to support | ServiceNow incident status updates reflect on the linked Salesforce Case automatically | Incident state change in ServiceNow |
| Account and contact sync | Salesforce Account/Contact records populate matching ServiceNow CMDB or user records without manual re-entry | New or updated Account/Contact in Salesforce |
| Cross-platform reporting | Case resolution times can be tracked end-to-end across both systems in a single dashboard | Scheduled report pull or embedded dashboard |
7Troubleshooting Common Issues
Connection validation keeps failing
This is almost always a mismatched OAuth callback URL between the Connected App in Salesforce and the alias record in ServiceNow, or a Consumer Secret that was regenerated in Salesforce after it was first entered in ServiceNow. Re-copy both values directly rather than assuming they’re still current.
Records sync one way but not the other
If you’re on the Salesforce Integration Spoke and expecting two-way updates, this isn’t a bug — the Spoke is built primarily for one-directional data pulls into ServiceNow. True two-way sync needs either custom logic on top of it or a dedicated iPaaS tool.
Duplicate incidents are being created for the same case
Check your trigger conditions for overlap — a common cause is a SOQL filter that re-matches an already-synced Case after a minor field update, rather than only matching on creation. Tighten the trigger to fire once per Case, not on every field change.
Multiple Salesforce tenants report credential errors on the second connection
When configuring more than one child connection under the same Spoke alias, each Salesforce org needs its own fully separate Connected App and credentials — reusing one Connected App’s keys across multiple orgs is a frequent cause of validation failures on the second and later connections.
Sync worked in testing but stopped after go-live
Check the Activity Dashboard for silent errors first — API rate limits, expired tokens, or a field that was renamed in either system after testing are the usual culprits, and they rarely surface as a visible outage.
8Is This Integration Right for You?
If your support team is mostly just filing tickets that IT reads and closes without needing status updates back in Salesforce, the Salesforce Integration Spoke’s one-way sync is usually enough, and it’s the fastest path to stop manual copy-paste work. If your support and engineering teams both need live visibility into the same case as it moves — status changes reflected in both directions, in real time — plan for either custom API development or a dedicated iPaaS platform from the start, rather than trying to stretch the Spoke past what it’s built for.
For smaller teams running a handful of escalations a week, it’s also worth asking whether a lighter manual handoff process is genuinely slower than the ongoing maintenance an integration adds — not every team needs this solved with automation on day one.
