Skip to content

Text fields

Text fields are the core of personalization: a first name, a date, initials, a short message. A product can have several text fields, each configured independently.

Option Behavior
Label Shown above the field on the product page, and used as the property name the merchant sees in the order (e.g. Engraving). Translated defaults are provided; you can edit them.
Placeholder Hint text inside the empty field.
Character limit Hard maximum, spaces included. The browser prevents typing past it.
Required An empty required field blocks add-to-cart with a clear, translated message under the field.
Forced UPPERCASE The input is transformed to uppercase as the customer types — useful for engraving styles that only support capitals.
Validation pattern (regex) Optional regular expression the value must match (e.g. digits only for a jersey number). Invalid input blocks add-to-cart with a translated message.
Show in preview The field whose value is rendered in the preview zone. With a single zone, exactly one field can be the preview target; with multi-zone previews, each zone is bound to its own text field.

Validation uses the browser’s native form validation (required, pattern, maxlength), wired into the theme’s own product form. This has two practical benefits:

  • It blocks submission reliably on all themes, including themes that delegate their submit handling (Horizon-style), because the check happens before the submit event.
  • Error messages appear in the customer’s language — the app ships storefront strings in 15 languages, all editable.

The app never modifies or replaces the Add to cart button; it only prevents an invalid form from submitting.

Each filled text field becomes a line property on the cart line and the order line — visible in the cart, the Shopify admin order view, order confirmation emails and the packing slip. See Order line properties for the exact naming.