The Solution

In general, your caching plugin should state clearly that it is compatible with WooCommerce. Examples of compatible plugins are GatorCache, QuickCache and W3 Total Cache. Each offers varying levels of control and configuration, so be sure to evaluate your sites needs before choosing a plugin. W3 Total Cache offers the most robust control, but as such requires specific exclusions and settings for optimal performance with WooCommerce. The following outlines things to look for. The plugin should also give you a warning about WooCommerce with directions on what to do.

W3 Total Cache with WooCommerce:

  1. Under the main settings, ensure Page Cache and Minify are not checked.
    • If you absolutely need to use Page Caching, go to Performance > Page Cache  and uncheck Post comments pages and Post comments feed in the Purge Policy:Page Cache section. These options can cause order requests to timeout or exceed your server’s allotted memory, which breaks the order status update.
    • Minify should not be enabled in general, as it can cause script load sequence issues and custom css styles to stop working in your theme. If you absolutely must use it, go to Performance > Minify and add mfunc to the Ignored comment stems box (if there are existing strings, add it on a new line and click Save)
  2. Go to Performance  > Database Cache .In the Ignored Query Stems field, add the following on a new line:
  3. Save settings. then clear the cache.