SAP functional issueObjectRFC destination failing the connection testModuleBTP_INTEGRATION

RFC Destination Connection Test Failure

An RFC destination fails its connection test when the target system cannot be reached, the communication user is locked or expired, the SSL/SNC trust chain is broken, or the gateway access control lists block the call. The fix depends entirely on which of those it is; there is no single generic remedy, and guessing wastes the incident window.

Covers why an RFC destination that worked yesterday suddenly fails its SM59 connection test, ranked by how often each cause actually occurs in practice. Walks through the check sequence across SM59, STRUST, SU01, the gateway monitor and the Cloud Connector, then separates fixes that are pure data changes from ones that need a coordinated Basis or network change.

Published 16 Sept 2026· 1,127 words

The business symptom

Reported as an interface that stopped overnight rather than as an RFC problem. Typical phrasing: the nightly order file did not arrive at the warehouse, the pricing update job in the cloud system never picked up the batch, or a Fiori app on BTP shows a generic communication error when it tries to call the backend. Nobody mentions SM59 at first. The connection worked yesterday and nobody changed anything, according to whoever raises the ticket. By the time it reaches the integration team it has usually already been escalated as a business outage, with the underlying detail being that the scheduled job, IDoc dispatch, or OData call is failing at the connectivity layer before it ever reaches application logic.

The configuration behind it

  • Communication user locked or password expired. The most common cause by far. A password policy rotation, three failed logon attempts from an unrelated process, or a user type that was mistakenly set to dialog instead of communication/system will lock the account and the destination fails immediately with an authentication error.
  • SSL or SNC trust broken. A client or server certificate in the personal security environment has expired, or the certificate was renewed on one side but the new public certificate was never re-imported into the trust store on the other side. Common after a routine certificate renewal that only updated one leg of the chain.
  • Cloud Connector not reachable or misconfigured. For destinations that go through the Cloud Connector to an on-premise system, the connector may be stopped, the subaccount mapping to the virtual host may have changed, or the access control list no longer includes the specific path or resource being called.
  • Target host or port unreachable at the network level. A firewall rule change, an IP address change after a system move, or a DNS entry that stopped resolving. The connection test fails with a timeout rather than a logon error, which is the tell.
  • Gateway ACL restrictions. Entries in the gateway's secinfo or reginfo control files block the registered program or the calling client, often after a security hardening exercise tightened the ACLs without whitelisting an existing legitimate connection.
  • Wrong logon details in the destination itself. Client, language, or the target system's logon group/message server was changed on the target side (a system refresh, a client copy, a message server rename) but the destination definition was never updated to match.
  • Saprouter string stale. The route permission table on an intermediate saprouter denies the hop, typically after a saprouter reconfiguration or a certificate change on the router itself.

What to check

  • SM59: run the connection test directly and read the actual error text, not just 'failed'. Authentication errors, timeouts, and SSL handshake errors point to different causes.
  • SU01: check the communication user's lock status, validity dates, and password change requirement for a user-based failure.
  • STRUST: check certificate validity dates on both the client and server PSEs, and confirm the counterpart's public certificate is present in the trust list.
  • Cloud Connector administration UI: check connector status, subaccount connection state, and whether the requested resource is in the access control list, for any destination that traverses on-premise via BTP.
  • SMGW (gateway monitor) and the secinfo/reginfo maintenance: check for recent ACL entries that would block the calling program or host.
  • SM21: check the system log around the failure time for authentication, SSL or network-level error entries that corroborate the SM59 error text.
  • OS-level ping or telnet to the target host and port, to separate a network routing issue from an application-layer one.

How to prove it in the data

Pull the exact error text from the SM59 connection test alongside the system log entries in SM21 for the same timestamp, then compare that timestamp against the communication user's last password change date in SU01 or the certificate expiry date in STRUST. A failure that starts precisely at a password expiry or certificate expiry timestamp is proof of cause, not coincidence, and settles the argument about whether it is a network problem before the network team is engaged unnecessarily.

Resolution path

If the cause is a locked or expired communication user, unlock and reset the password directly in SU01; this is a data fix in the target client, has no transport, and takes effect immediately. If the cause is an expired or mismatched certificate, renew the PSE in STRUST and re-exchange the public certificates between both sides; this is done directly per system and is not transportable, but both ends must be updated together or the fix will not hold. If the cause is a Cloud Connector problem, restart the connector or correct the virtual host mapping and ACL entry in the BTP cockpit and Cloud Connector administration; this is a BTP-side configuration change, not an ABAP transport. If the cause is a gateway ACL block, add the required entry to secinfo or reginfo and reload the gateway; this is a Basis security change that should go through the same controlled process as any other ACL edit, since a careless entry re-opens a security gap. If the cause is network-level, raise a ticket to the network or firewall team with the specific host, port and timestamp; there is no application-side fix.

The fix people try first (and why it fails)

The reflex is to delete and recreate the RFC destination, or to copy the connection parameters from a similar destination that still works. This sometimes appears to fix it, because recreating the destination resets cached logon data, but it does not address a locked user, an expired certificate, or a gateway ACL entry, so the failure returns within a day or after the next password rotation. It also loses any custom settings on the original destination, such as a specific logon group or trace level, that someone will have to reconstruct later.

Whose problem this is

Basis or the integration/connectivity team owns the destination itself; the BTP administrator owns the Cloud Connector side when one is involved. The handover note should carry the destination name, target system and client, the exact SM59 error text, the certificate or user expiry date if that was the cause, and confirmation of whether the fix was a data change (user unlock, certificate renewal) or a config change requiring gateway restart or ACL update.

Related SAP objects

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

Source: ERPClimb — https://erpclimb.com/sap-functional-issues/rfc-destination-failing-the-connection-testERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.