SAP Delivery VL01N Creation Tutorial
Master VL01N delivery creation in SAP. Learn step-by-step how to create outbound deliveries from sales orders with practical field guidance.
What is VL01N and Why It Matters
If you're working in SAP logistics or supply chain, you've probably heard about VL01N — the transaction code for creating outbound deliveries. Whether you're processing orders from customers or transferring stock between plants, VL01N is one of the most fundamental tools you'll use in the Sales and Distribution (SD) module.
A delivery in SAP is essentially a shipping document that consolidates one or more sales order line items into a physical shipment. It sits between your sales order and your goods issue (GR) posting. Creating deliveries via VL01N manually is something every consultant and power user needs to master — and it's simpler than most people think.
Understanding the VL01N Delivery Creation Process
Before we dive into the transaction, let's understand what happens behind the scenes. When you create a delivery in VL01N, SAP is doing a few critical things:
- Checking delivery blocks: Verifying the order isn't flagged for hold (customer credit, pricing, etc.)
- Allocating stock: Reserving inventory from the warehouse (MKPF/MSEG tables)
- Generating picking lists: Creating warehouse documents for the picking team
- Linking to accounts: Preparing billing-relevant data for later invoice posting
The beauty of VL01N is that it intelligently pulls information from the sales order (VBAK/VBAP tables) so you don't have to re-enter everything. Once created, your delivery document will have its own number and will sit in the LIKP (delivery header) and LIPS (delivery item) tables.
Step-by-Step: Creating Your First Delivery in VL01N
Let's walk through the complete process. I'll assume you're working with a standard SAP ERP system and have already created a sales order.
- Enter transaction code VL01N in the command bar (Ctrl+G). You'll land on the Create Delivery screen.
- Select your document type: The system will default to type LF (standard outbound delivery). Leave this unless you're doing something special like a free goods delivery (type LG).
- Enter the sales order number in the Order field. Press Tab or click the search icon to retrieve it. If the order is eligible (no delivery blocks, valid customer, sufficient stock), SAP will populate your item details automatically.
- Review the Delivery Overview screen: You'll see a list of items ready to pick. Check that quantities match your expectations. If an item shows as not available, scroll right to the Availability column to see why.
- Adjust quantities if needed: In the item detail section, you can reduce quantities (partial delivery) by clicking on an item and changing the Delivery Qty field. You cannot increase beyond the order quantity.
- Enter shipping details: Navigate to the Shipping tab. Here you'll specify:
- Route: The shipment route code (affects delivery time, costs)
- Shipping Point: Usually auto-populated; this is the warehouse from which goods will be picked
- Transport Planning Point: Left blank in most standard setups
- Save your delivery by pressing Ctrl+S or clicking the Save button. SAP will validate and assign a delivery number (e.g., 80000012).
- Print or process further: Once saved, you can print picking lists, post goods issue, or hand off to the warehouse team.
Congratulations! You've just created your first delivery document.
Common Fields and What They Mean
When you're deep in VL01N, you'll encounter several fields that confuse newcomers. Here's a quick reference:
- Delivery Type (VBTYP): LF = standard, LG = free goods, LK = credit memo delivery
- Delivery Qty (LFIMG): The quantity being shipped (can be less than order qty)
- Base Unit of Measure (MEINS): The unit your product is measured in (EA, KG, L, etc.)
- Batch (CHARG): Critical for FMCG, pharma, and regulated goods — automatically suggested if batches exist
- Storage Location (LGORT): Where the goods are picked from (usually auto-set from the sales order)
- Goods Issue Status (GEIST): Shown after posting; A = not yet picked, B = picked, C = goods issued
Troubleshooting Common VL01N Issues
Even experienced users hit snags. Here are the most frequent problems and quick fixes:
Sales order doesn't appear when I search: The order might have a delivery block. Check transaction VA05N (Order Status) to see if there's a Delivery Block code set. Common blocks are "01" (credit limit) or "02" (billing). Your credit team or sales admin needs to remove these.
Not enough stock available: VL01N flags this with a warning. You can create a partial delivery by reducing the quantity, or wait for stock to arrive. If you're in a development environment practising, you might need to manually add stock using transaction MIGO.
Shipping point is wrong: If the pre-filled shipping point doesn't match where goods are stored, check the customer master (transaction VD01) or the plant-level config. This is typically a configuration issue, not a user error.
Can't save the delivery: Check for mandatory field errors. The most common culprits are missing Route, missing Shipping Point, or a delivery block set at the customer or material level. The error message in the status bar will guide you.
Best Practices for VL01N Delivery Creation
Use partial deliveries wisely: If a customer orders 100 units but you only have 60 in stock, create a partial delivery for 60 now. This keeps cash flow moving and logistics lean. Document the shortfall in the notes so sales can follow up.
Consolidate where possible: If multiple orders are going to the same customer on the same day, ask yourself: should these be in one delivery or separate? Check your company policy. Consolidation saves shipping costs but may delay lower-priority items.
Verify batch and serial numbers: If you're shipping serialized goods (high-value equipment) or batch-tracked items (food, chemicals), VL01N will ask you to select specific batches. Don't just accept the system's default — verify the batch is actually what you want to ship, especially if it's near expiry.
Print before you post: Always print or review the picking list before the warehouse posts goods issue (GR). This is your last chance to catch errors.
Next Steps: From Delivery to Goods Issue
Creating the delivery is just the first step. Once your VL01N delivery is saved, the next typical workflow is:
- Picking: Warehouse team uses the delivery to pick items from shelves
- Goods Issue (GR): Posted via transaction VL02N (Edit Delivery) or MB1A (Post Goods Issue). This updates inventory.
- Billing: Once goods are issued, the delivery is eligible for invoicing via VF01 (Create Invoice)
If you want to edit a delivery after creation (e.g., change quantities before goods issue), use transaction VL02N instead of VL01N.
Practise Your VL01N Skills
The best way to master VL01N is to practise in a sandbox environment. Check out our SAP modules at Automate & Graduate where you can run hands-on delivery creation scenarios, explore the full SD process flow, and build real confidence — not just memorise screenshots.
VL01N might look intimidating at first, but once you understand the logic (order → delivery → goods issue → invoice), it becomes second nature. Start with simple single-item orders, then progress to multi-item, partial, and consolidated deliveries. Before you know it, you'll be processing them faster than your manager expects.
Ready to level up your SAP logistics skills? Visit Automate & Graduate to explore our complete SD module training and sharpen your delivery creation expertise with real-world scenarios.
Now do MIGO instead of reading about it
Click through the transaction in a simulated SAP screen — every field, every step, the errors included. No account needed, nothing to break.
Transactions covered in this article
Want to keep track of what you learn?
A free account saves your progress across 70+ modules, 26 games and a daily challenge.
Create a free account