Asynchronous triggers

AutomateWoo processes some triggers asynchronously which means they are separated from the main event and slightly delayed. The main reason for this is to speed up events such as the checkout process and to avoid timeout issues associated with complex processes such as subscription renewals.

This asynchronous delay will be less than a minute, but it could vary depending on your server’s WP Cron configuration.

List of asynchronous triggers:

  • Order Status Changes
  • Order Processing
  • Order Completed
  • Order Pending Payment
  • Order On Hold
  • Order Cancelled
  • Order Refunded
  • Order Created
  • Order Created – Each Line Item
  • Order Paid
  • Order Paid – Each Line Item
  • Order Includes Product from Taxonomy Term
  • Order Includes Product Variation with Specific Attribute
  • Customer Account Created
  • Subscription Status Changed
  • Subscription Status Changed – Each Line Item
  • Subscription Created
  • Subscription Renewal Payment Complete
  • Subscription Renewal Payment Failed

Reducing the asynchronous delay

If you need to reduce the delay on asynchronous triggers you can enable the instant event dispatching feature. This feature works by dispatching a HTTP request to run the events via AJAX rather than using WP Cron. The HTTP request is made when at least one event has been created by the current script. If a script creates multiple events they will be grouped into the same HTTP request. This means only one HTTP request will ever be fired at a time. WP Cron will be used as a fallback if any HTTP request fails.

To enable the instant event dispatching feature, add the following line to your site’s wp-config.php file before the line That’s all, stop editing!:

define( 'AUTOMATEWOO_ENABLE_INSTANT_EVENT_DISPATCHING', true );