CRM Custom Fields
Custom fields let you extend the default data model with fields specific to your organisation's workflow. Once defined, custom fields appear automatically on record detail pages alongside the built-in fields — no code changes required.
Entity Tabs
The Custom Fields page is divided into three tabs, one per entity type:
| Tab | Where fields appear |
|---|---|
| Organization | Organization detail page (bottom of the main info panel) |
| Note | Note creation form and note detail view |
| Task | Task creation form and task detail view |
Switch tabs to manage fields for each entity independently.
Field Types
| Type | Use for | Example |
|---|---|---|
| Text | Short free-text values | Account manager name, reference |
| Number | Numeric data (integer or decimal) | Employee count, credit limit |
| Date | Calendar date (no time component) | Contract renewal date |
| Boolean | Yes / No flags | Is enterprise account, opted in |
| Select | One choice from a predefined list | Industry vertical, tier |
For Select fields, enter the list of options when creating the field. Options can be added or removed after creation — removing an option does not delete existing records that used it.
Creating a Custom Field
- Select the entity tab (Organization, Note, or Task)
- Click Add Field
- Enter a Label — the display name shown to admins
- Choose a Type from the dropdown
- For Select fields, add at least one option
- Click Save
The field is immediately available on all records of that entity type.
Label tip: Labels should be short and self-explanatory. They appear inline on record detail pages where space is limited.
Editing a Custom Field
Click the edit icon on any field row to change its label or (for Select fields) update the option list. The field type cannot be changed after creation — delete and recreate the field if a type change is needed.
Deleting a Custom Field
Click the delete icon and confirm. Deleting a field removes it from all record detail pages and from the creation forms. Existing values stored on records are also deleted and cannot be recovered.
Before deleting a field that has been in use, consider whether any workflows or reports depend on its values.
Field Display Order
A drag handle is visible on each field row. Reordering support is planned for a future release — the current order reflects creation order.
How Custom Fields are Stored
Custom field values are stored as JSONB on each record. The
DynamicFieldRenderer component reads the field definitions at render time and
displays the correct input or display widget for each field type automatically.
No database migrations are required when fields are added or changed.
Access Requirements
- Role: Admin or Super Admin
- Permission:
crm:manage - Navigate to: Admin → CRM → Settings → Custom Fields