Custom Fields
Track the data that's specific to your business — typed, filterable, on every plan
Your fields, on your records
Ardent Seller can't ship a column for everything your business tracks — a scent profile on candles, a voltage on equipment, a lead time on a vendor, an allergy note on a customer. Custom fields let you define those yourself: typed fields (text, number, date, yes/no, or dropdown) that attach to inventory items, customers, or vendors, appear on each record's detail sheet, and work as real list columns you can filter and sort. Custom fields are unlimited on every plan, including Free.
Creating a field
Go to Settings → Custom Fields (under the Library group on the Settings page) and click Create. You need permission to manage settings — if you don't see the page, ask your account owner. Each field definition has:
- Label — the name shown everywhere (up to 100 characters). Labels must be unique for each target, so Inventory can have a "Notes" field and Customer can have its own "Notes".
- Applies To — Inventory, Customer, or Vendor. This is chosen when you create the field and can't be changed later.
- Type — one of the five types below. Also locked after creation; to change a field's type, create a new field and archive the old one (stored values are kept).
- Options — for Dropdown fields only: the ordered list of choices.
- Category scope — for Inventory fields only: all categories, or just the ones you pick (next section).
- Required on new saves — when on, the field must be filled in to save the record. This applies going forward only; existing records are never bulk-blocked.
- Help Text — an optional hint shown under the input on the detail sheet.
- Status — draft, active, or archived. Only active fields appear on records and in CSV files.
If you have no fields yet, the page offers one-click starter suggestions per target — Material and Color/Finish for inventory, Customer Type and Allergen Notes for customers, Lead Time (days) and Certifications for vendors. Clicking one opens the create sheet pre-filled; nothing is created until you save.
The five field types
| Type | Stores | List filter | Example |
|---|---|---|---|
| Text | Free text (up to 2,000 characters) | Contains | Scent Profile: "lavender, cedar" |
| Number | A number, sorted numerically | Min-max range | Voltage: 110 |
| Date | A calendar date | Date range | Certified On: 2026-03-15 |
| Yes / No | A checkbox value | Yes, no, or either | Allergen-Free: Yes |
| Dropdown | One choice from options you define | Multi-select of options | Wax Type: soy |
Values are stored typed, not as text — so a Number field sorts 9 before 110, and a Date field filters by a real date range. Pick the narrowest type that fits: a Dropdown keeps spellings consistent where free text would drift ("soy", "Soy", "soy wax").
Scoping inventory fields by category
An Inventory field can apply to all categories or only to the categories you choose — so "Scent Profile" appears on finished goods and ingredients but never on equipment, while "Voltage" appears only on equipment. Each category's detail sheet stays short and relevant.
If you later change an item's category so a field no longer applies, the stored value is retained, not deleted — the field simply stops rendering. Switch the category back and the value reappears. Customer and Vendor fields have no sub-scope; each target gets one set of fields.
Filling in fields on a record
Open any inventory item (for example Source → Ingredients or Deliver → Products), customer (Deliver → Customers), or vendor (Source → Vendors) and edit it — your active fields render as a Custom Fields section on the detail sheet, in the display order you set, each with the right input for its type: a text box, a numeric input, a date picker, a switch, or a dropdown of your options. Help text appears under the input.
Required fields are marked and block saving while empty — but only on the records you actively edit. Turning "Required" on never locks you out of records saved before the rule existed; the missing value surfaces the next time you edit that record.
Columns, filtering, and sorting on lists
Every field becomes a list column on its target's list pages. Custom-field columns are hidden by default so a long field list never crowds the table — turn the ones you want on from the list's column-visibility menu; your choice is remembered per device.
Each column header carries a filter matched to the field's type: text contains, number range, date range, yes/no, or a multi-select of dropdown options (including an "(empty)" choice to find records with no value). Filters compose with the list's other filters, and your selections persist between visits. Sorting by a custom-field column works on the inventory and vendor lists; the customer list supports custom-field filtering but not sorting by these columns.
Custom fields in CSV import and export
CSV export from the inventory, customer, and vendor lists includes one column per active field, titled "CF: " followed by the field's label — for example CF: Scent Profile. Archived fields are not exported. On import, a header matches a field by that "CF:" title, by the bare label, or by the field's internal key, case-insensitively — and you can also map any column to a field by hand in the import mapping step.
- Import never creates a field definition. An unrecognized header simply stays unmapped — a typo can't silently mint a new field. Define fields in Settings first.
- Yes/No values export as Yes or No; import also accepts true, false, 1, and 0.
- Dates use YYYY-MM-DD.
- Dropdown values must match one of the field's options exactly, including capitalization — options are never created on import either.
- A value whose field doesn't apply to that row's inventory category is skipped with a warning rather than failing the import.
- "Required" is not enforced during CSV import, so migrations and bulk loads are never blocked by a required field.
For the general import workflow, see Importing from CSV and the import reference.
Renaming, archiving, and limits
Because fields live in one registry, renaming a field updates it everywhere instantly — every detail sheet, column, and future export. Your saved column and filter preferences survive renames too, and CSV import still matches the field by its stable internal key.
The settings table shows a usage count — how many records hold a value for each field. A field that's still in use can't be deleted; archive it instead. Archiving hides the field from sheets, columns, and exports but keeps every stored value, so unarchiving restores everything. Delete is only available at zero usage.
There is no cap on the number of custom fields, on any plan. The practical limits: labels up to 100 characters, help text up to 500, and text values up to 2,000 characters.
Custom field, attribute, or tag?
| Use | What it is | Reach for it when |
|---|---|---|
| Custom field | A typed, single value per record (text, number, date, yes/no, dropdown) | You want structured data you can filter and sort by — a voltage, a lead time, a wax type |
| Attribute | An option set (Color = Red, Blue) that generates product variants and SKUs | The choices are versions of the product you actually stock and sell separately |
| Tag | A color-coded label; a record can carry many, across inventory, transactions, and recipes | You want cross-cutting grouping — Seasonal, Bestseller, one launch spanning many records |
Rule of thumb: if the answer changes what you sell (Size, Color variants), it's an attribute; if it's a yes-or-no grouping you'll filter across record types ("Seasonal"), it's a tag; if it's a typed value each record holds exactly one of ("Wax Type: soy", "Lead Time: 14"), it's a custom field. A dropdown field and a tag can coexist — "Customer Type = Wholesale" as a field and a "Wholesale" tag on inventory are different tools for different jobs.
Name fields for the long haul
Put the unit in the label ("Lead Time (days)", not "Lead Time"), prefer a Dropdown over free text whenever the values repeat, and check the usage count before adding a near-duplicate — "Material" and "Materials" side by side will split your filters forever. Fields are cheap to create, so it's tempting to add many; the ones you'll actually filter by are the ones worth keeping active.
Related articles
Labels & Tags
Color-coded tags in Ardent Seller — create them once in Settings, apply them to inventory, transactions, and recipes, filter any list by one or many tags, and bulk-tag selected rows.
Importing from CSV
How to bulk-import inventory, entities, transactions, and more into Ardent Seller from CSV — including opening stock quantities and unit costs.
Import Reference
The complete CSV import and export reference for Ardent Seller — every import surface, the column-mapping flow, required columns, opening stock, and exact error messages.