Order Management Overview

This document is used as the entry point for understanding the concepts present within this project. It describes the general process, as well as the interactions with the different systems.

General Matrix42 Process

In Matrix42, the ordering and booking process begins when a user selects and orders articles through the platform. This triggers the system's internal approval workflow. This workflow is a crucial step, as it involves thorough validation of the order, potentially requiring the approval of managers, privileged groups, IT procurement teams, or similar authorities. Their approval is not just a formality; it's a necessary checkpoint to ensure the order aligns with certain standards and criteria.

Once the order secures the necessary approvals, Matrix42 moves to the next phase: provisioning. During provisioning, the system prepares and arranges the order for final execution. It's important to note that an order in Matrix42 is not a monolithic entity but rather a collection of distinct parts, known as bookings. Each booking is an individual component of the larger order, and Matrix42 handles each one separately.

Thus, an order in Matrix42 is essentially an aggregation of these bookings. Each booking, once it has passed through the necessary approval channels, undergoes its own specific provisioning process. This approach ensures that every aspect of the order is scrutinized, approved, and provisioned correctly.

Matrix42 Provisioning Overview

Within the customized ordering two different types of orders exists.

  1. individual order
  2. company order

The company order is a privileged type of order used by the people managing branch offices to stock up the storage. The individual order is used when an employee is ordering articles to fulfill his individual needs. It is never resulting in a stock increase within a storage location for a branch office.

Booking Provisioning

The bookings can be provisioned using four different kinds of provisioning workflows all used in different contexts.

  1. Provisioning - RootITUp Booking Common Processing
  2. Provisioning - RootITUp Booking Special Processing
  3. Provisioning - RootITUp Booking Contracted Processing
  4. Provisioning - RootITUp Booking Welcome Day Processing
  5. Provisioning - RootITUp Order Printer Bundle

Provisioning Workflows.png

The core functionalities of these provisioning workflows is

  1. to communicate with the OrderManagementService. This service introduces a layer between Matrix42 and S4Hana to allow for a severe reduction of complexity within Matrix42.
  2. to create and alternate Matrix42 objects like tickets
  3. to gather required information for the OrderManagementService like the type of the booked service, the destination address, the booking and order identifiers etc.

Steps

The Order Management service expects a clearly defined sequence of steps to be followed.

Order Management Transitions

These steps can be translated in their meaning into the following sentences.

Order Management Transitions Explained

Order Registration

The process begins when an order is registered in the Order Management service. This registration informs the service that a new order has been created, specifying its unique identifier and the number of items it includes.

Think of it like Matrix42 alerting the service by saying, "I will soon send you a certain number of items."

Inside Matrix42, a specific workflow named 'Orchestrator - Register Order' handles this communication.

Basket Item Registration

Up to this point, the Order Management service only has basic knowledge about an order. It knows the order exists and how many items it contains, but it doesn't have details about these items. When a basket item is registered, the service receives detailed information about it. This includes the item's identifier, type, price, quantity, and the article it relates to. Depending on the article's characteristics, the type of order (such as individual or company), and other factors, the system places the item into a specific basket. A basket is a way to group similar items together. There are different types of baskets in the system, like those for stock transfers, regular purchases, custom purchases and printer purchases. The conditions or states of items in a basket are closely linked to each other, meaning a change in one item can affect the others.

Basket Item Registration Detailed

Think of it like Matrix42 informing the service, "A user wants me to set up a specific service (like providing a laptop), with a certain number and price. Please get ready to process the order."

Inside Matrix42, a specific workflow named 'Orchestrator - Register Basket Item' handles this communication.

Basket Item COnfirmation

When a basket item is confirmed, it informs the Order Management Service that the item is really needed. This step is important because some types of articles, like software, might be registered in the system but not actually confirmed. If every basket item is either confirmed or deregistered, they are then transformed into a request within the S4Hana system.

Booking Confirmation.png

Think of it like Matrix42 saying to the service, "The user has confirmed the need for this basket item."

Inside Matrix42, a specific workflow named 'Orchestrator - Confirm Basket Item' handles this communication.

Basket Item Deregistration

When a basket item is deregistered, it is excluded from any future request creation in the S4Hana system.

This is like Matrix42 informing the service, "The user has decided that this basket item is no longer needed."

Inside Matrix42, a specific workflow named 'Orchestrator - Deregister Basket Item' handles this communication.

Basket Item Delivery

When basket items are taken out of storage to be given to employees, like in an office environment, it's important that the service is updated about this delivery.
Basket Item Delivery

Inside Matrix42, a specific workflow named 'Orchestrator - Deliver Basket Item' handles this communication.

Basket Item Acceptance

"Regardless of whether articles are added to storage or directly handed over to employees by a supplier, every basket item needs to be acknowledged to finalize the process in the S4Hana system.
Basket Item Acceptance

Inside Matrix42, a specific workflow named 'Orchestrator - Accept Basket Item' handles this communication.