Heat the oil in a large pan on medium heat. Add the onion and stir occasionally for 4-5 minutes.
Next, add the chopped garlic, chilli, and sweet potato cubes and cook for a few minutes. Season with salt and pepper.
After a few minutes, stir in the tomato puree, tinned tomatoes, black beans, Marmite, Henderson's Relish, cumin, smoked paprika, oregano, bay leaves, and vegan stock. Break the tomatoes apart with a spoon, mix well, bring to a gentle simmer, and cook on a low/medium heat for 20 minutes.
After 20 minutes, stir in the spinach and the chopped coriander stems. It will look like a lot of spinach at first, but it'll soon cook down. Simmer for another few minutes.
Once the spinach has wilted and the sweet potato cubes are soft, adjust the seasoning then serve with chopped coriander (see notes for more serving suggestions).