Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
Full OData Producer entry
How-to guide

How to connect an OData producer to Salesforce

Connecting an OData producer takes three steps: register the external data source, synchronize the schema to create external objects, and add the external objects to page layouts.

By Dipojjal Chakrabarti · Founder & Editor, Salesforce DictionaryLast updated May 21, 2026

Connecting an OData producer takes three steps: register the external data source, synchronize the schema to create external objects, and add the external objects to page layouts.

  1. Verify the producer publishes valid OData

    Open the producer''s service root URL in a browser or Postman. Confirm the $metadata endpoint returns valid XML and at least one entity type. If the producer fails this check, fix the producer before proceeding.

  2. Create an External Data Source in Salesforce

    Setup > External Data Sources > New. Select OData 2.0 or 4.0 as the type. Paste the service root URL. Pick the authentication method and supply credentials.

  3. Validate and Sync

    Click Validate and Sync. Salesforce calls the $metadata endpoint and shows every entity type. Check the boxes for entities to bring in as external objects and click Sync. Salesforce creates one external object per checked entity.

  4. Configure external object permissions and page layouts

    Update profiles or permission sets to grant Read (and optionally Write) on each new external object. Edit the relevant page layouts to add the external object as a related list or as a tab.

  5. Test as a user

    Log in as a user with the new permission set. Navigate to a record, open the external object related list, and confirm data displays. Open the OData producer logs and verify the expected callouts are coming through.

Key options
OData 4.0remember

Modern standard. JSON payloads, $apply support, simpler annotations. Use for greenfield producers.

OData 2.0remember

Legacy version. Common with SAP NetWeaver and Dynamics. Use when producer cannot be upgraded.

Cross-Org Connectorremember

Alternative for Salesforce-to-Salesforce. Uses Salesforce''s own OData implementation under the hood.

Custom Apex Adapterremember

Fallback when the producer cannot speak OData. Write a Connection class extending DataSource.Connection.

Gotchas
  • External objects do not support cross-object formula fields, roll-up summaries, or workflow rules. The data lives outside Salesforce, so platform automations that assume local storage do not apply.
  • Reports on external objects are limited to standard report types; no cross-object reporting across external and internal data without CRM Analytics. Plan analytics architecture before relying on external objects.
  • Per-User OAuth authentication requires every user to authorize the producer on first access. Plan a user-facing message explaining the OAuth dance to reduce help-desk tickets at rollout.
  • The 100,000 callouts per hour limit on Salesforce Connect applies to the whole org, not per user. A busy list view can exhaust the limit during peak hours; cache aggressively or pre-fetch.

See the full OData Producer entry

OData Producer includes the definition, worked example, deep dive, related terms, and a quiz.