Integration Procedure
An Integration Procedure (often abbreviated IP) is a declarative server-side orchestration in Salesforce OmniStudio (formerly Vlocity), used to fetch, transform, and write data across Salesforce objects and external systems without writing Apex.
Definition
An Integration Procedure (often abbreviated IP) is a declarative server-side orchestration in Salesforce OmniStudio (formerly Vlocity), used to fetch, transform, and write data across Salesforce objects and external systems without writing Apex. Integration Procedures combine actions (DataRaptor read or write, HTTP callout, Remote Action, Set Values, Conditional Block) into a sequence that runs server-side and returns a structured response. They are the OmniStudio equivalent of a stored procedure: callable from OmniScripts, FlexCards, Lightning components, REST APIs, and flows.
Integration Procedures shine when an Industries Cloud implementation needs to bundle multiple operations into a single server call. A common pattern is loading a customer summary screen: one Integration Procedure queries Account, Contact, Service Contract, and Open Cases in a single call, transforms the result, and returns a JSON payload tailored to the front-end OmniScript. Without the IP, the OmniScript would need multiple round-trips to Salesforce. IPs reduce traffic, enforce server-side logic, and provide a reusable backend for multiple front-end consumers.
How Integration Procedures fit into the OmniStudio architecture
The OmniStudio toolset
OmniStudio (formerly Vlocity, now branded as a Salesforce Industries product) bundles four declarative tools: OmniScripts (guided user-facing wizards), FlexCards (Lightning record-summary components), DataRaptors (data mapping between Salesforce and JSON), and Integration Procedures (server-side orchestrations). Integration Procedures are the backend layer that the other tools call.
Server-side execution model
Integration Procedures run entirely server-side. The front-end client makes one HTTP call to the IP endpoint; the IP executes its action chain on the Salesforce server, builds the response JSON, and returns it in one round-trip. This contrasts with client-side OmniScript actions that would make individual calls per element.
Action types inside an Integration Procedure
IPs support a fixed set of action types. DataRaptor Extract Action runs a DataRaptor to query data. DataRaptor Load Action runs a DataRaptor to write data. HTTP Action makes an outbound REST callout. Remote Action calls an Apex method. Set Values modifies the internal state. Conditional Block branches based on data. Try/Catch wraps an action sequence in error handling. The chain runs in order, with each action seeing the cumulative state.
Caching and performance
IPs support response caching to reduce repeat-query load. A cached IP stores the response for a configurable duration and serves cached results until expiration. Caching is critical for frequently-called IPs that return semi-static data (product catalogs, configuration). Cache invalidation is by key or by global flush.
Integration Procedure as REST endpoint
Every Integration Procedure is automatically exposed as a REST endpoint at /services/apexrest/vlocity_cmt/v3/IntegrationProcedureService/{ip_name}. External systems can call this endpoint directly with the standard Salesforce OAuth bearer token; the IP runs as the calling user and returns its response. This makes IPs a fast way to build API endpoints without writing Apex REST classes.
Versioning and deployment
IPs are versioned. Saving an IP creates a new version; activating moves the active version forward. Older versions remain for rollback. OmniStudio uses the IDX Build Tool (a Vlocity-supplied CLI) to deploy IPs between sandboxes and production. Modern OmniStudio supports the standard SFDX deployment model too.
Apex alternatives and when to choose IPs
Apex remains the more flexible alternative. Complex logic that exceeds IP''s declarative action set (transactional batch processing, complex state machines) belongs in Apex. IPs win when the use case is data orchestration without heavy logic and when the team prefers declarative over code-based maintenance. Most Industries implementations mix both: IPs for record-summary fetches, Apex for unusual business logic.
Build an Integration Procedure for a customer-summary call
Building an IP starts in OmniStudio, drag actions in sequence, configure each action''s input and output mappings, save, activate, test.
- Open the Integration Procedure designer
OmniStudio app, Integration Procedures tab, click New. Name the IP and pick the procedure type.
- Add DataRaptor Extract Actions
Drag DataRaptor Extract actions onto the canvas. Each one queries a Salesforce object and returns the result into the IP''s shared state.
- Add transformation steps
Use Set Values, Conditional Block, or Format Date actions to shape the data for the consumer.
- Build the response
Configure the Response Block at the end. Pick the fields and structure to return; the consumer sees only what the response includes.
- Save and activate
Save the IP. Activate the new version. The active version is what consumers call.
- Test via the Debug pane
Open the Debug pane, provide test inputs, run the IP, inspect the response JSON. Iterate until the output matches expectations.
User-facing identifier referenced by OmniScripts and external callers.
The ordered list of operations the IP performs.
The final block that shapes the output JSON.
Only one version can be active at a time.
- IPs run as the calling user, respecting their FLS and sharing. A DataRaptor inside the IP that returns no rows when called by a restricted user is usually a security setting, not a bug.
- Caching is per-IP and per-input-hash. Cached IPs that depend on the calling user may return wrong data for another user; design cache keys carefully.
- Errors inside an IP propagate to the caller unless wrapped in a Try/Catch. Without explicit error handling, a single DataRaptor failure can break an entire OmniScript.
- OmniStudio is licensed separately. Confirm the org has the OmniStudio package installed before designing IPs.
Trust & references
Cross-checked against the following references.
- OmniStudio Integration ProceduresSalesforce Help
- OmniStudio OverviewSalesforce Help
Straight from the source - Salesforce's reference material on Integration Procedure.
- DataRaptorsSalesforce Help
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 an Integration Procedure?
Q2. What can Integration Procedures do?
Q3. Where are Integration Procedures commonly used?
Discussion
Loading discussion…