Skip to main content
The customer configuration node bundles all settings around capturing and processing customer data in the online shop.
It defines which information is requested in the customer account and during checkout, how these fields are named, grouped, validated and marked as required — including control of the storage type (in the account, in the order or both).
In addition, it allows you to structure forms via field groups as well as set global display and storage rules for additional customer data fields.

customer* - Basic structure

The basic structure of the customer node is shown below:
{
    "customer": {
      "customerDataField": {...},
      "customerDataFieldSettings": {...},
      "customerDataGroup":{...}
    }
}
Parameter descriptions
ParameterDescription
customerManages customer data and account functions in the shop.
customerDataFieldConfigurable customer data field.
customerDataFieldSettingsSettings for the display and storage of customer data fields.
customerDataGroupGroups several customer data fields into a section.

customer.customerDataField - Customer data fields

Defines freely configurable fields for customer data — including label, required status and storage location. Supports various field types (text, number with units, date, checkbox, selection) with defaults, value ranges and validations. Example configuration
{
  "name": "companyName",
  "label": "<Textbaustein>",
  "required": true,
  "storageStrategy": "account",
  "type": {
    "text": {
      "default": ""
    }
  },
  "validations": [
    { "service": "inputValidation.minLength", "options": { "len": 2 } },
    { "service": "inputValidation.maxLength", "options": { "len": 80 } }
  ]
}
Parameter descriptions
ParameterTypeDescription
namestring (unique)Technical name of the field. Must be unique and is chosen by you.
labelstringDisplay name on the user interface.

requiredboolMarks the field as required.
Default: false
accountMemberFieldboolDetermines whether the field is stored on the company account or on employee accounts.
storageStrategyenumStorage location of the values — in the account, only in the order or both.
Possible values:
- account
- order
- hybrid
Default: account
typeoneOfField type for detailed configuration.
textobjectText input field.
defaultstringPre-fill for the text field. (optional)
numberobjectNumeric input field.
defaultintPre-fill for the input field (optional).
minintMinimum allowed value. (optional)
maxintMaximum allowed value. (optional)
stepintStep size of the value during input.
Default: 1
numDecimalsintNumber of decimal places.
Default: 0
unitoneOfUnit definition (optional).
constantobjectFixed, non-modifiable unit.
namestringTechnical name of the unit.
labelstringDisplay label of the unit.

dynamicobjectBase unit + selectable unit.
baseUnitNamestringName of the base unit.
unitOptionslist (object)List of available units.
namestringTechnical name of the unit.
labelstringDisplay label of the unit.

factorfloatConversion factor.
convertersingleServiceExternal converter for the conversion (optional).
Currently only unitConverter.orderOfMagnitude is available here.
freeSelectionobjectFree selection from fixed options.
unitOptionslist (object)Selectable units.
namestringTechnical name.
labelstringDisplay label.

defaultOptionNamestringDefault unit.
dateobjectDate field.
defaultstringPre-fill (optional).
checkboxobjectCheckbox.
defaultboolPre-fill for the checkbox.
Default: false
selectobjectSelection list (dropdown).
optionslist (object)Available selection values.
valuestringTechnical value of an option.
labelstringDisplay label of the option.

defaultstringPre-selected option (optional).
validationsmultiServiceList of validation rules.
Examples: - minLength - maxLength - more under Validation and check services.
Target: inputValidation

customer.customerDataFieldSettings - Field configuration

Controls how additional customer data fields are displayed and stored in the shop. Ungrouped fields can optionally be shown, and account fields can additionally be stored in the order. In addition, you define here which fields are requested during new or existing customer registration. Example configuration
{
  "showUngroupedFields": true,
  "storeAccountFieldsInOrder": false,
  "newCustomerFields": [
    "customer.customerDataField.neukundenfeld1",
    "customer.customerDataField.neukundenfeld2"
  ],
  "existingCustomerFields": [
    "customer.customerDataField.bestandskundenfeld1",
    "customer.customerDataField.bestandsfeld2"
  ]
}
Parameter descriptions
ParameterTypeDescription
showUngroupedFieldsboolShows ungrouped customer data fields in the form.
Default: true
storeAccountFieldsInOrderboolStores account fields additionally in the order.
Default: false
newCustomerFieldsmultiAssocList of customer data fields requested during new customer registration.
Target: customer.customerDataField
existingCustomerFieldsmultiAssocList of customer data fields requested during existing customer registration.
Target: customer.customerDataField

customer.customerDataGroup - Grouping

Groups freely defined customer data fields into a section (e.g. billing address, company information). Each group has a technical name, a visible label and references the contained fields. Example configuration
{
  "name": "company_data",
  "label": "<Textbaustein>",
  "fields": [
    "customer.customerDataField.company",
    "customer.customerDataField.vatId",
    "customer.customerDataField.phone"
  ]
}
Parameter descriptions
ParameterTypeDescription
namestringTechnical name of the group. Chosen by you.
labelstringDisplay name of the group in the form.

fieldsmultiAssocList of assigned customer data fields shown in this group.
Target: customer.customerDataField