Skip to content

Integration Patterns: Quick Reference

All 6 official Salesforce integration patterns on one page, with a selection matrix, timing guide, and middleware decision framework. For full details with sequence diagrams, see Integration Patterns Deep Dive.

#PatternDirectionTimingTechError StrategyUse When
1Request-ReplySF —> ExternalReal-timeREST/SOAP callout, Named CredentialsCircuit breaker + graceful degradationUser needs immediate response (validation, credit check)
2Fire-and-ForgetSF —> ExternalNear-RTPlatform Events, Outbound MessagesRetry + DLQ + idempotencyResponse not needed now (order fulfillment, notifications)
3Batch Data SyncBidirectionalBatchBulk API 2.0, ETL toolsPartial failure handling + reconciliationHigh volume, data freshness in hours is OK
4Remote Call-InExternal —> SFReal-timeREST/SOAP/Composite APIIdempotency keys + rate limitingExternal system owns the process (ERP push, portal writes)
5UI Update (Data Changes)SF —> SubscriberNear-RTCDC, Platform Events, Pub/Sub APIReplay from checkpoint + subscriber monitoringReact to changes without polling (dashboards, portals)
6Data VirtualizationSF —> ExternalOn-demandSalesforce Connect, External ObjectsFallback cache + high-availability external systemDisplay external data without replication
Decision tree mapping integration needs to one of six Salesforce integration patterns based on initiator, response requirement, latency, and data volume.
Figure 1. The initiator split is the first architectural decision: Salesforce-initiated flows branch on whether a response is needed to continue the user’s work, while externally-initiated flows branch on whether the trigger is a Salesforce data change. Naming the specific pattern, not just “we’ll use an API,” is what distinguishes a CTA-level answer.
Business NeedTimingDefault PatternDefault Tech
User waiting for answerReal-time (< 2s)Request-ReplyREST callout
Process can continue without answerNear-RT (seconds-minutes)Fire-and-ForgetPlatform Events
Data sync, reporting refreshBatch (hours)Batch Data SyncBulk API 2.0
Display external data inlineOn-demandData VirtualizationSalesforce Connect
External system pushes to SFReal-timeRemote Call-InREST API
React to SF changes externallyNear-RTUI UpdateCDC + Pub/Sub API
SystemsRecommendationRationale
2 systems, simplePoint-to-pointMiddleware adds cost with no benefit
2 systems, will growConsider middlewareFuture-proofing may justify early investment
3-5 systemsHybridMiddleware for complex, P2P for simple
6+ systemsMiddlewareCentralized governance, reuse, monitoring
Three-layer architecture with Experience APIs consuming Process APIs which orchestrate System APIs, enabling reuse and independent evolution of each layer.
Figure 2. API-led connectivity separates concerns across three layers: System APIs expose backends as stable contracts, Process APIs orchestrate business logic across systems, and Experience APIs tailor payloads for specific consumers. Changing a backend system only requires updating its System API, and all Process and Experience APIs above it remain unaffected.
LayerPurposeOwned ByExample
SystemExpose backend as reusable APIBackend teams”Salesforce Contact API”
ProcessOrchestrate across System APIs + business logicIntegration team”Customer 360 API”
ExperienceTailor for consumer (mobile, web, partner)Consumer teams”Mobile Customer API”
FactorMuleSoftDell BoomiInformaticaWorkato
Best forComplex enterprise, API programsMid-market, rapid deployData-heavy, MDMBusiness process automation
SF alignmentNative (SF-owned)Strong connectorStrong connectorGood connector
Cost$$$$$$$-$$$$$
When to recommendDefault for SF-heavyMuleSoft cost prohibitiveData quality is primaryBusiness users manage integrations

Situation: Insurance company with Salesforce (CRM), Guidewire (claims), SAP (finance), and a customer portal. Claims status must appear on the portal within 30 seconds of update.

What you’d present:

  • Guidewire —> SF: Remote Call-In (REST API) for claim creation
  • SF claim status change —> Portal: UI Update (CDC + Pub/Sub API) for near-RT push
  • SF —> SAP: Fire-and-Forget (Platform Events + MuleSoft) for payment processing
  • Nightly reconciliation: Batch Sync (Bulk API 2.0 + MuleSoft batch)
  • Middleware justified: 4 systems, shared transformations, centralized monitoring

Situation: Retail chain needs real-time inventory checks at point of sale. External inventory system response time averages 800ms. 500 stores, peak of 2,000 checks/hour.

What you’d present:

  • POS —> Inventory check: Request-Reply (REST callout, < 1s response)
  • Fallback when inventory system is down: Circuit breaker opens, show cached inventory with staleness warning
  • Daily inventory sync: Batch Sync (Bulk API 2.0) to refresh cache and reconcile
  • No middleware needed: Only 2 systems, simple payload, no transformation

Scenario 3: Multi-Cloud Healthcare Platform

Section titled “Scenario 3: Multi-Cloud Healthcare Platform”

Situation: Healthcare org with Salesforce Health Cloud, Epic (EHR), Snowflake (analytics), and a patient portal. HIPAA compliance required. 50+ integration touchpoints planned.

What you’d present:

  • Epic —> SF: Remote Call-In (FHIR/REST API) for patient data sync
  • SF —> Patient Portal: UI Update (Platform Events, not CDC - custom event semantics for HIPAA-filtered payload)
  • SF —> Snowflake: Batch Sync (Bulk API 2.0 + MuleSoft batch, nightly)
  • MuleSoft mandatory: 50+ touchpoints, HIPAA audit trails, API governance, reusability across experience layer

When the scenario involves multiple Salesforce orgs (common in M&A, global enterprises, franchise models):

ApproachBest ForLimitations
Salesforce Connect (Cross-Org Adapter)Read-only access to another org’s data without replicationNo DML on external objects, no triggers, limited reporting
Platform Events (Cross-Org)Near-real-time business event sharing between orgsRequires Connected App auth between orgs, event retention limits
Salesforce-to-SalesforceNative record sharing between orgs with subscription modelBeing retired - use Salesforce Connect cross-org adapter or API-based integration instead
DecisionDefaultOverride When
Sync vs AsyncAsyncUser is blocked without immediate response
Middleware vs P2PP2P (< 4 systems)4+ systems, complex transforms, governance
REST vs SOAPRESTLegacy WSDL requirement
ETL vs ELTETL (transform outside SF)Trivial transforms or SF-native logic needed
TimingBatch (cheapest)Business requires fresher data
EventsCDC for data changesCustom semantics or external publish needed

Personal study notes for the Salesforce CTA exam. Content compiled from VJ's study notes, official Salesforce documentation, community sources, and online publicly available content, then organized and presented with AI assistance. Not affiliated with Salesforce. © 2025–2026 VJ Srivastava.