Skip to content

Troubleshooting

Cause: the venue was never published, the slug doesn’t exist, or the venue was deleted — all three show the same page so a slug can’t be probed.

Fix: publish the draft from /app/menu or ask your agent to call publish_menu. If you just changed your slug, use the new one — the old address stops working immediately.

Cause: each printed code is bound in the database to one fixed table number at the moment it’s created; the redirect uses that stored number, not wherever the sticker happens to be stuck. Swapping two printed stickers between tables sends diners to the wrong one.

Fix: check which table number each code was made for in /app/qr, and re-stick (don’t reprint) so the physical placement matches. See QR studio.

Cause: the public menu polls availability.json every 30 seconds, and that endpoint is itself cached for 30 seconds — so a visitor’s page can lag a live change by up to about a minute in the worst case.

Fix: wait for the next poll — nothing to republish. Still wrong after a minute? Check /app/sold-out or list_unavailable_items: a passed sold-out window restores an item automatically, so it may simply have expired. See Dashboard and staff PWA.

Cause: activation needs both the hostname and its certificate to come back active from Cloudflare; that only happens once the CNAME and TXT records shown on /app/settings are added at your DNS provider and have propagated. A nightly sweep re-checks every pending domain, so a correct record can still take up to a day to flip.

Fix: re-check the records against exactly what /app/settings shows, and give DNS propagation time. See Custom domains.

Cause: the tool it called needs a scope your connection wasn’t granted — venue:read, venue:write, menu:read or menu:write.

Fix: reconnect from /app/connections (or your client’s connector settings) and grant the scope this time. See the agent FAQ.

Import is blocked — “5 imports waiting for review”

Section titled “Import is blocked — “5 imports waiting for review””

Cause: a venue can have at most 5 staged imports at once; import_menu refuses a sixth.

Fix: confirm or discard one of the pending jobs at /app/imports (or with confirm_import / discard_import) before staging another.

Theme changes won’t save — contrast error

Section titled “Theme changes won’t save — contrast error”

Cause: the theme editor refuses to save a color palette that fails WCAG AA contrast unless you explicitly accept it.

Fix: use the suggested fixed colors the editor offers, or accept the palette anyway (force: true if your agent is setting the theme). See Theme editor.

Cause: Apple Pay only appears once APPLE_PAY_DOMAIN_ASSOCIATION is configured for the platform; without it, checkout offers cards only. This is a platform-level setting, not a per-venue one.

Fix: nothing to do on your end — contact support if you expect Apple Pay to be available and it isn’t.

The “add to home screen” prompt never appears

Section titled “The “add to home screen” prompt never appears”

Cause: it only shows for a pickup or delivery visit (never dine-in), after the same device has visited on two different days within the last 30, and it backs off for 60 days once dismissed — and never at all if you’ve switched it off under Links.

Fix: confirm the prompt is enabled at /app/links, and visit the pickup or delivery menu on two separate days to trigger it. See Links and follow us.