Heat the oil in a large, heavy-based saucepan and cook the onion and garlic over a moderate heat for 3–4 minutes until softened. Add the coriander and beans and cook for 1 minute, then add the coconut milk and stock. Bring to the boil, then reduce the heat, cover and simmer for 10 minutes.
Add the spinach to the pan. Stir well and cook for a further 5 minutes.
Whiz the soup in a food processor in 2 batches until smooth, then ladle into warmed serving bowls and serve immediately.