Everyone runs their business and ecommerce store differently. Especially when it comes to downloadable products, we all have a different approach to how to how those downloads should be delivered.
When it comes to WooCommerce though, downloads by default are only available to a customer after an order is marked complete. There is however a little known option under WooCommerce > Settings > Products to give customers download permissions when an order is only processing:
But you may not want to do it. What if you just want to automatically complete all of the orders that come in?
The following code snippet will do just that (with WooCommerce 2.2+):
So, that’s pretty cool. You could even just change the completed part to be another order status, like ‘processing’ or even a custom one. But what if you just want to autocomplete the orders that have been paid? Try this one out:
Finally, you may only want to complete orders that have virtual (downloadable) products in them. That’s pretty easy to do too, just by adding the following bit of code:
Now if this is all too much for you and you’re frightened of every word that’s coming out of my keyboard, stop. Don’t be scared. Bryce will take care of you. Well, actually, SkyVerge & WooThemes will take care of you. There’s a plugin that pretty much does all of this, called WooCommerce Order Status Control.
But don’t be afraid of the code! It’s quite simple and clear. Read through it and try to understand what’s happening and why. 🙂
All the above code snippets need to be added to either your theme’s functions.php file or through a custom PHP plugin like Functionality. Make sure to remove the opening <?php tag if need be.