ℹ️ Due to a security enhancement in this release, all active user sessions and API tokens will expire. Please ensure that you renew your API tokens and log back into your accounts after the release to maintain uninterrupted service and avoid any operational downtime.
NEW FEATURE HIGHLIGHTS
Converting Higher Pack Types into UOMs During Replenishment and Transfers
Warehouses can now configure replenishment job types to automatically convert higher pack types into their base unit-of-measure equivalents at the point of pick completion, eliminating the need for manual decanting steps after replenishment tasks are executed. When the Allow Higher Pack Type Conversion to UOM toggle is enabled on a Replenishment Job Type, pickers are not prompted during the task — conversion happens silently at completion, and the Initial Task Qty column on the Replenishment Task Details screen records the original requested quantity for audit and reporting purposes.
The conversion capability has been extended to Transfer workflows as well. On mobile, the Direct Put and Pick & Put screens now display pack type conversion information boxes and chip indicators when conversion applies, and both Bulk Transfer and One-by-One Transfer flows support converting a higher pack type to UOM during the transfer action. On web, the Transfer Product sidebar now includes the same conversion toggle and information for single-line transfers. The allowHigherPackTypeConversion field is also available on the Open API, enabling integration partners to manage pack type conversion settings per replenishment job type programmatically. (50128)
For more information, please check following articles:
Instant Count
A new Instant Count module is now available in the mobile count workflow, providing warehouse operators with a lightweight, ad-hoc counting method that does not require a pre-created Count Plan. Instant Count is enabled per Count Job Type — when activated on a job type, operators can access it from the Count Type Selection screen and initiate a new session or resume an ongoing one, then scan one or more locations sequentially within the same session. Each location scan routes the operator through the same count options available in Cycle Count — standard product counting, one-by-one counting, and LP-based counting — with full support for completing a location count and updating inventory directly from the session without supervisor intervention.
The Instant Count Location Screen supports resuming in-progress sessions, adding additional locations to an active session, and finishing the session cleanly from a single screen. The Reset Location Count action correctly reverts all count task lines and the count plan line status back to their pre-count state, ensuring operators can restart a location without leaving stale data. Count Plan auto-status transitions are suppressed during active Instant Count sessions to prevent premature plan completion while the session is live. (49848)
For more information, please check Instant Count Articles.
Auto Populate Inventory Attributes During Count
The mobile Cycle Count and Instant Count flows now automatically pre-fill tracking attributes — such as lot number, expiry date, and production date — on the product card when the inventory record contains a single unique set of attribute values for the scanned SKU and location (or SKU and LP). When auto-population is active, operators see the pre-filled values and can verify or override them inline before confirming the count, reducing manual data entry and the risk of attribute entry errors during cycle counts. In the One-by-One Count flow, operators can additionally lock confirmed attributes for repeated scans of the same SKU, eliminating manual re-entry on every unit until a different product is scanned. The Attribute Auto-Fill setting is configured per Count Job Type and applies consistently across Location Count, SKU Count, and Instant Count flows. (47786)
For more information, please check Auto-Fill Tracking Attributes During Count article.
Replenishment LPN Dissolve
A new Auto Remove LP After Replenishment location setting allows inventory replenished into designated locations to be automatically stored without an LP association upon task completion. Operators continue to perform replenishment exactly as they do today, including scanning the LP during the put process. When the replenishment task is completed, Logiwa IO checks the setting on the actual confirmed destination location. If the setting is enabled, the replenished inventory is created in the destination location without an LP association. The feature eliminates manual LP removal workflows, supports all replenishment types and provides visibility through a new LP Auto Removed indicator available in replenishment task details and exports. (49851)
For more information, please check Auto Remove LP After Replenishment article.
Suggested Mobile Cart Type on Pick and Sort Job List
Pickers using AI Job Optimization can now see the AI-recommended mobile cart type directly on the Pick and Sort Job Pool and My Jobs lists, as well as on the Job Summary screen. The suggested cart type label appears on each AI-optimized job row, so operators can select the correct cart on the way to the pick path without leaving the screen or asking a supervisor. Non-AI jobs and accounts without AI Job Optimization are unaffected.
SKU-Based Inventory Allocation on Product
Users can now define product-level inventory sync rules enabling precise control over how much inventory is synced to each sales channel. A new Inventory Channel Allocation section in the Edit Product screen (Advanced tab) allows users to:
Configure allocation rules per product and channel setup
Choose between Static Quantity (fixed amount) or dynamic scenarios with Reserve Quantity, Allocation Percentage, Minimum, and Maximum thresholds
Preview calculated synced quantities with the Synced Qty Preview chip
Manage allocations via the web UI, Excel bulk import, or Open API (48896)
WHAT'S NEW & IMPROVED
Added validation to block inactive products from being added to Shipment Orders via Excel import or the Open API, preventing orders from being created with products that are no longer active in the warehouse. (51002)
Added an Order Counter to the mobile Loading screen for shipment plans that contain no orders, giving operators a real-time count of orders added during the loading session without needing to navigate away. (51121)
Introduced a soft warning at the packing station when the number of boxes entered differs from the number of attached carrier labels on an order, alerting packers to a mismatch before completing packing and reducing mis-label errors. (47007)
Added an option to automatically align LP numbers with carrier tracking numbers when packing multi-box orders that use attached labels, ensuring LP records and tracking numbers stay in sync across the packing and shipping workflow. (46997)
New Zealand Dollar (NZD) is now supported as a currency option across Logiwa IO. (51116)
The Billing Fee Conditions "Order Tag" dropdown now loads smoothly for accounts with a large number of order tags. Previously, accounts with 1,000+ tags experienced freezes when opening this dropdown. (51424)
A "Created by user" column has been added to the List Billing Report screen, showing which user triggered each billing run. This field is also included in Excel exports, making it easier to audit billing activity. (51122)
The Transaction History Report Excel export is now more reliable for large date ranges. An issue causing intermittent export failures on large result sets has been resolved, eliminating the need to retry the export multiple times. (51150)
Added UPS MI and Amazon Shipping to EasyPost — Extended the EasyPost carrier-service mapping to include UPS Mail Innovations (13 service levels) and Amazon Shipping Ground, so warehouses with these accounts on EasyPost can now generate rates and labels without manual configuration. (51292)
Shopify USPS Carrier Code Resolution — Fixed carrier code resolution in the Shopify Send Shipment Info integration to send the correct USPS code instead of "Other" when labels are generated through multi-carrier integrators like EasyPost or Stamps. The system now resolves carrier codes from the actual label carrier field rather than integrator connection names, ensuring accurate carrier visibility in Shopify for all label sources. (51343)
Redesigned Other Rates Pop-up — The Other Rates pop-up on both the Create Label and Packing Station screens has been redesigned to include carrier logos, setup names, a searchable grid, and the current rate display. Operators can now easily identify which carrier account each rate belongs to when multiple setups exist for the same carrier, reducing selection errors. (49441)
Packing Station Label Re-print Service — Updated the Packing Station "Reprint Label" button to call the bulk re-print service instead of using browser-cached label data, ensuring operators always receive fresh, up-to-date physical labels. The service fetches current label data and routes shipping labels to the label printer and invoices to the laser printer automatically. (51156)
PERFORMANCE IMPROVEMENTS
Optimised the shipment processing flow for large serialised orders to prevent timeout failures. Orders containing many units of the same serialised SKU — previously prone to timing out during the ship action — now process reliably without performance degradation. (39056)
Resolved a performance issue in the AI Job Optimisation engine where reallocation jobs were taking significantly longer than expected; the underlying query bottleneck has been identified and addressed to restore consistent optimisation response times. (51208)
Clicking "View Billing Charges" on a Shipment Order or Purchase Order no longer causes the page to hang. The calculation now runs in the background and generates an Excel file you can download from the Transaction screen. (51368)
WHAT'S FIXED
Fixed an issue where product pack type updates or deletions incorrectly enforced warehouse access control during validation, preventing multi-warehouse API users from updating pack types even when the pack type had no inventory in any warehouse within their access scope. (51393)
Fixed an issue where the Aisle field description in the Locations Import Excel template incorrectly stated that the column accepts numeric values only; the field correctly accepts alphanumeric values and the template documentation has been updated to reflect this. (51325)
Fixed an issue where performing a product search on the Edit Purchase Order (Step 2: Products) screen caused the application to redirect users to the Dashboard instead of displaying filtered search results in the dropdown. (51319)
Fixed an issue where the Purchase Order Product Label print action generated incorrect quantities, causing labels to be printed with the wrong unit count. (51162)
Fixed a sync issue on the mobile Receiving success popup when a product was reported as damaged, where the popup state did not update correctly after the damage report was submitted. (51094)
Fixed an issue where the Inventory Excel import did not display a validation error message when imported rows contained invalid data, leaving operators without feedback on why the import failed. (51065)
Fixed an issue where product names containing special characters caused the Product Excel import to fail, preventing affected products from being imported in bulk. (50994)
Fixed a UTC offset issue on the Receiving History date filter in the web interface, where dates were shifted due to timezone conversion, resulting in the wrong date range being applied to the report. (50871)
Fixed an issue where the Note field was missing from the Transaction History report, preventing operators from viewing notes associated with inventory transactions. (50211)
Fixed an issue where cancelling a serial number mismatch during a return at the Return Station did not correctly reset the serial number scan state, leaving the return session in an inconsistent state. (49460)
Fixed an issue in the Product Bulk Update Excel import where certain update operations failed silently, preventing bulk product attribute updates from being applied correctly. (40047)
Fixed an issue where location attributes could be updated via Excel import or the Location Update API without restriction when the location was linked to a mobile cart; the system now blocks changes to restricted attributes on cart-linked locations and returns a clear validation error identifying which attributes could not be updated. (35053)
Fixed an issue where an inventory adjustment was incorrectly rejected when the entered quantity matched the current free quantity at the same location; the system now correctly handles same-quantity adjustment attempts per the intended validation logic. (27276)
Fixed an internal server error that occurred when importing locations containing special characters such as apostrophes in location field values, causing the entire import batch to fail. (27240)
Fixed an issue where saving a shipment order line after removing properties that made two same-SKU lines identical did not delete the duplicate line, leaving an orphaned line with its original quantity and inflating the total ordered quantity. (51366)
Fixed a shortage reason misclassification in the Shortage Report where allocation failures caused by warehouse rules, client filters, or location constraints were incorrectly labelled as "Insufficient Inventory"; each failure scenario now maps to its correct shortage reason. (51272)
Fixed an issue where the Duplicate Tracking Number LP conflict during carrier label acquisition was not resolving correctly, causing LP location to remain at its previous assignment instead of updating to the packing station after a successful tracking number match. (51367)
Fixed an issue where ShipStation orders containing the same SKU on multiple lines with different unit prices were excluded from identical SKU job batching; the system now correctly evaluates these orders based on product and pack type, restoring picking efficiency for affected accounts. (51070)
Fixed an issue where unit price, tax, and discount fields returned 0 in the GET /v3.1/ShipmentOrder/{id} detail endpoint even though the same pricing data was correctly returned in the list endpoint and displayed in the Logiwa UI. (51066)
Resolved a status inconsistency where a shipment order's status in MongoDB and SQL could diverge during an allocation timeout, leaving the order stuck in an intermediate status that prevented downstream picking or cancellation. (50944)
Resolved a status inconsistency where a shipment order's MongoDB and SQL status records could fall out of sync during a packing or shipment operation timeout, causing the order to display an incorrect status in the UI and API responses. (50943)
Fixed a scheduler error that caused automated jobs to be skipped when a customer's configured local time fell in a negative UTC offset and the resulting UTC execution time crossed midnight into the next calendar day; affected jobs now execute on the correct date. (50853)
Fixed an issue where navigating to the Shipment Order screen from a hyperlinked SKU quantity in the Total Inventory Report or ATP Report failed to apply the SKU filter when the SKU code contained a hash (#) character. (44473)
Fixed an issue where a temporary cache connection failure during sales order creation caused the order to be saved with an empty ClientId instead of failing with a clear error; the system now rejects order creation when the ClientId cannot be retrieved. (41212)
Updated the display name for AI-optimised job types in the UI to align with current product terminology, removing outdated labels from the job description across relevant screens. (51268)
Replaced the "Contains" text comparator with a "Starts With" comparator across all grid search fields, improving search performance and reducing unintended partial-match results on high-volume grids. (51269)
Enhanced the logging mechanism for missing inventory events during picking, capturing additional context to support faster diagnosis and resolution of pick-short scenarios reported by warehouse operators. (50854)
Users with View-only permission on 3PL Billing can now open and read billing contract details without receiving a permission error. (51249)
Billing calculations now correctly count all packed units when the same product appears across multiple shipment order lines. Previously, some units were silently undercounted, leading to billing undercharges. (51236)
The Main Dashboard now shows the correct "Packing Started" order count. (47573)
Creating or updating a user via the API with SSO enabled is now blocked on accounts that do not have the SSO Add-on active. This prevents accidental user lockouts caused by incorrect SSO configuration. (45224)
The Main Dashboard "Orders to be Shipped Today" and "Orders to be Shipped Tomorrow" counts are now calculated based on the user's local timezone. Previously, the counts could shift prematurely at UTC midnight, showing incorrect numbers for users in non-UTC timezones. (41837)
The Delete Purchase Order button now correctly respects user role permissions, ensuring only authorized users can delete purchase orders. (50170)
End-of-Day Screen Datetime Format — Corrected datetime format handling on the EOD (End of Day) report screen to display timestamps correctly across different carrier configurations. (51465)
Updated Shopify inventory sync warning count calculation on the pop-up that appears while saving Shopify Store Setups. Now the pop-up shows the correct values for "Number of products with 0 inventory" and "Number of products to be synced" fields (51230)
OPEN API UPDATES
Extended the GET /v3.1/WarehouseJob/warehousejobtype/list endpoint to return the allowHigherPackTypeConversion field, allowing API consumers to retrieve the pack type conversion setting per replenishment job type. (51225)
Added the breakHigherPackTypeToUom boolean field to the POST /v3.1/Inventory/transfer/product Open API endpoint, allowing integration partners to perform pack type conversion atomically as part of a transfer operation. (51296)
Added the initialTaskQty field to the GET /v3.1/Report/WarehouseTask/replenishment endpoint response, exposing the original generated task quantity for audit and reporting purposes, with the Swagger specification updated to document the new field. (51275)
Added the IsAutoRemoveLpAfterReplenishment flag to the response of the Open API replenishment task report endpoint (GET /v3.1/Report/WarehouseTask/replenishment/i/{index}/s/{size}), allowing API consumers to identify LP removal events per task. (51252)
Fixed an issue where unit price, tax, and discount fields returned 0 in the GET /v3.1/ShipmentOrder/{id} detail endpoint even though the same pricing data was correctly returned in the list endpoint and displayed in the Logiwa UI. (51066)
Updated
customFieldTextBoxcharacter limit validation messages with field-specific errors across all affected endpoints (150, 300, and 2500 character limits depending on entity type) (51219)Added
channelOrderNumberas a filterable query parameter to the List Shipment Orders endpoint (GET /v3.1/ShipmentOrder/list/i/{index}/s/{size}), supportingeq.operator for direct lookup by sales channel order reference. (51328)Updated
GET /v3.1/ShipmentOrder/{identifier}and list endpoints to displaystoreUpdateInformationobject (51231)Added
StoreUpdateNotesId(integer array) parameter to update the Store Update Notes array on the Shipment Orders to thePUT /v3.1/ShipmentOrder/update,PUT /v3.1/ShipmentOrder/update/bulk,PATCH /v3.1/ShipmentOrder/patch/{identifier}, andPATCH /v3.1/ShipmentOrder/patch/bulkendpoints. (51231)
