When Built-in Fields Aren't Enough
Your vertical has product attributes the generic Product form doesn't cover — roll dimensions for vinyl, expiration days for pharmacy, fabric composition for apparel, NDC code for prescription drugs. Custom fields let you add these without us shipping a schema migration.
Where to Create Them
- Go to Settings → Custom Fields.
- Click + New Custom Field.
- Pick:
- Label — what humans see (e.g. "Roll Width (in)")
- Field Name — internal slug, lowercase + underscores (e.g.
roll_width_inches) - Applies To — Product, Customer, or Order
- Field Type — see the table below
- Required — whether a value must be present to save
Pick the Right Field Type
| Type | Use when… | Stores |
|---|---|---|
| Text | Free-form short strings | "Light scent", "Style: vintage" |
| Number (whole) | Integer counts, quantities, case-pack sizes | 12, 100, 1000 |
| Decimal / Float | Fractional numerics — dimensions, weights, prices, rates | 27.25, 0.045, 19.99 |
| Boolean (Yes/No) | Toggles | true / false |
| Select (dropdown) | One value from a fixed list | "Heat press", "Iron-on", "Cold peel" |
| Date | Calendar dates | Expiration, issue date |
| Image | Single image attachment (jpg/png/webp/heic) | Material swatch, hazard pictogram |
| File | Attachment for docs (PDF, Word, Excel, archives) | MSDS sheet, spec sheet, lab report |
Warning — Number vs Decimal: The Number type stores integers only. If you put
27.25into a Number field, it'll be saved as27(silently truncated). For anything that can be fractional — roll yardages, weights in pounds, ounces, dimensions, percentages, prices — use Decimal / Float instead.
File and Image Uploads
- Image fields render a thumb preview after upload and accept JPEG, PNG, GIF, WebP, HEIC/HEIF, SVG, TIFF.
- File fields render a download link with the file size and accept the same images plus PDF, Office docs (DOCX, XLSX, PPTX), iWork (Pages, Numbers, Keynote), OpenDocument, archives (ZIP, 7Z, RAR), plain text, CSV, JSON, XML, and Markdown.
- Active Storage sniffs the file's actual content from its magic bytes server-side, so a renamed
.exewon't slip through as a.pdf.
Editing Field Values on a Product
Once a custom field is defined, it appears on the product edit form under the Custom Fields section. The input type matches what you picked at definition time — date pickers for date fields, number inputs with step=any for decimals, file pickers for files.
Best Practices
- Name fields after the question they answer —
roll_width_inchesinstead ofwidth. Self-documenting; no need to guess units later. - Use selects over text for finite categories — typos turn into orphan filter values otherwise.
- Required = "the platform should reject saves without it" — only mark fields required when truly mandatory. Optional fields with empty values are fine.