Back
Kevin Riedl

14 min read · 29 Sep 2026
Last reviewed

Next
Made on your device, with no Instagram connection. We copy the post link for Instagram’s Link sticker.

Managing Multiple Shopify Stores: Reporting App or Custom Operations Dashboard?

A consolidated report can tell you which store has a delivery problem. The harder question is whether somebody owns that problem, has the right evidence, and can complete the next step without copying information between three systems.

At Wavect, that is the distinction I would use to assess a Shopify multi-store dashboard: not how many charts it contains, but whether it closes a specific operational gap. A reporting app, an existing helpdesk, a small integration or custom software can each be the right answer.

Evidence reviewed: . Product capabilities below come from public vendor documentation, not a hands-on comparative trial. The MyMerch section describes published client evidence; the delivery-exception workflow and financial illustration are separate, hypothetical examples.

When does a multi-store dashboard need to become an operations tool?

A reporting dashboard explains what happened. An operations dashboard should also establish who must do what next, using which evidence, and how completion will be confirmed. Here, a case means a durable work item for one operational problem, not merely a row that disappears when a report refreshes.

Use reporting when the output is a comparison, a scheduled export or a management decision. Evaluate an operational workflow when staff must investigate a particular shipment, assign responsibility, obtain ERP context, contact a customer and preserve the result. This is a requirements distinction, not a claim that reporting vendors cannot offer actions or extensions.

A useful buying question is: “Show us one delayed shipment from detection to verified resolution, including the point where our ERP or warehouse system changes the decision.” If a supported product completes that journey, a separate custom dashboard may add little value. If the missing step is only one integration, build that step rather than replacing everything.

What our MyMerch work actually supports

At Wavect, we analyzed IT processes and built individual dashboards giving MyMerch an overview of more than 10 Shopify stores. Our published MyMerch case study also describes targeted process automation rather than a platform rewrite.

In the May 2026 client review, CEO Sebastian Hennig reported faster ERP-related problem solving, around 50%, alongside improved efficiency. The source is the MyMerch review on Wavect's Clutch profile. This is client-reported feedback about the engagement, not an independently measured dashboard-only effect or a promise of 50% fewer delivery exceptions.

My conclusion is deliberately narrower: cross-store visibility and targeted process improvement can be part of the same engagement. The public record does not establish the detailed workflow below, its data model or its savings. Those are proposed evaluation patterns, not additional MyMerch project claims.

Compare reporting, synchronization, operational apps and custom work

Start with the functionality you already have. Shopify Plus provides organization analytics, aggregate dashboards and customizable multi-store reports. Access requires the relevant organization-level permission. “Shopify has no cross-store reporting” is therefore not a sound premise: see Shopify organization analytics.

Report Pundit documents consolidated reports across connected stores, including sales, payouts and fulfillments, with scheduled output and CSV, Excel or Google Sheets exports. These are reasons to evaluate it for reporting, not proof of an end-to-end exception workflow: Report Pundit multi-store reporting.

Synchronization is a different requirement. Multi-Store Sync Power documents cross-store inventory, product and collection synchronization, including location-level controls. Test that category when inconsistent catalog or stock data is the actual problem: Multi-Store Sync Power's Shopify listing. Synchronizing stock does not, by itself, define who investigates a delayed parcel.

Off-the-shelf does not mean read-only. Gorgias documents multi-store ticket centralization and Shopify order actions from its helpdesk, including creation, editing and refunds. A team already working there should assess that path before buying another staff interface: Gorgias for Shopify.

AfterShip documents shipment dashboards and exception reporting; its product comparison places API/webhook access and custom integrations in specific higher-tier offerings. Check the actual plan, carrier coverage and organization setup rather than assuming every capability is included: AfterShip Tracking capabilities.

Buyer-oriented starting points, not a feature-certification or product ranking
ApproachGood starting requirementWhat the demonstration must prove
Native Plus analyticsCompare performance across stores in one organization.The required data, grouping and access work for your organization.
Reporting appConsolidate reports and eliminate recurring spreadsheet assembly.Store coverage, definitions, freshness, exports and scheduled delivery.
Synchronization appKeep catalog or stock data consistent across stores.Authoritative source, location mapping, conflicts and recovery.
Tracking platform or helpdeskInvestigate delivery issues and coordinate customer follow-up.Proactive detection, assignment, permissions and the actual next action.
Existing tool plus extensionAdd one missing ERP field, rule or supported action.The full handoff works without two competing case records.
Custom operations applicationSupport a material workflow gap across several systems.The same journey, including failures, support ownership and exit.

The middle option deserves a real trial. Gorgias, for example, documents HTTP integrations for external API data and sidebar widgets. That can make a supported extension more appropriate than an independent application: Gorgias HTTP integration documentation. Confirm the actual endpoint, credentials and permitted actions; an API connection alone does not settle those questions.

Shopify Flow is another component to assess. It is available on Basic, Grow, Advanced and Plus, but the Send HTTP Request action requires Grow, Advanced or Plus; custom partner-app tasks are Plus-only. Do not assume every automation can run on every store's plan: Shopify Flow availability.

Define one workflow: detect, assign, investigate and resolve

Illustrative scenario, not MyMerch: a retailer has six Shopify stores, one ERP, two warehouses and an existing helpdesk. Its immediate goal is to find shipment problems before staff lose track of follow-up, not to replace its analytics, ERP or customer-support system.

Define an exception using merchant-approved rules: a missing carrier acceptance scan after a warehouse handoff, no movement beyond a service-specific threshold, a failed delivery attempt, or a missed customer promise. Account for business calendars and destination. A warehouse hold is not automatically a carrier delay; missing evidence is not automatically evidence of failure.

The proposed queue shows the store, order, package, exception reason, supporting timestamps, ERP hold or release state, customer promise, owner, next action and due time. It should explain why a case is open. Red coloring without the underlying evidence is insufficient for this workflow.

Assignment must persist. If the helpdesk is already the team's source of truth for ownership and conversations, keep it authoritative. A custom view can link to that ticket or update it through a supported integration. Do not maintain separate editable assignees in two tools without defining how conflicts are resolved.

Separate case status from action status. A case can be assigned or waiting for the carrier while a command is requested, confirmed, failed or outcome unknown. An accepted API request is not proof that a replacement shipped or the customer received a response.

For the first release, I would favor evidence gathering, assignment and verified follow-up over automatic refunds or reshipments. Sending money and moving stock require separate authorization and recovery requirements. A staff-facing dashboard does not need those powers merely to justify its existence.

Data access and permissions determine feasibility

Model the package, not just the order

Shopify's Fulfillment object relates to fulfilled line items and can contain multiple tracking entries. Do not assume one order, fulfillment or tracking number is the same unit of work: Shopify Fulfillment reference.

Use explicit store identity and stable source identifiers, then map order, fulfillment and package records. Display numbers such as #1001 are labels, not a safe cross-store business key. A partially delivered order should retain the unresolved package without reopening a parcel already delivered. When a source cannot distinguish packages reliably, record that limitation rather than fabricating precision.

Shopify also exposes fulfillment events for shipping milestones, with status and event timing. Their existence in the API does not prove that your specific carrier or integration populates all required events: FulfillmentEvent reference. Validate actual carrier samples and distinguish an event's occurrence time from the time your system received it.

Check each store and each operator

App distribution needs an explicit design. Shopify's custom distribution supports one store or stores in the same Plus organization; that is not a universal installation mechanism for unrelated stores. Confirm an appropriate distribution or separate app setup for the actual ownership structure: Shopify distribution methods. A shared dashboard is not a shared permission to access every store.

Historical access also matters. The Order API normally exposes the last 60 days; older orders require the relevant additional access. An unresolved older shipment must not silently disappear during recovery: Shopify Order access requirements.

Customer names, addresses and contact details fall within Shopify's protected-customer-data requirements, which differ by app type. Collect only the fields the workflow needs and verify access before scoping the interface: protected customer data documentation.

Our proposed acceptance boundary is server-side authorization for each store and action. Logging into a custom dashboard should not confer every capability held by its integration account. Test regional teams, temporary staff, exports, direct record links and revoked access. Keep credentials out of browsers and customer details out of routine logs. A hidden button is not an authorization control.

Require recovery, not a “real-time” label

Shopify describes webhooks as near-real-time, does not guarantee event ordering, and recommends reconciliation because delivery is not guaranteed. An operational queue therefore needs a recovery path, not just a subscription: Shopify webhook guidance.

For custom components, require authenticated receipt, durable intake and duplicate handling. Shopify documents HMAC verification, the delivery identifier X-Shopify-Webhook-Id and the separate X-Shopify-Event-Id for correlating deliveries arising from the same merchant action: verify webhook deliveries. Transport deduplication is not a substitute for preventing duplicate business cases.

My proposed design is a per-store ingestion worker feeding a read model, with scheduled reconciliation and a defined case identity. Use event timestamps and current source state so an older update does not incorrectly reopen a resolved issue. Retain a separate episode when a genuinely new problem occurs. Replay should repair missing information without creating another customer message.

GraphQL Admin limits are based on calculated query cost for each app-and-store combination. Backfills and routine refreshes need appropriate scheduling: GraphQL Admin rate limits. The operational requirement is that one store's throttling or expired credentials do not silently make every other store appear healthy or unavailable.

Required behavior in three hypothetical failure states
FailureMisleading behaviorRequired behavior
Carrier feed stops updatingShow zero delivery problems.Show source freshness and an unknown or stale state; retain existing work.
The same shipment event arrives twiceCreate two tickets and two follow-ups.Deduplicate intake and enforce the business case identity.
Ticket creation times out after remote acceptanceRetry immediately and create another ticket.Record outcome unknown; inspect the target using the command reference before another attempt.

This applies to an extension as much as a full custom build. Ask who handles dead-letter items, who checks reconciliation, what an operator sees during an outage, and how the team works manually if the dashboard is unavailable. “We retry errors” is not a complete answer.

Fourteen tests before selecting the dashboard

Run the same proposed acceptance pack against shortlisted products, supported extensions and a custom prototype. These are procurement tests, not test results for the named vendors. A feature marked available is not enough until it works with your store topology and sources.

Proposed delivery-exception acceptance tests
TestPass evidence to request
OPS-01: overlapping order numbersTwo stores with order #1001 retain separate records, links and actions.
OPS-02: split shipmentOne delivered parcel does not close another unresolved parcel on the order.
OPS-03: multiple tracking entriesOne fulfillment with several tracking entries is represented without losing package evidence.
OPS-04: warehouse holdAn ERP hold routes to the agreed team rather than an inappropriate carrier escalation.
OPS-05: business calendarWeekend, time-zone and missing-promise cases follow documented rules, not invented deadlines.
OPS-06: duplicate deliveryA replay or second subscription does not create a second case or message.
OPS-07: out-of-order eventAn old transit event does not undo a confirmed delivery; a new issue can start a distinct episode.
OPS-08: source outageStale carrier or ERP data is visible and cannot be mistaken for no exceptions.
OPS-09: one disconnected storeThe affected store is flagged while the remaining stores continue operating.
OPS-10: concurrent assignmentTwo operators cannot unknowingly become the authoritative owner of the same case.
OPS-11: restricted operatorUnauthorized store access fails for views, exports, direct URLs and write actions.
OPS-12: ambiguous command resultA timeout after acceptance leads to target inspection, not an unverified duplicate action.
OPS-13: older unresolved orderRecovery retains an open case older than 60 days, with approved source access or a documented fallback.
OPS-14: add and remove a storeOnboarding, initial reconciliation, access revocation and retention follow an owned procedure.

Alongside correctness, measure false positives, cases without an owner, time to first useful action and time to verified resolution. Agree definitions and sample periods. A rising ticket count might reflect improved detection rather than worse delivery performance; an empty queue might reflect missing data.

Compare the full operating cost of the same workflow

Do not compare an app subscription with a custom build quote that excludes operations. Request the same cost categories for each option: discovery and configuration; integration and initial data cleanup; licenses and usage; hosting where applicable; access administration; regression testing; monitoring and recovery; planned changes; and export or exit support.

Ask which billing dimensions actually apply: stores, staff, orders, tracked shipments, tickets, automation executions or API access. Do not multiply every vendor by the same seat formula, and do not count hosting twice when it is included. Existing ERP or helpdesk spend is relevant only to the extent that this workflow changes it.

Maintenance includes supported API upgrades. Shopify publishes quarterly versions with defined support windows, so “one-time integration” should not mean indefinite compatibility: Shopify API versioning. Assign a maintenance owner whether the connector is vendor-managed, extended or custom.

Illustrative capacity calculation, not MyMerch data or a Wavect offer: 250 cases per week × three minutes less handling × 46 operating weeks gives 575 hours per year. At an assumed EUR 40 loaded labor cost per hour, that is EUR 23,000 of annual staff capacity. It is not automatically EUR 23,000 in cash savings or additional revenue.

At half the assumed time reduction, the capacity value is EUR 11,500. Validate actual adoption, case volume and handling time in a pilot; subtract all incremental operating costs and account for implementation before making an investment decision. Do not add “fewer support tickets” as another saving if it represents the same minutes already counted.

Three situations with different sensible answers

Reporting is enough: a hypothetical 12-store group needs a weekly consolidated management view. Follow-up is already reliable in its ERP and helpdesk. Evaluate native Plus analytics where eligible or a reporting app. More stores do not create a requirement for a new work-management system.

An app or extension is enough: a hypothetical four-store retailer needs shipment exceptions, assignment and customer replies. Its tracking platform and helpdesk cover the journey; a supported ERP lookup supplies the only missing context. Keep that interface and test the integration rather than commissioning a parallel dashboard.

A bounded custom workflow may fit: the six-store example requires decisions combining package evidence, ERP production holds, warehouse responsibility and different regional permissions. If the shortlisted products and supported extensions fail material acceptance tests, a custom queue or thin operations layer is reasonable. This still does not justify replacing reporting, the ERP or the helpdesk.

For the broader procurement trade-offs, use our custom software versus off-the-shelf guide. For the integration boundary itself, our Odoo ERP API integration guide addresses a different question: how a supported ERP interface constrains the connection.

Start with an e-commerce operations assessment

Bring Wavect a representative set of resolved and unresolved cases, the store and organization map, the current ERP and helpdesk, existing subscriptions, and the actions staff are allowed to take. Redacted examples are sufficient for the first conversation.

The assessment should produce an agreed exception definition; a source and permission map; an app-versus-extension-versus-custom fit assessment; results from representative workflow tests; an operating-cost and ownership outline; and a scoped recommendation with explicit exclusions. Confirm commercial scope and fees before work starts.

The outcome may be better configuration, a small supported extension, a custom component or a decision not to build. Do not proceed with operational writes when source access, authority, recovery or a long-term owner remains unresolved. A report with a clear manual procedure is preferable to an unreliable automated action.

Discuss an e-commerce operations assessment with Wavect. Our custom software development work can implement a justified gap, but the first deliverable should be the decision, not a predetermined dashboard.

Shopify multi-store dashboard questions

How can we manage multiple Shopify stores from one dashboard?
Start with the job to be done. Shopify Plus has organization analytics, while reporting and operational apps offer other consolidation paths. Check store eligibility, permissions and the complete workflow rather than assuming that one screen provides every required action.
What is the difference between a reporting dashboard and an operations dashboard?
Reporting consolidates and explains data. An operations workflow also needs persistent responsibility, a next action, relevant evidence and a confirmed outcome. A reporting product with suitable workflow features may satisfy both needs; the label alone does not decide.
When should we build a custom Shopify dashboard?
Consider custom work when a material step involving your stores, ERP, warehouses or permissions cannot be met by a supported product or extension. Require sample-based acceptance tests and an operating owner. Store count alone is not a build threshold.
Can off-the-shelf apps support actions rather than just reports?
Yes. The vendor documentation discussed here includes helpdesk order actions, shipment exception tools and integration options. Verify assignment, proactive detection, permissions and the actual ERP handoff in a demonstration. This article is not a hands-on certification of those products.
Does a fulfilled Shopify order prove that every package was delivered?
No. Treat order, fulfillment, package and delivery evidence as different concepts. A fulfillment may contain several tracking entries, and event coverage depends on the actual source. Preserve unresolved packages and expose missing or stale evidence.
Is Shopify Plus required for a custom multi-store dashboard?
Not as a universal rule. Plus is required for the native organization analytics described here, and custom app distribution across multiple stores has a same-Plus-organization condition. Other ownership structures need an appropriate distribution or separate app setup; confirm the specific architecture.
How should we compare app and custom dashboard costs?
Compare the same workflow, including setup, integrations, applicable usage charges, access administration, testing, maintenance, recovery and exit. The illustrative capacity calculation in this article is not a vendor price, cash-savings promise or MyMerch result. Replace its assumptions with measured case handling.
What should an e-commerce operations assessment deliver?
An agreed exception definition, source and permission map, product-fit comparison, representative test evidence, operating cost and ownership outline, and a scoped recommendation. Valid outcomes include configuration, a supported extension, bounded custom work or not building.

Final thoughts

Do not commission another dashboard until you can name the work it must complete. Prove detection, ownership, permissions and recovery with the same cases on every option. Keep a capable reporting app or helpdesk; build only the operational gap that remains.

Build the product, not just the backlog

If this article maps to a real product decision, Wavect can help you scope, build, harden, or lead the software work with senior founder-level judgment.

Useful service paths:

Inbox, without the noise

Follow the work that matters to you

Get a short email when we publish something new. Follow the whole blog or only the problems you care about.

What would you like to receive?
Choose your topics

Free, double opt-in, no tracking pixels.

Back
Kevin Riedl

14 min read · 29 Sep 2026
Last reviewed

Next

Get the next Delivery and QA field note

One concise email when we publish. No tracking pixels, and no inbox filler.

Free, double opt-in, no tracking pixels.