1.In a medium bowl, cover beans with water; stand overnight. Drain.
2.In a large saucepan, combine beef and the water; bring to the boil. Reduce heat; simmer, covered, 1½ hours.
3.Drain beef in a large muslin-lined strainer over a large heatproof bowl; reserve 3½ cups of the cooking liquid. Using two forks, shred beef.
4.In the same pan, heat oil over medium; cook brown onion and garlic, stirring, 5 minutes or until onion softens. Add spices; cook, stirring, 30 seconds or until fragrant. Add beans, tomatoes, paste and 2 cups of the reserved cooking liquid; bring to the boil. Reduce heat; simmer, covered, 1 hour.
5.Add beef and remaining reserved cooking liquid to the pan; simmer, covered, 30 minutes or until beans are tender. Remove from heat; stir in green onions, coriander and chilli. Season to taste.