IDoc statusObject02ModuleBTP_INTEGRATION

IDoc status 02 — IDoc Status 02: Error Passing Data to Port

Status 02 means the outbound IDoc was generated by the application but the transfer to the communication port failed before it ever left the SAP system. The problem sits in the port definition, the RFC destination, or the file system target, not in the business data itself.

This page covers IDoc status 02, an outbound error that occurs at the port-transfer step, before the IDoc leaves the sending system. It focuses on the connectivity and configuration causes that produce this status, the check sequence across WE02, WE20, WE21 and SM59, and how to reprocess without creating duplicate IDocs or duplicate downstream postings.

Published 16 Sept 2026· 1,004 words

What the status means

Status 02 is an outbound status. The application document (sales order, delivery, material master change, whatever triggered the IDoc) has already been generated and the IDoc control and data records exist in the database. The failure happens at the next step, when the system tries to hand the IDoc to the port defined in the partner profile, whether that port is a file port, a tRFC/ABAP-PI port, or an XI/PI port. The IDoc never reaches the port successfully, so nothing has been sent anywhere. This is different from status 03, which means the transfer succeeded and the IDoc is sitting in the outbound queue or has left the system. Status 02 is a local, technical failure, not a receiver-side rejection.

Why it appears

  • RFC destination in the port definition is broken, points to a system that is down, or has expired credentials, so the tRFC call to hand off the IDoc never completes.
  • Port type mismatch: the partner profile references a port (file, tRFC, ABAP-PI) that was changed or deleted, or the port definition itself has an invalid target host or logical destination.
  • File port target directory does not exist, is full, or the SAP application server user lacks write authorization to the path defined in the port.
  • Partner profile outbound parameters are inconsistent with the port, for example a message type routed to a port intended for a different partner or a decommissioned interface.
  • tRFC/qRFC queue is stuck or blocked on the sending side, so the call to pass data to the port times out before it is dispatched.
  • Logical system or client assignment in the port configuration does not match the actual target system, common after a system copy or client refresh where port entries were not adjusted.
  • Network or firewall issue between the application server and the target host, especially for file shares mounted over a network path rather than a local disk.
  • Basis-level saturation: work processes or background dispatch capacity exhausted at the moment of transfer, causing a transient failure that looks identical to a configuration error.

What to inspect

  • WE02 or WE05: open the IDoc, read the status record text and timestamp for status 02 to see the exact error message returned by the port layer.
  • WE20: confirm the partner profile's outbound parameters for the message type point to the correct, currently active port.
  • WE21: check the port definition itself, verify the RFC destination name or file path, and confirm the port has not been orphaned by a recent change.
  • SM59: test the RFC destination referenced by the port directly; a connection test failure here is the root cause, not a coincidence.
  • For file ports, check the target directory on the application server or shared file system for existence, space, and write permissions.
  • ST22 and SM21: look for a short dump or system log entry at the same timestamp, since some port failures surface as dumps rather than clean IDoc status text.
  • SM58: check for stuck tRFC calls tied to the same IDoc number or LUW.

How to reprocess safely

Fix the connectivity or configuration problem first: correct the RFC destination, repair or recreate the port, restore file system access, or fix the partner profile assignment. Do not touch the IDoc until the underlying port test succeeds independently, for example a clean connection test in SM59 or a successful manual write to the file target. Once the port is confirmed working, reprocess the stuck outbound IDoc through the standard outbound processing report or mass reprocessing transaction rather than editing the IDoc data. Because status 02 occurs before the IDoc has left the system, there is generally no downstream duplicate-posting risk on the receiver side, since nothing was ever received. The real duplicate risk is upstream: if the business process was re-triggered manually while the original IDoc was stuck, a second IDoc for the same document may already exist. Check for a duplicate outbound IDoc with the same object reference before reprocessing the original.

The fix people try first (and why it fails)

The reflex is to select the IDoc and hit reprocess immediately, assuming a retry will succeed on its own. If the port or RFC destination is still broken, the retry fails again with status 02 and adds another status record without resolving anything. Worse, if someone instead deletes the stuck IDoc and re-triggers the source transaction to force a fresh one, and the original was actually still queued or partially processed, this creates two outbound IDocs for one business document, which then causes duplicate messages once the port issue is eventually fixed and both get dispatched.

Whose problem this is

This belongs to Basis or the integration/interface team, since the fault is in port, RFC, or file system configuration rather than business data. Hand over the IDoc number, message type, the exact status-02 error text, and the port and RFC destination name involved. Functional consultants only get involved if a duplicate business document needs correction after a mistaken retry.

Common pitfalls

Status 02 looks like a data or mapping error to anyone unfamiliar with the outbound chain, because the IDoc list shows an error, but the data records are almost always fine at this point. Another trap is a file port that reports success on a retry only because the directory was fixed, while the receiving side's polling job has meanwhile been paused, so the file sits unread and looks resolved when it is not. Environment refreshes are a frequent silent cause, since port and RFC entries copied from production often point to the wrong target after a client copy.

Related SAP objects

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

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