Preheat the oven to 200°C, fan 180°C, gas mark 6. Grease and line a 1kg loaf tin.
Heat the oil in a small frying pan and fry the onion and garlic for 3-4 minutes until golden. Allow to cool slightly.
Place the kidney beans and chestnuts in a food processor and roughly chop. Transfer to a large bowl and mix in the onions, walnuts, cranberry sauce, mixed spice, herbs, and breadcrumbs, season well. Mix in the stock, press into the prepared tin and bake for 20-25 minutes, or until golden.
Cut into slices and serve with extra cranberry sauce and vegetables of your choice.
Form the mixture into large balls and bake for 15 minutes to serve as part of a buffet. Try using cannellini beans or chickpeas instead of the kidney beans.