Overview
Task Swap gives warehouse pickers the flexibility to source inventory from a different location, LPN (license plate number), lot number, expiry date, or production date than what was originally assigned on their picking task. When the allocated inventory is inaccessible, depleted, or operationally inconvenient, pickers can scan an alternate source without halting the workflow.
Logiwa IO validates every swap in real time — checking swap permissions, configurable thresholds, and allocation algorithm eligibility — before confirming the pick. When all checks pass, the system performs a direct two-task inventory exchange with no order cancellation or reallocation.
Task Swap has two dimensions that work together:
Attribute swaps — picking inventory with a different lot number, expiry date, or production date than the task specifies, regardless of whether the location changes
Location/LPN swaps — picking from a different source location or LPN than the task specifies, which may also involve attribute differences
When to Use It
Use Task Swap when:
A picker arrives at the assigned source location and finds the inventory is unavailable, short, or inaccessible
The same SKU exists at multiple locations and you want pickers to pick from the most convenient available source
Your warehouse runs mixed overstock and active-pick layouts where the same SKU is spread across multiple locations
You operate in attribute-sensitive industries (pharma, food & beverage, cosmetics) and need controlled lot, expiry date, or production date flexibility during picking
You are migrating from the legacy WMS and require feature parity for flexible picking behavior
Prerequisites
Before Task Swap can be used, the following must be configured:
The relevant swap flags must be enabled on the Shipment Order Type (Settings → Shipment Order Type → Picking section). These control which attribute changes are permitted during picking.
Allow Different Location/LPN On Picking must be enabled on the Client settings page (Settings → Client → Settings tab → Fulfillment Settings) if you want pickers to be able to pick from a different source location or LPN. This is not required for attribute-only swaps from the same location.
Swap thresholds (optional but recommended for regulated industries) can be configured on the Shipment Order Type to limit how far a swapped attribute can deviate from the original task value.
⚠️ Mobile app and backend must be on the same release. A partial deployment (backend only or mobile only) is not supported.
Configuration
Step 1 — Configure Swap Flags on Shipment Order Type
Navigate to Settings → Data Setup → Shipment Order Type.
Open the relevant Shipment Order Type and expand the Picking section.
Enable the swap flags relevant to your workflow:
Allow LP Swap On Picking — permits scanning a different LPN during Full LP Picking
Allow Lot Number Swap On Picking — permits picking inventory with a different lot number
Allow Expiry Date Swap On Picking — permits picking inventory with a different expiry date
Allow Production Date Swap On Picking — permits picking inventory with a different production date
Click Save.
Step 2 — Enable Allow Different Location/LPN On Picking (Client Level)
Required only if pickers need to pick from a different source location or LPN.
Navigate to Settings → Data Setup → Client.
Open the relevant client record and go to the Settings tab.
Under Fulfillment Settings, toggle Allow Different Location/LPN On Picking to Yes.
Click Save.
💡 When enabled, this setting applies to all warehouses under the client.
Step 3 — Configure Swap Thresholds (Optional)
Thresholds limit how far a swapped attribute can deviate from the original task value.
Expiry Date Swap Threshold (± Days)
Appears when Allow Expiry Date Swap On Picking is enabled.
Enter a number of days. The scanned item's expiry date must fall within [task expiry − x days, task expiry + x days].
Example: task expiry = 06/25/2026, threshold = 10 → acceptable range: 06/15/2026 to 07/05/2026.
Production Date Swap Threshold (± Days)
Appears when Allow Production Date Swap On Picking is enabled.
Follows the same ± days logic as Expiry Date Swap Threshold.
Lot Number Swap Threshold
Appears when Allow Lot Number Swap On Picking is enabled.
Choose one of three options (only one can be active at a time):
Default Lot Regex — a single regex pattern that applies to all products under this order type
Associate Regex With Product Group — map up to 10 Product Groups, each with its own regex pattern
Associate Regex With Product Type — map up to 10 Product Types, each with its own regex pattern
If no threshold is configured, any lot number is accepted when the swap flag is on.
Control Dimensions
Task Swap behavior is determined by the combination of the following parameters. Understanding how they interact is key to configuring the feature correctly.
Parameter | Level | What It Controls |
Allow Different Location/LPN On Picking | Client | Whether pickers can pick from a different source location or LPN. When off, all picking must come from the originally assigned location/LPN — attribute swaps from the same location are still possible if the relevant flags are on. |
Allow LP Swap On Picking | Shipment Order Type | Whether a picker can scan a different LPN during Full LP Picking. |
Allow Lot Number Swap On Picking | Shipment Order Type | Whether a picker can pick inventory with a different lot number. |
Allow Expiry Date Swap On Picking | Shipment Order Type | Whether a picker can pick inventory with a different expiry date. |
Allow Production Date Swap On Picking | Shipment Order Type | Whether a picker can pick inventory with a different production date. |
Expiry Date Swap Threshold (± Days) | Shipment Order Type | How far the scanned expiry date can deviate from the task's original expiry date. Optional. |
Production Date Swap Threshold (± Days) | Shipment Order Type | How far the scanned production date can deviate from the task's original production date. Optional. |
Lot Number Swap Threshold | Shipment Order Type | Regex-based pattern the scanned lot number must match. Optional. Choose one of: Direct Regex (global), Product Group mapping, or Product Type mapping (max 10 entries each). |
Key interaction — Allow LP Swap On Picking + Allow Different Location/LPN On Picking in Full LP Picking:
Allow LP Swap | Allow Different Location/LPN | Result |
Off | Off | Picker must scan the exact assigned LPN |
On | Off | Picker can scan a different LPN from the same source location only |
Off | On | Picker must scan the exact assigned LPN (LP Swap takes precedence) |
On | On | Picker can scan a different LPN from any location |
How the Validation Chain Works
When a picker scans a different location, LPN, or inventory attribute, the system runs the following checks in order. Every step must pass — if any step fails, the swap is blocked and the picker receives a specific error message.
Step 1 — Swap Flag Check
Is the relevant swap flag enabled on the Shipment Order Type? If the flag is off and the scanned attribute differs from the task, the swap is immediately rejected.
Step 2 — Threshold Check
If a threshold is configured for that attribute, does the scanned value fall within the acceptable range?
Expiry / Production Date: scanned date must be within task date ± x days (inclusive)
Lot Number: scanned lot must match the configured regex pattern
If no threshold is configured, this step is skipped.
Step 3 — Allocation Eligibility Check
The system checks whether the new inventory is eligible for the active order based on the allocation algorithm conditions — including inventory-based conditions (required lot, expiry date, UOM pack type, etc.) and, when the location changes, location-based conditions (Location Zone, Location Group, Area Type, Aisle, etc.). It also checks the displaced order — the order that was originally allocated from the inventory the picker is now swapping to. Both orders must pass before the swap is executed.
💡 What is a displaced order? When a picker swaps to inventory that was previously allocated to another order, that other order becomes "displaced." Its task is automatically moved to the active order's originally allocated inventory — a direct two-task exchange with no cancellation or reallocation. If the displaced order cannot be moved (because its allocation algorithm rejects the new inventory), the entire swap is blocked.
Examples
Example 1 — Attribute swap from the same location (lot differs, no location change)
Setup: Order100's task is allocated from B-2-3, lot LOT-1234. Allow Lot Number Swap is on, with a regex threshold of LOT-\d{4}. The picker stays at B-2-3 but finds a different pallet with lot LOT-5678.
Location | Lot | |
Task (original) | B-2-3 | LOT-1234 |
Picker scans | B-2-3 | LOT-5678 |
What happens: Flag ✅ (Lot Swap on). Threshold ✅ (LOT-5678 matches LOT-\d{4}). Allocation eligibility ✅ (no blocking conditions). The pick is confirmed from B-2-3 / LOT-5678. No location change — Allow Different Location/LPN was not needed here.
Example 2 — Threshold blocks the swap
Setup: Order100's task is allocated from B-2-3, lot lot123, expiry 06/25/2026. Expiry Date Swap is enabled with a ±10 day threshold. The picker walks to B-2-2 and scans an item with expiry 07/15/2026.
Location | Lot | Expiry | |
Task (original) | B-2-3 | lot123 | 06/25/2026 |
Picker scans | B-2-2 | lot123 | 07/15/2026 |
What happens: The acceptable range is 06/15/2026 → 07/05/2026. The scanned expiry 07/15/2026 is 20 days after the task date — outside the window. The swap is blocked: "The scanned expiry date [07/15/2026] is outside the acceptable swap range. Acceptable range: [06/15/2026] to [07/05/2026]."
Example 3 — Threshold passes, but allocation algorithm blocks
Setup: Same configuration. This time the picker scans expiry 07/02/2026 — within the ±10 day window. However, the allocation algorithm for this order has a hard condition: Inventory Expiry Date = 06/25/2026.
Location | Lot | Expiry | |
Task (original) | B-2-3 | lot123 | 06/25/2026 |
Picker scans | B-2-2 | lot123 | 07/02/2026 |
What happens: Threshold ✅ (within range). Allocation eligibility check ❌ — the order's allocation algorithm requires exactly 06/25/2026 and 07/02/2026 does not satisfy it. The swap is blocked: "The scanned inventory does not meet the allocation requirements for this order. Inventory Expiry Date does not match."
⚠️ Key point: Threshold and allocation algorithm are two independent checks. Passing the threshold does not guarantee the allocation algorithm will accept the inventory.
Example 4 — Full success with displaced order
Setup: Order100's task is allocated from B-2-3 / lot123. Order101's task is allocated from B-2-2 / lot456. The picker is working on Order100, scans B-2-2 instead. Allow Different Location/LPN = On, Lot Swap = On, no threshold configured, no blocking allocation conditions on either order.
Before swap:
Order | Source Location | Lot | Status |
Order100 (active) | B-2-3 | lot123 | Picking in progress |
Order101 (displaced) | B-2-2 | lot456 | Allocated |
What happens: All checks pass. The system performs a direct two-task exchange.
After swap:
Order | Source Location | Lot | Status |
Order100 | B-2-2 | lot456 | Picked |
Order101 | B-2-3 | lot123 | Allocated (moved to original inventory) |
Order100 picks from B-2-2 / lot456. Order101's task is automatically moved to B-2-3 / lot123. No order is cancelled. No allocation is re-run.
How It Works During Picking
Item Picking (Pick to Location / Pick and Sort / Pick Specific Order)
The picker scans their source location or LPN on the mobile screen.
If the scanned location/LPN differs from the task:
Logiwa IO checks Allow Different Location/LPN On Picking. If disabled → error. The picker must return to the assigned location.
If enabled → the picker is prompted to enter any tracked attributes (lot number, expiry date, production date) for the new location.
For each attribute that differs from the task, the system runs: swap flag check → threshold check → allocation eligibility check.
If all checks pass → the pick is confirmed. If any check fails → the picker receives a specific error message.
Full LP Picking
The picker scans a different LPN than what the task shows.
The system checks Allow LP Swap On Picking and Allow Different Location/LPN On Picking:
LP Swap off → blocked regardless of other settings
LP Swap on, Different Location off → picker can swap to a different LPN only within the same source location
LP Swap on, Different Location on → picker can swap to a different LPN from any location
The system validates the new LPN's location against allocation algorithm location criteria (Location Zone, Location Group, Area Type, etc.).
The system confirms the scanned LPN contains the correct SKU and quantity.
If the LPN carries different lot, expiry, or production date attributes, the attribute swap chain runs (flag check → threshold check → allocation eligibility check).
If all checks pass → the pick is confirmed and the displaced order's task is automatically moved to the original inventory.
Common Questions & Edge Cases
Can I swap lot numbers without changing location?
Yes. Attribute swaps (lot, expiry date, production date) can happen from the same location. You only need Allow Different Location/LPN On Picking if you want to pick from a different source location or LPN entirely.
What happens to the order that was previously allocated from the inventory I swapped to?
The displaced order's task is automatically moved to the inventory that the active order was originally allocated from — a direct two-task exchange. No order is cancelled and no allocation is re-run. If the displaced order's original inventory is no longer available, it may enter a partial or shortage state; this is a known trade-off of the no-reallocation design.
Can I swap to any location in the warehouse?
No. The scanned location must satisfy the allocation algorithm's location-based criteria configured for the order — such as Location Zone, Location Group, Area Type, Aisle, Level, or Column. If the new location does not meet these criteria, the swap is rejected with a specific error message.
What if the order line requires a specific lot, expiry date, or location?
Order line hard requirements always take precedence. If an order line specifies a required lot number, expiry date, production date, location, or LPN, that constraint overrides all swap flags and thresholds. The swap will be blocked even if the relevant swap flags are enabled.
Does Task Swap apply to Pick and Sort?
Yes. Task Swap applies to Pick to Location, Pick and Sort, and Pick Specific Order flows for item picking, and to Full LP Picking. It does not apply to putaway, replenishment, transfer, count, or loading tasks.
Can I configure different swap rules for different order types?
Yes. Swap flags and thresholds are configured at the Shipment Order Type level, so you can apply stricter or more permissive rules per order type. The Allow Different Location/LPN On Picking parameter is client-level and applies across all order types for that client.
What if the threshold check passes but the allocation algorithm still rejects the swap?
The threshold check and the allocation algorithm eligibility check are two independent validations. Passing the threshold (e.g., the scanned expiry date is within ±10 days) does not guarantee the allocation algorithm will accept the inventory — the algorithm may have its own conditions (such as a specific required expiry date) that override the threshold tolerance.
Related Articles
Shipment Order Type Creation
Attribute Scanning in Picking
Pick to Location (Mobile)
Pick and Sort (Mobile)
