Skip to main content

Celonis Product Documentation

O2C: Release Credit Holds
Overview

Use Case Name

Automated release of credit holds for sales orders

Execution Capacity

Reduce lead times & raise no-touch rates

Process / Data Model

Order-to-Cash data model

Semi-/Fully automated

Fully automated

Systems

SAP ECC or S/4HANA

SAP TCode in GUI

VKM3

Updated SAP field

VBUK.CMGST → value will be set to “D” (Document released by Credit Representative)

Execution Gap

Credit checks are an essential and frequent activity in any order management process. Looking at the Celonis customer base, on average, 30% of sales orders undergo a credit check. While credit checks play an important role in risk management, they induce a lot of manual effort, slow down order confirmations, and negatively impact delivery lead times & customer satisfaction. On average, credit checks take 10 minutes per sales order and slow down delivery lead times by 5 days. What if we fully automated credit hold releases with Celonis EMS Automation?

Business Case Calculation

Let’s look at a customer with 1,000,000 sales orders per year and an average delivery lead time of 10 days. Besides, let’s assume that 30% of sales orders undergo a manual credit check, it takes 10 minutes per sales order to perform a credit check, and that orders with credit hold induce an additional delivery lead time of 5 days. If the customer fully automated credit hold releases, he or she would shorten delivery lead times by 20% (8 days instead of 10 days) and realize efficiency gains of $ 2.6M.

Customer Example

A multinational manufacturer has a manual process in place to release credit holds on customer orders. Credit holds are set initially for a variety of reasons, e.g. due to the credit limit being reached. The customer experienced the execution gap that even once credit holds had been released, sales orders ran into a credit hold again. The reason was that various activities within the source system (e.g. changes on the order, changes on the customer master, changes on the material master, …) retriggered the initial credit check and put the sales order on hold again. As a result, credit managers experienced a lot of manual rework as credit checks are time-consuming and it is not easily visible for the user that the order had been released previously. In addition, delivery lead times raised significantly. The customer was looking for a more advanced business logic that would automatically re-release credit holds for specified business scenarios.

Customer Solution

Celonis identifies sales orders with credit holds based on customer-specific selection criteria and automatically performs the credit release in SAP. In this customer example, the automated credit hold release is performed on sales orders that

  • belong to a certain organizational unit

  • have already been released in the last 24 hours, yet put on hold again

  • have not been changed in value

41195478.png

Why Celonis EMS Automation?

The first striking advantage is that the advanced business logic for auto-releasing credit holds can easily be created and adjusted by the customer’s business analysts without the need for technical ABAP development. In the customer example, one crucial condition was to look at sales orders that had been released in the last 24 hours, yet put on hold again. This condition refers to the entire history of a single sales order. While it’s easy to describe this condition using Celonis’ Process Query Language (PQL), it’s cumbersome to implement it in SAP and would require SAP developer knowledge. As a second compelling advantage, the customer stated that it is not possible to implement the desired granular logic on source system level.

Required IT Architecture

The IT architecture required to successfully implement this automation use case can be found on the following help page.

Project Timeline & Effort

The recommended timeline, milestones and project members needed to successfully implement this automation use case can be found in the following help page.

Technical Setup

The table below shows the technical setup steps required to configure this use case successfully.

Note

It is strongly recommended that the use case package import and business logic configuration & validation are tackled in parallel to the SAP integration setup.

Step

Documentation

Who

Effort

Update extractor to real-time extractor

Installation Guide

IT Contact

Data Scientist

2 h

Install Celonis on-prem Agent and set to automatic start

Installation Guide

IT Contact

Data Scientist

2 h

Import SAP transport for credit release action

SAP Automation Package

IT Contact

2 h

Create technical SAP user with required permissions

Installation Guide

IT Contact

2 h

Import Use Case Package

The following import guide contains instructions for importing the Action Engine and Studio Skills for this automation use case.

The relevant use case package can be downloaded using the following download link.

  • Automation Use Case Package (download package)

Template Building Blocks

After importing the package (see technical setup above), you will find the following building blocks in your EMS team. The vast majority of the Data Scientist person days indicated in the project setup table above is allocated to customizing these building blocks and adjusting the business logic to the customer’s needs.

1. Identify Orders with Credit Holds
41195678.png
Action Engine Skill

Action Engine Skills work by scanning all relevant records (e.g. sales orders) for certain rules and criteria whenever the underlying data model is reloaded. These Action Engine Skills trigger actions and automations that are defined in associated Studio Skills.

This action Engine Skill will check all incoming sales orders (the Signal ID), and will flag those with recurring credit holds.

Signal ID

The Signal ID is the object or record on which the use case is based. In this use case, a new Signal is generated for each Sales Document ("VBAK"."VBELN")that has a recurring credit hold that can be safely removed.

Customer Example

The Action Engine Skill identifies sales orders with recurring credit holds that can be safely removed to allow for order processing and delivery. The Action Engine Skill triggers an associated Studio Skill to automatically release the credit holds from these orders in SAP. See the use case description for further details.

Skill Filters

Action Engine Skills are configured through a set of filters that apply to a particular data model. Usually, a combination of different types of filters are used to define an Action Engine Skill. These can be organizational filters (referring to particular sales organizations or customer groups), process flow filters (related to cycle times, process events and conditions), or record attribute filters (order-specific criteria like document types or credit statuses).

Below, you will find a collection of filters and considerations for identifying orders with recurring credit holds that can be safely released.

Organizational Filters

Organizational filters are those that define the organizational scope of the Action Engine Skill (e.g. company codes, sales organizations, sales groups, profit centers, and other custom criteria).

Sales organizations and credit control areas

Different sales organizations or credit control areas may have unique rules and conditions for removing credit holds. They may also rely on bespoke business rules or filter logic to identify holds that can be safely removed.

Example filters:

  • FILTER "VBAK"."VKORG" IN ('ABC', 'DEF');

    -- Sales Organization is ABC or DEF

  • FILTER "VBAK"."KKBER" IN ('123', '456');

    -- Credit Control Area is 123 or 456

Additional remarks:

  • For these kinds of filters, it’s often easiest to use the Column Filter in Action Engine to define the required organizational conditions for the Skill.

Process Flow Filters

Process flow filters are those that define process-specific conditions for the Action Engine Skill (e.g. filters related to process cycle times, relevant activities, order process flows, and other custom criteria).

Credit hold released in the last 24 hours

If credit holds have been manually removed from sales orders in the last day, it is an indication that the orders can be safely processed and delivered.

Example filters:

  • FILTER HOURS_BETWEEN(PU_LAST("VBAK", "_CEL_O2C_ACTIVITIES"."EVENTTIME", "_CEL_O2C_ACTIVITIES"."ACTIVITY_EN" = 'Credit Hold Removed'), HOUR_NOW()) <= 24;

    -- Less than 24 hours have passed by since the last credit hold was manually removed from thesales order

Additional remarks:

  • Based on your customer’s requirements, the criteria for identifying credit holds that should be removed may differ from those shown above.

Price has not been changed

If the items in an order have had a change of price, a new credit check may be required before credit holds can be released. By filtering on orders without price changes, we ensure that any holds that have been applied to these orders can be safely removed.

Example filters:

  • FILTER PROCESS NOT EQUALS 'Change Price';

    -- No line item in sales order has been changed in price

Additional remarks:

  • If the quantities of items within an order are changed, a new credit check may also be required. As such, you may need to incorporate additional filter logic to account for the business rules and criteria specified by your customer.

Record Attribute Filters

Record attribute filters are those that limit the scope of the Action Engine Skill to records (e.g. sales documents) that have particular characteristics (e.g. those with or without particular holds, payment terms, shipping conditions, and other custom criteria).

Credit holds in place

This Skill may only apply to certain kinds of credit holds, or may only be relevant when the credit check status is a particular value.

Example filters:

  • FILTER "VBUK"."CMGST" IN ('B', 'C');

    -- Credit hold status ("VBUK"."CMGST") is either B (Credit check executed, document not OK) or C (credit check executed, document not OK, partial release)

Payment terms included or excluded

This use case may only be relevant for orders that have particular payment terms or other criteria.

Example filters:

  • FILTER "VBRK"."ZTERM" NOT IN ('123', '456');

    -- Payment terms not 123 or 456

Adjustments and Extensions

You can easily apply business rules and logic to your process data using Celonis PQL. To learn more about PQL, you can leverage the free-of-charge Analyst Training Track in the Celonis Acadeny. The training tracks for “Analysis Building Basics”, “Basic Coding with PQL”, and “Analysis Building Advanced” will equip you with a deep understanding of the power of PQL.

The business logic in the Action Engine Skill outlined above is completely customizable. For the full list of available actions that can be performed through EMS automation, see EMS Help Page.Actions

2. Remove Credit Hold in SAP
41195679.png
Studio Skill

Studio Skills define the actions and system automations that are performed against a record (e.g. sales order) when an Action Engine Skill is triggered.

This Studio Skill removes a recurring credit hold from a customer’s order in SAP.

Customer Example

The Studio Skill is triggered by an Action Engine Skill when an order contains a recurring credit hold that can be safely removed. The Studio Skill executes a BAPI or RFC call in the SAP system to remove the credit block from the order.

Skill Configuration

Studio Skills are composed of a sensor and one or more actions performed in Celonis or connected IT systems. When an Action Engine Skill is triggered, the sensor executes the system actions defined in the associated Studio Skill. Usually, a combination of different types of actions are defined in the Studio Skill. These can be Celonis actions (query a data model, write data to a table or execute a machine learning script), system actions (apply data filters, process routers, or loops), ERP actions (remove a delivery block in SAP or update an account in Salesforce), communication actions (email a customer or Slack a colleague), and many others.

Below you will find the sequence of actions required to remove the credit hold from an order in SAP.

41194827.png

1) Action Engine Sensor

The Action Engine sensor will execute the Studio Skill when the associated Action Engine Skill is triggered.

Example custom inputs:

  • Sales Document

    -- Defines the sales order for which the credit hold will be removed in SAP

Additional remarks:

  • Based on your customer’s needs, further input fields may be required. For example, you may need to consider the customer number, credit limits, or the delivery dates of associated orders.

2) Execute SAP Action (Advanced)

The Execute SAP Action (Advanced) step will trigger a BAPI or RFC call in SAP to create or change defined elements (delivery dates, payment terms, order details, etc.) of a business object (sales order, purchase order item, schedule line, etc.).

Example function module:

  • /CELONIS/RELEASE_CREDIT_BLOCK

    -- Removes the credit block from the defined sales order

Additional remarks:

  • Within your Studio Skill, an advanced SAP action is required to remove the credit block from the sales order. You may need to complement this action with additional steps or conditions to fully account for your customer’s needs.