ERPClimb logoERPClimb
SAP technical topicObjectInbound vs Outbound IDoc ProcessingModuleBTP_INTEGRATION

Inbound vs Outbound IDoc Processing

Outbound IDoc processing starts from an SAP business event/output/change-pointer/custom program, builds control and data records, determines the receiver/partner profile and dispatches the IDoc through a port. Inbound processing starts when an IDoc is received, validates partner/profile/message configuration, selects an inbound process code/function and posts the application document. The same IDoc framework is used, but trigger, ownership and status sequence differ.

High-value SAP technical guide to Inbound vs Outbound IDoc Processing: architecture, troubleshooting position, a concrete scenario, decision rules, common production failures, S/4HANA direction, ownership and related evidence.

Reviewed by an ERPClimb SAP consultant on 20 Sept 2026· 778 words

What it is

Outbound and inbound are mirror flows, not identical configurations. Outbound logic extracts application data and creates an IDoc with sender/receiver information. Receiver determination can come from application output or ALE distribution. The outbound partner profile tells SAP how the message should be dispatched and which port/output mode applies. Inbound logic receives the technical document, checks the inbound partner profile, determines the process code and invokes application processing—typically a function module/workflow layer—to create or change business data. Status codes are direction-sensitive and the diagnostic path must follow the side on which the failure occurred.

When to use it

Understand direction before debugging any IDoc. For outbound 'nothing created', inspect the business trigger, receiver determination/change pointers, outbound partner profile and output/process logic. For inbound 'document failed', inspect received control/data, inbound partner profile/process code and application messages. In two-SAP-system scenarios, the sender's outbound success and receiver's inbound success must be correlated by control record/business references; one system's green status is not enough.

How it fits the stack

Outbound IDocs can be generated by NAST/output, change pointers, message control, ALE, BAPI/custom logic or application-specific frameworks. Inbound IDocs are received through tRFC/qRFC/file/other ports and dispatched via process codes. WE20 has separate outbound and inbound parameter sections. WE02/WE05 shows status per system. SM58/SMQ* may expose transport-layer failure underneath. Application reprocessing tools differ by message/process.

A worked example

A delivery is created but no DESADV IDoc exists. Since no outbound IDoc number exists, searching inbound process code is pointless. The team first checks the output/event trigger and receiver determination, then WE20 outbound parameters. In a different incident the IDoc exists in the receiver with status 51; transport is complete, so the team reads EDIDS message and debugs inbound application processing rather than SM59 connectivity.

How to choose

  • No IDoc number on sender: investigate trigger/receiver/outbound configuration first.
  • IDoc created but not transmitted: investigate port/RFC/tRFC/qRFC layer.
  • Inbound IDoc exists with application error: investigate process code and business data/configuration.
  • Use direction-specific partner-profile parameters in WE20.
  • Correlate sender and receiver separately; status numbers are local processing evidence.

Common pitfalls

  • Treating all IDoc errors as 'integration/Basis' even when status proves application processing was reached.
  • Checking inbound WE20 configuration for an outbound creation failure.
  • Re-sending duplicate outbound IDocs without checking whether the receiver already processed the original.
  • Assuming sender status proves receiver business posting.
  • Using the same reprocessing procedure for all message types/statuses.

ECC, S/4HANA and clean core

Inbound/outbound IDoc flow remains part of S/4HANA classic integration. New Output Management may change how some outbound business messages are triggered, while APIs/events may replace IDocs in specific scenarios. The IDoc direction concepts remain relevant wherever IDoc is retained.

Whose problem this is

Outbound trigger ownership usually begins with the sending application plus integration configuration; inbound application errors belong to the receiving functional/application team. Basis owns communication transport. Integration teams coordinate correlation and reprocessing end-to-end.

Related SAP objects

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

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