Key concepts
Before you build, it helps to know the pieces Optical Form uses. They all appear under these names in the app admin.
A multi-step flow the customer completes on the product page. It has a name, a status (Draft / Active / Archived) and a list of steps. It’s assigned to one or more products and published to Shopify via sync.
Each step asks the customer a question (lens type, material, prescription, accessories…). It has an Input type that decides how it renders. See Build a form for the full list.
Option
Section titled “Option”Inside a select step, each option is a selectable card (e.g. “Progressive”, “Anti-reflective”). An option can carry: a label, an image, an informational badge (visual only), incompatibilities with other options, a jump to another step, and one or more add-ons.
Add-on
Section titled “Add-on”A Shopify product linked to an option that’s billed as a separate line item in the cart when the customer picks that option (e.g. the lens type itself, a treatment, a fitting service). They’re grouped under the main product as a bundle.
Selectable colours
Section titled “Selectable colours”A row of colour swatches inside an option (tints, polarised, photochromic). The customer picks one colour and only that one is charged: each colour is a variant of one of your products, and several products form titled groups (Classic, Fashion, Gradient…). See Selectable colours.
Design preset
Section titled “Design preset”A complete look for the panel in one click — Classic, Modern or Dark — from the Design tab. Not to be confused with a form template (the steps a new form starts from) or your theme’s product template. See Design & cart.
Accessory (cross-sell)
Section titled “Accessory (cross-sell)”An Accessories step offers optional extra products (cases, cleaners, cords…) the customer can add or skip. Unlike add-ons, they live in their own step and don’t depend on a specific option.
Bundle
Section titled “Bundle”The set of main product + add-ons + accessories added to the cart in one click. Shopify links them natively via parent_id, so they cascade-delete and read together at checkout and in order emails. See Design & cart.
Graduation (Rx)
Section titled “Graduation (Rx)”The customer’s prescription data: sphere (SPH/PWR), cylinder (CYL), axis (AX), addition (ADD) and pupillary distance (PD), per eye (OD / OI). See Prescription capture.
Metaobject / Sync
Section titled “Metaobject / Sync”Each form is published to Shopify as a metaobject. Saving in the app isn’t enough — you must Sync for changes to reach the storefront. See Sync.