RFC
RFC (Remote Function Call) is SAP’s core mechanism for calling function modules across systems, SAP-to-SAP or SAP-to-external. It underpins much of SAP’s integration, including BAPIs and many interfaces.
RFC errors are among the most common integration issues (a destination misconfigured, a system down, authorizations missing).
- RFC lets a program invoke a function module that lives in another system as if it were local.
- Connections to other systems are defined as RFC destinations (transaction SM59), holding the target system, logon and connection…
- Synchronous (sRFC): caller waits for the result; both systems must be available.
- Watch out: Misconfigured RFC destinations (SM59).
What RFC is
RFC lets a program invoke a function module that lives in another system as if it were local. It is the foundation of SAP’s remote communication: when one SAP system calls another, or an external program calls SAP, it is almost always via RFC under the hood.
Types of RFC
- Synchronous (sRFC): caller waits for the result; both systems must be available.
- Asynchronous (aRFC): caller does not wait.
- Transactional (tRFC): guarantees the call executes once, even across outages.
- Queued (qRFC): tRFC with ordering, used heavily in interfaces.
RFC destinations
Connections to other systems are defined as RFC destinations (transaction SM59), holding the target system, logon and connection details. Interfaces, BAPIs and IDoc distribution all rely on correctly configured, secure RFC destinations.
Why it matters
RFC errors are among the most common integration issues (a destination misconfigured, a system down, authorizations missing). Understanding RFC types and destinations is essential for building and troubleshooting SAP interfaces.
Common pitfalls
- Misconfigured RFC destinations (SM59).
- Choosing the wrong RFC type for reliability needs.
- Insecure RFC connections with excessive authorizations.