Defining and Implementing the BAPI


Various components of the ABAP Workbench are used when you define and implement a BAPI. These are shown in the graphic below.

BAPIs are defined in the Business Object Repository (BOR) as API methods of SAP business object types. BAPIs are implemented in the Function Builder as RFC-enabled function modules. The definitions and descriptions of the data structures used by the BAPI are stored in the ABAP Dictionary.

BOR, Function Builder and ABAP Dictionary


For function modules that implement BAPIs, certain standards and rules must be adhered to over and above the standard programming rules for function modules.

The following sections guide you through the steps involved in developing a BAPI. The sections contain information about the guidelines and conventions that you should adhere to when defining and implementing a BAPI. When implementing BAPIs follow the requirements below to ensure you achieve consistent behavior and representation of BAPIs as object-oriented methods of SAP business object types or SAP interface types.

Process Flow

The development of a BAPI is divided into the steps below (see also the appropriate project template in the BAPI Explorer or the BAPI Quality Checklist):


For further information see:

  1. Defining the scenario in which the BAPI will be used

Defining the Scenario

  • Reviewing the BAPI scenario and how the BAPIs interact with one another
  • Reviewing the Scenario Concept

  • Defining a BAPI and Its Interface
  • Defining the BAPI and Its Interface

  • Creating individual programming objects
  • Creating Development Objects and Documentation

  • Programming BAPIs
  • General Programming Guidelines for BAPIs

  • Testing the BAPI and its documentation
  • Testing the BAPI and Its Documentation

  • Releasing the BAPI
  • Releasing the BAPI

  • Enhancing existing BAPIs, if required
    1. SAP Enhancements to Existing BAPIs