I’m currently in the early stages of building a custom WooCommerce website and I spent this evening tearing my hair out because my theme wouldn’t display subcategories.
Despite having the Category Display set to Show Subcategories in the Theme Customiser the category archive was showing the single products instead.
Switching back to the default Twenty Seventeen theme it worked as normal so the problem could be isolated to my theme files.
After a lot of frantic Googling I found a lot of people had the same problem but no one had posted a solution (due it being a problem with everyone’s individual themes rather than WooCommerce itself).
In the end it turns out I’d simply forgotten to actually declare WooCommerce support for my theme!
If you’re having the same problem simply remember to add the following line to your functions.php file:
add_theme_support( 'woocommerce' );
I hope that helps!