# Child Omniscripts, embedded Flexcards and custom LWCs

*Omnistudio Developer Study Guide · Omniscripts · Last updated October 27, 2026 · https://www.certifyforce.com/study-guide/omnistudio-developer/omniscripts/child-omniscripts-embedded-flexcards-and-custom-lwcs*

How to embed reusable child Omniscripts, place Flexcards in an Omniscript with the Custom LWC element and the Update Omniscript action, and build custom LWCs that extend OmniscriptBaseMixin or run standalone with the omniaggregate event.

- Certification: Salesforce Omnistudio Developer
- Exam section: Omniscripts
- Study guide: https://www.certifyforce.com/study-guide/omnistudio-developer

**Official exam objective:**

> Use child Omniscripts, Flexcards, and custom LWCs for enhanced interactivity and complex UI configurations.

## What the exam expects

- Build a reusable Omniscript, embed it in parents and predict what happens on activation and on clashing node names.
- Embed a Flexcard with the Custom LWC element, pass it data and write its selections back with an Update Omniscript action.
- Meet the requirements for a custom LWC and choose between extending OmniscriptBaseMixin and running it standalone.
- Use the mixin methods to update the data JSON, navigate, save state and make remote calls.
- Send data from a standalone component with the omniaggregate event, knowing what the Communicate page says about the pubsub module on Standard Runtime.
- Know what the exam expects of custom LWC code, and how the Industry Process Library supplies ready-made script elements.

Key terms: **reusable Omniscript** (a child script marked Reusable and dragged into parents), **Custom LWC element** (the element that places a custom component or Flexcard in a step), **OmniscriptBaseMixin** (the base a custom LWC extends to work with the data JSON), **standalone LWC** (a component that doesn't extend the mixin), **omniaggregate** (the event that builds nodes inside the Custom LWC element).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Nesting reusable Omniscripts | A reusable Omniscript can't contain another | [Embed an Omniscript](https://help.salesforce.com/s/articleView?id=xcloud.os_embed_an_omniscript_in_another_omniscript_20581.htm&language=en_US&type=5) |
| Two children set one node | Only the first child's values are set | [Embed an Omniscript](https://help.salesforce.com/s/articleView?id=xcloud.os_embed_an_omniscript_in_another_omniscript_20581.htm&language=en_US&type=5) |
| Activating a child | Updates every activated parent after Proceed | [Embed an Omniscript](https://help.salesforce.com/s/articleView?id=xcloud.os_embed_an_omniscript_in_another_omniscript_20581.htm&language=en_US&type=5) |
| Flexcard component name | cf + card name, such as cfAccountCard | [Embed Flexcards](https://help.salesforce.com/s/articleView?id=xcloud.os_embed_flexcards_in_an_omniscript_24124.htm&language=en_US&type=5) |
| Update Omniscript with no Parent Node | Result stored in a new node | [Update from a Flexcard](https://help.salesforce.com/s/articleView?id=xcloud.os_update_an_omniscript_from_a_flexcard_27677.htm&language=en_US&type=5) |
| isExposed | Must be true in the XML configuration file | [LWC requirements](https://help.salesforce.com/s/articleView?id=xcloud.os_requirements_for_creating_a_custom_lightning_web_component_for_omniscripts.htm&language=en_US&type=5) |
| Custom LWC placement | A Step or a non-repeatable, non-nested Block | [Custom LWC Element](https://help.salesforce.com/s/articleView?id=sf.os_custom_lwc_element_17587.htm&language=en_US&type=5) |
| aggregateOverride default | false: object input merges | [Mixin](https://help.salesforce.com/s/articleView?id=xcloud.os_extend_the_omniscriptbasemixin_component_17717.htm&language=en_US&type=5) |
| omniApplyCallResp and proxies | Not supported; clone first | [Mixin](https://help.salesforce.com/s/articleView?id=xcloud.os_extend_the_omniscriptbasemixin_component_17717.htm&language=en_US&type=5) |
| pubsub module, Omniscript to LWC | Communicate page: doesn't operate on Standard Runtime; use wpm or ssm | [Communicate to an LWC](https://help.salesforce.com/s/articleView?id=xcloud.os_communicate_with_omniscript_from_a_lightning_web_component_18222.htm&language=en_US&type=5) |

## Check yourself

- Why must each reusable child use unique Element Name nodes in Set Values?
- Which Property Name refreshes an embedded Flexcard whenever the passed-in Omniscript data changes?
- Why does omniApplyCallResp fail on a tracked property passed directly?
- Which Property Name passes a record Id into an embedded Flexcard?

## Sources

- [Embed an Omniscript in Another Omniscript](https://help.salesforce.com/s/articleView?id=xcloud.os_embed_an_omniscript_in_another_omniscript_20581.htm&language=en_US&type=5)
- [Embed Flexcards in an Omniscript](https://help.salesforce.com/s/articleView?id=xcloud.os_embed_flexcards_in_an_omniscript_24124.htm&language=en_US&type=5)
- [Update an Omniscript's JSON Code from a Flexcard](https://help.salesforce.com/s/articleView?id=xcloud.os_update_an_omniscript_from_a_flexcard_27677.htm&language=en_US&type=5)
- [Custom LWC Element](https://help.salesforce.com/s/articleView?id=sf.os_custom_lwc_element_17587.htm&language=en_US&type=5)
- [Requirements for Custom LWCs for Omniscripts](https://help.salesforce.com/s/articleView?id=xcloud.os_requirements_for_creating_a_custom_lightning_web_component_for_omniscripts.htm&language=en_US&type=5)
- [Extend the OmniscriptBaseMixin Component](https://help.salesforce.com/s/articleView?id=xcloud.os_extend_the_omniscriptbasemixin_component_17717.htm&language=en_US&type=5)
- [Create a Standalone Custom LWC](https://help.salesforce.com/s/articleView?id=xcloud.os_create_a_standalone_custom_lightning_web_component_18102.htm&language=en_US&type=5)
- [Communicate from Omniscript to an LWC](https://help.salesforce.com/s/articleView?id=xcloud.os_communicate_with_omniscript_from_a_lightning_web_component_18222.htm&language=en_US&type=5)
- [Override an Omniscript Element with a Custom LWC](https://help.salesforce.com/s/articleView?id=sf.os_standard_override_an_omniscript_element.htm&language=en_US&type=5)
- [Add Steps to an Omniscript](https://help.salesforce.com/s/articleView?id=xcloud.os_steps_15373.htm&language=en_US&type=5)
- [Configure an Edit Block in Omniscripts](https://help.salesforce.com/s/articleView?id=xcloud.os_configure_an_edit_block_14284.htm&language=en_US&type=5)
- [Salesforce Certified Omnistudio Developer Exam Guide](https://help.salesforce.com/s/articleView?id=005298971&language=en_US&type=1)
- [IDX Workbench Desktop Application](https://help.salesforce.com/s/articleView?id=sf.os_idx_workbench_desktop_application.htm&language=en_US&type=5)
- [Pass Data to Flexcards by Using Events](https://help.salesforce.com/s/articleView?id=xcloud.os_standard_pass_data_to_flexcards_by_using_events.htm&language=en_US&type=5)

## About the full unit

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