Show TOC

RFC API: Classical & SAP NetWeaverLocate this document in the navigation structure


The RFC API enables you to establish RFC communication between an SAP system and external systems. Via the RFC API, an external system can communicate as client or server with the SAP system.

Using the RFC SDK (Software Development Kit) you can implement a bundle of C++ functions controlling RFC communication on an external system.

Implementation Considerations

The RFC API exists in two different versions:

  • Classical RFC API

  • SAP NetWeaver RFC API

You can use the SAP NetWeaver RFC API with all SAP systems being currently maintained by SAP.

However, the classical and SAP NetWeaver version of the RFC SDK are incompatible to each other. You cannot use both versions in parallel for a given external application.


The migration from the classical version to SAP NetWeaver RFC API requires development effort for adapting the C/C++ application environment.


The two versions of the RFC API are characterized by their different functionality:

  • Classical RFC API (ASCII or Unicode version)

    • Support of the classical RFC protocol only

    • No dynamic meta data retrieval

    • Not free of redundant functions

    • The ASCII version supports the SAPGUI protocol

  • SAP NetWeaver RFC API contains a restructured set of functions and thus offering extended functionality like:

    • Dynamic meta data retrieval

    • Support of all SAP single code pages

    • Support of the classical RFC protocol and a new binary protocol (basXML) that allows a considerable reduction of data volume when using complex parameter types.

    • No redundant functions

    • Supports SAPGUI protocol and start of SAPGUI (see SAP Note 1258724) Information published on SAP site

    • Does not support communication between two external systems

SAP generally recommends the use of the SAP NetWeaver RFC API due to its functional enhancements.

More Information

A detailed description of the different RFC API versions you can find here:

For information on security issues of the RFC API, see: