Skip to main content
Migrate to Polaris

Version 2025-07 is the last API version to support React-based UI components. Later versions use web components, native UI elements with built-in accessibility, better performance, and consistent styling with Shopify's design system. Check out the migration guide to upgrade your extension.

Navigation API

The Navigation API provides screen-based navigation functionality for POS UI extensions, allowing you to navigate between screens, manage navigation stacks, and dismiss modal interfaces within full-screen modal workflows. The API enables multi-screen experiences with parameter passing and navigation control.

  • Multi-screen workflows: Build multi-screen modal workflows with navigation and parameter passing.
  • Wizard interfaces: Implement wizard-style interfaces guiding users through sequential steps.
  • Hierarchical navigation: Create hierarchical navigation with push/pop patterns.
  • Modal dismissal: Handle modal dismissal programmatically when workflows complete.

The Navigation API object provides screen-based navigation functionality for POS UI extensions. Access the following properties on the API object to navigate between screens, manage navigation stacks, and dismiss modal interfaces.

() => void
required

Dismisses the extension modal completely. Use for closing the modal when workflows are complete, cancelled, or when users need to return to the main POS interface.

(screenName: string, params?: any) => void
required

Navigate to a route in current navigation tree. Pushes the specified screen if it isn't present in the navigation tree, goes back to a created screen otherwise. Use for implementing multi-screen workflows with parameter passing between screens.

() => void
required

Pops the currently shown screen from the navigation stack. Use for implementing back navigation, returning to previous screens, or programmatically navigating backward in multi-screen workflows.


  • Handle navigation parameters effectively: Use navigation parameters to pass data between screens, maintaining workflow context and user progress across screen transitions.
  • Implement proper screen management: Design screens that can be pushed and popped.
  • Provide clear navigation controls: Implement clear navigation controls and feedback so users understand their current location in the workflow and how to navigate between screens.

  • The Navigation API is only available in action (modal) targets and can't be used in action (menu item), block, or tile targets that don't support multi-screen navigation.
  • Screen navigation is based on screen names and the navigation stack, which differs from URL-based navigation patterns found in web applications.
  • Navigation parameters must be serializable and can't contain functions, complex objects, or circular references.

Was this page helpful?