--- title: "Container (LPN)" type: concept sources: - areas/inventory_management/containers.md - areas/inventory_management/containers/container_types.md - areas/inventory_management/containers/container_lock_types.md - areas/inventory_management/containers/division_types.md - areas/inventory_management/containers/my_containers.md - areas/inventory_management/containers/stacked_containers.md - areas/inventory_management/containers/stack_match_containers.md - areas/inventory_management/containers/unstack_unmatch_containers.md - areas/inventory_management/containers/reports/Putaway_search_location_trace.md - areas/inventory_management/asncontainers.md - areas/receptions/reception_dock/supplier_container.md - areas/receptions/reception_dock/blind_container.md - areas/TransactionTypes.md - sources/archives/27_Modification_sequence_SSCC.md - sources/archives/33_Les_poids.md related: - concepts/location.md - concepts/stock.md - concepts/reception.md - concepts/putaway.md - concepts/shipping.md - concepts/task.md - concepts/order-inbound.md - concepts/order-outbound.md - concepts/labels.md - concepts/transactions.md - concepts/erp-interface.md last_compiled: "2026-04-17" --- # Container (LPN) ## Overview A **LPN** (License Plate Number) is the fundamental unit of physical storage in EasyWMS - a box, pallet, or any other container that holds stock. Every unit of stock in the warehouse lives inside a LPN; the LPN is what moves, what gets located, locked, picked, and shipped. In identification contexts, the LPN is always labeled (Code 128 or GS1-128) and its code uniquely identifies it system-wide. The LPN is the bridge between the physical world (a pallet on a rack) and the logical world (stock records, tasks, orders). EasyWMS tracks every LPN's location, weight, status, contents, and relationships (stacked, matched, client-linked) in real time. All WMS movements - reception, putaway, picking, replenishment, shipping - are expressed as operations on LPNs. The term "container" in EasyWMS source documentation is synonymous with LPN. The entity name in the Application Dictionary is **Container**; the UI and documentation use both terms interchangeably. --- ## Main Attributes | Property | Description | |---|---| | **Code** | Unique identifier. Usually an **SSCC** (18 numeric digits per GS1 standard). Characters `&`, `<`, `>`, `` ` `` are not allowed. Validated against GS1 format if `LPN_CHECK_CODE_GS1LABEL` is active. Can be checked for uniqueness vs. station codes, locations, and item aliases via `CONTAINER_CHECK_CODE_REPEATED_FOR_LABELS`. | | **Type** | Physical LPN type (e.g. EuroPallet, American pallet, box). Defines dimensional and weight constraints. Configured in EasyS. | | **Location** | Current warehouse location where the LPN is stored. | | **Height** | Measured in mm. Set by: PLC/SCA gauge at PIE station, user input during reception, ASN pre-notification, or manual screen edit. Includes the max height of any LPN stacked on top. | | **Occupation percentage** | % of LPN capacity used by its stock. Not calculated automatically by EasyWMS - editable from the LPN view or set by the user. | | **Is client LPN** | Boolean. `true` if the LPN's stock is assigned to a shipping order (outbound). Drives picking, shipping, and consolidation logic. | | **Division type** | Internal partition configuration (see [Division Types](#division-types)). Only supported in automatic warehouses. LPNs with divisions only accept entry and picking tasks - shipping tasks are invalid. Content must be fully picked out before division LPN is used for shipping. | | **Status** | Current lifecycle state (see [Lifecycle & Statuses](#lifecycle--statuses)). | ### Weight Properties EasyWMS maintains five weight values per LPN. Only **Calculated weight** is applied to capacity restrictions (location max weight, equipment max weight). | Weight Property | Description | |---|---| | **Theoretical weight** | Computed: sum of stock line theoretical weights + LPN type empty weight. | | **Real weight** | Theoretical weight of this LPN + sum of theoretical weights of all stacked LPNs on top. | | **Scale weight** | Reported by WMS after LPN passes a scale (SCA), or entered manually by a user. | | **Theoretical scale weight** | Scale weight corrected each time stock quantity changes (recalculated from stock theoretical weight). | | **Calculated weight** | `max(Real weight, Theoretical scale weight)`. This is the value used for all weight-based restrictions. | > 📖 For variable-weight items, PIE passage behaviour, and the complete formula walk-through see [Weights](weights.md). Note: the internal "Real weight" field in the Container entity is `max(Calculated, Theoretical Scale)` whereas the definition above (used for stacking capacity checks) aggregates stacked containers. Both are documented side-by-side in [Weights](weights.md). --- ## Types ### LPN Types LPN types define the physical characteristics of an empty LPN. Configured in the **EasyS** tool, not in the WMS UI. | Attribute | Unit | Description | |---|---|---| | Length | mm | Bottom length of the LPN | | Width | mm | Width of the empty LPN | | Height (empty) | mm | Height when the LPN is out of stock | | Maximum height | mm | Max height the LPN can reach when loaded with stock | | Weight (empty) | kg | Weight of the empty LPN | | Maximum weight | kg | Max safe weight when loaded | | Collapse | mm | Max width deviation due to load collapse. Effective width = Width + 2 × Collapse. | The collapse parameter matters for automatic warehouse location sizing - the system checks effective width when searching for a putaway location. **UI path:** EasyS tool (not EasyWMS web UI). ### Division Types Storage LPNs can have **internal partitions** (divisions). Used to optimize space and organize stock by item within a single physical LPN. Only supported in **automatic warehouses**. | Attribute | Description | |---|---| | Name | Unique identifier for the division type | | Description | Free text | | Columns | Number of column partitions | | Rows | Number of row partitions | | Section | Section assignment within the division | Rules: - LPNs with divisions only allow entry and picking tasks. Shipping tasks are not valid. - Contents must be picked out before the LPN can be considered empty. - Division type can only be modified or removed from an **empty** LPN. **UI path (web):** `Masters > Division LPN types` ### Client vs. Non-Client LPN A critical distinction throughout EasyWMS: - **Non-client LPN**: Holds stock available for general warehouse use (putaway, replenishment, picking source). - **Client LPN**: Stock has been assigned to a shipping order. The LPN is "committed" to a specific outbound flow. Stacking/matching rules differ between client and non-client LPNs. --- ## Lifecycle & Statuses LPN status tracks the full journey from pre-notification through shipment: ``` [ERP pre-notifies ASN] ↓ PENDING RECEIPT ← LPN in virtual ASN location, not yet physically received ↓ [Reception process] ↓ AVAILABLE ← LPN in warehouse, free to use for any process ↓ [Picking/consolidation starts] ↓ IN PREPARATION ← LPN being received, client LPN being prepared, or in consolidation ↓ [Picking complete] ↓ PREPARED ← Client LPN picked but not yet ready for loading ↓ [Moved to shipping stage] ↓ READY FOR SHIPPING ← Client LPN in shipping stage awaiting truck load ↓ [Truck loading] ↓ LOADED ← Included in a load but not yet departed ↓ [Truck departs] ↓ SHIPPED ← LPN has left the warehouse ``` **Note**: The "In preparation" status also covers LPNs currently on equipment during any movement task. --- ## Stacking and Matching EasyWMS supports two forms of LPN grouping to reduce storage and transport costs: | Relationship | Axis | Description | |---|---|---| | **Stacking** | Vertical | LPNs stacked on top of each other. A hierarchy is established: base LPN → stacked LPN(s). | | **Matching** | Horizontal | LPNs aligned side by side. Uses a **slave/dummy LPN** as the logical container. | ### Stacking Rules - LPNs must all be client type OR all non-client type. - If client LPNs, they must all be for the same shipping order or for different orders on the same route stop. - If a shipping order specifies a required LPN type, only client LPNs of that type can be stacked. - Stacking relationships between LPN types must be configured in **EasyS** (how many LPNs of type X can stack on type Y). - Supported location types for stack/match: Shelves (conventional/rack), Buffer, Stage, Dock, Lost & Found. ### End Location for Stacking | LPN type | Location type | Behavior | |---|---|---| | Client LPN | Floor (buffer/stage/dock) | End location not requested; stays at base LPN location | | Non-client LPN | Floor (buffer/stage/dock) | Controlled by `ASK_FINAL_STACK_LOCATION` parameter | | Any | Shelves / virtual | Operator must always specify end location | ### Matching (Slave LPN) Slave/dummy LPN configuration at equipment level: - **With slave**: always uses a slave LPN - **No slave**: never uses a slave LPN - **Ask slave** (default): asks the operator each time ### Unstacking - Cannot unstack base LPN from locations with FIFO configuration or rack type (when different LPN types are above). - `UNSTACK_ON_STAGE` parameter: if `true`, forces unstacking to happen at a stage (both unstacked and remaining set land at the stage). - **Undo all**: breaks all stacking/matching relationships in a set at once; all LPNs are placed loose in a buffer location. --- ## Lock Types Locks restrict what operations can be performed on a LPN. Multiple locks can be applied simultaneously unless a lock is marked **Exclusive** (in which case it cannot coexist with other locks). ### Lock Properties | Property | Description | |---|---| | Description | Text describing the physical reason (e.g., "broken wood", "stock misplaced") | | Exclusive | If enabled, no other lock type can be active at the same time | | Allow picking | If active, picking is allowed | | Allow shipping | If active, shipping is allowed | | Allow putaway | If active, putaway is allowed | | Allow counting | If active, counting is allowed | | Allow moving | If active, physical movement is allowed | | Allow replenishment | If active, replenishment is allowed | | Allow reserving | If active, stock reservation is allowed | | Allow internal consumption | If active, LPN can be consumed in manufacturing | ### Cascade Effects When Locking When a lock is applied that restricts a specific operation, EasyWMS automatically cascades the impact to in-progress tasks: **Lock does not allow replenishment:** - All replenishment source assignments for this LPN's stock are canceled. - Picking tasks that used this stock as their assigned source are decremented (if they had other stock) or canceled (if this was the only stock). - Released lines are re-released for new assignment. **Lock does not allow picking:** - All replenishment source assignments are canceled (stock unavailable for picking). - Picking tasks using this LPN's stock are decremented or canceled. - Affected lines are re-released. **Lock does not allow moving:** - If LPN is in a dynamic or pushback location, locks automatically propagate to LPNs behind it. - Auto-unassignment of affected client LPNs. - Affected tasks canceled; lines re-released. **UI path (web):** `Masters > Lock types` → View "LPN lock types" --- ## Reception of Containers ### ASN Pre-notified Containers LPNs pre-notified by the ERP via ASN message arrive in **Pending receipt** status and appear in the virtual **ASN location**. They are listed in the "ASN LPN" view until physically received. **UI path (web):** `Warehouse > ASN LPN` **UI path (RFT):** `Receipts > Notices` ### Supplier Multi-reference Container Receipt Non-pre-notified stock arriving from a supplier in containers with multiple items. Two modes: | Mode | Description | |---|---| | **Receipt and putaway** | Stock received on equipment; location search runs immediately for putaway. | | **Receipt on stage** | Stock registered in a stage; putaway done later by another operator or batch. | A third variant: **exclusive reserve** - stock can be reserved for a specific shipping order at receipt time (configured via ROR message from ERP, see [erp-interface.md](../concepts/erp-interface.md)). The `CONFIRM_EXCLUSIVE_RESERVE_ASSIGNMENT` parameter controls whether the user must manually select the shipping order when multiple compatible orders exist. **ERP message sent at end of receipt:** `REF` **Transactions:** `CON.RECEP` (per container), `STK.RECEP` (per stock line) **UI path (RFT):** `Receipts > Supplier > Loose stock/multi-reference` ### Blind Container Receipt Unplanned, non-pre-notified stock with no entry order. A receipt is auto-created at the start and closed at end. The receipt cannot be manually created or edited in the WMS UI. **ERP message sent:** `REF` **Transactions:** `CON.RECEP` (per container), `STK.RECEP` (per stock line) **UI path (RFT):** `Receipts > Blind > Loose stock/multi-reference` ### Partitioned Container Receipt Both supplier and blind modes support receiving containers with internal partitions. Destination must always be an **automatic warehouse** - containers must be transported to a PIE or picking station after reception. --- ## Operations Available actions on LPNs (full list from web UI): | Operation | Description | Equipment | |---|---|---| | LPN register | Register a LPN found at a location not known to the system. Specify code, location, type, height, weight, divisions. Some locations require position (rack) or depth (dynamic/compact/APS). | PC | | Stock register in LPN | Add stock to a newly registered or unknown LPN. Requires item, owner, quantity, UoM. Treated as stock adjustment (reason required). | PC | | Delete LPN | Remove LPN. If not empty, deletes all stock (stock adjustment, reason required). ASN LPN can only be deleted if not linked to a receipt order. | PC | | Lock / Unlock | Apply or remove a lock type. Requires lock type selection; end date and comment optional. | PC | | LPN type modification | Change the LPN type. Only for **empty** LPNs. | PC | | Division type modification | Change division type. Only for **empty** LPNs. | PC | | Delete division | Remove division from LPN. Only for **empty** LPNs. | PC | | Location change | Change LPN's recorded location. Does NOT create a movement task - only updates the data record. Treated as [manual movement](../concepts/manual-movements.md). In open APS FIFO channels, only accessible locations shown. | PC / RFT | | Send to Lost & Found | Send LPN to virtual L&F location when physical location unknown. In APS FIFO, only accessible or last LPN in channel. Stacked LPN: entire partial block (selected LPN + children) goes to L&F. | PC | | Relocation (automatic warehouses) | Change physical location via system-directed move: Automatic (putaway strategies), To an aisle (putaway strategies in selected aisle), To a location (no strategies, physical compatibility only), To a level (putaway strategies in selected level). | PC | | Mark as full / not full | Flag LPN as full so replenishment at PK conveyor skips it. Manual additions still possible. | PC | | Mark division as full / not full | Same as above for a specific division within a LPN. | PC | | Shipping order unassignment | Unlink LPN from its shipping order. Works for mapped, prepared, or loaded LPN. No movement task created - operator is responsible for physical move. | PC | | Extraction request to PK conveyor | Request extraction from a station to a Picking conveyor for an action outside the system. | PC | | Request empty LPN to PK | Request empty LPN(s) of specific type/divisions to be sent to a Picking conveyor. | PC | | Extraction request to PS conveyor | Request extraction to an Outbound conveyor (PS). | PC | | Request empty LPN to PS | Extract empty LPN to Outbound conveyor (often to fill outside PK, e.g., for reception). | PC | | Set depth coordinate | APS3D only - manually set depth coordinate for a LPN in an APS location. Superadmin only. | PC | | Manual compacting | APS/APSFIFO: compact LPN when free positions exist in front. | PC | | Exchange LPN | APS3D only - swap a LPN in channel for one outside; must be same type. Superadmin only. | PC | | Consulting equipment LPNs (My LPNs) | View all LPNs on own equipment: code, type, status, stock lines (item, qty, UoM, logistic attributes). Can unload or reject LPNs from this view. | RFT | | Putaway search location trace | Report of last location search for this LPN. Shows strategies applied, excluded aisles, routes with issues, reserve percentages, stock line details. Superadmin sees full technical trace. | PC | | Stack / Match LPNs | Group LPNs vertically (stack) or horizontally (match). | RFT | | Unstack / Unmatch LPNs | Dissolve a stacking or matching relationship. | RFT | | Label printing | Print/reprint LPN label (Code 128 or GS1-128). | PC / RFT + Labeller | | Pre-printed label generation | Print blank LPN code labels for use in reception/creation processes. Follows UCC config and LPN sequence. | PC / RFT + Labeller | | Client LPN label printing | Print client label for prepared client LPNs. Shows: LPN code, account, shipping order, current date. | PC / RFT + Labeller | | Delivery note printing | Print packing slip for prepared or shipped client LPN. Shows: LPN code, shipping order, recipient name/address, carrier, stock detail (item, qty, UoM, weight, logistic attributes). | PC / RFT + Printer | | View rejects | Consult reject reasons for LPNs at a station. | RFT | --- ## Labeling & Identification EasyWMS interprets the following **GS1 Application Identifiers (AI)** on existing LPN labels: | AI | Meaning | |---|---| | (00) | SSCC - Serial Shipping Container Code | | (01) | GTIN grouping code / DUN14 | | (02) | EAN | | (10) | Lot number | | (11) | Manufacturing date | | (15) | Preferred consumption date | | (17) | Expiry date | | (21) | Serial number | | (37) | Quantity | **AI 02 special behavior:** When receiving items with an item-to-container-type conversion (complete quantity rule) labeled with GS1-128, using AI 02 forces the user to manually enter the received quantity rather than auto-completing the container. ### Changing the SSCC prefix The SSCC prefix used for containers generated by the WMS (picking, and reception if the toolkit is enabled) is set **in EasyS**, not in SmartUI. Typically required when a customer mandates GS1-compliant codes. Procedure: 1. In EasyS, **double-click** the warehouse name 2. Fill in the desired **prefix** 3. **Save** Existing LPN codes are not rewritten - only containers generated after the change use the new prefix. --- ## Parameters | Parameter | Effect | |---|---| | `ASK_FINAL_STACK_LOCATION` | If `true`, asks for the end stacking location when stacking non-client LPNs in floor locations (buffer/stage/dock). | | `UNSTACK_ON_STAGE` | If `true`, requires moving the entire LPN set to a stage before unstacking. | | `ALLOW_CREATE_RECEPTION` | If active, operators can create a receipt from the RFT if none found. | | `CREATE_ALIAS_ON_RECEPTION` | If active, operators can declare a scanned code as an alias for an expected item at receipt time. | | `RECEPTION_DEFAULT_CONTAINER_TYPE` | Default LPN type suggested during reception. If not set, operator must select each time. | | `RECEPTION_DEFAULT_HEIGHT_TYPE` | Default height type suggested during reception. If not set, operator must select each time. | | `RECEPTION_NUM_DAYS_PRODUCTION_DATE_MARGIN` | Days of margin added to today's date for future production date validation at receipt. | | `CONFIRM_EXCLUSIVE_RESERVE_ASSIGNMENT` | If active, operator must manually select the shipping order/route when multiple exclusive reserves are compatible at receipt. | | `CONTAINER_LABEL_DEFAULT_FORMAT` | Default label format (content, not size) for LPN labels printed by EasyWMS. | | `CONTAINER_CHECK_CODE_REPEATED_FOR_LABELS` | If active, validates that LPN codes are not duplicated across stations, locations, and item aliases. | | `LPN_CHECK_CODE_GS1LABEL` | If active, enforces GS1 standard (18 digits + check digit) for LPN codes. | --- ## Transactions (CON.*) All container events generate transactions recorded in EasyWMS audit trail: | Transaction | Process | ERP Message | |---|---|---| | `CON.ASN.001` | Container received for an ASN advance notice order | → `ASO` | | `CON.CNL.ASN` | Pre-notified container deleted or rejected | → `ASK` | | `CON.COC` | Client container closed at Preparation Zone (MP) | - | | `CON.COS.001` | Container extracted to Outbound Conveyor (PS) | - | | `CON.CREATE` | Container created manually, from view, for picking, or during count | - | | `CON.DELETE` | Container deleted (from L&F or after count) | - | | `CON.LOAD` | Container loaded during truck loading | - | | `CON.LOCATE` | Container moved to storage location via putaway task | - | | `CON.MOVE` | Container moved without putaway task (or to destination with task) | - | | `CON.PIE` | Container entered via PIE station | → `ASO` | | `CON.PRINT` | Packing list printed with client container label | - | | `CON.RECEP` | Container received (supplier, return, or blind reception) | - | | `CON.SEND.L&F` | Container sent to Lost & Found | - | | `CON.SHIPPED` | Container shipped (shipping order closed) | - | | `CON.SHIPPING` | Shipping task confirmed (container assigned to destination) | - | | `CON.VASDONE` | VAS (Value Added Service) executed on container | - | For detailed transaction data fields (Site, User, ContainerCode, LocationCode, etc.), see [concepts/transactions.md](../concepts/transactions.md). --- ## ERP Integration LPN-related ERP messages (all documented in [concepts/erp-interface.md](../concepts/erp-interface.md)): | Message | Direction | Trigger | |---|---|---| | **ASN** | ERP → WMS | Pre-notification of LPNs arriving (creates ASN LPNs in Pending status) | | **ROR** | ERP → WMS | Receipt order with exclusive stock reserve request | | **REF** | WMS → ERP | Stock receipt confirmation (sent at end of supplier or blind container receipt) | | **ASO** | WMS → ERP | Confirmation that an ASN or PIE container has been received | | **ASK** | WMS → ERP | Deletion or rejection of a pre-notified ASN container | --- ## Interface Paths ### Web (PC) | Path | Description | |---|---| | `Warehouse > LPN` | Main LPN management view - all operations | | `Workstations > Picking` | LPN view from picking workstation perspective | | `Masters > Lock types` → "LPN lock types" | Manage lock type definitions | | `Masters > Division LPN types` | Manage division type definitions | | `Warehouse > ASN LPN` | View pre-notified (pending) LPNs | ### RFT (Radio Frequency Terminal) | Path | Description | |---|---| | `Receipts > Supplier > Loose stock/multi-reference` | Supplier multi-reference container receipt | | `Receipts > Blind > Loose stock/multi-reference` | Blind container receipt | | `Receipts > Notices` | View ASN pre-notified LPNs | | `Utilities > My LPNs` | View LPNs loaded on own equipment | | `Utilities > Manual movement` | Manual LPN location change | | `Utilities > Labels printing` | Print LPN labels | | `Utilities > Stack/Unstack` | Stack and unstack operations | | `Utilities > View rejects` | View reject reasons at current station | | `Control > Manual equipments` | Match LPN from equipment management | --- ## Common Errors **LPN not found at expected location:** - Symptom: Physical LPN present but system shows different location. - Cause: Manual move not recorded, or system error during task. - Solution: Use "Location change" (PC) to correct the record. Treat as manual movement (no task required). If location unknown, send to Lost & Found. **Cannot unstack base LPN:** - Symptom: Unstack operation rejected. - Cause: Location has FIFO configuration, or different LPN types are stacked above the base. - Solution: Move the set to a stage first (enable `UNSTACK_ON_STAGE`), or use "Undo all" to break the entire hierarchy at once. **Lock prevents task execution:** - Symptom: Task canceled unexpectedly after LPN lock applied. - Cause: Lock type disallows picking, replenishment, or moving. Cascade effect automatically cancels in-flight tasks. - Solution: Check lock type configuration. Unlock the LPN if the reason is resolved, or process via alternative stock. **Cannot modify LPN type or division:** - Symptom: Type/division change rejected. - Cause: LPN is not empty - contains stock. - Solution: Move or pick out all stock first, then change the type. **Putaway location not found for stacked LPN:** - Symptom: Location search returns no result for stacked set. - Cause: Effective width (width + 2 × collapse) exceeds available location dimensions, or no valid strategy applies to the stack configuration. - Solution: Check the "Putaway search location trace" report for the LPN (requires PC). Review excluded aisles and strategy details. **ASN LPN cannot be deleted:** - Symptom: Delete operation rejected for an ASN LPN. - Cause: The ASN LPN is linked to a receipt order (ROR). - Solution: Cancel or disassociate the receipt order first, or use the rejection flow (`CON.CNL.ASN` → `ASK` message to ERP). --- ## Related - [concepts/location.md](../concepts/location.md) - Locations where LPNs are stored; capacity, FIFO, dynamic, APS types - [concepts/stock.md](../concepts/stock.md) - Stock lines that reside inside LPNs; adjustments, reserves - [concepts/reception.md](../concepts/reception.md) - All reception modes; how LPNs are created and registered - [concepts/putaway.md](../concepts/putaway.md) - Strategies that assign LPNs to storage locations - [concepts/task.md](../concepts/task.md) - Tasks drive LPN movements (putaway, picking, replenishment, shipping) - [concepts/shipping.md](../concepts/shipping.md) - Client LPN lifecycle through picking, consolidation, loading, shipping - [concepts/order-inbound.md](../concepts/order-inbound.md) - Inbound orders (ASN, receipt orders) that pre-notify LPNs - [concepts/order-outbound.md](../concepts/order-outbound.md) - Shipping orders that client LPNs are assigned to - [concepts/labels.md](../concepts/labels.md) - LPN label formats, GS1-128, printing configuration - [concepts/manual-movements.md](../concepts/manual-movements.md) - Manual location changes for LPNs - [concepts/consolidation.md](../concepts/consolidation.md) - Container consolidation: stock from multiple partial LPNs merged into one destination container - [concepts/quality-control.md](../concepts/quality-control.md) - Quality locks applied to stock inside LPNs; lock-by-container scope - [concepts/transactions.md](../concepts/transactions.md) - Full CON.* and STK.* transaction reference - [concepts/erp-interface.md](../concepts/erp-interface.md) - ASN, ROR, REF, ASO, ASK message definitions - [modules/agv.md](../modules/agv.md) - AGV equipment that transports LPNs in automated warehouses - [modules/pallet-shuttle.md](../modules/pallet-shuttle.md) - Pallet shuttle system managing compact LPN storage - [modules/vas.md](../modules/vas.md) - Value Added Services applied to LPNs (`CON.VASDONE`) - [modules/aps3d.md](../modules/aps3d.md) - 3D APS storage: depth coordinates, compacting, LPN exchange