At a glance
Count of NetSuite Sales Orders currently in an open lifecycle state. The metric is a real-time pipeline view: how many SOs are sitting somewhere between created and fully invoiced. It is the operational pulse VP Finance and the Controller use on a Monday 9am cash-flow review to size the working-capital pipeline, identify ageing SOs that should already have flipped to Invoice, and spot the buildup that warns the warehouse is behind on fulfilment.
| What it counts | COUNT(transactions WHERE type='SalesOrd' AND status IN ('Pending Approval','Pending Fulfillment','Partially Fulfilled','Pending Billing','Pending Billing/Partially Fulfilled')). The card excludes Billed, Closed, and Cancelled because those are out-of-pipeline. Real-time, not period-bounded; the count is “right now” not “last 30 days”. |
| VAT / tax treatment | n/a, this is a count metric. The companion value card Open SO Value sums total which is gross including tax on UK / EU / AU subsidiaries (where NetSuite ships tax-inclusive on the Standard Sales Order form) and excluding tax on US subsidiaries. |
| Shipping | n/a for the count. |
| Discounts | n/a for the count. |
| Refunds | n/a, refunds are a separate transaction type (Customer Refund, Cash Refund, Credit Memo). They do not affect the open-SO count. |
| Cancelled / voided orders | Excluded. SOs flipped to Cancelled (operationally rare on NetSuite; merchants typically Close rather than Cancel) drop out of the count. |
| Currency | Multi-currency, but the count itself is currency-agnostic. SOs created in EUR, GBP, USD, and AUD all contribute one to the count. The companion value card sums in base / consolidation currency. |
| Channels / sources | All sources: Web Store (SuiteCommerce / SCA), B2B portal, manual SO entry by sales rep, EDI inbound, and SOs auto-created from Shopify / BigCommerce / Adobe via the commerce connector. The source field on the SO record (where populated) lets the merchant filter, but the headline count blends them. |
| Time window | RT (real-time / live snapshot, refreshed at SuiteAnalytics cadence; typically 5 to 30 minutes lag from posting). |
| Alert trigger | None on this card directly; spikes are surfaced on SOs Blocked on Inventory or Credit. |
| Roles | owner, operations |
Calculation
Calculated automatically from your NetSuite data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
A US wholesale distributor of industrial fasteners on NetSuite OneWorld, three subsidiaries (US Inc parent, UK Ltd, AU Pty), single web store on SuiteCommerce Advanced, B2B portal layered on top, and EDI inbound from 14 retailer customers. Snapshot Monday 04 May 26, 09:12 EST. Headline: 1,847 Open SOs across the consolidation. Subsidiary breakdown:| Subsidiary | Open SOs | Open SO Value (consol USD) | Avg per SO |
|---|---|---|---|
| US Inc | 1,310 | $4,820,400 | $3,679 |
| UK Ltd | 412 | $1,140,200 | $2,768 |
| AU Pty | 125 | $390,800 | $3,126 |
| Total | 1,847 | $6,351,400 | $3,438 |
| State | Count | What it means |
|---|---|---|
| Pending Approval | 18 | New SOs awaiting credit approval, AR review, or sales-manager sign-off |
| Pending Fulfillment | 612 | Approved, sitting in the warehouse pick queue |
| Partially Fulfilled | 198 | Some lines shipped, some on backorder |
| Pending Billing | 410 | Fully shipped, awaiting Invoice generation |
| Pending Billing/Partially Fulfilled | 72 | Mixed mode: some shipped + invoiced, rest on backorder |
- The 410 SOs in
Pending Billingare the cash-flow priority. These are fully shipped goods waiting for someone to flip them to Invoice. At an average 1.5m of revenue that NetSuite has not yet recognised in GL because the Invoice has not posted. Cross-reference SO to Invoice Lead Time: if the lead time has crept from 1.2 days to 3.8 days, the AR clerk is behind, and DSO will follow within a week. - The 612 in
Pending Fulfillmentis the warehouse buildup. Healthy distribution warehouses keep this number turning daily; a build-up of >2x average daily order volume signals the warehouse is constrained (people, inbound stock, carrier pickup). Cross-reference SOs Blocked on Inventory or Credit to see how many of the 612 are actually waiting on inventory rather than on labour. - The 18
Pending Approvalis healthy. A US distributor running 50 to 80 new SOs per day should expect 20 to 40 in approval at any moment if the credit-review cycle is 4 to 8 hours. Above 50 means the credit team is bottlenecking; below 5 means approval has gone fully automated, which is fine if Customer Credit Utilisation is healthy and worrying if you are approving customers who should be flagged. - UK and AU lower count is mix, not health. UK and AU are smaller markets; the 412 and 125 reflect natural volume differences. The metric to watch by subsidiary is days-of-sales-in-pipeline, not the raw count.
- The 1,847 baseline. Historical norm for this distributor is 1,650 to 2,100; today’s 1,847 is squarely mid-range. A jump to 2,400 with no corresponding ATR (Average Time to Resolution) movement is the signal that demand has stepped up; a jump with rising lead time is the signal that fulfilment is the bottleneck.
Sibling cards merchants should reference together
Open Sales Orders is a count; almost every diagnostic question requires pairing it with one of the following:| Card | Why pair it with Open Sales Orders |
|---|---|
| Open SO Value | The dollar twin. A flat count with rising value means SO mix is shifting toward larger B2B accounts; useful pipeline signal. |
| SO State Breakdown | Decomposes the count into the lifecycle stages. The state mix tells you which team is the bottleneck (sales, warehouse, AR). |
| SO to Invoice Lead Time | The throughput metric. Open SOs are pipeline; lead time tells you how fast the pipeline is draining. |
| SOs Blocked on Inventory or Credit | The blockage detector. Of the open SOs, which are mechanically waiting on a constraint? |
| Average SO Value | The shape metric. AOV-equivalent for SOs. Mix-shift signals. |
| Invoiced Revenue | The downstream metric. Open SOs eventually flip to Invoiced Revenue; the conversion ratio is the warehouse + AR throughput. |
| Commerce Orders Without NetSuite SO | Cross-channel companion: commerce orders that should be on this list but aren’t. The reverse leakage signal. |
| Inventory Aging | When SOs back up due to fulfilment, ageing inventory often rises in parallel: a buildup somewhere in the chain. |
Reconciling against the vendor’s own dashboard
Where to look in NetSuite’s own dashboard:Transactions > Sales > Enter Sales Orders > List, then filterFor OneWorld merchants, repeat the filter with the Subsidiary selector at the top of the search results pane to compare per-subsidiary counts. The closest dashboard portlet is Customise Dashboard > Standard Content > Reminders > Sales Orders to Approve / Fulfill / Bill. The portlet does not give you a single rolled-up count; it splits across three reminder types. Sum them for an apples-to-apples figure. For the SuiteAnalytics view, the saved-search All Open Sales Orders (System-Provided in most accounts) is the canonical query Vortex IQ runs against. Why our number may legitimately differ from NetSuite’s:Statusto:Pending Approval,Pending Fulfillment,Partially Fulfilled,Pending Billing,Pending Billing/Partially Fulfilled. The row count at the bottom of the list is the directly-comparable figure.
| Reason | Direction | Why |
|---|---|---|
| SuiteAnalytics refresh lag | Ours lower for last 5 to 30 minutes | Vortex IQ pulls via SuiteAnalytics Connect / SuiteQL; freshness depends on the merchant’s SA replication cadence (typically 5 minutes for Premium accounts, 30 to 60 minutes for Standard). The NetSuite Transactions > List view is real-time. |
| Subsidiary filter | Either | Single-subsidiary merchants see no gap. OneWorld merchants who view the list with the elimination subsidiary filtered out get a different total than Vortex IQ’s consolidated view. Always compare like-for-like. |
Pending Approval workflow customisation | Ours may be lower | Some merchants customise the SO approval workflow to use a custom status field rather than the standard Pending Approval. Vortex IQ catches the standard status; custom states need a per-tenant manifest entry. |
| Time zone for “today” boundaries | Boundary moves | NetSuite uses the user’s preferences time zone; Vortex IQ uses UTC. For a real-time count this is moot, but if the merchant compares at-a-point-in-time snapshots, the gap is timestamp-driven. |
| Cancelled-then-uncancelled edge case | Either | NetSuite allows reversing a Cancel via Edit > Status. The transition is logged but the historical-count view depends on which snapshot you compare. Vortex IQ uses the live state. |
| Card | Expected relationship | What causes legitimate divergence |
|---|---|---|
shopify.order_count (when commerce connector active) | NetSuite Open SO count should approximately equal Shopify orders in unfulfilled + partially_fulfilled states minus orders < 5 minutes old (sync lag). Material gap = unmapped orders, surfaced on Commerce Orders Without NetSuite SO. | Shopify draft / abandoned / cancelled orders never become NetSuite SOs and should not count. Commerce-side cancellations that happened before NS sync also drop. |
bigcommerce.order_count | Same logic as Shopify; Awaiting Fulfillment + Awaiting Shipment + Partially Shipped map to NetSuite Open SO. | Same gap profile. |
adobe_commerce.order_count | processing + holded + pending map to Open SO. complete should map to Billed (out of count). | Same gap profile. |
Known limitations / merchant FAQs
Why is my Open SO count climbing every Monday? Almost universally a fulfilment-cadence artefact. Most warehouses pause Saturday afternoon through Monday morning; SOs created Friday-Sunday accumulate inPending Fulfillment and the pile is largest first thing Monday. By Tuesday afternoon the count typically returns to mid-week baseline. The pattern is healthy unless the Tuesday afternoon figure is also rising week over week (then you have a structural fulfilment capacity issue).
The count is 1,847 but Open SO Value shows 3,438 average meaningful?
Marginally. The arithmetic mean masks a heavy long-tail: most distributors see a few B2B orders worth 500,000 sitting alongside hundreds of small orders worth 1,500. The right view is the median, on Average SO Value, and the top-20 SO list which Vortex IQ exposes via Ask Viq. Ask Ask Viq “show me the top 20 open SOs by value”, you typically find that 5% of the SOs hold 50% of the dollar pipeline.
Should Pending Approval be in the count?
Yes, by Vortex IQ’s definition. The merchant question this card answers is “how many SOs are in the pipeline?”, which includes “SOs we created but the credit team has not signed off on”. If you want pure post-approval pipeline, use SO State Breakdown and read the non-approval rows directly.
Does this include SOs from the SuiteCommerce web store?
Yes. SuiteCommerce / SCA orders write directly to NetSuite as standard SOs. They are indistinguishable in this count from manually-entered or EDI-inbound SOs. Filter by source on the SO record (or by sales channel custom field) if you need the channel split.
My OneWorld account: does this count include intercompany SOs?
Yes by default. Intercompany SOs (subsidiary A selling to subsidiary B) are real SOs in NetSuite. If you want third-party only, filter by Customer.subsidiary != Transaction.subsidiary. Vortex IQ exposes the per-subsidiary view that already excludes intercompany when the merchant tags subsidiaries in the manifest.
What is the difference between Closed and Cancelled in NetSuite?
Cancelled = the SO was rejected before fulfilment; the customer did not receive goods. Closed = the SO is operationally finished (typically because it was fully fulfilled-and-billed and posted to revenue, or because the merchant chose to close it manually rather than fulfil the remainder of a partial). Both states drop the SO out of the open count.
Why does my Open SO count look low for the volume I do?
Two usual causes. (1) Auto-Bill is enabled (Setup > Accounting > Auto-Generate Statements), which causes SOs to flip directly from Pending Fulfillment to Billed once the Item Fulfilment posts, skipping Pending Billing. The pipeline is shorter, so the count is structurally lower. (2) The merchant is using cash-sale flow (Cash Sale instead of Sales Order) for ecommerce, which never creates an SO. SuiteCommerce can be configured for either flow; cash-sale stores see this card permanently low.
Does this respect the Period Lock?
No. NetSuite’s Accounting Period Lock prevents posting to a closed period; it does not affect transaction lifecycle states. SOs continue to flow through Pending Fulfillment > Billed regardless of period status. The count is current-state, not period-state.
My distributor: I have a backlog of 2,400 Pending Fulfillment SOs. How do I reduce it without throwing more labour at the warehouse?
Three plays in order of impact: (1) Identify the SKUs that drive >40% of pick volume and move them to forward-pick (closer to the pack stations). (2) Re-batch the warehouse pick-pack waves: 4 waves of 600 lines each is more efficient than 12 waves of 200. (3) Audit SOs Blocked on Inventory, often 15 to 25% of “pending fulfilment” is actually waiting on stock that never arrived; close or partial-ship those out of the count first.
A SO sat in Pending Billing for 14 days. Why didn’t anyone bill it?
Three usual causes: (1) The Item Fulfillment posted but no one ran “Bill Sales Orders” (Transactions > Sales > Bill Sales Orders). NetSuite does not auto-create the Invoice unless the merchant enabled the Auto-Bill saved search. (2) The customer is on Pending Approval for billing terms, often a credit-team check that fell off the queue. (3) A custom workflow blocked the auto-billing for orders flagged with custom criteria (e.g. requires manager sign-off >$10k). Open the SO; the System Notes tab shows the workflow trail.