Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
Salesforce Consultant
medium

How would you architect Salesforce integration with SAP / Oracle ERP?

Salesforce + ERP is the most common enterprise integration. ERP holds the source of truth for accounts, products, orders, invoices; Salesforce drives sales and service.

Common data flows:

Inbound to Salesforce (from ERP):

  • Account master data — Customer name, billing address, credit status.
  • Product catalogue — SKUs, pricing.
  • Inventory — stock levels (real-time or near-real-time).
  • Order/Invoice history — for reps to see customer history.

Outbound from Salesforce (to ERP):

  • Quote -> Order — when quote becomes order, push to ERP.
  • New Account creation — Salesforce as system-of-engagement; ERP as system-of-record.
  • Customer master updates — Salesforce changes flow back.

Architecture options:

1. Mulesoft as middleware. Salesforce <-> Mulesoft <-> SAP/Oracle. Mulesoft handles transformation, retry, error logging, schema differences. Most enterprise pattern.

2. Native ERP connectors. Salesforce ships connectors for some ERPs (older, less flexible).

3. iPaaS (Boomi, Informatica, MuleSoft). Cloud-based integration platforms. Less code than custom; more flexible than connectors.

4. Custom REST APIs on both sides. Salesforce calls SAP; SAP calls Salesforce. More work; full control.

5. Heroku Connect. For Salesforce <-> Postgres-based systems. Bidirectional sync. Specialised but powerful.

Pattern selection:

  • Real-time inventory check during quote -> synchronous request-reply via Mulesoft.
  • Daily catalogue sync -> batch via ETL or Mulesoft batch.
  • Order push on Quote -> Order -> event-driven (Platform Event publishes; Mulesoft subscribes; pushes to ERP).
  • Customer master sync -> CDC + bidirectional via middleware.

Key design decisions:

  • System of record for each object. "Account name owned by ERP; Account industry owned by Salesforce" — explicit, no ambiguity.
  • External Id field on Salesforce Account (SAP_Customer_Id__c) for deterministic matching.
  • Conflict resolution — what wins when same field changes in both systems?
  • Failure handling — retry policy, dead-letter queue, alerting.
  • Performance — synchronous calls add latency; batch calls add staleness; pick deliberately.

Common pitfalls:

  • Two-way sync without clear ownership — data ping-pongs.
  • Synchronous calls for non-critical sync — slows UI for no benefit.
  • No monitoring — failures go unnoticed for weeks.
  • Underestimating data quality — ERP data has its own messiness; "garbage in, garbage out".

Senior consultants document the integration architecture as a separate diagram, with every flow's direction, frequency, transformation, and ownership marked.

Why this answer works

Senior. The pattern catalogue and the "system of record per object" insight signal mature integration consulting.

Follow-ups to expect

Related dictionary terms