Skip to Content

Single Euro Payments Area (SEPA) Implementation of DD(Direct Debit)(Technical)

Sep, 2013

Introduction

SEPA stands for ‘Single Euro Payment Area’. It’s a system that is designed to create financial efficiency for countries using the currency Euro by providing a unified system in which to perform financial transactions. The SEPA seeks to create a better system for credit transfers, an improved debit system and a cheaper way for individuals and firms to make transactions within member countries or regions. Implementation of SEPA makes the customers life easier. Irrespective of the national area customers will be able to use the same card for all euro payments and also they need only one bank account in euro area.

Introduction to SEPA process:

The below mentioned should be done for Implementation of SEPA business in any SAP system:

1.    SEPA_Activation_Mandate_Management

Following are the activities which are to be done as part of this:

i.        SEPA mandate management has to be activated for the usage with SDD CORE and SDD B2B from FI-AR payment processing.  Apart from activating the SEPA Mandate management we need to maintain the SEPA Mandate management modifiable fields.

Below is the path for activating the SEPA Mandate Management and maintain the modifiable fields.

IMG -> Financial Accounting -> Accounts Receivable and Account Payable -> Business Transactions -> Incoming Payments -> Management of SEPA Mandates -> General Settings.

/wp-content/uploads/2013/10/screen1_301503.png

IMG -> Financial Accounting -> Accounts Receivable and Account Payable -> Business Transactions -> Incoming Payments -> Management of SEPA Mandates -> Define Modifiable Fields

/wp-content/uploads/2013/10/screen2_301592.png                                                                                                                                                                  

ii.        Creation of new DMEE Payment Format tree for SEPA credit transfer and SEPA direct debit.

·         SEPA_CT and SEPA_DD are the DMEE formats provided by SAP.

·         As we will be dealing with multiple countries it is always better to copy the DMEE formats and create new ones. If there is any custom requirement for any country create a user exit and assign to the field that needs to be changed dynamically.

2.  Pre Notification with payment run  :

With a direct debit pre-notification, Markets can inform a payer in writing in advance of the debiting of his account. To do this, one has to schedule a run for the creation of direct debit pre-notifications before the payment run, meaning before clearing the open items and creation of payment media. These correspond in structure to the payment advice notes, and therefore contain details of the run date, the amount to be collected, mandate ID, Unified Creditor Identifier etc.

Following are the SAP notes to be implemented for SEPA Pre-notification.

SAP Note

Description

1679118

F110:  Custom Selection for Batch Input

1760564

F110S:  Selection Check for Customers and Vendors

1770425

F111/SEPA: Mandate rejected as invalid after change

1771071

FBCJ : Reversal possible despite cleared item

1776076

F110/F111 : BADI for SEPA Mandate usage

1780941

SEPA: Direct debit Pre-Notification

1792691

Valid SEPA mandate is not found in the system during payment proposal processing

As part of the Note implementation 1780941, we need to implement manual steps given below for importing the Standard SAP Form.

·    SAP has provided text file by using this file we need to import the object F110_DD_PRENOTIF into SAP by executing program RSTXCRP.  This is standard SAP form which will be used for sending PreNotifications.

·    SAP has provided XML file by using this file we need to import the object F110_DD_PRENOTIF into SAP using SFP transaction code. Once it is uploaded, activate the form.

Once all the relevant OSS Notes are implemented for SEPA Direct debit pre-notification, we will get option of checkbox for Pre-notification in F110 transaction and also pre-notification relevant standard program RFFOAVIS_DD_PRENOTIF and script form (F110_DD_PRENOTIF) available in the system.

/wp-content/uploads/2013/10/screen3_301593.png

The above check box is checked if we need to do SEPA prenotification.

/wp-content/uploads/2013/10/screen4_301594.png

RFFOAVIS_DD_PRENOTIF: This is the payment advice print program that is used to print the pre-notifications the pre-notification

F110_DD_PRENOTIF: This is the standard SAP script which is used to send the pre-notifications.

/wp-content/uploads/2013/10/scrren61_301596.png

          Based on the user requirement, the form name can be changed

·      The new “direct debit pre-notification” object is visible in the payment run (F110), in the document display (FB03), in the line item display (FBL5N) and in mandate display (FSEPA_M4). It can be deleted again if the direct debit pre-notification customer objects to it (for example, because the customer pays the bill himself). Otherwise, the posting run and the payment medium creation are performed after the end of the specified wait time based on the direct debit pre-notifications.

3.  Creation of SEPA Mandates for payment transactions :

·       Before doing any transaction for any SEPA customer we need to have a mandate create for the Customer.

·       Before creating a mandate the Customer Should have IBAN number.

·       Transactions used :

Creation

FSEPA_M1

Change

FSEPA_M2

Display

FSEPA_M3,FSEPA_M4

NOTE: Mandates can also be created from the payment tab of the Customer Master XD01, FD01, XD02,FD02.

NOTE: Mandate Number can be either External or Internal Number.

·       To make our work easier technically we can use the below procedure using the below BAPI’s:

·       The table that is Master for all the SEPA mandates is SEPA_MANDATE.

·       SEPA_MANDATE: This is the Standard Smart form used to print the mandate details for any customer.

·       Assume a file with the Customer and mandate Information is available

Ø  Check if the customer is created by checking in the KNB1 table.

Ø  If the Customer is present then check if the Customer has IBAN and BIC number.

Ø  Check if the mandate is not created for Customer with the mandate number using the BAPI SEPA_MANDATES_API_GET.

Ø  For the BAPI SEPA_MANDATES_API_GET pass the customer number in the importing parameter to check if there is any mandate information present for the Customer SEPA_GET_CRITERIA_MANDATE-snd_id = Customer Number .

/wp-content/uploads/2013/10/screen6_301597.png

Ø  ET_MANDATES contains the mandate information that is fetched from BAPI based on the Customer Number.

/wp-content/uploads/2013/10/scrren71_301598.png

NOTE :   SEPA_MANDATES_API_GET FM cannot be used for multiple mandate scenario. We can write take MGUID from REGUH table and go to SEPA_MANDATE table and get the IBAN number and mandate number.

Three BAPI’S are majorly used to Creation and updating of the mandate details of the Customer.

To fetch the Mandate information for a particular Customer from the table SEPA_MANDATE table

SEPA_MANDATES_API_GET

Create the Mandate for a Customer

BAPI_SEPA_MANDATE_CREATE1

Modification of Mandate details for a customer

BAPI_SEPA_MANDATE_CHANGE1

·       Mandate Creation:

Ø Use the BAPI BAPI_SEPA_MANDATE_CREATE1 to create the mandate .

Ø BAPI_S_SEPA_MANDATE_COMMON structure which is importing parameter to the above mentioned BAPI has to be filled with the mandate information .This contains both the Sender (Customer Details ) and  receiver details (Company code data ).

/wp-content/uploads/2013/10/screen_8_301599.png

Ø Then collect all the address information either from the file provided or from the customer master data and fill the Sender information in the structure BAPI_S_SEPA_MANDATE_COMMON.

Ø Then based on the company code fetch the address details of the Company code and fill the Receiver information in the structure BAPI_S_SEPA_MANDATE_COMMON.

Ø ES_MANDATE_CREATED exporting parameter in the above BAPI gives a success message if the mandates are correctly created for the customer.

Ø  Error handling can be done with the return exporting parameter.

/wp-content/uploads/2013/10/screen9_301600.png

·       If the mandate already exists then check if there is any change in the mandate information.

Mandate modification:

Ø  Use the BAPI BAPI_SEPA_MANDATE_CHANGE1 to change the already existing mandate.

Ø  BAPI_S_SEPA_MANDATE_CHANGE structure which is importing parameter to the above mentioned BAPI has to be filled with the mandate information .This contains both the Sender (Customer Details) and  receiver details (Company code data ).

/wp-content/uploads/2013/10/screen9_301600.png

Ø  In case ofupdation is failed it can handled by  return parameter of the BAPI

/wp-content/uploads/2013/10/screen_10_301603.png

  Display of Mandates :

Ø  The created mandates can be checked by FSEPA_M3 Give the Mandate number or Customer Number and check for the Mandate information.

/wp-content/uploads/2013/10/screen11_301605.png

On Click on Enter the below Screen appears which displays all the information.

/wp-content/uploads/2013/10/screen12_302018.png

Ø We can also check the Mandate information through Customer master display  using transaction fd02,xd02,xd03,fd03./wp-content/uploads/2013/10/screen13_301611.png

Click on the Tab to check and create the mandate Details from Customer master

Display the List of Mandates:

Ø  Use the transaction FSEPA_M4 to display a list for customers for a particular company code.

/wp-content/uploads/2013/10/screen14_301612.png

Ø  Mention the company code in the below transaction and then execute all the mandates present for the company code will be displayed.

Ø  A list of mandates will be displayed as shown in the below screen shot.

/wp-content/uploads/2013/10/screen15_302019.png

The above lights depicts different status of the mandates below are the differnent status of mandates.

0         

Entered

1

Active

2

To Be Confirmed

3

Locked

4

Canceled

5

Obsolete

6

Completed Completed

Ø  If we need to print a particular mandate information then select the Print mandate button on the top right corner of the list .

/wp-content/uploads/2013/10/screen16_301614.png

Ø  For this SAP has provided a smartform SEPA_MANDATE.This can be customized at central level and the thus the mandate can be created and mandate information can be printed.

/wp-content/uploads/2013/10/screen17_301615.png

All the inforamtion related to the mandate is available in the table SEPA_MANDATE.

To report this post you need to login first.

74 Comments

You must be Logged on to comment or reply to a post.

  1. AK CG

    Hi Vijay,

    its a nice document, appreciatte your efforts.

    Can you tell me, from the  end users perspective, when and how is the mandate, pre-notification sent to the customer?

    Regards,

    Kumar

    (0) 
    1. VIJAYA SIMHA CHINTARLAPALLI REDDY Post author

      Hello Chakravarthy,

           When SEPA is implemented each customer will have one mandate created in the Customer Master data.As the Customer has to pay the tax to the SEPA team first a mandate informatiojjn will be sent to him saying mandate is created for you and later prenotification will be sent as he has to pay the amount to sepa team instead of the tax.

      Thanks,

      Vijay.

      (0) 
  2. Lakshmi G

    Hi Vijay,

    Great work. Its quite useful. If you any, can you please share a test catalog or the processes needs to be tested after SEPA implementation.

    Thanks in advance!

    Lakshmi

    (0) 
  3. Krishna B

    we have a requirement to populate one of the three values based on the country of the customer

    1. SAP Customer No (Denmark)

    The bank requires us to send the SAP customer number in the xml file for Denmark customers.

    2. Concatenation of Bank Key & Account number (Norway)

    Concatenation of Bank Key(KNBK-BANKL) & Acccount Number (KNBK-BANKN)

    3. Bank GIRO number KNBK-BKREF (Sweden)

    I am working with the ABAP developer to use function module to fetch the above values, however he could not get customer number from any of these structures (FPAYH, FPAYHX, FPAYP).

    Can anyone please suggest, how do we get these fields into the SEPA file.

    (0) 
    1. VIJAYA SIMHA CHINTARLAPALLI REDDY Post author

      Hello Krishna B,

      There are two options to fetch customer number.

      1) Get the Customer Number from the mandate ID from the table sepa_mandate with GUIID and from customer number fetch the  bank detials from FPAYH, FPAYHX, FPAYP structures.

      2) As we get the document number and run date and identification and the document umber and fiscal year get it from the bkpf or BSEG table.

      for the bank details :

      Fetch the IBAN number from the above sturctures and get the bank details from the TIBAn table and hit the KNBK with Customer Number and bank detials.

      Thanks,

      Vijay Simha

      (0) 
  4. Lakshmi G

    Hi VijaySimha,

    I have maintained the settings in OBPM1 to print accompanying sheet and Extra list for the format ZSEPA_CT. For the SEPA Outgoing payment method B in the Company code config of tcode FBZP, I have maintained the SAPscript as F110_D_DTA for the Accompanying sheet similarly F110_D_UEBERWEIS for the list. But both of them are not generated. Please help, I need it real urgent.

    Thanks in advance!

    Lakshmi.

    (0) 
  5. Ondrej Zatopek

    Hi Vijay,

    do you have any idea how to simulate a situation where the sequence of the collection would be “FNAL”? Based on what does the SAP change the sequence type from RCUR to FNAL?

    Thanks in advance!

    Ondrej

    (0) 
      1. Ondrej Zatopek

        Hi Vijay,

        thx for your reply! Pls what note are you referring to? About the exit I’m aware that we can use function module FI_SEPA_MANDATE_GET_USE_STATUS but we need to add the sequence “FNAL” into the parameters..

        Regards

        Ondrej

        (0) 
  6. Mani Sharma

    Hi Vijay

    Very helpful content.

    I am changing one mandate using Tcode FSEPA_M2, and getting this error:

    Capture.JPG

    Not able to figure out the problem. Please help.

    (0) 
  7. HEMANT JAIN

    Hi,

    Can anyone tell me where in the configuration we can provide the details regarding how much amount to be debited / credited from customer / vendor ?

    When we are executing APP at that time entire amount is paid / received. the significance of SEPA DD is not reflected.

    Thanks,

    Hemant

    (0) 

Leave a Reply