LogoLogo
CommunitySupport PortalYouTubeStart a free trial
  • Welcome
  • Commerce Engine
  • Orchestration Engine
  • API Documentation
  • Release Notes
  • Changelog
  • Commerce Engine
  • Getting Started
    • General Concepts of Emporix
    • Creating your first tenant
    • Developer Portal
      • Manage Users
      • Manage API Keys
      • Tenant List
      • My Account
      • Manage Showcase and Sample Data
  • Customer Use Cases
    • Commerce Use Cases
      • Quote Process
      • Orders
      • Coupons and Redeeming Rewards
      • Returns
      • Payments
      • User Management and Approvals
      • Customer Social Login
      • Personalized Commerce - Customer Segments
      • Company Shared Orders and Customer Groups
    • Automated Use Cases
      • First Registration Coupon
      • Availability and Warehouse Assignment
      • Quote and Order Entry Automation
  • System Management
    • Introduction
    • Authentication and Authorization
      • Identity and Access Management (IAM)
      • Auth0
      • Emporix Single Sign-On (SSO)
    • Webhook Event Publishing
      • HTTP Webhook Strategy - HMAC Configuration
      • HTTP Webhook Strategy - Integration with Azure Service Bus
      • HTTP Webhook Strategy - Integration with Amazon Simple Queue Service (SQS)
    • Search
      • Universal Search Connector
      • Search Configuration
      • Indexing Service
    • Optimistic Locking
  • Extensibility and Integrations
    • Extensibility Cases
      • External Products, Pricing and Fees
      • Enabling Custom Extensions
    • Integrations
      • SAP Integration
    • Payment Systems
      • PayPal
      • Saferpay
      • Spreedly Gateway
      • Unzer
    • Third Party Add-Ons
      • Emporix Contentful App
      • Emporix Builder.io Plugin
      • Magnolia Emporix Connector
      • Zendesk Emporix Connect
    • Powered by AI
      • AI Smart Config
      • AI Smart Import
  • Core Commerce
    • Introduction
    • AI Assistance
    • Carts
    • Catalogs
    • Categories
    • Coupons
    • Customer Management
      • Approvals
      • Assisted Buying
      • Customer Groups
      • Customer Segments
    • Data Localization
    • Delivery Cycle Management
    • Mixin Schemas
    • Media Management
    • Orders
      • Shared Orders
    • Pricing
      • Pricing (Legacy)
    • Products
      • Availability, location, and stock levels
      • Brands
      • Labels
    • Quotes
    • Returns
    • Reward Points Management
    • Sites
    • Tax Classes
      • Tax classes (Legacy)
    • Measurement Units
  • Management Dashboard
    • Introduction
    • Customer Management
      • Companies
      • Customers
      • Groups
      • Segments
      • Coupons
    • Quotes
      • Quotes
      • Status Codes
    • Orders
      • Orders
      • SEPA
      • Returns
    • Catalogs
      • Catalogs
      • Categories
    • Products
      • Products
      • Product Templates
      • Labels
      • Suppliers
      • Brands
      • AI for a Product Description
    • Pricing
      • Price Models
      • Price Lists
    • Settings
      • Sites
      • Shipping Zones and Methods
      • Delivery Times
      • Units
      • Tax
      • Countries
      • Currencies
      • Languages
      • System Preferences
      • Custom Entities
      • Mixin Schemas
    • Administration
      • Users and Groups
      • Extensions
      • API Statistics
      • Webhooks
    • Extensions
    • Custom Instances
  • Additional Resources
    • Glossary
    • Videos
    • Emporix Community
Powered by GitBook
LogoLogo

Resources

  • Emporix.com
  • Developer Policy
  • Terms of Use

Find us

  • LinkedIn

© 2025 Emporix. All Rights Reserved.

On this page
  • Creating a mixin schema
  • Defining a schema manually
  • Uploading json file
  • Editing mixin schemas
  • Displaying mixins in entity list view
  • Unassigning a schema

Was this helpful?

Export as PDF
  1. Management Dashboard
  2. Settings

Mixin Schemas

Create schemas for custom mixin properties.

PreviousCustom EntitiesNextAdministration

Last updated 22 days ago

Was this helpful?

The Mixin Schemas section allows extending entities in Management Dashboard, for example a product, with customized fields of different types.

Creating a mixin schema

There are two ways to define a new schema in Management Dashboard:

  • defining a schema manually

  • uploading a json file

In Management Dashboard, you can extend the data model for the following entities: category, company, coupon, customer, customer address, order, price list, product, quote, return and custom entity.

Defining a schema manually

  1. Go to Settings -> Mixin Schemas and choose Add new mixin schema.

  2. Select an entity or multiple entities that you want to customize from the dropdown menu and enter the name for the schema. You can also provide a key value for your new schema, which then works as its unique identifier. If you don't provide the key value on your own, it's generated automatically.

The localized name you define for the schema later appears as a separate tab in the modified entity.

  1. Choose the Confirm button.

  2. Go to Fields tab and choose + icon to add a mixin field.

  • Type: Select a field type relevant to its purpose.

The following field types are supported: array, boolean, date, date_time, decimal, enum, number, object, text, and time. The array mixin types support values of different types as well: boolean, date, date_time, decimal, enum, number, object, text, and time.

  • Key: Define a name of the field.

  • Name: Provide the name to display and its translation in desired languages.

  • Array Type (only for the array type): Choose the relevant type of values in an array.

  • Values (only for enum type): Define the default values for the field. Confirm each value with Enter key.

  • Provide relevant configuration in Settings:

    • Localized (only for text type): Decide whether the field is translated to other languages.

    • ReadOnly: Decide whether the field is non-editable.

    • Required (except for boolean type): Decide whether the field is mandatory.

    • Nullable: Decide whether the field can accept null values.

    • Array Localized (only for text in Array Type): Decide whether texts within the array are localized.

    • Array Values (only for enum in Array Type): Define the default values for the field. Confirm each value with Enter key.

  1. Save a field with Confirm button.

Repeat these steps to add as many fields as you require for the given entity.

  1. If you've added fields of object type or of array of objects type, choose + icon within the given row to define the object's fields (only for object and array of objects types).

  1. When you're done with defining mixin schema fields, confirm schema creation with Save. This action generates the schema for a particular entity or entities.

Result: The new schema is in use. It means that if, for example, you've created a schema called Size for a product entity, next time you create or edit a product, the new fields are available in a Size tab.

The schemas of object type display the defined objects as nested within a hierarchical structure:

The schemas of array of objects type also allow for adding objects with the defined fields:

Uploading json file

Updating schema by json file might be useful when you have an already defined data model.

  1. Go to Settings -> Mixin Schemas and choose Add new schema.

  2. Choose an entity or multiple entities that you want to customize from the dropdown menu and enter the name for the schema.

  3. Choose the schema file from your device or drag and drop it to the selected area and choose Confirm.

  4. Confirm the new schema creation with Save.

Result: The new schema is in use. It means that if, for example, you've updated a schema for a product entity, next time you create a product, the new fields are available in a separate tab called the same as your schema.

Editing mixin schemas

  1. Go to Settings -> Mixin Schemas and select the schema you want to change. Choose the Edit icon to modify it.

  2. Make changes to the schema or to particular fields in the schema:

    • In Schema tab, you can select or unselect entities types you want to apply the schema to.

    • In Fields tab, you can change settings for particular fields, add more or remove fields from the schema.

  3. Confirm your changes with Save and confirm you want to update the existing schema.

Each time you edit a schema, you generate its new version. This behavior is to prevent validation errors for the objects that were created/edited earlier and use the older schema versions. The latest schema version is always applied by default.

Result: A new version of the schema has been uploaded and is now in use.

If you have a schema applied to multiple entities, it is possible to modify the schema for each entity separately. You need to select the entities you want your changes to apply to when editing the schema. Then, the new schema version is in use only for the selected entities while the other ones still use the previous version.

Displaying mixins in entity list view

You can add a mixin field as a column in the list view of a selected entity. The mixin field can serve as a filter so that you can find the items of your interest.

  1. Go to the selected entity view and choose the Orchestration icon.

  1. In the Mixins section, look for the mixin fields you want to add as filter columns.

The selected mixin fields appear in the list.

  1. Adjust the way how the columns are displayed with Edit icon. You can edit the displayed label of the mixin column.

  1. Save the selection. The columns appear instantly in the entity list view.

Only the mixins defined in the Schema Service can serve as column filters. If you use the API to create mixins instead of the Schema Service, you won't be able to add the mixin fields from the API upload. To get around this, first define the mixin fields for a given entity in the Schema Service.

Adding mixins as column filters is possible for the following entities: category, company, coupon, customer, customer address, order, price list, product, quote, and return.

Unassigning a schema

If you no longer want to apply the latest version of a schema to an entity, you can unassign it.

  1. Go to Settings -> Mixin Schemas and select the schema you want to remove from an entity.

  2. Choose Unassign icon to remove connection between the latest schema version and entity.

  1. Confirm the action with Yes.

Result: The particular entity uses the previous version of the schema that exists in the database. If you had only one schema version and you unassign it from an entity, the schema tab is no longer visible when you create or edit objects of that type.

If you want to learn how to create json schema file, see .

The unassigned schemas are not displayed in the Management Dashboard. To retrieve, edit or delete an unassigned schema, use API mechanism. See more in .

Prepare a JSON schema definition
Schema Service