SfSkills Domains Docs GitHub

Home / admin / flexcard-requirements

flexcard-requirements

Specify a FlexCard before a developer opens Card Designer: the card-state set and the condition that selects each state, the data source type behind each card (DataRaptor, Integration Procedure, Apex remote, SOQL), the action menu users get (navigate, launch OmniScript, Apex, DataRaptor), and every embedded child FlexCard or custom LWC.

Open the skill folder on GitHub


FlexCard Requirements

This skill activates when a business analyst or product owner must gather and document FlexCard requirements before a developer builds in Card Designer. It produces the data source inventory, action register, state specification, embedded component list, and audience permission list that turn stakeholder intent into a buildable card.

Grounding note: the OmniStudio FlexCard guide is published on help.salesforce.com and as an atlas guide, and neither returned content for this pass. The grounded sources are the Salesforce Industries Developer Guide (OmniStudio objects and Business APIs), the Security Guide (guest user access), and the Metadata API guide (permission sets). Card Designer behavior carried from earlier versions of this skill is marked UNVERIFIED where it is stated as fact.


Before Starting


Questions to Ask Before Configuring

Ask these before the developer opens Card Designer. Each one traces to a gotcha in references/gotchas.md.

QuestionWhy it mattersWhat a good answer addsWhat proper configuration adds over just doing it
"Who sees this card: internal users, authenticated portal users, or anonymous guests?"Guest OWD is Private and fixed; guest sharing rules grant Read Only only (gotcha 2)The audience per placement and the records each may readA card that shows data to the right audience instead of blank fields or over-exposure
"Which fields come from one object, and which need several objects or an external system?"Multi-source data points to an Integration Procedure; single-object data may not (gotcha 3)A data source per field groupNo mid-build re-architecture when a field turns out to need another source
"Which actions change data, and through what (Data Mapper, Apex, OmniScript)?"Each server-side action needs access for the card's users (gotcha 4)An action register with the permission each action needsActions that work for every audience on the first test
"Does anyone need usage analytics on the card?"OmniAnalytics tracking uses tracking groups, available in OmniStudio Standard (gotcha 5)A tracking decision and the runtime it depends onAnalytics designed in rather than requested after go-live
"Will anyone load, copy, or clean up cards with data tools?"OmniUiCard records are internal-use only (gotcha 1)A rule that cards move only through supported deployment toolsNo corrupted cards from direct record edits
"Do any actions call expression sets or decision matrices?"The older OmniStudio Business REST APIs for these were deprecated in API 55.0 (gotcha 6)The supported API for each calculationActions built on current APIs

What a proper requirements package adds over "just designing a card": every field has a source, every action has a permission, every audience has a defined record access path, and the build order is known before activation.


Core Concepts

Data sources

SourceWhen to useGrounding
Integration ProcedureMulti-source or external data; orchestrationIndustries guide: an IP "can be a data source for a Flexcard"
Data Mapper (DataRaptor)Declarative read and remap of Salesforce dataIndustries guide: Data Mappers supply data to Flexcards
SOQL, Apex, StreamingSingle-object reads, computed data, event-driven updatesUNVERIFIED (2026-10-03): help-only

Requirements must name a source per field group, and per child card if cards are nested.

Actions

List every action with its type, trigger element, expected outcome, the data passed from the card, and the permission it needs. Typical action types are navigation, OmniScript launch, Apex, and Data Mapper. UNVERIFIED (2026-10-03): the complete action type list is help-only.

Card states

A card can show different layouts depending on record data. Requirements must give the number of states, the condition for each, the evaluation order, and what each state shows differently. UNVERIFIED (2026-10-03): that the first matching state renders, and that state changes need reactivation because templates compile to LWC at activation, are help-only claims; ask the developer to confirm in Card Designer.

Embedded components

Child FlexCards, OmniScripts, and custom LWCs can sit inside a card. Requirements must list each one, its data dependencies, and whether it must exist (and be active or deployed) before the parent card can be activated.


Common Patterns

Pattern: Data Source Mapping Matrix

When to use: The card shows data from more than one object, or stakeholders have not said where data comes from.

How it works:

  1. For each displayed field, record the source object, whether it is direct or computed, and any external dependency.
  2. Assign a source type: Data Mapper for simple remapped reads, Integration Procedure for multi-source or external data.
  3. Record the IP or Data Mapper name and which card element binds to which field path.

Pattern: Audience and Permission Register

When to use: The card is placed in more than one context, or on an Experience Cloud site.

How it works:

  1. List each audience and placement.
  2. For each, list the objects and fields read, the Apex classes or IPs invoked, and the record access path (sharing, guest sharing rule).
  3. Turn the internal and portal rows into permission sets (deployable example in references/metadata-examples.md) and the guest rows into guest user sharing rules with Read Only access.

Decision Guidance

SituationRecommended ApproachReason
Fields from one Salesforce objectSimplest source the org supports (Data Mapper read, or SOQL if available)Fewer components to maintain
Data from several objects or an external APIIntegration ProcedureDocumented as a FlexCard data source; orchestrates multiple sources
Card updates a recordData Mapper or Apex action, with access for every audienceServer-side execution runs with the user's access
Card launches a guided processOmniScript launch action; record the context passedKeeps the process in OmniScript
Anonymous Experience Cloud visitorsGuest user sharing rules (Read Only) plus minimal guest profile accessGuest OWD is Private and cannot be changed
Usage analytics neededOmniAnalytics tracking group (OmniStudio Standard)Tracking objects exist only in OmniStudio Standard

  1. Confirm the OmniStudio runtime (Standard or for Vlocity) and every placement of the card; record them in the requirements header.
  2. Map every displayed field to a source object, field path, and data source type.
  3. Write the action register: type, trigger, outcome, data passed, and permission needed.
  4. Specify card states: count, condition, evaluation order, and layout differences.
  5. List embedded components and their build and activation order.
  6. Write the audience and permission register, including guest access for public pages, and hand references/metadata-examples.md to the builder for the permission set.
  7. Review with the developer to confirm every source and action type is available in this org before build starts.

Review Checklist


Salesforce-Specific Gotchas

The deep versions, with sources, live in references/gotchas.md.

#GotchaOne-line consequence
1OmniUiCard records are internal-use onlyDirect edits or loads can break the card
2Guest OWD is Private and fixed; guest sharing is Read OnlyPublic cards show nothing, or nothing editable
3Integration Procedures are the documented multi-source data sourceSingle-source assumptions break on aggregated fields
4Every server-side action runs with the user's accessActions fail for portal users
5OmniAnalytics tracking exists only in OmniStudio StandardAnalytics requests fail on the Vlocity runtime
6Older OmniStudio Business REST APIs were deprecated in API 55.0Actions built on them are on a retired surface
7State compilation and activation order are help-only claimsBuild order surprises if not confirmed

Output Artifacts

ArtifactDescription
FlexCard requirements documentData source inventory, action register, state spec, embedded components
Data source mapping matrixField-to-source table with element bindings
Action requirements registerActions with type, trigger, outcome, and permission
Audience and permission registerPlacements, audiences, record access path, permission set contents
Card state specificationStates, conditions, order, layout differences

Package files