Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
DictionaryOOmniScript
AutomationIntermediate

OmniScript

OmniScript is a Salesforce Industries (formerly Vlocity) tool for building guided, multi-step digital interactions.

§ 01

Definition

OmniScript is a Salesforce Industries (formerly Vlocity) tool for building guided, multi-step digital interactions. It is a low-code wizard-style designer that strings together input forms, decision steps, lookups, integration calls, and document generation into a single end-user workflow. Customer service agents, self-service portal users, and call center reps walk through an OmniScript to complete tasks like switching a wireless plan, filing an insurance claim, onboarding a new patient, or processing a loan application.

OmniScript runs as a Lightning Web Component on Lightning record pages, Experience Cloud sites, and Salesforce mobile. It calls Integration Procedures for server-side logic, DataRaptors for data shaping, FlexCards for visual surfaces, and Apex Remote Actions for custom logic. Underneath, every OmniScript is a JSON definition stored in custom objects (OmniScript__c and related) that the runtime interprets. The product ships with every Salesforce Industries cloud and is a defining feature of the Industries stack.

§ 02

How OmniScript drives guided interactions in Salesforce Industries

The element library

OmniScript ships with around 30 element types organized into four groups. Input elements (Text, Number, Email, Date, Checkbox, Radio, Select, Lookup) collect user data. Action elements (Set Values, Integration Procedure Action, DataRaptor Extract Action, Document Template Action) execute logic. Display elements (Text Block, FlexCard, Repeat Block, Step) shape the visual layout. Group elements (Edit Block, Disclosure, Conditional View) bundle elements and control visibility. Most OmniScripts use 15 to 40 elements arranged across 3 to 8 steps.

Steps, conditions, and branching

Steps act as pages or wizard segments; users move forward by clicking Next and back via Previous (if configured). Conditional View elements show or hide sub-elements based on prior answers, and Set Values elements compute derived fields. For multi-path workflows (a Switch Carrier OmniScript that branches between Postpaid Switch, Prepaid Switch, and Business Switch), the Branch element routes to a different step based on a condition. Designers can also nest OmniScripts inside each other by calling a sub-OmniScript from a parent.

Integration Procedures and DataRaptors

OmniScripts call into Integration Procedures for any server-side work. An Integration Procedure orchestrates DataRaptor calls (which read or write Salesforce data), REST callouts (which talk to external systems), Apex actions, and conditional logic. The OmniScript designer drops in Integration Procedure Action elements to trigger these. DataRaptor Extract Actions pull data into the OmniScript runtime JSON; DataRaptor Load Actions write the final JSON back to Salesforce objects when the user clicks Submit. The separation lets the same Integration Procedure power multiple OmniScripts.

Versioning and activation

Every OmniScript has a version number. Changes always create a new version (1.1, 1.2, 1.3) and admins activate the new version when ready to release. Only one version is active at a time; deactivated versions become rollback candidates. This is critical in regulated industries where audit requires evidence of which exact OmniScript version processed a customer transaction on a given date. Save the active version alongside each Case or Opportunity for traceability.

Embedding and exposure

An activated OmniScript can be embedded as a Lightning Web Component in a Lightning record page, Experience Cloud site, or any LWC-supporting surface. Use the OmniScript LWC tag with the OmniScript name and version as attributes. For customer self-service, expose the OmniScript through a public Experience Cloud site so unauthenticated users can complete workflows like new-customer signup. For internal use, expose through Lightning record pages so agents can launch the OmniScript with one click from the current Case or Account.

Where OmniScript shines and where Flow wins

OmniScript is the right tool when the interaction has 3 or more steps, needs heavy integration with external systems, and is launched directly by customers or agents. Salesforce Flow is the right tool when the automation runs in the background (record-triggered), is simple enough to fit in 1 or 2 screens, or needs to call Flow-only features like recently introduced AI-powered actions. The two coexist in the same org; pick OmniScript for industry-grade guided journeys, Flow for everything else.

§ 03

How to build and deploy an OmniScript

Build OmniScripts in the Industry Cloud-specific designer (OmniStudio Designer). Confirm OmniStudio is licensed and provisioned in your org before starting; OmniScript ships as part of Communications Cloud, Health Cloud Industries, FSC Industries, and similar packages.

  1. Open the OmniStudio Designer

    Launch the OmniStudio Lightning app. Navigate to the OmniScripts tab. Click New OmniScript and provide a Type (the use case category), Sub-Type (variant), Language, and Name.

  2. Drag elements onto the canvas

    Build the workflow step by step. Start with a Step element, drag input elements into it for the first form. Add Action elements for integration calls. Add Conditional View elements where the flow should branch. Save frequently; the designer auto-saves but explicit saves are safer.

  3. Wire up Integration Procedures

    For any server-side work (look up customer info, validate eligibility, submit the final transaction), drag an Integration Procedure Action element and select the IP to invoke. Pass JSON parameters from the OmniScript runtime into the IP via the Send JSON Path field.

  4. Preview and test

    Click the Preview button to launch the OmniScript in a sandbox runtime. Walk through every path, including the conditional branches. Confirm the runtime JSON object accumulates correctly as the user advances through steps.

  5. Activate and embed

    Once tested, click Activate. The OmniScript version becomes available for use. Embed it on a Lightning record page using the OmniScript LWC component, or on an Experience Cloud site through the Builder. Confirm the embedded component renders correctly for the user persona that will run the OmniScript.

Mandatory fields
Typerequired

High-level category (Account, Order, Quote, Claim). Used in the OmniScript namespacing and as a filter in the designer.

Sub-Typerequired

Specific variant within the type (NewBusiness, Switch, Renewal). The Type plus Sub-Type combination identifies the OmniScript.

Languagerequired

The locale of the OmniScript (en_US, fr_FR, ja_JP). Each language version is a separate OmniScript record.

Active Versionrequired

Which version is currently exposed for use. Default is 0 until the script is activated.

First Steprequired

The opening Step element. Every OmniScript must contain at least one Step.

Gotchas
  • OmniScript JSON paths are case-sensitive. A typo between customerInfo.firstName and customerinfo.firstname breaks the binding and the form renders empty values.
  • Embedding an inactive OmniScript on a Lightning page renders a blank component with no error. Always confirm the version is Active before debugging UI issues.
  • Integration Procedures called from OmniScript share the standard Apex governor limits per OmniScript step. Avoid heavy SOQL or long-running callouts inside a step; break work across multiple steps if needed.
  • Conditional View elements hide elements visually but the JSON values still exist. To genuinely exclude data from submission, use the Conditional Submit option on the element, not just visual hiding.
§

Trust & references

Sources

Cross-checked against the following references.

Official documentation

Straight from the source - Salesforce's reference material on OmniScript.

Was this entry helpful?
Help us write better definitions. Quick reactions or detailed edit suggestions.

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 OmniScript?

Q2. What does an OmniScript combine?

Q3. Where are OmniScripts commonly used?

§

Discussion

Loading…

Loading discussion…