SAP tableObjectRFCDESModuleBTP_INTEGRATION

RFCDES table — RFC Destination Definitions Table

RFCDES is the table behind transaction SM59. One row is one RFC destination: its type (ABAP system, TCP/IP, HTTP, internal), target host, system number, and logon data. It does not store the password in plain text on most systems; that lives in a separate secure store. The table is client-independent, so a destination created in one client is visible in every client of that system.

RFCDES holds the RFC destination definitions maintained through SM59, covering connection type, target host, and logon parameters for every outbound RFC, HTTP, and internal connection defined in the system. This page covers how the table is structured, why it is not client-dependent the way most consultants expect, and the diagnostic steps for tracing an RFC failure back to a destination row.

Published 15 Sept 2026· 1,098 words

What it stores

Each row in RFCDES is one RFC destination as seen in SM59: a named connection the local system can use to call out to another ABAP system, a non-SAP system over TCP/IP, an HTTP endpoint, or an internal loopback connection. The row carries the connection type, the target host and system identification, the logon method (fixed user, current user, trusted system, or SNC), and various technical flags such as whether tracing is switched on. It does not carry a live connection or a status; it is purely the configuration record that RFC, IDoc, and BAPI calls resolve at runtime to know where to send the request and how to authenticate. Load balancing entries, gateway destinations, and connections used by background jobs and interfaces all live here as well.

Key fields

  • RFCDEST - the destination name, the key value typed into SM59 and referenced from ports, partner profiles, and program logic
  • RFCTYPE - connection type code, for example 3 for ABAP connection, T for TCP/IP, H for HTTP, I for internal
  • RFCHOST - target host name or IP for TCP/IP and ABAP connections
  • RFCSYSID - target system ID for an ABAP-type destination
  • RFCCLIENT - target client for an ABAP-type destination
  • RFCUSER - logon user configured for the destination when a fixed user is used
  • RFCLANG - logon language passed with the connection
  • RFCOPTIONS - free-text additional connection options string, legacy field still populated on some destination types
  • RFCCHECK - flag related to authorization or trust checking on the destination

How it joins the data model

  • RFCDES-RFCDEST = TBDLS-RFCDEST, joining a logical system definition to the destination it uses to reach that system
  • RFCDES-RFCDEST = EDP13-RFCDEST (via the port referenced in the partner profile), tying ALE/IDoc outbound processing to the transport it uses
  • RFCDES-RFCDEST = ARFCSSTATE-DESTINATION, matching a stuck or failed transactional RFC call back to the destination it was sent to
  • RFCDES-RFCDEST = TRFCQOUT-DEST, matching a queued outbound RFC call in a qRFC queue to its target destination

How to read it safely

RFCDES is small and client-independent, so there is no client field to restrict on and no volume problem. Selection is always by RFCDEST, or by RFCTYPE when scanning for every HTTP or every ABAP-type destination in the system. Because the table is cross-client, a query run in a test client will return destinations that were actually created and are being used by a completely different client on the same system, which is a common source of confusion when comparing environments. Password and secured logon data are not visible in this table by direct read; they sit in a separate secure storage layer and are not something to go looking for here.

How to prove it in the data

An interface is failing with a connection error and the team suspects the destination was pointed at the wrong host. Select RFCDES where RFCDEST equals the destination name quoted in the error, and read RFCHOST, RFCSYSID, RFCCLIENT, and RFCTYPE directly. Compare RFCHOST against the actual target system's address rather than trusting the destination's description text in SM59, which is free text and frequently stale or copied from a template destination.

ECC vs S/4HANA

RFCDES is unchanged in shape between ECC and S/4HANA on-premise; SM59 and the underlying table continue to work the same way. What changed is the broader connectivity landscape around it: cloud-to-cloud and cloud-to-on-premise scenarios increasingly route through the Cloud Connector and BTP destination configuration rather than a classical SM59 entry, so on an S/4HANA system integrated with BTP, some connections a consultant expects to find in RFCDES may instead be configured entirely outside the ABAP stack.

Common pitfalls

  • Assuming a destination created in one client only affects that client. RFCDES has no client field; the destination is visible and usable from every client on the system, which surprises people testing a fix and finding it already active in production-like clients on the same instance.
  • Trying to read the destination password from this table. It is not there on a securely configured system; password data for fixed-user destinations is held in a separate secure store, and reading RFCDES will not confirm or deny what credential is actually being used.
  • Trusting the description or comment field as documentation of what the destination is currently for. Descriptions are edited manually in SM59 and are routinely wrong after a destination gets repurposed.
  • Concluding a destination is unused because no recent traffic is visible from RFCDES itself. This table has no usage or timestamp field; usage evidence has to come from the RFC trace, the gateway logs, or the queue tables, not from RFCDES.
  • Editing RFCTYPE or connection parameters directly in the table via a direct table update tool instead of through SM59. SM59 performs consistency checks and writes related entries; a raw table change can leave a destination in a state SM59 itself cannot fully repair.
  • Assuming a destination that tests successfully in SM59's connection test will also succeed for the specific RFC function or IDoc processing that is actually failing. The connection test only proves network reachability and logon, not authorization for the specific remote call.

Whose problem this is

Basis owns RFCDES and SM59 as a technical connectivity object, including host names, load balancing, and secure storage of credentials. The interface or integration team supplies the business requirement for what needs to connect to what and which user or trust relationship should be used, but the actual destination configuration and any change to it goes through Basis, particularly in productive landscapes where a wrong host entry can silently redirect live traffic.

Related SAP objects

Reviewed pages this object connects to in the ERPClimb knowledge graph.

Source: ERPClimb — https://erpclimb.com/sap-tables/rfcdesERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.