Try — Sign in again at /dxp/auth. Ensure the browser is not blocking cookies for your desk domain.
403 / no access to this site
Cause — No staff grant on that Space, or the workspace switcher points at a different organisation than the Space’s link.
Try — Open Spaces → All from the shell and pick a Space you know you were added to. Ask an Owner on the target Space to grant your account under Site staff.
Wrong content or “empty” editor
Cause — Active Space in the header does not match the page you opened.
Try — Use the workspace switcher to select the correct hostname, then reopen the editor from Create or Pages for that Space.
502 / “server unreachable” on desk APIs
Cause — In most deployments, 502 from the browser means the reverse proxy in front of the platform could not reach the platform HTTP process (for example after a crash or before make run finished booting). It is usually not “your workspace JSON is invalid.”
Try — Confirm the platform service is running and healthy on the port your proxy targets (often 127.0.0.1:8080 behind Caddy). Retry after the operator restarts the stack.
Publish succeeded but public site looks old
Cause — Edge cache or CDN still serving a previous materialised view; propagation depends on your streaming / cache configuration.
Try — Hard refresh as a visitor; if stale content persists, escalate to the operator with Space host, URL, and time of publish so they can trace engine → edge delivery.
Product sale price wrong on the live site
Cause (timing) — The scheduled sale window is not active “now”. Sale windows are half-open intervals; before Starts or after Ends, visitors see the default price.
Cause (timezone) — Sale times were saved when the Space used a different Regional display zone, or were entered thinking “UK time” while the desk still showed UTC. The storefront resolves windows in UTC; the desk shows start/end in your Space Regional zone (Space settings).
Try
Open Spaces → Settings → Regional and set United Kingdom (GMT / BST) if you operate in the UK.
Edit the product — check Storefront price right now on the editor (it uses the Regional label).
Adjust Starts / Ends and Sale price, then Save the product (this nudges the engine and linked product page).
Hard-refresh the public product URL during an active window.
Operators can compare with the public hydrate API for the product slug (for example /public/api/commerce/hydrate?slug=your-product) — expect on_sale and the sale amount only inside the window.
Product page shows old price but editor preview is correct
Cause — Cached HTML from before commerce blocks were upgraded, or the page was never re-materialised after a price change.
Try — Save the product again (triggers page repair and engine nudge). If needed, open the linked page in the canvas and publish once. Then hard-refresh.
Checkout says “insufficient stock” but the desk shows stock
Cause — Reserved units from another visitor’s in-progress checkout, or sellable (on hand minus reserved) is zero even when on hand is positive. Holds start at checkout, not add-to-cart.
Try — Wait for the hold window to expire (default about ten minutes), cancel the other awaiting-payment order in Exchange if you know which order it is, or adjust inventory only after confirming no legitimate open checkout. See Checkout inventory holds.
Product page stock countdown missing or wrong
Cause — Checkout holds disabled on the server, product does not track inventory, or the visitor has no active checkout session cookie.
Try — Confirm the product is physical with ledger stock. Complete a test checkout as a visitor; during payment the stock block may show a countdown. Operators enable cryo in engine/platform env. Details in Checkout inventory holds.
People — no email activity or “Convert to order” missing
Cause — Mailbox not connected, sync not run, or thread not matched to the contact (sender email / company domain).
Try — On Engage → People, connect IMAP with an app password, then Sync now. Open the contact and confirm their email matches a participant on the thread. See People and CRM.
People — “Convert to order” not shown on a thread
Cause — The latest message is outbound (sent from your connected mailbox), the thread already has an order linked, or you are viewing a company (convert is contact-only).
Try — Open the contact who received the customer’s mail. Sync again if the thread is new. Only inbound threads offer convert.
People — confirm / pay link fails
Cause — Stripe or engine mail not configured, missing catalog price, invalid customer email, or server env (CRM_MAILBOX_SECRET, ES_PUBLIC_BASE_URL, ES_ENGINE_ADDR).
Try — Check the draft panel error text. Confirm the Space has commerce + products with prices. Ask the operator to verify Stripe Connect and outbound mail. Details in People and CRM under Requirements.
DNS or SSL errors on a new Space
Cause — Hostname not pointed at the edge, or TLS not yet issued.
Try — Revisit New Space verification steps and the DNS records the wizard displayed. Your operator’s runbook defines the canonical A/AAAA and TXT expectations.