# Integration patterns for volume, latency and failure

*B2C Solution Architect Study Guide · Integration · Last updated November 13, 2026 · https://www.certifyforce.com/study-guide/b2c-solution-architect/integration/integration-patterns-for-volume-latency-and-failure*

How to pick request-reply, fire-and-forget, batch, event or virtualization patterns from a requirement's timing and volume, and how B2C Commerce services, outbound messages, change events, Composite requests, Engagement triggers, Data 360 and Omnichannel Inventory imports behave under load and failure.

- Certification: Salesforce B2C Solution Architect
- Exam section: Integration
- Study guide: https://www.certifyforce.com/study-guide/b2c-solution-architect

**Official exam objective:**

> Given business requirements and use cases, recommend appropriate integration patterns based on data volume, latency, and system limitations.

## What the exam expects

- Choose request-reply, fire-and-forget, batch, remote call-in or data virtualization from who waits, how fresh the data must be and how much there is.
- Protect a B2C Commerce storefront from slow or rate-limited partners with service profile settings.
- Design receivers for outbound messages and change events that survive retries, gaps and partial payloads.
- Cut API calls and partial writes with Composite, and keep external data external with Salesforce Connect.
- Account for timing limits in Engagement triggers, Data 360 publishing and Omnichannel Inventory imports.

Key terms:
- **Request and Reply:** Salesforce calls a remote process and waits for it to finish before acting on the response.
- **Fire and Forget:** the remote system acknowledges the request and Salesforce carries on without waiting for completion.
- **Service profile:** the B2C Commerce setting that controls a web service's timeout, rate limiter and circuit breaker.
- **Replay ID:** the opaque position of an event in the stream, used to resubscribe after a gap.
- **Omnichannel Inventory:** the service that holds availability across locations and location groups.

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Rate limit or open circuit | ServiceUnavailableException, no call made | [Web Services](https://developer.salesforce.com/docs/commerce/pwa-kit-managed-runtime/guide/b2c-webservices.html) |
| Outbound message retries | Up to 24 hours, 15 seconds growing to 60 minutes | [Fire and Forget](https://developer.salesforce.com/docs/atlas.en-us.integration_patterns_and_practices.meta/integration_patterns_and_practices/integ_pat_remote_process_invocation_fire_forget.htm) |
| Event retention | 72 hours | [Event Durability](https://developer.salesforce.com/docs/platform/pub-sub-api/guide/event-message-durability.html) |
| Unchanged fields in a Pub/Sub update event | Present and empty | [Change Event Body](https://developer.salesforce.com/docs/platform/change-data-capture/guide/cdc-event-fields-body.html) |
| Composite | One API call; up to 25 subrequests | [Composite](https://developer.salesforce.com/docs/platform/api-rest/guide/resources-composite-composite-post.html) |
| Data 360 standard publish | Every 12 or 24 hours; deferred at the concurrency limit | [Publish a Segment](https://help.salesforce.com/s/articleView?id=data.c360_a_publish_segment.htm&type=5&language=en_US) |
| File matching two File Drop triggers | One trigger chosen at random | [File Drop](https://help.salesforce.com/s/articleView?id=mktg.mc_as_define_a_triggered_automation.htm&type=5&language=en_US) |
| Inventory Impex file | Up to 100 MB, JSON or GZIP | [Availability Imports](https://help.salesforce.com/s/articleView?id=commerce.oci_impl_importing_availability_data.htm&type=5&language=en_US) |
| Inventory import mode | UPDATE; omitted entries kept | [Availability Imports](https://help.salesforce.com/s/articleView?id=commerce.oci_impl_importing_availability_data.htm&type=5&language=en_US) |

## Check yourself

- Which field identifies a platform event message uniquely when replay IDs might repeat after an org migration?
- Why can a published platform event sometimes never reach its subscribers?
- When must you request a new Omnichannel Inventory import before uploading a file?
- What should you define during an initial Omnichannel Inventory implementation to avoid overselling?

## Sources

- [Integration Patterns](https://architect.salesforce.com/docs/architect/fundamentals/guide/integration-patterns.html)
- [Using the Right Event-Driven Architecture Pattern](https://architect.salesforce.com/docs/architect/decision-guides/guide/event-driven.html)
- [Web Services (B2C Commerce service framework)](https://developer.salesforce.com/docs/commerce/pwa-kit-managed-runtime/guide/b2c-webservices.html)
- [Remote Process Invocation: Fire and Forget](https://developer.salesforce.com/docs/atlas.en-us.integration_patterns_and_practices.meta/integration_patterns_and_practices/integ_pat_remote_process_invocation_fire_forget.htm)
- [Event Message Durability (Pub/Sub API)](https://developer.salesforce.com/docs/platform/pub-sub-api/guide/event-message-durability.html)
- [Change Event Body Fields](https://developer.salesforce.com/docs/platform/change-data-capture/guide/cdc-event-fields-body.html)
- [FOStatusChangedEvent](https://developer.salesforce.com/docs/platform/platform-events/guide/sforce-api-objects-fostatuschangedevent.html)
- [Send Multiple Requests Using Composite](https://developer.salesforce.com/docs/platform/api-rest/guide/resources-composite-composite-post.html)
- [Composite Request Body](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/requests_composite.htm)
- [Data Virtualization](https://developer.salesforce.com/docs/atlas.en-us.integration_patterns_and_practices.meta/integration_patterns_and_practices/integ_pat_data_virtualization.htm)
- [Configure the Salesforce Data Event](https://help.salesforce.com/s/articleView?id=mktg.mc_jb_configure_salesforce_data_event.htm&type=5&language=en_US)
- [Configure a File Drop Automation](https://help.salesforce.com/s/articleView?id=mktg.mc_as_define_a_triggered_automation.htm&type=5&language=en_US)
- [Publish a Segment in Data 360](https://help.salesforce.com/s/articleView?id=data.c360_a_publish_segment.htm&type=5&language=en_US)
- [Requirements for Distributed Marketing](https://help.salesforce.com/s/articleView?id=mktg.mc_dm_requirements.htm&type=5&language=en_US)
- [Data 360 Integration Patterns and Practices](https://architect.salesforce.com/docs/architect/fundamentals/guide/data360_integration_patterns_and_practices.html)
- [Considerations for Importing Availability Data](https://help.salesforce.com/s/articleView?id=commerce.oci_impl_importing_availability_data.htm&type=5&language=en_US)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 17 linked practice questions, and unlimited timed mock exams are included with the B2C Solution Architect pack (USD $19): https://www.certifyforce.com/practice-exams
