# SAP VL150: Collective Processing of Documents Due for Delivery

> Source: https://netray.co/erp-help/sap-vl150-delivery-block-how-to
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: ERP Help

## Short answer

VL150 (and its more commonly used successor VL10) mass-creates outbound deliveries for sales orders that are due by a selected date, based on shipping point, route, and delivery-relevant item category. Orders that do not appear are usually held back by a delivery block, an incomplete order, a failed availability check, or a delivery date outside the selection window.

## Kind

how-to

## System

sap

## Erp

SAP ERP (ECC 6.0 / S/4HANA)

## Module

Sales and Distribution / Shipping

## Query

SAP VL150 collective processing of documents due for delivery

## Alternate Queries

- SAP mass delivery creation VL10 vs VL150
- SAP delivery not created check block
- how to fix sales order blocked from delivery creation

## Applies To

SAP ECC 6.0 and S/4HANA, SD (Sales and Distribution) shipping and transportation

## Steps

### Run and troubleshoot mass delivery creation

**Items:**

Open VL10 (the standard collective processing transaction; VL150 is an older equivalent still present in some systems) and select the appropriate variant - VL10A for sales orders, VL10B for purchase orders (stock transfers), VL10C for both.

Enter your selection criteria: shipping point, delivery creation date range, and optionally sold-to party, route or order number to narrow the run.

Execute and review the result list, which splits into documents that will be delivered versus documents that dropped out with a reason.

For orders missing from the deliverable list, use the log/error tab in the same screen to see why - common reasons are delivery block, incomplete order, credit hold, or availability check failure.

Clear a delivery block by removing it on the order header (VA02, Shipping tab) if authorized, or route it to the person who set the block (commonly credit management or a manual shipping hold).

For incomplete orders, use VA02 to find and fill the missing field the incompletion log flags (often a required shipping or billing field).

For availability failures, check ATP via CO09 for the material and plant, and either confirm a later delivery date, expedite stock, or authorize a partial delivery per the item category's settings.

Rerun VL10 for the corrected documents, or process them individually via VL01N once each blocking issue is resolved.

## Sections

### VL10 versus VL150

**Body:**

VL150 is the classic collective delivery creation transaction; VL10 (with its variants VL10A/B/C/D/E/F) is the newer, more flexible worklist-based version that most SD teams use today because it groups results by delivery-relevant criteria and shows a clear success/error split in one screen.

Both ultimately call the same underlying delivery creation logic, so a document that fails in VL10 will fail the same way in VL150 or VL01N - the transaction choice affects usability and reporting, not the delivery rules themselves.

### Why orders drop out of the selection

**Body:**

The most frequent reason is a delivery block set on the order header (VBAK-LIFSK) or, less often, at the delivery type level - these are deliberate holds, commonly tied to credit management, export compliance, or a manual shipping review, and require someone with authority to release them.

The second most common reason is order incompleteness - a required field the incompletion procedure flags as mandatory before shipping documents can be created, visible via the incompletion log accessible from VA02's Edit menu or automatically on save.

### Availability checks and delivery date logic

**Body:**

Even a clean, unblocked order will not appear in VL10 if its confirmed delivery date falls outside your selection date range, or if the ATP (Available to Promise) check run at order entry confirmed a later date than expected due to stock, production, or purchasing lead times.

CO09 shows the ATP situation for a material/plant combination directly - receipts, requirements, and the resulting available quantity by date - which is the fastest way to confirm whether a missing delivery is a genuine stock problem versus a selection window that needs widening.

**Code:**

- VL10A -> Shipping Point + Delivery Creation Date range -> Execute
- CO09 -> Material + Plant -> check ATP situation by date
- VA02 -> order -> Edit > Incompletion Log (if creation blocked)

### Partial deliveries and item category control

**Body:**

Whether SAP allows a partial delivery when full quantity is not available is controlled by the item category (partial delivery indicator) combined with the customer's delivery tolerance settings in the customer master shipping data - not a global system setting.

For customers who require complete deliveries only, an availability shortfall on one line item can hold back the entire delivery document rather than shipping what is available, which is a frequent source of 'why didn't this order deliver' tickets that trace back to customer master configuration rather than a bug.

## Pitfalls

Releasing a delivery block without knowing why it was set can ship an order that credit management or export compliance deliberately held - confirm with the department that owns the block type before clearing it.

Widening the VL10 date range to catch more orders can also pull in documents that are due but not yet meant to ship (e.g. future-dated for logistics planning reasons) - check the business intent before mass-processing a wider window.

An order that looks complete in VA03 can still fail VL10 if the incompletion log flags a shipping-specific field not visible on the standard overview screen - always check the log rather than eyeballing the order.

Partial delivery behavior depends on both item category and customer master settings together; changing one without checking the other can produce unexpected full-block or over-split delivery behavior.

Running VL10 with too broad a selection on a large dataset can be slow and lock resources during peak order entry - schedule large collective runs as background jobs where possible.

## Ai Angle

ERPray grounded on your SAP SD data can answer 'why didn't order 4500012345 deliver' in one query by checking the delivery block, incompletion log, and ATP situation together, instead of a shipping clerk working through VA02, CO09 and VL10's error log separately for each order.

## Faq

### Should I use VL10 or VL150?

**Answer:** VL10 (and its A/B/C variants) is the standard modern transaction most teams use for its clearer worklist and error reporting. VL150 still exists and works the same underlying way, but VL10 is generally the better entry point.

### Why does an unblocked, complete order still not appear in VL10?

**Answer:** Check the confirmed delivery date against your selection date range, and check ATP via CO09 - the order may be correctly excluded because its delivery date, driven by stock or production availability, falls outside the window you selected.

### Who can remove a delivery block?

**Answer:** Typically only users with the relevant authorization for that block type - credit-related blocks usually sit with credit management, and manual shipping holds with the person or team who set them. Removing a block without checking its purpose can bypass a deliberate control.

## Search terms

SAP VL150 delivery, VL10 collective delivery creation, SAP delivery not created reason, SAP delivery block VA02, SAP incompletion log shipping, CO09 availability check SAP, SAP partial delivery item category, SAP mass delivery processing

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
