Skip to main content
Card class: Non-HeroCategory: Ecommerce Platform

At a glance

Per-line-item fulfilment status across all orders in the period. Magento splits an order into order_items (line items), each shipped via separate shipment_items documents. An order can be partially shipped (3 of 5 lines shipped, 2 still in processing); this card surfaces the line-level view that the order-level Fulfillment Rate hides.
What it countsFor every order_item in orders created in the 30-day window: classify the line as shipped, partially_shipped, pending, cancelled, or backordered. Compute count and line-level row_total per category.
API fieldqty_ordered, qty_shipped, qty_canceled, qty_backordered, qty_invoiced from GET /rest/V1/orders/{id}/items. The category derives from the relationship: qty_shipped == qty_ordered is shipped; 0 < qty_shipped < qty_ordered is partially_shipped; etc.
Why line-level mattersAn order-level fulfilment-rate metric counts a 4-of-5-shipped order as “shipped” if your rule is “any shipment exists”, or as “not shipped” if your rule is “all lines shipped”. Both are wrong for ops planning. The line-level view tells you the line-item shipped percent which directly controls customer satisfaction.
BackordersAdobe Commerce supports backorders per product (backorders setting in Catalog > Products > [SKU] > Inventory). Backordered lines are qty_backordered > 0. They sit in this card as a distinct category because they cannot be picked yet (warehouse stockout).
Cancellations on line itemsAdobe allows partial line-cancellation (cancel 2 of 5 lines while shipping the other 3). qty_canceled > 0 AND qty_shipped > 0 is a valid combination.
VAT / tax treatmentn/a, the card uses count and row_total (excl. tax) for line aggregation.
Shippingn/a; shipping is order-level, not line-level.
Discountsrow_total already deducts line-level promotions.
RefundsNot subtracted at line level for fulfilment view. A refunded line is still shipped (it shipped, then was returned). Use Refund Value for the refund overlay.
CurrencyMixed-currency row_total for ranking; base_row_total available for FX-neutral.
Multi-store / multi-warehouseInventory module routes per warehouse. Per-warehouse line-item view available via pickup_location_id.
Time window30D rolling.
Alert triggerNone on this card directly.
Rolesowner, operations

Calculation

Calculated automatically from your Adobe Commerce 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 B2B+DTC industrial-supplies merchant on Adobe Commerce 2.4.7 with 3 warehouses (East Coast, Midwest, West Coast). Snapshot 13 May 26, 30-day rolling. 2,840 orders, 14,200 line items. Line item classification:
StatusLine count% of linesrow_total% of valueNotes
shipped (qty_shipped == qty_ordered)11,42080.4%$1,820,00078.6%normal-state
partially_shipped9406.6%$186,4008.0%mid-shipment lines
pending (zero shipped, awaiting pick)1,2108.5%$204,3008.8%in-fulfilment queue
backordered4803.4%$89,2003.9%warehouse stockout
cancelled (line cancelled, no ship)1501.1%$16,4000.7%mostly OOS-driven
Total14,200100%$2,316,300100%
Slice by warehouse:
WarehouseLines pending > 7 daysLines backordered > 14 days
East Coast14238
Midwest380290
West Coast88152
Insight pattern:
  1. Midwest warehouse has 380 pending lines >7 days. That is 31% of total pending. Either the warehouse is understaffed, or orders are routing to Midwest faster than it can pick. Drill into the warehouse-side staffing data and consider re-routing some Midwest orders to East Coast (which has spare capacity).
  2. Backorder concentration in Midwest (290 of 480 lines, 60%). Cross-link with Adobe Inventory module: SKU stock levels for Midwest warehouse. Likely a recent batch of high-velocity SKUs that didn’t get replenished. Procurement should expedite.
  3. Partially-shipped at 6.6% of lines is normal for B2B but high for pure DTC. Adobe’s default behaviour is “ship what’s available, backorder the rest”. For DTC merchants who want “ship complete or not at all” (avoiding partial deliveries), configure Stores > Configuration > Sales > Shipping Settings > Shipping Origin > Allow Partial Shipments = No. This will increase pending instead of creating partially_shipped.
  4. Cancelled line value of $16,400 is 0.7% of total. Healthy. Cross-check with Cancellation Rate, which counts whole-order cancellations; this card’s cancelled-line count is partial-cancel only.
  5. Line-level vs order-level reconciliation: order-level fulfilment rate (any-shipment-exists) would show ~92% (orders with at least one shipment). Line-level says 80.4%. The 12-percentage-point gap is partial shipments, which order-level metrics hide. This card is the operational truth.
  6. Action queue: (a) escalate Midwest staffing or re-route orders, (b) expedite Midwest replenishment, (c) configure DTC shipping policy if appropriate, (d) audit the 150 cancelled lines for OOS pattern across SKUs.

Sibling cards merchants should reference together

CardWhy pair it with Line Item Fulfillment
Fulfillment RateThe order-level summary. Always higher than the line-level “all-shipped” rate.
Fulfillment BreakdownOrder-level distribution; pair to spot whether order-level vs line-level metrics agree.
Fulfillment Over TimeDay-by-day trend at the order level.
Order State Distributionprocessing orders are the line-pending source.
Unfulfilled OrdersOrder-level “stuck in processing >N days”.
Refund ValueBackorder-then-cancel often becomes refund. Cross-correlation.
Top Refunded ProductsCustomer-level concentration.
shopify.fulfillment_statusShopify peer; Shopify uses three statuses (fulfilled, partial, unfulfilled) with simpler semantics.
bigcommerce.line_item_fulfillmentBigCommerce peer.

Reconciling against the vendor’s own dashboard

Where to look in Adobe Commerce Admin:
Sales > Shipments lists every shipment document. Each shipment has line-item rows with qty_shipped per SKU. To get a line-level count by status, you would join sales_order_item against sales_shipment_item; this is a SQL/report query, not a single Admin screen.
For per-order line-status:
Sales > Orders > [order] > Items section. The grid shows qty_ordered, qty_invoiced, qty_shipped, qty_canceled, qty_refunded per line. Useful for one-order spot checks.
For backorder visibility:
Catalog > Products > [SKU] > Inventory shows the per-SKU backorder configuration. Adobe Commerce does not surface a “lines currently backordered” report natively; the closest is a custom report against sales_order_item.qty_backordered.
Why our number may legitimately differ from a manual Admin computation:
ReasonDirection of divergence
Bundle products. Adobe Commerce bundles can be configured as “ship together” or “ship separately”. A bundle with separate-ship children appears as multiple order_items; a ship-together bundle appears as one. The card counts at the order_item level.Card count higher for separate-ship bundles
Configurable products. The configurable parent line and the simple-child line both exist as order_items. The card excludes parent rows where parent_item_id IS NULL is the simple-child marker.Variations in custom-installed Magento can differ
Multi-warehouse Inventory. Adobe Commerce 2.4 splits a single line across warehouses if Inventory module is enabled. The line might show qty_shipped=3 from East Coast and qty_shipped=2 from Midwest. The card sums across warehouses.None on aggregate
Time-zone. Standard ±1 day on day boundaries.Minor
Sync lag. 5-15 min.Standard
Cross-connector reconciliation (when these connectors are connected for this merchant):
CardExpected relationshipWhat divergence tells you
shipstation.label_countShipStation labels printed should approximately match shipped lines (each label typically covers one shipment of N lines)If ShipStation labels >> shipped lines, you have an over-shipment issue (lines were re-shipped). If <<, your shipping software is behind.
klaviyo.shipping_email_volume”Your order has shipped” email count should match shipped-line countDivergence flags a missing email trigger.

Known limitations / merchant FAQs

Why is my order-level fulfilment rate 92% but my line-level shipped rate only 80%? Order-level “fulfilment rate” usually means “any shipment exists for the order”. A 4-of-5-shipped order counts as fulfilled at the order level but contributes 4 shipped + 1 pending at the line level. The line-level view exposes the partial-shipment volume that order-level metrics hide. Both numbers are right; they answer different questions. A backorder line, does it become a refund if it never ships? Adobe Commerce’s default behaviour is to keep the backorder open until either (a) stock arrives and the line is shipped, or (b) the customer or admin manually cancels the line, which generates a Credit Memo for the unshipped value if the customer has been invoiced. If the merchant has not invoiced, cancelling the backorder line just reverses the order-level total without a Credit Memo. Can a single line be partially shipped, partially backordered, and partially cancelled? Yes. qty_ordered=10, qty_shipped=4, qty_backordered=4, qty_canceled=2 is valid. Adobe tracks each separately. The card classifies based on the dominant-or-most-recent state with a precedence: cancelled > backordered > partially_shipped > pending. Toggle the per-line breakdown on the card detail panel to see the full split. My configurable products show as multiple lines, why? Adobe stores both the configurable parent and the simple child as sales_order_item rows. The card excludes parent rows by default to avoid double-counting. If the count looks too low for an order with 5 configurable products, check the manifest’s parent-row exclusion logic. Bundle products: are they one line or many? Depends on the bundle configuration. “Ship together” bundles are one parent line + N child lines but the children are not shipped independently; the card treats the bundle as one. “Ship separately” bundles produce N independently-shipped lines; the card treats each child as its own line. The merchant’s bundle settings (shipment_type field) drive the behaviour. Why do pending lines never decrease on holidays? Warehouses don’t pick on holidays. Pending lines accumulate over the closure and clear in the first 1-2 days back. Use 7-day rolling rather than instantaneous count. Multi-warehouse, can I see line items per warehouse? Yes. Apply pickup_location_id filter. Adobe Commerce 2.4+ Inventory module routes per warehouse; the card respects the routing. A line was cancelled but is still in the order’s complete state, why? Adobe doesn’t recompute order state from line states. An order with one cancelled line and four shipped lines goes to complete once the four shipped lines are invoiced. The cancelled line shows on the line-level card but doesn’t change the order-level state. This is correct behaviour; the order is operationally complete. Why does the partially_shipped percentage matter? Two reasons: (1) customer NPS, customers often dislike partial deliveries (multiple boxes, multiple wait periods); (2) cost, Adobe Commerce ships separately by default, so a 4-line partial-then-rest is two carriers’ worth of cost when one consolidated would be cheaper. If your partially_shipped is over 10% of lines, consider tighter ship-complete rules for DTC orders. Backorder vs OOS, what’s the difference? Backorder = product allows orders when out of stock; the order is created and waits for restock. OOS = the product is hidden from the catalogue and customers can’t order it. Adobe configures this per-SKU. Backorder lines appear in this card; OOS-driven lost orders don’t (they never get placed).

Tracked live in Vortex IQ Nerve Centre

Line Item Fulfillment Status is one of hundreds of KPI pulses Vortex IQ tracks across Adobe Commerce and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.