Soak the beans in plenty of cold water overnight. Drain, tip into a saucepan and cover with cold water. Bring to the boil, then drain and return to the pan. Cover with fresh cold water, bring to the boil and boil for 10 minutes, then cover and simmer for 50 minutes until tender.
Meanwhile, heat the oil in a separate saucepan, add the onion and fry for 3 minutes until just starting to soften. Add the tomatoes, tomato purée, sugar, vinegar, paprika, mustard powder and stock. Bring to the boil, stirring, then reduce the heat and simmer, uncovered, for 20 minutes until reduced slightly.
Drain the cooked beans and add to the tomato sauce. Simmer for a further 15–20 minutes, covered, until thick, then season with salt and pepper and serve on wholemeal toast, scattered with the chopped parsley.