Financial Management Blog Posts by SAP
cancel
Showing results for 
Search instead for 
Did you mean: 
saurabh_saxena1
Product and Topic Expert
Product and Topic Expert
4,816

With the S/4Hana Cloud Private Edition 2023 FPS3 delivery, SAP would deliver a feature that accelerates period-end journal entries with AI aid. Period-end journal entries are necessary for a period-closing activity. Finance teams spend considerable time curating data according to policies and reporting needs. SAP Business AI for Finance offers AI-assisted Journal Upload Cases that streamline operations, automate processes, and generate period-end entries aligned with posting policies faster than ever. This empowers better business decisions and transforms your team into a lean strategic finance function.  This solution is ready to use for your specific business needs without the need for IT support. (Use of this feature may require some additional commercial agreements, please get in touch with your SAP account executive for further details.) 

This blog post explains the steps to using AI-assisted Journal Upload Cases. One example of recurring period-end tasks is creating accrual postings for shuttle bus expenses incurred by different departments. This is one example of recurring tasks that can be seamlessly performed utilizing AI-assisted Journal Upload Cases.

1. Prerequisites

AI-Assisted Journal Upload Cases require AI to be scoped in an S/4Hana Cloud Private Edition system. SAP has delivered an ISLM (Intelligent Scenario Lifecycle Management) scenario, FINS_ACDOC_AI_MJUC, which needs to be deployed and activated in a customer system.

Before activating the above scenario, you need to get AI service keys. Please follow the required SAP ticket process to get the necessary keys by creating a ticket on component CA-S4H-BTPAI. Once you have the required data (OAuth 2.0 Client Profile & Service Key (JSON format)) available, you need to update the same in the system using the below steps.

Update the service key details in the ISLM scenario via the below IMG tree:

ABAP Platform > Application Server > Basis Services > Intelligent Scenario Lifecycle Management > Service Connections for Machine Learning Infrastructure > Maintain Intelligent Scenario Connections

AI.png

After updating the AI key information, the ISLM scenario must be deployed and activated in the system. This can be done using the Fiori app (App ID F4470): Intelligent Scenario Management.

islm.png

 islm 2.png

 

1.1 Authorizations

The Fiori apps for posting policy and journal cases are added to the below artifacts:

Business Catalog: SAP_SFIN_BC_GL_JE_PROC (General Ledger—Journal Entry Processing)

Technical Catalog: SAP_TC_FIN_ACC_COMMON (SAP Financials - Accounting: Fiori Apps)

Business Group: SAP_SFIN_BCG_DOC_ENTRY (Journal Entries)

Business Role: SAP_BR_GL_ACCOUNTANT (General Ledger Accountant)

1.2 Number Ranges

Number range object: IJU_CASE

Use T-Code SNRO and maintain a number range interval for the journal case object.

2. Configuration

Two configuration activities, the Journal Case Category Code and Case Subcategory Code, enable customers to categorize their different use cases for manual journal uploads. For example, suppose you have two other policies for two instances of accruals. In that case, you will create one category code and two subcategory codes inside that these policies can be uploaded into the system and later used by journal cases. 

2.1 Journal Upload Case Category Codes

It is accessible in the following IMG tree: Financial Accounting > Financial Accounting Global Settings > Document > Intelligent Journal Uploads > Define Journal Upload Case Categories

Case Category.png

 

2.2 Journal Upload Case Subcategory Codes

It is accessible in the following IMG tree: Financial Accounting > Financial Accounting Global Settings > Document > Intelligent Journal Uploads > Define Journal Upload Case Subcategories

Case Subcategory.png

 

3. Posting Policies

You can upload your posting policies in the system with the above settings. In 2023 FPS1, we are only supporting Excel format. To get a template for a posting policy, please get in touch with SAP refer to note: 3561821

A posting policy is a list of instructions for various fields on a standard journal entry header and item levels. A sample file screenshot is as follows:

Policy.png

The Fiori app below creates a posting policy in the system and uploads the document.

Fiori app: Manual Journal Posting Policies (App ID: F8539)

Business Role to access the app: SAP_BR_GL_ACCOUNTANT

The app would be accessible via General Ledger > Journal Entries

Select appropriate category and subcategory codes, describe your policy, and provide a “Valid From” date. Once the policy is active, it will be valid per the provided “Valid From” date. The “Valid To” date is defaulted to 31.12.9999. 

The system validates if the provided “Valid From” date is possible based on the existing active policies for that category and subcategory codes. The system will give an error if an active policy with a “Valid From” date after the provided date exists. The system will allow a “Valid From” date if no active policy with “Valid From” exists on or after that date.

Let’s understand from the illustration below.

Screenshot 2025-02-04 at 9.55.20 AM.png

If you try to create a new policy with the “Valid From” date 01.07.2024, the system will not allow it as another policy is valid from 15.07. However, the system will allow you to create a new policy valid from 16.07.2024.

In 2023 FPS3, the system cannot detect gaps in datelines for a policy specific to a category and subcategory code. Thus, as the “Valid From” date is a user-entry field, there might be gaps if the user does not ensure proper dates to avoid gaps.

Policy app.png

After uploading the policy document, you can proceed with activation. The button Active in the screenshot below activates the document.

Policy activate.png

Activation is a background process that may take around 4-5 minutes. During activation, all the instructions are extracted from the uploaded policy document and sent to an AI engine to map with the system's existing capabilities. The policy is not activated if the AI engine cannot map one or more instructions. The errors are visible in the Application Log on the Fiori app. In 2023 FPS3, the Fiori app does not have a view to show the mapped capabilities. This is something that is being worked on for the next release cycle.

The supported capabilities are as follows:

  1. SplitConditon: Splitting of journal entries based on specific attributes. For example, journal entries should be split for company codes.
  2. Aggregation: Aggregation of amounts based on specific attributes. For example, the aggregate document currency amount for each cost center and vendor ID.
  3. Copy: Copy the value from an Excel field. For example, the Company ID (BUKRS) value is taken from the Company column in the transaction Excel.
  4. Assign: Assign a fixed value to an attribute. For example, the G/L account has a fixed value defined in the transaction Excel.
  5. Evaluate Condition: Evaluate a condition and then calculate the value for an attribute. For example, Post Key is 40 for positive and 50 for negative amounts.
  6. MaxLines: Set the maximum number of line items in a journal entry. For example, the posting policy may have an instruction stating that a journal entry cannot have more than five line items.
  7. Concatenate: Concatenates different parameters as specified in a posting policy.

Once the policy is active, you can proceed with case creation.

4. Journal Cases

To create a journal case, you should be ready with the data that you want to upload to that case. This data relates to the transactions you prefer to be considered for journal entry creation. There is no standard format for preparing your data except that it should be available as an Excel file.

The first row should be the header row, with the names of the fields corresponding to the data's semantics.

System Validations on data file:

  1. An error will be raised if the column names mentioned in the posting policy file are not present in Excel.
  2. If mandatory fields required to create a journal entry in the system are missing in Excel, an error will be raised.

A sample data file is illustrated below:

Transaction Data.png

 

4.1 Create Journal Case

The Fiori app below creates a journal case in the system and uploads the document.

Fiori app: Manual Journal Upload Cases (App ID: F8538)

Business Role to access the app: SAP_BR_GL_ACCOUNTANT

The app would be accessible via General Ledger > Journal Entries

Describe your case, case category, subcategory codes, and your fiscal period with year and variants while you create a new case. A relevant policy is fetched based on the entered category, subcategory codes, and the last date of the fiscal period. If a policy is found, it is linked under the Guidance section.

You can then upload the Excel file containing transactions. The system will validate the data, either issue an error or accept the file. If the file is accepted, the status changes from Created to Transaction Data Uploaded.

Case.png

Screenshot 2025-02-04 at 10.47.00 AM.png

4.2 Generate Proposal

Once the transaction data is uploaded, you can trigger journal entry proposal generation by clicking the Generate Proposal button. Proposal generation is a background process and may take some time. Once the process is over, the details will be available in the Application Log.

Screenshot 2025-02-04 at 10.49.12 AM.png

If the proposal generation is successful, the status changes to Proposal Generated. If errors occur during the generation process, the status changes to Proposal Generation Failed.

Screenshot 2025-02-04 at 10.51.32 AM.png

Error handling: If there are errors, you need to go to the Application Log to check them.

  1. If the errors are related to uploaded data, you must fix them in your Excel file. When you have fixed your data in Excel, open the relevant Journal Case and click Edit. Delete the uploaded file from the Source of Transaction Data section, and the status changes to Created. Upload the new file; the status changes to Transaction Data Uploaded. Click the Generate Proposal button again; the status changes to Proposal Generation In Process.

If the errors are related to a system configuration, you must fix them with those settings. After fixing the settings, you can trigger proposal generation again by clicking the Generate Proposal button.

4.3 Validate Proposal

After the successful proposal generation, you can proceed with proposal validation. Click the Validate Proposal button to start the validation process; the status changes to Validation In Process. Validation is a background process and may take some time. Once the process is over, the status is changed accordingly.

Screenshot 2025-02-04 at 10.52.44 AM.png

In case the validation is successful, the status changes to Proposal Validated. If the validation process runs into errors, the status changes to Validation Failed.

Screenshot 2025-02-04 at 10.53.48 AM.png

Error handling: If there are errors, you need to go to the Application Log to check them.

  1. If the errors are related to uploaded data, you must fix them in your Excel file. When you have fixed your data in Excel, open the relevant Journal Case and click on the Discard Proposal button. The status changes to Transaction Data Uploaded. Click on Edit and delete the uploaded file from the Source of Transaction Data section, and the status changes to Created. Upload the new file; the status changes to Transaction Data Uploaded. Click the Generate Proposal button again; the status changes to Proposal Generation In Process.
  2. If the errors are related to a system configuration, you must fix them with those settings. After fixing the settings, you can trigger proposal validation again by clicking the Validate Proposal button.

4.4 Posting Proposal

After the successful validation, the user can proceed with the posting by clicking the Post button. This will trigger a background process and may take some time to complete.

Screenshot 2025-02-04 at 10.54.54 AM.png

On successful postings, the status changes to Complete. Corresponding journal entries (JEs) are created in the relevant general ledgers. The created JE IDs are updated in the proposal line items of the journal case. 

Screenshot 2025-02-04 at 10.55.45 AM.png

If there is an error, the status changes to Posting Failed. The user can check the errors in the Application Log.

Error handling: If there are errors, you need to go to the Application Log to check them.

  1. If the errors are related to uploaded data, you must fix them in your Excel file. When you have fixed your data in Excel, open the relevant Journal Case and click on the Discard Proposal button. The status changes to Transaction Data Uploaded. Click on Edit and delete the uploaded file from the Source of Transaction Data section, and the status changes to Created. Upload the new file; the status changes to Transaction Data Uploaded. Click the Generate Proposal button again; the status changes to Proposal Generation In Process.

If the errors are related to a system configuration, you must fix them with those settings. After fixing the settings, you can trigger posting again by clicking the Post button.

2 Comments