Product Master Data

The Master Data module serves as the foundational product model data repository. It defines the product passport fields that remain static across all instances of the same product, production line, or product family. These fields typically include attributes such as product type, specifications, bill of materials, and other core characteristics that do not change from one unit to another. By centralizing and standardizing this information, the Master Data module ensures consistency between all instances of the same line.

Datamodel

Field Type Description
id String (UUID) Internal Unique identifier
name String Name of the product master data
meta Json Additional metadata - Static DPP Page Display Data
ecosystem Enum Ecosystem type (e.g., SSI, Catena-X)
payload Json Initial DPP Data
productPassports ProductPassport Linked product passports
createdAt DateTime Creation timestamp
updatedAt DateTime Last update timestamp

Create

To create product master data, the following endpoint can be used.

Example request

POST {{baseUrl}}/core/master-data?organizationId={{organizationId}}
DATA
{
  "name": "<string - name of the product master data>",
  "meta": {
    "displayConfig": {
      "sections": [
        {
          "name": "<string - name of the section>",
          "display": "<string - display type of the section>"
        }
      ]
    }
  },
  "ecosystem": "<string - ecosystem type, e.g., SSI, CatenaX>",
  "payload": {
    "createWalletParams": {
            "profileId": "{{profile-id}}",
            "name": "ice-tea",
            "tags": [],
            "settings": {
                "displayConfig": {
                    "title": "ICE Tea",
                    "subtitle": "<string>",
                    "description": "<string>",
                    "slogan": "<string>",
                    "imageUrl": "<string>",
                    "logo": "<string>",
                    "primaryColor": "<string>",
                    "secondaryColor": "<string>"
                }
            }
        },
        "createDPPCredentialsParams": [
            {
                "templateId": "{{template-product-id}}",
                "data": {
                    "title": "Ice-T-shirt",
                    "size": {
                        "length": 90,
                        "width": 200
                    }   
                }
            }
        ]
  },
}

Right after creation, a product passport can be generated based on the product master data.

Product Passports

Product passports are the core entity of VERA. They are digital representations of products, containing essential information about their lifecycle, attributes, and compliance with standards. Product passports enable transparency and traceability across the supply chain, allowing stakeholders to access and verify product information easily.

Core Entity

The product passport entity is an abstraction of the digital product passport concept, offering a unified interface to create and interact with the actual instantiations of the product passport according the ecosystem within which the instance is active.

Field Type Description
id String (UUID) Internal Unique identifier
name String Name of the product passport
meta Json Additional metadata - DPP Page Display Data
ecosystem Enum Ecosystem type (e.g., SSI, CatenaX)
masterData ProductMasterData? Associated master data
identifiers ProductIdentifier Product identifiers
actions ProductPassportAction Actions/events related to the passport
createdAt DateTime Creation timestamp
updatedAt DateTime Last update timestamp

Product Identifier

The product identifier is a unique identifier for the product passport, which can be used to track and manage the product throughout its lifecycle. These identifiers can include various types, such as GTIN, VIN, or custom identifiers.

Field Type Description
id String (UUID) Unique identifier
kind String Identifier type (e.g., GTIN, GS1, DID)
value String Identifier value
contents Json (optional) Additional identifier data
passport ProductPassport Linked product passport
createdAt DateTime Creation timestamp
updatedAt DateTime Last update timestamp

<aside> ℹ️

The kind field is a soft enum, meaning it can be extended with custom values as needed.

</aside>

<aside> ℹ️

The combination of the value and kind fields should be unique within the context of the product passport.

</aside>

Product Passport Action

The product passport action represents an event or action related to the product passport, such as creation, update, or deletion. It provides a history of changes and interactions with the product passport.

Field Type Description
id String (UUID) Unique identifier
nonce String Unique action nonce
type Enum Action type (e.g., Create, Update, Delete)
ecosystem Enum Ecosystem (e.g., SSI, CatenaX)
state String Action state (e.g., Pending, Completed)
payload Json Action payload
result Json Action result
passport ProductPassport Linked product passport
createdAt DateTime Creation timestamp
updatedAt DateTime Last update timestamp