Wash the beans and bring to the boil with the water in a large saucepan. Reduce heat and simmer for 2 minutes. Remove from heat, cover and let stand for 1 hour.
Drain and wash the beans.
Heat the oil in a large saucepan. Add onion and garlic and cook until soft. Stir in the chili powder, caraway seeds, oregano, paprika and cayenne pepper. If you don`t like it that spicy, add a little chilli and cayenne pepper and taste it every now and then. Cook for 1 minute, stirring constantly. Add the beans, vegetable stock, tomatoes with juice and water and bring to the boil. Reduce the heat and simmer covered for 1 to 1 1/2 hours, until the beans are soft. Season to taste with salt.