MerchantFlowMerchantFlow Docs
Dashboard

Agency Portfolio Fulfillment View

Cross-brand 3PL fulfillment monitoring for agency workspaces. Track orders fulfilled, fulfillment costs, return rates, and at-risk clients across every connected brand.

Agency Portfolio Fulfillment View

The Fulfillment Operations view at /dashboard/portfolio/fulfillment is an agency-only dashboard that aggregates 3PL fulfillment data across every connected client brand. It is built for agency teams who manage logistics or watch fulfillment cost as part of their client service.

Available on: Agency and partner workspaces. The gate is the workspace's agency type, not a plan tier or a feature flag: 3PL agencies get Fulfillment Ops as their top-level nav item, and full-service agencies find it under Portfolio > Fulfillment Ops. Other agency types get no link to it, and merchant tenants are redirected away from the page entirely. Reading it also needs the financials permission, so owners, admins, and analysts see it while plain viewers do not. See Agency Workflows for how agency workspaces are created.

What It Covers

The view rolls fulfillment data up to the workspace level so you can see the whole portfolio at once, then drill into individual clients.

Portfolio KPIs (top of page)

KPIDefinition
Orders FulfilledTotal orders fulfilled across all client brands in the selected timeframe
Total Fulfillment CostSum of fulfillment costs across the portfolio
Avg Cost / OrderTotal fulfillment cost / orders fulfilled
Cost % of RevenueHow much of portfolio revenue went to fulfillment
Unfulfilled BacklogOrders awaiting fulfillment across all brands. Turns amber above 50
Return RateReturned-orders share of fulfilled orders

The KPI row is timeframe-aware - changing the dashboard's global timeframe selector updates every metric.

Brand Leaderboard

A ranked table of every connected client with these columns:

  • Brand
  • Orders - orders fulfilled
  • Cost - total fulfillment cost
  • Avg - fulfillment cost per order
  • Return % - flagged red above 10%
  • Coverage - the share of that client's orders in the period carrying a per-order fulfillment cost, whether from 3PL carrier data or a per-product rate. Orders left to a percentage estimate do not count. Green at 80%+, amber at 50-80%, red below 50%
  • Sync - a coloured dot for healthy (synced within 24 hours), warning (last sync older than 24 hours), or stale (never synced)
  • Actions - a View link that switches you into that client's workspace

Order Status by Client

For each client, a stacked breakdown of in-flight orders by status:

  • Processing - just placed
  • Ready to Ship - picked but not yet handed off
  • Shipped - in carrier hands

Useful for spotting bottlenecks at a specific 3PL or warehouse.

Fulfillment Trend

Daily orders fulfilled and fulfillment cost across the portfolio, plotted on twin axes so you can see whether spikes in volume drove proportional spikes in cost. The chart appears once there is more than one day of data in the range.

Alerts Panel

A banner at the top of the page surfaces up to three per-client fulfillment alerts at two severity levels:

AlertSeverityFires when
BacklogHighMore than 50 unfulfilled orders and the oldest is over 48 hours old
Stale syncMediumNo sync in the last 24 hours, or no sync has ever run
Return spikeMediumReturn rate above 20% over the last 7 days
Cost spikeMediumAverage fulfillment cost per order is more than 30% above the prior 7 days

A stale sync short-circuits the rest: when a client raises the stale-sync alert, MerchantFlow stops evaluating that client and its backlog, return, and cost checks never run for the period. Fix the sync first, then re-read the panel.

To act on an alert, use the View link on that client's leaderboard row to switch into their workspace.

Branding Setup Banner

If your agency hasn't completed the branding step, the page surfaces a one-click prompt to finish it - branding flows through to white-label PDF exports of fulfillment reports.

Data Sources

The page combines:

  • 3PL data from connected providers (e.g. Speedfulfill) where each client has it wired up
  • Percentage-based fulfillment estimates for clients without a 3PL connected (clearly labeled in the coverage column)
  • Order data from the client's commerce platform (Shopify or WooCommerce)

Coverage percent on the leaderboard tells you which clients you're seeing real data for vs estimated.

Frequently Asked Questions

Why don't I see the Fulfillment Operations view?

It's agency-only, and only 3PL and full-service agency workspaces get it. Merchant workspaces never see it, and an agency workspace set to another agency type gets Portfolio > Overview and Reports without the Fulfillment link. If you signed up as a 3PL or full-service agency and still don't see it, contact [email protected].

Why is a client's coverage % low?

That client's orders carry no per-order fulfillment cost -- they have no supported 3PL connected and no per-product fulfillment rate set, so they fall back to the percentage-based estimate. Encourage them to connect Speedfulfill (or whichever 3PL they use) for accurate per-order shipping costs.

Can I export this view?

Not directly. Build a Fulfillment Operations report from Portfolio Reports, then export it as CSV or as a white-label PDF on the Plus tier.

How fresh is the data?

The page re-fetches every five minutes while it is open, and re-aggregates immediately when you change the timeframe. The underlying numbers only move when fulfillment data syncs for each client, so new sync results can take a normal sync cycle to appear. A client whose last sync is more than 24 hours old is marked warning in the Sync column and raises a stale-sync alert.


Last updated: August 29, 2026

Last updated on

On this page