100% found this document useful (1 vote)
668 views22 pages

BTE in Payment Run' and Dunning'

The document provides an overview of business transaction events (BTEs) in SAP and their use in payment runs and dunning. It discusses what BTEs are, how to find them, and provides examples of implementing BTEs for sending emails during payment runs and splitting spools during dunning notices.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
668 views22 pages

BTE in Payment Run' and Dunning'

The document provides an overview of business transaction events (BTEs) in SAP and their use in payment runs and dunning. It discusses what BTEs are, how to find them, and provides examples of implementing BTEs for sending emails during payment runs and splitting spools during dunning notices.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

Community

Ask a Question Write a Blog Post Login

Technical Articles

Ponnaganti Vasudha
November 8, 2019 | 8 minute read

BTE in ‘Payment Run’ and ‘Dunning’


 5  21  19,201

Follow Hi All,

In this blog post I would like to share basic knowledge on BTE in technical point of view.
 Like
You will find several blogs on BTEs, while implementing BTE for Payment run and Dunning I must
go through all those links to get a basic idea on how payment run and dunning works. So, I
 RSS Feed thought of posting this blog where we would find all the basic points at one place.

Topics discussed:

1. Enhancement Techniques in SAP ABAP in FI Module.


2. What is BTE?
3. How to find BTE?
4. Steps to implement BTE
5. Basic idea on Automatic payment run report.
6. How to find report for Automatic payment run and technical flow of
“RFFOAVIS_DD_PRENOTIF”
7. BTE for Email in “AUTOMATIC PAYMENT RUN F110”
8. BTE For Splitting spool in “AUTOMATIC PAYMENT RUN F110”
9. What is Dunning?
10. BTE to call Dunning Notice Form

Enhancement Techniques in SAP ABAP in FI Module:

Like user-exit, badi and enhancements in SD module, we have two important enhancement
technics in FI module in SAP ABAP.
1. Substitution user-exits
2. BTE (Business Transaction Events)

In this blog I am going to give a basic idea on role of BTE in “PAYMENT RUN” and “DUNNING”
from technical point of view.

BTE (BUSINESS TRANSACTION EVENTS)

TCODE (FIBF)

BTE is one of the enhancement techniques available in SAP that can be used by SAP, third
party vendor(partner) and customer.
BTEs are generally found in the general ledger accounting (FI-GL), account receivable and
payable (FI-AR and FI-AP) and sales and distribution components.
A BTE has a predefined interface and allows you to attach additional functionality in the form
of a service function module.
The BTE is called by the SAP standard program by a call to function OPEN_FI_PERFORM_ or
OUTBOUND_CALL_. This function checks if there are any active BTEs according to
customizing.

According to its Interface there are 2 types of BTEs:

Publish & Subscribe interfaces: Cannot update data it is possible to have multiple
implementations These interfaces inform external software that certain events have taken
place in an SAP standard application and provide them with the data produced. The external
software returns no data to the SAP Standard System. They do not influence the standard
R/3 program in any way.
Process interfaces: Can update data, only one active implementation. These interfaces are
used to control a business process differently than the way in which it is handled in the
standard R/3 System. They intervene in the standard process and return data to the SAP
application.

How to Find BTE:

P/S: If we need BTE corresponding to Publish and subscribe interface, click on (INFO SYSTEM
P/S).
Select A (Application Component) and execute. We will get all the related BTEs for (Posting
Document, Change Document, Customer Balances, Customer master, Dunning, Payment
Methods Etc.)
Select the BTE for which functionality you are looking for and click on “Pattern Function Module”

Below SE37 Screen will get opened along with the function module name
Check if you have the required variables in importing parameters. If yes, copy the function
module into Z function module and do necessary changes.

Similarly, for Process interface.

BTE in Automatic Payment Run:

Automatic Payment Run: (F110) Main tables are (REGUH – Header table and REGUP-Item table)

Initial screen of F110 looks like as below:


Payment run will be scheduling on posting date to docs entered upto date for company code and
customer or vendor level selection.
If we observe in the above screen shot, run is scheduled from posting date to Docs entered up to
date for company code and customer. Which means , all the payments till “doc entered up to
date” of mentioned customer in the company code respective to mentioned payment method
will be executed .

How to find the report name in payment run:

In the Print out / output medium tab we will be mentioning the report with the variant.

Here in my example, I will take the report “RFFOAVIS_DD_PRENOTIF “.

Flow of “RFFOAVIS_DD_PRENOTIF “:

For Payment runs, we have standard function module “FI_PDF_ADVICE_OUTPUT” which calls
our adobe form or smart form which is mentioned in the report. The sequence in which our form
is being triggered is already handled by standard report ““RFFOAVIS_DD_PRENOTIF “.
The form name will be captured in the variables “PAR_AFOR” “PAR_APDF”.

If we closely observe report “RFFOAVIS_DD_PRENOTIF “, we have loop in which at new ZBUKR,


VBLNR being called. Which means for each company code, for each customer, our form will be
triggered.

In other words, if a company code has three customers with three accounting documents each,
then we will have three forms with three line items in it.
If we closely observe FM “FI_PDF_ADVICE_OUTPUT” it is automatically calling our adobe form.
Here it is enough for a technical person to create form and interface and to have his code in code
initialization. While declaring parameters in adobe interface we should declare like the
parameters in the FM. All the header and item values will be automatically available, so we need
not write any select queries to get data.
Practical examples to implement BTE:

Email Sending functionality for Payment run F110:

We have already discussed how to find BTE above.

Since I need data to be updated, I have chosen Process interface.

I found BTE 2040 suitable for my development as I have REGUH (payment header table in
import parameter and FINAA as output parameter where we pass the email id to send email
If you see FINAA table, you have INTAD where you can pass email address.

So, I have found the BTE which need to be implemented.

Now let’s see the implementation steps.

Steps to implement the BTE

For each BTE we have to create a product and activate it.


Here if you check the check box it means it is activated.

Then goto Process interface and click on customer. Here, “ of an SAP application” containes all
the standard implementation already done in the system. And for futher implementations we
need to chose patner or customer depending on our requirement.
Senerio 2: Place PDF output in AL11

We have already seen the flow of standard report “RFFOAVIS_DD_PRENOTIF”. Sequence of


execution is as below:

Loop

AVIS

OPEN_FI_PERFORM_00002040_P (BTE 2040 already discussed)

AVIS_SCHREIBEN

OPEN_FI_PERFORM_00002050_P (BTE 2050 discussed below)

FI_PDF_ADVICE_OUTPUT (Calling our Form and creating spool number with content in
it)

ENDlOOP

After this end loop we will all the spool details with the content in it . we have to read this spool
and place it in AL11 path.
Please refer my blog to know how to place adobe form in AL11

https://blogs.sap.com/2019/07/22/common-errors-and-difficulties-faced-in-adobe-forms-
beginners/

Since we are getting spool details at the end of “ENDLOOP”, we get all the documents for all the
customers in a company code into same spool. But we must get each document in each spool
according to our requirement. So, we must split the spool. For this we have BTE 2050.

If we see the function module of BTE 2050 we have following parameters

For NACHA = 1, we can pass “X” to C_ITCPO_TDNEW so that we get new spools for every
document.

DUNNING

(F150)

What is dunning?

In SAP FI, Dunning plays a vital role in Accounts receivables. Dunning is like reminder notice to
our business partners for their overdue/open items or outstanding balances.

Dunning letter summarizes overdue invoices record and asks for payment to be made. We
configure dunning program for accounts receivable and accounts payable.

Dunning Program includes following configuration steps:

Dunning procedure
Dunning level
Dunning Areas

Dunning procedure controls the path of dunning to the customer and vendor through the
system. We can define our own dunning procedure as per our convenience. Transaction code:
FBMP.

Dunning level defines dunning text; maximum nine dunning levels are available. As the dunning
level increases, text will also change as consistent to make payment.

Dunning area means the client/company/company code in which we are working on dunning
program.

If we don’t want to run dunning program at company code level then we can also run dunning
program at organizational level like, sales organization.

Initial screen of Dunning looks as below:


In The above screen Dunning is performed in the date 1st sep 2019 for the company code and
customer for the dates between dunning date and dunning posted date. Dunning posted date
can be of any future date. All the dues within these dates for corresponding company code and
customer will be executed.

Each dunning notice depend on the dunning procedure. Dunning procedure is nothing but after
how many days dunning notice should be sent. It can be for 10 days or 20 days etc.

These are configured in FBMP Transaction. Form name is also configured in the dunning
procedure level.

Go to FBMP, List of dunning procedures will get displayed.


Double click on any procedure, here number of days, total due items etc are maintained.

Click on Dunning text button, we find our form name here for respective dunning levels.
Function module to call above maintained form is configured in BTE 1720.

Since it will not update any data, it will be under P/S module interface.
Hope, you got a basic idea on usage of BTEs in Dunning and payment run.

Regards,

Vasudha Ponnaganti.

Alert Moderator

Assigned Tags

FIN Accounts Receivable and Payable

FIN (Finance)

accounting;dunning;

Automatic Payment Run

bte

dunning
fibf

Similar Blog Posts 


Payment Advice configuration and activation for different kinds of SAP Print forms
By Vijay Chintarlapalli Oct 01, 2015

Customer Statement/ Vendor Invoices/ & Dunning sent automatically by BTE Implementation
By chandan bhatnagar Oct 17, 2022

Vendor code addition in FBL3N report using Business Transaction Events (BTE)
By Rohidas Shinde Dec 03, 2013

Related Questions 
Validation for F110
By Pradip Dutta May 20, 2020

F110, paymetn run


By Fatima Mustafayeva Feb 04, 2023

change the value date on the document created by F110 transaction


By KEVIN PATEL Nov 13, 2018

5 Comments

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

Gokul Radhakrishnan
November 10, 2019 at 3:49 am

Excellent Blog Vasudha!. Informative & very useful. Keep rocking & come up with more such blogs! Thanks for sharing.

Like 0 | Share
Vigneshwaran Sivalinagam
February 26, 2020 at 10:08 am

Hi Vasudha,

Kindly help me for this scenario, For specific condition type, can we restrict the condition group 5 field..

1. Actually, I have using a condition type (zfab and zfbb - custom for example) in vk11. for this condition type, i have specific
condition group 5 (i.e, for zfab is vs and zfbb is vo).

2. While manually entering the condition type in vk11, for example zfab, in the selection screen the condition group field is
accepting both the vs and vo. but in my scenario, it should not accept it.

3. It should accept, for zfab - vs.

4. waiting for your solution.

How to give restriction for that specific condition type. after entering the condition type in vk11.

Like 0 | Share

Santosh Kumar
August 17, 2020 at 7:43 pm

Hi Vasudha,

How do I configure Adobe form to Dunning can you give a basic Idea.

Regards,

Santosh.

Like 0 | Share

Gabriel Felipe Coleti


June 23, 2021 at 4:37 pm

Well done Vasudha !!! Thanks for sharing.

Like 0 | Share
Othur Alla mahammad
April 27, 2022 at 9:27 am

Well executed !

Keep posting such informative concepts !

Like 0 | Share

Find us on

Privacy Terms of Use

Legal Disclosure Copyright

Trademark Cookie Preferences

Newsletter Support

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy