Show TOC

Business Application Programming Interface (BAPI)Locate this document in the navigation structure


The SAP business objects stored in the Business Object Repository (BOR) encapsulate their data and processes. External access to the data and processes is only possible by means of specific methods - BAPIs (Business Application Program Interfaces).

A BAPI is defined as a method of an SAP Business Object Type or of an SAP Interface Type .


The functions that are implemented in the SAP business CostCenter object type include, for example, listing all the available cost centers. The business object type CostCenter provides the BAPI GetList() for this purpose.

The BAPIs in the SAP Systems are currently implemented as function modules, which are created and managed in the Function Builder. Each function module underlying a BAPI:

  • Supports the Remote Function Call (RFC) protocol

  • Has been assigned as a method to a SAP business object type in the Business Object Repository

  • Is processed without returning any screen dialogs to the calling application Integration


The graphic below shows the relationship between an SAP business object type, its associated BAPIs and its function modules.

Figure 1: Business Object Type with BAPIs and Associated Function Modules

This architecture enables SAP to change the implementation of a BAPI without affecting external applications that are using the BAPI. For information on SAP policy for enhancing BAPIs, and SAP release strategy for BAPIs, see SAP Enhancements to Released BAPIs .


To use a BAPI method to access data in SAP business objects, an application program only needs to 'know' how to call the method. The following information is required:

  • The name of the BAPI

  • Details of the BAPI interface:

  • Import parameters, which contain data to be transferred from the calling program to the BAPI

  • Export parameters, which contain data to be transferred from the BAPI back to the calling program

  • Import/export (table) parameters for both importing and exporting data

Application programmers can work with SAP business objects and implement their BAPIs without needing to know or consider the underlying implementation and coding details for the object.