Direct Debit Mandate (DDM) provides numerous benefits for managing regular recurring payments, for example utility bills and rents. We discussed these advantages in detail in our previous blog post
How to authorize Direct Debit Payments outside SEPA in Contract Accounting, highlighting the functionality that Direct Debit Mandate enables, and how to authorize Direct Debit Payment outside SEPA.
Following the direct debit mandate, this blog post depicts the communication process between the company and the payment service provider/bank using the mandate. You can learn about by which means the mandate can be sent to the payment service provider to process the payments and how the company can manage canceled mandates. Newly delivered functionality is highlighted in red in the following diagram.
Figure 1: Detailed process with Direct Debit Mandate and Bank Communication
Currently, in S/4HANA On-Premise 2023 FPS0 release, SAP delivers generic framework for direct debit instruction and rejected payment file. This blog post is specified for
SAP S/4HANA Private Cloud and On-Premise, to learn more about the process using
SAP S4/HANA Public Cloud, please refer to blog post
Bank Communication Using Direct Debit Mandate in SAP S4/HANA Public Cloud.
Under the generic framework mentioned above, SAP provides the implementation for the United Kingdom (UK) according to the Bankers' Automated Clearing System (BACS) standard. Therefore, the blog post primarily focuses on the UK BACS service and the communication between the company and the payment service provider/ bank.
Depending on the local project requirements defined by different standards than BACS, you have a possibility to implement them via the mentioned framework. To dive deeper into these functionalities, we encourage you to continue reading the remainder of the blog post, where you will find comprehensive details.
Bank communication and process using Direct Debit Mandate
Direct Debit Instruction and AUDDIS
Direct Debit Instruction is a method by which the organization obtains a payer’s permission to collect money from the payer’s bank account during the direct debit procedure. In the latest release, within generic framework to process direct debit instruction, we offer a specific solution for Automated Direct Debit Instruction Service (AUDDIS) complying with the requirements defined by BACS. Therefore, the customers who use BACS service can freely reuse the functionality that we delivered for AUDDIS. For S/4 HANA customers who are not using UK BACS payment system, you need to implement your own logic in order to process direct debit instruction.
- What is AUDDIS?
AUDDIS stands for Automated Direct Debit Instruction Service which enables organizations to send new Direct Debit Instruction to their customer’s payment service provider electronically instead of in paper format via BACS system. Generation of the AUDDIS file containing details of, for example, new and canceled mandates. Via AUDDIS file, the transfer of direct debit instructions is automated from the collecting organization to the paying payment service provider.
- Business Case
Your company has created a new mandate, canceled an existing mandate due to the need of customers, or made changes to master data (for example service user number - SUN) which is linked to the existing mandate. In those situations, you need to inform your payer’s payment service provider about the changes which will potentially impact the process of payment collection later. All the changes will be consolidated within AUDDIS files, which will then be sent to the payer's payment service provider. This ensures the consistency between your direct debit instructions and the processing of the direct debit mandate, thereby maintaining a seamless and aligned approach.
- Prerequisite
To enable your communication with the bank using direct debit instruction, you need to ensure the following:
- Direct debit mandate configuration is set up.
- Direct debit mandates are created.
For detailed information about setting up the mandate configuration and mandate maintenance, please refer to the blog post
How to authorize Direct Debit Payments outside SEPA in Contract Accounting to learn further insight.
4. How to process AUDDIS?
Step 1: Create a new Instruction Type
Instruction type is delivered for specific country which is used to determine how the mandate instructions can be transferred from the organization to the payer’s payment service providers. Currently, SAP has delivered a default instruction type 01 for GB AUDDIS (BACS) in S4/HANA Private Cloud and On-Premise. For Private Cloud and On-Premise customers, you can directly use the predefined instruction type 01. If you need to make any modifications, you have the flexibility to customize or create your own instruction type. This allows you to meet the specific requirements and make the necessary changes as needed.
To create the instruction type, you can find the customizing activity as follows:
SAP Customizing Implementation Guide > Financial Accounting > Contract Accounts Receivable and Payable > Business Transactions > Payments > Incoming/Outgoing Payment Creation > Management of Direct Debit Mandates > Define Direct Debit Instruction Type.
In the customizing activity, follow the below steps:
- Choose New Entries and enter the required information in the field Instruction Type and Description.
- Save your entry
Step 2: Assign Instruction Type to Direct Debit Procedure
In the
SAP Customizing Implementation Guide > Financial Accounting > Contract Accounts Receivable and Payable > Business Transactions > Payments > Incoming/Outgoing Payment Creation > Management of Direct Debit Mandates > Direct Debit Procedure, you can assign existing Instruction Type which was created before to specific Direct Debit Procedure under
Company Code Assignment session
.
Step 3: Determine changes relevant to direct debit instruction using Business Add-Ins (BAdI) Implementation
SAP already delivered BAdI implementation to specify which data changes lead to the generation of the Direct Debit Instruction that later will be sent to the payer’s payment service provider. You can easily reuse the BAdI without any additional implementation. In this scenario, you simply take no action and the existing BAdI will be automatically utilized.
In case the predefined BAdI implementation needs to be changed to meet the bank’s requirement, you need to define your own logic to decide the specific conditions when the instruction file can be generated.
To define your own BAdI Implementation, you can follow this path:
SAP Customizing Implementation Guide > Financial Accounting > Contract Accounts Receivable and Payable > Business Transactions > Payments > Incoming/Outgoing Payment Creation > Management of Direct Debit Mandates > Business Add-Ins (BAdIs).
The
BAdI-Determine Changes Relevant to Direct Debit Instruction contains two methods CHECK_INSTR_CREATE and GET_SORT_FIELD_VALUE respectively.
- By calling CHECK_INSTR_CREATE method, you can determine if the changes made to the mandates should be sent to the payer’s payment service providers.
- By calling GET_SORT_FIELD_VALUE method, you can indicate values in the Sorting field in table DDMA_BKINST (Mandate changes - instructions for bank communication). The BAdI implementation is based on DME tree definition.
The
BAdI-Maintain Data for Direct Debit Instruction Output in DMEE includes two methods, namely DMEE_GET_TREE_ID and DDME_ITEM_DATA
- DMEE_GET_TREE_ID method allows you to determine a tree type and a tree ID to find a corresponding output in the DMEE tree for the given instruction type.
- DMEE_ITEM_DATA method helps to maintain additional data that can be used in the DMEE tree.
Instruction Type must be used as the BAdI filter. Therefore, after choosing the value for filter, you will be able to perform specific implementation for your own Instruction Type.
Step 4: Map format data for direct debit mandate instruction
In AUDDIS process, the output file is generated based on definition of Data Medium Exchange Engine (DMEE). About DMEE and how to manage it, please refer to
Data Medium Exchange Engine.
Customers using S/4 HANA have the flexibility to define their own DMEE tree according to their specific requirements. However, if no modifications to the format tree are necessary, you can directly reuse the format tree GB_AUDDIS which is delivered by SAP.
To access to the mapping, you can choose to follow either of those paths:
- Access to transaction DMEEX (Format Tree Maintenance Tool)
- Follow customizing activity as follows: SAP Customizing Implementation Guide > Financial Accounting > Contract Accounts Receivable and Payable > Business Transactions > Payments > Incoming/Outgoing Payment Creation > Management of Direct Debit Mandates > Map Format Data for Direct Debit Mandate Instructions
Now, specify
DMIS in
Tree Type field, and
GB_AUDDIS in
Format Tree field. You can display mapping structure in the predefined format tree
GB_AUDDIS or create a new one according to your requirements.
Step 5: Create direct debit mandate instruction media
In
Create Direct Debit Mandate Instruction Media (transaction
FIDDMBKINSTO) finish the execution as follows:
- General Options: Enter the mandatory values for Run Date, Identification.
- Selection Parameters: specify Application 2 for Direct Debit Mandate, and enter value in Mandate Instruction Type, Company Code
- Execute to generate the instruction file.
- Display logs to see the number of records selected and the file is generated.
Step 6: Download file
In order to download the file, go to
Manage Direct Debit Media (
FIDDMFDTA transaction). In
General Selections, you can specify
Run Date and
Identification to display the list of files aligned to selection values that were generated before. From there, you can choose which file to download and save it on your local device.
The output file will resemble the following format.
Step 7: Send direct debit mandate instruction file to the payment service provider/bank
After downloading the instruction file in step 6, you are now able to send this file which contains relevant changes to the customer’s payment service provider/bank.
ARUDD – process for rejected payments
Rejected payments are unsuccessful direct debit payments which are sent from the customer’s payment service provider/bank to the organization. In the current release, SAP supports the country specific solution for Great Britain to process rejected payment with Automated Returns of Unpaid Direct Debits Service (ARUDD) file.
- What is ARUDD?
ARUDD serves as an automated system used by banks for the purpose of returning unpaid Direct Debit payments under the BACS system. The ARUDD file, which provides a list of unpaid collections, is sent from payer’s payment service provider to SAP system to inform that direct debit payment is not successful. Returns of unpaid direct debit payments are typically triggered by circumstances such as canceled Direct Debits from the customers’ side, insufficient funds in the customer’s account, wrong bank account number, etc.
- Business Case
The service provider/organization sends direct debit requests to the payer’s payment service provider/bank using the GB_BACS payment format for example. In the event of unsuccessful direct debits resulting from for instance insufficient account balance in the customer’s bank account, the payment service provider/bank sends an ARUDD file containing a list of rejected payments to SAP system. The organization then proceeds to handle these rejected payments.
- Prerequisite
To enable your communication with the bank and process with ARUDD file, you need to ensure the following:
- Direct debit mandate configuration is set up.
- Direct debit mandates are created.
- Mandate is assigned to payment document by invoice posting and payment run.
For detailed information about setting up the mandate configuration and mandate maintenance, please refer to the blog post
How to authorize Direct Debit Payments outside SEPA in Contract Accounting to learn further insight.
4. How to process ARUDD?
Here is an example of ARUDD file received from the customer’s payment service provider/ bank.
Step 1: Mapping field for ARUDD files
In order to import ARUDD files and transfer data within the file into Electronic Bank Statement database tables (for example FEBKO, FEBEP, FEBRE, etc.) you need to map the field in ARUDD file to the default format mapping structure predefined by SAP. The mapping field structure is sum up in the below table:
In SAP Fiori Launchpad, access to
Map Format Data for Incoming Payment Files from Banks app, select
RJCT – Payment Rejection in the
Mapping Type field. After that, select format mapping
GB_ARUDD.
From there you can directly use the predefined mapping to map the information within the ARUDD file to the standard mapping structure.
For SAP S/4HANA customers, you have the flexibility to adjust the output structure and message log after it is processed according to the format mapping. In order to do so, go to
Business Add-Ins: Definitions (
SE18 transaction), specify
ES_IFME in
Enhancement Spot. From there you can see that SAP delivers initial implementation for ARRUD incoming file format. You can enhance the BAdI in the BAdI implementation
IFME_OUTPUT_POSTPROCESSING.
Step 2: Importing ARUDD files from payment service provider/bank
To upload rejected payment files into the system, get access to
Upload Bank Statements (transaction
FF_5). Do not forget to select
Format with Format Assignment in
Elect. Bank Statement field and check on
Payment Status.
In the
Statement File field, insert the ARRUD file which was already mapped with standard mapping format and then
Execute.
Step 3: Configure and assign return reason
To configure the company specific returns reason, please follow the customizing activity:
SAP Customizing Implementation Guide -> Financial Accounting -> Contract Accounts Receivable and Payable -> Business Transactions -> Returns -> Configure Returns Reasons.
In order to define an internal company-specific return reason for each external house bank return reason, you need to follow the customizing activities:
SAP Customizing Implementation Guide -> Financial Accounting -> Contract Accounts Receivable and Payable -> Business Transactions -> Returns -> Assign Return Reasons to House Banks. Now choose
New Entries to assign external return code to the internal return code according to your need. After assigning, you will obtain the list of return reasons displayed as below:
Step 4: Transfer data to returns lot and process ARUDD items
In transaction
Transfer Account Statement (FPB7), specify information for
Run Date, Identification and
Electronic Bank Statement Selection parameter to determine from which bank statement you would like to transfer data to Returns Lot.
Now, in transaction Process Returns Lot (t-code FP09), you can now display the returns lot with the return reason received from the customer’s payment service provider/bank.
Summary
Bank communication using direct debit mandate with AUDDIS and ARUDD speeds up and simplifies the process of direct debit collection. By following this blog post, you will understand the process to transfer direct debit instruction to payer’s payment service provider/bank and procedure to manage canceled mandate received from the payment service provider/bank.
SAP Notes
For detailed information about current and future development of direct debit mandate, please refer to the announcement note -
3289457 - Announcement of support for Preauthorized Direct Debit Payments using Direct Debit Mandate....
Do you find the blog post helpful? Please share your comments and questions in the comment session below.