ERPClimb logoERPClimb
SAP technical topicObjectIDoc Partner Profiles, Process Codes and PortsModuleBTP_INTEGRATION

IDoc Partner Profiles, Process Codes and Ports

WE20 partner profiles define which IDoc messages a partner may send or receive and the processing parameters for those messages. WE21 ports define the technical communication endpoint/medium. Process codes connect message processing to application logic—especially inbound function modules/workflow and classic outbound message-control logic. A correct IDoc type alone is insufficient; partner, message, port and process-code configuration must align.

High-value SAP technical guide to IDoc Partner Profiles, Process Codes and Ports: 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· 720 words

What it is

An IDoc interface separates business-message structure from partner-specific runtime configuration. A partner profile is keyed by partner number/type and contains outbound/inbound message parameters. Outbound parameters determine message type, receiver port/output mode and related processing; inbound parameters map message type/process context to a process code. Ports define how IDocs leave or enter the system—commonly tRFC destinations, files, XML and other supported port types. Process codes are application dispatch keys; inbound process codes typically point to the function/module/workflow that understands the IDoc's business message.

When to use it

Use WE20/WE21/process-code analysis whenever an IDoc reaches the framework but routes incorrectly, uses the wrong function, cannot find partner configuration, or dispatches to the wrong destination. Do not change partner profiles when the real problem is an application-level validation in the correctly selected process code. In landscape migrations, partner numbers/logical systems and ports deserve explicit post-copy/BDLS review.

How it fits the stack

EDIDC stores partner/message/port identity chosen for each IDoc. BD64/ALE can determine which logical receivers should receive a message; the partner profile then controls actual outbound/inbound parameters. SM59 can sit beneath an RFC port. Process codes are maintained in transactions such as WE41/WE42 depending on direction and are referenced by the profile. EDP* configuration tables exist but should be treated as implementation storage, not edited directly.

A worked example

An inbound ORDERS IDoc is received but returns 'partner profile not found'. EDIDC shows sender logical system and partner type. WE20 contains an ORDERS profile for a similar partner number but different partner type, so no match exists. After the correct inbound partner parameter is transported/maintained, the process code resolves and application processing begins. If it then fails with a purchasing message, the incident moves from partner configuration to MM.

How to choose

  • Match partner number + partner type + message type, not message type alone.
  • Use WE21/SM59 to prove technical destination separately from WE20 business partner configuration.
  • Verify inbound process code points to the intended application logic for the message/basic type.
  • Treat logical-system changes after system copies as a controlled ALE/CVI/BDLS activity.
  • Use standard maintenance transactions/APIs, never direct EDP* table updates.

Common pitfalls

  • Using the wrong partner type (LS/KU/LI/etc.) while the partner number looks correct.
  • Changing a port to fix an application posting error that occurs after inbound dispatch.
  • Copying WE20 settings across systems without adapting logical systems/RFC destinations.
  • Assigning a process code intended for another message/basic type.
  • Editing partner-profile tables directly and bypassing consistency checks.

ECC, S/4HANA and clean core

Partner profiles, ports and process codes remain central for classic IDoc interfaces in S/4HANA. Some modern integrations avoid these objects by using released APIs/events, but retained IDocs still depend on them. Clean-core does not mean removing standard IDoc configuration; it means avoiding unsupported modifications/direct-table manipulation.

Whose problem this is

Integration/ALE teams own WE20/WE21/process-code configuration. Basis owns RFC destinations/connectivity. Functional teams own application errors after dispatch. ABAP owns custom inbound/outbound processing modules and extensions.

Related SAP objects

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

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