Release note 3.31 - English

Ændret den Thu, 19 Mar kl. 2:57 PM

Expected release date: March 23rd 2026

 


INDHOLDSFORTEGNELSE

                                                     


A new addition has been made to the creation of customs tariffs in PeakWMS. It is now possible to link sub‑customs tariffs to a master tariff directly in the user interface. Previously, this was only possible using tariff import.


By creating and linking a sub‑tariff to a main tariff, you can differentiate the use of customs tariffs per country.


This means you can set up a master tariff without a country code to be used as the default, and link sub‑tariffs with country codes to the main tariff so the sub‑tariff is used for orders to that specific country. The country code on the customs tariff determines which orders should use the tariff.



Webhook Messages: Access to Webhook Messages

You now have access to view incoming webhook messages created by your integration to PeakWMS.

This access allows you to check whether the expected webhook messages are being sent.

You can find webhook messages under Admin > Integration Messages > Incoming Webhook Messages.



Webhook Messages: View status and errors for incoming webhook messages

Incoming webhook messages are now stored with a clear status (CREATED, PROCESSED, or ERROR) and any associated error message. The status is updated when the message has been processed. This allows you to see whether a webhook succeeded or failed, making it easier to identify and correct integration issues.


The Status field must be added to the dialog through table settings.



Stock: View fixed pick locations with no stock

If you use fixed pick locations for your products, you can now see these locations in Tools > Stock, even if they contain no stock. 

When searching for the location via Stock, you will see which product is linked as the fixed pick location and the min/max settings for that location for the given product.



If a fixed pick location exists and stock is registered at the location, you will see both the min/max setup and the actual stock registered on that location.



Pick Orders: Display number of lines in the admin-dialog

Under Admin > Outbound > Pick Orders, you can now view the number of lines on a pick order. The column must be added via table settings.



Dark Mode (BETA)

A BETA version of dark mode has been introduced in PeakWMS. You can access it by clicking the sun icon in the top bar. The following options are available:

  • Light (current setup)
  • Dark (BETA)
  • Auto (follows your browser)

Please note that the feature is in BETA. This means that imperfections may occur until it is fully released. We are continuously testing and updating the feature. If you find an issue, please report it to our support team.



Orders: Expand forwarder product setup when creating forwarder product directly on an order

When using the "Assign forwarder product" button on an order, the forwarder product setup is now automatically expanded when creating a forwarder product. This has been introduced because it was previously unclear that additional fields had to be completed for certain forwarder products, such as those involving parcel shop selection.



Stock actions: Show outbound order host ID

Under stock actions, you can now see the order host ID associated with sales events. This applies to both web orders and POS orders.



Orders: Archived Pick orders get their own dialog

Under Admin > Outbound, you will now find dialogs for Archived Pick Orders and Archived Pick Order Lines. Here you can view pick orders and lines older than 6 months.

Pick orders and lines are automatically archived after 6 months to avoid performance issues due to unnecessary data.



Shopify/Homerunner: PCCC for korean orders

PeakWMS now supports PCCC (Personal Customs Clearance Code) for orders to South Korea shipped via Homerunner. The PCCC code is automatically retrieved from Shopify and sent to Homerunner when a shipping label is requested.


Sending PCCC requires that the field is configured on orders in Shopify so the data can be transferred to PeakWMS.



Return portal: Handling swedish postal codes

The return portal now supports Swedish postal codes with or without a space in the middle. You can enter a postal code in the following formats to find an order:

  • 987 65
  • 98765

PeakWMS accepts both formats in the return portal.



Warehouse Transfer: Action to mark all lines as required

A new action is available on warehouse transfers, allowing you to mark all lines as Required. The warehouse transfer must be in draft status. If it has already been released, the lines cannot be changed.

You can find the action in the three‑dot menu on the warehouse transfer.



Warehouse Transfer: Action to mark all lines as NOT required

There is also an action to mark all lines as Not Required. As above, the transfer must be in draft status.



Warehouse Transfer/Replenishment: Prioritize stock from warehouse area over store area

For warehouse transfers and replenishment in warehouses that have both store and warehouse areas, the logic now prioritizes picking from the warehouse area instead of using FIFO. This prevents depletion of the store area if stock is also available in the warehouse area.


If stock exists only in the store area, transfers and replenishment can still pick from there.


Picking items that exist in both warehouse and store areas continues to use FIFO.



Pickup/Order delivery: Send stockAdjust

For pickup orders or orders using order delivery, PeakWMS now sends a stockAdjust message for products on the pick order, when PickOrderPacked is sent.

This ensures that webshop stock levels are correct when the order is completed in PeakWMS.



Integration: Include stock to webshop only sent for webshops

The field IncludeInStockAdjust has been renamed to IncludeInStockAdjustForWebshop, and functionality has been updated so stock adjustments are only sent to the webshop, when stock is moved between locations with different webshop‑inclusion settings.

Stock adjustments are no longer sent to ERP for these internal moves, ensuring ERP stock values remain unchanged.

This allows internal stock moves without impacting ERP while keeping the webshop inventory correct.



OpenAPI: CustomerNumber on SalesOrder

CustomerNumber has been added to the SalesOrder endpoint in OpenAPI. The field maps to CustomerNumber on the outbound order in PeakWMS and can be used e.g. in picking groups.



Returns/OpenAPI: Multiple replacement lines on one return line

You can now link multiple replacement lines (outbound order lines) to a single return order line when exchanging items via OpenAPI.

The API now supports multiple ReplacementHostIds per return line, and PeakWMS will not create new outbound orders if valid links already exist.



Shopify POS: StockAdjust sent to both warehouses for Returns/Defects

When a POS return is received into a return/defect location in a different warehouse than the store warehouse, PeakWMS now sends:

  • a negative stockAdjust for the store warehouse
  • a positive stockAdjust for the return/defect warehouse (if the stock is available and the location is configured to include stock in the webshop)

If the return location is in the same warehouse as the store, behaviour remains unchanged.

This ensures correct stock levels for both webshop and ERP.



Business Central: Automatic exchange rate for purchase orders created from Warehouse Receipts

When creating purchase orders from Business Central Warehouse Receipts in PeakWMS, the exchange rate is now automatically set to today’s rate if:

  • the Currency Code differs from the integration’s default currency (e.g. DKK)

This matches the logic used when manually creating foreign‑currency purchase orders and prevents:

  • incorrect cost prices due to missing/outdated currency rates
  • manual corrections by the user

The result is correct cost prices from the start.



Other Updates

OpenAPI: Extended fields on Stock, StockAction, and Purchase Orders

Multiple OpenAPI responses have been expanded, providing more product and purchase order data. Stock endpoints now return product description and image path, StockAction includes product description, and Purchase Order endpoints have additional fields such as discounts, fees, first receipt date, over‑receipt, and more.


StockAdjust: Performance optimization for bulk adjustments

Large stock adjustments are now handled as bulk operations, reducing heavy lookups and improving performance significantly.


Integration: Delete incomplete integrations

You can now delete an integration even if setup is not completed. The delete option is available in the three‑dot menu on the integration.


Pack: Optimised bin packing algorithm

The bin‑packing algorithm used to determine optimal container types has been improved for large orders with many lines. PeakWMS now consolidates similar items, tests container sizes faster, and includes a timeout to ensure stable response times.


Count Orders: Faster closing of stock taking orders

Difference lists are now generated more efficiently by fetching only required price and quantity fields, significantly improving performance on large stock taking orders.


Pick: Optimized AutoAssignAndStartPickTour for large batches

Bin‑packing is now executed once per order and reused, reducing the number of runs and improving performance when many pick orders are assigned to a pick cart.


Help Pallet Pick: Choose alternative pick from replenishment locations

Alternative pick location selection now considers order release rules. If these allow picking from both pick and replenishment locations, users can choose replenishment locations. Without order release rules, existing logic applies (no picking from replenishment).


Zone Picking: Proper handling of zero‑pick boxes

Zero‑pick boxes can now be completed directly on the conveyor. PeakWMS performs the same cleanup and order release handling as when finishing a pick box at the packing station.


CargoFlux: shipping_date now uses pickup date

For CargoFlux shipments, shipping_date is now sent as the pickup date instead of the desired delivery date, ensuring correct freight booking.



Bug Fixes 

Replenishment: Quantity field editable again

In replenishment, it is once again possible to click the quantity field and change the pick quantity. The entered amount is now correctly carried over, when the quantity is confirmed.



Cross Docking: “Select Printer” popup now closes correctly

In receiving during cross docking, the "Select Printer" popup can now be closed correctly, when choosing Cancel. The popup disappears as expected, and the cross‑docking process is cancelled if the user chooses not to print. It is no longer necessary to exit goods receipt to continue.



Uniconta: Login failure no longer “Silent Fails” during invoicing

If the Uniconta login fails during invoicing of a debtor order (e.g. with the error UserNotLoggedIn), the order will no longer fail silently. The error is now handled explicitly, enabling proper retry logic and preventing orders from remaining un‑invoiced without detection.



Uniconta: Background jobs no longer blocked by connection errors

Connection errors to Uniconta previously blocked background jobs, preventing messages such as PickOrderPacked and InboundOrderClosed from being sent. This has now been fixed so jobs no longer get “stuck”, ensuring stable communication with Uniconta.



OpenAPI: Performance improvements on POST/PUT of large purchase orders

Handling of large purchase orders via OpenAPI (POST/PUT) has been optimized so that processing many ExpectedDeliveryChanged messages is more efficient. This reduces load and lowers the risk of timeouts when creating or updating large purchase orders or orders with many backordered items.



OpenAPI: InboundOrderClosed now sent for purchase orders without a warehouse

When closing a purchase order via OpenAPI, an InboundOrderClosed message is now always generated—even if the purchase order has no warehouse specified or has receipts on multiple warehouses. This ensures that integrations consistently receive the closing message and can choose to ignore warehouse‑less orders if desired.



StockAdjust: Correct delta calculation when moving between webshop‑included/excluded locations

When stock is moved between locations with different values for Include in webshop stock, the system now calculates the correct positive or negative delta depending on whether items are moved to or from a webshop‑included location. This ensures more accurate stock reconciliation for webshop and other integrations.



Rack Export: Unique column names for export/import

The rack export file has been corrected so the columns for Rack and Area no longer share the same header (Name). Column names are now unique, making it clear which data belongs where and ensuring files can be re‑imported without errors after editing.



Pick Orders: Searching by customer name works again

Searching in the pick order dialog previously failed when filtering on CustomerName due to incorrect field mapping. The field is now mapped correctly, allowing you to search and filter pick orders by customer name without errors.



Colli Packing: Shipping location popup now displays correctly

When packing using parcel pack, the popup that sorts to the shipping location now appears as expected, in the same way as in regular packing. The packages are also correctly linked to the selected shipping location upon confirmation.



Chat: Receiver initials visible again

When using the chat system in PeakWMS, recipient initials had disappeared from the chat bubbles. Initials are now restored, making it easier to see whom you are writing to.



Search: Previous searches in popups now show search criteria again

When selecting a previous search in popups (e.g., shipping method selection on an order), the search criteria are now correctly preserved and shown in the fields. This applies both when selecting Previous Search and when searching via right‑click on a value in standard table dialogs. This makes it possible again to view and reuse the actual search criteria.



Warehouse transfer: Label retrieval no longer fails with “Object Reference”

Generating labels at the end of a warehouse transfer previously triggered an “object reference” error. This issue has been fixed so labels can once again be retrieved correctly when completing a stock transfer.



Create order: Available quantity and product image restored

When manually creating orders, available quantity and product images are now shown again during product search. This resolves the issue where these details were missing in the Create Order dialog.



Shopify: Correct handling of lines during order updates

When an order was updated via Shopify webhooks (e.g. a line removed and a new one added), PeakWMS could previously hit an object reference error. This has been fixed so updates from Shopify are applied correctly, and removed lines are correctly removed in PeakWMS.



Shopify: All order lines retrieved for large orders

PeakWMS previously only retrieved the first 250 order lines from Shopify, causing large orders to miss lines. Pagination has now been implemented so PeakWMS retrieves all order lines.



Shopify: PickOrderPacked no longer fails with “Object Reference”

The issue causing PickOrderPacked messages to fail with an object reference error has been fixed. Now:

  • PickOrderPacked messages are sent successfully
  • Orders are completed correctly in Shopify
  • If the related Shopify order is unexpectedly null, a clear controlled error is shown instead of blocking the integration

This improves overall robustness of PickOrderPacked processing.



Shopify: Lines for unmapped fulfillment locations are now ignored

When Shopify integration is configured to “import only lines for configured locations,” PeakWMS now consistently imports only lines belonging to mapped fulfillment locations:

  • New lines on unmapped locations are ignored
  • Lines that move from a mapped to an unmapped location are removed from the order
  • PeakWMS no longer attempts to fulfil lines that should not be handled

This fixes the issue where orders were imported even though their fulfillment location was not mapped.



Bundles: Correct stock levels in webshop and simplified calculation

Stock levels for bundle products are now calculated more robustly so webshop quantities reflect actual stock in PeakWMS. This ensures accurate available quantities for bundles.



Bundles: “Ordered by Customers” now counts only bundle lines

The Ordered by Customers column for bundles has been corrected so it no longer counts orders for the underlying items. Only lines that directly order the bundle itself are included.

This ensures bundle demand is accurate and no longer inflated due to orders for individual components.



Webshipper: Correct customs value when lines have 100% discount

When an order line has a 100% discount and Webshipper is used, PeakWMS now ensures a positive customs value is still sent so the shipment can be booked correctly. This prevents customs value from becoming zero on cross‑border shipments such as influencer or free orders.





Var denne artikel nyttig?

Fantastisk!

Tak for din feedback

Beklager, at vi ikke var nyttige

Tak for din feedback

Fortæl os, hvordan vi kan forbedre denne artikel!

Vælg mindst én af grundene
Captcha-bekræftelse er påkrævet.

Feedback sendt

Vi sætter pris på din indsats og vil forsøge at rette artiklen