Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
DictionarySSalesforce Connect
PlatformIntermediate

Salesforce Connect

Salesforce Connect is the Salesforce feature that lets you query and display data from external systems as if it lived in Salesforce, without actually importing or syncing it.

§ 01

Definition

Salesforce Connect is the Salesforce feature that lets you query and display data from external systems as if it lived in Salesforce, without actually importing or syncing it. The external data appears as External Objects (with API names ending in __x), behaves like custom objects in Salesforce UI and reports, but reads live from the source system on demand via OData, REST, or a custom adapter. The data never copies into Salesforce; every query hits the source.

Salesforce Connect targets read-mostly integration scenarios where copying data into Salesforce would be expensive (large data volumes), stale (the source changes constantly), or compliance-restricted (the data cannot leave the source system). Typical use cases: an ERP order history surfaced on Account records, a data warehouse customer view embedded in CRM, or a partner inventory feed referenced from Cases. Write operations are supported (custom adapters) but slower than internal record updates because every write hits the external system synchronously. Most Salesforce Connect deployments are read-heavy by design.

§ 02

How Salesforce Connect surfaces external data as native-feeling Salesforce records without copying it

External Objects and the __x suffix

External Objects look and behave like custom objects in most of the Salesforce UI: page layouts, list views, reports, related lists. Their API names end in __x instead of __c to mark them as external-backed. Custom fields on External Objects map to fields in the source system; the mapping is defined in the External Data Source configuration. From a user perspective, External Objects feel native; from an architect perspective, they require careful planning around query performance and source-system load.

The four adapter types

Salesforce Connect supports four adapter types. OData 2.0 and OData 4.0 (standard protocols for relational-style external systems; many ERP and data warehouse products expose OData). Cross-org (one Salesforce org reading from another). Custom Apex adapter (Apex class implementing the DataSource.Provider interface to talk to any REST or proprietary API). Pick based on source-system capabilities; OData is the easiest if available, custom Apex is the catch-all.

Indirect lookup and external lookup relationships

External Objects relate to standard or custom Salesforce objects via two relationship types. Indirect Lookup uses a custom field on the external object that matches a Salesforce field by value (Customer Number on the external Orders matches Account.Customer_Number__c). External Lookup uses the External Object''s own primary key. Both relationships let Salesforce build the parent-child experience: a related list of external Orders on the Account page, navigable from the standard Salesforce UI.

Performance and the per-call latency

Every list view, report, or related list on External Objects triggers a live query to the source system. The Salesforce UI waits for the response before rendering. Slow source systems make Salesforce feel slow; a 3-second response on the ERP query makes the entire Account page take 3 seconds to load. This is the biggest design constraint of Salesforce Connect; the source must be fast and reliable, or users blame Salesforce for the latency. Caching is limited to a few minutes via the High Data Volume option for OData adapters.

Writing back to the external system

Salesforce Connect supports DML on External Objects when the adapter implements the right interfaces. OData adapters can write if the source server exposes write endpoints; custom Apex adapters write via whatever logic the developer codes. Writes are synchronous: insert an external record from Salesforce, the platform calls the source, waits for confirmation, and surfaces success or failure to the user. Bulk writes are expensive; the architecture suits one-at-a-time UI-driven writes, not nightly batch loads.

License costs and the per-object pricing

Salesforce Connect is sold per External Data Source per month. Pricing scales with the number of source systems you connect, not the volume of records queried. The base license includes a handful of OData connections; broader deployments need to license additional sources. Custom Apex adapters consume the same per-source license slot as OData; pricing is by connection count, not protocol. Budget per-source license alongside the org''s Salesforce edition cost.

Comparison to MuleSoft and Apex callouts

Three integration approaches share overlap. Salesforce Connect surfaces external data as External Objects with live queries on every read. MuleSoft (or another middleware) orchestrates and transforms data between systems, typically writing into native Salesforce objects. Apex callouts query external systems on demand and present results in custom UI components. Salesforce Connect fits when you want external data to look native and you can tolerate live-query latency. MuleSoft fits when you need transformation, orchestration, or asynchronous sync. Apex callouts fit when you want full control over the UI and integration logic.

§ 03

Setting up Salesforce Connect with an OData source

The pattern: configure the External Data Source, validate the connection, sync the External Object definitions, configure relationships, surface in the UI.

  1. Create the External Data Source

    Setup, External Data Sources, New. Pick the adapter type (OData 2.0, OData 4.0, Cross-Org, Custom). Enter the source URL and authentication. For OData, the URL is the OData service root; the platform discovers entity collections from the metadata document.

  2. Validate the connection and sync schema

    Click Validate and Sync. Salesforce fetches the source schema and lists every entity available. Pick which entities to expose as External Objects. The platform creates External Object definitions (api names ending __x) with auto-generated field mappings.

  3. Configure relationships

    On the External Object, add Indirect Lookup or External Lookup relationships to Salesforce objects. Indirect Lookup needs a matching field on the Salesforce side; External Lookup uses the External Object''s primary key.

  4. Add to page layouts and apps

    Edit page layouts on the parent objects (Account, Case) to add the External Object''s related list. Build list views on the External Object itself if direct browsing matters. Add to the Lightning navigation as appropriate.

  5. Monitor source performance

    Setup, External Data Sources, click into the source, view recent queries and response times. Slow source responses degrade the Salesforce UX; coordinate with the source-system team to ensure adequate performance.

Adapter typeremember

OData 2.0, OData 4.0, Cross-Org (Salesforce-to-Salesforce), Custom Apex (DataSource.Provider interface). Pick based on source capability.

High Data Volumeremember

OData option that caches query results briefly to reduce source-system load. Suitable when source data does not change second-by-second.

Authenticationremember

Anonymous, Per User (each user supplies credentials), Named Principal (one set of credentials for the entire org). Match to the source security model.

Writableremember

Read-only or read-write. Read-write requires the source to expose write endpoints and the adapter to support DML. Reads are universal; writes are not.

Gotchas
  • Every list view, report, or related list triggers a live source query. Slow sources make Salesforce feel slow; users blame Salesforce.
  • Bulk writes are expensive. Architecture suits UI-driven one-at-a-time writes, not nightly batch loads.
  • External Object reports cannot join to standard Salesforce reports natively. Use the cross-object lookup or build a Custom Report Type per case.
  • Cache is limited to a few minutes via High Data Volume. For truly real-time data, every query goes through. For semi-static, the cache helps.
  • Per-source licensing applies. Connecting five external sources costs more than connecting one, regardless of record volume.
§

Trust & references

Sources

Cross-checked against the following references.

Official documentation

Straight from the source - Salesforce's reference material on Salesforce Connect.

Was this entry helpful?
Help us write better definitions. Quick reactions or detailed edit suggestions.

About the Author

Dipojjal Chakrabarti is a B2C Solution Architect with 29 Salesforce certifications and over 13 years in the Salesforce ecosystem. He runs salesforcedictionary.com to help admins, developers, architects, and cert/interview candidates sharpen their fundamentals. More about Dipojjal.

§

Test your knowledge

Q1. What is Salesforce Connect?

Q2. What protocols does it support?

Q3. What's the trade-off?

§

Discussion

Loading…

Loading discussion…