Configure standard R/3 proof of delivery functionality to streamline your delivery process with these step-by-step instructions.
Key Concept
Proof of delivery (POD) is the stage in the delivery process in which the customer confirms the quantity of the goods received. Based on the confirmation of goods received, an invoice is issued to the customer to avoid generating unnecessary credit memos. The quantity ordered by the customer can vary from the quantity that is actually shipped by the vendor for several reasons. POD is standard functionality in R/3 Release 4.6B and higher. From the revenue recognition point of view, it is a best practice to create an invoice only when the customer has confirmed the arrival of the goods. The revenue recognition perspective asserts that revenues should not be recognized by a company until they are realized and earned by the company. This means that customers should be billed only when the delivery occurs or services are rendered properly.
Based on my experience, I’ve witnessed several companies implement complex custom workarounds for delivery receipt confirmations. Many users are unaware of the standard R/3 POD functionality that can replace your elaborate customization work with a simple solution for delivery confirmations. In this article, I’ll explain a few key advantages of POD and show you how to configure POD in your system.
Note
To read more about POD, see the sidebar, “Additional Resources,” below for a list of several helpful Web sites.
Why Should You Use POD Functionality?
In addition to confirming deliveries, POD records the goods receipt date, the actual quantity received by the customer, and the reason for any quantity differences. Some reasons why quantities vary in day-to-day situations include misplaced or stolen goods, certain hazardous characteristics of the goods (such as volatility), or damaged goods during the shipment process.
The POD functionality tracks and stores these reasons in your system automatically so you can evaluate the lifecycle of delivered goods. This type of information is particularly useful when you follow up with forwarding agents, vendors, or customers — the quantity differences and the reasons why are accurately recorded in your system. Use POD to settle discrepancies between the actual goods delivered and the goods invoiced. This data is also useful for vendor evaluations.
POD enables you to issue accurate invoices when a customer confirms the goods received and you do not need to create several credit memos. Credit memos are required when there is a mismatch between what the customer claims to have received and what is billed to the customer. In the POD process, the customer is billed only for the quantity confirmed by the customer and you do not need to issue a credit note.
How to Configure POD
The following six steps explain how to configure the proof of delivery functionality in your system.
Step 1. Set up POD relevance. Follow IMG menu path Logistics Execution>Shipping>Deliveries>Proof of Delivery>Set POD-Relevance Depending on Delivery Item Category. The POD relevance overview screen appears automatically.
In my example, I’ll illustrate the process for maintaining the POD-relevant standard delivery item TAN. Click on the POD-relevant field for the item TAN. Select X from the drop-down menu to indicate that item TAN is POD-relevant (Figure 1).

Figure 1
Maintain POD relevance overview screen
Note
To demonstrate the configuration steps in a simple manner, I selected standard delivery item category TAN. However, it is a good idea to copy the standard delivery item category TAN to a custom category and make the appropriate changes for POD relevance. When you create the custom category, you must also copy all the dependent configurations, such as item category determination, schedule line category determination, and copy control.
VXPOD-relevantVIf you select the POD automatic field in Figure 1, the ship-to party transfers the POD to your SAP system via standard IDoc type DELVRY03 to verify the delivery quantities. In my example, I leave this field blank because I want to process the POD verification manually instead of automatically.
Step 2. Define reasons for quantity differences. In this step, define the reasons for quantity deviation. Standard SAP provides two reasons for quantity variance:
- DFG1 for overdelivery, reason unknown
- DGF2 for underdelivery, reason unknown
Overdelivery refers to the situation in which the quantity of goods delivered is more than the ordered quantity. Underdelivery refers to the situation in which the quantity of goods delivered is less than the ordered quantity.
Follow IMG menu path Logistics Execution>Shipping>Deliveries>Proof of Delivery>Define Reasons for Quantity Differences to access the Reason for Variance in POD overview screen (Figure 2). Click on the New entries button and enter the details of the variance in the Reason for variance field. During the POD verification process, several reasons for differences between quantities posted as goods issued and quantities received by the ship-to party are entered in the system for each delivery item. In this example, enter DMGD (damaged goods) and save the entry by clicking on the save icon.

Figure 2
Reason for variance descriptions in POD
The Quantity calculation field controls whether the quantities that are verified must be subtracted from the delivery quantity. This usually happens for underdelivery or damaged goods scenarios. You must create a separate variance reason for damaged goods because you know the exact reason for underdelivery. Based on your business requirements, you could create several known variance reasons for under- and over-delivered goods.
When the system creates billing documents for the delivery item categories that are marked as relevant to POD, it copies the verified quantity rather than the requested delivery quantity. Delivery quantity is available in the delivery document and indicates the quantity of posted goods issues upon delivery.
Note
The delivery item category is derived from the item category group, which is maintained in the material master. This means that you can activate the POD process for any specific material group or customer combination.
Step 3. Maintain relevant for POD indicator in customer master. Execute transaction code VD02 and enter the customer number (10000171) in the sales area data screen that appears (Figure 3).

Figure 3
Relevant for POD indicator is selected
To activate POD processing, select the Relevant for POD indicator on the Shipping tab of the customer’s master data. If necessary, maintain the number of days expected before the recipient confirms a proof of delivery in the POD timeframe field. For example, enter 7.00 to indicate seven business days. If there is no confirmation during seven business days, the delivery is confirmed automatically when this time period is over and no variances are recorded. Therefore, the recipient does not need to enter the POD date and time manually. Instead, the system automatically updates the POD confirmation date after the expected POD time frame expires.
Step 4. Create a billing document before POD verification. Now you are ready to use POD functionality for outbound deliveries. You follow the same steps required to create a sales order after the delivery is received and confirmed goods issued are posted.
Begin by creating a sales order for 10 units. As a result, the delivery is created for 10 units and the goods issued are also posted for 10 units. Next, create a billing document that is based on the actual quantity received and confirmed by the customer. In the absence of the POD verification, you cannot create billing documents. If you attempt to create a billing document for an unconfirmed shipment, the error message shown in Figure 4 appears automatically.

Figure 4
Example of a billing document error log
Step 5. POD verification for outbound delivery. In this step, you perform the POD verification for an outbound delivery. Follow menu path Logistics>Logistics Execution>Outbound Process>Goods Issue for Outbound Delivery>Proof of Delivery (transaction VLPODL) and select Change Single Document for single-delivery document or Work list Outbound Deliveries for POD for a full list of delivery documents.
In the screen that appears, enter the outbound delivery number (8000004020, in my example). Press Enter to generate the screen shown in Figure 5.

Figure 5
POD differences are reported
When the ship-to party verifies receipt of the goods, you must manually enter the POD date (07/18/2007) and time (10:45) in the POD date field, the reason for quantity deviation, and the deviation in quantity actually delivered, which you determine during the POD verification process. All other values in the outbound proof of delivery screen are automatically populated based on the delivery number entered, including the ship-to party. The document date defaults automatically to the current date.
In this example, the customer confirms that 2 quantities are received in damaged condition (DMGD in the Reas. [reason] field) and should not be billed. Therefore, enter 2 quantities in the QtyDiffinSalesUn field and an applicable reason code DMGD in the Reas. field. At this stage in the verification process, the POD status field contains the status B Differences reported. The POD quantity is reduced to 8 quantities accordingly. The Delivery quantity minus the QtyDiffinSalesUn determines the POD quantity, as shown in Figure 5.
To confirm the POD, click on the confirm POD icon
and then click on the save icon. The confirmed POD verification screen appears automatically and the POD status is now updated to C Confirmed (Figure 6).

Figure 6
POD is confirmed
Now the delivery is open for billing with the billed quantity equal to the POD quantity. In this example, 8 quantities are billed to the customer as confirmed during the POD verification instead of 10 quantities of goods issue. Figure 7 displays the status overview of the sales order.

Figure 7
Sales order confirmation shows eight quantities are fully invoiced and billed
The open status is the quantity that still needs to be processed with reference to the original sales order. It is applicable for all three stages in the sales process. For the delivery status, the open quantity is 0.00 because all of the 10.00 quantity was delivered successfully, as required in the sales order. Similarly, the open quantity is 0.00 for the goods issue status. However, for the billing status, 2.00 quantities are open because only 8.00 quantities were billed and the original sales order requested 10.00 quantities. This open status and quantity is for informational purposes only.
Step 6. Create a report. To generate a standard report on differences and reasons for the variance, follow menu path Logistics>Logistics Execution>Outbound Process>Goods Issue for Outbound Delivery>Proof of Delivery>Worklist Subsequent Processing for POD (transaction VLPODF). In the screen that appears, enter the selection criteria (Figure 8). Click on the execute icon to produce a standard report for your records.

Figure 8
Report on reasons for differences
After you complete the configuration steps described in this article, you can use POD functionality to issue accurate invoices based on the customer’s confirmation of goods received. This increases the billing process accuracy, expedites invoices, and does not require extensive rework. Recording the reasons for deviation offers valuable insight on transportation damage, theft, and other reasons, which you can then analyze to improve your logistics process.
Additional Resources
For more information related to POD, consider the following helpful Web sites:
View a press release about Kimberly-Clark’s radio frequency identification (RFID)-enabled proof of delivery plans at:
Find details about automatic POD confirmations at:
Ajay Pande
Ajay Pande is a senior consultant with the Enterprise Solutions Group of Infosys Technologies Ltd. He has experience in SAP implementation, configuration, and project management at Fortune 500 companies. He has also worked on integrating finance and logistics modules. Ajay holds a bachelor’s degree in mechanical engineering and a master’s degree in industrial engineering.
You may contact the author at ajay_pande@infosys.com.
If you have comments about this article or publication, or would like to submit an article idea, please contact the editor.