What is a Bapi and Business Object in SAP

Business Application Programming Interface(BAPI), Business Object Repository(BOR) and Business Object in SAP

+ -


BAPI stands for Business Application Programming Interface (B + API), BAPI`s are methods (Function Modules) defined in Business Object Repository (BOR).

Before going to BAPI, we need to get understanding on BOR.

Business Object:

Business Object is similar to class, which is a group of attributes, methods, interfaces, events and key fields for a particular business application or scenario.

Examples for BOR are BUS1001 - Material Business Object, BUS2012 - Purchase Order Business Object.

Business Object Repository (BOR):

It is a repository or container of business objects, T-code for BOR (Business Object Repository) is SWO1.

Example for understanding:

Go to SWO1, provide name as BUS1001 and click display.

Expand methods, double click on any method, click on ABAP tab and you will find BAPI name.


What is a BAPI?

BAPI is a remote enabled function module, which is used to communicate between SAP to SAP, SAP to NON-SAP systems.

BAPI RFC function module will be inserted into business object, it will convert into BAPI.

How BAPI is created?

  • Remote Enabled Function Module created.
  • Remote enabled function module inserted into a business object.
  • BAPI created.

Uses of BAPI

In SAP BAPI`s can be used for

  • Generating reports.
  • For communication between different servers SAP – SAP or SAP – NON-SAP.
  • BAPI`s can be used for data migration.

Difference between BAPI and RFC.



Used for communication Between SAP – SAP and SAP – non-SAP

Used for communication Between SAP – SAP and SAP – non-SAP

BAPI is a part of business object, it can communicate with other BAPI`s.

RFC is a standalone function module, it cannot communicate with other RFC`s

BAPI Uses Object Oriented concepts

RFC uses procedure oriented concepts

Please Sign in to ask a question

Was this lesson helpful to you? Yes No 104 People out of 107 think this lesson helpful

Lesson Navigation

RFC Development← Previous Lesson
Next Chapter →