Register Login

Difference Between BD87 and WE19

Updated Aug 02, 2023

IDocs (Intermediate Documents) play a critical role in SAP systems for exchanging data between different applications or systems. Sometimes, IDoc processing may encounter errors or require reprocessing due to various reasons. SAP offers two different transactions, BD87 and WE19, to handle IDoc reprocessing, but they have distinct purposes and functionalities. In this article, we will explore the differences between BD87 and WE19 and understand when to use each of them.

BD87: Process Inbound IDocs

BD87 is a transaction in SAP that allows users to process inbound IDocs that have encountered errors during standard processing. When an IDoc fails during the normal processing flow, it gets stuck in error status and requires reprocessing.

Here are the key features of BD87:

  • Reprocessing Failed IDocs: BD87 is specifically designed to deal with failed IDocs only. Users can use the error number, IDoc number, and required message type to reprocess the IDoc.
  • Retains Original IDoc Number: When you restart processing of a failed IDoc in BD87, the same IDoc number is retained. This ensures that the IDoc history and references are maintained, making it easier to track the processing history.
  • Processing Multiple IDocs: BD87 allows users to process multiple IDocs in a single run. This is especially useful when dealing with large volumes of failed IDocs, as it enables batch processing.
  • Does Not Process Successful IDocs: It is important to note that BD87 cannot be used to process successful IDocs. It is strictly limited to reprocessing failed IDocs.

WE19: IDoc Test Tool Inbound

WE19, on the other hand, is an IDoc test tool in SAP that facilitates the testing and debugging of inbound function modules. It is not meant for reprocessing IDocs, but rather for testing the inbound processing logic and verifying the correctness of function modules.

Here are the key features of WE19:

  • Testing Inbound Function Modules: WE19 is primarily used to test inbound function modules in debugging mode. This allows developers to simulate inbound IDoc processing without affecting the actual system data.
  • Creating and Modifying IDocs: The test tool allows users to create an IDoc for testing using various options, such as copying an existing IDoc, creating an IDoc based on an IDoc type or message type, or even creating an IDoc without a template.
  • New IDoc Number Generation: Each time you process an IDoc in WE19, a new IDoc number gets generated. This ensures that the testing process does not interfere with the actual IDoc flow and maintains data integrity.
  • Viewing IDoc Status: Users can also use transaction WE05 in conjunction with WE19 to view the IDocs and their statuses. This helps in tracking the progress and status of the IDocs being tested.
  • Not for Reprocessing: As mentioned earlier, WE19 is not intended for reprocessing IDocs; it is solely for testing purposes.


The main difference between BD87 and WE19 lies in their purposes and functionalities. BD87 is used specifically for reprocessing failed IDocs, retaining the original IDoc number, and allowing the processing of multiple IDocs at once. On the other hand, WE19 is an IDoc test tool used for testing and debugging inbound function modules, generating new IDoc numbers for each test, and viewing IDoc statuses.

It is essential for SAP users to understand the distinct roles of BD87 and WE19 to ensure efficient handling of IDoc processing and testing. By using the appropriate transaction for the right task, users can effectively troubleshoot and manage IDoc-related issues in their SAP systems, leading to smoother data exchange and improved system performance.

Remember, if you encounter failed IDocs in your SAP system, turn to BD87 for reprocessing, and reserve WE19 for testing and debugging inbound function modules – as always, keeping data integrity and system stability in mind.