> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vortexiq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Ecwid by Lightspeed audit profile, Vortex IQ

> What the Vortex IQ Ecwid by Lightspeed health audit checks: Ecwid: keep storefront surfaces in sync, orders flowing, refunds bounded

**[Nerve Centre KPIs](/nerve-centre/kpi-cards/ecwid) · [Audit Profile](/nerve-centre/kpi-cards/ecwid/audit) · [Sentiment Settings](/nerve-centre/kpi-cards/ecwid/sentiment)**

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/{storeId}/ 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

| Signal               | Warn | Critical |
| -------------------- | ---- | -------- |
| `refund_rate`        | 5    | 10       |
| `cancellation_rate`  | 3    | 6        |
| `conversion_rate`    | 1.5  | -        |
| `out_of_stock_count` | 5    | 20       |
| `fulfillment_rate`   | 95   | -        |

## 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
