VEKP table — Handling Unit Header Table
VEKP stores one row per handling unit (HU) header - the packed unit itself, identified by its internal number VENUM, carrying its external barcode/SSCC (EXIDV), packaging material, status, and aggregated weight and volume. It does not hold what is packed inside; the contents and the link to the delivery live in VEPO, not in VEKP.
VEKP is the header table behind SAP's Handling Unit Management, one row per packed unit such as a pallet, box, or container. This page covers the fields consultants actually query, the join into VEPO and the delivery, and the recurring mistake of trying to read packing content or delivery assignment straight off VEKP.
Reviewed by an ERPClimb SAP consultant on 15 Sept 2026· 1,090 words
What it stores
One row in VEKP represents a single handling unit - a physical packed object such as a pallet, crate, drum, or shipping carton created during outbound packing, inbound packing, or repacking. The row exists independently of any sales or delivery document; it describes the unit itself, not its contents or its assignment. Weight and volume on the row are aggregates rolled up from everything packed inside, recalculated as items are packed and unpacked. Status fields track whether the HU is still open for packing, has been packed complete, or has been shipped/goods-issued. Because a handling unit can be nested inside another handling unit (a box inside a pallet), a VEKP row can itself be a packed item referenced from another HU, which is where a lot of confusion in reporting comes from.
Key fields
- MANDT - client
- VENUM - internal handling unit number, the primary key and the join field to everything else
- EXIDV - external handling unit identification, typically the SSCC/barcode number printed on the label
- EXIDV2 - secondary external identification, used in some inbound/EWM scenarios
- STATUS / STATUS_TXT - packing/processing status of the HU
- VHILM - packaging material (the pallet type, box type, etc.) used for the HU
- TARA / TARAG - tare weight and tare weight unit of the packaging material itself
- NTGEW - net weight, the aggregated weight of the contents
- BRGEW - gross weight, net plus tare
- GEWEI - weight unit
- VOLUM - volume, aggregated from contents
- VOLEI - volume unit
- ERNAM / ERDAT - creator and creation date of the HU
How it joins the data model
- VEKP-VENUM = VEPO-VENUM (HU header to its packed items - what is inside this unit)
- VEPO-VBELN = LIKP-VBELN (packed item's delivery number, where the HU was packed against an outbound delivery)
- VEPO-VBELN = LIPS-VBELN and VEPO-POSNR = LIPS-POSNR (packed item to the exact delivery line it represents)
- VEPO-VENUM = VEKP-VENUM again for nested handling units (an HU packed as a component of another HU)
How to read it safely
VEKP is client-dependent; always restrict on MANDT plus a real selection field, never pull it unfiltered. The table grows with every packing operation across every warehouse and every delivery, so it is not small in a mature system. VENUM is the most selective field when known; EXIDV (the barcode) is the second most useful because that is what operators actually scan and quote when reporting a problem. Do not try to filter by delivery number directly on VEKP - it is not there. If starting from a delivery, go through VEPO first to get the VENUM values, then read VEKP for the header attributes. Filtering on STATUS alone across the whole table is expensive and rarely selective enough to be useful without another restriction.
How to prove it in the data
Symptom: a pallet label shows the wrong gross weight. Take the SSCC printed on the label and select VEKP where EXIDV equals that number to get VENUM, BRGEW, NTGEW, TARA and GEWEI. Then select VEPO where VENUM equals that value to see every line packed into it, and sum the net weights against LIPS quantities to check whether the aggregate on VEKP actually matches what is packed. A mismatch between the VEKP aggregate and the VEPO sum points to a packing update that did not trigger a weight recalculation, not to a master data error on the material.
ECC vs S/4HANA
VEKP is unchanged in shape and continues to be the handling unit header table in S/4HANA for the classic Handling Unit Management scenario used with standard SD deliveries. Where extended warehouse processing is run through decentralized EWM, handling unit data is primarily managed and reported in the EWM system's own tables, with VEKP in the ERP/S4 system reflecting only what has been passed back through the integration. No CDS compatibility view replacement is required for VEKP itself since it remains the live table for this scenario.
Common pitfalls
- Reading VEKP alone and assuming it shows what is inside the handling unit - contents only come from VEPO, joined on VENUM.
- Trying to find the delivery number on VEKP directly - there is no delivery field on the header; the delivery lives on the VEPO item rows, and a single HU can in principle carry items from more than one delivery in some packing flows.
- Treating BRGEW/VOLUM as always current - these are aggregates maintained by the packing transaction; a mass change to a component material's weight after packing does not retroactively update the HU header until the unit is repacked or explicitly recalculated.
- Confusing EXIDV with VENUM in a query - EXIDV is the human-facing barcode and is not guaranteed unique for the life of the system the way VENUM is, since external ID ranges can be reused depending on configuration.
- Ignoring nesting - a VENUM appearing in VEPO as a packed item under another VENUM means it is a sub-handling-unit, not a delivery line; summing weights without accounting for nested HUs double counts or under counts depending on which level is queried.
- Assuming a STATUS value means goods-issued - HU status codes track the packing lifecycle and are not the same as the delivery's own goods movement status in VBUK/VBUP.
Whose problem this is
Packing content and weight discrepancies are a warehouse/logistics execution question first - whoever owns the packing station process (WM or basic packing in SD) checks VEPO against VEKP before anyone touches configuration. Master data for packaging materials (VHILM) sits with material master ownership. Only escalate to a developer once the VEKP aggregate is confirmed to genuinely disagree with the VEPO detail after a fresh packing action, not before.
Related SAP objects
Reviewed pages this object connects to in the ERPClimb knowledge graph.
Source: ERPClimb — https://erpclimb.com/sap-tables/vekpERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.