| Status | |
|---|---|
| Owner | |
| Stakeholders | |
| Jira Request ID | |
| Jira Development ID |
| Parameter | Value |
|---|---|
| Application System | S/4Hana ROW, S/4Hana CUI |
| Business Process Reference | 09.06.02.04. Manage Centralized Outgoing Payments on Behalf of Subsidiaries 09.06.02.05. Manage Centralized Incoming Payments on Behalf of Subsidiaries |
Its needed to enable a monitor that is able so display the invoices selected in the IHB and the ones that not in case its needed to take action.
This will require a FIORI app to access by business.
The project involves the implementation of a factoring solution within In-House Bank (IHB) using the S/4 Hana FI/IHB module. This system is designed to handle transfer of AP/AR items that are relevant for factoring, to the IHB center for further collection/payable management.
This enhancement covers the monitor to review the integrated items and bring the capacity to integrate new ones.
Process Flow Diagram
09.06.02.04. Manage Centralized Outgoing Payments on Behalf of Subsidiaries

09.06.02.05. Manage Centralized Incoming Payments on Behalf of Subsidiaries

Step | Description | Comment |
|---|---|---|
| 1 | Open the Fiori application to access the report | |
| 2 | Select the parameters from the selection screen | The report should have a selection screen with the following fields .All fields they need to be able to select single value, a range of information or multiple values. |
| 3 | Display the output of the report | The Output of the report should be ALV features to add / remove fields , sort , sum/semisum, sort, filter, … |
| 4 | Select / Deselect invoices for Factoring | When I display the information, I should be able to select and deselect the relevant invoices for Factoring (selection flag with multiple selection or all should be available and a button to execute the action).
|
N/A
Finance Invoice settings
APM / In House Bank Settings
Enhancements relating to performing factoring of the open invoices (AP/AR) from affiliate to IHB from 953 to 959 and 963
09.06.02.05. Manage Centralized Incoming Payments on Behalf of Subsidiaries / 09.06.02.04. Manage Centralized Outgoing Payments on Behalf of Subsidiaries for In House Bank the authorization is only based on access to the functionality for In-house Bank Payment Processor role
Authorization check will be implemented on Company code level. Other authorization checks to be confirmed based on requirements.
Finance Invoice settings
APM / In House Bank Settings
No specific language requirement
NA
If the enhancement interacts with third-party systems such as Icertis, describe any additional integration, security or authentication considerations that must be taken into account.
Factoring Monitor Report configuration and usage must adhere to SAP S/4HANA standard reporting principles and enterprise value policies. Access to the report and related invoice actions is to be governed strictly by role-based security authorization profiles.
Report selection screen parameters must allow input of single, range or multiple values for all key fields (company code, posting date, fiscal year, document type, and invoice document number) based on standard SAP selection method protocols.
Any invoice flagged or de-flagged for factoring must trigger real-time updates to Payment Block Key, House Bank and Account ID fields .
ALV output grid must comply with usability standards by providing authorized users the ability to sort, filter, sum, add/remove columns, and export data in standard SAP-supported formats; navigation to source FI, MM, or SD document screens (e.g., FB03, VF03, MIR4) must be enabled via configured SAP API services or classic transaction links.
Key functionalities include navigational access from reference document links to underlying FI, SD, or MM invoice transactions, supporting detailed examination and audit trails.
Custom program
The main tables to retrieve the information are:
NA
| Table | Field Name | Comments/Calculation/Field Manipulation |
|---|---|---|
N/A.
NA
NA
The report should have a selection screen with the following fields :
| Field Name | Description | Select: Option or Parameter Check box or Radio button Import or Export | Data Type/Length | Default Value/ Validation rule/ Value Help | Selection Logic |
|---|---|---|---|---|---|
BUKRS | Company code | Radio Button | CHAR(4) | Mandatory Field | |
KUNNR | Customer Number : Customer account number for receivables postings | Radio Button | CHAR(10) | ||
LIFNR | Vendor Number: Account number of vendor or creditor | Radio Button | CHAR(10) | ||
| BUDAT | Posting Date: Date when the document was posted to SAP. | Radio Button | DATS (8) | Mandatory Field | |
GJAHR | Fiscal year | Radio Button | NUMC(4) | Mandatory Field | |
| Document Type (BLART) | Type of accounting document (invoice, payment, etc.) | Radio Button | |||
| BELNR for FI, billing document number for SD | Invoice document number |
Processing Logic
The main tables to retrieve the information are:
Its expected to use API to retrieve the information if possible:
| Display the output of the report : | The Output of the report should be able to share the following information: Finance Information ( original invoice and header one )
IHB Contract :
Payment information: From the header document in case of payable:
In case of receivable from the bank reconciliation:
Finance information link to IHB Contract The header information - FI document : BUKRS (Company Code )/ BELNR (Document Number) / GJAHR (Fiscal Year) ( ie: 1010/0123456789/2026) will be stored in Reference field of the IHB contract BNK_BATCH_HEADER - SND_INT_REF. This is the Payment reference text ( CHAR35 ) Finance information link to Payment information: From the header invoice you can find the subsidiary invoice in the BKTXT . This field is stored in the BSEG table. You can access using the FI header information from the previous point in the BSEG and get the SGTXT
Primary Linking Fields from PAYR and REGUT are : LAUFI Payment Run , LAUFD Payment Run , BUKRS Company & LIFNR Vendor Number
Primary Linking Field is GUID
Payment Run ID (LAUFI + LAUFD): Links F110 payment runs ( REGUV, REGUP or REGUH )to BCM thru BNK_BATCH_HEADER :
Finance information link to Reconciliation: From the invoice ( BESEG , BKPF ,ACDOCA ) & Reconciliation ( FEBEP, FEBKO ) it will use the company code ( BUKRS , accounting document number ( BELNR ) , Fiscal Year GJAHR and line item number ( BUZEI) It should be available ALV features to add / remove fields , sort , sum/semisum, sort, filter, … |
| Select / Deselect invoices for Factoring | When I display the information, I should be able to select and deselect the relevant invoices for Factoring (selection flag with multiple selection or all should be available and a button to execute the action). This should happen to be updating the invoice ( like FB02 ) the fields Payment Block Key ( ZLSPR ) and House Bank (HBKID) . In case of select it should be flagged Block Key ( ZLSPR ) and it should be populated HKID with IHB1value Technically it can be used the BAPI BAPI_ACC_PYMNTBLK_UPDATE_POST to update Payment Block Key ( ZLSPR ) and BAPI BAPI_ACC_DOCUMENT_POST or FM FI_ITEMS_MASS_CHANGE to update House Bank (HKID) . In case of deselect , beyond removing values from Block Key ( ZLSPR ) and House Bank (HBKID). It should be verified that the Factoring contract is created ( header information - FI document : BUKRS (Company Code )/ BELNR (Document Number) / GJAHR (Fiscal Year) is stored in Reference field of any IHB contract BNK_BATCH_HEADER - SND_INT_REF ) In case factoring contract is created reversal program should be called as well to reverse the factoring contract (ERP-958 IHB Factoring - Reversal program ).
|
This volume is estimated to be approx: 10000
In case of performance issues due to large number of information to be processed it should be raised the message to restrict the selection parameters and stop the execution.
| Error Code | Description | Type Of Error | Resolution |
|---|---|---|---|
| ERR001 | Mandatory selection parameter missing (Company Code, Posting Date, Fiscal Year) | Validation Error | Display error message and stop execution. User must populate all mandatory selection fields. |
| ERR002 | Selection returns no accounting documents | Business Validation | Display information message “No data found for the selection criteria”. Report execution ends gracefully. |
| ERR003 | Selection volume exceeds allowed threshold (performance safeguard) | Performance Error | Display error message requesting user to restrict selection criteria. Stop report execution. |
| ERR004 | User not authorized to access IHB Factoring Monitor | Authorization Error | Block execution and display authorization error based on IHB Payment Processor role. |
| ERR005 | Invoice already flagged for factoring | Business Validation | Prevent duplicate processing. Display warning and skip invoice from execution list. |
| ERR006 | Invoice not eligible for factoring (document type / status invalid) | Business Validation | Display error message and exclude invoice from factoring selection. |
| ERR007 | Payment Block Key (ZLSPR) update failed | Technical Error | Roll back changes and display error. User to retry or contact IT support. |
| ERR008 | House Bank (HBKID) not maintained for company code | Configuration Error | Stop execution and prompt user to maintain House Bank configuration. |
| ERR009 | Account ID (HKTID) missing or invalid | Configuration Error | Stop processing for affected invoice and request master data correction. |
| ERR010 | IHB Contract Clearing Area not found | Configuration Error | Display error and block factoring execution until clearing area is correctly configured. |
| ERR011 | Factoring contract creation failed | Technical Error | Roll back all updates (Payment Block, House Bank, Account ID). Display technical error message. |
| ERR012 | Factoring contract already exists for invoice | Business Validation | Prevent duplicate contract creation. Display warning message. |
| ERR013 | Deselection failed – existing factoring contract not found | Business Validation | Display error and prevent deselection. User to verify contract status. |
| ERR014 | Factoring contract reversal failed during deselection | Technical Error | Roll back deselection changes and display error. Manual reversal may be required. |
| ERR015 | Error retrieving accounting document data (ACDOCA / BSEG / BKPF) | Technical Error | Stop execution and display data retrieval error. |
| ERR016 | Error retrieving IHB contract data (/PF1/DB_ORDER) | Technical Error | Display error and prevent factoring action for impacted invoices. |
| ERR017 | Error retrieving payment batch data (BNK_BATCH_ITEM / HEADER) | Technical Error | Display warning; factoring selection still allowed but payment status not shown. |
| ERR018 | Error retrieving reconciliation data (FEBEP / FEBKO) | Technical Error | Display warning; reconciliation status set to “Pending”. |
| ERR019 | Navigation to source document failed (FB03 / VF03 / MIR4) | Technical Error | Display navigation error message. No impact on factoring status. |
| ERR020 | API call failure (Journal Entry / Supplier Invoice APIs) | Technical Error | Stop execution for affected records and display API error details. |
| ERR021 | Inconsistent update detected (partial execution of steps) | Data Integrity Error | Trigger rollback logic to ensure none of the steps are executed. Display consistency error. |
| ERR022 | Unexpected system error during execution | System Error | Log error details, rollback changes, and display generic system error message. |
Please provide some guidance and/or test data to help the developer unit test the enhancement. Please include both positive and negative testing (to validate error situations handling). The developer will need to test repeatedly, so where appropriate provide instructions to reverse the actions performed so the test may be run again or explain how to create new input data to the test. The developer will need logons for test users representing the various roles within the approval process.
| ID | Condition | Expected Result |
|---|---|---|
| 1 | Run the Fiori application | Selection Screen should be displayed |
| 2 | Execute the Report layout | Report information is shown |
| 3 | Select invoice for factor | Invoice integrated in the IHB |
| 4 | Deselect invoice for factoring | Invoice reversed from the IHB |
Data set should be created for multiple scenarios:
AP:
AR
| Package Name | Parent Package |
|---|---|
| Enhancement Type | Standard Definition Name | Custom Implementation Name | Design Rationale Reference |
|---|---|---|---|
| Object Type | Object Name | Purpose/High Level Logic | Design Rationale Reference |
|---|---|---|---|
This table is based on the Syensqo development standards document. It provides the naming conventions for authorization groups to associated with custom reports and tables to comply with security requirements.
ABAP | ZFI | ZMM | ZPS | ZCO | ZSD | ZBC | ZFI | ZCA |
|---|---|---|---|---|---|---|---|---|
| TABLES | ZFIT | ZMMT | ZPST | ZCOT | ZSDT | ZBCT | ZFIT | ZCAT |
Insert links and references to other documents which are relevant when trying to understand this decision and its implications. Other decisions are often impacted, so it's good to list them here with links. Attachments are also possible but dangerous as they are static documents and not updated by their authors.
