What is TreoPIM

TreoPIM is a single page application (SPA) with an API-centric architecture and flexible data model based on entities, entity attributes and relations of all kinds among them. TreoPIM allows you to gather and store all your product content in one place, enrich it and spread it to several channels like own online shop, amazon, eBay, online shops of your distributors, on a tablet or mobile application. TreoPIM will help your to structure and organise all you flexible data and get rid of Excel mess. TreoPIM is a developed and supported by TreoLabs GmbH.

Main Definitions

Locale -- is a combination of a language (i.e. German, English) and a country (i.e. Germany, United Kingdom United States) -- i.e. German DE is marked as "de_DE", Austrian German is marked as "de_AT", English UK is marked as "en_GB". You can use one or more locales in the system.

Attribute -- is a product’s characteristic. Each product can be characterised by more than one attributes. We define in TreoPIM more than 20 attribute types. Some attribute types allows to store unique attribute value pro locale for your products. Products can have specific attribute values for channels.

Attribute group -- is a way to categorise the attributes. Different attributes of the same nature can be assigned to the same Attribute groups. You can have multiple attribute groups in TreoPIM.

Brand -- is a brand of the product or the name of its manufacturer. Brands create additional possibility to categorise the products.

Category -- helps to classify the products. A category can have one parent category. A category without parent category is called root category. A root Category starts a category tree. In TreoPIM you can have multiple category trees. A category tree can have unlimited levels.

Channel -- is a set of product information, which can be synced with third-party systems as well as exported in certain formats. Normally channel should be considered as a place, where you product information should appear, for example your online shop, mobile app or print catalogue. Channel and product catalogue have same nature and some cases even same meaning.

Product Family -- is a grouping of similar products, which use similar or same production processes, have similar physical characteristics, and may share customer segments, distribution channels, pricing methods, promotional campaigns, and other elements of the marketing mix. In TreoPIM product families are used, to define a set of attributes that are shared by products belonging to a certain family, to describe the characteristics of these product. The Product can belong only to one product family.

Product -- is the item in physical, virtual or cyber form as well as a service offered for sale. Every product is made at a cost and each is sold at a price. Each product has a certain type (eg simple, configurable etc) and can be assigned to a certain product family, which will define, what attributes are to be set for this product. Product can be assigned to several categories, be of a certain brand, described in several languages and be prepared for selling via different channels. A product can be in association of certain type with some other product.

Product Type -- is a kind of product definition, which specifies, in which way the product should be described by having additional, of different possibilities on UIs for each product type, eg simple product, products with variants, bundle products etc. Product types gives the full flexibility to set up products to the specific needs of the user.

Association -- Associations is the type of relation between two different products, where one in some kind of nature is dependent on, or can cause the other with regard to different marketing strategies, eg cross-cell, up-cell, related etc.

Module -- is an extension or module of the TreoPIM system, to extend or change its functionality to the way, the customer needs. TreoPIM is extremely flexible system, so it is possible to change almost everything. Connector is a module, which is implemented to to interact with third-party systems and exchange the data between them. The API of TreoPIM or API of a third-party system can be used for it.

Dashboard -- is a collection of data displayed in a graphical or table layout as widgets. Dashboards allows users to have all the important information grouped by certain type or nature in one single place. Every user can have several dashboards.

Main Concepts

Concept of Entity

An entity is any singular, identifiable and separate object or unit of data that can be classified and have stated relationships to other entities. The entities are used to model and manage business data. For example, in TreoPIM we use following entities: Products, Categories, Product Images, Channels, Attributes, Attribute Groups, Product Families and much more. An entity has a set of attributes and each attribute represents a data item of a particular type. For example, the channel entity has following Attributes: Name, Activity State, Type, Currencies, Description and some other system attributes. Conceptually, an entity is like a database table, and the entity attributes are the table columns. New information in the entity is stored as an entity record - this is like adding a row in a database table. The entities are divided into three categories: system (are hidden from Administrator), business and custom (both available for Administrator). Administrators, working with your business data, can create new custom entities or modify existing business or custom entities, set relations between the entities. In TreoPIM it is possible to set business and custom entities and attributes to be either customisation or non-customisable. You can modify a customisable entity by renaming it, adding new attributes, deleting or changing attributes. You cannot modify a non-customisable entity. Developers can change everything.

Concept of Record Deletion

  • All records remains always physically in the database.
  • The state of the record, whether it is deleted or not is defined by the system attribute isDeleted.
  • All records, where isDeleted attribute is true are not visible for the User, as if they were deleted.
  • Only Developer can recover the deleted records.
  • Please notice, if changes in the data structure occur, no data for removed fields can be recovered from the database any more.

Concept of Activeness

  • It is possible to define for each entity in the system, whether their records can be activated and deactivated.
  • Deactivated records cannot be in relation to any other entities.
  • Deactivated records are available for search only on the UI of that very entity, on all other interfaces these are not visible.

Concept of Completeness

  • Concept of Completeness can be applied to any entity in system.
  • Thanks to the concept of completeness it is possible to save the records, with not all required fields filled.
  • The records of the entity with unfilled required attributes can only be saved in the inactive state (activity for the entity should be activated).
  • The completeness ratio is automatically added as an attribute and is a percentage of filled required attributes of the entity.
  • An entity record is considered as complete, means completeness is 100%, if all required attribute values are filled.
  • Completeness is separately calculated for each locale.
  • We have extended the completeness for the product entity in the following way
    • Completeness is calculated additionally for each channel
    • Completeness is calculated additionally for each locale - only the products with all filled required multi-language attributes can be activated.
    • The completeness of all related product attribute values is taken into account, while calculating the completeness of the product.

Concept of Data Auditing

Each entity field can be set to be audited or not. In the case option is activated all the changes made to the field value for a certain record will be logged and are shown in the activity stream as - old value, new value, who has made the change and when.