Custom Fields
Attach your own fields to ERP entities and query them.
Custom Fields are the primary way for apps to extend the VARIO Cloud ERP data model. They let you attach your own fields to any ERP entity — articles, accounts, documents, CRM activities, and more. This is central to most integrations: storing external reference IDs, tracking synchronization state, mapping data between systems, or adding any app-specific information directly on ERP records.
Once registered, Custom Fields appear automatically in the ERP UI under the "Zusatzfelder" tab and are fully queryable via the API and VQL.
Access pattern: custom.{groupKey}.{attributeKey}
Definition
Define an EAV group as a JSON file in migrations/{n}/static/erp/eav-groups/:
{
"key": "myapp",
"label": "My App",
"description": "Custom fields for the integration",
"attributes": [
{
"key": "externalId",
"label": "External ID",
"description": "Reference ID in the external system",
"position": 1,
"type": "TEXT",
"viewMode": "EDITABLE",
"active": true,
"fulltextField": true,
"searchIndex": true
}
],
"uiSettings": {},
"entities": ["document"]
}Group Properties
key
string
Unique identifier — determines the access path custom.{key}.*
label
string
Display name in the ERP
description
string
Description
attributes
array
The fields in this group
uiSettings
object
UI display configuration (optional)
entities
array
Target entities, e.g. ["account"] or ["account", "document"]
Attribute Properties
key
string
Unique key within the group
label
string
Display name
description
string
Description
position
number
Sort order
type
string
Data type (see below)
viewMode
string
"EDITABLE", "READ_ONLY", or "NOT_VISIBLE"
active
boolean
Whether the field is active
fulltextField
boolean
Include in fulltext search
searchIndex
boolean
Create a search index
textGroupRef
string|null
Reference to a text enum group (for dropdowns)
Attribute Types
TEXT
Text
MEMO
Long text
BOOLEAN
Boolean
INTEGER
Integer
DECIMAL
Decimal
CURRENCY
Currency
DATE
Date
DATE_TIME
Date and time
JSON
JSON object
Migration
The following section on Custom Field migration is only relevant for developers building VARIO apps. If you are working exclusively with the API, you may skip ahead to the next chapter. Custom Fields are registered during app installation via the migration system.
Creating Fields
Updating Fields
Add a new migration folder (e.g. migrations/2/) and use changeEavGroup:
Migration Methods
createEavGroup(json)
Create a group
getEavGroup(groupKey)
Read a group
changeEavGroup(groupKey, callback)
Modify a group via callback
deleteEavGroup(groupKey)
Delete a group including its data
removeDataFromEavGroup(groupKey, attributeKeys)
Remove specific attributes or their data
API Access
Custom Fields live under the custom namespace on every entity they are bound to:
VQL
Permissions
Required in app-manifest.json:
Last updated
Was this helpful?