SfSkills Domains Docs GitHub

Home / flow / flow-open-a-page-action

flow-open-a-page-action

Use when a Screen Flow needs to send the user to another page — the native Open a Page action (Summer '26) that opens a Salesforce record or an external URL directly from a flow. NOT for launching or embedding a flow — use flow/screen-flows. NOT for a custom navigation LWC — use flow/flow-screen-lwc-components.

Open the skill folder on GitHub


Flow Open A Page Action

This skill activates when a Screen Flow needs to move the user to another page — most often to the record it just created or updated, or to an external URL. Salesforce shipped a native Open a Page action in the Summer '26 release (release note: "Simplify the User Workflow with the Open a Page Action") so this common navigation no longer requires a custom Lightning web component, a Redirect local action, or a URL hack. Use it to design that navigation, or to migrate an existing homegrown redirect onto the supported action.


Before Starting

Gather this context before working on anything in this domain:


Core Concepts

The action: a supported replacement for redirect hacks

Before Summer '26, "when this Screen Flow finishes, take the user to the new record" had no first-class control. Admins reached for one of three workarounds, all of which this action is meant to retire:

The Open a Page action packages the common cases (open a record, open a URL) as a configurable, clicks-not-code action, so the flow's navigation is declarative metadata instead of a component or a URL string that breaks on the next runtime change.

The two navigation targets

TargetWhat it opensTypical source of the value
Salesforce recordThe record's page (its default view)A record variable / recordId produced earlier in the flow
External web pageAn arbitrary URLA text/formula resource holding the URL

When it opens a record, you choose View or Edit mode via the action's View Mode input; either way the user lands on the record's main page — there is no built-in way to target a specific related list / related tab. (A live IdeaExchange request, "Provision to navigate to a related tab from Open a Page action in Flow," exists precisely because the shipped action opens the record's main page, not a chosen tab.)

The "Where to Open Page" input

Where to Open Page is the input that controls how/where the page opens. Treat it as the highest-risk configuration choice, because it changes whether the flow "hands off" the user or opens the page alongside where they are. Two documented constraints frame it:

The Open a Page action is a step you place inside the flow's canvas, distinct from the older finish behavior mechanisms ("Understanding When a Screen Flow Finishes," the retURL customization). Because it's an action, you can branch to it, run it conditionally, or place it before a final screen — you are not limited to what happens only when the interview completes.


Common Patterns

Post-create redirect to the new record

When to use: a Screen Flow creates a record (Case, Opportunity, custom object) and the user should land on that record immediately afterward.

How it works: Create Records → store the new recordId → add an Open a Page action, set the target to that record, and set Where to Open Page to the location the user expects. Place it after the Create so the Id exists.

Why not the alternative: a custom NavigationMixin LWC works but is code you now own, test, and version; the native action is declarative and upgrade-safe.

Open an external URL from a screen

When to use: the flow must send the user to an external system (a payment page, a partner portal, a document) using a URL the flow computed or fetched.

How it works: build the URL in a text/formula resource, then point an Open a Page action's target at it as an external web page and choose the open location.

Why not the alternative: the force:navigateToURL local action / retURL hack still works, but it's undocumented-feeling glue; the action is the supported path and keeps the URL logic in a named resource.

Migrate a legacy redirect onto the native action

When to use: you find an existing Screen Flow that redirects via a custom LWC, a navigateToUrl local action, or a retURL formula.

How it works: confirm the flow is a Screen Flow, drop in an Open a Page action pointing at the same record/URL, verify the open location matches the old behavior, then remove the custom component/local action/URL hack and its now-dead variables.

Why not the alternative: keeping the homegrown redirect means maintaining code or a fragile URL string that the native action already covers.


Decision Guidance

SituationRecommended ApproachReason
Screen Flow should open a record or URL for the userNative Open a Page actionSupported, declarative, no code to maintain
Need to land the user on a specific related tab of a recordNot available in the action todayIt opens the record's default view (see IdeaExchange) — use a targeted URL/custom component if the related tab is mandatory
Need to reuse/refresh the current page (same view)Not available today (no "Current Page" option)Where to Open Page has no current-page option yet (IdeaExchange) — verify options in-org
Navigation needed from an autolaunched / record-triggered flowRedesign so a Screen Flow owns the hand-offOpen a Page is a Screen Flow action; background flows have no UI to navigate
Rich, conditional, or reactive in-screen navigation UXCustom LWC screen component (NavigationMixin)The action covers common cases, not bespoke component behavior — see flow/flow-screen-lwc-components
Only need behavior when the interview finishesNative action late in the flow, or documented finish-behaviorThe action can run mid-flow; finish-URL/retURL only fires at completion

  1. Confirm the surface. Verify the flow is (or will be) a Screen Flow the user actively runs. If the trigger is background automation, redesign so a Screen Flow owns the navigation — the action can't fire without a UI.
  2. Pin the target. Decide record vs. external URL, and make sure the value exists at that point in the flow (e.g. the record Id is populated after a Create). Store URLs in a named text/formula resource.
  3. Choose the open location. Set Where to Open Page deliberately, and open the action in Flow Builder to read the actual option labels for your org — do not assume a "current page" / same-tab option exists.
  4. Place and (optionally) branch the action. Add the Open a Page action where the navigation should occur; use a Decision before it if navigation is conditional.
  5. Retire any legacy redirect. If you're migrating, remove the custom LWC / navigateToUrl local action / retURL formula and delete the variables it required, so two mechanisms don't fight.
  6. Validate against org constraints. Test the record-access behavior (below), the open location on each surface the flow runs, and confirm the maturity/edition assumptions in a real Summer '26 org before promoting.

Review Checklist

Run through these before marking work in this area complete:


Salesforce-Specific Gotchas

Non-obvious platform behaviors that cause real production problems:

  1. It's a Screen Flow action, not a universal navigator — dropping the intent into an autolaunched or record-triggered flow gives the user nowhere to go; navigation requires a Screen Flow the user is running.
  2. It opens the record's default view only — you can't target a specific related list / related tab, so "take them straight to the Contacts tab" is not achievable with the action alone (live IdeaExchange request).
  3. No "Current Page" open option (yet) — Where to Open Page has no option to reuse the exact current page, so you can't declaratively "just refresh where the user already is" (live IdeaExchange request); verify the actual option set in Flow Builder.
  4. Navigation doesn't override record access — opening a record only routes the browser; the record page still enforces sharing/FLS, so a user sent to a record they can't see gets an insufficient-access screen. Don't treat the action as a way to expose data.
  5. Maturity/edition specifics aren't fully pinned here — the retrievable official pages didn't state GA/Beta/Pilot or edition availability for this action, and the Help reference renders as an app shell to fetchers; confirm in a Summer '26 org before committing.

Output Artifacts

ArtifactDescription
Configured Open a Page actionA Screen Flow action set to open a record/URL with a deliberate Where to Open Page value
Navigation-design recommendationNative action vs. custom LWC vs. finish behavior, with the reason from Decision Guidance
Legacy-redirect migration planSteps to replace a custom LWC / navigateToUrl local action / retURL hack and remove dead variables
scripts/check_flow_open_a_page_action.py outputHeuristic scan of Flow metadata flagging navigation in non-screen flows and legacy-redirect migration candidates

Package files