logo

OV25 Setup for Shopify and WooCommerce

Configure how the OV25 configurator appears and behaves on ecommerce storefronts.

The OV25 setup UI is a visual editor for the configurator experience on Shopify and WooCommerce stores. Use it to choose where the configurator appears, how customers open it, how variants are shown, and how the UI should match the storefront.

After configuring the settings and saving, the settings will be immediately applied to the storefront.

You can save settings either globally for all products, or on a per-product basis.

Product Type

This lets you choose which type of configurator you are editing the settings for. Each type has its own separate settings.

Elements

These toggles control which part of the configurator should be shown on the product page.

You can choose where these are placed by setting the CSS selectors on the "Settings" page.

Elements

ElementWhat it controls
GalleryThe 3D viewer/image gallery
PriceThe configured product price
NameThe product or range name
VariantsThe option/variant selector
SwatchesWidget that opens the swatch book
Configure buttonThe button that opens the configurator

Configurator Layout

Layout settings control how the customer opens and uses the configurator. Desktop and mobile can use different modes.

Configurator layout with Inline sticky selected

SettingWhat it does
Display modeChooses whether the configurator appears inline on the page, remains sticky while the page scrolls, or opens in a sheet, drawer, or modal.
Trigger styleControls whether customers see one configure button or split actions (e.g. One button for Fabrics, one for Legs)
Variant display modeChooses how product options are presented on desktop and mobile: wizard, list, tabs, accordion, or tree. Accordion uses collapsible option groups on both viewport sizes.
Hide optionsHides specific option groups from the customer-facing variant UI.

For product pages with limited space, use a sheet, drawer, or modal. For richer product pages where the configurator is the main buying flow, inline layouts usually feel better.

Inline (sticky)

Inline (sticky) is available for standard and bed configurators. It keeps the 3D viewer visible while the customer scrolls through a long inline variant list.

  • On desktop, use a two-column product layout with the gallery/viewer in one column and the variant controls in the other.
  • On mobile, use a single-column layout with the gallery/viewer before the variant controls.
  • The viewer automatically accounts for a detected fixed or sticky site header. Shopify and WooCommerce also provide a Header Selector setting when automatic detection needs an explicit override.
  • A mobile sticky layout does not leave enough space for the product carousel below the viewer. Provide a mobile carousel target through the Shopify or WooCommerce integration so the carousel can be placed elsewhere on the product page.

The integration repairs common layout wrappers and can fall back to a body-level sticky layer when the storefront theme prevents native sticky positioning. The product-page structure still needs to follow the desktop or mobile layout described above.

The header and carousel target selectors are managed by the Shopify or WooCommerce integration. They do not appear in the configurator setup panel.

Snap2 layouts

Snap2 uses a smaller set of supported layouts:

Snap2 dialog, drawer, and panel position controls

ViewportSupported display modes
DesktopDialog or Inline
MobileDialog, Drawer, or Inline

When Dialog is selected for desktop, two additional controls are available:

SettingWhat it controls
Variant positionChooses whether the main Snap2 variant-selection panel opens on the left or right.
Module positionChooses whether compatible modules appear on the left, right, or in the bottom module panel. When it matches the variant position, modules are shown within the same side panel.

These position controls apply only to the desktop Dialog layout. They are hidden for desktop Inline and for all mobile Snap2 layouts.

Image Gallery

Gallery settings control how product imagery and the 3D viewer sit together.

SettingWhat it does
LayoutChooses whether to show a carousel, a stacked grid, or no images.
Max imagesLimits how many ecommerce product images are shown alongside OV25 imagery.

Custom injectConfigurator integrations can provide each item in images as either a URL string or a responsive image object. Existing string arrays remain valid.

type ProductImageInput = string | {
  alt?: string;
  urls?: {
    thumbnail?: string;
    small_image?: string;
    image?: string;
    hero?: string;
    original?: string;
  };
};

OV25 selects an appropriate URL for carousel, gallery, main-view, and fullscreen use, falling back through the available sizes when a preferred size is absent.

Branding

Branding settings adjust the high-level visual identity of the OV25 UI.

Branding

SettingWhat it does
Logo URLShows your logo in the configurator UI.
Mobile logo URLUses a different logo on mobile.
Hide logoHides the logo from the configurator UI.

Behaviour Flags

Behaviour flags turn optional OV25 features on or off.

Behaviour flags including Buy Now and 3D drag indicator controls

SettingWhat it does
Hide pricingHides OV25 pricing in the configurator UI.
Disable add to cartPrevents OV25 from showing or using its add-to-cart action.
Disable buy nowHides the direct Buy Now action while leaving Add to Cart available.
Hide ARHides augmented reality controls.
Hide 3D drag indicatorHides the gesture hint shown when the 3D viewer loads.
Defer 3DShows product imagery first and loads 3D after the customer starts configuring. This can improve initial page load time.
Show optionalShows optional selections where supported.
Force mobileForces the mobile configurator layout. Use mainly for testing or special embedded layouts.
Auto openOpens the configurator automatically when the page loads. Only applies when not using inline display mode.

Element Styles

Element Styles, text overrides, and custom CSS controls

Element styles let you visually adjust the configurator to match your store's brand without editing theme code or writing CSS. You can easily customise the colors, borders, paddings, margins, fonts, and more.

The setup UI also includes targeted element rules. These let you pick a known OV25 element, such as the checkout button, and apply common CSS properties to it.

The element list includes stable selectors for new and commonly customised UI parts, including:

  • size variant card grids, names, dimension rows, lines, markers, and values;
  • Snap2 module names, module-name tooltips, and module detail titles;
  • selected and unselected states through [data-selected="true"] and [data-selected="false"];
  • product carousel items, variant cards, option tabs, and module controls that expose data-selected.

If you want to add more complex CSS rules, you can target these selectors in the Custom CSS field.

Text Overrides

Text overrides change customer-facing wording in the configurator. Use them for brand tone, regional spelling, or clearer storefront labels.

Examples:

  • change "Configure" to "Customise"
  • rename option headings such as "Fabric" to "Choose your fabric"
  • rename a fabrics from "Cotton" to "Cotton Blouse"

Some text overrides can use conditions. The below image shows an example of renaming the option "Fabric" to "Seat Material". All other options unaffected.

Text Overrides

Some text overrides can also include dynamic values, such as product name, option name, selected variant name, or price. If these are available the will be shown as clickable buttons. Below is an example of changing the product name from "Windrush Loveseat" to "Range: Windrush / Product: Loveseat".

Text Overrides

Saving

After you are happy with your settings, click Save to immediately apply the settings to your storefront. Moving between the Settings and Style tabs keeps your in-progress draft during the current editor session.

When existing settings are loaded, the editor restores colours generated under :host as well as legacy :root colour variables. Saving again writes the current setup format.

On this page