Skip to main content
Nerve Centre KPIs · Audit Profile · Sentiment Settings Ecwid-specific health audit for SMB merchants running one Ecwid store across multiple surfaces (embed / Instant Site / Facebook + Instagram shop / Square POS). Answers six questions: (1) is the OAuth token and store-id grant valid with the right read scopes; (2) is the catalogue clean and inventory tracked so surfaces do not oversell; (3) are orders flowing from every surface and fulfilling on time; (4) are customers being retained and reachable by email; (5) are refunds and cancellations bounded; (6) where is live revenue at risk across channels. The cross-channel area joins refund and out-of-stock signals to marketplace and email siblings to size recoverable revenue.

What this audit checks

Authentication & access

  • OAuth access token present and not revoked (a 401 from /profile means re-grant needed)
  • Store ID resolved and substituted into every /api/v3// path
  • Granted scopes cover read_catalog, read_orders, read_customers, read_store_profile
  • Each connected storefront surface has its own valid per-store grant (multi-store merchants)

Catalogue & inventory health

  • Out-of-stock products still enabled and visible across surfaces
  • Products on unlimited-stock flag where physical stock should be tracked
  • Missing or duplicate SKUs that break marketplace and sibling parity joins
  • Zero-priced or disabled products leaking into a live storefront surface
  • Multi-storefront inventory drift - same SKU shows divergent stock across embed vs Instant Site vs social shops

Order & fulfilment health

  • Orders stuck in AWAITING_PAYMENT longer than 24h (gateway or customer dropoff)
  • AWAITING_PROCESSING backlog above 2x the 30-day average
  • Average fulfilment time within the merchant’s service-level target
  • Channel-specific order drop - one surface stops producing orders while others continue
  • Cancellation rate trending above the acceptable band

Customer & retention

  • Repeat-customer rate below the retention floor for the merchant’s tier
  • High guest-checkout share suppressing email reach for re-engagement
  • High-value customers (top spenders) with no order in the last 90 days
  • Registered-customer growth flat or negative across the period

Payments & refunds

  • Refund rate above the acceptable band on a 30-day window
  • Partially-refunded orders concentrated on a single SKU or surface
  • Refund value as a share of gross revenue trending up vsP
  • Refund-to-fulfilment correlation - refunds spiking alongside late or failed shipments

Cross-channel: revenue at risk

  • Ecwid SKUs out of stock while the same SKU is active on a marketplace sibling (amazon / ebay / walmart_marketplace)
  • Order revenue unattributed despite an active email-marketing sibling (mailchimp / klaviyo)
  • Top-spending customers unengaged in the email sibling for 90 days
  • Top-velocity SKUs receiving a disproportionately low share of ad spend (google_ads / facebook_ads)

Severity thresholds

SignalWarnCritical
refund_rate510
cancellation_rate36
conversion_rate1.5-
out_of_stock_count520
fulfillment_rate95-

Data sources

  • GET https://app.ecwid.com/api/v3/{storeId}/profile - Store profile, plan, enabled surfaces, token validity
  • GET https://app.ecwid.com/api/v3/{storeId}/products - Catalogue, SKUs, price, enabled, in_stock, quantity, unlimited flag
  • GET https://app.ecwid.com/api/v3/{storeId}/categories - Category assignment for uncategorised-product checks
  • GET https://app.ecwid.com/api/v3/{storeId}/orders - Order history, paymentStatus, fulfillmentStatus, storefrontId, totals
  • GET https://app.ecwid.com/api/v3/{storeId}/customers - Customer base, registered flag, totalOrderCount, totalPayments
  • GET https://app.ecwid.com/api/v3/{storeId}/discount_coupons - Active discount coupons for discount-dependency context