All insights
GrowBusiness CentralHow-To Guide

The open-orders control pack in Business Central: catching shipped-but-unbilled revenue

Build a simple monthly control in Business Central that surfaces shipped-but-not-invoiced orders and undelivered orders, so revenue you've earned actually gets billed before it ages to year-end.

Wired CIOJune 18, 2026
The short version
  • Save a shipped-not-invoiced view to catch delivered work you have not billed.
  • Save an aging-undelivered view to find stalled orders worth a call or a close.
  • Run both as a monthly close-the-gap checklist and log the counts in close notes.
  • Automate the nudge with a Job Queue entry or a scheduled Power Automate flow.
Bottom line: Two saved views and a monthly check keep delivered-but-uninvoiced revenue from quietly aging to year-end.

Here's a quiet way to lose money: you ship the goods, the customer has them, and the invoice never goes out. The order sits half-finished in Business Central, the revenue is real but unrecorded, and nobody notices until the auditor asks about it in March. This guide builds a small, repeatable control inside Business Central, Microsoft's enterprise resource planning (ERP) system for small and mid-sized businesses, so delivered-but-uninvoiced work surfaces every month instead of aging to year-end. By the end you'll have two saved views, a monthly checklist, and an automated nudge so the gap never gets a chance to grow.

Open-orders control flow STEP 1-2 Save two sales-order views STEP 3 Monthly close-the-gap check STEP 4 Alert via Job Queue
From saved views to a monthly check to an automated alert.

Before you start

  • You need access to the Sales Order List and permission to post sales invoices.
  • It helps to understand two fields on every sales line: Qty. Shipped and Qty. Invoiced. When shipped is greater than invoiced, you've delivered something you haven't billed.
  • If you want the automated alert in Step 4, you'll need either rights to set up a Job Queue Entry or access to Power Automate with the Business Central connector.

Step 1: Save the shipped-not-invoiced view

This is the heart of the control: orders where you've shipped more than you've billed.

  1. Choose the search icon, type Sales Orders, and open the Sales Orders list.
  2. Open the filter pane (choose the filter icon, or press the keyboard shortcut for filters).
  3. Add a filter on Completely Shipped = Yes and Completely Invoiced = No. If those header fields aren't both available, filter instead on the Shipped Not Invoiced flag, which marks orders with delivered, unbilled quantity.
  4. Choose Save View As, name it Shipped, Not Invoiced, and it'll appear as a tab on the Sales Orders list for one-click access from now on.
There's a report too

There's also a built-in report. Search for the Sales Orders report or the Shipped Not Invoiced inventory report for a printable version you can hand to a reviewer. The saved view is for working the list; the report is for the paper trail.

Step 2: Save the undelivered-orders view

The flip side is orders that have been open a while and never shipped at all. Some are fine (future-dated), some are stalled and worth a call.

  1. Back on the Sales Orders list, set a new filter: Completely Shipped = No.
  2. Add Order Date is on or before a date a few weeks back, so you see only the aging ones, not orders entered yesterday.
  3. Choose Save View As and name it Open, Undelivered (Aging).

Step 3: Run the monthly close-the-gap checklist

The views only help if someone looks at them on a schedule. Tie this to your month-end close.

  1. Open the Shipped, Not Invoiced view. For each order, decide: invoice it now, or note why you can't yet (waiting on a final quantity, a pricing question, a hold).
  2. For the ones ready to bill, open the order and choose Post, then Invoice, to bill the shipped quantity.
  3. Open the Open, Undelivered (Aging) view. For each stalled order, confirm it's still real. Close or cancel the ones that died so they stop cluttering the list.
  4. Write the count of each list in your close notes. "Shipped-not-invoiced: 3 orders, all billed" is the kind of line that makes a year-end audit boring, which is exactly what you want.
Partial shipments hide here

Partial shipments hide here. An order can be mostly invoiced with one shipped line still unbilled, so it won't always show as Completely Shipped. If your business does partial shipments often, ask your partner about a view or report driven by the line-level Qty. Shipped vs. Qty. Invoiced rather than the header flags.

Step 4: Automate the nudge

A control you have to remember isn't a control. Make Business Central tell you.

Option A, Job Queue (inside Business Central):

  1. Search for Job Queue Entries and choose New.
  2. Point it at a report or codeunit that lists shipped-not-invoiced orders (your partner can supply or identify the right object ID).
  3. Set the recurrence (for example, the first business day of each month) and a recipient so the output emails to your finance lead.

Option B, Power Automate (outside Business Central):

  1. In Power Automate, create a scheduled cloud flow (for example, monthly).
  2. Add the Business Central connector action to list sales orders, filtered to shipped-not-invoiced.
  3. If the list isn't empty, send an email or post a message to your finance channel with the orders and amounts.

Verify it

Deliberately create a test order, ship it without invoicing, and confirm it appears in your Shipped, Not Invoiced view. Invoice it and confirm it drops off. If you set up the alert, run it on demand once and check that the email arrives with the test order listed. That single dry run is worth more than trusting it sight-unseen.

What to do next

Add the two view counts to your month-end checklist so the control runs even when the usual person is out. If partial shipments are common in your business, that's the case to get a partner to build a line-level view, since the header flags alone will miss some. We can set up the saved views, the job queue, or the Power Automate flow with you so the whole thing runs on rails.

Filed under
How-To Guide
Read more insights
Free strategy session

See where you stand. Then move forward.

Book a free intro call. We'll talk through where you are today and map a strategic plan for growth, protection, automation, and alignment.

A 30-minute discovery call, no obligationA full team of specialists at a fraction of in-house costA clear next step before you spend a dollar
Loading scheduler…