Troubleshooting

The problems that actually happen, in the order they are worth checking.

Four causes explain most of it

Before working through a specific symptom, know that nearly everything reported as a fault is one of these:

CauseLooks likeCheck
Scheduled jobs are not runningPlans that should have ended have not, renewals not processed, unpaid orders never cancelled.Scheduled tasks
A feature is switched offA whole screen is missing for everybody.Turning features on and off
Opening hoursNobody can order from a restaurant.Restaurant profile
A webhook is not arrivingOrders stuck unpaid, subscriptions not renewing.Payments & gateways

Nothing is being emailed

The commonest support case on any WordPress shop. WordPress hands every message to your server's own mail, and many hosts deliver that badly or not at all. Work down in this order:

  1. Send through a real mail service. Install an SMTP plugin from the WordPress plugin directory and connect it to your mail provider. Most of them have a test-send button — if the test fails, the error is your mail server's own words, usually an authentication failure needing an app-specific password.
  2. If the test arrives but order emails do not, that message is switched off. WooCommerce's order emails are under WooCommerce → Settings → Emails; Quickmunch's own are in Email & templates.
  3. If messages leave but land in spam, it is deliverability — the from address, and your domain's SPF and DKIM records.

An order is stuck unpaid and the customer says they paid

The money is with the gateway. This is a recording problem, not a lost payment — do not ask them to pay again.

  1. Open the order under WooCommerce → Orders and read its notes. The gateway writes what it did there.
  2. Check the gateway's webhook settings under WooCommerce → Settings → Payments. A wrong signing secret, or a webhook pointing at an old address, is the usual cause.
  3. Read the gateway's log under WooCommerce → Status → Logs for the time of the order.

A restaurant is approved but not on the storefront

Approval is one of several conditions. All of these must also be true:

  • At least one published, available dish.
  • Opening hours set.
  • A position on the map, if customers browse by distance — see Maps.
  • Their subscription still active, on a paid plan — see Subscriptions.

A dish is not visible to customers

Five gates, and no category is the one people miss:

  1. Is it on sale?
  2. Does it have a category? Uncategorised dishes render nowhere. Filter by No category on Dishes.
  3. Is its serving time covering now?
  4. Is its stock item in stock?
  5. Is the restaurant open, or is scheduling available?

A subscription did not renew

  1. Is it an agreement or a single term paid by saved card? The second never auto-renews, and the panel says so — see Your plan & billing.
  2. Is the card current? Expiry is the commonest cause.
  3. Are webhooks arriving? A renewal charge the platform never hears about leaves the term untouched.
  4. Are scheduled jobs running? The daily billing sweep is what renews and ends terms — see Scheduled tasks.

Somebody cannot see a screen

Three gates, in this order — and the first is the one people skip:

  1. The feature switch. A privilege cannot reveal a feature that does not exist.
  2. Their plan.
  3. Their role. Have them sign out and back in after a change.

See What each role can do.

Uploads fail

Nearly always the server's own limits rather than anything in the product. Raise upload_max_filesize and post_max_size — if the post limit is lower, the upload fails with no useful message. Then check wp-content/uploads is writable.

A dashboard address shows "page not found"

Open Settings → Permalinks, make sure Plain is not selected, and press Save Changes. That rebuilds the address rules the dashboards live on.

The kitchen has nothing and the customer ordered

The order is unpaid. Unpaid online orders are deliberately kept off the kitchen board and out of riders' hands.

A rider gets no assignments

They are offline. Only available riders are offered in the selector — see The driver app.

The customer's delivery map stopped moving

The rider closed the delivery page, refused location permission, or their session expired. In that order — see Working a delivery.

Figures disagree between two screens

SymptomUsually
Revenue lower than the order totalRefunds are subtracted; unpaid orders are not counted.
Two reports disagreeDifferent date ranges. They do not share one.
Sales up but earnings flatGrowth on low-commission plans. Read take rate.
Margin looks wrongDishes without a cost are excluded. The screen names the count.
Fulfilment time absurdOrders left open until the end of service.

After an update, something broke

  1. Are the theme and both Sigma plugins from the same release? A new theme with old plugins, or the reverse, is the commonest cause — see Updating to a new version.
  2. Did you open wp-admin once afterwards? That is when the new release sets itself up.
  3. Dashboards returning "page not found"? Re-save Settings → Permalinks.
  4. A customisation gone? It was in a theme or plugin file the update replaced. Keep code changes in the child theme.

Finding the actual error

A white screen or "There has been a critical error" hides the cause. Add these two lines to wp-config.php, repeat what you did, and read wp-content/debug.log:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );

Remove them again once you have your answer. Tools → Site Health is worth a look too: it flags an old PHP version, missing extensions and scheduled events that are running late.

Before reporting a fault, check scheduled jobs are running. WordPress only runs them when somebody visits, so on a quiet site they can fall hours behind without a single error message.