SPO – Smart Product Options

SPO – Smart Product Options

Offer the full range of your product variety in one place. Add unlimited custom options, dynamic pricing, conditional logic and product swatches — all without touching code.

App Name SPO – Smart Product Options
Version v1.0
Author HukCommerce
Support Lifetime updates

🎛️ Welcome to SPO – Smart Product Options!

Thank you so much for using SPO – Smart Product Options and for being a loyal customer. You are awesome!

You are entitled to get free lifetime updates to this product + exceptional support from the author directly. This documentation will guide you through each step — from installing the app and creating your first option set, to setting up conditional rules and assigning options to your products.

  • ♾️ Unlimited Custom Options
  • 💸 Dynamic / Add-on Pricing
  • 🎨 Swatches, Dropdowns, Text Fields
  • 🔀 Conditional Show / Hide Rules
  • ⚡ Auto-assign to Products
  • 📱 Mobile Friendly
  • Installing the App

    Navigate to the app's listing page on the Shopify App Store and click Add app. You will be guided through the standard install process — granting the app certain permissions and approving the charge. New users will receive a free trial period; billing starts after the trial ends. If you uninstall before the trial ends, you will not be charged.

    Activate the App on Your Theme

    After installing, click the Activate button in the status bar at the top of the app page. You will be redirected to the theme editor with the app embed block toggle already enabled. Click Save in the upper right corner to apply the changes.

    Activate SPO app embed block in theme editor

    Add the App Block to the Product Page

    After activating the embed block, add the SPO section to your product page template so that custom options appear in the correct position on the storefront.

    Add SPO section to the product page template

    Create an Option Set

    An Option Set is a collection of options (e.g. Color, Size, Engraving Text) that you build once and assign to one or many products.

    1. From the app's left menu, select Option Sets and click Create Option Set.
    2. In the Option set name field, provide a name for your set.
    3. In the Options tab, click Add new option to start adding options.
    💡 The option set name is for internal records only — it will not appear on your storefront.
    Create option set and add new option
    1. From the popup, select the option type you want to create (Swatch, Dropdown, Text field, Checkbox, etc.).
    Select option type popup
    1. In the Option title field, provide a label (e.g. "Color", "Size") — this is shown on the product page above the option values.
    2. Optional: Check Option is required if customers must select a value before purchasing (e.g. choosing a size before adding to cart).
    Option title and required setting
    1. Optional: Below the Option Title, additional display settings let you control how option values appear on the product page.
    Option display settings

    Values Elements

    The Option Elements section provides additional settings to refine how options are displayed:

    • Description — Add a descriptive note or instructions to help customers make informed selections.
    • Order — Defines the position of the option on the product page. A lower number places it higher in the list.
    • CSS Classes — Assign custom CSS classes for advanced styling (developer feature).

    Add Values to Your Option

    Add values to your option. The first value is pre-created by default. Basic settings are available in the general view; enhanced settings are grouped in their corresponding tabs.

    Add values to option – basic and enhanced settings

    Basic Settings

    • Fill in the Value title field — shown on the storefront for most option types (hidden by default for Swatches).
    • Upload a picture by clicking the image icon — for Swatches, this image becomes the swatch automatically.
    • Enter a price adjustment: positive values add to the product price (+$), negative values subtract from it (–$).
    • Check Default value to pre-select this value when the product page loads.

    Enhanced Settings

    Advanced Pricing

    • The price set in Basic Settings becomes the main value price (Enable advanced pricing is pre-selected by default).
    • Add a Compare price to display a crossed-out original price during sales.
    • Choose a Price type — Fixed or Percent. When Percent is selected, the amount is calculated off the original product price.
    Advanced pricing settings for option values

    Images & Colors

    • The image uploaded in Basic Settings appears here automatically and is set as the swatch icon.
    • Enable Enlarge on hover to show a larger preview of the swatch image when hovered.
    • Enable Replace main image to make this image become the main product image when selected.
    Images and colors settings for swatch values

    Description

    Add a description to each option value if needed — for example, to explain what a material feels like or provide sizing guidance. The description display type (tooltip, inline text, etc.) can be configured in the app's Settings admin section.

    💡 Remember to periodically click Save at the top right to preserve your progress. Once the option set is ready, you can optionally add conditional rules, then assign it to your products.

    Define Rules & Conditions for Your Options

    SPO lets you create rules to dynamically show or hide options based on the value of other options. For example: show an "Engraving Text" field only when the customer selects "Personalized" from a Style dropdown.

    1. From the option set admin panel, navigate to the Rules tab.
    2. Click the Add new rule green button.
    3. Click the + Add option link
    4. From the Select option dropdown menu, choose the target option.
    5. Choose a condition operator from the second dropdown. It can be either is or is not.
    6. Choose the value of the target option you selected in the first dropdown.
    7. Optional: If you need to add more conditions, please click the + Add option link again and perform the same steps described above.
    8. If you added more than one condition, you need to set a condition type. Navigate to the Need all/any of these conditions to trigger action setting above the conditions, and select either all or any condition type.
    9. Click the + Add action link.
    10. Expand the dropdown with available actions and choose an appropriate one.
    11. After you choose an action (except the Hide options or values), please add the corresponding attribute to the field that shows up. If you choose the Hide options or values action, click the + Add option link.
    12. Select the dependable option from the Select option dropdown menu.
    13. Select either All or particular option value(s) from the Select value dropdown menu. The app allows creating an unlimited number of rules, to add a new rule click the Add new rule green button again and follow the steps described above.
    Rule builder – conditional show/hide options
    ⚠️ Note: Note: The app doesn't allow using the same option values in several "show/hide actions" rules. I.e the same option value won't show up in the second rule if it has already been used in the first rule.

    We'd recommend grouping all the conditions that trigger the "show" action of a particular value into one rule.

    For example: If Condition1, Condition2, Condition3 etc. >> show options or values >> a particular option value. Also, you may consider duplicating the option that is supposed to be dependable and use each copy for its own rule.

    Assign Option Sets to Products

    After creating an option set, assign it to products so that the options appear on your storefront. From the Option Sets page, open the option set and click the Products tab. Choose between two assignment methods:

    Manually

    Select products one by one from the list, or select all at once to assign in bulk. Best when you want precise control over exactly which products receive this option set.

    Manually assign option set to products

    Automatically

    Set a condition — both existing and future products that match the condition will be assigned automatically. Conditions can be based on:

    • Product Type
    • Vendor
    • Product Tag
    Automatically assign option set by condition
    💡 Tip: Use the Automatic method for large catalogs — for example, tag all customizable products with "custom" and the option set will apply to every matching product automatically, including ones added in the future.