Back to Blog
Published:
Last Updated:
Fresh Content
Warehouse MethodsChapter 4

One wave template, or four? What wave design says about your building

8 min read
1,745 words
high priority
Mudassir Marwat

Mudassir Marwat

Founder & CEO, Cognilium AI

TL;DR

A wave template decides when work is created, in what batches, and whether a person sees it first. One template for a mixed building means parcel, pallet and line-feed work share a rhythm — and one field on it decides whether a wave that cannot reserve inventory fails loudly or quietly puts the stock in a blank location.

One wave template, or four? What wave design says about your building

Count your wave templates for one warehouse. That number is a statement about how many distinct operating rhythms your building has, and if it is one for a building that ships parcels, pallets and line-feed, you are running three operations on one clock.

The template is the rhythm, and one field on it decides whether failure is loud

A wave template [GA] decides when work gets created, what gets batched with what, and whether a human sees the batch before the scanner does.

Wave templates (ms.date 2026-06-22) states the job in its first line: it sets "the criteria that determine whether waves are processed manually or automatically, and the work that is generated for a warehouse when a wave is processed."

There are three Wave template type values, and they are exact:

  • Shipping — "shipping items for sales orders, transfer orders, and outbound shipment orders"
  • Production orders — "to move items for production orders"
  • Kanban — "to move items for kanban orders"

One precision note, because the two pages differ by a letter: this page lists the value as Production orders, while warehouse configuration overview writes it singular. The field-value list above is what the form shows.

The consequence for the walk is direct, and it is the pillar's argument arriving one level down: "When a wave is processed, the system creates picking work based on the work template and location directive specified for the warehouse."

First match wins, and a broad template is greedy

The sequence rule is the one that quietly defeats good intentions:

"The order in which the system evaluates the templates. This order determines how the templates are matched to released lines on sales orders, production orders, and kanbans. When a line is released, the system applies the first wave template whose criteria the line meets. The broader the criteria, the more likely a line is to meet them, so put the templates with the most specific criteria at the top of the list."

A permissive template near the top absorbs work the specific templates below it were written for — and the symptom is a template that never fires.

The scoping field is Warehouse selection, with three values — All, Warehouse group, Warehouse — and All has a definition worth reading twice: "Use the wave template for all warehouses where a more specific wave template hasn't been assigned."

Reordering is done with Move up and Move down on the Action Pane, and Validate template checks "that the wave template settings are valid."

Seven fields decide whether a person sees the work first

This is where "one template or four" stops being philosophy. Each is a separate decision, and on one template they compound.

  • Automate wave creation — "automatically create a wave when an order or kanban is released to the warehouse"
  • Assign to open waves — "automatically assign lines to an open wave when the lines are released"
  • Process wave at release to warehouse — "automatically process the wave and create work when a line is released to the warehouse"
  • Process wave automatically at threshold — Processes the wave when it reaches the weight, shipment and line thresholds
  • Automate wave release — "automatically release the wave. The picking work is created and made available on mobile devices"
  • Automate replenishment work release — Creates demand-based replenishment work and releases it
  • Continue wave processing when work creation fails — Section 5. This is the one to read

Microsoft distinguishes the two ends plainly. Under Manual processing, "The line is added to a wave, and the inventory is reserved. However, you must select Process on the All waves list page to create the picking work for the order."

Under the other, "a wave is created that includes the line from the sales order, production order, or kanban when a sales order, production order, or kanban is created. The items are deducted from on-hand inventory, and the picking work is created."

The partial case is where most real buildings live, and Microsoft's example is promise-based: if you tell customers an order placed by 12:00 PM ships within 24 hours, "you can set up the wave template to automatically assign order lines to an open wave until 12:00 PM. At that time, the wave is automatically processed."

Three thresholds, and one of them only works for shipping

  • Wave weight threshold — "Enter the maximum weight a wave can contain"
  • Shipment threshold — "Enter the maximum number of shipments that can be included in a wave"
  • Line threshold — "Enter the maximum number of lines that can be included in a wave"

The scope condition matters if you were planning to use thresholds for production work: Process wave automatically at threshold "is only active if Shipping is selected in the Wave template type field."

On methods, two constraints are published. Wave methods "are predefined for each type of wave template. You can't remove the predefined wave methods." But you can reorder them and add more.

The switch that decides whether a failure is loud or silent

Read this field's definition slowly, because both settings are defensible and they produce opposite operations:

"Continue wave processing when work creation fails - When set to Yes, the system uses a blank location if it can't reserve inventory at the location proposed by the location directive (for example, because the inventory is no longer available). When set to No, the wave fails if the system can't reserve the inventory."

Yes keeps the shift moving and hands a picker work with no location on it. No stops the wave and makes somebody look at it.

Neither is wrong. What is wrong is not knowing which one you are running, because they produce completely different mornings.

Note what the Yes path means for everything the pillar argued. The location directive proposed a location, the reservation failed, and the wave carried on — so the walk your picker gets is not the one the configuration described.

What your supervisor actually sees when a wave fails

If you set that field to No, somebody has to find out. The mechanism is a notification policy, and wave execution notifications (ms.date 2022-08-09, updated_at 2025-10-03) documents it: the feature "uses business events and the Action center to deliver notifications that are related to wave execution."

Three steps are stated, and the third is the one that connects the other two. Process waves in batch must be Yes on the Wave processing FastTab of Warehouse management parameters. A policy is created at Warehouse management > Setup > Waves > Wave notification policies, with Send notification on set to a value such as Error only and a To role. And then — the step it is easiest to stop before — the policy is selected on the wave template itself: "On the General FastTab, set the Wave notification policy field". Configure the first two and skip the third and you have a policy nobody points at, which fires nothing and looks configured.

Microsoft's own Note on the role choice is worth following: its example uses System administrator "for the sake of simplicity", and it says that "in practice, you should usually select a more specific role to notify about wave batch execution errors, such as Warehouse manager."

Now the part that decides how useful this is. Microsoft publishes the message a recipient gets:

"Error during wave execution An error occurred while executing wave USMF-000000001. Last messages: No Work was created for Wave USMF-000000001."

That tells a warehouse manager a wave failed and which wave. On that example message it does not name the location directive — chapter 6 is where that gets diagnosed.

One honest note: this page's ms.date is 9 August 2022, the oldest source cited here.

How we optimize wave design, and where we would draw the line

Pick-Path & Slotting Optimizer decides which orders should travel together and writes that grouping back into the wave and cluster objects Dynamics 365 already executes, behind an approval step. Dynamics is the system of record for the warehouse; the batching decision above it is a modelling problem.

A working demo exists; it is not off the shelf. We build it against your systems and your constraints on request, and we have no delivered warehouse engagements — so this is a capability, not a report on somebody's building.

Wave design is where that lands: the wave decides what shares a trip before any sequencing runs.

We would not set your failure switch for you. Yes and No encode a real operational preference about whether a shift keeps moving or stops, and that belongs to whoever answers for the shift.

We would also not write into a template whose sequence we have not read. A write into a template that a broader one shadows is a change with no effect, reported as a change.

What to do this week

  1. Count the templates for one warehouse, and read them in sequence order. Warehouse management > Setup > Waves > Wave templates. If the top one has the broadest query, everything below it is decoration.
  2. Find the work-creation-failure field on each template and write down its value. It is the difference between a stopped wave and a blank location, and it is set per work order type — so one template can stop and another carry on in the same building.
  3. Check whether a notification policy exists and which role it points at. If the role is the system administrator, the person who can act on a failed wave is not the person being told.
  4. Ask what your real cut-off time is, then look for it in a template. If the promise exists in sales and not in the configuration, the configuration is what runs.

About Cognilium Cognilium is the AI optimization layer for Dynamics 365 — complementary apps that optimize the pricing, inventory, warehouse and planning decisions your ERP manages but can't optimize. Built on Power Platform, Dataverse and Azure. https://cognilium.ai · https://www.linkedin.com/company/37180269/

If you are redesigning waves, book a fifteen-minute call and we will read your template sequence with you — what each one absorbs, and what happens when work creation fails. No deck. https://cognilium.ai

Sources

Sources

Share this article

The work behind this series

The methods behind the articles — slotting, batching, routing — and the data each one needs.

Mudassir Marwat

Mudassir Marwat

Founder & CEO, Cognilium AI

Mudassir Marwat's argument is that ERP systems record decisions they never optimise.

Founder & CEO of Cognilium AI; 37 AI agents in production across four products; 4 production AI products built and operated; three clouds in production (AWSGCPAzure)
Agentic AIRAG → GraphRAG retrievalVoice AIMulti-Agent Orchestration
Next in this series
Why is one worker doing the pick, the put and the load?
Chapter 5 · 8 min
In short

Key takeaways

  • A wave template decides when work is created and whether a person sees the batch before the scanner does, so the number of templates in a warehouse is a statement about how many operating rhythms the building actually has.
  • The system applies the first template whose criteria a released line meets, so a broad template placed high in the sequence absorbs the work that more specific templates below it were written for.
  • Whether a wave that cannot reserve inventory fails or continues with a blank location is a single field on the template, and both settings are defensible — which is why not knowing your own value is the problem rather than either choice.
  • Threshold-triggered processing is scoped to the shipping template type, so production and kanban work cannot be batched the same way.
  • Predefined wave methods cannot be removed, but their order can be rearranged and further methods added, and that ordering changes what the created work looks like.
What goes wrong

Common mistakes to avoid

  • Running one wave template for a building with genuinely different flows. Parcel, pallet and line-feed work then share a cut-off, a threshold set and a failure behaviour.
  • Adding a specific template below a permissive one. First match wins, so the specific criteria never get evaluated.
  • Leaving the work-creation-failure behaviour undiscussed. It decides whether your morning starts with a stopped wave or with pickers holding work that has no location.
  • Pointing a wave notification policy at the system administrator role. Microsoft's own guidance is to choose a more specific role, such as the warehouse manager.

Bring your own numbers

Tell us how your warehouse is laid out and what your pickers actually walk. We will tell you which part of it a system can decide, and which part it cannot.

Get your pick diagnosticNo cost, no obligation.