Skip to content
Start free trial

Create a Custom Entity

Schema Editor with the entity list showing Company / Contact / Lead / Opportunity

HARi CRM is not limited to contacts, companies, and deals. You can create custom entities to track anything your business needs — products, projects, locations, contracts, support tickets, or anything else.

An entity is a type of business record. Each entity has its own fields, forms, views, and permissions. Think of it as a table in a database, but presented as a user-friendly interface with forms, lists, and relationships.

  1. Go to Settings > Schema
  2. Click the New button at the top of the entities list
  3. Fill in the dialog:
    • Name — machine name (lowercase, immutable). Used internally.
    • Label — the singular name users see (e.g. “Product”)
    • Label (plural) — the plural form for list views (e.g. “Products”)
    • Icon — pick an icon for the sidebar
    • Color (hex) — optional accent colour (e.g. #10b981)
    • Module — optional grouping (e.g. inventory)
  4. Click Create entity

HARi creates the entity with default system fields (_state, _version, created_by, created_at, updated_at, owner_id) and a default form layout.

After creating the entity, add the fields you need:

  1. Open the new entity from the entities list — the Fields tab is selected by default
  2. Click Add field for each piece of data you want to track
  3. Configure each field’s label, type, and options

For example, a “Product” entity might need:

  • Product Name (Short text)
  • SKU (Short text)
  • Price (Money (currency))
  • Category (Single choice)
  • In Stock (Yes / No)
  • Description (Long text)

See Add a Custom Field for the full list of field types.

The display name controls how records appear in lookups, links, search results, and relationships. For example, a Contact might display “Sarah Chen” while a Company displays “Acme Ltd”.

  1. In the entity header, find the Display name control
  2. Either pick a single field (e.g. name) or assemble a Composite display by clicking the fields in order
  3. Save

See What is a Display Field? for more details on composite display names.

  1. Click the Forms tab
  2. Organize your fields into tabs and sections
  3. Drag fields to reorder them — put the most important fields first
  4. Save the form layout

Connect your custom entity to existing entities by adding a field of type Linked record:

  1. On the entity’s Fields tab, click Add field
  2. Type: Linked record
  3. Pick the target entity (e.g. Contact)
  4. Save

This creates a two-way link: the source entity shows the linked record, and the target entity gets a subgrid of related records.

By default, only admins can see new entities. To give your team access:

  1. Open the entity in Settings > Schema
  2. Click the Permissions tab
  3. Pick a profile (e.g. “Sales Rep”) and toggle Create / Read / Edit / Delete
  4. Save

The new entity starts with a default table view at /{entity-name} in the sidebar. Customize it:

  1. Navigate to the entity
  2. Use the column-settings menu to add, remove, or reorder columns
  3. Apply filters, then click Save current view in the view picker to save it for your team