SAP Commerce(Hybris) Initialization and Update

SAP Commerce(Hybris) Data Model uses Relational Database (RDBMS) to persist the Commerce entities such as products, customers, orders, etc. It provides a Persistence Layer “Type System” to manage the data models, defined in XML files such as items.xml.

Type System is Hybris ORM, where all of the Java Objects are defined in XML format and at the same time mapped to Data base tables and columns. All of the java data types are supported, types collections are supported as well.

Type System is independent of choice of DB and all most no change (or very minimal extra configuration) to items.xml even on DB change. It automatically generates the required Java Classes and Database Tables based on XML definition.

The database of the hybris Commerce Suite contains a representation of the Type system. This representation is in use by the hybris Commerce Suite at runtime. The representation in use reflects the state the type system was in when the hybris Commerce Suite was last updated or initialized.


Initialization drops existing type definitions from the database prior to rebuilding and generate the database schema and the type system, and import any essential system data. Before initialization, the system is not fully functional.

Note: All the data available in DB will be lost after initialization.

We can initialize the system:

  1. From the command line using Apache Ant:

We can initialize the system from the command line by running.

ant initialize

2. Starting SAP Commerce first, and then perform the initialization from the Administration Console:

- Log in to SAP Commerce Administration Console;

- Go to Platform ->Initialization. The Initialization page opens with preconfigured settings for initialization, and all essential data and all project data is selected. If you haven’t previously initialized the system, then the Initialization page is the only page available;

-Click the Initialize button to begin the process.


During an update, type system definitions are modified to match the new type system definition in the items.xml files. It will just modify the changes and create the new tables or columns if requested without modifying any other details in DB. The update mechanism makes sure that all data that existed in the system before the update is still accessible after the update.

We can update the system:

  1. From the command line using Apache Ant;

We can update the system from the command line by running

ant updatesystem

2. Updating from the SAP Commerce Administration Console

-Log in to SAP Commerce Administration Console.

-Go to Platform ->Update.

Hybris Administration Console provides some available options in the form of checkboxes they are:

1.Update running system

If we select this box, the system update will rebuild all type definitions from items.xml files.

2.Clear the hmc configuration form the database

If we check this box, the system update will remove the timestamp on the hmc configuration in the database and will upload an empty hmc configuration into the database. An empty hmc configuration without timestamp causes the Hybris Management Console to upload the configuration stored in the hmc.xml files into the database.

3.Create essential data

Essential data creates the default catalog, restrictions, and basics cronjobs automatically loaded after creation of tenant. It is changed between extensions.When we choose “Essential data” checkbox the corresponding impex files information is updated.

4.Localize types

If we check the box, the system localizes the type system which means corresponding localization data(languages) will be updated.

5. Project Data Settings

A list of all extensions available for the Hybris Commerce Suite is provided in the Project Data section on both the Initialization and the Update pages. Create Project Data during update is optional. If you select Project Data will be created for selected extensions.

For more info:




Software Development Lead @Coca-Cola HBC

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Setting up JMS Queue in WSO2 IoT Server

SQL slow query patterns

Writing Effective Tests for Modern Web Apps

The Expert’s Blind Spot:

Algorithmic Trading with MACD and Python

Welcome to sweet Honeywood

8 tips for kubectl productivity

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Nuray Fahri

Nuray Fahri

Software Development Lead @Coca-Cola HBC

More from Medium

Primitives and References - Java

Annotations in JAVA:

Java Threads

Useless Java: Day 2