SAP Bit
Home
Get Started
  • Overview
  • Transaction Codes
  • Tables
  • Function Modules
  • Data Elements
  • Domains
  • IMG Activities
  • Overview
  • Standard RFCs
  • Custom RFCs
  • Overview
  • OData URLs
  • OData Services
GitHub
Home
Get Started
  • Overview
  • Transaction Codes
  • Tables
  • Function Modules
  • Data Elements
  • Domains
  • IMG Activities
  • Overview
  • Standard RFCs
  • Custom RFCs
  • Overview
  • OData URLs
  • OData Services
GitHub
  • RFCs

    • Remote Function Calls (RFCs)
    • Standard RFCs
    • Custom RFCs

Standard RFCs

This page provides documentation on standard RFC-enabled function modules provided by SAP. These are ready-to-use functions for common integration scenarios.

What are Standard RFCs?

Standard RFCs are function modules provided by SAP that are enabled for Remote Function Call (RFC). They:

  • Are part of the standard SAP system
  • Can be called from external systems
  • Provide standardized interfaces for common business processes
  • Are maintained and updated by SAP

Common Standard RFCs

Business Partner and Customer RFCs

RFC NameDescriptionKey ParametersUsage
BAPI_CUSTOMER_GETLISTRetrieve list of customersCUSTOMER_LIST, RETURNGet list of customers based on selection criteria
BAPI_CUSTOMER_GETDETAILGet customer detailsCUSTOMERNO, CUSTOMERADDRESS, RETURNRetrieve detailed information for a specific customer
BAPI_CUSTOMER_CREATECreate a customerCUSTOMERNO, CUSTOMERDATA, RETURNCreate a new customer record
BAPI_CUSTOMER_CHANGEModify customer dataCUSTOMERNO, CUSTOMERDATA, RETURNUpdate an existing customer record

Material Management RFCs

RFC NameDescriptionKey ParametersUsage
BAPI_MATERIAL_GETLISTRetrieve list of materialsMATNRLIST, RETURNGet list of materials based on selection criteria
BAPI_MATERIAL_GET_DETAILGet material detailsMATERIAL, MATERIALDATA, RETURNRetrieve detailed information for a specific material
BAPI_MATERIAL_SAVEDATACreate or update materialHEADDATA, CLIENTDATA, RETURNCreate or update a material record
BAPI_GOODSMVT_CREATECreate goods movementGOODSMVT_HEADER, GOODSMVT_ITEMS, RETURNCreate a goods movement document

Sales and Distribution RFCs

RFC NameDescriptionKey ParametersUsage
BAPI_SALESORDER_GETLISTRetrieve list of sales ordersSALES_ORDERS, RETURNGet list of sales orders based on selection criteria
BAPI_SALESORDER_GETDETAILEXGet sales order detailsSALESDOCUMENT, ORDER_HEADER_IN, RETURNRetrieve detailed information for a specific sales order
BAPI_SALESORDER_CREATEFROMDAT2Create sales orderORDER_HEADER_IN, ORDER_ITEMS_IN, RETURNCreate a new sales order
BAPI_SALESORDER_CHANGEModify sales orderSALESDOCUMENT, ORDER_HEADER_IN, RETURNUpdate an existing sales order

Financial Accounting RFCs

RFC NameDescriptionKey ParametersUsage
BAPI_ACC_DOCUMENT_POSTPost accounting documentDOCUMENTHEADER, ACCOUNTGL, RETURNCreate an accounting document
BAPI_ACC_DOCUMENT_GETGet accounting documentDOCUMENTHEADER, ACCOUNTGL, RETURNRetrieve an accounting document
BAPI_ACC_GL_ACCOUNT_GETLISTGet G/L account listACCOUNTLIST, RETURNRetrieve list of G/L accounts
BAPI_ACC_INVOICE_RECEIPT_POSTPost invoice receiptINVOICEHEADER, INVOICEITEMS, RETURNPost an invoice receipt

Human Resources RFCs

RFC NameDescriptionKey ParametersUsage
BAPI_EMPLOYEE_GETDATAGet employee dataEMPLOYEE_ID, PERSONAL_DATA, RETURNRetrieve employee information
BAPI_EMPLOYEE_ENQUEUELock employee recordEMPLOYEE_ID, RETURNLock an employee record for changes
BAPI_EMPLOYEE_DEQUEUEUnlock employee recordEMPLOYEE_ID, RETURNUnlock an employee record
BAPI_PERSDATA_CHANGEChange personal dataEMPLOYEE_ID, PERSONAL_DATA, RETURNUpdate employee personal data

System and Utility RFCs

RFC NameDescriptionKey ParametersUsage
RFC_READ_TABLERead data from SAP tableQUERY_TABLE, FIELDS, OPTIONS, DATAGeneric function to read data from any SAP table
RFC_SYSTEM_INFOGet system informationRFCSI_EXPORTRetrieve information about the SAP system
STFC_CONNECTIONTest RFC connectionREQUTEXT, ECHOTEXT, RESPTEXTTest the RFC connection to an SAP system
BAPI_TRANSACTION_COMMITCommit transactionWAIT, RETURNCommit changes made in a transaction
BAPI_TRANSACTION_ROLLBACKRollback transactionRETURNRollback changes made in a transaction

Using Standard RFCs

Prerequisites

Before using standard RFCs, ensure:

  1. The RFC destination is properly configured (Transaction SM59)
  2. The user has appropriate authorizations
  3. The required function modules are available in the target system

Common Parameters

Most standard RFCs use common parameter patterns:

  • Import parameters: Input data for the function
  • Export parameters: Output data returned by the function
  • Tables parameters: Table data exchanged with the function
  • RETURN parameter: Contains success/error messages

Error Handling

Standard RFCs typically return error information in the RETURN parameter:

  • TYPE: Message type (S: Success, E: Error, W: Warning, I: Information)
  • ID: Message class
  • NUMBER: Message number
  • MESSAGE: Human-readable message text
  • LOG_NO: Application log number
  • LOG_MSG_NO: Message number in the application log
  • MESSAGE_V1 to MESSAGE_V4: Message variables

Transaction Handling

For RFCs that modify data:

  1. Call the RFC to perform the operation
  2. Check the RETURN parameter for errors
  3. If successful, call BAPI_TRANSACTION_COMMIT to commit the changes
  4. If errors occur, call BAPI_TRANSACTION_ROLLBACK to rollback the changes

Best Practices

  • Use standard RFCs whenever possible instead of creating custom ones
  • Test RFCs thoroughly in a development environment before using in production
  • Implement proper error handling for all RFC calls
  • Use transaction RFCs (tRFC) for critical business processes
  • Monitor RFC execution with transaction SM58
  • Keep RFC interfaces stable by using wrapper functions for any custom logic
  • Document RFC usage thoroughly for future reference
Edit this page
Last Updated:: 4/12/25, 1:49 AM
Contributors: Taylor Brazelton
Prev
Remote Function Calls (RFCs)
Next
Custom RFCs